====== 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.