OpenTomb: Neue Tomb Raider Engine von TeslaRus
Wie ich schon erwähnt habe wird ja parallel zum neuen Editor eine neue Engine entwickelt.
Um genau zu sein eigentlich sogar 2 Engines die voneinander komplett unabhängig sind: OpenLara & OpenTomb
OpenTomb (aka. TRE): http://www.tombraiderforums.com/showthread.php?t=197508
Alternativ geht's hier zum Thread von OpenLara
Um genau zu sein eigentlich sogar 2 Engines die voneinander komplett unabhängig sind: OpenLara & OpenTomb
OpenTomb (aka. TRE): http://www.tombraiderforums.com/showthread.php?t=197508
- Download: https://github.com/opentomb/OpenTomb/releases
- Website: http://opentomb.github.io/
- YouTube: https://www.youtube.com/user/Tqbsrc/videos
Alternativ geht's hier zum Thread von OpenLara
This post has been edited 2 times, last edit by "Niklas" (Feb 8th 2018, 12:05am)
OpenTomb Features:
- Integriertes LUA Scripting: LUA ist ein Standard-Script für Games, es ist umfangreich und leicht zu bedienen. OpenTomb benutzt LUA-Scripts für flexible Item, Trigger und Gameplay Funktionen. Im Klartext bedeutet das, dass man JEDES Item und JEDES Feature in Levels zu seinen Wünschen umprogrammieren kann. Es gibt also keine "hardcoded functions" mehr, alles beruht auf vielen kleinen austauschbaren Bausteinen !
- Shader-based rendering: OpenTomb benutzt keine festen Funktionen zur Berechnung der Spielwelt. Der Renderprozess wird für moderne Grafikkarten optimiert, so dass ihr Potenzial vollständig ausgenutzt wird. Momentan werden Beleuchtung, Unterwassereffekte und "shader-based skinning" mit modernen Funktionen berechnet.
- Komplett neue Collision Philosophie: Die Engine benutzt einen neuen Terrain-Generator welcher jegliche Objekte in die Levelstruktur miteinbezieht. Es gibt also keine Collision-Box mehr um Objekte rum, nach dem Levelexport gehören sie fest der Struktur an. Einfach gesagt gibt es in OpenTomb keinen Unterschied zwischen Raumcollision, Staticcollision und Objektcollision. Lara kann auf allen Flächen und Objekten stehen/springen/klettern/usw. (ja ! sogar auf Gegnern !)
- BULLET Physikengine ist ein weiteres bahnbrechendes Feature welches hochwertige real-time Objektinteraktionen ermöglicht. In OpenTomb wird es unter anderem für Lara's Zopf, Steine oder andere Fallen die im Level umherfliegen und jegliche andere bewegliche Objekte verwendet. Der legendäre "ragdoll" Tod ist jetzt so realistisch wie noch nie (siehe Video unten) ! In Zukunft wird diese Physikengine für umherschwingende Seile, für Partikeleffekte, für Wettereffekte und vieles mehr zuständig sein.
- Erweiterte Audioengine: Die alten Tomb Raider hatten keine environmentalen Audioeffekte. OpenTomb implementiert unter anderem Echo&Reverb Effekte (zB. für Höhlen und Gebirge), Windeffekte und Unterwassereffekte (low-pass filter). Ausserdem wird es 3 Audiokanäle geben: Hintergrundambiente, Aktioneffekte und einen Sprachkanal.
- Cross-platform kompatibel: OpenTomb ist in C++ geschrieben und benutzt allgemeine Interfaces wie SDL 2.0, OpenGL/OpenAL. OpenTomb wird in Zukunft auf mehreren Platformen spielbar sein. Momentan arbeitet "Cochrane" an der Mac-Version und "Vobject" an der Linux-Version.
This post has been edited 3 times, last edit by "Niklas" (Feb 7th 2018, 8:44pm)
FAQ:
- Q: Was ist OpenTomb ?
A: OpenTomb (früher bekannt als TRE, tr1_engine oder
TeslaRusEngine) ist eine Reimplementierung der alten Tomb Raider Engines
mit dem Ziel alle Teile 1-5 zu unterstützen (ausser verschlüsselte
TRNG und TREP Levels). Die Engine wurde komplett von Grund auf neu
geschrieben, es ist kein Mod, Patch, Hack oder sonstiges. OpenTomb
benutzt Code aus älteren aufgegebenen TR Engine Clone - insbessondere
OpenRaider und VT Project, ausserdem wird Code von Quake Tenebrae
Project verwendet.
- Q: Warum eine neue TR Engine von Grund auf programmieren wenn es doch schon TRNG gibt ?
A: TRNG ist keine Engine, sondern vielmehr ein
Patch/Hack mit dem über viele Umwege und Eselsbrücken neue Features
implementiert wurden. TRNG basiert also immernoch auf den 15 Jahre alten
Code der alten Tomb Raider Spiele. Die alte Engine hat viele Mangel die
durch TRNG nicht zu beseitigen sind: alte Grafikengine, alte
Soundengine, neue Hardware wird oft garnicht erst unterstützt, keine
Optimisierung, keine echte Physikengine, etc... Ausserdem ist OpenTomb
Open-Source, das bedeutet, dass sich jeder den Code von OpenTomb
anschauen und selbst Veränderungen mit einbringen kann. Ständige
Weiterentwicklung ist somit garantiert.
- Q: Warum zuerst TRE dann OpenTomb ?
A: Es gibt zu viele andere Projekte mit TRE im Namen: TREP, DxTRE3d, TREE4. Core-Design benutzte selbst immer das Wort Tomb in ihren Engines: Tomb2, Tomb3, etc. Bei OpenTomb handelt es sich klar und deutlich um den nächsten Schritt in der Tomb Familie.
Zu guter Letzt ist OpenTomb ein lustiges Wortspiel: etwas entdecken was
als verloren oder vergessen gillt - eine alte Engine mit vielen
gescheiterten open-sourcing Versuchen welche letztendlich dennoch ans
Licht kommt !
- Q: Wo kann ich die letzte Version von OpenTomb downloaden ?
A: Downloaden kann man die aktuellste Version HIER
Ältere Versionen kann man hier downloaden
Wenn du uns bei der Entwicklung unterstützen möchtest kannst du dir den Code hier anschauen
- Q: Was wird benötigt um OpenTomb zu spielen ?
A: Ganz einfach - du musst eigentlich nur die Tomb Raider Spiele besitzen.
Das Problem ist, dass manche Dateien verschlüsselt sind, deswegen musst
du manche Dateien selbst konvertieren oder irgendwo downloaden. Hier ist
eine Listen aller benötigten Dateien und wo du sie findest:
- "Data" Ordner der TR-Spiele.
Du findest den Data Ordner auf jeder Tomb Raider CD oder im Steam/GOG
Installationsverzeichnis. Kopiere einfach den Data Ordner der Original
TR Spiele in den /data/tr*/ Ordner von OpenTomb (* ist hier der TR-Teil, also tr1/tr2/tr3/tr4/tr5). - "Audio" Ordner bei TR3-TR5. Genau wie beim Data Ordner kopierst du einfach den audio Ordner in den entsprechenden /data/tr*/ Ordner.
- CD audio tracks bei TR1-2. Für TR1 & TR2 brauchst du den CD Soundtrack im OGG Format. Du kannst
TR1 & TR2 Soundtracks hier downloaden, oder das gesammte TR1/TR2 Paket hier downloaden. - Ladebildschirm für TR1-3 und TR5. Für TR3 findest du den Ladebildschirm im pix Ordner im Installationsverzeichnis. Einfach den pix Ordner in den /data/tr3/
Ordner kopieren. Für die anderen Spiele ist das etwas komplizierter, es
gibt keine Ladebildschirme bei TR1-2, TR4 benutze Screenshots, und bei
TR5 wurden alle Ladebildschirme verschlüsselt. Um dir das Leben
einfacher zu machen kannst du alle Ladebildschirme hier downloaden. Verschiebe sie einfach in den entsprechenden Ordner und es sollte funktionieren.
- "Data" Ordner der TR-Spiele.
- Q: Ist OpenTomb kompatibel mit TRLE Custom Levels ?
A: Ja ! Die letzte Version unterstützt alle TRLE Levels - auch NGLE Levels, ausser verschlüsselte NGLE Levels.
- Q: Welche Features sind schon integriert und welche noch nicht ?
A: Standart Physikinteraktionen – laufen, rennen, springen, klettern, schwimmen, rutschen und gegen Wände laufen. In
TR2+, kannst du Wände hochklettern. In TR3+ Levels, kannst du auch
hangeln, knien, kriechen und sprinten. Auslöser und Interaktionen mit
Schaltern und Keyholes funktioniert auch. Natürlich kannst du auch Items
aufheben und diese wie in TR4/TR5 kombinieren. Das Menü ist noch in
Arbeit und AI/NPCs werden schrittweise implementiert.
- Q: Warum sind Laras Bewegungen manchmal so verbuggt – springen fühlt sich seltsam an und manche Zwischenanimationen fehlen ?
A: Weil das komplette Status-System (StateIDs) komplett
neu programmiert wird, ist es bessonders schwer das gewohnte TR-Gefühl
1zu1 zu reproduzieren. Ohne den original Quellcode von Core-Design ist
es wie als ob man versucht Lara das Laufen beizubringen, sie ist im
Prinzip wie ein Kind. Es wird viel Zeit beanspruchen alles exakt
einzustellen.
- Q: Was ist mit Tomb Raider Xtra ? Wird es Unterstützung für externe HD Texturen geben ?
A: Ja, es wird die Möglichkeit geben die Texturen
auszutauschen. Das sollte überhaupt kein Problem darstellen da der
komplette Code bekannt ist, man muss sich also nicht mehr in die Engine
"reinhacken" um etwas auszutauschen.
- Q: Und was ist mit Levels die mit Meta2TR modifiziert worden sind ?
A: OpenTomb lädt und rendert extern-modifizierte Levelstrukturen erfolgreich.
- Q: Wird es mit den TRNG/NGLE Features kompatibel sein ?
A: Da TRNG ein Patch/Hack der alten tomb4 Engine ist
und OpenTomb nichts mehr damit zu tun hat, wird es nicht sofort
kompatibel sein. Die meisten TRNG Routinen/Scripte/Effekte können
dennoch recht einfach mit LUA Scripten implementiert werden. Es könnte
auch einen Konverter geben der das TRNG Script in ein OpenTomb Script
umschreibt. Eines Tages wird das alles möglich sein.
- Q: Wird es mit TREP/FLEP kompatibel sein ?
A: TREP & FLEP ist auch ein Hack. Die Levelbauer
von TREP & FLEP Levels können aber ihre Levels mit LUA Scripten
umschreiben. Bewahre deine TREP & FLEP Einstellungen an einem
sicheren Ort auf, du wirst diese in OpenTomb integrieren können wenn die
Zeit reif ist.
- Q: Was ist mit pixel shaders, SSAO, real-time shadows, environment mapping und anderen Graphic-Features?
A: Antwort von Cochrane: All diese Wünsche sind recht
simple zu erfüllen, TeslaRus's Engine ist eine solide Basis um später
solche Extras zu implementieren. Momentan liegt der Fokus auf
wichtigeren Sachen.
This post has been edited 2 times, last edit by "Niklas" (Feb 8th 2018, 12:04am)
Tastaturbelegung
W / S / A / D — Vorwärts / Rückwärts / Links / Rechts
SPACE — Springen
CTRL — Aktion (interagieren/festhalten) / schiessen
F — Waffe ziehen (Waffe erst mit den 1-7 Hotkeys auswählen !)
SHIFT — Gehen / Kopfsprung
CAPS LOCK — Sprinten (wenn CAPS an ist, wird Lara immer sprinten)
V — Kriechen
Z — Status Reseten (wenn Lara wo festbuggt)
N — Noclip Modus
PRINT SCREEN — Screenshot machen
F5 — Schnell-Speichern
F6 — Schnell-Laden
Kommandos
Momentan hat OpenTomb noch kein Menü, man muss alle Befehle in die Konsole eingeben. Um die Konsole zu öffnen drücke ~ oder ^
Wenn man die ~ Taste nicht findet kann man auch eine andere festlegen.
Einfach die config.lua Datei öffnen. Dort müsste stehen:
Man muss jetzt KEY_BACKQUOTE durch eine beliebige Taste ersetzen.
Eine "Tastenliste" findet man in der Datei: scripts\config\control_constants.lua
Kommandoliste:
TeslaRus: main developer.
Cochrane: renderer rewrites and optimizing, Mac OS X support.
Gh0stBlade: renderer add-ons, shader port, gameflow implementation, state control fix-ups, camera programming.
Lwmte: state and scripting fix-ups, controls, GUI and audio modules, trigger and entity system rewrites, hair and ragdoll code.
Nickotte: interface programming, ring inventory implementation, camera fix-ups.
pmatulka: Linux port and testing.
Richard_trle: Github migration, Github repo maintenance, website design.
Saracen: room and static mesh lighting.
stltomb: general bugfixing and maintenance.
stohrendorf: CXX-fication, refactoring and general code optimizing.
T4Larson: general stability patches and bugfixing.
vobject: nightly builds, maintaining general compiler compatibility.
vvsgh: extensive testing, issue management on Github.
Additional contributions from: Ado Croft (extensive testing), E. Popov (TRN caustics shader port), godmodder (general help), jack9267 (vt loader optimization), meta2tr (testing and bugtracking), shabtronic (renderer fix-ups), Tonttu (console patch) and xythobuz (additional Mac compatibility patches).
Translations by: Joey79100 (French), Nickotte (Italian), Lwmte (Russian), SuiKaze Raider (Spanish)
W / S / A / D — Vorwärts / Rückwärts / Links / Rechts
SPACE — Springen
CTRL — Aktion (interagieren/festhalten) / schiessen
F — Waffe ziehen (Waffe erst mit den 1-7 Hotkeys auswählen !)
SHIFT — Gehen / Kopfsprung
CAPS LOCK — Sprinten (wenn CAPS an ist, wird Lara immer sprinten)
V — Kriechen
Z — Status Reseten (wenn Lara wo festbuggt)
N — Noclip Modus
PRINT SCREEN — Screenshot machen
F5 — Schnell-Speichern
F6 — Schnell-Laden
Kommandos
Momentan hat OpenTomb noch kein Menü, man muss alle Befehle in die Konsole eingeben. Um die Konsole zu öffnen drücke ~ oder ^
Spoiler
Wenn man die ~ Taste nicht findet kann man auch eine andere festlegen.
Einfach die config.lua Datei öffnen. Dort müsste stehen:
![]() |
Source code |
1 |
bind(act.console, KEY_BACKQUOTE) |
Man muss jetzt KEY_BACKQUOTE durch eine beliebige Taste ersetzen.
Eine "Tastenliste" findet man in der Datei: scripts\config\control_constants.lua
Kommandoliste:
- help — Zeigt die Befehle an
- setgamef(Spiel, Level) — Startet ein Level. Für TR2 muss man "setgame(2, 1)" eingeben. Für Tomb Raider 3: Lost Artifact "setgame (3.5, 1)" ETC...
- loadMap "Levelname" — lädt (zwingend) eine Leveldatei
- save "Name" — Speichert einen Spielstand mit dem angegebenen Namen im "save" Ordner ab.
- load "Name" — Lädt einen Spielstand aus dem "save" Ordner.
- mlook(0) — Kamera folgt Lara
- mlook(1) — Man kann sich mit der Maus umschauen (Standart)
- cam_distance [value] — Kamera-Distanz, Standart: 1024
- playsound (ID) — Spielt einen Sound ab
- playstream (ID) — Spielt ein Lied ab
- exit — Beendet das Spiel (Man kann das Spiel auch mit ALT+F4 beenden)
TeslaRus: main developer.
Cochrane: renderer rewrites and optimizing, Mac OS X support.
Gh0stBlade: renderer add-ons, shader port, gameflow implementation, state control fix-ups, camera programming.
Lwmte: state and scripting fix-ups, controls, GUI and audio modules, trigger and entity system rewrites, hair and ragdoll code.
Nickotte: interface programming, ring inventory implementation, camera fix-ups.
pmatulka: Linux port and testing.
Richard_trle: Github migration, Github repo maintenance, website design.
Saracen: room and static mesh lighting.
stltomb: general bugfixing and maintenance.
stohrendorf: CXX-fication, refactoring and general code optimizing.
T4Larson: general stability patches and bugfixing.
vobject: nightly builds, maintaining general compiler compatibility.
vvsgh: extensive testing, issue management on Github.
Additional contributions from: Ado Croft (extensive testing), E. Popov (TRN caustics shader port), godmodder (general help), jack9267 (vt loader optimization), meta2tr (testing and bugtracking), shabtronic (renderer fix-ups), Tonttu (console patch) and xythobuz (additional Mac compatibility patches).
Translations by: Joey79100 (French), Nickotte (Italian), Lwmte (Russian), SuiKaze Raider (Spanish)
This post has been edited 10 times, last edit by "Niklas" (Feb 8th 2018, 1:53am)
Ich habe grad das "Russia Episode 2" Custom-Level geladen. Hat ganz gut funktioniert bis auf die noch nicht implementierten Gegner. Bessonders amüsant war das draufklettern auf die ganzen Objekte. Ich habe übrigens die Tastenbelegung in der config.lua so eingestellt, dass es wieder wie im alten Tomb Raider ist.
Einfach die config.txt downloaden, dann in config.lua umbenennen (konnte keine .lua auf die LB hochladen) und mit der alten config im Ordner ersetzen. W/A/S/D ist jetzt Kamera, die anderen Tasten wie gewohnt. Mit dem Kommando "mlook(0)" ist die Kamera immer fest hinter Lara fixiert.
Zusätzlich kann man in der autoexe.lua "mlook(0);" einstellen, dann ist die Kamera IMMER fest hinter Lara ohne dass man das immer eingeben muss.
Einfach die config.txt downloaden, dann in config.lua umbenennen (konnte keine .lua auf die LB hochladen) und mit der alten config im Ordner ersetzen. W/A/S/D ist jetzt Kamera, die anderen Tasten wie gewohnt. Mit dem Kommando "mlook(0)" ist die Kamera immer fest hinter Lara fixiert.
Zusätzlich kann man in der autoexe.lua "mlook(0);" einstellen, dann ist die Kamera IMMER fest hinter Lara ohne dass man das immer eingeben muss.
This post has been edited 4 times, last edit by "Niklas" (Feb 8th 2018, 1:55am)

Similar threads
-
Leveleditor/TREP/NGLE-Forum »
-
OpenLara: Neue Tomb Raider Engine von XProger (Feb 7th 2018, 6:08pm)
-
Small Talk »
-
Was habt ihr von TR? (Oct 20th 2007, 5:25pm)
-
TR - Original 1-5 und AOD »
-
Euer erstes Tomb Raider Spiel (Feb 21st 2006, 4:44pm)