Westbury Mystery

Games for Spectrum, C64, Amstrad, Amiga, Apple ][ and the rest of the 8-bit and 16-bit platforms. Pleas for help, puzzles, bug reports etc.

Moderator: Alastair

Message
Author
User avatar
auraes
Posts: 148
Joined: Sun Jul 12, 2015 6:13 am
Location: France
Contact:

Westbury Mystery

#1 Post by auraes » Fri Nov 20, 2020 7:28 pm

I had decompiled the game Westbury Mystery, by Dorothy Millard, with UnQuill, and this had revealed the presence of corrupted data. After contacting John Elliott (the author of UnQuill), it seems that it came from the game's disk image. It is therefore possible that the distributed game is not fully playable. I don't know if there's an undamaged version anywhere...

User avatar
Strident
Posts: 1001
Joined: Fri Aug 12, 2011 2:57 pm

Re: Westbury Mystery

#2 Post by Strident » Fri Nov 20, 2020 8:22 pm

Where did you get your copy of the game from?

Presumably Dorothy has a copy?

I think the IFarchive has copies of the files that were on Dorothy's old web site...
https://www.ifarchive.org/indexes/if-ar ... llard.html

User avatar
auraes
Posts: 148
Joined: Sun Jul 12, 2015 6:13 am
Location: France
Contact:

Re: Westbury Mystery

#3 Post by auraes » Sat Nov 21, 2020 7:00 am

I've looked at several copies including Dorothy's site and the one from ifarchive, but it seems to be the same everywhere. I had contacted Dorothy about this issue, but I didn't get an answer.
I would have to test the game to make sure the bug is not coming from Unquill or the snapshot or whatever, but it's quite long. If I knew the original database code that seems to be damaged, it would be easier; it's between "TWIS *" and "JUMP *" in the Event Table .

Code: Select all

1d59: TWIS *     Conditions:
                 Actions:
 ccd:               MESSAGE   3 
 ccf:               DONE   
 cd0:               ??28?? 
 cd1:               INVEN  
 cd2:               ??24??    6   22 
 cd5:               ANYKEY 
 cd6:               ??29?? 
 cd7:               ANYKEY 
 cd8:               ??3b??
 1d5d: JUMP *     Conditions:

User avatar
Strident
Posts: 1001
Joined: Fri Aug 12, 2011 2:57 pm

Re: Westbury Mystery

#4 Post by Strident » Sat Nov 21, 2020 1:41 pm

Very odd... Even the "readable" parts of that TWIS * entry seem potentially mangled and wrong, so it does make you wonder if the rest of the database is similarly garbled.

I've not played any of Dorothy's C64 games... I only played the ones that got Spectrum ports back in the day.

ahope1
Posts: 68
Joined: Sun Mar 18, 2012 7:33 pm

Re: Westbury Mystery

#5 Post by ahope1 » Mon Nov 23, 2020 12:53 am

I managed to play the version from the IF Archive, and, making no attempt to solve the game myself, I just followed Dorothy's walkthrough -- which, by the way, has a few minor errors -- and I was able to complete the game with a 100% score:

E3A69C8B-AC85-491D-927A-06F95CF27F72.jpeg
E3A69C8B-AC85-491D-927A-06F95CF27F72.jpeg (248.58 KiB) Viewed 4681 times

Incidentally, the game seems to be large, complicated, and quite fiddly. I imagine it would be frustrating to try to solve it without help. One of the least fun sequences in the walkthrough was this:
GET RAG (it blows away), E, GET RAG (blows away again), E, GET RAG (blows away), W, W, W, GET RAG (blows away), E, E, GET RAG (blows away), W, GET RAG (blows away), E, E, GET RAG (at last you get it)
:x

User avatar
auraes
Posts: 148
Joined: Sun Jul 12, 2015 6:13 am
Location: France
Contact:

Re: Westbury Mystery

#6 Post by auraes » Mon Nov 23, 2020 6:35 am

It's a good thing that the game is playable, maybe the damaged code only affects default answers to standard verbs, but not useful to finish the game.
I hadn't thought of this before, but maybe for these games made with The Quill, Dorothy organized her code a bit the same way. I'm going to look at the other games, and see what's after TWIS * and the verbs she gives a default answer to, but doesn't use for these games.

User avatar
Strident
Posts: 1001
Joined: Fri Aug 12, 2011 2:57 pm

Re: Westbury Mystery

#7 Post by Strident » Mon Nov 23, 2020 8:50 am

Does the rest of the database look okay apart from the section you've posted? We've used unQuill on some heavily modified Quilled games in the past and, although the database initially looks readable, it quite often it doesn't make much sense when you look at it closely... especially if the data has been shifted slightly in memory as part of the modification.

If the rest of the database is okay then you could potentially identify what the garbled section refers to by looking at the vocab list; remembering that the Quill will list the tables in vocab order.

Even what's readable in that garbled section looks odd... INVEN followed by some sort of object/location check and then a couple of ANYKEYs.

User avatar
auraes
Posts: 148
Joined: Sun Jul 12, 2015 6:13 am
Location: France
Contact:

Re: Westbury Mystery

#8 Post by auraes » Mon Nov 23, 2020 9:06 am

Strident wrote:
Mon Nov 23, 2020 8:50 am
remembering that the Quill will list the tables in vocab order.
I hadn't even thought about it! There's JUMP right after the TWIS, so there doesn't seem to be anything missing (maybe another JUMP as there are many of them). The remaining code in the database seems to be correct.
John Elliott modified UnQuill because the code in Westbury Mystery made it crash. That's no longer the case, but the problem remains in the decompilation of the code.

ahope1
Posts: 68
Joined: Sun Mar 18, 2012 7:33 pm

Re: Westbury Mystery

#9 Post by ahope1 » Mon Nov 23, 2020 2:27 pm

Westbury Mystery has a "RAM save" feature that allows you to save your position in the game in RAM rather than to tape or disc.

Was RAMsave a standard feature of Quill on the C64?

❓

User avatar
auraes
Posts: 148
Joined: Sun Jul 12, 2015 6:13 am
Location: France
Contact:

Re: Westbury Mystery

#10 Post by auraes » Mon Nov 23, 2020 3:41 pm

No, there is no RAMSAVE or RAMLOAD instruction for The Quill or Adventure Writer C64 (I tested). The Quill-AdventureWriter-Reference document, from Strident, indicates that only the Sinclair QL has it.

User avatar
Strident
Posts: 1001
Joined: Fri Aug 12, 2011 2:57 pm

Re: Westbury Mystery

#11 Post by Strident » Mon Nov 23, 2020 5:11 pm

The QL had a native RAMSAVE/RAMLOAD command and the Spectrum version had Ramsave through The Patch. I'm not familiar enough with C64 Quill (or C64 Quilled games) to know how authors manage to implement it in that system. A third-party code tweak could easily explain the issues with unQuill etc.

User avatar
Strident
Posts: 1001
Joined: Fri Aug 12, 2011 2:57 pm

Re: Westbury Mystery

#12 Post by Strident » Mon Nov 23, 2020 5:22 pm

This section...

Code: Select all

 cd0:               ??28?? 
 cd1:               INVEN  
 cd2:               ??24??    6   22 
 cd5:               ANYKEY 
 cd6:               ??29?? 
 cd7:               ANYKEY 
 cd8:               ??3b?? 
is not connected to the earlier TWIS * entry. as that terminates with a done. So the section of code above seems to be one, or potentially two, different entries that site between TWIS * and JUMP *.

I'm guessing, given the JUMP entry below, that the garbled code should also be a JUMP * entry.

Code: Select all

1d5d: JUMP *     Conditions:
 cd1:               AT       36 
 cd3:               WORN     22 
 cd5:               WORN     41 
 cd7:               WORN     59 
                 Actions:
 cda:               MESSAGE  94 
 cdc:               ANYKEY 
 cdd:               DROPALL
 cde:               GET      22 
 ce0:               WEAR     22 
 ce2:               GET      41 
 ce4:               WEAR     41 
 ce6:               GET      59 
 ce8:               WEAR     59 
 cea:               PLUS     30    3 
 ced:               GOTO     68 
 cef:               DESC   
So... the question is, what might it refer to? Time to look at the message table and see if anything leaps out. The inclusion of the INVEN condact is strange... unless that is a result of the corruption.

User avatar
auraes
Posts: 148
Joined: Sun Jul 12, 2015 6:13 am
Location: France
Contact:

Re: Westbury Mystery

#13 Post by auraes » Mon Nov 23, 2020 5:24 pm

Strident wrote:
Mon Nov 23, 2020 5:11 pm
I'm not familiar enough with C64 Quill (or C64 Quilled games) to know how authors manage to implement it in that system. A third-party code tweak could easily explain the issues with unQuill etc.
On the C64, the RAMSAVE/RAMLOAD is handled by the interpreter. A SAVE/LOAD instruction displays the message 32: "Disc, Tape or RAM?"
Last edited by auraes on Mon Nov 23, 2020 5:30 pm, edited 1 time in total.

User avatar
auraes
Posts: 148
Joined: Sun Jul 12, 2015 6:13 am
Location: France
Contact:

Re: Westbury Mystery

#14 Post by auraes » Mon Nov 23, 2020 5:29 pm

Strident wrote:
Mon Nov 23, 2020 5:22 pm
Time to look at the message table and see if anything leaps out.
Yes, perhaps a message is not being used or some of them do contain a clue.

ahope1
Posts: 68
Joined: Sun Mar 18, 2012 7:33 pm

Re: Westbury Mystery

#15 Post by ahope1 » Mon Nov 23, 2020 10:53 pm

Excerpts from a couple of documents in the C64 download of Quill at 8-bit.info suggest that Westbury might be a game made with the Illustrator package, which provides the RAMsave feature:
Attachments
Untitled 2.png
Untitled 2.png (32.1 KiB) Viewed 4604 times
s.jpg
s.jpg (123.3 KiB) Viewed 4604 times
Untitled.png
Untitled.png (7.33 KiB) Viewed 4604 times

Post Reply