Tomb Raider Forums  

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

Reply
 
Thread Tools
Old 10-11-14, 19:02   #991
Ado Croft
Member
 
Joined: Apr 2013
Posts: 343
Default

many thanks Where is a sector > ceiling in TR5 level?
Ado Croft is offline   Reply With Quote
Old 10-11-14, 20:20   #992
Gh0stBlade
Member
 
Gh0stBlade's Avatar
 
Joined: Dec 2010
Posts: 2,773
Default

Excellent! Finally block pushing! A feature I've long been waiting for.

I decided to update all Tomb Raider 1 scripts if anyone's interested. Will allow pulling of all blocks from every level. Click

@TeslaRus
Just a heads up, I keep getting some crashes on the latest commit.

Anyone else experiencing crashes on level load? Could be just me.
Gh0stBlade is offline   Reply With Quote
Old 10-11-14, 21:17   #993
TeslaRus
Member
 
TeslaRus's Avatar
 
Joined: Jan 2013
Posts: 195
Default default

Quote:
Where is a sector > ceiling in TR5 level?
The first submarine level, room 4
Quote:
Anyone else experiencing crashes on level load? Could be just me.
Engine rarely crashes while loading on my PC... but sometimes I need to make full rebuild (GCC version changing or structures changing + wrong dependencies calculation), without it engine become crashes every launch.
TeslaRus is offline   Reply With Quote
Old 10-11-14, 21:24   #994
Gh0stBlade
Member
 
Gh0stBlade's Avatar
 
Joined: Dec 2010
Posts: 2,773
Default

Quote:
Originally Posted by TeslaRus View Post
The first submarine level, room 4
Engine rarely crashes while loading on my PC... but sometimes I need to make full rebuild (GCC version changing or structures changing + wrong dependencies calculation), without it engine become crashes every launch.
Aye, the crashing seems to have eased off for now!

Anyway an interesting case of pushing blocks is when blocks are stacked ontop of each other. It looks like it doesn't work unfortunately. A good example of this is DECK.TR2 (SetLevel(10)).



I have pushed all TR2 updated scripts if anyone wants to play around with blocks for TR2.

click
Gh0stBlade is offline   Reply With Quote
Old 10-11-14, 22:10   #995
Lwmte
Member
 
Lwmte's Avatar
 
Joined: Aug 2010
Posts: 1,809
Default

Quote:
Originally Posted by Gh0stBlade View Post
Anyway an interesting case of pushing blocks is when blocks are stacked ontop of each other. It looks like it doesn't work unfortunately. A good example of this is DECK.TR2 (SetLevel(10)).
Oh... This was actually expected, unfortunately... The reason is, original engines modified floordata for sector with pushable in it (and pushables themselves ignored floordata collison). In OpenTomb, there is no need in room heightmap modification, since any mesh can have "hard" collision. On the contrary, current push/pull method checks if Lara's position is valid ("flat") to next sector's height, and if not, refuses to make an action. There are two workarounds for this - check next sector flatness on the pushable's side, but this way we'll be able to push/pull from non-flat sectors (not sure if it should be considered a bug or feature). Another way is to check if there's a pushable right under Lara and subtract its height when comparing (but this method could be very tricky, as there could be many stacked pushables under Lara).

P.S.: I think that defining pushable for EACH entity in EACH level is too redundant - best way is to check specific entity IDs and assign "pushability" to them; also, note that TeslaRus made pushability a property of entity, rather than its function (as in original) - it means, you can assign pushability to entities with another function. Not sure if this is needed in original games, but it could be a nice trick for custom levels - like, you make animating pushable, then it triggers and does something else.

Last edited by Lwmte; 10-11-14 at 22:14.
Lwmte is offline   Reply With Quote
Old 10-11-14, 22:34   #996
Gh0stBlade
Member
 
Gh0stBlade's Avatar
 
Joined: Dec 2010
Posts: 2,773
Default

Quote:
Originally Posted by Lwmte View Post
Oh... This was actually expected, unfortunately... The reason is, original engines modified floordata for sector with pushable in it (and pushables themselves ignored floordata collison). In OpenTomb, there is no need in room heightmap modification, since any mesh can have "hard" collision. On the contrary, current push/pull method checks if Lara's position is valid ("flat") to next sector's height, and if not, refuses to make an action. There are two workarounds for this - check next sector flatness on the pushable's side, but this way we'll be able to push/pull from non-flat sectors (not sure if it should be considered a bug or feature). Another way is to check if there's a pushable right under Lara and subtract its height when comparing (but this method could be very tricky, as there could be many stacked pushables under Lara).

P.S.: I think that defining pushable for EACH entity in EACH level is too redundant - best way is to check specific entity IDs and assign "pushability" to them; also, note that TeslaRus made pushability a property of entity, rather than its function (as in original) - it means, you can assign pushability to entities with another function. Not sure if this is needed in original games, but it could be a nice trick for custom levels - like, you make animating pushable, then it triggers and does something else.
Interesting, thanks for explaining!

There also seems to be collision bugs occuring when a TR5 movable object is pushed.

Other than that, this is more than a step closer to a more playable game

Regards.
Gh0stBlade is offline   Reply With Quote
Old 11-11-14, 11:44   #997
Lwmte
Member
 
Lwmte's Avatar
 
Joined: Aug 2010
Posts: 1,809
Default

By the way, have you checked that TeslaRus finally enabled alternate (flipped) room support in TR5 engine?

Since ages, I believed that flipped room feature was absent from TR5 (as all documentation told so, plus Dxtre3d has no support for it as well), but it seems that there ARE flipped rooms in TR5 - best example is the room 52 (one next to gigantic wheel door) in Trajan's Markets - alternate room (176) is triggered by a flyby when Lara activates two pulleys on top.

However, I'm not sure about another thing. I know that original/flipped rooms share the same entities (i.e. if you have enemies, pushables, traps in original room, they'll move to flipped one). But does the original and flipped rooms share somehting else? Maybe doors? Because it seems that door leading back to alternate room from the room with a door itself (161) points to ORIGINAL room, not alternate! While original room have a wall instead of door at that place!

So, we have this strange set-up:

Room 52 does not lead to room 161 (one with the wheel door).
Room 161 LEADS to room 52, not 176.
Lara obviously goes to room 176 from room 161, not 52.

So, perhaps, doors are also shared between original and flipped room?
Lwmte is offline   Reply With Quote
Old 11-11-14, 11:49   #998
Boobandie
Member
 
Joined: Jul 2012
Posts: 4,285
Default

Yeah doors are kept in place when you create a flipmap. You need to have the room basically completed as far as external boundries and doors go because once you generate the flipmap you cannot change them. The way they "wall off" doors is by simply clicking "Toggle Opacity" on the portal to make it solid then texturing over it.
Boobandie is offline   Reply With Quote
Old 11-11-14, 11:57   #999
Lwmte
Member
 
Lwmte's Avatar
 
Joined: Aug 2010
Posts: 1,809
Default

Thanks, that's what I thought! So basically, if I have a door in one room which leads to another un-flipped room, and then I flip that room, door in first room will lead to flipped room instead?
Lwmte is offline   Reply With Quote
Old 11-11-14, 16:40   #1000
Gh0stBlade
Member
 
Gh0stBlade's Avatar
 
Joined: Dec 2010
Posts: 2,773
Default

Quote:
Originally Posted by Lwmte View Post
By the way, have you checked that TeslaRus finally enabled alternate (flipped) room support in TR5 engine?

Since ages, I believed that flipped room feature was absent from TR5 (as all documentation told so, plus Dxtre3d has no support for it as well), but it seems that there ARE flipped rooms in TR5 - best example is the room 52 (one next to gigantic wheel door) in Trajan's Markets - alternate room (176) is triggered by a flyby when Lara activates two pulleys on top.

However, I'm not sure about another thing. I know that original/flipped rooms share the same entities (i.e. if you have enemies, pushables, traps in original room, they'll move to flipped one). But does the original and flipped rooms share somehting else? Maybe doors? Because it seems that door leading back to alternate room from the room with a door itself (161) points to ORIGINAL room, not alternate! While original room have a wall instead of door at that place!

So, we have this strange set-up:

Room 52 does not lead to room 161 (one with the wheel door).
Room 161 LEADS to room 52, not 176.
Lara obviously goes to room 176 from room 161, not 52.

So, perhaps, doors are also shared between original and flipped room?
Great addition! I was not aware until now!

Just had a quick look at this and you're right. There does appear to be a difference with how alternate rooms for the older games are compared to TR5 (possibly TR4 as well).

Just looking at Trajan's markets it appears that:

ROOM52 has no portal leading to ROOM161.
ROOM176(ROOM52's alt) has the portal leading to ROOM161.
ROOM161 points back to ROOM52.

So I'm guessing the only way to overcome this would be to copy the missing portal from the alternate room?

Regards.
Gh0stBlade 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:40.


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.