Bug#776540: game-data-packager: please add support for games working with gemrbd engine

Alexandre Detiste alexandre.detiste at gmail.com
Tue Sep 29 11:05:39 UTC 2015


2015-09-29 11:21 GMT+02:00 Markus Koschany <apo at gambaru.de>:
>  On Thu, 29 Jan 2015 07:40:22 +0100 Alexandre Detiste
> <alexandre.detiste at gmail.com> wrote:
>> Package: game-data-packager
>> Version: 39
>> Severity: wishlist
>> Tags: newcomer
>>
>> Supported games: Baldur's Gate and Icewind Dale series, Planescape:Torment.
>>
>
> I own all supported gemrb games from GOG. My first try was Baldur's Gate
> 1 and I pushed the .yaml file to a new branch "baldurs-gate".

I own these from GOG too. When the packaging of the GOG version is
done it should be tested against the original physical media too;
to avoid surprises; like GOG version of Zork Inquisitor shipping the
obsolete Z-Engine and some bits of it's assets slipping in package definition;
or GOG skipping some *.bak from the retail CD of Theme Hospital...

That also likely means to find a way to patch old CD's.

The people from the http://wiki.dotslashplay.it/ project seems
to be huge fan of this game, I'll ask them to test this.


Ultimately, this means G-D-P is the _one_ package that
most needs to be team-maintained, as no-one can own
all those games at once.


> GOG provides 5 different windows installers and 5 linux installers.
> Since "game-data-packager make-template" didn't work for the linux
> installer out-of-the-box, I used setup_baldurs_gate_2.0.0.20.exe and
> extracted the files with innoextract.

I'll try make-template too.


> Unfortunately g-d-p hardcodes the platform-priority for lgogdownloader
> to linux,windows.

I don't understand why you feel this is unfortunate, maybe you mistook
this parameter with " --platform" which does something else.


Using "--platform windows" was the easiest solution;
but some marketeer at GOG should know that we like
that they support linux even if we nitpick about
'details' like the chmod 666 stuff in /opt ;
or them providing 'i386' instead of 'all' packages
than can't be used on ARM computers etc...


GOG.is_native() is used in a way to avoid to request users to install
innoextract and then not even using it anyway because the linux
packages provided by GOG can be read as simple zip archives.


> I would like to override this option with a new tag like platform

An other reason for not having the platform: tag in the yaml
file is that GOG.com may decide to release more & more
linux packages after each GDP release,
so this checked at runtime.


> language

This is copied from package.lang in the python GameDataPackage
object; which already default to "en".

It's maybe not exactly the same flavor of ISO 639, so things
like pt_BR or en_GB may need some translation/lower/replace
if these were ever sold by GOG.


> Is there another way to
> force the download of the English windows installer

G-D-P will read the contents of $LANGUAGE
and the $LANG to pickup the best match;
and then call "lgogdownloader --language XX"

The only way to override this for now is this way:
   LANGUAGE=en game-data-packager kyrandia



Now for the rest:

- G-D-P has not yet support for multipart GOG archives used for huge games,
  multipart archive are a lot of pain (see ARJ, unshield handling) by
themselves;
  I will add this soon.

  To avoid to download the same game again & again & again for tests I wrote
  a fake lgogdownloader, that can be symlinked in ~/bin .

  http://anonscm.debian.org/cgit/pkg-games/game-data-packager.git/tree/tools/fake_lgog.py

  I need to add multipart archive support here too & replace "cp"  by
a "ln" to avoid to fill up /tmp.

  I'll test this against Feeble Files

- baldurs-gate1-data should be a virtual package provided by
    baldurs-gate1-en-data
    baldurs-gate1-de-data
    baldurs-gate1-fr-data
    baldurs-gate1-pl-data
    baldurs-gate1-ru-data

here is an example of another multilingual GOG game:
  http://anonscm.debian.org/cgit/pkg-games/game-data-packager.git/tree/data/simon2.yaml

Having at first a yaml with only baldurs-gate1-en-data is OK ! ;
other languages can be added "later"; and there is the "missing_langs: []"
tag to make it show up on the dashboard.

"later": For example there seems to exist a russian version of "I have
no mouth..."
not sold by Steam/GOG. As I can't browse the web in russian; I'll
never locate it myself.


- There are dubious files in the package definition that can be trimmed:
   ie-ddraw-fix-bg.cmd
   sdb.cmd
   sdbu.cmd
   ddrawfix/readme.html

  these icons always show up as tiny & ugly

  map.pdf should be optional, unless if shown ingame (unlikely)

  gog*.ico should be optional or trimmed out


PS: nice idea to work on a branch for this.

Alexandre Detiste



More information about the Pkg-games-devel mailing list