1 Was ist TRVIEWER?
Der TRviewer ist ein Tool, programmiert von popov mit dem man Objekte, Animationen von TR1-TR4 editieren und verändern kann.
2 Wo gibt’s dieses Tool?
Entweder direkt auf popov’s page oder hier im Levelbase Stuff Bereich
3 Funktionen von TRVIEWER
STATE_ID
Mit der State Id weiss die EXE um was für eine Animation es sich gerade handelt.
Beim Harphy ist beispielsweise beim Vergiften die State ID 6,. Hat man also einen Gegner im Harphy-slot und gibt bei einer Animation die State ID 6 ein, vergiftet er Lara, egal mit welcher Animation.
SPEED
Gibt man eine Positive Zahl in der Animation ein, dann bewegt sich das Objekt bei dieser Animation vorwärts. (Je höher die Zahl, desto schneller)
Bei einer negativen Zahl bewegt sich das Objekt rückwärts.
Bei Null bleibt das Objekt stehen.
ACCELERATION
Ist dasselbe wie beim Speed und sollte bei jeder Animation vom Orginalen Objekt übernommen werden.
UNKNOWN
Sollte bei jeder Animation vom Orginalen Objekt übernommen werden.
FRAME
Frames sind die einzelnen Bestandteile aus der die Animation besteht. Ein musiktitel besteht beispielsweise aus Sekunden, während die Animation aus Frames besteht. Eine Animation kann verschieden lang sein. D.h. Es gibt Animationen mit 1 Frame oder sogar mit 500 Frames.
NEXT ANIMATION
Dort gibt man ein, welche Animation nach dem Abspielen dieser Animation abgespielt werden soll. Manche Animationen werden erst nach gewissen 'LINKS' abgespielt. diese werden aber erst etwas später erläutert.
NEXT FRAME
Hier kann man die Framenummer bestimmen, mit welchem die nächste Animation starten soll
4 TYPE
CHAIN/LOOP
Wählt man Chain werden alle Animationen der Reihe nach abgespielt, wie man sie im NEXT ANIMATION -Feld eingegeben hat.
Bei LOOP wird immer die ausgewählte Animation abgespielt.
ANIM COMMANDS
Anim Commands in der spalte CMD gehen von 1 bis 6.
Sie sagen der Exe was in der ausgewählten Animation und an einem bestimmten Frame der Animation passieren soll. (zB: Sounds, Erdbeben)
1 bedeutet bei einem Gegner dass er klettern soll. Diese Werte sollen aber vom Original Objekt übernommen werden.
3 bedeutet bei Lara, dass es sich um eine Schalter Animation handelt. (Dies hängt aber ab, in welchem Slot die Animation sich befindet)
4 bedeutet bei gegnern, dass sie sich nach dem abspielen der Animation auflösen sollen.
5 ist der Soundbefehl. Dafür braucht man jetzt auch noch die Spalten PARAM1 und PARAM2
PARAM2
Die SOUND_ID gibt man hier ein. Man kann sie von einem Objekt, welches auch in der TR4 ist verwenden. Bei Sounds, die nicht in der TR4 vorhanden sind, vielleicht weil das Objekt mit
dem Sound nicht beinhaltet ist, kommt eine Fehlermeldung.
PARAM1
hier gibt man das Frame an, in welchem etwas passieren soll.
Beispiel: Der T-Rex hat bei der Gehenanimation 20 Frames. Im frame 8 tretet er auf den Boden auf und genau dann soll die Exe den Sound abspielen. Nun gibt man im Animkästchen ein:
[table=3]
[*] CMD
[*] PARAM1
[*] PARAM2
[*] 5
[*] 8
[*] 16640
[/table]
Bei Nummer 6 Spielt die Exe am gewünschten Frame ein kleines Erdbeben ab, und es gilt dasselbe wie bei den Sounds ( CMD 5 )
Nur das man bei PARAM2 die Zahl 1 eingeben muss
LINKS
nun kommen wir zum wichtigsten Teil -den Animationlinks.
Je nach Verwendung der jeweiligen STATE-IDs in einer Animation, kann die EXE verschiedene Links erkennen.
Nehmen wir zum Beispiel an der Gegner steht gerade. In der Stehenanimation kann man die meisten Links verwenden, da der Gegner aus dem Stehen aus sehr viele Dinge machen kann.
Wenn man einen Gegner von Anfang an bastelt, sollte man die State_IDs vom Gegner nehmen, in dessem SLOT der Gegner sich befindet. Also wenn man einen Geier im Harphy-slot hat, sollte man die State_IDs vom Harphy hernehmen. Im prinzip ist es egal, ob die Animationen vom Gegner, den man gerade bastelt in einer ganz anderen Reihung sind wie beim Original. Hauptsache die State_IDs sind den richtigen Animationen zugeordnet.
Die Links funktionieren folgendermaßen (beispiel aus dem Harphy-slot):
Wenn der Harphy die Attacke vergiften abspielen soll (das macht er, wenn er an einem bestimmten punkt im Level steht, -in diesem Fall nahe bei Lara), dann spiele die Animation *** ab, mit dem nächsten Frame ***.
und man muss noch die Frames eingeben, unter welcher Zeitspanne die Links aktiviert werden sollen. Bsp:
Zwischen Frame 1 und Frame 22 (wenn die Animation überhaupt so viele Frames besitzt)
nun heisst es im endeffekt:
Wenn der Harphy die Attacke vergiften abspielen soll (das macht er, wenn er an einem bestimmten punkt im Level steht, -in diesem Fall nahe bei Lara) In der Zeitspanne zwischen dem ersten Frame und dem letzten, dann spiele die Animation *** ab, mit dem nächsten Frame ***. (wobei die Sterne die Nummer der nächsten Animation und des nächsten Frames darstellen soll)
Nehmen wir an der Harphy soll wenn er Lara vergiften soll anstatt sie zu vergiften soll er sie normal angreifen.
Dann gibt man als nächste Animation im Animationslinkfenster die Attackeanimation -nummer
ein und die Attackeanimation soll die STATE_ID der normalen Attacke haben.
So kann man sich ein bisschen herumspielen.
Hier gehts weiter:
Next Frame bei den Links bedeutet mit welchem Frame die gelinkte Animation anfangen soll.
Um einen Command einzuggeben muss man auf das Lasso mit dem gelben stern drücken. In den feldern unten gibt man dann die entsprechenden Zahlen ein und drückt nebenan auf den dicken Pfeil (Werte übernehmen) bei den Animationslinks Links ist dasselbe (STATE CHANGES).
5 Wie baut man einen Gegner
WICHTIG: nicht jedesmal speichern haut (wegen sich ständig andernden Gründen) hin mit dem TRviewer, da ist es das Beste, wenn man das bearbeitete Objekt vor dem Speichern als TRMVB abspeichert, um so die Tom Datei nochmal zu konvertieren und die Animationen den TRMVB wieder mit TRVIEWER einzufügen.
Ich habe als Beispiel einen ganz einfachen Gegner genommen und zwar die Spinne aus TR2 im small Scorpion-Slot.
Da die Texturen mit TR2WAD sowieso noch nicht funktionieren, ist es am einfachsten, den Gegner mit Trwest ins Wad zu bekommen und am Besten ein ganz neues Wad erstellen.
Da es aber nach dem Konvertieren zu Fehlermeldungen mit dem TRviewer und den Sounds kommen kann, ist es das Beste, zuvor aus der TR2 Datei alle Sounds aus dem gewünschten Objekt (also alle commands mit dem CMD 5) umzunennen und die Datei dann unter einem anderen Namen zu speichern.
Um Fehler zu vermeiden, benennt alle Sounds in 5 um
zB: CMD 5
PARAM1: 5 (je nachdem ob es 5 Frames gibt, ansonsten NR: 1)
PARAM2: 5
Wenn keine Sounds in einer Animation sind erstellt trotzdem einen Soundblock.
jetzt kann man die Datei mit TR2WAD in ein TR4 Wad umwandeln.
Man kopiert also die Spinne in den small Skorpion-slot und den small Skorpion aus einem TR4 Wad in einen anderen slot.
Dann speichert man das Wad ab, und öffnet den LE. Im LE baut man dann ein kleines Übungsgelände mit dem small skorpion, konvertieren und die TR4 mit dem TRviewer geöffnet.
Den Small skorpion suchen und auf die Lupe drücken.
Hiermit erscheint nun die TRV Tool-Box.
Die Spinne hat 9 animationen und der Skorpien 8.
Im Grund genommen ist es egal, in welchem Slot die Animationen stecken, wenn die Links stimmen und die Stat IDs, dann wird die Exe die richtigen Animationen abspielen.
Eine ausnahme hingegen ist die Sterbensanimation. Die muss man in den richtigen Slot tun. Dazu aber später. (Die zweite Ausnahme ist der Baddy. Bei ihm muss man gar alle Animationen in den richtigen Slot tun, da die Exe die Links aus dem Animationslot abspielt)
Der erste Schritt wird sein alle StateIDs der Spinne mit denen des Skorpions übereinzustimmen.
Die ersteAnimation des Skorpions ist gehen und mit der State ID 2
so gibt man bei der Spinne auch 2 bei der gehenanimation ein (wenn dies schon nicht der Fall ist).
Dann gibt man bei der Laufenanimation die nummer 3 ein.
Die Spinne hat 2 Atacken. Die erste ist springen und die zweite ist Lara zu beissen.
Glücklicherweise hat der Skorpion auch 2 Attacken mit der State ID 4 und 5.
Die erste Animation der Spinne kann so bleiben. (ausser in der STATE ID soll 5 stehen, da es zur Atacke gehört)
Die zweite bleibt auch so. (stateID 5)
Die Dritte Animation soll eine Attacke sein: StatID 4 (anstatt dem Scherenangriff des Skorpiones)
und Nextanim: Die Nummer der Stehenanimtion
4. Animation wird nicht gebraucht.
Die 5. Animation als 3ds exportieren und die sechste Animation auch. (vorher alle Werte auf einen zettel schreiben)
nun wieder rechtsklick auf das Objekt und 3ds importieren.
Dann ANIMATION und REPLACE WITH ANIMATION anklicken und unten gibt man die Animation 6 ein. (per listenpfeil)
jetzt einfach die 5fte Animation öffnen, dann hat man die Sterbensanimation schon im richtigen Slot.
Für die ehemalige sechste Animation kann man diese einfach zu den anderen 9 dazufügen.
Die sechste Animation sollte jetzt die Sterbensanimation sein. hier sollte man nun alle aufgeschriebenen Werte wieder eintragen. ( STATE ID: 6 -weil der Skorpion diese ID hat- Next anim: 6 - weil daraufhin keine Andere folgen soll.; next frame: 32)
und im CMD gibt man 4 ein -ist standartmäßig schon da. (damit die Spinne sich auch auflöst)
Animation 7: Das ist die 2te Attackeanimation (STATE ID: 5 next anim Die Nummer der Stehenanimtion)
Animation8: Gehen- Die Werte bleiben nur die Links werden verändert. ( 1, 40, 40, DIE NUMMER DER STEHENANIMATION , 1) -fürs stehen
(3, 40, 40, 9 , 1) -fürs Laufen
(4, 40, 40, 3 , 3) -für eine Springattacke
Animation9: Laufen- Die Werte bleiben nur die Links werden verändert. ( 1, 20, 20, DIE NUMMER DER STEHENANIMATION , 1) -fürs stehen
(2, 20, 20, 8 , 1) -fürs Gehen
(4, 20, 20, 3 , 3) -für eine Springattacke
Animation10: dies sollte jetzt die Stehenanimation sein. (21 Frames)
StateID: 1 -vom Skorpion übernommen
Next anim: 6 -Die Links übernehmen, welche andere animation gespielt werden soll.
nun kommen noch folgende Links:
(2, 21, 21, 8, 1 ) -fürs Gehen
(3, 21, 21, 9, 1 ) -für Laufen
(4, 21, 21, 3, 1 ) -für eine Springattacke
(5, 21, 21, 2, 1 ) -für eine Beißattacke
6 Sounds
Die Sounds sind ein richtiges Problem, da man keine neuen Sounds hinzufügen kann, und so alte überschreiben muss.
Wenn man ZB den Sound der spinne haben will, muss man den Wert (CMD3 im ANIMCOMMAND Feld) von einem anderen Sound (Das Objekt mit diesem Sound muss aber in dieser TR4 sein) eingeben und im Soundordner umbenennen.
7 Texturen
Es gibt mehrere Wege um die Texturen, ohne dass man sie mit STRPIX selber auftragen muss, auf ein Objekt zu bringen.
Der Import via TRVIEWER ist nicht zu empfehlen, da die Texturen nach dem abspeichern nicht einwandfrei aussehen.
Der schnellste Weg ist WADMERGER zu öffnen und NUR die Meshes von dem gewünschten Objekt aus dem Originalen auf sein Objekt zu übertragen. (Bedienungsanleitung von Wadmerger ansehen)
Falls sich Wadmerger nicht öffnen lässt, so kann man auch beide Objekte (das aus dem Original TR level und das mit TRVIEWER veränderte) in ein Wad tun und die Meshes mit STRPIX mit den richtigen Texturen auf sein Werk zu Importieren.
Die Sounds und Texturen sollten erst zum Schluss gemacht werden, um sich so eventuelle Fehlermeldungen zu ersparen.
8 Tipps
Beim Baddy ist es notwendig dass man alle Slots, die der Baddy hat, mit der richtigen Animation verwendet.
Dabei kann es leicht zu einem ungewolltem 'Umherzittern' bei den einzelnen Animationen kommen. Schuld daran kann die eingestellte STATE ID sein oder Verbindungsanimationen ZB Vom Laufen ins Stehen (manchmal auch bei normalen Animationen).
Man kann bei letzterem die Animation in einen neuen, leeren slot tun, und die benötigte andere mit einer 1 FRAME Animation 'Füllen'.
Da die Animationen beim Baddy in deren bestimmten Slots sein müssen, muss man nun den Link auf die 1 FRAME Animation lenken (sodass diese Animation auch benützt wird) und von dort dann auf die im neuen Slot. Durch die 1 Frame Animation wird der Animationsslot dann benützt, aber sofort auf die neue übergeschaltet.
Unbenötigte Animationen werden keine Achtung geschenkt und alle Links, die auf diese Animationen fallen aus den benötigten herausgelöscht.
So das war nun alles Wissenswerte was es beim TRViewer zu wissen gibt, alles andere kann man nur durch gezieltes Probieren herausfinden.
Viel Vergnügen !