Iron ChIF: Pilot Episode (Pacian vs. Draconis, using Dialog)

You can now play my entry from start to finish!

Okay, that’s a lie, I can play it from start to finish, everyone else probably needs all the extra implementation that will help you figure out what to do.

But my goal of implementing all the puzzles today appears to have been met! I just need to not think about how brittle it probably all is, all the bugs with all the complicated moving parts, all the typos and clunky phrasings… (It’s not working! I think I’m thinking about it!)


Also, it seems we’re posting pictures of fairies?


For a little snippet of code, my handling for the stranger picking things up and/or putting them in his pocket has evolved a bit, to start with through necessity and then through a bit of paranoia.

In theory, he should never hold more than one item at a time… But what if somehow he does end up with more than one thing in his hands? I updated the code to use (exhaust) so that in this situation, if you can find something new for him to pick up, he’ll empty his hands into his pockets, hopefully getting out of the erroneous state.

    %% if he can pick it up he does
    (if)(item $obj)~(useless $obj)(then)
        The stranger
        %% first put down anything already held    
        (exhaust) {
            %% SHOULD only ever have one thing held by the stranger
            %% but let's use exhaust in case of bugs
            *($item is #heldby #Stranger)
            (item $item)
            (if)(ropelike $item)(then)
                (now)($item is #in #AncientSanctum)
                drops the end of (the $item) on the floor and
            (else)
                (now)($item is #in #StrangerPocket)
                puts (the $item) in his pocket and
            (endif)
        }
        (if)($obj is #in #StrangerPocket)(then)
            takes out
        (else)
            picks up
        (endif)
        (the $obj).
        (now)($obj is #heldby #Stranger)
    (endif)
10 Likes