Kawa-oneechan / SCICompanion

SCI Companion - an editor for Sierra SCI games, altered.
18 stars 7 forks source link

Default room script crashes #23

Closed clarkjoe closed 1 year ago

clarkjoe commented 1 year ago

SCICompanion version: 3.2.4

When a new room script is debugged and the default Ego is moved, the room crashes with the following message:

Screenshot 2023-08-13 124815

I don't know the nuts of bolts of the failure, but I do know why it crashes. The default new room script, calls the &getPolygon procedure ((gRoom addObstacle: (&getpoly {}))). This fetches the "empty string" polygon. However, a new pic has zero polygons by default. So the new room script tries to access a nonexistent polygon; thus, resulting in the crash. Correct or improve this explanation if needed.

The SCI compiler emits the following debug statement when accessing a nonexistent polygon: Unknown polygon name in &getpoly. This message is helpful, but the crash is frustrating when wanting to simply create a new room script and pic.

A possible solution is to comment out the getpoly procedure by default. A comment can be included to inform the user to uncomment the line once one or more polygon is added to the pic.

Furthermore, after the crash, when starting the game from the beginning, the following bug appears on the title screen:

Screenshot 2023-08-13 124838

I do not know what happens for these strange characters to appear in the title menu. Clicking on any of the options results in the following error:

Screenshot 2023-08-13 124923

Kawa-oneechan commented 1 year ago

I've seen the second thing before and had a whole investigation and consequent meltdown about it online. I ended up fixing it here: https://github.com/Kawa-oneechan/SCICompanion/commit/40bc1070f4c0fb2c1506c36d5e1217ecfe6a6933

I'm very happy to hear about the &getpoly issue, though! I wasn't aware of that but that's a great solution.

Kawa-oneechan commented 1 year ago

With the new nightly out, you should be able to confirm if things work.

clarkjoe commented 1 year ago

I pulled your changes locally and built and ran it. The new script includes the changes and a new room does not crash on Ego move.

When I downloaded and extracted the night build (SCICompanion-Kawa-Win32-2023-08-15), I get the following error when running the executable:

Screenshot 2023-08-15 082001

From the dialog, it seems I have to find an already working SCICompanion release directory and replace the SCICompanion.exe with the new executable from the new release. Is that really the way to run the nightly releases? I would think the nightly release zip would contain everything to run SCICompanion on its own.

Kawa-oneechan commented 1 year ago

I would think the nightly release zip would contain everything to run SCICompanion on its own.

I thought it did 😹

Edit: It does! The nightly is almost as big a download as the last manual release!

Edit the second: it looks for include\sci.sh specifically. And that's included in the nightly.

Kawa-oneechan commented 1 year ago

I'm going to assume things work now.