Author Topic: Script patch files  (Read 16767 times)

0 Members and 1 Guest are viewing this topic.

Offline Collector

Re: Script patch files
« Reply #15 on: September 28, 2021, 02:00:21 AM »
Oops #4 means that a given object pointer did not in fact point to an object. It's like a null pointer exception but it doesn't have to be 0.

Do we have a list of the interpreter exception ID numbers anywhere?
KQII Remake Pic

Offline OmerMor

Re: Script patch files
« Reply #16 on: September 28, 2021, 05:26:08 AM »
Oops #4 means that a given object pointer did not in fact point to an object. It's like a null pointer exception but it doesn't have to be 0.

Do we have a list of the interpreter exception ID numbers anywhere?

Here they are: https://github.com/OmerMor/SCI16/blob/master/INTERP/PMACHINE.H#L17-L32
Code: [Select]
#define E_BAD_DISPATCH        0
#define E_BAD_OPCODE          1
#define E_BAD_KERNAL          2
#define E_LOAD_CLASS          3
#define E_NOT_OBJECT          4
#define E_BAD_SELECTOR        5
#define E_CANT_FIXUP          6
#define E_ZERO_DIVIDE         7
#define E_STACK_BLOWN         8
#define E_ZERO_MODULO         9
#define E_LEFT_CLONE          10
//unused                      11
#define E_PACKHANDLE_HEAP     12
#define E_PACKHANDLE_HUNK     13
#define E_PACKHANDLE_FAILURE  14
#define E_ODD_HEAP_RETURNED   15

And their messages: https://github.com/OmerMor/SCI16/blob/master/INTERP/DEBUG.C#L864-L916
Code: [Select]
E_BAD_DISPATCH        "Dispatch number too large: %d"
E_BAD_OPCODE          "Bad opcode: $%x"
E_BAD_KERNAL          "Kernal entry # too large: %d"
E_LOAD_CLASS          "Can't load class %d"
E_NOT_OBJECT          "Not an object: $%x"
E_ZERO_DIVIDE         "Attempt to divide by zero."
E_BAD_SELECTOR        "'%s' is not a selector for %s."
E_STACK_BLOWN         "Stack overflow."
E_ZERO_MODULO         "Zero modulo."
E_LEFT_CLONE          "Clone without script--> %d"
E_VER_STAMP_MISMATCH  "The interpreter and game version stamps are mismatched."
E_PACKHANDLE_HEAP     "PackHandle failure, duplicate table error at $%x in heap"
E_PACKHANDLE_HUNK     "PackHandle failure, checksum error in loadlink at segment $%x"
E_PACKHANDLE_FAILURE  "PackHandle failure, missing handle is for $%x segment"
E_ODD_HEAP_RETURNED   "Heap failure, attempt to return heap at odd address. Address given is $%x "
E_INVALID_PROPERTY    "Invalid property %d"
« Last Edit: September 28, 2021, 05:38:56 AM by OmerMor »

Offline doomlazer

Re: Script patch files
« Reply #17 on: September 28, 2021, 03:33:28 PM »
Thank you, very helpful!

Quick question. I'm trying to track down KQIV AGI ver. 2.0 because it's the only game version with several easter eggs. Does anyone know if it is available anywhere for purchase or was it part of any collection? The only KQIV AGI versions I can find don't have the eggs :(

Offline Collector

Re: Script patch files
« Reply #18 on: September 28, 2021, 03:52:37 PM »
No, none of the collections included any of the AGI versions. The likes of eBay are the most likely to have it.
KQII Remake Pic

Offline Kawa

Re: Script patch files
« Reply #19 on: September 28, 2021, 04:13:08 PM »
Which eggs eggsackly? I have a copy here that seems to include the pirate, beam-up, and rap eggs if that's the one you mean.

Offline doomlazer

Re: Script patch files
« Reply #20 on: September 28, 2021, 04:22:34 PM »
That's the one! I'm interested in looking at porting those eggs to the SCI version.

Offline Kawa

Re: Script patch files
« Reply #21 on: September 28, 2021, 04:27:05 PM »
I had the same thought, actually.

Offline MusicallyInspired

Re: Script patch files
« Reply #22 on: September 28, 2021, 04:31:23 PM »
Didn't NRS already do that for his Ultimate KQ4 Patch?
Brass Lantern Prop Competition

Offline Kawa

Re: Script patch files
« Reply #23 on: September 28, 2021, 04:33:23 PM »
That shouldn't be a reason for doomlazer to not do it and at the very least gain zetta experience. How many others before me have disabled the copy protection on these games, after all?

Offline doomlazer

Re: Script patch files
« Reply #24 on: September 28, 2021, 04:58:23 PM »
I wasn't aware of the KQIV Ultimate patch because it was listed on the wiki under installers and not patches. Looking at the readme, it does include the "Beam Me" egg, which is the largest of the 3. I'll have to verify if "Pirate" and "Rap" are also included, but it seems likely.

I'm wavering on the value of converting these to standalone patch files. Yes, it would be helpful personally in learning AGIStudio, but I'd rather spend my time on something that isn't replicating existing solutions.
« Last Edit: September 28, 2021, 05:20:02 PM by doomlazer »

Offline Kawa

Re: Script patch files
« Reply #25 on: September 28, 2021, 05:17:17 PM »
So... I can remove the copy of KQ4 AGI I uploaded for you? :3

Offline doomlazer

Re: Script patch files
« Reply #26 on: September 28, 2021, 05:20:08 PM »
weird, I installed the KQIV ultimate patch, but I'm not finding any of the egg assets and the game doesn't understand the word Beam. Strangely it disables the copyprotect. Looking at the readme, it mentions "beam me" but doesn't explicitly state it's been included in the patch and the forum link they include is dead. The eggs might not have been ported yet.

I would be interested in the AGI version you have, Kawa.
« Last Edit: September 28, 2021, 05:21:43 PM by doomlazer »

Offline doomlazer

Re: Script patch files
« Reply #27 on: September 28, 2021, 05:30:12 PM »
This little guy was in the KQIV Ultimate patch. Not sure who he his.


Offline Kawa

Re: Script patch files
« Reply #28 on: September 28, 2021, 05:36:06 PM »
I would be interested in the AGI version you have, Kawa.
Check your PMs :3

Offline Collector

Re: Script patch files
« Reply #29 on: September 28, 2021, 05:39:22 PM »
No, my ultimate installer does not include anything from the AGI version. The eggs are the only thing worth importing. If you do manage to convert the eggs to SCI I'll certainly consider adding them to the installer
KQII Remake Pic


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

Page created in 0.046 seconds with 23 queries.