Crytek-HQ.com

Einführung in Flow Graphs

Einführung in Flow Graphs
Dieses Tutorial behandelt die [Flow Graphs]. Dies ist nur eine Einführung und dient zur Orientierung.


Erstmal habe ich uns einen kleinen Außenposten gebaut (ich benutze der Einfachheit halber die Demo-Map als Vorlage, das erspart mir vermutlich viele Probleme):


Das stationäre Geschütz nennt sich übrigens [ShiTen].


Dann habe ich einen Gegner ins Level gesetzt (bzw. einen bestehenden kopiert, erschien mir einfacher & sicherer), ihm eine andere Waffe in die Hand gedrückt (siehe Bild), ihn umbenannt (mrw_ ist mein Kürzel, so weiß ich, was von mir ist) und dann einen [Flow Graph] für ihn erstellt.




Nun werdet ihr gefragt, in welche Gruppe der [Flow Graph] soll, ich empfehle euch, eine neue Gruppe zu erstellen. Also unten auf New und einen Namen eingeben. Jetzt habt ihr den "Flow Graph Editor" vor euch, noch ziemlich leer das Teil. Wir ändern das: Rechtsklick auf das Fenster mit dem Gitter und [Add Selected Entity].



Jetzt erscheint da ein kleiner Punkt, wenn ihr mit dem Mausrad ranzoomt (dabei den Mauszeiger auf der Stelle haben, auf die gezoomt werden soll), seht ihr das ganze mal in größer. Bei gedrücktem Mausrad könnt ihr bei Bedarf die Ansicht noch verschieben.


Nun brauchen wir ein einen [Start], ich weiß leider nicht genau, wie ihr das selber erstellt, aber macht's doch wie ich und kopiert es aus [Entities/AB1/Cortez_Patrol] (Die Auswahlliste ist links unten und mit [Flow Graphs] betitelt, im [cortez_patrol] findet ihr [Start] oben links)




Nun verbindet ihr das [Output] des [Start] mit dem [Disable] vom [Entity:Grunt], dadurch ist der Gegner zu Spielbeginn noch nicht da.



Jetzt könnt ihr den [Flow Graph] erstmal schließen. Denn nun erstellen wir einen Trigger, also Auslöser der den Koreaner aus dem Haus rennen lassen wird, wo er dann das Geschütz benutzt.


Sucht euch also unter [Entity] -> [Trigger] den [AreaTrigger] heraus und zieht in auf die Map. Achtet darauf, dass ihr [Align to Terrain] aktiviert habt, sonst landet der Trigger ganz leicht unter der Erde und ihr findet ihn nicht wieder.



Dann solltet ihr im noch einen *sinnvollen* Namen geben, einstellen, dass er nur einmal ausgelöst werden kann [TriggerOnce] und ihn dann dem Flow Graph hinzufügen (oben rechts im Editor ist ein [FG-Knopf] (siehe rote Markierung), mit dem ihr den Editor öffnet - dort müsst ihr dann noch den richtigen Flow Graph rauspicken, so wie vorhin als ihr den Start kopiert habt.





Nun verbindet ihr das [Enter] des [AreaTrigger] mit dem [Enable] des Soldaten - dadurch erscheint der Soldat, sobald der [AreaTrigger] ausgelöst wird.




A pro pos [AreaTrigger] auslösen: Das passiert noch gar nicht! Also erstellen wir eine Shape:
Unter [Area] wählt ihr [Shape] aus und malt dann die Eckpunkte dieser Form auf den Boden - Sobald jemand diese Form betritt, wird nachher der [AreaTrigger] ausgelöst.




Jetzt müssen wir der [Shape] noch eine [Height] verpassen, dadurch kriegt das ganze auch eine Höhe.



Ich habe jetzt via [Edit Shape] die Form noch etwas verändert, damit das ganze schon früher ausgelöst wird - wenn der Koreaner erst am Geschütz ist, wenn ich schon dahinter stehe, bringt das nichts.


Auf jeden Fall müsst ihr noch via [Pick] ein [Target] aussuchen, in unserem Fall den [AreaTrigger].




Jetzt öffnen wir nochmal den [Flow Graph], dazu könnt ihr z.B. auch beim [AreaTrigger] und [Flow Graph] auf List klicken, dann seht ihr alle Flow Graphs, in denen er vorkommt, das sollte bisher nur unserer sein. Ein Klick darauf und schon seid ihr da.




Alternativ zur Rechtsklick-Methode könnt ihr die Befehle auch links aus dem [Components] Fenster in euren [Flow Graph] ziehen. Benutzt eine der beiden Methoden, um ein [AIUseObject] hinzuzufügen.




Jetzt müssen wir noch sagen, welchem [Entity] wir den Befehl geben, und was benutzt werden soll. Zuerst stellen wir als Benutzer den Soldaten ein:

Soldat anklicken, Rechtsklick auf das [AIUseObject] und [Assign selected entity].




Dann will [AIUseObject] noch die [ID] des Objekts, das benutzt werden soll, wissen. Also klicken wir das an, fügen beim [Flow Graph] ein [EntityId] hinzu und machen wieder [Assign selected entity].




Zu guter Letzt verbinden wir noch die [ID] von [EntityId] mit dem [ObjectId] vom [AIUseObject] und das [Enabled] vom Soldaten mit dem [Sync] des [AIUseObjects].




Achja, eins noch, ein [AutoDisable] (zu finden unter [AI]) fehlt noch, dem weist ihr wieder den Koreaner zu, ausgelöst wird's vom [Enter] des [AreaTriggers] und das ist damit der Gegner auch seine KI nutzt und z.B. vom Geschütz weggeht, wenn man selber dahinter läuft.

Tutorial von "Mr. Wonko".

Website Copyright © by 4thDimension Networking ®

Top Desktop version