Opened 4 years ago

Last modified 3 years ago

#11368 new feature request

Unknown game variant for tinsel - Discworld (PSX, Japanese)

Reported by: JeffCharizardFlame Owned by: dreammaster
Priority: low Component: Engine: Tinsel
Version: Keywords:
Cc: Game: Discworld

Description

The game in 'Discworld (CD PlayStation, Japanese)\' seems to be an unknown game variant.

Please report the following data to the ScummVM team at https://bugs.scummvm.org/ along with the name of the game you tried to add and its version, language, etc.:

Matched game IDs for the tinsel engine: dw-cd-de

{"dw.scn", 0, "3cbe25971651631fdc33fece642c9c78", 328048},

There is a script for quickbms that allows one to extract files from the Japanese PlayStation version of Discworld, as it uses the same file format as the later port of Discworld II to the system. As such, the files it extracts more or less become a recognizable version of the game that might be able to be tinkered with a bit further to work, but I'm not exactly sure how much would need to be done for this to be playable. The MD5 and SHA-1 hashes I have put in text files attached to this ticket were taken from the files extracted from the DISCWORLD.LFD and DISCWORLD.LFI containers on the copy of the disc I personally own.

Attachments (2)

DWJPmd5.txt (48.1 KB ) - added by JeffCharizardFlame 4 years ago.
MD5 hashes
DWJPsha1.txt (52.1 KB ) - added by JeffCharizardFlame 4 years ago.
SHA-1 hashes

Download all attachments as: .zip

Change History (10)

by JeffCharizardFlame, 4 years ago

Attachment: DWJPmd5.txt added

MD5 hashes

by JeffCharizardFlame, 4 years ago

Attachment: DWJPsha1.txt added

SHA-1 hashes

comment:1 by dreammaster, 4 years ago

Owner: set to dreammaster
Resolution: fixed
Status: newclosed

Thanks. I've added in a detection entry and marked it as unstable. If by chance the game is playable, and completable, in a daily build, let us know, and I can upgrade the detection to properly supported.

comment:2 by JeffCharizardFlame, 4 years ago

Sorry for getting to you so late on this, but I have a small update for you. The game has been detected, but when I run the game, it tries to detect english.idx, english.txt, and english.smp, which are now japanese.idx, japanese.txt, and japanese.smp respectively. When renaming them, it seems to bring up the console, so I'm guessing this means the game isn't working, since when I hit escape it quits the program. This is in version 2.2.0git7126-gb248f432e9. In addition, it seems the version of Discworld released on the PS1 in Germany (the one with the German-only dub and subtitles, not the multilingual version from the UK and other portions of Europe, which has German subtitles) also uses the DISCWORLD.LFD and DISCWORLD.LFI containers as well, which means that the files from the German PS1 version can also be retrieved in this way. If you wish I can get the MD5 hashes and SHA-1 hashes for these as well, but it'll probably also be low on the docket until I test the Japanese version.

Last edited 4 years ago by JeffCharizardFlame (previous) (diff)

comment:3 by JeffCharizardFlame, 4 years ago

Resolution: fixed
Status: closednew

Probably also should've opened this again when I posted the reply, whoops.

Last edited 4 years ago by JeffCharizardFlame (previous) (diff)

comment:4 by dreammaster, 4 years ago

Looks like TinselEngine::getSampleIndex indeed hardcodes the sample filename to be english for Discworld 1. Shouldn't be too hard to add in a clause for the Japanese version. I'll take care of it on the weekend.

comment:5 by dreammaster, 4 years ago

I've committed in a fix that should allow the Japanese version to use the correct japanese.smp/idx/txt files. I'd be interested to know if the game then works or not.

As for the German version.. your description is a bit ambiguous. Are the "containers" you mention special kinds of archives, rather than just renamed sample files? In which case, md5s won't be much help if we don't have code that can read their contents.

in reply to:  5 comment:6 by JeffCharizardFlame, 4 years ago

Replying to dreammaster:

I've committed in a fix that should allow the Japanese version to use the correct japanese.smp/idx/txt files. I'd be interested to know if the game then works or not.

The error messages have gone away, but after clicking start anyway it brings up the console and says "ERROR: Compression handling is disabled!"

As for the German version.. your description is a bit ambiguous. Are the "containers" you mention special kinds of archives, rather than just renamed sample files? In which case, md5s won't be much help if we don't have code that can read their contents.

I mean that all the files are inside the DISCWORLD.LFD and DISCWORLD.LFI containers again. They can be extracted in the same way the Japanese version's files were retrieved.

Last edited 4 years ago by JeffCharizardFlame (previous) (diff)

comment:7 by dreammaster, 4 years ago

Okay, then. The original game had a flag for data files to be compressed with the "LZSS compression". I think we've got decoders for it, but I'm not sure if the PSX version is using the same compression or not. For now I've committed in a change to the error messages to at least show which file was compressed. I suspect, though, that getting the Japanese version would/will require more work than just the compressed files.. Japanese versions of games typically require a bunch of changes to the font system as well as how strings are handled. There was a PC Japanese detection entry for the engine, but since it had a "japanese.smp" file as part of the detection but the engine code was hardcoded to english.smp, it had obviously never been actually tested. So at least I was able to mark it as unstable as well.

I'm going to leave this enhancement ticket open; chances are, it's going to wait on a developer with the Japanese PSX version to look further into this. Or at least someone willing to work on it further, in which case a copy of the Japanese version could be obtained.

comment:8 by eddebaby, 3 years ago

If you use the QuickBMS script from https://github.com/scummvm/scummvm/pull/3086#issuecomment-867118339, you can now correctly extract the data from DISCWORLD.LFD/DISCWORLD.LFI for both the German and Japanese Playstation CDs.

As of PR 3086, the German and Japanese Playstation CD data can be detected and launched (if the files are extracted with the above .bms script).

The German version works OK from a quick check.

The Japanese version crashes when it tries to display Japanese Text for the first time, but the intro video can be viewed (the Japanese version does not appear to use subtitles).

Note: See TracTickets for help on using tickets.