I learned a great word recently: Heisenbug. A bug that disappears when you look at it too closely.
I’ve been looking at transcripts of my comp game, and I see a weird bug that I can’t explain. So I enter exactly the same commands into the IDE interpreter and… no bug! Has anyone dealt with this before? I feel like my hands are tied - I can’t do ‘rules’ or ‘actions’ or any of the other debugging commands that I’d usually use to figure out what’s going on. I’m not even sure if I can run the release version in the IDE so I don’t have to switch back and forth between the interpreter and the IDE.
First, you try the same commands in the release version to make sure the bug exists. Or maybe it’s sporadic.
If you can reproduce it in Parchment, try it again in Frotz – maybe it’s an interpreter bug.
If it really is a matter of debug versus release, go back to the debugging methods they used in Megatherium times: add more print statements. Stick a “say” in every rule you’ve got, and it’s as good as “rules on”.
Okay, so I started off by putting a debug rule in the DPMR. It looks like the release version runs the Asking Which Do You Mean rule without running the DPMR. Is that ever supposed to happen? If so, when?
The erroneous response is “Who do you mean, ?” Which makes me think it’s interpreting my command as orders and looking for the person asked. But even “does the player mean asking someone to try doing something” doesn’t run.