Crysis: Maximum Edition

World Editor ~ WE - Cinematiky (


Autor: Restor
Název: WE - Cinematiky (přesný timing)

Ako robit "presny timing" na cinematiky, kedze pouzivanie akcie "wait for x seconds" je presne asi jak bratislavska MHDcka. Zacnem z vostra - poznate funkciu Wait for x sec. alebo wait for x sec gametime. JE TO NA HOVNO! Kedze taky wait na 1 sekundu moze byt zhruba od 0,9-1,1 sekundy, blizzard to spravil dementne


Urcite si vsimnete, ze ked mate prvu scenu, neco tam spravite, a potom robite dalsie a dalsie, a ako je mapa vacsia a vacsia, tak tie prve sceny uz niesu az tak uplne presne, to je preto, ze tie waity sa neprisposobuju lagovaniu hry alebo ako by som to nazval. (ano, aj ten wait-gametime je naprd). Ako na to? Toto je tutorial velmi jednoduchy, a cely v GUI ako spravit presne casovanie (hlavne v bojovych a neviem akych pasazach je to treba, kde je potrebne co najpresnejsie casovanie a pouzivaju sa velmi male casove intervaly, kde je klasicky wait najviac naprd)

Viete co je to TriggerQueue (dalej len ako "TQ") ? Asi nie co? Ked sa pozriete do akcii, tak tam v sekcii Trigerov mate, ze Add trigger to TQ, remove trigger from TQ. No ten TQ je taky poradovnik triggerov, najprv prejde prvy trigger, ked sa ten vyradi zo zoznamu, tak potom pojde dalsi atd. (musi sa vyradit pomocou toho Remove trigger from TQ, nestaci ked len prebehnu vsetky jeho akcie)

A viete snad, co su to Timery, proste jak ked mate v kuchyni hodiny, ktore vam odpocitaju cas dokedy sa vam v mikrovlnke zohreje kakauko, tak toto je podobne. Samozrejme sa najviac pouzivaju v playable mapach, kde sa daju aj zobrazit vpravo hore atd, ale kedze cas v timeri je presny, a ne blby jak waity, tak pouzijeme namiesto kazdeho waitu timer.


Takze aky je vlastne ten tajomny system? Klasicka schema triggeru v cinematiku vypada ze

A: nech bezi unita sem
wait 5 sec
kill unita
create mrtvola
wait 5 sec
remove mrtvola atd.

Treba nam dva variable
Typ timer = napr. KAKAUKO
Typ triiger = napr. SPINAC

V tomto systeme hned na zaciatku kazdeho triggera (nie uplne kazdeho, taky trigger, ze ked dojde jednotka do lavy, tak skape, a nic ine ten triger nerobi, tak do takeho nie, proste len tam, kde by mali byt waity) treba dat akciu "Set Variable - Set SPINAC=This Trigger"

Najpodstatnejsia vec este je, ze vzdy, ked by mal byt niekde wait, pouzije sa akcia "Countdown timer - Start Timer KAUAUKO", kde si navolite pocet sekund, ktore chcete. Dalsie akcie supnete do noveho triggera, a zas, tam kde ma byt wait, date akciu s tym Timerom, co som pisal vyssie, a dalsie akcie za tym zas do noveho triggera, takze namiesto jedneho dlheeho triggera s 2 waitami, ktore su krive jak slak, budete mat 3 triggery. Nazvite ich napr. TriggerA, TriggerB a TriggerC

Takze budu vypadat asi takto

Trigger A
A: Set SPINAC=This trigger
nech bezi unita sem
Start timer KAKAUKO as One-shot that will expire in 5 sec

Trigger B
A: Set SPINAC=This trigger
kill unita
create mrtvola
Start timer KAKAUKO as One-shot that will expire in 5 sec

Trigger C
A: Set SPINAC=This trigger
remove mrtvola atd.
a dalsie akcie


Teraz tie tri triggery hodime to toho TQ
Spravte dalsi trigger, nazvite ho PORADOVNIK

E: co chcete
C: co chcete, to si treba setko navolit podla gusta
A: Clear the TQ (aj ked toto ani netreba, ale ja to tam davam)
Add Trigger A to TQ (ja davam ignoring conditions, a to v 99% v cinoch treba takto)
Add Trigger B to TQ
Add Trigger C to TQ

a este jeden trigger treba spravit, velmi jednoduchy, kamen tohto systemu, nazvite ho napr. SYSTEMOVY TRIGGER

E: Timer KAKAUKO expired
C: nist
A: Remove SPINAC from TQ

Takze, mate ten PORADOVNIK trigger, v tom ste si spravili ten poradovnik triggerov (trigger queue po anglicky) , najprv sa ide exekutnut trigger A (prvy trigger sa spusti hned, kedze prednim v poradovniku nic neni, a tomto ten TQ je, ze nehladi na eventy (a tu ani na conditions) triggerov, ale len sa ich akcie spustaju)

Trigger A hned v prvej akcii da premennu SPINAC na seba, potom sa exekutne aj to dolezite z neho, a nakonci sa spusti Timer KAKAUKO, ten ked skonci, tak hned na to zareaguje SYSTEMOVY TRIGGER, ktory hned trigger A vyhodi z TQ, a moze ist na rad spinac B, ktory spravi to iste, a 5 sekund po nom ide na radu trigger C.

Jednoduche, co poviete? Takze budete mat plno kratkych triggerov, ale za to presne casovanie. Je na to aj nejaky uber JASS tutorial, ale tomu nerozumiem ani makke F. Este dve drobnosti

Nemusite samozrejme zas mat cely cinematic nahodeny iba v jednom TQ (teda poradovniku), kludne ako posledny trigger jedneho triggera PORADOVNIKU dajte dalsi PORADOVNIK_B, v ktorom zas nahadzete triggery do zoznamu, a spravite to iste vlastne. Nie je vynimkou ak v jednom taktomto TQ budete mat aj 30 triggerov, a to moze trvat fakt len dve tri minutky, takze toho bude dost, nezabudnite si tie triggery nazyvat tak, aby ste sa v tom vyznali, napr. aj ako spominane triggerA, triggerB atd...

Odporuca sa, kvoli mnozstvu triggerov, na koniec kazdeho triggera ktory sa uz nebude v hre viacejkrat spustat (takze okrem SYSTEMOVEHO_TRIGGERA) kazdy, TriggerA, TriggerB atd, aj PORADOVNIK, dat este custom script ze "call DestroyTrigger(GetTriggeringTrigger())", aby hra isla viacej plynule.


S tymto systemom sa inac aj daju robit lahsie Escape cinematikov, poznate to z kampane, ze date Esc, a cinematik sa okamzite skonci, tu staci len spravit trigger ze ked hrac stlaci esc, tak sa odstrania vsetky triggery z TQ (clear the TQ), tym padom bude TQ prazdny a uz nemoze akykolvek trigger z neho prebehnut. V pripade pouzitia waitov by sa muselo pred kazdym waitom checkovat, ci sa nestlacila esc, proste otrava.

Samozrejme ze presny timing sa da spravit aj inaksie, aj cez event game-time elapsed, alebo aj cez jass whatever, ale toto je pomerne jednoduche, co by mal zvladnut kazdy.



Edit by : e1f
e1f@warcraft3.cz
Editor neručí a nezodpovídá za kvalitu překladu

Hodnocení
(počet hlasů: 11)
hrozné
výborné

Hodnotit mohou jen registrovaní uživatelé. > Zaregistrovat <




Nový komentář
Orophar 30.10.2014 12:15:46
Myslim, že tohle je v celku zbytečné, wait funguje nejlip co může. Př: wait 5sec trvá 5 sec i ve skutečnosti a wait game time 5sec trvá 5 sec ve hře (když se ve hře podíváte nahoru doprostřed, běží vám tam čas a jedna hod je mín jak 1min :D (PS dá se to změnit)). Podle mě je tenhle návod nahouby

Rock_Win Witcher21.10.2013 20:58:25
já to nepochopil pls vysvětlete my to snadnějc :D

sgm 7.12.2011 20:36:36
Je to dobre, asi aj profesionalne ale nechapem tomu :D asi ostanem pri normal trigeroch

TheBus 1.12.2011 14:38:52
evylm
hustej link xD

Restor RednekLama22.11.2011 16:00:56
mnoo, ze som to pisal asi pred polrokom alebo kedy, o tom potom :-D, a ze sa to az teraz dostalo na stranku


anyway, je to mozno trochu zmatocne napisane. Mozno to prepisem do nejakej lepsej formy. Samozrejme ze pri tomto tutoriale je uz vhodne aby clovek uz vedel nejake tie zakladne veci o editore.

Evilm 8Gods22.11.2011 12:26:10
grýn
http://www.google.cz/#hl=cs&cp=15&gs_id=2h&xhr=t&q=w3+editor+ai+tutorial&pf=p&sclient=psy-ab&source=hp&pbx=1&oq=w3+editor+ai+tu&aq=0w&aqi=q-w1&aql=&gs_sm=&gs_upl=&bav=on.2,or.r_gc.r_pw.,cf.osb&fp=acae89d2fa4e7739&biw=1199&bih=674

Ariagil 21.11.2011 22:14:04
Pěkný, uvažuju, že to použiju v Epilogue... :)

Green 20.11.2011 13:52:27
může někdo pomoct?
Prosím mohl by dát někdo návod na umělou inteligenci? Třeba jako v Dotě

aldwyn VeVerKy20.11.2011 10:40:09
jestli to laguje tak je to blby komp nebo tezce zahlcena mapa a zhruba 1 setina neni nic moc

paxi C&S18.11.2011 12:40:55
pekné a súhlasim s tebou

TheBus 18.11.2011 12:36:50
je to nepřehledné a vůbec tomu nerozumim

Evilm 8Gods15.11.2011 22:16:32
vbec to nechápu, ale určitě to bude good :_D



Nový komentář:


Jen pro zaregistrované uživatele.

Jméno:
Heslo:
Zapamatovat
Nová registrace
Zapomněli jste heslo?


Poslední příspěvky
Novinky29.12. 12:37
Novinky27.12. 19:02
Novinky24.12. 18:11
Rat Race21.04. 13:53
Ikonky v př...20.04. 18:55
Rat Race20.04. 15:01
Rat Race09.04. 11:01
Hlášení chyb30.03. 14:05
Rat Race18.03. 10:44
Rat Race17.03. 16:07


Streamy
back2warcraftN/A
CechiN/A
Compmaster[nXh]N/A
ESL_WC3N/A
LawLietN/A
n3GRN/A
ReMinDN/A
TomikuSN/A
vOshN/A

Anno 1404



© Warcraft3.cz 2003-2017, všechna práva vyhrazena, ISSN 1214-892X
Názvy Warcraft, Reign of Chaos, The Frozen Throne a Battle.net jsou
registrovanými obchodními znaekami spoleenosti Activision Blizzard.