Dungeon Weirdness

Post here if you need help getting started with Daggerfall Unity or just want to clarify a potential bug. Questions about playing or modding classic Daggerfall should be posted to Community.
Post Reply
User avatar
LypyL
Posts: 512
Joined: Sun Mar 22, 2015 3:48 am

Dungeon Weirdness

Post by LypyL »

In the course of looking into action flags and related stuff, I've started to notice some bugs / problems in Dungeon blocks in DFTFU, so I thought I would start recording them here as I find them.

S0000022.RDB - There are 4 action objects (DaggerfallMesh [ID=55032] ) I believe these should be considered doors, though they use a model description of "SPD" instead of DOR - I'm guessing that means "special door"?

W0000002.RDB (and others) - There's a wedge shaped action object that is supposed to slide under a hole, but it slides backwards. Every instance I've seen in DFTFU does this, so it might be possible to just add a special case for these somewhere.

W0000013.RDB (and others)- A large floating floating platform (DaggerfallMesh [ID=61608]) that connects a walkway when a lever is pulled (like in Daggerfall castle). Moves the wrong way.

N0000090.RDB (and others) - There is a gate laying horizontally (DaggerfallMesh [ID=60606]), activated by a wheel. In DFTFU the gate slides the wrong direction (this a cosmetic issue and doesn't cause problems game-play wise).

User avatar
Interkarma
Posts: 7236
Joined: Sun Mar 22, 2015 1:51 am

Re: Dungeon Weirdness

Post by Interkarma »

Interesting. All of these action records that play backwards work OK in Daggerfall Modelling. I've obviously inverted a sign or something when porting that code into Unity. Thanks, will put it in the queue.

Edit: After thinking about this, I bet the broken actions run on the Z axis. Being ported from a right-handed (XNA) to left-handed (Unity) coordinate system, I probably forgot to invert the Z vector on action translations. I still need to confirm this, but it's probably safe just to flip the Z axis in GetActionVector(). Will confirm this when I get home from work.

User avatar
Interkarma
Posts: 7236
Joined: Sun Mar 22, 2015 1:51 am

Re: Dungeon Weirdness

Post by Interkarma »

Some updates for you.
LypyL wrote: S0000022.RDB - There are 4 action objects (DaggerfallMesh [ID=55032] ) I believe these should be considered doors, though they use a model description of "SPD" instead of DOR - I'm guessing that means "special door"?
At the moment, I only promote DOR and DDR (door and double door) to be standard doors. Do you believe the SPD doors should be openable by themselves (like any other door), or are they just action objects that happen to look like doors? Possibly some more context from in-game is needed.
LypyL wrote: W0000002.RDB (and others) - There's a wedge shaped action object that is supposed to slide under a hole, but it slides backwards. Every instance I've seen in DFTFU does this, so it might be possible to just add a special case for these somewhere.

W0000013.RDB (and others)- A large floating floating platform (DaggerfallMesh [ID=61608]) that connects a walkway when a lever is pulled (like in Daggerfall castle). Moves the wrong way.

N0000090.RDB (and others) - There is a gate laying horizontally (DaggerfallMesh [ID=60606]), activated by a wheel. In DFTFU the gate slides the wrong direction (this a cosmetic issue and doesn't cause problems game-play wise).
I can confirm these three are all related to the handedness issue. I had just missed the sign inversion when porting code and didn't notice until you pointed it out. This has been (partially) fixed now in the 1.4 branch, but I need more testing. I'll move fixes into the 1.3 branch once I'm happy.

User avatar
Interkarma
Posts: 7236
Joined: Sun Mar 22, 2015 1:51 am

Re: Dungeon Weirdness

Post by Interkarma »

Another update. I've found a pair of interesting levers in N0000090.RDB (two side-by-side at around player pos 3, 20, 16) that don't conform to either to my previous or current handling of rotations. I'll get this fixed, but don't worry about the recent 1.4 check-in for now. It needs more work.

User avatar
LypyL
Posts: 512
Joined: Sun Mar 22, 2015 3:48 am

Re: Dungeon Weirdness

Post by LypyL »

At the moment, I only promote DOR and DDR (door and double door) to be standard doors. Do you believe the SPD doors should be openable by themselves (like any other door), or are they just action objects that happen to look like doors? Possibly some more context from in-game is needed.
They open & close like doors (I just went and tested them in DF to be sure). They are action objects as well (they have the open door flag on them, which is what made me notice them in the first place).

Another one that possibly could be a door is DaggerfallMesh [ID=55007], model description NEW. You can see it listed under action objects in Sx021, though I haven't tested this one in daggerfall yet (well, I probably have :lol: ), it certainly looks like a door :D

User avatar
Interkarma
Posts: 7236
Joined: Sun Mar 22, 2015 1:51 am

Re: Dungeon Weirdness

Post by Interkarma »

Thanks again. I'm definitely going to need some time to sink into all this at some point. :)

I think I have a good idea how to fix the funky rotations as well. Will let you know once I have a chance to sit down and really look at it properly. I kind of jumped in tonight with limited time and didn't fix it as well as I thought. But even failure can be a good result. :)

Update: OK, the latest post to work-in-progress branch has a couple of fixes. Translations and rotations now seem to work in all previously known problem configurations, and in the new ones you outline above. I'll check out your recommendations for doors first chance I get.

User avatar
LypyL
Posts: 512
Joined: Sun Mar 22, 2015 3:48 am

Re: Dungeon Weirdness

Post by LypyL »

Interkarma wrote:Update: OK, the latest post to work-in-progress branch has a couple of fixes. Translations and rotations now seem to work in all previously known problem configurations, and in the new ones you outline above. I'll check out your recommendations for doors first chance I get.
Awesome! It just popped into my head the sliding wall trap on the stairs in Direnni Tower (Sx181), DaggerfallMesh [ID=61025] is also reversed. Hopefully that's fixed already with the new changes :)

Post Reply