Opened 18 years ago

Closed 18 years ago

Last modified 3 months ago

#2715 closed defect (fixed)

INDY3: Crash in castle Brunwald (german version).

Reported by: SF/redclaw2k Owned by: fingolfin
Priority: normal Component: Engine: SCUMM
Version: Keywords: script
Cc: Game: Indiana Jones 3

Description

convertMessagetoString() throws error: string escape sequence 32 unknown.

Occurs when you enter the second floor of Castle Brunwald and you talk with the soldier (in the right way you can geht pass him).

Ticket imported from: #1514457. Ticket imported from: bugs/2715.

Attachments (1)

indy3.s03 (8.5 KB ) - added by SF/redclaw2k 18 years ago.
Castle Brunwald 2nd floor save

Download all attachments as: .zip

Change History (10)

comment:1 by SF/redclaw2k, 18 years ago

I attached the save game on the position in Castel Brunwald. If you follow the path you will meet the Soldier I mean. Choose answers 2 -> 2 -> 1 then the error will occur.

"Ich führe gerade einen Sicherheitstest durch" is the last answer you can give to the soldier.

by SF/redclaw2k, 18 years ago

Attachment: indy3.s03 added

Castle Brunwald 2nd floor save

comment:2 by fingolfin, 18 years ago

Please state the version of ScummVM you are using and your OS. Thank you.

comment:3 by fingolfin, 18 years ago

Summary: (German PC Version) Game Crahs on dialog in castle BrunwaldINDY3: Crash in castle Brunwald (german version).

comment:4 by SF/redclaw2k, 18 years ago

0.9.0 the newest avaible on the website :)

comment:5 by SF/redclaw2k, 18 years ago

oh I didn't see the OS thing :) I'm using WinXP with service pack 2. NVIDIA Drivers

comment:6 by fingolfin, 18 years ago

Owner: set to fingolfin
Resolution: fixed
Status: newclosed

comment:7 by fingolfin, 18 years ago

This bug is caused by a script error in the original game (they encoded the 'sz' letter incorrectly once more). Fixed in Subversion, fix should be contained in tomorrow's daily build.

comment:8 by dwatteau, 3 months ago

In 853c0a98:

SCUMM: Improve Trac#1675 and Trac#2715 bugfixes for German Indy3

  • Fix an off-by-one in resStrLen() return value, and apply its workaround for Trac#2715 too.
  • Merge the two convertMessageToString() workarounds into a single one, and fix another off-by-one in the Trac#1675 case.
  • Restrict both workarounds to the German release of Indy3 (DOS release checked against my own copy, Amiga release tested by gabberhead).
  • Restrict both workarounds to the two rooms using the wrong byte for the German Eszett character -- but don't limit it to a particular script number, because the faulty lines can be triggered by some global scripts too (e.g. highlighting a dialogue option).

This should fix the following problems:

  • the use-case in Trac#2715 still triggering a fatal "string escape sequence 32 unknown" error in convertMessagetoString(), when one highlights the "Woher weiß ich, daß SIE kein Spion sind?" line.
  • the missing full stop at the end of the "…irgendwo hier im Schloß." line from the drunk guard.

comment:9 by AndywinXp, 3 months ago

In 03d1631b:

SCUMM: Avoid erroring out on invalid control codes

This matches the actual behavior from every SCUMM version.
This should properly fix the crashes in #1675 and #2715.

Note: See TracTickets for help on using tickets.