Author Topic: AGS 3.5.0 - Patch 1  (Read 5698 times)

Snarky

  • Global Moderator
  • Global Moderator
  • Mittens Lord
  • Private Insultant
    • Best Innovation Award Winner 2018, for his numerous additions to the AGS open source ecosystem including the new Awards Ceremony client and modules
    • Snarky worked on one or more games that won an AGS Award!
    •  
    • Snarky worked on one or more games that was nominated for an AGS Award!
Re: AGS 3.5.0 - Patch 1
« Reply #60 on: 25 Feb 2020, 06:03 »
I noticed that when using Game.IgnoreUserInputAfterTextTimeoutMs (with a setting like 1000 Ms), it works as intended and prevents the player from accidentally clicking away a new speech audio/text message if they clicked a few moments after the previous speech message disappeared.

But this also creates an unintended problem if using the player character to narrate background comments to click on things. For example, if you click the Mouth icon on a rock, the player will say the corresponding message. When said message disappears automatically - not by clicking it away (and there's no subsequent message following it), you cannot click the mouth icon on anything else until the 1000 Ms have elapsed. Can the engine be made to disregard IgnoreUserInputAfterTextTimeoutMs setting if there's no new speech message currently on-screen?

This happens with all icons. And it also affects right-clicking, meaning that when using the Sierra-style icon interface, you can't right-click to cycle through icons until the 1000 Ms have elapsed either.

Is this something you could workaround by setting IgnoreUserInputAfterTextTimeoutMs to 0 in repeatedly_execute() and then to its real value whenever you say a line? (Through a function that wraps all your Say() calls, and which you set as your "saying" function in the new 3.5 setting.)

AGD2

Re: AGS 3.5.0 - Patch 1
« Reply #61 on: 25 Feb 2020, 11:52 »
Is this something you could workaround by setting IgnoreUserInputAfterTextTimeoutMs to 0 in repeatedly_execute() and then to its real value whenever you say a line? (Through a function that wraps all your Say() calls, and which you set as your "saying" function in the new 3.5 setting.)

I just gave that a quick test, but it seems that when I set it back to 0 in the repeatedly_execute script, it still uses the 1000 ms delay from the last message that was on-screen. The setting of 0 only gets applied once the next new message appears (and gets immediately overridden by 1000 ms again).
« Last Edit: 25 Feb 2020, 11:56 by AGD2 »

Cassiebsg

  • Cavefish
  • Fleeing the Cylon tyrrany...
    • Cassiebsg worked on one or more games that won an AGS Award!
    •  
    • Cassiebsg worked on one or more games that was nominated for an AGS Award!
Re: AGS 3.5.0 - Patch 1
« Reply #62 on: 25 Feb 2020, 14:57 »
You could try and set the value lower? Just enough for the player to read the shortest sentence but not short enough to accidentally dismiss the text before reading it?
There are those who believe that life here began out there...

AGD2

Re: AGS 3.5.0 - Patch 1
« Reply #63 on: 26 Feb 2020, 08:39 »
You could try and set the value lower? Just enough for the player to read the shortest sentence but not short enough to accidentally dismiss the text before reading it?

Yeah, that's how I had it originally set up, but players were complaining that they were still accidentally skipping past messages.