Simon the Sorcerer - App Store
Moderator: ScummVM Team
- Red_Breast
- Posts: 775
- Joined: Tue Sep 30, 2008 10:33 pm
- Location: The Bar Of Gold, Upper Swandam Lane.
- eriktorbjorn
- ScummVM Developer
- Posts: 3561
- Joined: Mon Oct 31, 2005 7:39 am
Probably because of what I wrote, that even in 0.5.0 there was a comment about subtitles being incomplete in the English and German talkie versions of Simon the Sorcerer 1.Red_Breast wrote:Why did you try 0.50 in the first place?
As far as I know, the only way would be to modify the ScummVM source code to allow the _subtitles variable to be set to true.Darnn wrote:No word on how do to do this in current versions? I assume it's possible, since the iPhone version of ScummVM that runs Simon does it.
I don't know how badly the subtitles are missing. Simon reading Calypso's letter is shortened to just "Dear Simon," so it seems only the first printed part of the message is there. But I always assumed there had to be more missing than that, because I think that's how the Feeble Files subtitles are, and we enable those...
- eriktorbjorn
- ScummVM Developer
- Posts: 3561
- Joined: Mon Oct 31, 2005 7:39 am
I imagine there are two places that would have to be changed. First, there's the bit in engines/agos/agos.cpp that sets the initial value of _subtitles. This is what it looks like in the current development version of ScummVM:Darnn wrote:Well, I just took a look at the source code and realized that I have absolutely no idea what I'd need to change to enable subtitles. Could anyone who's ever coded anything in their life help me out?
Code: Select all
if (getGameType() == GType_PP) {
_speech = true;
_subtitles = false;
} else if (getFeatures() & GF_TALKIE) {
_speech = !ConfMan.getBool("speech_mute");
_subtitles = ConfMan.getBool("subtitles");
if (getGameType() == GType_SIMON1) {
// English and German versions don't have full subtitles
if (_language == Common::EN_ANY || _language == Common::DE_DEU)
_subtitles = false;
// Other versions require speech to be enabled
else
_speech = true;
}
// Default to speech only, if both speech and subtitles disabled
if (!_speech && !_subtitles)
_speech = true;
} else {
_speech = false;
_subtitles = true;
}
If the game is any of the ones in Simon the Sorcerer's Puzzle Pack (getGameType() == GType_PP), there is speech but no subtitles. If it's a talkie game (getFeatures() & GF_TALKIE), get the speech and subtitles settings from the configuration file (ConfMan). If it's Simon the Sorcerer 1 (getGameType() == GType_SIMON1), check if it's the English or German version. If so, subtitles are always off. If not, speech is always on. In any talkie game, if speech and subtitles are both off, enable speech. If it's not a talkie game, disable speech and enable subtitles.
Changing the Simon the Sorcerer 1-specific part to something like this ought to work:
Code: Select all
if (getGameType() == GType_SIMON1) {
// All versions require speech to be enabled
_speech = true;
}
Code: Select all
switch (_keyPressed.ascii) {
case 't':
if (getGameType() == GType_FF || (getGameType() == GType_SIMON2 && (getFeatures() & GF_TALKIE)) ||
((getFeatures() & GF_TALKIE) && _language != Common::EN_ANY && _language != Common::DE_DEU)) {
if (_speech)
_subtitles = !_subtitles;
}
break;
All of the above games are talkie games, so it could probably be simplified as
Code: Select all
switch (_keyPressed.ascii) {
case 't':
if (getFeatures() & GF_TALKIE) {
if (_speech)
_subtitles = !_subtitles;
}
break;
- Red_Breast
- Posts: 775
- Joined: Tue Sep 30, 2008 10:33 pm
- Location: The Bar Of Gold, Upper Swandam Lane.
Might I ask a slightly off-topic question - if one were to change something like Darnn wants to are there any problems with compiling?
I had a game once which ScummVM wasn't detecting and I think I'd just started compiling my own builds. I found where the md5s are listed (detection.cpp maybe?) but wasn't sure if it would cause problems with compiling and let it be. In the end, a few days later, my game was being detected OK anyway so I never looked into it further.
I had a game once which ScummVM wasn't detecting and I think I'd just started compiling my own builds. I found where the md5s are listed (detection.cpp maybe?) but wasn't sure if it would cause problems with compiling and let it be. In the end, a few days later, my game was being detected OK anyway so I never looked into it further.
- eriktorbjorn
- ScummVM Developer
- Posts: 3561
- Joined: Mon Oct 31, 2005 7:39 am
- Red_Breast
- Posts: 775
- Joined: Tue Sep 30, 2008 10:33 pm
- Location: The Bar Of Gold, Upper Swandam Lane.
Hi thereDarnn wrote:Well, I finally managed to get it to compile... and it is with great pleasure that I announce that it works!
If anyone wants the executable I can upload it somewhere.
Again, thanks a lot, eriktorbjorn.
I know it's been a couple of years now but any chance you still have the executable?
As a matter of fact, I do: https://dl.dropbox.com/u/645489/scummvm ... talkie.exe
Put that in your ScummVM folder and run it. Add the talkie version of Simon 1 if you haven't already. Press "t" in-game to switch text on or off. Note that the subtitles for Calypso's note don't work. Everything else seems to work fine, though I only played through about half the game.
Put that in your ScummVM folder and run it. Add the talkie version of Simon 1 if you haven't already. Press "t" in-game to switch text on or off. Note that the subtitles for Calypso's note don't work. Everything else seems to work fine, though I only played through about half the game.
-
- Posts: 45
- Joined: Fri Mar 01, 2013 3:37 pm