Opened 14 years ago

Closed 13 years ago

Last modified 13 months ago

#7485 closed enhancement

SWORD1: Ignores the "--save-slot" command line argument.

Reported by: (none) Owned by: eriktorbjorn
Priority: normal Component: Engine: Sword1
Keywords: Cc:
Game: Broken Sword 1

Description

Broken Sword 1 currently ignores the "--save-slot" argument, when
launching from the command line.

I'm not familiar with the code, but it needs something like...

uint8 saveSlot = ConfMan.getInt("save_slot");
if (saveSlot != -1) {
_control->restoreGameFromFile(saveSlot);
}

The scumm and sword2 engines already handle the "--save-slot"
argument correctly.

I've only tested this with version 0.8.2, but I think the latest version is the
same.

Ticket imported from: #1460977. Ticket imported from: feature-requests/301.

Change History (10)

comment:1 by eriktorbjorn, 14 years ago

Owner: set to eriktorbjorn
Resolution: fixed
Status: newclosed

comment:2 by eriktorbjorn, 14 years ago

This should work in the development version now.

comment:3 by (none), 14 years ago

I've tested this with the development version. The "--save-slot" argument
works with Broken Sword 1 now, but with one issue...

The SWORD1 and SKY engines use one-based indexing for the save slots; but
the SCUMM and SWORD2 engines use zero-based indexing. Perhaps this
should be consistent for all engines?

I recommend zero-based indexing, so that the file extension is the same as
the slot number...

--save-slot=1 should load SAVEGAME.001 or tentacle.s01
--save-slot=42 should load SKY-VM.042 or sword2.042
etc.

Actually, the "--save-slot" argument doesn't currently work with the SCUMM
engine, but this is a recent bug; it definitely worked in version 0.8.2. Now I
get the message "WARNING: Info section could not be found!" instead.

P.S. I like the new interface for the loader (today is the first time I've seen it).

comment:4 by (none), 14 years ago

Status: closednew

comment:5 by eriktorbjorn, 14 years ago

I figured it would be less confusing to have the "save-slot"
parameter match the number in the Broken Sword 1
save/restore dialog, and that one starts on 1, even if the
file is numbered zero.

I can't reproduce the SCUMM bug you mentioned (maybe it only
happens for old enough savegames?) so perhaps you could file
a bug report about it, and attach the problematic savegame?

comment:6 by (none), 14 years ago

Good point, since the Broken Sword 1 dialog has slots 1 to 64, at present it
might be confusing to use zero-based indexing.

But the Broken Sword 2 dialog has slots 0 to 99, to match the filename
extensions. And the SCUMM engine is similar, as slot zero is the autosave.

I'd prefer all engines to use the same rule, but that's because I use a script to
open the most recently used savegame, by extracting the slot number from a
filename extension.

Perhaps a better solution would be to use a consistent naming convention for
all savegames and engines, so that they could be opened from the file
manager. For example, "sword1-042.svm". The "svm" (or whatever) filename
extension could be associated with the ScummVM application.

As for the SCUMM bug, I'd created new savegames, and deleted the old
"ScummVM Preferences" file. Could it be caused by not compiling with the
optional libraries? I wasn't sure how to do this on Mac OS X with a
DarwinPorts installation. I don't want to waste anyone's time by filing a report
for a non-existent bug.

comment:7 by eriktorbjorn, 14 years ago

The optional libraries shouldn't make any difference to the
savegames, as far as I know. The idea is to keep the
portable across different platforms. I do seem to remember
hearing someone mentioning a problem like the one you
describe some time ago, but I don't remember the details,
nor do I remember what - if any - the resolution was.

comment:8 by fingolfin, 13 years ago

Resolution: fixed
Status: newclosed

comment:9 by fingolfin, 13 years ago

Closing this item, as the requested feature has been implemented by
Torbjörn.

If you encounter difficulties using functionality that *should* work (like --
save-slots in SCUMM games), please file a separate bug report. You are not
wasting our time doing that (at least as long as you read the instructions on
the bug submission page and follow them) -- rather you are helping us to
improve ScummVM. If the problem really is on your side, well, then at least
we might be able to help you resolve your problem. No worries!

Likewise, for additional feature requests (like changing the ways our engines
name their savefiles, etc.), please file a separate feature request item.

comment:10 by digitall, 13 months ago

Component: Engine: Sword1
Game: Broken Sword 1
Note: See TracTickets for help on using tickets.