Skip to content

ScummSpeaks v3 r5

ScummSpeaks v3 r5 has bee nreleased.

  • Add (hacky) suport for Curse of Monkey Island (CoMI) – note that you should only use the exported BUN file, and ignore the TAB file (because the sound files are split across two BUN files, and while you can load the one LANGUAGE.TAB file which contains mappings for both BUN files, you can only load one BUN file at a time into ScummSpeaks).
  • Import/Export Sync and Marker metadata as list of bytes for V7+ resources (.BUN).
  • Fix default value for LipSynch metadata in older resources (<= V6, MONSTER.SOU)

I’ve been sitting on this release for a while so I’m not sure how stale it is, let me know if there’s any problems.

Python Source (62.87 KB)

Win32 Executable (5.07 MB)

jestarjokin.net – Website Updated

I’ve updated the website, the software information is now dynamically generated from a backend database. This should make it easier for me to update, and makes the user experience more consistent. I’ve also increased the overall font size and jostled around some of the areas.

I’ve also gone through my archives and updated all the source & binaries links for old release, and added release dates for every release.

Setting up a LAMPStack Virtual Machine for Development

EDIT 2012/04/23: This post was originally going to be the first in a series describing how to convert a static website into one that makes use of dynamic (server-side) technologies. However, I got embarressed with my PHP code and worried about security, so I’ve removed most of the post, but I have kept the instructions on setting up LAMPStack in a Virtual Machine.

Continue reading ›

Scummbler v2 r15

New version of Scummbler (v2 r15). Changes:

  • Fix “drawObject” in V3-4 (was missing 3rd argument and outputting the wrong opcode).
  • Fix “getState” instruction’s syntax (was originally defined as “if (getState(Local[0] == 0))”, should have been “if (getState(Local[0]) == 0)”).
  • “debug?” instruction renamed to “debug”.
  • “PutCodeInString” – add support for a missing 2nd argument (as output by descumm).
  • Restructure code path structure, separate out some tests.
  • Added some tests based on my attempt to parse MI1 global scripts.
  • Change license to MIT license.
  • Update build scripts.
  • Update to the manual – change info for “getState”, add support e-mail to contact list.

Binary:
http://www.jestarjokin.net/sw/scummbler_bin_20110712.zip
Source:
http://www.jestarjokin.net/sw/scummbler_src_20110712.zip

 

I’ve discovered there are some bugs in descumm’s output (introduced by yours truly). I discovered these after trying to parse all the global scripts from Monkey Island 1 VGA floppy.

Script 82 and 83 – missing 2nd argument for PutCodeInString

[0000] (27) PutCodeInString(24, );

When the string is empty, descumm outputs nothing for the second argument. It should output this:

[0000] (27) PutCodeInString(24, "");

Scummbler now supports either scenario.

 

Script 135 – unknown string function

Global script 135 contains this line:

[049C] (FA) VerbOps(Var[100],[SetXY(0,Var[228]),Text("How to deal with  frustration, disappointment, " + unknown8(8224) + " and irritating  cynicism."),On(),Key(Var[229]);]);

The “unknown8″ instruction is incorrect, and can’t be parsed by Scummbler. You must manually change the text like so:

[049C] (FA) VerbOps(Var[100],[SetXY(0,Var[228]),Text("How to deal with  frustration, disappointment,\xFE\x08  and irritating  cynicism."),On(),Key(Var[229]);]);

Also, there shouldn’t be a semi-colon after the “Key()” instruction, but Scummbler handles this anyway.

 

Script 152 – not joining string functions

[00BF] (14) print(255,[Color(Local[8]),Center(),Text(getString(VAR_HEAPSPACE)keepText())]);

This line should read:

[00BF] (14) print(255,[Color(Local[8]),Center(),Text(getString(VAR_HEAPSPACE) + keepText())]);

Again, you’ll have to manually alter the script.

MusicSort – a small script for renaming and sorting music folders

I have a reasonable collection of music in a variety of compressed formats. I like to arrange my music in a tree structure on the filesystem, sorted by genre. I also like to name the album directories in a particular format. I had acquired a backlog of albums to rename & sort, so, one day when I was procrastinating, I wrote a music sorting script.

Win32 Binaries

http://www.jestarjokin.net/sw/musicsort_bin_20110619.zip

Python Source

http://www.jestarjokin.net/sw/musicsort_src_20110619.zip

This script (and the binaries) is license under the MIT License.

An explanation follows.

Continue reading ›

New mailing list for support issues, feature requests, and general chat

I’ve decided to set up a dedicated mailing list, which can be used for any support issues for my tools, or feature requests, or just general game hacking discussions. Mostly because I need to show evidence of an “active community” in order to qualify for a free license for PyCharm, and it doesn’t look like private e-mails will suffice. Feel free to use the mailing list to contact me; I reserve the right to forward to the mailing list any mail e-mailed directly to me, if I feel it is worth sharing with others.

The mailing list address:

support@lists.jestarjokin.net

You can set up subscriptions and other info here:

http://lists.jestarjokin.net/listinfo.cgi/support-jestarjokin.net

The archives will be located here:

http://lists.jestarjokin.net/private.cgi/support-jestarjokin.net

Robin Hood – The Rules, Roughly

After nearly two years since I poked around in Robin Hood’s guts (I’m referring to the game, of course), I got the urge to investigate further, and now have a rough idea of how the data in the rules files is stored.

I will be discussing the format based on the “ERULES.PRG” file, which contains English text. The other rules files should be in exactly the same format, only the string values should be different. All bytes are in little-endian format (unless otherwise stated).

I’ll state up here at the start of this post, if anyone wants to join forces in exploring the intricacies of the game, feel free to send me an e-mail: jestarjokin@jestarjokin.net

View after the break, IF YOU DAAAAARE…!

Continue reading ›

The Clue! Profidisk – request for an German->English translator

I’ve heard whispers that The Clue! is being considered for inclusion in ScummVM. I’d love if it was. This got me looking into the source code for The Clue!, which was released to the public quite a few years ago.

It looks like there was a “Profidisk” expansion released for the game, but only for the German version. This expansion adds a few more scenarios for burglarising. I’d like to play this expansion in the English version, but lack the Deutsch to translate it myself, so if anyone out there could help me, contact me at my e-mail (listed later).

Turns out the text requires very little to change; all text data is stored in external files, which are XOR encrypted using a key ox 0×75. At this point I’m not sure if any graphics will require editing, for now I will concentrate on the text.

If anyone wants to help me out by translating the text, I’d be grateful. E-mail me at jestarjokin@jestarjokin.net.

 

Also, while the German game data was released to the public, the English version remains in limbo. Would it be worthwhile to translate the whole game into English again, to avoid any copyright issues?

It may also be worth editing the original English text anyway, since from memory it didn’t make much sense at times.

 

If you want to unencrypt the files yourself, here’s a small Python script to do so. If you have Python installed, you can run it like “xor.py 0×75 TEXT\*.txt”.

xor.zip

 

EDIT: 30/05/2011 – I’ve found my translator! Turns out Google Translate does a damn fine job. I’ll tweak the text a bit to match some of the existing English translations and maybe add some flavour… stay tuned.

ScummPacker v3 r1a

It seems there was a problem with the last build of ScummPacker. I’m not sure why, possibly because I did it on a different computer than usual. This release is just a new build which seems to be working. There are no code changes.

Win32 Binaries
http://www.jestarjokin.net/sw/scummpacker_bin_20110521.zip

Python Source
http://www.jestarjokin.net/sw/scummpacker_src_20110521.zip

Tagged

ScummSpeaks v3 r4

A bug fix release for ScummSpeaks.

  • Fix issue where importing sounds into a MONSTER speech map did not sort the sounds by ID (original offset), resulting in invalid game resources when exporting.

Win32 Binaries
http://www.jestarjokin.net/sw/scummspeaks_bin_20110512.zip

Python Source
http://www.jestarjokin.net/sw/scummspeaks_src_20110512.zip

Tagged