wz

 
HELP -ON LINE
 Popis súborov
 Klávesové skratky
 Editor animácii
 Triky
 Efekty
 TRScriptEditor
 Vlak Winroom
 Vlak Dxtr3D
 Úprava zvuku (swf)
 Room Side,Tvorba okien (swf)
 2D Mreža (swf)
 Sibir
 Alone in the Dark
 
Návšteva:
 
Posledná úprava:
21.12.2006
 
TR Scripting Editor v 1.00 rev 0

Skôr ako začnem popisovať tento program, by som sa asi mal zmieniť čo všetko dokáže a čo nie. Program je určení na úpravu hotových levelov. Umožní v leveli rozmiestňovať spúšte (do istej mieri ich aj upravovať), svetlá, kamery, sinky, objekty, statické objekty, bohužiaľ ich nevie upravovať ani mazať. A ani nepodporuje OCB. Nedokáže do levelu pridávať nové objekty. (Objekty musia byť v leveli už obsiahnuté). Takisto nevie ani upravovať geometriu levelu a textúri, no i tak je myslím toho celkom dosť čo vie.


POZOR! Program nieje grafický ale čisto textoví. To znamená že nezobrazí level tak ako vypadá (pozíciu objektov, miestnosti spúšte). Preto ho doporučujem používať v kombinácii s iným, ktorý zobrazuje leveli. Ja osobne používam FexInspect (pre zistenie polohy) a FexMerger (pre zistenie ID objektov). Vtom prípade si treba dať pozor lebo FexInspect všetko (miestnosti, vložené objekty) ráta od 0 a tento program od 1.
Program funguje na základe definície sektora, zadáme číslo miestnosti,  číslo riadku a stĺpca. Na daní sektor sa potom zapíše príslušná zmena. Zapísaním skriptu do Editačného okna sa ešte udalosť nezapíše do levelu na to treba level skompilovať (F9). Skript sa môže zapisovať ručne čo je však dosť komplikované. Jednoduchšie je zapisovať skript pomocou dialogovích okien, na každú udalosť existuje nejaké.

Menu

File – To je snáď jasné. Len pripomeniem že Save SCP file a Open SCP file otvoria a uložia napísaní skript.

Edit

Comand List- Otvorí okno so všetkými príkazmi, jednoduchým dvoj-klikom sa potom vybraní príkaz vloží do Editačného okna aj s predpísanou formou.


Copy/Paste Trigger – Umožní skopírovať spúšť a vložiť ju na ďalší sektor (Define Pasted Triggers Manually) alebo zväčšiť spúšť po zadaný sektor.(Trigger Ends In).Funguje to tak že v poli Original Trigger Starts In sa nastaví sektor s spúštou. Stlačí sa Copy Trigger. (Pridá sa riadok Copy_Trigge(1,4,11))V poli Define Pasted Triggers Manually   si nastavíme sektor na ktorom chceme mať totožnú spúšť (sektor 4,9) A stlačíme Add Sector. Prípadne v poli Trigger Ends In nastavíme koncoví sektor spúšte (funguje to na definícii štvorca kde pôvodní sektor je jeden roh a nami definovaní sektor je druhý roh). Tlačidlom Add pridáme naše záznami do skriptu.

Font- Zmení font v Editačnom Okne.

Background - zmení pozadie v editačnom okne.

Static Meshes


Obsahuje len jedinú položku a to Add_Static_Mesh, ktorá otvorí dialógové okno pre umiestnenie statického objektu v leveli. Room, Column, Row, High- určujú pozíciu nového statického objektu. ID- je jeho číslo zistíme ho napr. v FexMergru po kliknutí na príslušní statický objekt ako hodnotu ObjectID . Orientation- natočenie predmetu. Alignment- nastavenie v sektore . Posledné (Red,Green,Blue) určujú osvetlenie.

Zistenie ID z FexMergru.

Ešte sa zastavím pri parametre High . Keď vložíme predmet do levelu je automaticky uložení na podlahu bez ohľadu na to či v danom sektore máme podlahu vyvýšenú alebo nie. Parameter High určuje výšku nad/pod podlahou. Ak teda   nastavíme High 1 tak predmet bude 16px nad podlahou.

Príkaz pre skript je v tvare: Put_Static_Mesh(Room,Column,Row,High, ID, orientation,Alignment, Red, Green, Blue)


Cameras and Sinks Obsahuje len jedinú položku a to Add Camera/Sink, ktorá otvorí dialógové okno pre umiestnenie kamery alebo sinku do levela. Princíp je rovnaký ako v predchádzajúcom prípade Room, Column, Row, High, definujú pozíciu novej kamery a Sinku. Pole Strong v Sinku určuje silu vodného prúdu. Nakoniec pole Comments priloží komentár do skriptu.   Pre samotní level nemá však Comments žiadny význam.

Príkaz pre skript je v tvare: Add_Camera(Room,Column,Row,High) pre kameru a Add_Sink(Room,Column,Row,High,Strong) pre sink.

Special

Climb_Wall / Monkey_Swing   -dialógové okno pre pridanie lezenia po stene ( Climb_Wall) a po strope ( Monkey_Swing ). Príkaz: Climb_Wall(Room,Column,Row,Side) a Monkey_Swing(Room, Column, Row)
Add Source Light - Dialógové okno pre pridanie zdroja svetla. TR1-TR2 pre pridanie svetla do týchto dielov. Intensity- intenzita svetla, Distance- dosah.

Príkazy: Put_Spot_Light(Room,Column,Row,High, Red,Green,Blue,Intensity,Distance) pre Tr1,Tr2 a Put_RGB_Light(Room,Column,Row,High,Red,Green,Blue, Intensity,Distance) pre ostatné časti.

Put_Alternate - tak význam tohto mi tak trocha uniká.

Put Sound Source – Pridanie zdroja zvuku. Príkaz: Put_Sound_Source(Room,Column,Row,High, Sound Index, Flag)


Put Raw FD - Raw data sú špeciálne dáta zapísané na sektore. Sú 3 druhy Command(Function), SubCommand (SubFunction), Par(Operando).

Príkaz: Put_Raw_FD(Room,Column, Row, Command,Subcommand,Par)

Kill_Lara –definuje sektor ako sektor smrti. Príkaz: Kill_Lara(Room, Column, Row)

Help

Id list – zobrazí list so všetkými objektmi aj statickými v leveli. Jednoduchým dvoj klikom sa potom vloží príkaz na vloženie daného predmetu do skriptu aj s predpísanou formou.

Okno Objektov


Princíp je rovnaký ako pri vkladaní statických objektov navyše je tu Amount –množstvo objektu na sektore (napr. ak chceme aby Lara vzala zo sektoru predmet 2x nastavíme amount na 2),  Intensity- intenzita osvetlenia a nakoniec 5 tlačidiel (1-5) čo sú flagy.

Príkaz: Put_Item(Room,Column,Row,High,ID, orientation,Alignment, Flag, Amount, Intensity) .

A na koniec to najkomplikovanejšie

Okno Spúšti

.

Vo vrchnej časti máme definíciu sektora, potom nasleduje typ spúšte. Pre prípad že sa jedná o spúšť Switch_is_on, Key_is_on, Item_at_sectorItem_is_picked_up nasleduje pole Switch/Key/Item # kde zadáme číslo objektu pre tieto spúšte. Pozor nie ID objektu ale číslo vloženého objektu zistíme ho z FexInspectora. Timer pre prípad že je hodnota 0 timer sa nezapíše akákoľvek iná hodnota určí čas aktivácie spúšte. Only Once spustí spúšt len raz. Nakoniec pole Command obsahuje zoznam príkazov. Každý príkaz treba vložiť do spúšte tlačidlom Add to List čo vyvolá dialógové okno pre úpravu parametrov daného príkazu. Spúšt sa vloží do skritu Add_Trigger.





Príklady skriptu:

Skript som písal v leveli tut1.tr4. v prvej miestnosti som pridal puzzle_hole3 a puzzle_item3. Následne som definoval spúšť na puzzle_hole3 ktorá otvorila dvere. Pridanie Puzzle_hole3


Otvoríme level v FexInspectore a na 2D mapke klikneme na sektor kde chceme mať objekt umiestnení v status bare potom uvidíme pozíciu sektora. Vyplníme dolné okno, objekt otočíme na západ (West) aby bol orientovaní pri stene. ID puzzle_hole3 je 262.
Vložíme si puzzle_hole3:

Put_Item(1,9,7,0, 262,1,0,   0,1,16)   ; Puzzle hole 3

Tak isto si vložíme aj Puzzle_Item3, ten uložíme do rohu miestnosti na sektor(2,2). ID puzzle_Item3 je 177. Put_Item(1,2,2,0, 177,1,0,   0,1,16)         ; Item #2

No a nakoniec už stačí len definovať spúšť. Tú nadefinujeme na rovnakom sektore ako máme puzzle hole. Skôr ako začneme definovať spúšť musíme skompilovať level aby   sme si mohli pozrieť čísla objektov. Stlačíme F9. Otvoríme si level v FexInspectore a ak sme všetko spravili správne tak sa na nami definovaných sektoroch objavili Puzzle_hole3 a Puzzle_item3.

V prvej miestnosti klikneme na Puzzle_hole3 a Puzzle_item 3. V mojom prípade má puzzle_hole číslo 89 a puzzle_item 90. Pozor! FexInspect ráta od 0 ale TR Scripting od jednotky preto k ním pripočítame 1.

Nastavíme spúšť. Room nastavíme na 1, column na 9 a row na 7. Trigger si vyberieme Key_is_on . V poli Switch/Key/Item #   dáme 90 (89+1). Cmmand si vyberieme Item stlačíme Add to List. V okne ktoré sa objaví dáme 91 (90+1). Stlačíme Add_Trigger.   A už len skompilujeme (F9) a uložíme.

Start_Trigger(1,9,7)
 If_KeyLock_Is_On_Do_With_Activate(62,0,0,90)
  Item(91)
 End()
End_TRigger()

Zaujímavosť: nasledujúci skript nám do miestnosti 1 na sektor (9,2) pridá spúšť item 256-none.

Start_Trigger(1,9,2)
 Do_With_Activate(62,0,0)
  Item(257)
 End()
End_TRigger()


 
Dnes

18.07.2018, Streda


Meniny má:
na Slovensku:
Kamila

a v Čechách:
Drahomíra