[Scummvm-tracker] [ScummVM :: Bugs] #13659: AGS: Default "Game language" option in ScummVM does not override .cfg file
ScummVM :: Bugs
trac at scummvm.org
Thu Jul 7 19:05:52 UTC 2022
#13659: AGS: Default "Game language" option in ScummVM does not override .cfg file
--------------------------+--------------------------
Reporter: tag2015 | Owner: (none)
Type: defect | Status: new
Priority: normal | Component: Engine: AGS
Version: | Resolution:
Keywords: ags, language | Game:
--------------------------+--------------------------
Comment (by criezy):
This is a know issue because I implemented it that way on purpose. The
idea was that when a game is distributed with a cfg file that already
specifies a language, or if the user runs win setup to select a language,
in ScummVM we should use that language by default if the user does not go
to the game options in ScummVM to change it.
However I agree that it is not optimal, since as you noticed, if a
language is specified in the cfg file we have no easy way in ScummVM to
indicate we don't want to use any translation.
The root of the issue lies in the use of two config files. The game one
(`acsetup.cfg`) and the ScummVM one (typically `scummvm.ini`). The game
options dialog uses the latter, so does not know what is defined in the
game settings file, nor does it change it. When selecting "<default>"
language in the game options that removes the setting from the ScummVM
config file (and this is thus what we have by default if the user never
goes into the options).
One solution could be to indeed use "<default>" as meaning that no
translation file should be used, but synchronise the game options dialog
with the game cfg file instead of using the scummvm config file. Using the
cfg file parsing from the ags engine could be an issue (e.g. if the engine
is built as a plugin). ScummVM does have code in `Common::ConfigManager`
to read those as file (since we use the same format) but it is not easily
reusable. So we would either have to duplicate some code and refactor some
existing code.
Another simpler solution could be to add an additional entry in the
language selection in ScummVM, and have separate <use default game
language> and <use language from acsetup.cfg file> options. I am now sure
what would be good names for those however.
Finally we could also forget the attempt to use by default the language
from acsetup.cfg, and always ignore it. In that case we would just have to
change the meaning of <default> to mean "do not use any translation file".
--
Ticket URL: <https://bugs.scummvm.org/ticket/13659#comment:1>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM
More information about the Scummvm-tracker
mailing list