Goblins - Music in CD and Disk versions.

General chat related to ScummVM, adventure gaming, and so on.

Moderator: ScummVM Team

User avatar
DrMcCoy
ScummVM Developer
Posts: 596
Joined: Sat Dec 17, 2005 1:33 pm
Location: Braunschweig, Germany
Contact:

Post by DrMcCoy » Sat Jul 04, 2009 12:11 am

Morden wrote:Sierra's INTRO.STK is all English, so I'm actually surprised it worked at all.
That's not surprising. Only one set is used while playing, and ScummVM probes which ones are available.
Morden wrote:I'll remember to stop by next time I have some more Goblins related questions. Hope you don't mind.
Not at all. :)
Morden wrote:Does the support for these files have to be implemented before they can be unpacked? When I run the command, it gives me:

Extracting: "AJRON"
ERROR: Unexpected EOF!
Strange. That suggests that either the offset or the size is wrong or read wrong. Could you give me the hex values of the first 24 bytes of that INTRO.STK?

User avatar
Morden
Posts: 149
Joined: Mon Nov 03, 2008 10:15 am
Contact:

Post by Morden » Sat Jul 04, 2009 8:47 am

Here are the 24 byte strings for all three INTRO.STK files.

Gobliiins - 7E00414A524F4E000000000000000000000000D60A000000
Gobliins 2 - 1C01414A524F4E0000000000000000000000006A18000000
Goblins 3 - BC00414A524F4E0000000000000000000000002A10000000

The extraction crashes on the "AJRON" bit, producing two files. AJRON and intro.gob. While AJRON is empty, intro.gob looks like a proper list.

I tested some other STK and ITK files from the MULTI3 release [mainly from Goblins 3], and they seem to be extracting fine.

Noticing how the new INTRO.STK files have extra 22 bytes, I experimented a bit and removed them. This left me with 0000 in front of GOB31.LET [INTRO.STK from Goblins 3], so I changed it to 2E00 to match the Sierra file. After that, I tried running the extraction again. It produced three files and crashed on fourth, giving me a Windows exception.

User avatar
DrMcCoy
ScummVM Developer
Posts: 596
Joined: Sat Dec 17, 2005 1:33 pm
Location: Braunschweig, Germany
Contact:

Post by DrMcCoy » Sat Jul 04, 2009 9:58 am

Code: Select all

Goblins 3 - BC00414A524F4E0000000000000000000000002A10000000
                                          ^^^^^^^^
That's the problem right there. These 4 bytes are the size, and it's 0. My tool apparently couldn't cope with that. Fixed it in the SVN repository, so you should either update your checkout or wait for the next daily build.

User avatar
Morden
Posts: 149
Joined: Mon Nov 03, 2008 10:15 am
Contact:

Post by Morden » Sat Jul 04, 2009 12:22 pm

I'll wait for the next build, I'm in no hurry. It looks like my poking around actually did some good.

Another thing I was wondering about - Is it possible to extract the game graphics? I guess anything is possible, but I mean a fairly accessible way of doing it. I wouldn't dream of a tool like ScummRev, but it sure would be nice to have a possibility of dumping the stage backgrounds to bitmaps.

Also, is it possible to extract the AdLib music from the disk version, and was it a custom format or something that was already out there?

User avatar
DrMcCoy
ScummVM Developer
Posts: 596
Joined: Sat Dec 17, 2005 1:33 pm
Location: Braunschweig, Germany
Contact:

Post by DrMcCoy » Sat Jul 04, 2009 1:43 pm

Morden wrote:Another thing I was wondering about - Is it possible to extract the game graphics?
This is much harder:
Most of the resources, be it graphics, sound, what-have-you, are stored in the TOT or EXT files and only accessed through a numerical index. These resources don't have any information on what type they are. I.e. you can't say if resource 12345 is an image, a sound, a walk-map or something else entirely. Images also sometimes don't have correct dimension information, and never come together with their palettes.
Morden wrote:Also, is it possible to extract the AdLib music from the disk version
Depends on the game. Some games have their music as separate files in the STK, .ADL files.
Some however have the music as unnamed resources, as explained abobve.
Morden wrote:and was it a custom format or something that was already out there?
It's a custom format. Look in engines/gob/sound/adlib.cpp if the format interests you.

User avatar
Morden
Posts: 149
Joined: Mon Nov 03, 2008 10:15 am
Contact:

Post by Morden » Sat Jul 04, 2009 4:51 pm

DrMcCoy wrote:Most of the resources, be it graphics, sound, what-have-you, are stored in the TOT or EXT files and only accessed through a numerical index. These resources don't have any information on what type they are. I.e. you can't say if resource 12345 is an image, a sound, a walk-map or something else entirely. Images also sometimes don't have correct dimension information, and never come together with their palettes.
Sounds kind of messy, or at least not as structured as, let's say, SCUMM. Then again, I'm guessing it was built for efficiency not for easy re-use. Does The Bizarre Adventures of Woodruff and the Schnibble use the same kind of structure?

After you shed some light on how things work in DOS Goblins, it's actually pretty funny to see Gobliiins 4 having all of its resources unpacked and laying about.

Each level has a separate folder and within it, all the graphics, including some textures, can be found in TGA format. Sound effects are simple wave files and stage ambiance is a Windows Media Audio file.

Mesh data and all in-game dialog is just plain text. Additionally, some levels contain animation sequences, and these are Windows Media Video files. That's quite a change when you think about how things were handled in first three games.

---

I just tested the latest daily and the extraction works fine now. The only untested STK file version now would be the MULTI5, but I'm guessing it will unpack just fine.

User avatar
DrMcCoy
ScummVM Developer
Posts: 596
Joined: Sat Dec 17, 2005 1:33 pm
Location: Braunschweig, Germany
Contact:

Post by DrMcCoy » Sat Jul 04, 2009 5:23 pm

Morden wrote:Then again, I'm guessing it was built for efficiency
...I wouldn't call it that either ;P
Morden wrote:Does The Bizarre Adventures of Woodruff and the Schnibble use the same kind of structure?
Yes. It's kinda fundamental to the whole engine.
Morden wrote:After you shed some light on how things work in DOS Goblins, it's actually pretty funny to see Gobliiins 4 having all of its resources unpacked and laying about.
It's certainly easier that way.
Morden wrote:I just tested the latest daily and the extraction works fine now.
:)

Cricri

Post by Cricri » Sun May 09, 2010 8:10 pm

Telordya wrote:You use either the diskette with original MIDI music with "pitatibitoo pitayditoo" speech
Ah, so THAT's what he's saying :wink:
Sorry for bumping an old thread, but does the CD contain a single track to rip? If yes, I assume that the script points not to a track but to a time in the only track?

*EDIT* to partially asnswer my question, yes, there is a single track of size 309,027KB and 29 min 54 sec, and the ripped file must be named track1.mp3.

User avatar
DrMcCoy
ScummVM Developer
Posts: 596
Joined: Sat Dec 17, 2005 1:33 pm
Location: Braunschweig, Germany
Contact:

Post by DrMcCoy » Sun May 09, 2010 10:52 pm

Cricri wrote:I assume that the script points not to a track but to a time in the only track?
Well, to be pedantic, the scripts instruct the engine to play a certain "track name", with a .lic file on the CD's data track containing a name->time mapping for the CD's audio track. :P

Cricri

Post by Cricri » Sun May 09, 2010 11:07 pm

Ah, yes of course! Thinking about it again, the wiki made it clear:

http://wiki.scummvm.org/index.php/Datafiles#Goblins_3

"mus_gob3.lic (CD audio index)"

I was finding it strange that you'd have hard coded the indexes! thanks for satisfying my curiosity :wink:

Post Reply