www.tombraiderforums.com

Go Back   www.tombraiderforums.com > Tomb Raider Modding > Tomb Raider Level Editor > Software Development

Reply
 
Thread Tools
Old 17-07-15, 21:29   #1
Lwmte
Explorer
 
Join Date: Aug 2010
Posts: 933
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. Room light structure from TR4 needs additional description.
2. Same for TR5 room light structure.
3. Exact description of what is exactly "room layer" in TR5.
4. Clarify the meaning of 'Bit 4' in <<tr2_room_vertex>> structure.
5. Clarify, what's the purpose of `Normal` field in <<tr5_room_vertex>> structure, and if really `Attributes` field was removed.
6. Whole `tr5_room` structure needs detailed analysis with all its extra 'Unknown' fields.
7. Clarify fog bulb values which affect its radius.
8. Solve the purpose of “flag/zone” field in tr_camera structure.

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

Last edited by Lwmte; 19-11-18 at 21:35.
Lwmte is offline   Reply With Quote
Old 17-07-15, 21:50   #2
Suikaze Raider
Historian
 
Suikaze Raider's Avatar
 
Join Date: May 2007
Location: Almeria (Spain) Type: Crazy TR Fan.
Posts: 472
Thumbs up

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

Regards
__________________
Working in TR1 & TR2 Translations.
Suikaze Raider is offline   Reply With Quote
Old 17-07-15, 22:46   #3
b122251
Explorer
 
b122251's Avatar
 
Join Date: Aug 2013
Posts: 542
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
Explorer
 
Join Date: Aug 2010
Posts: 933
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
Explorer
 
godmodder's Avatar
 
Join Date: Feb 2006
Location: Belgium
Posts: 535
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.
__________________
C++ is the only place where friends get to see your private members.
godmodder is offline   Reply With Quote
Old 18-07-15, 01:27   #6
sapper
Archaeologist
 
sapper's Avatar
 
Join Date: Sep 2007
Posts: 1,592
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
__________________
Check trsearch\Tools for some of my programs
sapper is offline   Reply With Quote
Old 18-07-15, 02:59   #7
Lwmte
Explorer
 
Join Date: Aug 2010
Posts: 933
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
Archaeologist
 
sapper's Avatar
 
Join Date: Sep 2007
Posts: 1,592
Default

Turbo's old forum still lives.

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

Maybe discussion of TR5 layers was at eidos forums?
__________________
Check trsearch\Tools for some of my programs
sapper is offline   Reply With Quote
Old 18-07-15, 13:33   #9
igor32
Explorer
 
igor32's Avatar
 
Join Date: Feb 2008
Posts: 814
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
Explorer
 
Join Date: Aug 2010
Posts: 933
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

Bookmarks

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 09:23.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.