# RemoteExec

**RemoteExec**

<span style="font-weight: 400;">RemoteExec ist das mit Abstand beste Werkzeug, um sich durch den Arma-Multiplayer-Lokalitäten-Dschungel zu kämpfen.</span>

<span style="font-weight: 400;">Syntax (</span>[<span style="font-weight: 400;">remoteExec</span>](https://community.bistudio.com/wiki/remoteExec)<span style="font-weight: 400;">):</span>

<span style="font-weight: 400;"> </span><span style="font-weight: 400;">params</span><span style="font-weight: 400;"> remoteExec \[</span><span style="font-weight: 400;">functionName</span><span style="font-weight: 400;">, </span><span style="font-weight: 400;">targets</span><span style="font-weight: 400;">, </span><span style="font-weight: 400;">JIP</span><span style="font-weight: 400;">\] </span>

<span style="font-weight: 400;">Um uns das Ganze von Anfang an ein wenig einfacher zu machen, nehmen wir den optionalen Parameter </span><span style="font-weight: 400;">JIP</span><span style="font-weight: 400;"> gleich mal raus. Dieser ist Standardmäßig false und solltet ihr nicht genau wissen, was ihr tut, solltet ihr es auch dabei belassen. Daher:</span>

<span style="font-weight: 400;"> </span><span style="font-weight: 400; color: #ff0000;">params</span><span style="font-weight: 400;"> remoteExec \[</span><span style="font-weight: 400; color: #008000;">functionName</span><span style="font-weight: 400;">, </span><span style="font-weight: 400; color: #0000ff;">targets</span><span style="font-weight: 400;">\]</span>

<span style="font-weight: 400;"><span style="color: #ff0000;">params</span>: </span><span style="font-weight: 400;">Bei Params handelt es sich um die Parameter des Befehls den ihr ausführen wollt. Bei Befehlen die selbst nur einen Parameter haben (z.B. “hint”) kommt hier einfach dieser Parameter hin. Bei Befehlen mit 2 Parametern (z.B. “addAction”) entsteht ein Array, wobei der Parameter, der vor dem Befehl steht, zuerst kommt und dann der Parameter, der hinter dem Befehl steht.</span>

<span style="font-weight: 400;">Beispiele: </span>

1. <span style="font-weight: 400;">hint “Das ist nicht ganz einfach”; </span>

<span style="font-weight: 400;">-&gt; “Das ist nicht ganz einfach” remoteExec \[“hint”\];</span>

1. <span style="font-weight: 400;">KI addAction \["Sag Hallo", "scriptHallo.sqf"\]; </span>

<span style="font-weight: 400;">-&gt; \[KI, \["Sag Hallo", "scriptHallo.sqf"\]\] remoteExec \[“addAction”\];</span>

<span style="font-weight: 400;">Hierbei könnt ihr einfach Copy&amp;Paste nutzen. Alles vor dem Befehl vor das Komma im Array, alles dahinter, hinter das Komma.</span>

<span style="font-weight: 400;"><span style="color: #008000;">functionName</span>: </span><span style="font-weight: 400;">Dabei handelt es sich schlicht und ergreifend um den Befehl, den ihr ausführen wollt. Einzig anzumerken ist, dass er in Anführungszeichen stehen muss, da es sich um einen String handeln muss.</span>

<span style="font-weight: 400; color: #0000ff;">targets</span><span style="font-weight: 400;"> (optional): Mit targets beginnt die Magie dieses Befehls. Es handelt sich dabei um einen optionalen Parameter des remoteExec-Befehls, er ist daher nicht zwingend nötig. Sollte er fehlen, wird der Befehl schlicht global ausgeführt (sollte nur für Befehle mit lokalem Effekt ausgeführt werden).</span>

<span style="font-weight: 400;">Als target kann man ein einzelnes Objekt, eine Gruppe von Objekten, den Server (target = “2”) oder auch alle außer den Server wählen (target = “-2”). Das Hervorragende daran ist, dass dieses command genau da ausgeführt wird, wo das target lokal ist. Solltet ihr also beispielsweise einen LKW manipulieren wollen, der aber in der Mission von einem x-beliebigen Spieler gefahren wird (und daher nicht mehr lokal zum Server ist), könnt ihr als target diesen LKW angeben und der Befehl wird automatisch auf dem Client des Spielers ausgeführt zu dem der LKW lokal ist. </span>

<span style="font-weight: 400;">Was man bei target angeben will, hängt natürlich hauptsächlich davon ab, ob man einen Befehl mit lokalem Argument oder mit lokalem Effekt benutzt. Beim lokalen Argument wird das target meist das zu manipulierende Objekt sein. Bei lokalen Effekt kann man das target darauf zuschneiden, für wen der Effekt gelten soll. </span>

<span style="font-weight: 400;">Beispiele:</span>

1. <span style="font-weight: 400;"><span style="color: #ff0000;">“Info an die ganze Gruppe”</span> remoteExec \[<span style="color: #008000;">“hint”</span>, <span style="color: #0000ff;">(group S1)</span>\];</span>

<span style="font-weight: 400;">Zeigt diesen Hint für die ganze Gruppe des Spielers S1 an.</span>

1. <span style="font-weight: 400;"><span style="color: #ff0000;">\[LKW, 1\]</span> remoteExec \[<span style="color: #008000;">“setFuel”</span>, <span style="color: #0000ff;">LKW</span>\];</span>

<span style="font-weight: 400;">Tankt den LKW komplett voll.</span>

1. <span style="font-weight: 400;"><span style="color: #ff0000;">"Hallo Freunde"</span> remoteExec \[<span style="color: #008000;">"hint"</span>, <span style="color: #0000ff;">(nearestObjects \[Zivi, \["Man"\], 50\])</span>\];</span>

<span style="font-weight: 400;">Zeigt die Nachricht “Hallo Freunde” für jeden Spieler in einem 50m Radius um das Objekt “Zivi” an.</span>