On Action Objects

Discuss Daggerfall Unity and Daggerfall Tools for Unity.
User avatar
LypyL
Posts: 512
Joined: Sun Mar 22, 2015 3:48 am

On Action Objects

Post by LypyL »

As InterKarma mentioned on the workshop blog, I've been looking into dungeon action objects. I thought I would put what I've found so far up here as it might be of interest to others.

http://www.uesp.net/wiki/Daggerfall:BLO ... ActionList

This is all still being researched, so everything subject to change ;) The following are all the Action flags in Daggerfall I've been able to find:

1 - Was already known. Translate.

2 - Fixed translation, Positive X.

3 - Fixed translation, Negative X.

4 - Fixed translation, Positive Y.

5 - Fixed translation, Negative Y.

6 - Fixed translation, Positive Z.

7 - Fixed translation, Negative Z.

For AF 2 - 7, the duration is 50, and distance traveled equals magnitude (or axis value for models) * 8 in Daggerfall units.

8 - Already known. Rotation.

9 - Casts spell / cause spell effect. Can be either on flat or model. Sometimes is 1 time activation, others can be activated multiple times. Most common spells are levitate / slowfall.

edit: Spell index is the same as the Daggerfall sound index, if that makes sense. If an object has a sound id of 4, then it will cast levitate (#4 from the spell Catalog in Spells.STD

11 - Causes a text box to pop up. Example is the guard flat at the entrance of sentinel palace.

12 - Show text and get player input. Guard in daggerfall castle, banner in Shedugant etc.

Text indexing for 11, 12 works the same as spells (see AF 9).

14 - Teleports player, uses next object as target. Can be either flat or model (red brick doors, braziers flats, skull flats etc.)

16 - Lock door. Don't know what lock value this uses.

17 - Unlocks door, doesn't open it.

18 - Opens door (will unlock if locked). On a couple of trapdoors, not sure how that works.

20 - Closes door. If door started locked, it seems to re-lock the door.

21 - Damage player health. Damage is controlled by what is labeled the axis flag in the action resource struct. Many of these objects seem to do nothing. Seems to be single-activation.

22 - Damage player health.

23 - Damage player health.

24 - Damage player health.

25 - Damage player health.

For 22 - 25, Damage = Player level * magnitude (or * axis for action models)

26 - Only on a random treasure marker flat in Nx07.

27 - On a skull-on-a-pole flat in privateer's hold style blocks. In the room w/ the rogue at the bottom of the stairs in PH for instance. Does nothing obvious.

28 - Drains magicka, uses axis field to determine amount.

29 - Always on people flats that can be spoken to in RDB blocks. Seems to be for triggering dialogue.

30 - Already known. Activate next object.

31 - Only on 2 objects, both related to the main quest.

32 - Unknown, only on 4 objects. Mostly on models, though it's on a quest marker as well.

50 - Only occurs once in Sx082.

99 - Appears to be what controls enemy hostility in certain special blocks (like palace entrances / scourg barrow etc). Not sure how it works.

100 - Unknown purpose. Only appears twice, on an editor marker and a hallway.

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

Re: On Action Objects

Post by LypyL »

Part of the model structure is an Int32 that has simply been referred to as Unknown1 up until now, acts a "trigger flag" for actions. It determines how an action can be triggered. These are the trigger flags:

0 - Indirect / can't be activated by player.

1 - Activated by Walking on (model only)

2 - Activate by player clicking on it (model & flat)

3 - Active by walking into (model only)

4- Not used, doesn't seem to do anything

5 - Activate by hitting with weapon (both flat & model).

6 - Only on a few action doors. Activate by clicking

7 - not used, doesn't seem to do anything.

8 - Can be activated by clicking on (models & flats), walking into (models only) or attacking (models & flats). There are some action objects that have this flag which don't seem to make sense, like palace rooms w/ AF 99 or the large palace doors.

9 - Activate by clicking on (both models & flats) and walking into (models only).

10 - Only seems to work on action doors, click on only?

The unknown1 flag actually serves double duty, and controls the starting lock value of doors. Any door with an unknown1 flag of 16 or greater will start locked. Anything 160 or greater will be magically sealed.

The following are all the known locked door values:

16, 18, 26, 32, 48, 50, 64, 66, 80, 82, 96, 98, 104, 106, 112, 114, 116, 128, 144, 160, 176, 208, 224, 240

I've only tested about half of them, but they follow a consistent pattern (higher value means hard lock, anything above about 160 being magically sealed etc). And all the unknown1 values 16 and above are on doors, so I think it's a safe assumption at this point these are all lock settings.

edit: Updated with new specific information.

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

Re: On Action Objects

Post by LypyL »

Flats - Some flats have actions on them. The only thing I've been able to figure out about flat object actions are that there is an Int32 that makes up the Next object in a chain, and a byte value which represents the action flag. In DFTFU these are in the RdbFlatData struct of DFBlock (the int32 is the 4 unknown byte values, and the reaction field is the action). There would seem to be a trigger flag for action flats somewhere, as not all can be activated directly, but I'm not sure how that works.

Interestingly, some marker flats can have action flags on them! For instance, if you hear a noise in Daggerfall when looting a treasure pile, it's likely because the treasure marker flat had an action tied to it. Most don't seem to do anything but make a noise. There might be special cases where they actually do something (like if you're doing a quest).

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

Re: On Action Objects

Post by Interkarma »

It's worth saying again here, this is good work you're doing. :)

User avatar
Nystul
Posts: 1501
Joined: Mon Mar 23, 2015 8:31 am

Re: On Action Objects

Post by Nystul »

yeah impressive! I gave up on the woods.bgl file. your efforts are admirable

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

Re: On Action Objects

Post by LypyL »

Thanks! :D It should be noted that I wouldn't have found any of this out without Daggerfall Tools for Unity! :lol: It's made the whole process infinitely easier.

A couple random thoughts:

There are action objects around dungeons that seem to have no purpose. An example is the floating platform in Nx04 - it has a translate action flag, with a collision trigger flag, but no magnitude, so it doesn't move when stepped on. It seems like they intended for the player to ride it back to the center platform/overhang. Another is the very strange...thing in Nx10. This again has a translate flag, but is activated by an random treasure marker with an activate flag (30) on the ledge in front of it that links to the object. It seems the purpose was when you looted the treasure, the triangle shaped model would push you off the ledge (you can hear the sound it makes when you open the treasure!) but it again has magnitude so it doesn't move. It would be interesting to see in older versions of daggerfall if there were any differences with this type of stuff.

Trigger flags seem to be used very haphazardly. In Nx038 for instance, there are a bunch of red brick teleporter doors. All but one of them have an unknown1 value of 3, and only activate on collision - one however has an unknown1 value of 8, and can be activated by either walking into it, or clicking it. It seems pretty random!

Some objects that can be collided with in Daggerfall require the player to be crouching. I almost completely missed the fact that the unknown1 flag of 8 allowed for collisions because of this. This seems to be a bug.

Many actions that are only 1 time use are bugged. If you exit the dungeon and come back in after activating it, or if you save before triggering the action and load the save it still won't work. You have to quit daggerfall completely in order for it to work again!

User avatar
Nystul
Posts: 1501
Joined: Mon Mar 23, 2015 8:31 am

Re: On Action Objects

Post by Nystul »

maybe this is kind of off-topic but are flooded areas in dungeons already well understood - I mean how is it encoded into the data. Is it indicated by markers as well or is there a different mechanism?

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

Re: On Action Objects

Post by Interkarma »

I'd say partially understood. I think I've done enough research on this to at least make a start on the feature at some point.


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

Re: On Action Objects

Post by Interkarma »

+1 my friend. Amazing work!

Post Reply