Tutoriály, návody a užitečné informace pro začínající i pokročilé.

[*T] Náhoda

Příspěvekod ackocc » 22 bře 2019, 23:35

Zdravím, dnes si niečo povieme, ako spravíme jednoduchu náhodu a ako taká náhoda funguje. Náhoda sa da využiť napr. na JB mapách, pri hraciej kocke alebo pri hre 123 v kleci.
Začneme tým, že si spravíme nejakú klec, ktorá bude určená na náhodu (4 bloky alebo 3 rady, ...), ja som zvolil 4 bloky.

(pozn.: predtým, ako začnete pracovať na celej obruči náhody, spravte si na úplnom dne mapy dutý SKY-brush, kde celú obruč dáme. Dôvod? Robí sa to kvôli tomu, aby hráč strelbou neaktivoval jeden z button_targetou = menej známy bug na jb_snow, ktorý výjde málokedy.)

Ďalším krokom je náhodnosť samotná. V tomto hlavnú rolu hraje entita env_beam, ktorá podporuje funkciu náhody.
Name a Start Entity budú rovnaké: beam_random
End Entity: targ_random
Damage / second: 255, a vo Flags zaškrtneme Toggle a Random Strike.
Ďalej vytvoríme arch o veľkosti 128w 128l a 16h s texturou NULL tak, aby v strede obruče brushov bola entita env_beam. Po potvrdení sa nám objaví takéto okno, ktoré si nastavíme podľa obrázku.

Obrázek

Hodnotu 'Number of sides' nastavíme podľa toho, na koľkých blokoch chceme skúsiť náhodnosť (v tomto prípade 4).
Zo všetkých týchto blokov spravíme entity button_target, ktorých Target bude na mm_random_1 (2, 3, 4). Ďalej za každý button_targetom vytvoríme entitu info_target (v tomto prípade 4), ktoré budu mať rovnaký Name (targ_random). Takto vyzerá hotová obruč:

Obrázek

Obruč máme za sebou, teraz prejdeme k 'hraciej ploche, kde sa bude náhoda testovať?'
Ja použijem predpripravený box z mojej mapy. Prvé čo spravíme, je tzv. 'efekt smrti' (plamene, spikes...) Ja použijem 2x env_sprite plameňu na jeden blok (\valve\sprites\fire.spr) s Render modom Additive.

----------------------------------------------------------------------------------------------------------------------------------------

Každé 2 env_sprity flamov na rovnakom bloku budu mať rovnaký Name (na jednom políčku spr_flame_1, na druhom spr_flame_2,...)

Obrázek

Vytvoríme 1x trigger_relay s menom "rl_flame_1_off" a Targetom "spr_flame_1". Ešte ostáva trigger_hurt, ktorého veľkosť bude závisieť na veľkosti bloku.
Name: hurt_random_1,
Damage: 255, a vo Flags zaškrtneme Start Off.

Ďalší na rade je multi_manager. Name mu dáme "mm_random_1", vypneme SmartEdit a doň vpíšeme:

Key: hurt_random_1
Value: .001

Key: spr_flame_1
Value: .001

Key: hurt_random_1
Value: (čas, po koľkých sekundách sa hurt vypne, napr. 5)

Key: rl_flame_1_off
Value: (čas, po koľkých sekundách plamene zmiznú, napr. 5)

Obrázek

----------------------------------------------------------------------------------------------------------------------------------------

Obsah medzi čiarou opakujte toľko krát, dokým si nevyplníte celú hraciu plochu (samozrejme nezabudnite premeniť všetky čísla, abv Vám napríklad mm_random_2 neaktivoval veci s číslom _1).
Takto vyzerá jeden hotový blok:

Obrázek

Ďalší krok je tlačítko a hlavný multi_manager. Vytvoríme si jednoduché tlačítko pomenované btn_random a Targetom mm_random. Taktiež 2x trigger_changetarget, aby sme mohli tlačítko vypínať:

Name: ct_btn_random_on
Target: btn_random
New Target: mm_random

Name: ct_btn_random_off
Target: btn_random
New Target: (políčko necháme prázdne, nevypĺňame nič)

Ďalej si vytvoríme multi_manager s menom mm_random, a vyplníme ho následovne podľa screenu:

Obrázek

Do mapy som pridal taktiež 3 sekundový odpočet, vy môžete pridať napr. 123 zvučku z jb_rush alebo niečo vlastné.

Ak ste spravili všetko podľa návodu, mapu skompilujeme, a môžeme si našu náhodu vyskúšať.

Čo sa vlastne deje? Po spustení tlačítka (btn_random) sa aktivuje hlavný multi_manager náhody (mm_random) a tlačítko sa vypne (ct_btn_random_off), odpočíta sa zvuk (amb_blip, amb_bell) a po 3 sekundách preblikne env_beam (beam_random) medzi jednym z button_targetov, ktorý aktivuje jeden multi_manager spušťajúc plamene (spr_flame_1) a trigger_hurt (hurt_random_1) na 5 sekúnd. Po 9.5 sekundách sa tlačítko opäť zapne (ct_btn_random_on), a náhoda sa dá použiť znovu.

Pre prípad sem prikladám príkladovú mapu + .rmf súbor (heslo: gs), kde si to môžete vyskúšať, alebo si testovaciu mapu pozrieť v editore ak Vám je niečo nejasné. Akby ste náhodou niečomu nerozumeli, napište mi PMku s úryvkom postu, ktorému nerozumiete.


------------------------------------------
Schválené a vyskúšané - LOCK
chickEZ [23 bře 2019]
alf
Uživatelský avatar
ackocc
Drbna
Drbna
 
Příspěvky: 255
Registrován: 18 črc 2017, 08:21

[*T] Náhoda

od Rumcajz » 22 bře 2019, 23:35

A uz jsi vyzkousel treba tohle? Rumcajz
Rumcajz
Rumcajz
Patriot
Rumcajz
 
Příspěvky: 97323
Registrován: sob 29.led 1999 0:11:22

Zpět na Tutoriály

Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků