Opened 7 years ago

Closed 7 years ago

#10253 closed defect (fixed)

SCI: RAMA: Autosave - attempt to write non-number to non-save file

Reported by: bgK Owned by: csnover
Priority: normal Component: Engine: SCI
Version: Keywords: sci32
Cc: Game: RAMA

Description

ScummVM: dc7e37fdb6800124cccf231282d4b1475249a654
Game: Rama French (1.0)

When entering an area with a triangle shaped group of creatures, the game sometimes crashes with the following error:
kFileIO(WriteWord): Attempt to write non-number 0039:206c to non-save file!

I believe this happens when getting in the way of those creatures causing them to try to 'dispose of' the player.

To reproduce, load the attached save and go to an area with a group of those creatures. It may take a few tries, since encounters seem to be random.

Attachments (3)

rama-fr.007 (22.1 KB ) - added by bgK 7 years ago.
Save (French version)
Screenshot from 2017-09-30 08-30-32.png (148.6 KB ) - added by bgK 7 years ago.
Error
Screenshot from 2017-09-30 08-31-39.png (159.1 KB ) - added by bgK 7 years ago.
Backtrace

Download all attachments as: .zip

Change History (6)

by bgK, 7 years ago

Attachment: rama-fr.007 added

Save (French version)

by bgK, 7 years ago

Backtrace

comment:1 by dafioram, 7 years ago

I am able to reproduce this in the windows english version.

kFileIO(WriteWord): Attempt to write non-number 000f:0002 to non-save file!}

I agree that this happens when the creatures are approaching your position and their herd shape from the map looks like a triangle.

comment:2 by dafioram, 7 years ago

The backtrace for the dos version uses slightly different values from the french one so I am adding that.

 0: script 0 - Rama::play()
     obj@0001:035c pc=0001:2c31 sp=ST:0001 fp=ST:0000 argp:ST:0001
 1: script 64994 - Rama::doit()
     by 0 obj@0001:035c pc=0003:2ef3 sp=ST:0006 fp=ST:0003 argp:ST:0002
 2: script 64996 - User::doit()
     by 1 obj@0012:0228 pc=0012:09c4 sp=ST:0008 fp=ST:0008 argp:ST:0007
 3: script 64996 - User::handleEvent(0012:0018)
     by 2 obj@0012:0228 pc=0012:0c92 sp=ST:0013 fp=ST:000b argp:ST:0009
 4: script 2000 - navPlane::handleEvent(0012:0018)
     by 3 obj@004a:1e2c pc=004a:cecc sp=ST:0018 fp=ST:0016 argp:ST:0014
 5: script 2000 - encounterFirstPerson::doVerb(0000:0002, 0000:0001)
     by 4 obj@000f:037a pc=004a:a9de sp=ST:001e fp=ST:001c argp:ST:0019
 6: script 0 - Rama::autoSave(0000:0001)
     by 5 obj@0001:035c pc=0001:2b1c sp=ST:0021 fp=ST:0021 argp:ST:001f
 7: script 85 - SaveManager::autoSave()
     by 6 obj@001a:0018 pc=001a:0be5 sp=ST:0024 fp=ST:0023 argp:ST:0022
 8: script 0 - Rama::serialize(0000:0000)
     by 7 obj@0001:035c pc=0001:308f sp=ST:002a fp=ST:0027 argp:ST:0025
 9: script 85 - SaveManager::writeWord(000f:0002)

comment:3 by csnover, 7 years ago

Owner: set to csnover
Resolution: fixed
Status: newclosed

Thanks for your report! A patch for this issue has been added in commit 128031c6a6d35a8092dc83e707b9a59feda4efdf and will be available in daily builds 1.10.0git-5096 and later.

Note: See TracTickets for help on using tickets.