PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Gegner zufällig spawnen


tobi1982
16.01.2015, 13:01
Hallo zusammen,

ich bastel mir gerade eine Wachmission, die Aufgabe wird sein ein Camp zu beschützen und Wache zu schieben.

Jetzt wäre es natürlich sinnlos irgend welche Gegner auf der Map zu plazieren und per Wegpunkte zu dem Camp zu schicken da ich ja dann weiß wo wieviele Leute herkommen.

Auch das Spawn KI Modul ist für meine Zwecke nutzlos man kann zwar einstellen das die Warscheinlichkeit z.B. bei 10% liegt das Gegner gespawnt werden, was ja schon ein guter Anfang ist, jedoch weiß ich ja sobald aus Richtung X einmal Gegner auftauchen, das aus dieser Richtung ab dann soviele Gegner kommen wie halt eingestellt z.B. 50.

Nun zu meiner Frage gibt es eine Möglichkeit wie früher mit den Skirmish Modulen oder kann ich mit den Spawn KI Modulen das irgendwie hinbekommen damit der Zufallsfaktor pro Intervall und nicht fürs komplette Modul gilt?

Hoffe ihr versteht was ich mein ...

tonkgul
16.01.2015, 15:26
Erstelle eine Einheit auf der karte die "Boss" heist.
Erstelle eine Datei die "unitSpawn.sqf" heist.

Kopiere rein
unitSpawn.sqf

sleep (random 600); //10 Minuten
_unit = group Boss createunit ["O_Soldier_F", position player, [], 500, "FORM"];
[_unit] join grpNULL;

if (_unit Distance player < 200) exitwith { deletevehicle _unit; execVM "UnitSpawn.sqf"};


_rndTeam = (round (random 7));
_a = 0;
while {_a <= _rndTeam} do {
_a = _a +1;
_Teammate = group _unit createunit ["O_Soldier_F", position _unit, [], 0, "FORM"];
};
{_x domove position Player} foreach units group _unit;


Es gibt bestimmt eine Bessere Variante als Domove mir ist nur grad die eingefallen.

Drunken Officer
16.01.2015, 17:46
Edit weil im Nachgang noch was kam, dafür das Script nicht ausgelegt war und ich es leid bin, jedesmal die Glaskugel auszupacken

tobi1982
16.01.2015, 23:08
So danke mal für eure Hilfe, habe beide Lösungsansätze versucht.

Zu tonkgul:
Nach 10 Durchläufen hab ich nicht einen Feind gesehen, ich habe die unitSpawn.sqf im Missions Ordner erstellt und dein Script reinkopiert, soweit richtig oder? Dann habe ich meinen Player Boss genannt und gewartet, als nach mehreren Neustarts nichts passiert ist habe ich einen Feind erstellt mit dem Namen Boss und ihn beobachtet, auch hier ist nichts passiert. Kannst du mir bitte erklären was ich falsch mache!? (Die 10 min hab ich immer gewartet oder besser gesagt im Script die Zeit auf 60 gestellt).

Zu Drunken Officer:
Deine Lösung funktioniert zwar aber macht nicht das was ich will, nach ebenso 10 Durchläufen wurden zwar die spawn Punkte zufällig geswitcht was schonmal gut ist jedoch kamen immer genau 8 Gegner und es war ausgeschlossen das mal gar keiner kommt. Da ich ja eine Mission bauen will in der man Wache schieben muss, sollte es möglich sein das auch überhaupt nichts passiert, denn ansonsten wärs ja ne reine Verteidigungsmission. Wäre nett wenn du mir das noch irgendwie einbauen/ändern könntest.

Drunken Officer
17.01.2015, 00:15
Wäre nett, wenn du das von Beginn an schreiben könntest

tobi1982
17.01.2015, 07:46
Wäre nett, wenn du das von Beginn an schreiben könntest

Hoffe ihr versteht was ich mein ...
Ja sorry wenn ichs schlecht erklärt hab :oh:

Saint
17.01.2015, 11:07
Erstaunlich wie wenig Eigeninitiative doch hier wieder gezeigt wurde!

DOFs Script ist toll umgesetzt! Mit etwas recherche in der BI Wiki hätte man die Vorlage von DOF umändern und an individuelle Bedürfnisse anpassen können. Aber wahrscheinlich bereitet das zuviel Arbeit.

Ein Wunder, das überhaupt noch jemand bereit ist hier Lösungen zu präsentieren.

Selbst mit wenig Scriptkenntnissen hätte man sich mit DOFs Vorlage + Bi Wiki + Mr.Murrays Bibel etwas passendes basteln können.

tobi1982
17.01.2015, 19:19
Erstaunlich wie wenig Eigeninitiative doch hier wieder gezeigt wurde!

DOFs Script ist toll umgesetzt! Mit etwas recherche in der BI Wiki hätte man die Vorlage von DOF umändern und an individuelle Bedürfnisse anpassen können. Aber wahrscheinlich bereitet das zuviel Arbeit.

Ein Wunder, das überhaupt noch jemand bereit ist hier Lösungen zu präsentieren.

Selbst mit wenig Scriptkenntnissen hätte man sich mit DOFs Vorlage + Bi Wiki + Mr.Murrays Bibel etwas passendes basteln können.
Entschuldigung das ich nie etwas gescriptet hab, mein Gott wie bist du denn drauf?? Wenn das so einfach ist dann erklärs mir doch bitte oder spar dir deine Kommentare. :stupid:

Saint
17.01.2015, 21:11
Entschuldigung...

Entschuldigung angenommen :D

tobi1982
17.01.2015, 23:02
Entschuldigung angenommen :D
Oh wie nett von dir, wenn du nicht helfen willst such dir einen Spam Bereich - traurig wie die Arma Com immer weiter sinkt :rolleyes:

Drunken Officer
18.01.2015, 00:31
du hast seinen Post ganz und gar nicht verstanden...

Was er sagen wollte: ich habe dir eine Steilvorlage geliefert. Mit etwas Mühe hättest du es hinbekommen, dass auch eine NULL-Variante läuft.
Mehr hat Saint nicht gesagt und voll kommen Recht damit

tobi1982
18.01.2015, 01:28
du hast seinen Post ganz und gar nicht verstanden...

Was er sagen wollte: ich habe dir eine Steilvorlage geliefert. Mit etwas Mühe hättest du es hinbekommen, dass auch eine NULL-Variante läuft.
Mehr hat Saint nicht gesagt und voll kommen Recht damit
Hey Drunken,
ich finde der Mensch trägt hier überhaupt nichts bei außer sinnlose Kommentare die mir nicht helfen, ich spiel nun seit 2 Jahren ca Arma und versuche hier für mich selber ne eigene Mission zu erstellen (zum üben), und ich seh z.B. bei JR auf dem Yt Kanal so Videos wo fünf alte Hasen ums Lagerfeuer sitzen und heulen das sie keinen Nachwuchs finden - ja wunderts euch wenn ihr solche Leute wie Saint in der Com habt das keiner mehr bock hat hier irgendwo Fuß zu fassen? Oder wollt ihr es nicht?

Ich war echt überrascht das du und tonkgul mir gleich hier ein Script hingelegt habt und da ich im scripten keine Erfahrung hab, hab ich auch stundenlang gegoogelt bis ich wusste wie ich eure Sachen ausprobieren kann (bevor ich hier sinnlose fragen stell) und jetzt kommt er und trollt hier rum von wegen eigen initiative und blablablub - da tuts mir echt leid für Arma und mich wundert es nicht das ihr keinen Nachwuchs findet, da hängt doch jeder leichter in Altis Life rum bevor er sich so nen scheiß gibt.

Saint
18.01.2015, 07:49
Hey Drunken,
ich finde der Mensch trägt hier überhaupt nichts bei außer sinnlose Kommentare die mir nicht helfen, ich spiel nun seit 2 Jahren ca Arma und versuche hier für mich selber ne eigene Mission zu erstellen (zum üben), und ich seh z.B. bei JR auf dem Yt Kanal so Videos wo fünf alte Hasen ums Lagerfeuer sitzen und heulen das sie keinen Nachwuchs finden - ja wunderts euch wenn ihr solche Leute wie Saint in der Com habt das keiner mehr bock hat hier irgendwo Fuß zu fassen? Oder wollt ihr es nicht?

Ich war echt überrascht das du und tonkgul mir gleich hier ein Script hingelegt habt und da ich im scripten keine Erfahrung hab, hab ich auch stundenlang gegoogelt bis ich wusste wie ich eure Sachen ausprobieren kann (bevor ich hier sinnlose fragen stell) und jetzt kommt er und trollt hier rum von wegen eigen initiative und blablablub - da tuts mir echt leid für Arma und mich wundert es nicht das ihr keinen Nachwuchs findet, da hängt doch jeder leichter in Altis Life rum bevor er sich so nen scheiß gibt.

Hört, hört

Du meinst also mich als 'Störenfried' entlarvt zu haben, weil ich Deine Herangehensweise bemängele?

Vermische hier nicht die Hintergründe und Intentionen der vier Herren am Lagerfeuer mit Deinen oder meinen Äußerungen. Die haben nichts miteinander zu tun!

Du hast 'stundenlang' im www nach Lösungen gesucht? Erzähle hier keinen Mist! Wenn Du wirklich selbstständig und ernsthaft an einer Lösung gearbeitet hättest, würde Dein Scriptcode Basis für eine weitere Diskussion sein. Jedoch hast Du nach einer fertigen Lösung gefragt.

Nebenbei bemerkt, habe ich mit weniger als 5 Minuten Zeitaufwand durch google erfahren können, das es unzählige Threads zum Thema Angriffswellen gibt. Kylania (http://www.kylania.com/ex/?p=31) hat eigens dafür eine Testmission (für ArmA2) erstellt, diese sollte jedoch auch auf ArmA3 anwendbar sein. Eine weitere Testmission für den Editor liefert Rock Paper Shotgun (http://www.rockpapershotgun.com/forums/showthread.php?3442-EDITING-Super-Duper-Simple-Wave-Spawn-Script).

Wahrscheinlich wären beim testen der Mission erste konkrete Fragen aufgetaucht, die Du dann hier hättest stellen können.

Im Code von DOF steht ein wesentliches Hilfsmittel: Die Funktion BIS_fnc_spawnGroup (https://community.bistudio.com/wiki/BIS_fnc_spawnGroup), die zu allem Übel auch noch hervorragend in der BI Wiki dokumentiert ist.

Die Tatsache, die Du bei der DOF Variante bemängelst, es würden immer genau 8 Gegner gespawnt, zeigt ganz deutlich, das Du keinen einzigen Blick in die BI Wiki geworfen hast. Den ArmA1 Editing Guide von Mr. Murray hast Du Dir auch nicht angesehen, denn dort findet man alle Werkzeuge und es steht beschrieben wie sie eingesetzt werden.

Aber ich gelobe das Wort Eigeninitiative niemals nie wieder in Verbeindung mit Deinem Namen zu benutzen.

So wenig wie mich Dein Einsatz für die Lösung Deines Scriptproblemes beeindruckt hat, desto mehr beeindruckt mich Deine gekonnte Analyse des 'Status Quo der deutschen Community'. Bravo!

Hotzenplotz
18.01.2015, 08:13
ich seh z.B. bei JR auf dem Yt Kanal so Videos wo fünf alte Hasen ums Lagerfeuer sitzen und heulen das sie keinen Nachwuchs finden - ja



Auf so einem Nachwuchs, kann man gerne verzichten. Wenn Sie jedesmal heulen, wenn nicht gleich der vor dem Arschtragen Post kommt. Dann nach ner Entschuldigung , noch Feuer dazu giesst , ist Armseelig.

tobi1982
18.01.2015, 20:00
Du hast 'stundenlang' im www nach Lösungen gesucht? Erzähle hier keinen Mist! Wenn Du wirklich selbstständig und ernsthaft an einer Lösung gearbeitet hättest, würde Dein Scriptcode Basis für eine weitere Diskussion sein. Jedoch hast Du nach einer fertigen Lösung gefragt.
Fakt ist das ich überhaupt kein Script gesucht habe sondern dachte man könnte das mit den Spieleigenen Modulen einstellen und danach hab ich auch gefragt das sieht du wenn du meinen ersten Post liest! Ich habe erstens danach gegoggelt und zweitens als mir die zwei ihre Scripte gepostet haben danach wie ich diese zum laufen bringe (da ich nie was gescriptet hab und mich nicht auskenne). Also verdreh hier nicht die Tatsachen.

Zum Rest was du geschrieben hast fällt mir nur eins ein - versuch nicht schön zu reden was nicht schön zu reden ist ...

Sobald ich eine Lösung hab werde ich sie euch hier posten, denn offensichtlich könnt ihr ja selber nichts :daumen:

Sagittarius
18.01.2015, 20:40
lasses gut sein von vielen clans hört man nichs gutes über parr Member hier,die die helfen zeigen das sie so was auch gerne machen und sind Sozial eingestellt.:daumen: aber Leute wie die über die du dich aufregst zeigen ja schon vom schreiben das sie sich gerne aufgeilen an anfänger die mehr fragen stellen als sie sollen.der Ton spiel die Musik. Komplexe sollte man mal angehen. ps wenn jetzt eine verwarnung kommt oder Bann zeigt das nur das wir recht haben.

Drunken Officer
18.01.2015, 21:08
Sobald ich eine Lösung hab werde ich sie euch hier posten, denn offensichtlich könnt ihr ja selber nichts :daumen:

FAIL. Damit bist du bei mir unten durch....

1. bringt mein Script nicht immer 8 Leute. Das ist gelogen, da ich es selber einsetze. Setze dich mit BIS_fnc_spawngroup auseinander. Dann solltest du vlt mal die Config checken und schauen, was für eine Mannstärke sich hinter der jeweiligen Variable verbirgt.
2. habe ich eine Variante, für eine Null-Lösung, dass sind genau 2 Scriptzeilen mehr
3. du könntest dir sogar anzeigen lassen, welche Gruppe und welchen Spawnpunkt das Script gewählt hat. Aber ich werde das definitv nicht posten.

@Sagi
Was willst du? Man schreibt dir den Code (setvectorupanddir) + eine Grafik zu Erläuterung. Und du bist NICHT in der Lage oder schlicht weg zu faul, einfach mal den Scriptbefehl anzuschauen. Dann hättest du dir das mit den 0,0,0 bzw. 0,0,3 sparen können. Wir ziehen die Hosen nicht mit der Kneifzange an...
P.S.: deine Rechtschreibung ist auch so eine Sache die du "angehen" solltest.

Wir alle haben klein angefangen. Und auch ich habe Vienna, Buli & Co Löcher in den Bau gefragt. Einige Neulinge setzen ihren Kopf ein und schreiben dann die Probleme auf, aber andere wollen das fertige Script.

Moerderhoschi
18.01.2015, 21:22
Mit persoenlichen Angriffen und Beleidigungen ist jetzt hier Schluss. Weitere Beitraege die nichts konstruktives zur Loesung des gestellten Problems beitragen, werden nicht weiter gedulded.

@tobi1982 Es gibt viele Moeglichkeiten an diese "Problem" heran zu gehen. Wenn Dir Scripte nicht so liegen, oder Du noch zu unerfahren dafuer bist, waere auch eine Variante moeglich, in der Du Gegnereinheiten auf der Karte platzierst, mit dem Wegpunkt zu deinem Wachposten und in der Init der Soldaten als Beispiel folgenden Code verwendest:

if (isServer) then {if (ceil random 10 > 8) then {deleteVehicle this}};


Somit wuerde die jeweilige Einheit mit einer 80% Wahrscheinlichkeit geloescht. Wenn Du dies nun bei 50 Soldaten machst sollten sich im Durchschnitt um die 10 Soldaten auf den Wachposten zu bewegen.

Hoffe ich konnte Dir eine annehmbare Möglichkeit aufzeigen.

gruß
moerderhoschi

tobi1982
18.01.2015, 21:39
Mit persoenlichen Angriffen und Beleidigungen ist jetzt hier Schluss. Weitere Beitraege die nichts konstruktives zur Loesung des gestellten Problems beitragen, werden nicht weiter gedulded.

@tobi1982 Es gibt viele Moeglichkeiten an diese "Problem" heran zu gehen. Wenn Dir Scripte nicht so liegen, oder Du noch zu unerfahren dafuer bist, waere auch eine Variante moeglich, in der Du Gegnereinheiten auf der Karte platzierst, mit dem Wegpunkt zu deinem Wachposten und in der Init der Soldaten als Beispiel folgenden Code verwendest:

if (isServer) then {if (ceil random 10 > 8) then {deleteVehicle this}};
Somit wuerde die jeweilige Einheit mit einer 80% Wahrscheinlichkeit geloescht. Wenn Du dies nun bei 50 Soldaten machst sollten sich im Durchschnitt um die 10 Soldaten auf den Wachposten zu bewegen.

Hoffe ich konnte Dir eine annehmbare Möglichkeit aufzeigen.

gruß
moerderhoschi
Vielen dank werd ich morgen testen wenn ich am Gamer PC bin :)

Wolkenbeisser
19.01.2015, 12:34
....in der Init der Soldaten als Beispiel folgenden Code verwendest:

if (isServer) then {if (ceil random 10 > 8) then {deleteVehicle this}};


Somit wuerde die jeweilige Einheit mit einer 80% Wahrscheinlichkeit geloescht......

Könnte er da nicht auch bei jedem der 50 Soldaten den Schiebregler "Anwesenheitswahrscheinlichkeit" auf 80 % setzen? Ober bewirkt das was Anderes?

Moerderhoschi
19.01.2015, 12:47
Könnte er da nicht auch bei jedem der 50 Soldaten den Schiebregler "Anwesenheitswahrscheinlichkeit" auf 80 % setzen? Ober bewirkt das was Anderes?

Ja richtig, man kann das genauso gut ueber den Regler einstellen, der bewirkt das selbe :)

gruß
hoschi

TeilX
19.01.2015, 17:18
Zeigt mal wieder klar, die Ahnung haben Denken zu Kompliziert.:ugly:

Saint
19.01.2015, 19:16
Jetzt wäre es natürlich sinnlos irgend welche Gegner auf der Map zu plazieren und per Wegpunkte zu dem Camp zu schicken da ich ja dann weiß wo wieviele Leute herkommen.


Für mich klingt das danach, dass tobi1982 lieber etwas "gescriptetes" nutzen wollte, und nicht danach Einheiten im Editor zu platzieren und die "Anwesenheitswahrscheinlichkeit" per Schieberegler auf 80% einzustellen. Die Hinweise die tobi1982 erhalten hat sind jedenfalls gut genug das er seinen Missionsplan damit umsetzen kann. Sei es der Code von DOF oder die Testmissionen von kylania oder RPS. Funktioniert einwandfrei.

CommanderX
20.01.2015, 13:53
Was man ja mal sagen muss, ist, dass Arma es einem sehr schwer macht selber Code zu schreiben. Das fängt mit dem Verständnis der init.sqf, description.ext usw. an. Wann wird die bei wem geladen und was kann man damit machen. Insgesamt fehlen einem beim Beginn sehr viele Informationen, die man auch kaum googlen kann, bzw. man findet sie, kann aber ohne Hintergrundwissen (wonach man ja eigentlich googlet) kaum was anfangen.

Ich scripte inzwischen selber Dinge, aber ich find vieles recht undurchschaubar und das Bohemia Wiki bei vielen Dingen auch nicht unbedingt aussagekräftig.

Ich kann also schon verstehen, wenn Leute sich einen abgooglen aber mit einer Information a la "Füge den folgenden Code ein", wenn man überhaupt noch nichtmal weiss wo wie warum das eingefügt werden soll.

Ich plädiere also für etwas mehr Verständnis scripting noobs gegenüber :D (Bin ja selber auch einer von denen :D )

Zur Fragestellung:
Für solche Aufgaben würd ich evtl. DAC Dynamic AI Creator von Silola benutzen.

Saint
20.01.2015, 15:20
@CommanderX

Bist Du wirklich der Meinung, der Einstieg ins ArmA Editing und Scripting ist zu schwer? Der Editing Guide von Mr. Murray für ArmA1 ist für viele Fragen immer noch ein aktueller Antwortgeber. Auf über 300 Seiten wird es bis in kleinste Detail erklärt. Die BI Wiki, an der beständig gearbeitet wird, bietet ebenfalls eine gute Quelle zur Informationsgewinnung.

Es geht hier im Forum niemandem darum, Andere dumm dastehen zu lassen! In vielen Fällen geht aus der Fragestellung hervor, dass der Fragesteller sich in keinster Weise bemüht hat. Weder hat er selber etwas ausprobiert, noch hat er versucht selber Wissen durch die o.g. Quellen zu erwerben.

Konkrete Fragen, die eine gewisse Eigeninitiative erkennen lassen, werden hier immer gerne und gut beantwortet und solche Threads werden auch nicht mit Polemik torpediert.

Als aktuelle Beispiele nenne ich mal die beiden Threads "Objekte drehen" und "Gegner zufällig spawnen". Zwei Paradebeispiele dafür, wie schnell wir hier entgleisen können. Aber liegt das wirklich nur an denen, die hier zynisch und polemisch geantwortet haben? Oder ist vielleicht doch bei den Fragestellern eine gewisse Renitenz zu spüren?

In formvollendeter Eloquenz werden dann Beiträge folgender Güte verfasst:
lasses gut sein von vielen clans hört man nichs gutes über parr Member hier,die die helfen zeigen das sie so was auch gerne machen und sind Sozial eingestellt.:daumen: aber Leute wie die über die du dich aufregst zeigen ja schon vom schreiben das sie sich gerne aufgeilen an anfänger die mehr fragen stellen als sie sollen.der Ton spiel die Musik. Komplexe sollte man mal angehen. ps wenn jetzt eine verwarnung kommt oder Bann zeigt das nur das wir recht haben.Was soll man zu sowas noch sagen?
Guten Appetit?

Um auf die Fragestellung zurückzukommen: Einen Blick auf DAC (http://forums.bistudio.com/showthread.php?176926-DAC-V3-1-%28Dynamic-AI-Creator%29-released) zu werfen würde ich auch empfehlen.

burns
20.01.2015, 15:39
Bist Du wirklich der Meinung, der Einstieg ins ArmA Editing und Scripting ist zu schwer? Der Editing Guide von Mr. Murray für ArmA1 ist für viele Fragen immer noch ein aktueller Antwortgeber. Auf über 300 Seiten wird es bis in kleinste Detail erklärt. Die BI Wiki, an der beständig gearbeitet wird, bietet ebenfalls eine gute Quelle zur Informationsgewinnung.

Manche haben die Gabe, andere können was anderes besser.

Hoschi hat in 2 Monaten scripten gelernt (der Fieslond!), ich kanns noch immer nicht.
Hat zu einem gewissen Grad sicher auch mit Faulheit zu tun, aber nicht vollständig. Englisch fliegt mir zu, scripten nicht. Mir helfen auch die Erklärungen im Biki sogut wie nie, selbst wenn es 3 versch. Syntaxe zum Angucken gibt, ersehe ich nur selten den Sinn dahinter - bzw. kann es einfach nicht nachvollziehen.

Dann guck ich wieder Stundenlang in der Scheisse rum, und hab über 20x Ausprobieren die Lust an meiner Mission verloren. So gehts immerwieder. Das Lernen an sich steht mir im Weg :D




Es geht hier im Forum niemandem darum, Andere dumm dastehen zu lassen! In vielen Fällen geht aus der Fragestellung hervor, dass der Fragesteller sich in keinster Weise bemüht hat. Weder hat er selber etwas ausprobiert, noch hat er versucht selber Wissen durch die o.g. Quellen zu erwerben.

Hier wiederum hab ich vollstes Verständnis für. In diesem Forum (nicht unbedingt auch in diesem Thread) werden teilweise so lustlos hingerotzte Fragen gepostet (mangelhafte Rechtschreibung, null Eigeninitiative, Beschreibung sinnlos, etc.), die Ersteller müssen sich wirklich nicht wundern wenn sie daraufhin verarscht werden.

Immerhin wollen die ja was vom Forum, nicht umgekehrt, da gehört es sich einfach, zumindest die erwartete Form zu wahren.



Ich plädiere also für etwas mehr Verständnis scripting noobs gegenüber :D (Bin ja selber auch einer von denen :D )

Siehst ja, hat niemand was dagegen. Das schliesst aber immernoch Leute aus, die denken sie hätten ein Anrecht auf astreine Erfüllung ihrer Fürbitten.

Wenn die Antworten hier immer so geschrieben würden, wie die fraglichen Posts über die wir uns gerade unterhalten, dann hätt das Forum vor Jahren seinen Wert verloren, weil niemand was damit anfangen könnte.

Ist in reinster Form ein kleines "wie du mir so ich dir" - blöde Frage blöde Antwort.

Wolkenbeisser
23.01.2015, 12:34
Ich gestehe, ich kann auch nicht scripten. Aber den Umgang mit Auslösern habe ich m.o.w. gelernt. Dafür ist der Editing Guide von Murray perfekt. Müsste ich die hier gestellte Aufgabe mittels Auslösern bewältigen, würde ich in etwa vorgehen wie weiter unter beschrieben.

Achtung: Das hier ist nur ein Beispiel, ungetestet und nur auf die Schnelle aufgezählt. Die Idee will ich vermitteln, nicht die 100% nachvollziehbare Umsetzung. Es geht mir darum, aufzuzeigen, dass man mit dem Wissen über Auslöser ein manches Script ersetzen kann (sicher nicht jedes, ist schon klar!), wenn man nur willens ist, einen Weg zu finden. Somit an den Fred-Ersteller: Schau Dir den Editing Guide an, er ist Gold wert!

Und so würde ich die gestellte Aufgabe in etwa anpacken:

1. Auslöser mit dem Namen Zeitzuender setzen mit einer Zeitspanne (z.B. zwischen 2 und 10 Min.). Ins Aktivierungsfeld kommt true. Das heisst er löst ohne weitere Bedingung nach Ablauf der Zufallszeit aus. Im Aktivierungsfeld steht feind_go=true; publicVariable "feind_go". Bei der Zündung des Auslösers wird also die Variable feind_go wahr, und an alle Clients verteilt (falls MP-Mission).

2. Anschliessend setzt man mehrere Gruppen im Editor und setzt die Anwesenheitswahrscheinlicheit des jeweiligen Gruppenchefs auf einen beliebigen Wert. Als Bedingung für die Anwesenheitswahrscheinlichkeit seiner Gruppenmitglieder käme dann z.B. alive Gruppenchef, wobei Gruppenchef der Name des Truppführers ist.

3. Jede Feindgruppe bekommt Wegpunkte zum Ziel, wobei der erste Wegpunkt direkt auf dem Gruppenchef liegt und der Letzte in der Nähe des Spieler, der sie bekämpfend muss. Neben der Konfiguration, wie das Verhalten des Trupps sein soll, kann man im ersten WP auch die Startbedingung von true auf feind_go stellen und die Zeit einstellen (mit wieviel Zeitverzögerung sie starten sollen). Somit laufen sie erst los, wenn...
- sie anwesend sind
- der Auslöser unter Pt. 1 gezündet hat, sprich feind_go wahr ist
- die definierte Zufalls-Wartezeit im ersten WP vorbei ist

4. Nun stelle man den Platzierungsradius der Wegpunkte obengenannter Gruppen auf verschiedene Grössen ein, damit die KI nicht immer den exakt gleichen Weg geht.

5. Am Ende würde ich dann noch ein Fass namens Springer am A..., ich meine am Ende der Welt aufstellen, welches mittels F2 mit einem Marker verbunden ist, der etwa 20m vom Fass entfernt platziert wird. Dadurch steht das Fass bei Missionsbeginn mal an seinem Ursprungsort, mal beim Marker. Über den Marker stülpt man einen Auslöser mit einem kleinen Radius (z.B. 5m), der nach 2 Sekunden zündet (also wenn das Fass nach Missionsbeginn sicher seinen definitiven Standort erreicht hat), und auch erst wenn folgende Bedingung erfüllt ist (wird im BED-Feld des Auslösers definiert): Springer in thislist. Im Aktivierungsfeld steht dann deleteVehicle Zeitzuender. Dadurch besteht 50% Chance (je nach dem wo das Fass bei Missionsbeginn steht), dass der Auslöser, der die Gruppen losschickt gelöscht wird. Ist das der Fall, wird der Spieler gar nie einen Feind sehen. (will man die Feinde dann gleich ganz von der Karte haben, kann man imselben Aktivierungsfeld sicherheitshalber auch gleich alle Gruppen löschen).

Und was haben wir nun? Feinde die evtl. auftauchen, evtl. nicht. Falls welche kommen ist nicht klar wann. Ausserdem ist nicht klar, wieviele der gesetzten Tuppen kommen. Setzt man nun noch die Wegpunkte so geschickt, dass die Feinde (sofern sie überhaupt kommen) aus verschiedenen Richtungen antanzen, so hat der Spieler m.E. keine Chance mehr vorauszusehen was in dieser Mission alles passieren wird - voilà, Script ersetzt.

P.S. Mit mehreren solchen Springern kann man in einer Mission ganz schön (gewünschten) Zufall reinbringen. Man könnte im obigen Beispiel z.B auch via Springer die Variable feind_go wahr machen lassen. Es gibt 1000 + 1 Möglichkeiten, so ein Problem zu lösen. Drum wiederhole ich: Der Editing Guide von Murray ist Gold wert.

tobi1982
26.01.2015, 03:50
Ich gestehe, ich kann auch nicht scripten. Aber den Umgang mit Auslösern habe ich m.o.w. gelernt. Dafür ist der Editing Guide von Murray perfekt. Müsste ich die hier gestellte Aufgabe mittels Auslösern bewältigen, würde ich in etwa vorgehen wie weiter unter beschrieben.

Achtung: Das hier ist nur ein Beispiel, ungetestet und nur auf die Schnelle aufgezählt. Die Idee will ich vermitteln, nicht die 100% nachvollziehbare Umsetzung. Es geht mir darum, aufzuzeigen, dass man mit dem Wissen über Auslöser ein manches Script ersetzen kann (sicher nicht jedes, ist schon klar!), wenn man nur willens ist, einen Weg zu finden. Somit an den Fred-Ersteller: Schau Dir den Editing Guide an, er ist Gold wert!

Und so würde ich die gestellte Aufgabe in etwa anpacken:

1. Auslöser mit dem Namen Zeitzuender setzen mit einer Zeitspanne (z.B. zwischen 2 und 10 Min.). Ins Aktivierungsfeld kommt true. Das heisst er löst ohne weitere Bedingung nach Ablauf der Zufallszeit aus. Im Aktivierungsfeld steht feind_go=true; publicVariable "feind_go". Bei der Zündung des Auslösers wird also die Variable feind_go wahr, und an alle Clients verteilt (falls MP-Mission).

2. Anschliessend setzt man mehrere Gruppen im Editor und setzt die Anwesenheitswahrscheinlicheit des jeweiligen Gruppenchefs auf einen beliebigen Wert. Als Bedingung für die Anwesenheitswahrscheinlichkeit seiner Gruppenmitglieder käme dann z.B. alive Gruppenchef, wobei Gruppenchef der Name des Truppführers ist.

3. Jede Feindgruppe bekommt Wegpunkte zum Ziel, wobei der erste Wegpunkt direkt auf dem Gruppenchef liegt und der Letzte in der Nähe des Spieler, der sie bekämpfend muss. Neben der Konfiguration, wie das Verhalten des Trupps sein soll, kann man im ersten WP auch die Startbedingung von true auf feind_go stellen und die Zeit einstellen (mit wieviel Zeitverzögerung sie starten sollen). Somit laufen sie erst los, wenn...
- sie anwesend sind
- der Auslöser unter Pt. 1 gezündet hat, sprich feind_go wahr ist
- die definierte Zufalls-Wartezeit im ersten WP vorbei ist

4. Nun stelle man den Platzierungsradius der Wegpunkte obengenannter Gruppen auf verschiedene Grössen ein, damit die KI nicht immer den exakt gleichen Weg geht.

5. Am Ende würde ich dann noch ein Fass namens Springer am A..., ich meine am Ende der Welt aufstellen, welches mittels F2 mit einem Marker verbunden ist, der etwa 20m vom Fass entfernt platziert wird. Dadurch steht das Fass bei Missionsbeginn mal an seinem Ursprungsort, mal beim Marker. Über den Marker stülpt man einen Auslöser mit einem kleinen Radius (z.B. 5m), der nach 2 Sekunden zündet (also wenn das Fass nach Missionsbeginn sicher seinen definitiven Standort erreicht hat), und auch erst wenn folgende Bedingung erfüllt ist (wird im BED-Feld des Auslösers definiert): Springer in thislist. Im Aktivierungsfeld steht dann deleteVehicle Zeitzuender. Dadurch besteht 50% Chance (je nach dem wo das Fass bei Missionsbeginn steht), dass der Auslöser, der die Gruppen losschickt gelöscht wird. Ist das der Fall, wird der Spieler gar nie einen Feind sehen. (will man die Feinde dann gleich ganz von der Karte haben, kann man imselben Aktivierungsfeld sicherheitshalber auch gleich alle Gruppen löschen).

Und was haben wir nun? Feinde die evtl. auftauchen, evtl. nicht. Falls welche kommen ist nicht klar wann. Ausserdem ist nicht klar, wieviele der gesetzten Tuppen kommen. Setzt man nun noch die Wegpunkte so geschickt, dass die Feinde (sofern sie überhaupt kommen) aus verschiedenen Richtungen antanzen, so hat der Spieler m.E. keine Chance mehr vorauszusehen was in dieser Mission alles passieren wird - voilà, Script ersetzt.

P.S. Mit mehreren solchen Springern kann man in einer Mission ganz schön (gewünschten) Zufall reinbringen. Man könnte im obigen Beispiel z.B auch via Springer die Variable feind_go wahr machen lassen. Es gibt 1000 + 1 Möglichkeiten, so ein Problem zu lösen. Drum wiederhole ich: Der Editing Guide von Murray ist Gold wert.
Vielen dank für deine Antwort :)