Author Topic: Sierra's Debug/Testing Version of AGI  (Read 294 times)

0 Members and 1 Guest are viewing this topic.

Offline AGKorson

Sierra's Debug/Testing Version of AGI
« on: February 03, 2023, 03:16:24 PM »
I was looking at the source code for some of the AGI games found in the repository that EricOakford posted in this post.

The source for Black Cauldron includes a set of interpreter files (agi.exe, agidata.ovl, etc). The version for this set of files is 3.002.097, which is not one that I have ever seen before. So I disassembled it to see how it might differ from other versions. There is a publicly released version 3.002.098, so I expected it to be very similar to that.

It is not.

Instead, this appears to be a special version, presumably used by Sierra developers and testers during game development. It does not use VOL files or DIR files. Instead, it looks for a file named 'WHERE' in the game directory that has four directories which point to where individual resources are stored. The first points to compiled logics (which need to be in the form of 'RM.0, RM.1, etc.), the second points to picture resources (PIC.1, PIC.2, etc.), the third to view resources (VIEW.0, VIEW.1, etc.) and the fourth to sounds (SND.0, SND.1, etc.)

I imagine it was a lot easier to do testing with this interpreter, because you didn't have to rebuild the VOL and DIR files every time you made a change to a resource. You would only do that for the final release.

The source also includes volume definition files (BCVOL0.DRV, BCVOL1.DRV, etc) that I am guessing were used by their in-house tools to actually build the VOL and DIR files. Each definition file is a text file that lists the resources that would be included in each VOL file (same format for resources, RM.0, PIC.1, VIEW.2, SND.3, etc).

I'm still looking at the disassembled code to see if there are any other testing/debug features in this version that don't exist in the publicly released versions.




Offline lskovlun

Re: Sierra's Debug/Testing Version of AGI
« Reply #1 on: February 04, 2023, 05:15:37 AM »
Yeah, SCI has something similar. The release SCI0 interpreter is called SCIV.EXE (V for volumes). There are executables called SCI.EXE in that archive; they differ from the release interpreters in the same way. It seems the build processes usually generated one volume interpreter and one non-volume interpreter in one go, so in your example .097 and .098. Again SCI examples are similar.

Offline Collector

Re: Sierra's Debug/Testing Version of AGI
« Reply #2 on: February 04, 2023, 11:25:27 AM »
Yeah, SCI has something similar. The release SCI0 interpreter is called SCIV.EXE (V for volumes).

On a side note, I used to have a list of what the various interpreter naming conventions meant, but I cannot find it. What ones are you aware of?
KQII Remake Pic


SMF 2.0.19 | SMF © 2021, Simple Machines
Simple Audio Video Embedder

Page created in 0.017 seconds with 22 queries.