Capitolul logica 9 joc

În acest capitol ne vom uita la:

Ca ray punct de pornire tag-ul
Cum de a face AI pentru a merge la punctul în care jucătorul intră în triger
Grafic flux Debugging (Flow Graph) - (în continuare FG).
Crearea unui contor de omoruri.
Recompensarea jucător după crimă gol.
Afișarea player de sănătate FG.
Schimbarea tastatură aparat de fotografiat Player.
Crearea unui temporizator cu numărătoare inversă.
Crearea unui eveniment audio.

Introducere:
Când ne-am explorat cele mai multe script-ul extern, avem nevoie să înțelegem mecanismele interne ale logicii jocului, care funcționează și este configurată prin intermediul FG. El este unul dintre cele mai puternice instrumente pentru orice designer, în acest capitol vom examina unele dintre exemplele care pot fi create folosind FG.
Transferul tag-ul jucător de la punctul de declanșare.
În această rețetă, vom demonstra utilizarea de bază a trăgaci, și apoi Să examinăm teleporta jucător la un moment dat după introducerea pe trăgaci.

Cum de a face acest lucru.

1. RollupBar, faceți clic pe butonul Entități.
2. Alegeți fila Trigger ProximityTrigger
3. Pune pe hartă ProximityTrigger, apoi efectuați următoarele modificări ale setărilor:
DimX = 10
Dimy = 10
DimZ = 5
OnlyPlayer = Adevărat
4. Crearea unei note (platforma pe care trebuie să meargă la loc pentru a vedea) - am folosit solide cu dimensiuni de 10x10x1.

5. Așezați harta etichetă care indică coordonatele de mișcare.
6. RollupBar, faceți clic pe tab-ul AI.
7. tipul de obiect, selectați Tagpoint.
8. Puneți punctul tag-ul câțiva metri de declanșare

Notă:
Puteți re-deschide graficul cu fluxuri
Bara de instrumente | Vezi | Open View Pane | Grafic cu fluxuri.

14. Faceți clic cu butonul din dreapta într-un spațiu deschis (caseta gri acoperite cu plase) și faceți clic pe butonul Add Selected Entity.
15. Repetați pașii de la 3 la 5 la punctele tag.

Notă:
Puteți selecta mai multe elemente și le adăugați la FG

16. Faceți clic dreapta Adăugați Node | entitate | Beam Entitate.
17. În continuare, faceți clic dreapta pe Adăugați nod | Joc | Jucătorul local
18. Se repetă totul ca în imagine.

Notă:
Nodul este format din două părți (stânga și dreapta). Partea din stânga este responsabilă pentru recepționarea semnalelor. Partea din dreapta este responsabil pentru semnalizarea.
Pentru a crea o legătură între nodul * S, este necesar: clic stânga pe ieșirea dorită și mențineți pentru a muta săgeată la intrarea corectă.

Acum, de fiecare dată când un jucător intră într-un anumit ProximityTrigger. jucatorul va fi transferat într-un anumit punct al etichetei.

Cum de a face AI pentru a merge la punctul în care jucătorul intră pe trăgaci

În această rețetă, vă vom arăta cum vă puteți da rapid goto comanda la AI (inteligenta artificiala), atunci când aparatul intră pe trăgaci.

Prepararea ...
1- nivelul de execuție.
2-complet lecția precedentă.
3-Pune pe cardul Grunt (entitate / AI / groh)

Cum de a face acest lucru.

1. În primul rând, creați ProximityTrigger și platforma ca în lecția anterioară.
2. Apoi, plasați eticheta AI (Tagpoint), în ProximityTrigger.
3. Apoi, creați o nouă FG de ProximityTrigger. Și noi numim FG - AI_Goto.
4. Ca parte a FY, creați următorul script:

Cu acest FG. AI ar trebui să meargă la TagPoint odată ce aparatul intră pe trăgaci. (Se oprește să te duci sa vezi daca jucatorul)

Debugging Flow Graph

Acum, că am înțeles elementele de bază ale FG considerăm modul în care să-l depanare, și pentru a găsi eventualele erori ..

Cum funcționează.

În acest mod, veți vedea cum script-ul logica.
Puteți vedea cât de multe ori impulsul a dus la un anumit nod, și dacă el a mers.

Mai mult ...
Pentru curățarea informații după modul de depanare, faceți clic pe pictograma care coșuri de lângă „bug“


Crearea Counter Kill
În această rețetă, considerăm una dintre următoarele numărătorului omucidere.

Acum vom colecta schema de noi.

Cum funcționează.

1 cu jocul: LocalPlayer vom trece jucătorului ID Crysis: HitInfo.
2 Crysis: HitInfo vom afla ID-ul «victimă»
3- Când „prada“ moare pulsul se duce la un contor care emite un semnal de la ecranul player-ului.

Recompensarea jucătorul după uciderea mai multor jucători

În această rețetă, vom termina scenariul anterior. Vom face acest lucru după asasinarea mai multor NPC-uri jucatorul va primi o recompensă.

Să începem. Vom avea nevoie de script-ul precedent, iar elementele următoare.
1- Math: Egal - Comparați nodul A și B. Dacă A = B atunci adevărul. Fals altfel.
2- Inventar: addItem - nod prin care jucătorul poate da un anumit element de colectare după o anumită acțiune.

Acum vom colecta schema de noi.

Cum funcționează.

1 din ultima schemă.
2 pentru a obține o anumită cantitate de Kill (stabilit în Math: variabilă egală în B) există un semnal de la nodul Inventar: addItem care oferă jucătorului armele indicate anterior sau un alt element echipamente)

Afișează starea de sănătate a populației prin intermediul jucătorului Grafic cu fluxuri

Versiunea actuală a CryEngine 3 HUD lipsește (după câteva actualizări în CE3 a apărut un sprijin Scaleform * o. Și, prin urmare, familiar pentru noi toți HUD * a)

Tăierea din wiki. Heads-Up Display (HUD abbr.) - un termen în jocuri pe calculator, care reprezintă o parte dintr-o interfață grafică de utilizator, folosit pentru a afișa informații importante direct în timpul jocului


Vom face un simplu indicator al stării de sănătate a caracterului.

Avem nevoie de:
1-joc: LocalPlayer
2- Timp: Timer - generează un impuls la anumite intervale de timp.
3- Joc: ActorGetHealth - prezinta jucător de sănătate / OPS în momentul Impulsul
4- HUD: DisplayDebugMessage

Acum vom colecta schema de noi.

Cum funcționează.

Timp: Temporizatorul generează impulsuri (în exemplu la fiecare 0,05 secunde). Impuls merge la joc: ActorGetHealth. Din aceasta vine ca un text în HUD: DisplayDebugMessage

Notă:
Poate fi necesar să schimbați «X» și «Y» în HUD: DisplayDebugMessage - dacă utilizați mai multe HUD: DisplayDebugMessage

Schimbarea aparat de fotografiat player după ce faceți clic pe butonul

În acest exemplu, vom analiza un exemplu de trecerea camerei după apăsarea butonului.

Avem nevoie de următoarele elemente:
1-Misk: Start- generează un singur impuls atunci când este pornit cardul.
2-Intrare: Key- citește apăsarea unor taste de pe tastatură, joystick-ul, mouse-ul, și alte controlere.
3-Logic: pulsând secvențială Sequentializer-.
4-System: comenzi de instalare ConsoleVariable- la consolă, cu o valoare (5 bucati).

Capitolul logica 9 joc

Cum funcționează.

1 La pornire apare carte executa comenzi care permit susținerea feței camerei 3 și camera de sprijin diferența față de părțile laterale.
2 Apăsând «C» în -stabilirea de intrare: comutator cheie între vizualizările camerei (Logic: Sequentializer comută între comenzi)


Crearea o numărătoare inversă.

În această ultimă lecție în acest capitol ne vom uita la crearea de numărătoarea inversă otschota- 60 de secunde.

Avem nevoie de următoarele elemente:
1- Misk: Start
2- Math: SetNumder - stabilirea forme matematice.
3- Math: Sub - operații matematice (diferența)
4- Joc: LocalPlayer
5- HUD: DisplayDebugMessage
6- Ora: Temporizator
7- Math: Counter - Counter
8- Math: Egal - comparație.

Cum funcționează.

1 Când porniți valoarea matematică a jocului Math nodului: SetNumder merge la matematica: Sub A
2 Puls de timp: Contor de timp vine cu o frecvență de o dată pe secundă merge la matematica: Counter si de acolo la Math: Sub B
3- matematica: Sub are loc operații matematice A-B.
4 rezultat Math: Sub vine pe ecran HUD: DisplayDebugMessage
5- valoare de la matematica: Counter merge la matematica: egal și de realizare valoare 60 se va opri de numărare și va produce o acțiune.