Ghidul FSM, armacommandreference wiki, fandomului alimentat de Wikia

FSM înseamnă „mașină de stare finită“ înseamnă „mașină de stat“. Prin definiție, compania Bohemia Interactive. FSM - un set de stări ale logicii jocului, trecând de la un stat la altul în funcție de anumite reguli.
FSM pot fi folosite pentru diferite situații, chiar și în scopul muzicii în funcție de situație (de exemplu, în timpul singur luptă, liniște în celălalt) și pentru a indica roboții, cum să se comporte într-o situație dată.
zbor de gânduri pot fi limitate doar de imaginatia ta.

FSM Editor Editare program

Cu jocul ArmA 2. Compania Bohemia Interactive a lansat un instrument pentru a edita fișierele FSM. Aici voi încerca să dezvolt acest program.
Descărcați programul de la acest link.

Editare interfață

Deschiderea prima dată în acest program este foarte ușor pentru a obține confuz. O mulțime de butoane confuze, setări, parametri. Acum vom elimina această obscuritate.


Luați în considerare cel mai de sus opțiuni panou:

Cu cunoștințe de bază chiar și limba engleză, esența acestor elemente nu vor apărea foarte complicat. Voi opri atentia doar pe punctul de Atribute FSM. care vorbesc mai târziu.


Următorul meniu:

Această bară de instrumente de formatare. Font, culoare, sublinia, aliniere, dimensiunea fontului și așa mai departe.

Acum am ajuns la cele mai interesante. Condiții de stabilire a panoului.
Descrierea va fi de sus în jos.

  1. Crearea unui nou stat (New Box);
  2. Mutarea starea selectată (Setare mod de a proiecta);
  3. Crearea de tranziții de la stat la stat (Desenați legături);
  4. Zoom (Zoom);
  5. Întoarcere la scară (Reset Zoom);
  6. Modificarea aspectului blocului (elementul Modificare în ...);
  7. Umple bloc de culoare (Setare culoare de umplere);
  8. Schimbarea de culoare de frontieră (Setare culoare line);
  9. Setați dimensiunea și stilul textului (stilul liniei Setare și lățime);
  10. Set de umplere transparentă;
  11. Setați linia transparentă;
  12. Editați textul în stare (Editare text și proprietățile font);

Descriere Blocuri Editare

Merge doar de sus în jos.

  1. Starea inițială. Activat la pornirea fsm;
  2. Condiția blocului. Controale condiții de tranziție de la un bloc în vederea priorității;
  3. Bloc de stat. În acest bloc sunt scripturi scrise;
  4. Punct de bloc. Doar o bucată convenabil, permițând mai aloca inteligent blocuri;
  5. Finalizarea blocului. Block, care este completarea fișier fsm;

Setarea FSM Edit

.FSM noastre au nevoie pentru a configura înainte de muncă! Pentru că dacă nu, aici vine această eroare atunci când compilarea fsm:

Există mai multe setări software:

Fiecare dintre ele este necesar pentru un anumit loc de muncă. Descrierea acestor opțiuni sunt enumerate mai jos.

Editați setările de control

  • FSM Entitate - Gestionarea fișierelor entityFSM.cfg

Această setare este utilizată pentru a descrie comportamentul anumitor animale (fluturi, albine, libelule);

  • FSM prin script - Gestionarea fișierelor scriptedFSM.cfg

Setarea care vă permite să utilizați comenzi și condiții de fișiere de scripting FSM.

  • Comutator FSM Global - Gestionarea fișierelor globalSwitchFSM.cfg

Compilation la codul * Cpp, folosind comutatorul pentru a naviga prin statele FSM. Compilare utilizează mai multe atribute ale FSM, pentru a defini declarația funcției, codurile etc. precondiție Acest FSM a fost utilizat pentru prima dată în seagull.cpp pentru a coda funcționalitate pilot automat. Deci, deschiderea seagull.cpp în FSMEditor.

  • Clasa Compile FSM - Gestionarea fișierelor classFSMcompile.cfg

Compilation la * Cpp, folosind arhitectura de clasa Fsm. Se creează% funcții (statename) pentru inițializarea de stat și verificați% (funcții statename pentru condițiile de verificare. Nici FSM creat de FSMEditor a fost compilate și utilizate în motor, dar unele au fost codificate manual înainte de existența FSMEditor.

Pentru a selecta setarea ne interesează făcând clic pe elementul evidențiat:

Acum, trebuie să alegeți calea pe care este setat programul FSM Editor.
Cu alegerea corectă ar trebui să vedeți mai multe fișiere cu extensia .CFG
Aceste fișiere de configurare de configurare .FSM
Alegerea dreptul și să înceapă să lucreze cu ea.

Caracteristici FSM Editare

Lucrul cu FSM Editare

Fiecare fișier .fsm ar trebui să înceapă cu starea inițială (Start de stat) și se încheie cu o stare finală (statul End). Pentru a selecta un tip de bloc, au nevoie de doar un clic dreapta pe blocul de interes.

Selecția de tip bloc


Blocul inițial este marcat în roșu. End - portocaliu. Zona de lucru pentru noi vor fi stabilite initCode

În acest domeniu, vom scrie script-uri noastre.

Exemple de lucru Editare

Toate exemplele lucra cu fișiere FSM voi face cu setarea - FSM scriptate.

EXEMPLUL 1 Edit

FSM devine _aktivnym_ de reacție și așteaptă evenimente. Ceea ce a ieșit din ea, uita-te la un exemplu.

EXEMPLUL 2 Editare

Acum voi arăta dependența performanței de prioritate FSM.
FSM - script este un bloc de stări ramificată, având prioritate.
Inițializarea FSM apare, de asemenea, în script-ul init.sqf.
Condiții „unitate 1 Killed“ are prioritate 0, condiția de „unitate de 2 Killed„are prioritate 1.
Prin urmare, în cazul în care există o unitate 1 ucis numai, merge pe o fsm ramură cu ieșirea din primele sfaturi descrise în codul. Dacă o unitate este ucis doar 2, du-te de-al doilea fsm mod, cu încheierea celui de al doilea prompt. Dacă ambele unități vor fi uciși în același timp, totul va merge FSM în același mod la a doua (unitatea de stare a ucis 2), deoarece are o prioritate mai mare și va aduce de-al treilea indiciu.
Puteți fi jucat cu prioritate în cadrul fișierului FSM.
descărcare fișier

EXEMPLUL 3 Editare

Caută arme statice


Acesta este deja exemplu mai complex. În ea, am încercat să simuleze comportamentul soldaților, atunci când se caută arme statice disponibile.
descărcare fișier

care apar frecvent erori Editare

1) Întrebare. Când compilarea, am obține această eroare:


2) Întrebare. La compilarea traseului acolo. eroare:

Eroare atunci când compilarea FSM

Răspuns. Această eroare este asociat cu plasarea de blocuri. Cel mai probabil ai pus două state identice, ce program și raportate în jurnalul:

.

Se pare ca acest lucru:


Aceasta a constatat utilizarea extensiei AdBlock.

articole similare