[Scummvm-devel] scumm game creation? scumm resource extraction and a scummvm capable of dealing with the content?

David Given dg at tao-group.com
Fri Jul 11 05:52:02 CEST 2003


On Friday 11 July 2003 1:16 pm, Jeroen Janssen wrote:
[...]
> This is probably not the right place to ask, but I was wondering if
> anyone knows of a public project to create 'scumm' games that can be
> played with scummvm.

At one stage I was working on a system to do this. Unfortunately, real life 
intervened and the project is now currently dead. What I currently consists 
of is:

http://www.cowlark.com/scumm/
...which partially documents some of the SCUMM file format, and:

http://www.cowlark.com/scumm.dat/skim-0.1.zip
...which is a Java toolkit for analysing SCUMM files, currently not in a very 
useful way.

[...]
> If you could extract the enitire resource content of a game to disk
> (having a subdirectory hierarchy of the resources in a game AND having
> a scummvm capable of accessing this instead of the normal 'combined'
> resource files), one could start experiment modifying existing resources
> & writing tools that could be used to 'kickstart' the entire process of
> writing a new game. Example: you could start by adding a new room to an
> existing game using existing content.

Unfortunately this is a bit tricky.

Part of the problem is that SCUMM refers to resources throughout the game by 
number. It looks these up in an index to find them in the file itself. This 
means that if you change the resource numbering, you end up having to find 
all references to that resource throughout the game and modifying them; which 
means you have to understand the contents of every single resource, so that 
you know which bytes are resource numbers.

I specc'd out a file format for a SCUMM linkable object module thingy. This 
would allow you to have an arbitrary chunk of a resource file, with all the 
resource numbers specially tagged. The idea was that you could link together 
lots of these things into a final resource file and the linker would 
automatically update all the resource numbers. This was dubbed Slob, (SCUMM 
Linkable OBject format... sorry, but it had to be done), and is documented in 
the first link above. Skim contains some support code but I never finished 
it.

[...]
> Then the "next" step would be to work on something that can modify such
> existing content/create content from scratch and "inject" them in this
> directory structure and hopefully that will eventually lead to something
> that will be able to create a new game from scratch.

It might actually be simpler to start with a program that creates a noddy game 
--- one room, one script --- and work up from there. That way you can stick 
with understanding only those resource types you're interested in, rather 
than having to understand them all before you can do anything useful. But 
then, I'm not doing this any more so it's not really my decision...

Incidentally, feel free to take Skim and the Compleat Reference Guide and do 
whatever the hell you feel like. I'd be extremely pleased if someone else can 
make use of my code...

-- 
David Given
dg at tao-group.com

The contents of this e-mail and any attachments are confidential and may
be legally privileged. If you have received this e-mail and you are not
a named addressee, please inform us as soon as possible on
+44 118 901 2999 and then delete the e-mail from your system. If you are
not a named addressee you must not copy, use, disclose, distribute,
print or rely on this e-mail. Any views expressed in this e-mail or any
attachments may not necessarily reflect those of Tao's management.
Although we routinely screen for viruses, addressees should scan this
e-mail and any attachments for viruses. Tao makes no representation or
warranty as to the absence of viruses in this e-mail or any attachments.
Please note that for the protection of our business, we may monitor and
read e-mails sent to and from our server(s).




More information about the Scummvm-devel mailing list