Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - EricOakford

Pages: [1] 2 3 ... 7
SCI Development Tools / Re: SCI01 Template Game
« on: March 17, 2020, 01:24:59 PM »
Nice. Does it also feature scrolling background transitions?

Yes. The show styles are in the interpreter, which in this case is 1.000.172 (from Seasoned Professional EGA). This is a newer version than QFG2 and KQ1SCI's interpreters, which also have scrolling styles. It is also the final interpreter version with both EGA graphics and a parser.

SCI Development Tools / Re: SCI01 Template Game
« on: March 14, 2020, 08:49:41 PM »
Here's my work on LockerGnome Quest: SCI01 Edition. It has been tested to completion, with the game responding to much of the possible parser commands, and includes a file containing output from the Feature Writer, which has been quite useful for writing the room's features.

And right-click looking was actually not a feature included in the original SCI0 template. That's one reason my templates are a huge improvement. :)

SCI Development Tools / Re: SCI01 Template Game
« on: March 13, 2020, 07:08:59 PM »
Many (most?) SCI0/SCI01 official games had right-click look.

Which LockerGnome? Redux had SciAudio.

I'm using Redux's code as the basis, with the SciAudio portions commented out and their relevant scripts unused.
I also made the individual objects in the locker into PicViews by carefully removing them from the picture resource, then placing them into a view resource. This is kind of how QFG1EGA and QFG2 drew various non-moving objects as PicViews, rather than making them part of the picture.

In regards to right-click look... I know that QFG1EGA, QFG2, KQ1SCI, Conquests of Camelot, Codename Iceman, and Colonel's Bequest have this.
The ones that don't are KQ4, LSL2, LSL3, PQ2, and SQ3.

With SCI01, putting the mouseDownHandler in the game is enough to enable right-click mode. With SCI0, I need to research this further.

SCI Development Tools / Re: SCI01 Template Game
« on: March 12, 2020, 08:30:29 PM »
The game now has specific event handlers for keyDown, direction, and mouseDown events. This will allow for right-clicking on objects to "look" at them. Of course, I had to tweak some of the game scripts to accommodate this. as seen here.

I've been working on porting LockerGnome Quest to SCI01 as an example of this. It should be ready soon.

Previously, I mentioned converting the game to Sierra Script. I've actually completed that, and greatly optimized the code as well! Here's a list of things I did:

Code: [Select]
Converted all scripts to Sierra Script.
Replaced all system scripts with the ones from my newer SCI0 template. This caused the loss of the custom window, which  now needs to be a specific instance.
SCIAudio has been moved into script number 803, due to its third-party nature.
SetUpEgo is now NormalEgo, and no longer relies on the SetUpActor procedure.
Ego standing still is now implemented with the StopWalk class.
The game's doit: has been removed, using only the generic Game's doit:.
ProgramControl is now HandsOff, and PlayerControl is now HandsOn. They automatically set the cursor now, so any instances of SetCursor in the scripts have been removed.
Several global variables have been replaced with event flags managed by Bset, Btst, and Bclr, and are stored in the gameFlags array.
Script 204, the "use inventory items in rooms" region, is no longer used. It had been duplicated in various rooms. These duplicates have been removed. Using and looking at inventory items is now handled in the Main script.
The HighPrint and LowPrint procedures have been added, allowing for text messages to be displayed in consistent locations on the screen.
Instead of temporarily changing the global text and back color for various messages, and then changing them back afterwards, these messages now use specific window instances with customized text and back colors. On that subject, specialized Print procedures for talking characters have been added.
Text.000 has been reorganized, and the contents of Text.204 have been moved to the

I think the biggest challenge will be to make SCIAudio work in Sierra Script. For now, I'm running the game in plain DOSBox, and using the Sound resources for music.
I'll send you the updated game. This will be quite important in anticipation for the SCI01 sequel.

SCI Development Tools / Re: SCI01 Template Game
« on: February 26, 2020, 08:41:56 PM »
I fixed a major bug in USER.SC, which was the result of a missing line of code!
Specifically, it's in User's said: method, which is supposed to allow the parser to work with verbMessager. So if you were wondering why doVerb wasn't working, this is the reason, and it's been fixed now.

Also, I've made the handleEvent: method in Main a lot simpler, specifically the "look at inventory items" code.

So, if you're using the template, be sure to update your USER.SC file!

SCI Syntax Help / Re: SCI Audio - how to set up a music on/off toggle
« on: February 18, 2020, 09:37:42 AM »
I'm a little confused still. In the properties I see the following (In Studio Script, which I'm using for BA 1)

Have you considered converting to Sierra script? It would be a good excuse to familiarize yourself with it.
I'm using Sierra Script for the follow-up, but this one was written in the old code and I don't want to go through the process of transcribing it again and then dealing with the compilation errors.

Leave that to me. I've been working to convert the game to Sierra Script. I've already replaced the system scripts with those from my newer SCI0 template, and have moved the sciAudio, InitRooms, and Dying scripts into the 800 range (since they're not actually system scripts). Things like the custom window will have to be re-implemented into specific instances.

SCI Development Tools / Re: SCI01 Template Game
« on: January 27, 2020, 08:56:48 PM »
A major update!
Going back to the decompiled SCI0 system scripts and comparing them with their SCI01 counterparts using ExamDiff, I have managed to fill in the blanks for nearly every system script. The temp variables and parameters have been identified.
I'd gotten this idea from my recent decompilations of the LSL1, LSL5, SQ1VGA, and PQ3 demos, where I took the extra step in painstakingly identifying all the params and temps I could in their system scripts.
Also, while I'd done this earlier, I'd also created a subclass of InvItem in the main script. This subclass will allow item descriptions to be placed in a Text resource, saving on heap space and simplifying potential translations.

And there you go, the definitive template for SCI parser games is just about complete!

To answer Doan Sephim's question: The reason you see duplicate resources may be because I set the template to be managed as patch files. This is for source control purposes. The interpreter prioritizes patch files over the contents of RESOURCE.000. I have been using Kawa's SCICompanion build.

SCI Development Tools / Re: Decompilation Archive
« on: January 26, 2020, 02:19:23 PM »
And here is the decompilation for LSL1VGA, version 2.1.

So far, there are no known issues, and I've fixed a few script errors I found while playing.
For example, I realized that with the DSelector class, I mistakenly identified the type as "dSelected" instead of the correct "dSelector". This made the list of save games not appear in the save/restore dialog. Obviously, I didn't catch that with the demos.

Next up, SQ1VGA!

SCI Development Tools / Re: Decompilation Archive
« on: January 21, 2020, 08:22:04 PM »
Whew! Here are new decompilations of the LSL1, LSL5, SQ1, and PQ3 demos.
Here, I went through the system scripts, and identified all of the temp variables and parameters I could. The demos all play to completion with no known issues.

As for the full LSL1VGA, I've gone through that game's system scripts as well. I should have a ready decompilation of that soon.

SCI Development Tools / Re: Decompilation Archive
« on: January 05, 2020, 03:33:14 PM »
And here are decompiles of SQ4 CD, Ms. Astro Chicken, and the LSL1 and LSL5 demos!

The LSL1 demo has wide exports, but SCICompanion didn't realize this at first. That confused me when I found that all the procedures were even-numbered. Once I checked the "Wide exports" option in the version detector, the scripts decompile fine.
The demos and Ms. Astro Chicken play through to completion, and SQ4 CD seems to work okay, with a few bugs related to the fact that the game still uses some of the older dialog classes and procedures (moved into their own scripts)

So, what's next? I guess I'll work on LSL1VGA!

SCI Development Tools / Re: Decompilation Archive
« on: December 18, 2019, 08:35:08 PM »
Here are new decompiles of the QFG2 demo and full game (1.105).

The demo plays to completion without any known issues.
The full game, however, is a different story. Script 2 causes the game to glitch up when restoring a save, and 702 (the alley index) freezes the game when entering the alleyways.
It's not possible to visit the Moneychanger without debug (decompilation error in alley 151?), and the prompt to input gold to exchange doesn't appear (this seems to be an issue with INTRFACE.SC)

On the plus side, I did manage to recreate a few disassembly blocks in script code, such as BlueFrogTP, script 810's chAlloc cue: method, and Talker's messages: method. Much of the defines in GAME.SH have been placed into enums, and more global variables have been identified.

And since it's a week away from Christmas, here's a new decompile of Seasoned Professional! It's been tested to compietion.
Now there are no disassembly blocks in this or the QFG2 demo. The reason some functions would not decompile is because they relied on scripts that the game doesn't have. With those scripts spliced in, those functions decompile as intended.

Time for me to move on to SQ4...

SCI Development Tools / Re: Decompilation Archive
« on: December 08, 2019, 07:27:54 PM »
Here are new decompiles of KQ1SCI (demo and full), as well as the demos for HQ1 and Iceman.

The demos all play to completion with no known issues.
HQ1 and Iceman demos use interpreter 0.000.685, while KQ1 (both demo and full) uses S.old.010.

KQ1SCI has an issue where the game sometimes hangs at the rooms where you can plant the beanstalk.
And sometimes, the giant never falls asleep when he gets tired.
These seem to happen intermittently, and I've managed to play through the game to completion with full points.
And one more thing - I manually recreated the death handler.

SCI Development Tools / Re: Decompilation Archive
« on: December 03, 2019, 12:32:39 PM »
Game and interpreter versions?

Ah, yes, I forgot to mention that.

LSL3 is version 1.021, interpreter 0.000.572, and SQ3 is version 1.018, interpreter 0.000.685. These are the versions used in compilations and digital distribution.

LSL2 Amiga is version 1.003, interpreter x.yyy.zzz.

SCI Development Tools / Re: Decompilation Archive
« on: December 02, 2019, 09:22:10 PM »
Finally, here is LSL3. The game plays fine so far, and I've made sure to fix the speed bugs. I also managed to recreate the death handler.

Here's also a decompile of the Amiga version of LSL2! Its scripts are newer, and I recreated the death handler for that too. Now there is no assembly code at all in this one. Perhaps it can be used to make an ultimate patch for the game, similar to the Amiga sounds update for KQ4.

Finally, here is updated source for SQ3. The game's doit: has been fully recreated in script code thanks to researching Astro Chicken's doit:.

Pages: [1] 2 3 ... 7

SMF 2.0.14 | SMF © 2017, Simple Machines
Simple Audio Video Embedder

Page created in 0.129 seconds with 21 queries.