Armed-Assault.de Twitter
Antwort
 
Themen-Optionen Ansicht
Alt 24.03.2015, 12:51   #1 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Benutzerbild von Wolkenbeisser
 
Registriert seit: 05.11.2010
Ort: Schweiz
Beiträge: 296
Standard Bombe trifft vehicle player - Frage zur Lokalität

Hallo zusammen

Ich kämpfe zurzeit mit einem Auslöser der MP-tauglich sein soll (vehicle Player wird von einer Bombe getroffen, wenn er in den Auslöserbereich eindringt). Ich möchte versuchen ihn schon möglichst 'gut funktionierend' zu haben, bevor ich einen Kumpel aufbiete für einen MP-Test. Ich bitte daher um Unterstützung bei der Frage, was der folgende Auslöser genau macht:

Auslöser: Jeder, Vorhanden, Mehrfach, Zeit zwischen 6 und 8 Sekunden

BED:
Code:
this and (vehicle Player in thislist and getPos vehicle player select 2 < 2)
AKT:
Code:
if (isServer) then {Bombe="Bo_GBU12_LGB" createVehicle position vehicle player}
Ich denke das BED-Feld ist nicht das Problem. Aber beim AKT-Feld befürchte ich, dass der Server zwei Bomben wirft, wenn z.B. zwei Spieler in einem Auto in den Auslöser fahren (da ja jeder der beiden Clients vom Server für 'seinen' player eine Bombe anfordert). Stimmt meine Annahme?

Wenn zwei vehicle player separat in den Bereich eindringen, muss jeder von ihnen von einer Bombe getroffen werden. Wenn sie jedoch zusammen in einem Fahrzeug sitzen, sollte es nur eine Bombe geben. Wie könnt man das lösen?
Wolkenbeisser ist offline   Mit Zitat antworten
Alt 24.03.2015, 13:39   #2 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.108
Standard

Kann das Fahrzeug über eine KI gesteuert werden? Wenn nein, dann mache es abhängig vom Fahrer

ungetestet
Code:
this && player == driver (vehicle player) && vehicle player in thislist && getpos vehicle player select 2 < 2

Dann wird nur ausgelöst, wenn der Spieler als Fahrer in diesen Bereich kommt.

Falls KI fahren kann, bitte bescheid geben, dass mußt du es über count lösen
__________________
Bewegende Momente bei ArmA 3
Drunken Officer ist offline   Mit Zitat antworten
Alt 26.03.2015, 10:02   #3 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Benutzerbild von Wolkenbeisser
 
Registriert seit: 05.11.2010
Ort: Schweiz
Beiträge: 296
Standard

@ Drunken Officer:

Nein, die KI fährt nicht.

Noch eine Frage zu deiner Bedingung (ich kann das Ganze leider erst nach Ostern testen, da ich ab Morgen für eine Woche weg bin):

Vehicle Player betrifft normalerweise sowohl den Player zur Fuss (der gilt offenbar auch als vehicle), als auch den Player im Auto. Wenn Du nun die Bedingung stellst 'player == driver... etc.' erfüllt dann ein Fussgänger die Bedingung immer noch? Oder hat ein 'Zu-Fuss-vehicle-player' gar keinen driver-slot (dann könnte er den Auslöser nicht zünden)?

Ziel ist es, dass sowohl Fussgänger, als auch Spieler in Fahrzeugen getroffen werden (das ist mit meinem vehicle player gegeben, aber evtl. eben nicht mehr, wenn man die Bedingung 'player == driver' einbaut).
Wolkenbeisser ist offline   Mit Zitat antworten
Alt 26.03.2015, 13:33   #4 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.108
Standard

Für was brauchst du eigentlich die Höhenangabe? Falls ein Flugzeug landet?

Dann versuche es so:
Code:
this && getpos vehicle player select 2 < 2 && vehicle player in thislist && ( player == vehicle player || player != vehicle player && player == driver (vehicle player) )
Der Code fragt ab, ob
- Höhe unter 2
- das Objekt Player (egal ob Fuss oder Auto) im Trigger ist
- prüfe ob Spieler gleich Spieler oder Spieler im Fahrzeug und wenn ja ob spieler gleich Fahrer ist
__________________
Bewegende Momente bei ArmA 3

Geändert von Drunken Officer (26.03.2015 um 14:10 Uhr).
Drunken Officer ist offline   Mit Zitat antworten
Alt 26.03.2015, 14:56   #5 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Benutzerbild von Wolkenbeisser
 
Registriert seit: 05.11.2010
Ort: Schweiz
Beiträge: 296
Standard

Die Höhenangabe brauche ich, weil ich nicht möchte, dass Flugzeuge getroffen werden (es sei denn sie landen). Eigentlich ist der Auslöser so eine Art Minenfeld, der es den Spielern zu 100% verunmöglichen soll, es zu durchqueren (es sei denn sie benutzen ein Flugzeug). Mein Minenfeld soll unbedingt ein paar Unterschiede zum Modul-Minenfeld haben:

1. Die Spieler sollen immer getroffen werden, solange sie nicht in einem Flugzeug sind (beim Modul könnte man Glück haben bei der Durchquerung des Feldes - je nach Menge/Zustand der vorhandenen Minen).

2. Es wird auch jemand getroffen, der dort durch das Gebiet geht/fährt, wo vorher schon ein Anderer war (beim Modul sind dort die Minen schon explodiert und man gefahrlos hindurch).

3. Und das ist der grösste Unterschied: Mein Minenfeld zieht sich an der engsten Stelle von Altis quer über die ganze Insel. Wollte man so ein Minenfeld mit dem Modul erstellen müsste man jenes mit ca. 10'000 Minen befüllen. Ich hab's probiert... hatte beim Test noch eine Framerate von ca. 1-2 Bildern pro Sekunde. Der Auslöser ist hier wesentlich performanter.

Ich werde den von Dir genannten Code nach meiner Abwesenheit gerne testen, danke.
Wolkenbeisser ist offline   Mit Zitat antworten
Alt 26.03.2015, 17:02   #6 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.108
Standard

Im Editor hat es funktioniert.

Dein Ziel ist also ein 100%ige Durchquerungssperre, außer Flugzeuge. Okay.

Ich habe das bei der Operation Paladin mit einer Gaswolke dargestellt. Einen farbigen MArker als Markierung drüber. Und dann mit setDammage 1 alles an Spieler getötet die reinkamen.
__________________
Bewegende Momente bei ArmA 3
Drunken Officer ist offline   Mit Zitat antworten
Alt 27.03.2015, 19:19   #7 (permalink)
Newbie
 
Registriert seit: 08.09.2010
Beiträge: 40
Standard

Denke daran, beim DediServer ist player = null.
lucullus ist offline   Mit Zitat antworten
Alt 27.03.2015, 20:01   #8 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.108
Standard

nicht unbedingt.

Der Trigger wirkt zwar lokal, aber Jeder lädt es, weil es auf der KArte ist. Also Clienten und Server.

Aber du hast Recht, es muss noch die lokale abfrage rein. (local player)
__________________
Bewegende Momente bei ArmA 3
Drunken Officer ist offline   Mit Zitat antworten
Alt 27.03.2015, 20:18   #9 (permalink)
Newbie
 
Registriert seit: 08.09.2010
Beiträge: 40
Standard

Akt: if (isServer) then {blafasel irgendwas mit vehicle player};
funktioniert nur auf ServerClient mit diesen einen Spieler. Der Dedi kennt kein player.
lucullus ist offline   Mit Zitat antworten
Alt 28.03.2015, 11:06   #10 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.108
Standard

Richtig, läßt man auf dem Dedi-Server das Kommando Player bla bla ausführen, funzt es nicht.

Aber nochmals, hast du auf der Karte einen Trigger (50/50, Blau, einmal) so hat ihn JEDER, Server und Clienten.
Läßt du in diesem Trigger das Kommando player setDammage 1 ausführen, würde dieses Kommando so auch ausgeführt. Da so nicht bekannt ist, welcher Spieler sterben soll, sterben alle.
Deswegen (local player) mit in die Bedingung, dann ist bekannt, dass nur der Spieler den Trigger auslösen soll, welcher reingerannt ist.
(ich weiß man könnte auch mit player in thislist arbeiten, es soll nur ein Beispiel sein)
JIP ist eine andere Geschichte. Deswegen Trigger nach einmaiger Auslösung löschen oder garnicht erst mit Triggern arbeiten, wenn möglich.

Aber Player i.V.m. Dedi-Server funktioniert 100%, weil ich selber beim Betreten eines Lager einen Trigger gesetzt habe, welcher lokal den Spieler etwas anzeigt. Es kommt darauf an, wo man es einsetzt und wie. In einem Script, welches allein der Server verwaltet klappt es nicht
__________________
Bewegende Momente bei ArmA 3

Geändert von Drunken Officer (28.03.2015 um 11:15 Uhr).
Drunken Officer ist offline   Mit Zitat antworten
Alt 28.03.2015, 13:50   #11 (permalink)
Newbie
 
Registriert seit: 08.09.2010
Beiträge: 40
Standard

Worauf ich hinauswollte:
Du setzt eine Bedingung die nur auf die verschiedenen Klienten zutrifft. Der Trigger kann also nicht auf dem Dedi auslösen, nur auf dem ServerClient oder den Clienten.
Wenn du bei Aktivierung die Clienten ausschließt (isServer) dann funktioniert dieser Trigger also nur noch mit dem ServerClient, der Dedi ist ja schon in der Bedingung raus.

Nehme in der Aktivierung die if (isServer) Bedingung heraus, damit ist dein Auslöser MP-tauglich. Der createVehicle Befehl ist Global, der Effekt wird also auf jeden Clienten sichtbar sein.

Nachtrag: Bleibt noch das mehrere-Spieler-in-einem-Fahrzeug-Problem.

Geändert von lucullus (28.03.2015 um 14:12 Uhr).
lucullus ist offline   Mit Zitat antworten
Alt 28.03.2015, 17:34   #12 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.108
Standard

das Problem mit mehr als einem Spieler im Fahrzeug ist eigentlich geklärt.

Jo jetzt weiß ich was du meinst. Er hat es in der Aktivierung stehen. Jo das muss raus, da der Triggern local gezündet wird
__________________
Bewegende Momente bei ArmA 3

Geändert von Drunken Officer (28.03.2015 um 17:39 Uhr).
Drunken Officer ist offline   Mit Zitat antworten
Alt 04.04.2015, 08:35   #13 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Benutzerbild von Wolkenbeisser
 
Registriert seit: 05.11.2010
Ort: Schweiz
Beiträge: 296
Standard

Ihr meint also so?

BED:
Code:
this && getpos vehicle player select 2 < 2 && vehicle player in thislist && (player == vehicle player || player != vehicle player && player == driver (vehicle player))
AKT:
Code:
Bombe="Bo_GBU12_LGB" createVehicle position vehicle player
Was bewirken die beiden Striche || im Bedingungsfeld? Ich habe die noch nie in A3-Code gesehen...

Sobald ich aus den Ferien zurück bin, teste ich das mal.
Wolkenbeisser ist offline   Mit Zitat antworten
Alt 04.04.2015, 08:57   #14 (permalink)
Newbie
 
Registriert seit: 08.09.2010
Beiträge: 40
Standard

Bed:
this && getpos vehicle player select 2 < 2 && vehicle player in thislist && player == driver (vehicle player)
Akt:
Bombe="Bo_GBU12_LGB" createVehicle position vehicle player

Die Abfrage
player == vehicle player || player != vehicle player
fliegt raus, die trifft nämlich immer zu.

&& = and, || = or
lucullus ist offline   Mit Zitat antworten
Alt 04.04.2015, 14:56   #15 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Benutzerbild von Wolkenbeisser
 
Registriert seit: 05.11.2010
Ort: Schweiz
Beiträge: 296
Standard

Ist damit...
Code:
.....&& player == driver (vehicle player)
...auch ein Player zu Fuss betroffen? Fussgänger müssten nämlich auch getroffen werden.

Wie auch immer: Ab nächster Woche kann ich das testen.
Wolkenbeisser ist offline   Mit Zitat antworten
Alt 04.04.2015, 15:05   #16 (permalink)
Newbie
 
Registriert seit: 08.09.2010
Beiträge: 40
Standard

ja
lucullus ist offline   Mit Zitat antworten
Alt 04.04.2015, 20:57   #17 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Benutzerbild von Wolkenbeisser
 
Registriert seit: 05.11.2010
Ort: Schweiz
Beiträge: 296
Standard

alles klar, werde es genau so testen
Wolkenbeisser ist offline   Mit Zitat antworten
Alt 17.04.2015, 07:48   #18 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Benutzerbild von Wolkenbeisser
 
Registriert seit: 05.11.2010
Ort: Schweiz
Beiträge: 296
Standard

Wollte nur noch schnell melden: Scheint alles perfekt zu funktionieren. Vielen Dank für alle, die bei der Lösung mitgeholfen haben.
Wolkenbeisser ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Elite Dangerous (Elite 4) Duke49th Sonstige Genres & Themen 212 26.12.2015 14:33
Brillen und Kopfbedeckung Saven? Bahlramir Editing & Scripting 0 13.05.2014 21:45
Mission kann nicht geladen werden. Keine Zivi Slots. Benni Rollenspiel & Zombie Ecke 0 24.03.2014 14:52
Riesiges Problem mit der Lokalität im MP (Ausrüstung) Drunken Officer Editing & Scripting 4 22.12.2013 13:25
Missionserstellung Tipps&Tricks Moerderhoschi Editing & Scripting 28 12.01.2013 14:38


Kontakt - HX3.de - Archiv - Nach oben

Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias



SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116