Opened 4 months ago

Last modified 3 months ago

#15303 new defect

SCI: LSL5: Timed message skipped during LSL5 coffee scene — at Version 2

Reported by: eriktorbjorn Owned by:
Priority: normal Component: Engine: SCI
Version: Keywords:
Cc: Game: Leisure Suit Larry 5

Description (last modified by eriktorbjorn)

This one was a fluke...

I made a savegame at the beginning of Leisure Suit Larry 5 (English), right after the end of the intro. When bringing coffee to Silas, the game was supposed to print the message

"Yes, I know" you offer proudly, "I'm the Chief Tape Rewinder and Sterilizer on this project!"

But that message was only shown for a split second, before skipping to the next message. I think what's going on here is some sort of integer overflow. This is how the message is displayed:

			(
				(Say larryTalker "\"Yes, I know,\" you offer proudly,
					\"I'm the Chief Tape Rewinder and Sterilizer
					on this project!\""
			  		#dispose:
					#caller:		self
				)
			)
			(
				(= ticks 30)
			)

I think that means the message is supposed to stay up for 30 "ticks". Though that seems awfully short, so maybe it's 30 additional ticks?

If you load the attached savegame, and let the messages time out on their own (don't click to speed it up!), the skipped message happens at a point when KGETTIME_TICKS in the kGetTime() function comes (dangerously?) close to 32,767. Could that somehow cause the timeout to trigger prematurely?

Change History (3)

by eriktorbjorn, 4 months ago

Attachment: lsl5.003 added

comment:1 by eriktorbjorn, 4 months ago

Description: modified (diff)

comment:2 by eriktorbjorn, 4 months ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.