Site Tools


tutorial:er-make-hand-operated-door

Add New Hand-Operated Door (ER)

Authors: Evanlyn

Prerequisites

  • DS Map Studio, and basic usage knowledge
  • DarkScript 3, and basic usage knowledge
  • Yabber (w/ unpacked Elden Ring folder)
  • Patience.

Notes

Be sure to take notes of all the relevant names and IDs as you go. Make lots of backups.

Be careful not to use any duplicate flags or Entity IDs; regions with duplicate EntityIDs in particular have a chance to permanently corrupt loaded mapbnds, so exercise caution.

Be careful when making Flag IDs; if the fifth digit is 1-9, it will cause the flag to reset on grace/area reload (Eg: XXXX0XXX).

Refer to other Entity or Flag IDs to see how FromSoft formatted them; sometimes it might matter, or not.

If you're curious about most entities having MapID: -1, UnkE0C: 255, and UnkS0C: -1, don't ask me. I have no idea, but changing it can break things. So just keep them that way.

How To Make Hand-Operated Doors

1. Create a new door asset (Ex: AEG027_043), and give it a unique name and EntityID.

2. Create a new ObjAct, and set the following values:

  • EventID: 11
  • EntityID: 0
  • Unk14: 0
  • MapID: -1
  • UnkE0C: 255
  • UnkS0C: -1
  • Name: Unique Name
  • ObjActEntityID: Unique Eight-Digit Value
  • ObjActPartName: Door Name
  • ObjActID: ObjActParam To Fit Door Model
  • * StateType: 4
  • EventFlagID: Unique Eight-Digit Value, 8 as Fifth Digit

Note: ObjActID will differ depending on the door (Eg: single or double door, push or pull animation, locked or does-not-open-from-this-side). Look through and cross-reference with other instances of the door model to see what might work for it. One useful ID is ObjActParam 27143 (a simple push-open animation.)

If that's all you need, then you're done! If you need it to open from only one side, then continue onwards.

3. Create two new Other, Box Regions. Make them each suitably large (5x1x2 is common), and position them on either side of the door, clipping a short distance through the ground so that the character's feet will always be inside the region. Give them each a unique EntityID and the following values:

  • Unk2C for Open Side: 3
  • Unk2C for Locked Side: 4
  • UnkE08: 255
  • MapID: -1
  • UnkS0C: -1

4. Add the following line to Event(0, to initialize the first common event (90005511):

    InitializeCommonEvent(0, 90005511, EventFlag, DoorEntityID, ObjActEntityID, ObjActID, 0);

Note: EventFlag should be a unique, eight-digit value. Fifth digit should be 8

5. Add the following line to Event(0, to initialize the second common event (90005512):

    InitializeCommonEvent(0, 90005512, EventFlag, OpenRegionID, LockedRegionID);

Note: EventFlag should be the same flag used in the previous line.

6. Congrats.

tutorial/er-make-hand-operated-door.txt · Last modified: by admin