Bug #37261

nw_g0_conversat not fired on door anymore (difference between v1.69.8109 and v74.8172)

Added by prwo prwo almost 2 years ago. Updated almost 2 years ago.

Status:SubmittedStart date:05/20/2018
Classification:Public ItemDue date:
Assignee:-% Done:

0%

Category:-
Target version:-
Found In Version:Public Bug Reports - Next Update Category:Scripting

Description

I notices a deviation in the default behaviour of door/placable conversation scripts between v1.69.8109 and v74.8172 (and probably versions before):

Given the setup:
  • There is a door which has a conversation assigned to it.
  • The door is locked.
  • In the onFailToOpen Script of that door the PC is assigned to start a conversation with that door:

void main() {
object oPC = GetFirstPC();
object oDoor = OBJECT_SELF;

AssignCommand(oPC, ClearAllActions());
AssignCommand(oPC, ActionStartConversation(oDoor));
}
The expected behaviour would be:
  • When the PC clicks the locked door, the OnFailedToOpen script would fire.
  • The OFO script makes the PC start a conversation with the door.
  • Since the door has no own onConversation event, the default nw_g0_conversat will fire, which in turn calls BeginConversation()
  • The conversation assigned to the door will start.

This worked fine in v1.69.8109, but does not work anymore in v74.8172 (and probably versions before).
Apparently nw_g0_conversat is no longer fired for doors (and I assume placeables too), so the dialog will never start.

If you change the direction of the conversation, so that the Door starts the conversation with the PC, the dialog launches as expected.

Also posted this on the Beamdog Forum:
https://forums.beamdog.com/discussion/70817/bug-nw-g0-conversat-not-fired-on-door-anymore-difference-between-v1-69-8109-and-v74-8172

History

#1 Updated by Bernhard Stoeckner almost 2 years ago

  • Status changed from New to Submitted

Thanks. Internal: #37418

#2 Updated by prwo prwo almost 2 years ago

Upon request by user niv in the forum https://forums.beamdog.com/discussion/comment/982693/#Comment_982693 I did a retest with v75.8175.

https://forums.beamdog.com/discussion/comment/983151/#Comment_983151 :

I've upgraded "NWN:EE - Developer" from v74.8172 to v75.8175 with the Beamdog Client and a retest with v75.8175 was successful.

It is now possible for a PC to start a conversion with a door again.

void main()
{
    object oPC = GetFirstPC();
    object oDoor = OBJECT_SELF;

    AssignCommand(oPC, ClearAllActions());
    AssignCommand(oPC, ActionStartConversation(oDoor)); // This did not work in v74.8172, but works again in v75.8175
    //AssignCommand(oDoor, ActionStartConversation(oPC)); // This has always worked
}

Also available in: Atom PDF