gothic-1-community-patch icon indicating copy to clipboard operation
gothic-1-community-patch copied to clipboard

The "New Journal Entry" string is triggered every time from NPC "Fingers".

Open Quintus24 opened this issue 2 years ago • 2 comments

Hello, everyone!

I would like to report the following bug:

Describe the bug: This issue can be encountered in the Old Camp when talking with NPC "Fingers". The "New Journal Entry" string is triggered every time the PC asks NPC "Fingers" about NPC "Cavalorn".

Expected behavior: The "New Journal Entry" string is triggered only once when asking NPC "Fingers" about NPC "Cavalorn".

Steps to reproduce the issue:

  1. Travel to the Old Camp and reach the OCR_OUTSIDE_HUT_20 waypoint.
  2. Talk with NPC "Fingers" and select the "Where can I find Cavalorn?" option.
  3. Notice the "New Journal Entry" string and wait for NPC "Fingers" to finish his response.
  4. Select again the "Where can I find Cavalorn?" option and notice the "New Journal Entry" string.

Additional context N/A

Attaching screenshots for more clear information.

  1. Location @ OCR_OUTSIDE_HUT_20 waypoint. Location @ OCR_OUTSIDE_HUT_20 Waypoint

  2. Initiate Dialogue. Initiate Dialogue

  3. The "New Journal Entry" string is triggered. New Journal Entry String

  4. Journal Log. Journal

Thank You and Best Regards! Quintus24

Quintus24 avatar May 02 '22 16:05 Quintus24

This is related to #204. From the discussion there it seems we were aware of the fact, that the screen print may be visible if a respective entry already exists, but I don't remember if we intended to fix that behavior, i.e. make a general fix that intercepts the functionality of B_LogEntry to prevent the screen print if the entry already exists (Gothic already establishes that an existing entry won't be added another time).

szapp avatar May 03 '22 13:05 szapp

There is two options on how to approach this:

  1. Fix B_LogEntry to not show a screen print if the exact entry already exists. In that case adjust this issue's title and description and close #348. This would mean to hook B_LogEntry and return prematurely if the given entry already exitts. However, this is risky as it may jeopardize dialogs where a repeating screen print may be intended - or - for modifications that modify the function B_LogEntry to do other things as well.
  2. Alternatively, fix individual dialog functions to intercept the call to B_LogEntry if the entry already exits. This would require to find all instances of a permanent dialog that makes a call to B_LogEntry!

szapp avatar May 06 '22 06:05 szapp