24-08-17, 13:58 | #111 |
Member
Joined: Apr 2005
Posts: 9,208
|
I might very well be trying to reverse-engineer the wheel (since everyone else seems to know how things work, while I'm starting from scratch), but I just wanted to say I'm currently investigating sapper's TR42PRJ tool code because I want to learn the TR file format so that maybe I can convert TR2/3 levels to PRJ one day
Currently I'm trying to wrap my head around FloorData, because I lack much knowledge and fluency in binary and hexadecimal systems, so it all appear cyphered to me. But because it's so fascinating I can't help trying to figure it all out! It's too addictive! |
29-08-17, 15:22 | #112 |
Member
Joined: Jan 2017
Posts: 18
|
TR
I found what is entity 144 in TR1. It's scion piece which has Pierre in Tomb of Tihocan level.
|
30-08-17, 11:16 | #113 |
Member
Joined: Apr 2005
Posts: 9,208
|
Never stop learning, I guess
|
09-05-18, 01:39 | #114 | |
Member
Joined: Sep 2007
Posts: 1,684
|
One thing that needs checking.
Quote:
Using Code:
texture and 0x7fff Code:
texture and 0x3fff |
|
14-02-19, 15:24 | #115 |
Member
Joined: Dec 2017
Posts: 534
|
On this page: https://trwiki.earvillage.net/doku.php?id=trs:sound, section Sound Map, the Looping behaviour flag is described as:
Code:
[...] Since TR3, one-shot wait mode is introduced (value 10), [...] Code:
[...] Since TR3, one-shot wait mode is introduced (value 01), [...]
|
14-02-19, 23:23 | #116 |
Member
Joined: Jul 2012
Posts: 4,285
|
What does one shot wait and one shot rewound mean in regards to how a sound is played? How does it differ from normal playback?
|
15-02-19, 17:57 | #117 |
Moderator
Joined: Dec 2011
Posts: 4,872
|
Wait (W): do not restart if it is already playing. (After that, the new start is not automatical when the old play stops.)
Rewound (R): abort the actual one and restart a new play. These are for single plays. In my actual WIP TRNG plugin I am just working successfully on a feature to change some sound sample features, including these, in-game. Last edited by AkyV; 15-02-19 at 17:58. |
15-05-20, 11:07 | #118 |
Member
Joined: Sep 2007
Posts: 1,684
|
I was studying TurboPascal's code for loading TR5 levels and and it seems the tr5_room struct is incomplete.
First need to define unknown struct of 36 bytes. Not sure what element type is though. Code:
struct tr5_unknown //36 bytes { uint8_t unknown[36]; }; Code:
tr5_room_light Lights[NumLights]; tr5_unknown What[Unknown6]; tr_room_sector SectorList[NumXSectors * NumZSectors]; @Lwmte the first post mentions 2 locations of TRS 3 but there are 3. http://xproger.info/projects/OpenLara/trs.htm https://opentomb.github.io/TRosettaS...ettastone.html and the wiki. Which one is best? Reply at discord. |
19-05-20, 13:05 | #119 |
Member
Joined: Feb 2016
Posts: 68
|
Thanks for the heads up, this extra block is for the fog bulbs, I just updated TRS3 about it. I'll give you more details on Discord.
|
28-05-20, 04:45 | #120 |
Member
Joined: Sep 2007
Posts: 1,684
|
tr5 room structure
Code:
uint32_t Separator; // 0xCDCDCDCD uint16_t Unknown4; uint16_t Unknown5; float RoomX; float RoomY; float RoomZ; uint32_t Separator[4]; // Always 0xCDCDCDCD uint32_t Separator; // 0 for normal rooms and 0xCDCDCDCD for null rooms uint32_t Separator; // Always 0xCDCDCDCD RoomY is always 0. Any other value stops the dynamic lighting. RoomX and RoomZ must be correct values. Wrong values stop dynamic lighting. As for fog bulb, 36 byte struct is: Code:
float x, y, z //position 12 bytes unknown 12 bytes possibly intensity, in out floats order unknown float r, g, b //colour 12 bytes Last edited by sapper; 28-05-20 at 06:29. |
Thread Tools | |
|
|