Tomb Raider Forums  

Go Back   Tomb Raider Forums > Tomb Raider Level Editor and Modding > Tomb Raider Level Editor > Software Development

Reply
 
Thread Tools
Old 17-07-15, 21:29   #1
Lwmte
Member
 
Lwmte's Avatar
 
Joined: Aug 2010
Posts: 1,809
Cool 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!



It will include all the information from old TRosettaStone from 1999, updated version by Popov, TR5 file format notes by Roy, TR file formats table and cutseq.pak file format 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! ). So if someone wants to contribute or add something to the docs, feel free to write information here!

Current unknowns

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.

BE AWARE: currently there are two versions of TRosettaStone3 which are updated by different people - ASCIIDOC single-page version (maintained by Lwmte and XProger) and wiki version (maintained by stohrendorf and zdimension). ASCIIDOC single-page version is more detailed and contains several critical changes related to TR4-5 file formats.

Last edited by Lwmte; 22-11-19 at 22:47.
Lwmte is offline   Reply With Quote
Old 17-07-15, 21:50   #2
Suikaze Raider
Member
 
Suikaze Raider's Avatar
 
Joined: May 2007
Posts: 473
Thumbs up

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

Regards
Suikaze Raider is offline   Reply With Quote
Old 17-07-15, 22:46   #3
b122251
Member
 
b122251's Avatar
 
Joined: Aug 2013
Posts: 686
Default

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.
b122251 is offline   Reply With Quote
Old 17-07-15, 22:57   #4
Lwmte
Member
 
Lwmte's Avatar
 
Joined: Aug 2010
Posts: 1,809
Default

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!
Lwmte is offline   Reply With Quote
Old 18-07-15, 00:05   #5
godmodder
Member
 
godmodder's Avatar
 
Joined: Feb 2006
Posts: 537
Default

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.
godmodder is offline   Reply With Quote
Old 18-07-15, 01:27   #6
sapper
Member
 
sapper's Avatar
 
Joined: Sep 2007
Posts: 1,684
Default

I was hoping you'd get around to this.

Don't forget tr2io.c as used inTRueView.

http://www.geocities.ws/cyber_delphi...les/tr2io.html
sapper is offline   Reply With Quote
Old 18-07-15, 02:59   #7
Lwmte
Member
 
Lwmte's Avatar
 
Joined: Aug 2010
Posts: 1,809
Default

Oh, I never saw that document before! 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?

P.S.: 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!

Last edited by Lwmte; 18-07-15 at 03:02.
Lwmte is offline   Reply With Quote
Old 18-07-15, 11:28   #8
sapper
Member
 
sapper's Avatar
 
Joined: Sep 2007
Posts: 1,684
Default

Turbo's old forum still lives.

http://treditingzone.yuku.com/directory#.Vao4A_mqqko

Maybe discussion of TR5 layers was at eidos forums?
sapper is offline   Reply With Quote
Old 18-07-15, 13:33   #9
igor32
Member
 
igor32's Avatar
 
Joined: Feb 2008
Posts: 863
Default

Will those documents help building a new editor faster?

I'm kinda anxious after reading op
igor32 is offline   Reply With Quote
Old 18-07-15, 17:03   #10
Lwmte
Member
 
Lwmte's Avatar
 
Joined: Aug 2010
Posts: 1,809
Default

Quote:
Originally Posted by sapper View Post
Turbo's old forum still lives.
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 the thread mentioning TR5 layers. 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!

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.
Lwmte is offline   Reply With Quote
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off



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


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.