I’ve happened across what seems to me a very useful tool for plotting out the dependencies of puzzles: Vizon.
For this first part, I’ve left out all the syntax, for clarity.
You write a series of event statements, e.g. “get_crowbar”, “open_chest”, “get_treasure” etc. and link these with a series of depends_on statements. So the “get_treasure” event might have “depends_on open_chest” associated with it.
Vizon then parses those statements into a dependency chart: a series of bubbles each named after its event, with arrows pointing from the earlier events to those dependent on them. I realize that this is hardly necessary in the above example, but the event statements don’t have to be in any particular order: it’s the “depends_on” part that controls the ordering of the dependency chart.
So let’s make that trivial puzzle a bit less so. Let’s make a pair of rubber gloves necessary for gripping the crowbar, and also a strength potion that’s a separate solution.
So (with full syntax this time):
get_rubber_gloves : event {}
get_crowbar : event {}
use_crowbar : event { depends_on [] = get_crowbar, get_rubber_gloves; }
get_strength_potion : event {}
get_treasure: event { depends_on [] = open_chest; }
open_chest : event { depends_on [] = get_strength_potion, use_crowbar; logic_gate_type = or }
And the tool will revise the dependency chart with arrows showing the direction of play necessary to solve the puzzle’s stages; in the case of opening the chest the arrows go to a big “OR” diamond.
All well and good; an excellent and useful tool, I think. But it doesn’t have a manual, and when I save it, Firefox tells me it’s saving a TADS 3 library file. I’ve looked on the if archive for Vizon and can’t find it. Useful as the tool is, I don’t want to spend hours working on puzzle dependencies using it, only to have all that work vanish when I close my browser!
Can anyone more IF or TADS3 savvy shed any light on the matter?
(For now, I’m simply saving the contents of the left pane as a text file.)