Affrontotron should be allowed to explain itself:
Mike Roberts wrote: "This actually has practical applicability to IF, too. You could imagine a game where the winning conclusion is reached by typing GO NORTH 1,000,001 times in a row, and every time but the 1,000,001st, the response to GO NORTH is "You can't go that way." (It wouldn't be a very fun game, but it's still a possible game.) If an automated winnability evaluator were given a limit of a million turns, it would incorrectly call the state unwinnable."
*** Annoyotron IV: Affrontotron ***
has just been uploaded to the incomig directory of an IF-Archive mirror near you! Either I've implemented the game Mike describes above... or I haven't! Is it winable? You decide!
And when we start the game, the only text we get is "You are in a small room with no visible exits. You must escape." As is to be expected, there is apparently nothing we can do. Can we escape by typing "n" a million times, or not?
There are two approaches to this problem:
1) Brute force. It was easy for me to create a string of one million "n."s, but unfortunately, I think Inform 6 or my interpreter has a maximum input buffer far smaller than 2 million signs. So brute-forcing by hand is impractical. Someone more knowledgeable about computers than I am might be able to hook an input generator onto an IF interpreter, but I have no idea how to do this. Anyway, you can only use brute force to show that the program can be won, not to show that it cannot be won.
2) Decompiling the game and seeing whether it can or cannot be won. The author writes that "(No fair decompiling it - that's cheating!)", but really, who is he to judge? I'll play whatever game I want, and in my game, decompiling is not cheating.
The game does contain the following text: "The wall finally falls down from the beating you've been giving it, and sunlight shines through! You've escaped!" (Message S109.) So that would seem to indicate that it can be won. However, S109 is only displayed by routine R0250, which is never called. Now I am not an expert in decompiled Z-code, so perhaps this doesn't mean anything; but on the face of it, I would say that it is suspicious. There are other routines that do not get called, though, and I'm not sure if TXD generates full game information or not. If it doesn't, there might be some part of the game that calls R0250 which I just didn't see.
So in the end, my guess would be that the game cannot be solved, but I am far from sure. May others come and do better. As a puzzle, I actually kind of liked it, which is why I give it two stars.
Previous | << 1 >> | Next
Frotz takes a while to process all those moves, but finally you do break through to earn what's maybe the lousiest of all last points.