The Black Wyrm Lair Forums
The Black Wyrm's Lair Terms of Use Help Search Members Calendar

Welcome Guest ( Log In | Register )

 
Reply to this topicStart new topic
> Adding a lock and key to an existing Door, Using WeiDu
Sticz
post Aug 21 2006, 08:14 PM
Post #1





Forum Member
Posts: 5
Joined: 19-December 05




I want to add a lock to an existing door that uses a key, and is not unlockable using pick-lock or knock.

What lines of code would I need for this, using WeiDu?

Sticz
Go to the top of the page
 
Quote Post
Rabain
post Aug 21 2006, 09:49 PM
Post #2


GOD


Retired team member
Posts: 1728
Joined: 14-July 04
From: Ireland




If the door already uses a key then most likely it is already not unlockable by pick-lock and knock. If you have the key then you can open the door.

Is what you are trying to say that you want to make an existing door that can be opened by pick-lock and knock into a door that can't be opened unless you have a specific key?

I can't think of any instances in the game where a door has a key but also can be opened by pick-lock and knock. Doors locked with keys are usually locked for a reason.

Making a door require a key that didn't previously require a key would require you to find the offset of option "key" and write an entry to that offset. The Offset will be different depending on which door in which area you are looking to make the change for, NI will show you the offset.

As for the specific code required someone with more knowledge of write long/short hopefully will come by and oblige or set me right if I am wrong about any of the above.
Go to the top of the page
 
Quote Post
Avenger_teambg
post Aug 22 2006, 09:55 AM
Post #3





Forum Member
Posts: 78
Joined: 13-July 05




Modify the pick lock chance from 100 to something lower.
A picklock chance of 100 means it is unlockable, it is a special value.
Even a pick lock chance of 101 is unlockable (with extremely high skills).

It makes sense if not all keyed doors are story-tools. Or at least, not such obvious 'force the walkthrough path' style cheesy stuff.


This post has been edited by Avenger_teambg: Aug 22 2006, 09:57 AM


--------------------
See GemRB !
Go to the top of the page
 
Quote Post
Sticz
post Aug 23 2006, 12:42 PM
Post #4





Forum Member
Posts: 5
Joined: 19-December 05




I have been fidgeting with a code to make a specific door locked, unpickable and using a key. The code below works for making it use a key. I now need an example of locking the door (which would be the same as this but only minor changes, I dont know what numbers to use inplace of BOR 0b00000100) specifying a key, and setting the lock-picking dificulty to 100.

// makes doors actually require keys that they are listed as requiring
COPY_EXISTING ~AR0329.ARE~ ~override~
READ_LONG 0xa4 "door_num"
READ_LONG 0xa8 "door_off"
WHILE ("%door_num%" > 0) BEGIN
SET "door_num" = ("%door_num%" - 1)
READ_ASCII ("%door_off%" + ("%door_num%" * 0xc8)) "doorname"
READ_BYTE ("%door_off%" + 0x29 + ("%door_num%" * 0xc8)) "usekey"
PATCH_IF ((("%doorname%" STRING_COMPARE_CASE "DOOR07" = 0) OR ("%doorname%" STRING_COMPARE_CASE "DOOR08" = 0))
AND ("%usekey%" BOR 0b11111011 = 0b11111011)) BEGIN
WRITE_BYTE ("%door_off%" + 0x29 + ("%door_num%" * 0xc8)) ("%usekey%" BOR 0b00000100) // sets uses key bit
END
END
BUT_ONLY_IF_IT_CHANGES

I have seen examples of what I am needing to do, they are too specific though, and will not allow the mod to work with other mods that may modify the area. Any examples? This set of code is from the G3 fixpack.


Sticz
Go to the top of the page
 
Quote Post

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:



- Lo-Fi Version Time is now: 19th May 2024 - 09:18 AM