Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Handle unreferenced nouns in the same way that ADVENTUR/CMD does? #2

Closed
ahope1 opened this issue Jan 25, 2022 · 1 comment
Closed

Comments

@ahope1
Copy link
Owner

ahope1 commented Jan 25, 2022

See https://intfiction.org/t/scott-adams-interpreter-discrepancies/48864/102

ahope1
Dec '21
FWIW, after doing some more experiments (see the edits to my previous post), I think I know why my example ScottKit code resulted in ScottFree allowing the player to say BREAK BOLT while ADVENTUR/CMD would only accept BREAK on its own: it’s because my code is missing the noun BOLT, without which ADVENTUR/CMD seemingly can’t match the command BREAK BOLT to any of the given actions.

I had thought that the noun BOLT was also missing from the widely circulated adv05.DAT file, which contains the game data for v1.15 of The Count, but it turns out that it was hiding there in plain sight all along — it’s just that it isn’t tied to any specific item or object. The word BOLT appears only in the noun list (as BOL):

...
"SLE"
"WIT"
"BOL"
"JAM"
"HOL"
"*SMA"
...

When I used ScottKit to decompile the adv05.DAT file, ScottKit omitted the noun BOL from the decompiled code, presumably because it appeared to be redundant. That was what had confused me. I thought that a ScottKit decompilation would accurately reflect the entire contents of the original .DAT file. But apparently not…

I tried to fix my example code by adding the line noungroup BOL in order to force the noun BOL to be present in the game, but it didn’t work: ScottKit omitted BOL from the compiled .sao file!

It was only after I had added called BOL to the definition of the bolt item (and then compiled the code in ScottKit and reformatted the resultant .sao as a .DAT) that ADVENTUR/CMD would finally let me BREAK BOLT as in the “official” release of The Count.

start workroom 

room workroom "workroom"

item file "Large tempered nail file"
	called FIL
	
item bolt "Lockable slide bolt"
	called BOL

item lock "Broken slide lock"
	nowhere

verbgroup CUT BRE FIL TRI
noungroup FIL NAI

action CUT:
	print "Tell me with what? Like: `WITH FIST`"

action WIT FIL when present file and here bolt
	swap bolt lock
	look2
	print OK

action WIT FIL when !present file
	print "Sorry I can't do that"
	print "I've a hunch I've been robbed!"
	comment "NO FILE"
@ahope1 ahope1 changed the title Handle unreferenced nouns as ADVENTUR/CMD does Handle unreferenced nouns like ADVENTUR/CMD does Jan 25, 2022
@ahope1 ahope1 changed the title Handle unreferenced nouns like ADVENTUR/CMD does Handle unreferenced nouns in the same way that ADVENTUR/CMD does Feb 2, 2022
@ahope1 ahope1 changed the title Handle unreferenced nouns in the same way that ADVENTUR/CMD does Handle unreferenced nouns in the same way that ADVENTUR/CMD does? Feb 16, 2022
@ahope1
Copy link
Owner Author

ahope1 commented Mar 5, 2022

Fixed in ee2b64f

@ahope1 ahope1 closed this as completed Mar 5, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant