Tomb Raider Forums

Tomb Raider Forums (https://www.tombraiderforums.com/index.php)
-   Software Development (https://www.tombraiderforums.com/forumdisplay.php?f=55)
-   -   TRosettaStone 3.0 (https://www.tombraiderforums.com/showthread.php?t=211323)

Lwmte 17-07-15 21:29

TRosettaStone 3.0
 
I'm glad to announce something, which will be primarily interesting for software developers, TR hackers and just curious people who want to know more about TR file formats! :)

[CENTER][SIZE="4"][B][URL="https://opentomb.github.io/TRosettaStone3/trosettastone.html"]
[IMG]https://raw.githubusercontent.com/opentomb/OpenTomb/f839fa8c822252860effe6adbbe9340df916f2a4/doc/images/logo/trosej-big.png[/IMG]

It's rewrite of legendary TRosettaStone document![/URL][/B][/SIZE][/CENTER]


It will include all the information from [URL="http://www.tnlc.com/eep/tr/TRosettaStone.html"]old TRosettaStone[/URL] from 1999, [URL="http://www.evpopov.com/perso/dl/TRStone/TRLevelFileFormat.html"]updated version by Popov[/URL], [URL="http://icculus.org/vt/vt/doc/TR5Format.html"]TR5 file format notes[/URL] by Roy, TR file formats table and [URL="http://www.tombraiderforums.com/showthread.php?t=173793"]cutseq.pak file format[/URL] by sapper.

Also, we will of course integrate all the information which we learned during the times of reverse-engineering of TR4 engine and development of OpenTomb, like speed/accel data format, reverb info, blending modes, and so on. We will also integrate some information we learned from leaked TR5 SDK and debug mappings of TR1 beta.

It is especially important to make such kind of upgraded document, because sincerely, nobody cared about writing proper documentation for TR file formats since Popov in, maybe, 2002.

However, there are still many unknowns in engine formats. Particularly, it's room light structure in TR4 and TR5 and some other room parameters (also primarily from TR4-5, especially head-cracking "layer" structure of TR5 rooms! :hea: ). So if someone wants to contribute or add something to the docs, feel free to write information here! ;)

[SIZE="4"]Current unknowns[/SIZE]

1. Clarify the meaning of 'Bit 4' in <<tr2_room_vertex>> structure.
2. Clarify, what's the purpose of `Normal` field in <<tr5_room_vertex>> structure, and if really `Attributes` field was removed.
3. Whole `tr5_room` structure needs detailed analysis with all its extra 'Unknown' fields.
4. Clarify fog bulb values which affect its radius.
5. Clarify the CUTSEQ.bin packed coordinates structure format.

The list of unknowns will be periodically updated, as we struggle through original docs and integrate them into TRosettaStone 3.

[B]BE AWARE: currently there are two versions of TRosettaStone3 which are updated by different people - [URL="https://opentomb.github.io/TRosettaStone3/trosettastone.html"]ASCIIDOC single-page version[/URL] (maintained by Lwmte and XProger) and [URL="https://trwiki.earvillage.net/doku.php?id=trs"]wiki version[/URL] (maintained by stohrendorf and zdimension). ASCIIDOC single-page version is more detailed and contains several critical changes related to TR4-5 file formats.[/B]

Suikaze Raider 17-07-15 21:50

That's great :D I could help with the tombPC.dat and tombPSX.dat formats :) This new document will be very useful :tmb:

Regards :)

b122251 17-07-15 22:46

You got underwater current wrong.
The operand of the Underwater Current is not direction.
It refers to a point in the Cameras (sometimes called Sinks).
The format of these is: X (4 bytes), Y (4 bytes), Z (4 bytes), Current strength (2 bytes), Zone (2 bytes).

Also you forgot to mention that TR3 and up uses 15-bit RGB colours instead of linear lighting values in vertices.

Also there are NO separate bits for declaring water is freezing, or that it is snowing in TR3. Those come automatically if you flood a room, or declare a room to be outside in some levels.

I'll tell you if I find anything else.

Lwmte 17-07-15 22:57

I just edited it up to room light structures. Anything after it is the same as original TRosettaStone.

I will correct errors as I move through the original doc. There were even more ridiculous errors in originals, particularly related to FloorData.

And I'm just approaching Room Vertex struct, so thank you for the info! ;)

I'm trying to look into original, Popov version and VT loader in parallel, but it's insane! :D

godmodder 18-07-15 00:05

This is awesome. As a software developer I can only applaud this effort! This will make it easier for me to import existing levels into my new editor.

sapper 18-07-15 01:27

I was hoping you'd get around to this.

Don't forget tr2io.c as used inTRueView.

[URL="http://www.geocities.ws/cyber_delphi/articles/tr2io.html"]http://www.geocities.ws/cyber_delphi/articles/tr2io.html[/URL]

Lwmte 18-07-15 02:59

Oh, I never saw that document before! :cln: Interesting...

By the way, do you remember any doc or forum message describing TR5 layers? I remember reading it either on some ancient TR sites or Turbo Pascal's forum on ezboard (which is very well dead by now).

Someone wrote there that layers are actually a method of space partitioning to optimize rendering, or something like this... Do you remember it?

[B]P.S.:[/B] Finishing room section right now. I only need to define TR3-5 room types now (and guess what, TR5 room type being a complete bastard, literally).

Next I'll get to my favorite part - triggers! :cln:

sapper 18-07-15 11:28

Turbo's old forum still lives.

[URL="http://treditingzone.yuku.com/directory#.Vao4A_mqqko"]http://treditingzone.yuku.com/directory#.Vao4A_mqqko[/URL]

Maybe discussion of TR5 layers was at eidos forums?

igor32 18-07-15 13:33

Will those documents help building a new editor faster?

I'm kinda anxious after reading op

Lwmte 18-07-15 17:03

[QUOTE=sapper;7405168]Turbo's old forum still lives.[/QUOTE]

Thank you so much for this! I just couldn't find this forum, because it used to be on ezboard hosting, and now it's yuku.com

I have found [URL="http://treditingzone.yuku.com/topic/395/tr5-flipmaps#.VaqFf_lad3M"]the thread mentioning TR5 layers[/URL]. Also it mentions alternate room/group values for TR5, which I thought were never found, but seems they were there in Dxtre3d since 2006... Silly me! :D

Let me quote TPascal's post regarding TR5 layers:

[QUOTE]...what Roy called "layers" in trC; which is dividing the room in small blocks pieces; originally I was thinking Core's programmers did that just for anoying us; but later a learn that this is a technique called quadtrees (or maybe they used octrees) which help to Cull faster the geometry in the room that is not actually visible from the current camera position & aim; there is a lot data in the TRc file format used for that purpose and if it is not correct then the algorith return false and lot chunk geometry is not visible then.[/QUOTE]


All times are GMT. The time now is 04:49.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Tomb Raider Forums is not owned or operated by CDE Entertainment Ltd.
Lara Croft and Tomb Raider are trademarks of CDE Entertainment Ltd.