I found a warning in log. Looked into a script where is a sanity check, but how the hell can this happen?
object oPCCopy = GetLocalObject(oPC,"PC_COPY");
if(GetIsObjectValid(oPCCopy))
{
DestroyObject(oPCCopy);
}
oPCCopy = CopyObject(oPC,GetLocation(GetObjectByTag("WP_COPYPLAYER")),OBJECT_INVALID,"pccopy");
if(!GetIsObjectValid(oPCCopy))
{
WriteTimestampedLogEntry("WARNING! oPCCopy not valid in sh_volnasek72!!!");
return;
}
SetLocalObject(oPC,"PC_COPY",oPCCopy);
Yes, waypoint WP_COPYPLAYER does exists. This code is being executed relatively often and is executed from Activate Item module event ( object oPC = GetItemActivator(); ) , I haven’t heard from players that it wasn’t working and I tested it myself - never had an issue (probably the player who triggered this sanity check just used it again and then it worked so he didn’t report).
I am using NWN-EE build 36-12.
EDIT: I am not using tag-based scripting, just a simple ExecuteScript(GetTag(oItem)) in activate item event. No such script in acquire/unacquire/equip/unequip exists.