Question about Unlocking

If you have a rogue PC that approaches a door, and that door is locked, the rogue automatically, if you click on the door that is, begins trying to unlock the door. Is there a way to skip the window that shows “Unlocking…” and just let the PC know that you can’t pick this lock on this door right away? I have a feeling this is hardcoded in the game, or maybe there’s some advanced scripting to get rid of this…Does anybody know?

Further explanation: What I’m after is to get right to the part of the “Unlocking…” window, and go directly to where it says “You can’t unlock this door”, or if there is conversation that normally starts through the gp_talk_door script that you perhaps have in the FailedToUnlock slot on the door. I just feel it’s a bit unnecessary to watch the “Unlocking…” screen or window every time you need a key or some other thing to unlock a door that is unlockable as a rogue.

1 Like

You can fire script off the “OnClick” event that speaks a string to the player and does a DelayCommand / ClearAllActions to cancel their unlock.

Ok. I’ll try that.

Well, I saw in the toolset I had actually tried that already. Maybe something’s wrong with my script. If I put it OnClick the PC tries to unlock the door and then nothing happens. If I put it on FailToOpen it fires after the PC has tried to unlock the door. It’s as if the ClearAllActions command doesn’t work. The script looks like this:

void main()

object oPC = GetClickingObject();

if (!GetIsPC(oPC)) return;

AssignCommand(oPC, ClearAllActions());

ActionStartConversation(oPC, "door_conv");


i tried a few things and – long story short – think we’re SoL

OnClick seems to not fire on doors…

OnUsed only fires if the door is locked and you attempt to manually use the door from the options menu… it never fires if the door is unlocked…

OnOpen fires after the door has been opened. (You can Close the door immediately via script after but you’ll still reveal what’s behind the door for a brief moment)

I think your only solution here is a placeable door. That you can reliable fire an OnClick / OnUse event after… We have some fake door placeables on the vault if I recall correctly. Doors are so weird in NWN.

i even tried lock + key-required + (doesn’t exist)key-tag

it still went through the “unlocking…” phase despite PC-rogue not having a key

Thanks for the replies you guys!

Maybe I’ll try with a placeable door then…

1 Like

I didn’t find any fake door placeables on the vault, and when I try to convert the door into a placeable in the toolset…well, I can’t find a way to do that. I feel like I’ve looked everywhere for this.

Maybe I should just give this up. It’s not that big of a deal I guess.

Yes, I could use that I suppose, but I am hesitant to use this 'cause it is designed for v1.10 of NWN2. Also, I don’t know if I want all the doors to be placeables…but maybe I do…

The door OnClick event is triggered when the door is opened and the player tries to go through a transition. It’s similar to how OnClick works on transition triggers.

You can skip unlocking the door ingame, by doing a right click / open on the door.

If you want the door to be non-openable (and not locked) by players, you can also write a small OnOpen script that closes the door.

A door model becomes a “door” because a doortypes.2da row links it to a matching skeleton that has .gr2 animation files. The door model itself is just a placeable. If a model copy is renamed, the new model should no longer animate.