Opened 17 years ago

Closed 16 years ago

Last modified 13 years ago

#1168 closed defect (fixed)

Simon The Sorcerer 1 WIN/DOS detection problem

Reported by: SF/tskywalker Owned by: Kirben
Priority: normal Component: Engine: AGOS
Keywords: Cc:
Game: Simon the Sorcerer 1

Description

The windows versions of The Simon The Sorcerer 1+2 Talkie doesn’t show up in the Dreamcast port menu. Both are English versions.

Ticket imported from: #790856. Ticket imported from: bugs/1168.

Change History (21)

comment:1 by SF/tskywalker, 17 years ago

Owner: set to zeldin

comment:2 by zeldin, 17 years ago

Hm, the Windows and DOS talkie versions have the same detectname, so they should show up as "... Talkie (DOS)" in the menu. If they don't show up at all, it sounds like the detectname is wrong. Do your CDs contain the files "SIMON.GME" and "GSPTR30" respectively?

comment:3 by SF/tskywalker, 17 years ago

Yep that is correct they contain the files "SIMON.GME" and "GSPTR30" respectively. I gota admit that I am not an authority in the Simon The Sorcerer games, I newer played them, actually I borrow the two games from a friend. Its just when you start Simon The Sorcerer 1 up in ScummVM for windows you get this versions in the menu:

Simon The Sorcerer 1 (DOS):
Simon The Sorcerer 1 Talkie (DOS) Simon The Sorcerer 1 Talkie (Windows)

When you try to start them the only one that plays with full sound, music and speech is Simon The Sorcerer 1 Talkie (Windows), and that one doesnt show up in the Dreamcast version only Simon The Sorcerer 1 (DOS) and Simon The Sorcerer 1 Talkie (DOS) show up so you dont get full sound support in the Dreamcast port.

When you start up Simon The Sorcerer 2 in ScummVM for windows you get this versions in the menu:

Simon The Sorcerer 2 Talkie (DOS) Simon The Sorcerer 2 Talkie (Windows) Simon The Sorcerer 2 Talkie (Amiga or Mac)

Here its only Simon The Sorcerer 2 Talkie (DOS) that works, and there is full sound, music and speech. On the Dreamcast port the only one that shows up is Simon The Sorcerer 2 Talkie (DOS) but there is no music only sound effects and speech. Make any sense to you?

CYA Torben

comment:4 by zeldin, 17 years ago

As I said, the DOS and Windows versions have the same detectname, hence ScummVM can't tell the difference and will treat them both as the DOS version. If there is actually any difference between them that ScummVM needs to know about, they should not have the same detectname (not really a Dreamcast issue).

However, you're saying it works but there's sound missing. Then isn't this really the same issue as #790856?

comment:5 by SF/tskywalker, 17 years ago

yep I think the thing to do, is treat it as a sound issue and let that be it.

CYA

comment:6 by SF/tskywalker, 17 years ago

Hi Marcus

ScummVM 0.5.3 CVS built 25 aug. 2003. Game is English version.

Only Simon The Sorcerer 1 Talkie has sound problems now
there is no sound, music or speech.

CYA Torben

comment:7 by Kirben, 17 years ago

marcus_c: What exactly do you mean by the DOS and Windows verisons of Simon the Sorcerer 1/2 sharing the same detect name ? each version uses a different target name but there is no way to tell differences between Talkie and Windows versions by data files alone.

comment:8 by Kirben, 17 years ago

Summary: Windows versions of The Simon The Sorcerer in the DreamcastDC: Simon The Sorcerer 1/2 Talkie not available

comment:9 by SF/abb_ie, 16 years ago

This still happens in 0.6.0 stable release.

I've the DOS version of Simon2 and the windows version of Simon1, I can't find my cds so I'm using what I installed a couple of years ago. When I put the burnt CD in

Simon The Sorcerer 1 (DOS)
Simon The Sorcerer 1 Talkie (DOS) Simon The Sorcerer 2 Talkie (DOS)

come up and if you try to run Simon 2 Talkie it works fine. Simon1 (not talkie) and it just resets - back to the play, file etc. screen.

Simon 1 Talkie and it will load up but there's absolutely no sound,speech or music. I tried saying in the Windows port version that it was the Dos version too and it did the exact same thing there - no sound. Would it be something to do with expecting a .VOC file for the Dos version?

I also read this on PocketScumm forums about the game from a while ago, presumably also had detection problems -

"The new release should have a better support for Simon 1 and 2, but you need to help it a bit if you're playing the DOS version, create a file called DOS (no extension) in the same directory - and WIN for the Windows version"

comment:10 by zeldin, 16 years ago

For SCUMM games, a MD5 checksum is used to differentiate between different versions of the same game. I suppose this needs to be done for Simon as well. It's not really a Dreamcast issue, so I'm unassigning myself from this.

comment:11 by zeldin, 16 years ago

Component: Engine: AGOS
Game: Simon the Sorcerer 1
Owner: zeldin removed
Summary: DC: Simon The Sorcerer 1/2 Talkie not availableSimon The Sorcerer 1 WIN/DOS detection problem

comment:12 by Kirben, 16 years ago

I don't think MD5 checksums would be possible for the Simon the Sorcerer 1/2 games. Since there in no single file that could easily be checked in all cases.

Why not just allow target detection via directory name ? like in PocketPC port. ie Directory Game simon1dos Simon the Sorcerer 1 (DOS) simon1talkie Simon the Sorcerer 1 Talkie (DOS) simon1win Simon the Sorcerer 1 Talkie (WIN)

comment:13 by zeldin, 16 years ago

Checksumming is only needed when the versions _do_ have the same set of files. Versions which use different files can already be automatically differentiated even without checksums.

comment:14 by Kirben, 16 years ago

Unfortunately it just isn't possible, I will explain why. In simon2talkie and simon2win the only files with have different MD5 checksums are: GSPTR30 SIMON2.GME

GSPTR30 is best avoid since it can be called GSPTR30 or GSPTR30. (Depends on operating system). And simon2mac uses the exact same data files as simon2win, the only difference is the speech files and speech files can't be checked since they could be compressed via simon2mp3.

I would suggest an alternative method of game detection, as I said before.

comment:15 by zeldin, 16 years ago

If the versions are really that similar, is there really any need to differentiate between them? If it's just the speech file that is missing in one of the versions, why not assume it's the talkie version, and if there is no speech file (mp3:ed or otherwise), then simply don't do any speech. Or?

comment:16 by Kirben, 16 years ago

No it isn't that simple. The Simon The Sorcerer 1/2 talkie versions have extra values (speech_ids) in data files for speech, which don't exist in versions without speech.

The main reason for the large amount of Simon the Sorcerer 1/2 targets is due to music, sfx and speech formats been different in each version of game. Check http://members.optusnet.com.au/scummvm/simon_formats.ht ml for details.

comment:17 by zeldin, 16 years ago

If there are extra values in the data files, then the datafiles will have different checksums, so then detection is no problem.

Ok, let's consider this logically and systematically. For any given pair of game variants A and B, with corresponding targets a and b, one of the following must be true:

1) Target a behaves the same regardless of whether the actual game files are of variant A or B, and the same holds for target b

or

2) One of the targets (say a) behaves differently depending on whether the actual files are of variant A or B.

In case 1), it doesn't matter if the detector picks target a or b, the game will work anyway. If there is actually a difference between how target a and b behaves (even though they can use the same files), just pick the target which has the "better" behaviour.

For case 2) to be possible, target a must use a piece of data which is different in A and B, i.e. it must either

i) (try to) use a file/audio track F which only exists in A

or

ii) use a file G which exists in both A or B, but which differs by at least one byte

In case i), checking for existence of file F can be used to differentiate between A and B.

In case ii), checksumming file G can be used to differentiate between A and B.

comment:18 by Kirben, 16 years ago

I added auto detection of Simon 1/2 when adding games via launcher and reduced targets (Removed simon1win/simon2win).

comment:19 by Kirben, 16 years ago

Owner: set to Kirben
Resolution: fixed
Status: newclosed

comment:20 by fingolfin, 15 years ago

Component: Engine: AGOSEngine: AGI
Game: Simon the Sorcerer 1Leisure Suit Larry 1

comment:21 by Kirben, 13 years ago

Component: Engine: AGIEngine: AGOS
Game: Leisure Suit Larry 1Simon the Sorcerer 1
Note: See TracTickets for help on using tickets.