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] 4 5 ... 11
SCI Development Tools / Re: SCI32 Source Code
« on: August 17, 2020, 11:53:51 AM »
One thing I did notice in regards to the view editor - if you modify a view, there's a risk of it not displaying properly in the game. I discovered this when removing the embedded palette from the stock arrow cursor - the lower half of the cursor is gone in the game, but it is shown properly in the view editor.

On the plus side, SQ6 Roger looks simple enough (mostly solid colors instead of being really pixellated like GK1 Gabriel) to recolor into a generic ego. Sometimes the cartoony look pays off...

SCI Development Tools / Re: SCI32 Source Code
« on: August 15, 2020, 09:27:03 PM »
Yes, the interpreter still has MIDI support; I tested it myself. But since the music drivers weren't included, I grabbed the ones from the SQ6 demo.

SCI Development Tools / Re: SCI32 Source Code
« on: August 15, 2020, 06:44:56 PM »
I've put together a barebones template in SCI32. It was built from the Torin's Passage demo. Download it here.

All system scripts are based on the 10/12/1995 source.

I was pleased to find that the interpreter for the Torin demo appears to have no version stamp check. So that's one obstacle cleared.

There's still one other issue: if the resource file is modified, SCICompanion mistakenly auto-detects the format as SCI1.0 and no LOFSA absolute. This results in errors relating to offsets if the resource file is altered any further!

SCI Development Tools / Re: SCI01 Template Game
« on: August 15, 2020, 06:29:37 PM »
I'm 99.99% sure I want to migrate my current project from SCI0 to SCI01!

I only have a couple questions:
1. Is the template generally complete? I guess it hasn't been tested a whole lot, so it's hard to say, but I just wanted to make sure.
Yes, it's just about complete.

2. I have the ability to mass extract resources from my project, but is there a way to mass insert resources while keeping all the same resource numbers, etc? Or am I going to have to do that manually? I have, ahem...a lot :)
If you're managing resources as patch files, it's just a matter of drag-and-drop. Pics and views are fully compatible. Sounds will need to be converted to SCI1.

I tested it with the original debug interpreter (1.001.097), and the white pixels are still there. So the issue isn't related to SCI11+, but rather with the original interpreter. Specifically, 1.001.094 (May 25, 1993) introduced color remapping, using color 254.

My advice when making palettes is thus to not use colors 253-254. The graphics will need to be updated to reflect this.

Look what I've done - I upgraded SCI Quest!

Lots of changes have been made to more closely match the original SCI code. Any SQ5 remnant that is not used has been removed, and the status line is drawn entirely by the kernel, to name a few. The game has been tested to completion.

Get it here.

SCI Development Tools / Re: VGA Parser Template - Save / Restore
« on: July 21, 2020, 06:20:38 PM »
Here's a change I made to Save, in the end of SRDialog:init. Note the "self open: wTitled 15". For some reason, the VGA interpreter (but not the EGA one) doesn't dispose the dialog fully when the window priority is set to 15. It was changed to -1 for SCI1.0 to prevent saving the priority map.

However, this creates another problem - any views that were under the dialog get redrawn if a Print message is displayed in their area.

This change is coded to only affect the VGA interpreter; if it's EGA, it works the same as before.

Code: [Select]
;Add the text to the dialog, and resize.
add: textI,
;open: wTitled 15
;EO: This prevents the VGA interpreter from crashing when
; bringing up the save/restore dialog. However, this creates
; the side-effect of actors popping into the dialog box if
; a Print message is displayed.
(if (Btst fIsVGA)
(self open: wTitled -1)
(self open: wTitled 15)

(return TRUE)

SCI Development Tools / Re: VGA Parser Template - Save / Restore
« on: July 21, 2020, 11:33:16 AM »
Okay, I tested the save script in both EGA and VGA versions of Seasoned Professional. The save/restore dialog works as intended in the EGA version, while its graphics stay on screen in the VGA version. My guess is it's the difference in how the EGA and VGA and interpreters do things graphically. Perhaps I should slightly update that script for VGA compatibility, using bits of the SCI1.0 Save script.

SCI Development Tools / Re: VGA Parser Template - Save / Restore
« on: July 20, 2020, 06:51:15 PM »
I think the problem is that the graphics are still in EGA, not VGA. Further, this is largely unexplored territory here, as no Sierra games ever had VGA graphics and a parser at the same time. I'll need to look into this further.

SCI Syntax Help / Re: Old SCI0 Template Save Bug
« on: July 18, 2020, 06:13:31 PM »
It's a clean fix and holy shit that's a sneaky one haha
It's sneaky and goes right back to SCI Studio. That means this is handwritten, not decompiled code. It was rewritten from an ASM block.

Naturally, when you only have disassembled code for reference, mistakes can be made. With original source for reference, these can be discovered and fixed.

SCI Syntax Help / Re: Old SCI0 Template Save Bug
« on: July 14, 2020, 09:47:49 PM »
Are there any other disassembly blocks left in the templates?

SCI0, SCI01, and SCI11 have no disassembly blocks at all.

SCI10 only has three - in Logger, PolyEdit, and Talker. I can resolve Talker and thus allow for talking portraits. PolyEdit and Logger? Probably not needed.

SCI Syntax Help / Re: Old SCI0 Template Save Bug
« on: July 14, 2020, 06:29:52 PM »
I published my SCI0 scripts here:
Unfortunately I don't have any SCI01 scripts.
I do have some SCI1 versions of SAVE.SC which I haven't published yet.
I'll attach all my versions here.

Just updated my SCI1.0 decompilations and template. Now saving works in all of my templates, and two disassembly blocks are history!

The SCI01 Save script is pretty much the same as the SCI0 one, just with the file kernel functions merged into one, so we're not missing much there.

SCI Syntax Help / Re: Old SCI0 Template Save Bug
« on: July 12, 2020, 09:56:42 PM »
I've been bitten by this before as well.  EricOakford - you managed a workaround for SCI01, would that (or a similar approach) work for SCI0?

No workaround here - the old template's save bug may be related to a newer issue I had in the SCI01 template. Specifically, SRDialog:doit. It can't be decompiled and thus falls back to disassembly. Somewhere in there, something didn't disasemble correctly, resulting in the duplicate saves bug.

The newer templates shouldn't have this problem to begin with, as they use the original source scripts as a basis. With SCI01, all that was needed was changes for the new FileIO function.

SCI Syntax Help / Re: Converting sciAudio to Sierra Script
« on: June 24, 2020, 06:26:13 PM »
@Eric: My main concern with that would be not finding the root cause (in the compiler) and therefore still risking problems with local variables elsewhere. The manifestation of such problems would be highly variable (hah) and difficult to diagnose. Also, if everything is in temporary vars (on the stack), there's the risk of stack overflows.

Okay, I admit it's not a perfect fix, but it's only temporary, since this is a compiler issue. I could also reduce the ,msgBuf array to 100. There's no need for it to be any higher.

I've been working on a new version of LockerGnome Quest Redux in Sierra Script, with the music and sound intact, and replacing MouseLookObj with Sierra's original RFeature and a mouseDown event handler, as was done in QFG1EGA. It seems to be going along well.

6/25/2020 UPDATE: Here it is. The game plays to completion (with voice and music!), but the game crashes with an opcode error at the very end.

SCI Syntax Help / Re: Converting sciAudio to Sierra Script
« on: June 24, 2020, 11:34:27 AM »
Both versions now work correctly. The problem was related to msgBuf being a local variable. By changing it to a temp variable, this is no longer an issue.
Basically, from what I can tell, the script just writes out a file, and the sciAudio daemon then reads that file and plays the sound given. So it seems only the script needed modification.

Pages: 1 2 [3] 4 5 ... 11

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

Page created in 0.139 seconds with 21 queries.