Iron ChIF: Season One Episode 3 (FLACRabbit vs. dee_cooke, using Adventuron)

It seems the raw hubris of the challenger has left Keyboard Stadium gobsmacked! Not content to test our Iron ChIF's mettle with ONE ingredient, we enter uncharted waters with a combo component! What dishes might be crafted with sticky and uneven dice that must be discarded? At first blush these might seem overly prescriptive: is the point of the game to discard these grift enablers? If not, how might the ingredient be showcased? What is the point of unique-odds dice if not to lean into randomization? Certainly our Kaiju dinner-host judge has thoughts:

So true! While randomization is as old as ‘what for dinner? Mammoth or sabertooth?’, its allure as a game mechanic rarely lasts beyond childhood. No, as we age, randomization becomes something to MANAGE, to mitigate. Perhaps part of the puzzle will be divining the odds asymmetries and putting them to some objective? More than anything, randomization cedes control of the narrative and gameplay to Dame Fortune, and that old gal has ATTITUDE. Must our ChIFs engage some Monte Carlo simulations before the dish is palatable? Can its randomness provide a uniform dining experience, or might each judge experience a different flavor? How much control are our ChIFs willing to concede? These thoughts might plague any randomization-centric game designer… who have the luxury of weeks and months to mull it over!

I find it irresistible to speculate on scenario possibilities. A crooked craps dealer whose mob bosses will not let him quit? Some perverse monkey's paw scenario against the Devil? Dice that control the world, and a quest for a suitably honorable caretaker? As always the ingredient tantalizes us all with possibility as we try to read our inscrutable ChIFs.

Of course I must now dive into the initial preparations of our competitors. Are they happy with what they have wrought? Is there some day-after regret? Or are there thoughts they might not have gone FAR ENOUGH? I for one cannot help but wonder…

What would an upward failing god inflict with these things???

6 Likes

Cf. The Royal Society for the Preservation of Putting Things Inside Other Things in Interactive Fiction

4 Likes

Well, well. I find myself leaning forward now. De gustibus non est disputandum, and all that, but this part of the recipe plan looks very tasty to me.

3 Likes

An age-old musty memory has just been stirred up. My very first Comp Game had gameplay built on random() chance, which I never did again. The result was ironically predictable: it came right in the middle of the ranks, with the notable statistic that it had the widest deviation of player scores. In other words, depending on how the random rolls went, players liked or despised the game experience.

I always meant to figure out a random seed that worked best and hard-code the rotten thing to never be random again.

3 Likes

Whoa!! Another point for object-focused ingredients—but this time, it also defines the object’s relationship to the player. That’ll be a fascinating departure from prior challenges!

As an aside, to me a “set of dice with unique odds” calls to mind polyhedral tabletop-roleplaying sets:

But of course in that case the odds are natural and not weighted! The possibilities for a set of (loaded? cursed? enchanted?) 6-sided dice are also alluring… I share the general apprehension towards randomness, but I also fully trust both contestants to use the ingredient in an engaging way.

4 Likes

Many thanks for the write-up (which was perfectly relayed by that helpful seagull)!

Adventuron’s retro inspirations are obvious, but I never realized there was such a rich history behind that specific style. It’s cool to see nuanced discussion of the system’s pros and cons and technical quirks.

Yes, this is the big thing!!

I admit I have a bit of a love/hate relationship with playing Adventuron games; I find the system player-unfriendly in many ways. But as a rare parser system that’s really built with multimedia in mind, it can also make for super cool experiences!

That’s also what makes it most appealing from my author POV, even though coding-wise I’ve been spoiled by Inform 7’s features. (And I had no idea about the BEEP function, that’s so great! :musical_notes:)

Our chefs have shown good use of graphics and sound in the past, and the challenger in particular is one of the foremost multimedia innovators in parser IF. I’m curious to see how they’ll both use this strength of Adventuron to their advantage, assuming they manage to budget enough time for it!

In my experience Adventuron themes tend to be under-advertised and under-utilized, but font and colour selection can really help with player quality of life! I’d heartily recommend budgeting a least a little bit of time to look over the selection of themes available to the player, if possible.

Customization of parser responses is something I find extremely important, so I’m very happy to see this point!

“Retro” can sometimes be synonymous with “sparse implementation” (if not outright “poor implementation”), but that definitely doesn’t have to be the case.

Both chefs have demonstrated a great understanding of response-crafting in past games—I recall Turn Right (the first Adventuron game I ever played) having very fitting replies to lots of possible actions, and A Smörgåsbord of Pain often delighted me with flavourful responses—so I’m super excited to find out how our contestants will each customize their parsers!

Another aside: Adventuron has (in my opinion) possibly the worst default message for trying to examine an unrecognized noun: You notice nothing special.
Here’s just one way in which that can cause problems:

You are on your front lawn. A blackbird hops around, pecking at the grass.

> EXAMINE BIRD

You notice nothing special.

The blackbird actually has a lovely description full of important clues… but players might never find that description if they first tried an unimplemented synonym like BIRD, or had an unnoticed typo like BLAKCBIRD, because the parser basically told them “nothing to see here, move along”!

On the flipside, Adventuron’s default message for unrecognized verbs is among the most clear and straightforward I’ve seen: Unknown verb - "xyzzy".
It’s arguably somewhat immersion-breaking compared to other approaches, but it has the major benefit of being almost immune to misunderstandings.

With all that said, it’s tough to fully customize a parser even with all the time in the world (never mind 5 days), so default responses can serve as a perfectly good base and safety net where appropriate!

Despite my quibbles with it, I’m very glad to see Adventuron get a turn in the spotlight.

9 Likes

I’m really digging the flavour of the roll descriptions!

A very wise approach! Those snippets already suggest so many intriguing angles and potential combinations…

3 Likes

When I first saw the “weighted dice” ingredient, I had half an idea for a really novel mechanic, but it didn’t quite congeal (to create that perfect Jello-like texture!) until after my first post today, when I thought some more about randomization and gameplay and came up with the other half. So, I drafted the opening scene of the game, which acts as a tutorial for the mechanic.


One problem I often have with tutorial scenes is that they’re kind of slow-paced and boring. Not this one. For instance:

You glance back to see figures on horseback drawing their reins, spread out along the ridge. The Ranger aims his revolver down at you, squinting through the sights.

(I promised you all an action scene; you all get an action scene.)

I am concerned that it’s too hard, or that players might bounce off the very beginning, but on the other hand I feel like making the solutions any more obvious would ruin a potentially very cool “aha! moment”. The beta testers are sure to tell me one way or the other.


Of course, making an action scene play smoothly in Adventuron is not easy, but with the right technical infrastructure, I think it can be made to work. Here’s part of the on_tick handler so you can see what I mean:

   : clear "extended_scope";

   : set_false "time_taken";

   : iterate "time_consuming_verbs" {
      : if (verb_is {(item())}) {
         : set_true "time_taken";
      }
   }

   : iterate "direction_verbs" {
      : if (verb_is {(item())} && (current_location() == last_location) && !(has_trait {subject->(current_location()) trait->("large_t")})) {
         : set_true "no_time_taken";
      }
   }

   : if (no_time_taken) {
      : set_false "time_taken";
   }
13 Likes

The first day of our competition draws to a close! At least for me; I gotta get home and go to bed. Our chefs have astonished and inspired the world by choosing to combine two ingredients: essentially, a plot ingredient (‘ditch the thing’) and an item ingredient (‘the thing is weighted dice’). Wariness but tentative excitement seems to be the order of the day for our judges, worried about the inherent randomness of the ‘weighted dice’ ingredient, but encouraged by the initial revelations of our chefs. Mr. Twang related his own bitter experience with randomness in an early game of his own design, which, if memory serves, prevented even the author from being able to reliably solve his own game! (However, your humble host recalls discovering that liberal use of ‘UNDO’ allowed a path through that delightfully quirky game. But I digress.) And what of Adventuron’s fabled multi-media affordances? For the nonce, such things have not been spoken of by our chefs, but their possibility lingers in the imagination of all who watch.

On to day 2! It seems early to be talking of graphics and sound at this early stage, and yet, with only four days remaining, every day is a late stage, and every moment precious. Let us cheer on our contestants as they forge ahead through this crucible of creativity!

8 Likes

The silver haired coot takes in the challenger’s opening moves, but apart from scratching a fountain pen once again into his notebook, he appears self-consciously to remain inscrutable…

4 Likes

4 Likes

Sunrise over Keyboard Stadium, and our ChIFs have shown themselves ready to tantalize us all with glimpses of their dishes-in-progress. Here, in the condensed timeline of the Iron ChIF competition we kind of speed run the development cycle. This is of course a FEATURE of this event, but for me at least there is some melancholy attached.

If I look at my own WIP, the emotional arc of the development cycle goes something like this:

  1. The extraordinary, heady rush of early brainstorming. Of filling a blank page with disconnected thoughts and mechanics, each ripe with the promise of undiscovered crannies and resonances, then pruning those to a central focus. Truly this is my favorite part of the cycle, the one that most feels like unbridled creativity and potential. Where the Muse's winds are fully at one's back.
  2. The white page craftsmanship of rendering that loose framework in lines of executable. This has its OWN flow state, where you bounce between familiar code constructs that spill from you as easily as natural language, then the quick back and forth of bending code in creative ways and/or discovering capabilities the codebase declined to showcase, like buried treasure. Culminating in the first true Base Sequence of the game.

Our ChIFs hit both these milestones in the FIRST DAY! A necessity to be sure, but does it shortchange our competitors in some fashion, truncating of the best part of the ride? The next steps are less, perhaps not rewarding but less transcendent.

  1. Running at that code, still mostly a scaffolding at this point, and augmenting it with failure messages, alternate solutions, and so so many nouns to implement. The detail work that takes a Mona Lisa-sized frame and pencil sketch and touches every square inch with loving detail. The creative winds shift a bit here. Not yet in your face, truly, but no longer buffeting you along. Effort becomes tangible.
  2. (And this one may be specific to me) The blind panic that all the effort to date has been a deep spelunking exercise up your own backside. That what you have crafted is so inexorably twined with your own perceptions and sensibilities that it will be impenetrable to your player pool. Which spurs a critical pass over the still-wet paint of your work, schizophrenically trying to view it with virgin eyes and shoring up the cuing, revising the gameplay, debating the hint plan.
  3. Either in triumph or resignation, releasing it to your sou chefs and digesting their feedback. If the previous steps were marked by inexorably shifting winds, this one is a maelstorm of emotion: triumph when sequences seem to go as planned, humiliation at obvious bugs and player actions your self-testing failed to expose, yawning doubt on entire swaths of the piece, inspiration on elegant enhancements to gameplay and thematics.
  4. Then this. The long, dark, into-the-wind slog of working off the sous chef's bug list.

There are undoubtedly two more steps: Final Testing/Final Polish and Release. I will need to defer to the other august judges to provide insight there. I seem to be trapped in time loop of steps 3-6, with just enough flashes of 1-2 to keep things going.

How will our ChIFs tack these treacherous winds? Is Keyboard Stadium going to buffet them about like so many dry leaves, or will its unforgiving timeline leave no opportunity to savor the creative winds, relegating their rewards and challenges secondary to the raw ticking of the clock?

And against that ticking clock, does any of this even register to them? I hope so!

3 Likes

On to implementing the midgame. To vary up the gameplay some, I decided to implement a simple ASK/TELL conversation system:

With such a strict time limit, my priority is making this system easy to interact with, not letting the conversation flow entirely naturally. (The keywords in the suggested topics are in capitals; that way, you know you’ll get a response if you type >ASK BARTENDER ABOUT RANGERS, for instance.) My hope is that the NPCs’ characters will shine through anyway.


Also, there will be music. But this time, it is not just simple waveforms from some 1980s microchip, it’s a full production:

(Maybe you will have to ask @severedhand to explain this screenshot on the audience commentary thread.)

8 Likes

I think one of the potential pitfalls of a game element like “randomization” is that I’d consider it more a spice than a main ingredient, and as for spices while some might like “less heat” or “more heat”, nobody likes “pepper spray”. My advice to the contestants is a very pragmatic: taste as you go! Keep those Scoville levels in mind.

Some of my favorite game randomization pepper sprays:

Look the Other Way game (from Super Mario RPG)
The Blue Dog (from Legend of Zelda)
Slots-of-Death (EGA version especially! from Space Quest)

And if the viewers at home would like to try their hands at a not-too-spicy pepper-forward dish, I’d like to recommend the seasonally appropriate Hatch Chile Frittata!

6 Likes

Day 2 and I’ve been concentrating on getting most of the puzzles coded today. This means that the whole code is currently in a very half-done state with ‘WRITE THIS!!!’ comments everywhere and everything held together with string and prayers. But there is (most of) a game there now! Which is not something I can usually say on day 2 of a project.

I’d probably better get cracking on the room descriptions, most of which are still ‘You are in a room’ placeholders. Here’s a first go at the Place of Living:

place_of_living : location "You are in a narrow place lined with huts. The path leads north to the middle place and south to the field. You know the villagers are all sleeping in the huts, but there's no need to quieten your steps. Nobody can see or hear you at the moment." header = "Place of Living";

Location names (and map) subject to change. It’s a process.

Lines of code so far: 1,739

9 Likes

AMË’S SALOON

Well, Agnes, it appears that our visiting Adventeroons have revealed a more, shall we say, adventurous palette than we anticipated. They have produced the pestiferous diaeresis. In the common space! Well, I never. I mean, perhaps once, as a youth abroad, on some dark alley hot plate sheltered beneath a frayed awning from the summer evening rains. But never in such a refined kitchen as ours. They’re even more bumptious than I initially believed! In my day, we used one byte per character, and 128 characters were all the ingredients we needed to satiate even the most refined palettes. None of these exotic “high ASCII” or Unicode characters. What will they produce next: circumflexes and macrons and tildes? Oh my!

Agnes, prepare the bleaches! We’ll need to sanitize upon the termination of this session.

7 Likes

I must say, while I enjoyed this first-person account of the author’s intense recollections of the creative process, the heady mix of sensory metaphors and allegories of virgin eyes, of every touched square inch, of backsides and faces and buffeting, and of still-wetness and ripeness, and what I consider the unforgettable imagery of pruning ripe undiscovered crannies, I don’t recollect ever feeling this stimulated by the activity.

On the whole, or should I say in general, since I had so much experience in the Speed-IF competition circuit, this overall description of the six gears of the vehicle that get you to the finish line, bolting together the thing you’re driving while sometimes paving the road ahead of you, that is very familiar. I guess we have different ways of describing recreation, but in essence we agree upon the experience.

And sometimes you win the race in a triumph, and hoist a trophy overhead, and sometimes you’re in a gaseous fog of radiator steam in a ditch somewhere, staring uselessly at the wrong toolbox you apparently brought along.

However! This is about cooking. Imagine the serviettes now being placed with an array of utensils. What in the land o’ Goshen is this little spoon going to be for, do you suppose?

5 Likes

Mark Twang, mostly unable to stifle an out-loud laugh at his fellow judge’s remarks, scribbles a note on a piece of paper, tears it out, and waves someone over from behind the cameras to make a judgment call of some kind.[1]


  1. Is it permissible at this time to ask the author how in their minds they imagine the umlaut-ed name is to be pronounced? Because otherwise I will have to slow down each time I come across it and take one of 3 guesses, and never being able to settle on any particular one will make me additively cranky. ↩︎

2 Likes

There are no strong smells wafting from the challenger’s half of Keyboard Stadium (which is probably good), but some interesting sounds are emerging from it:

ironchif_1.mp3.zip (905.5 KB)


The midgame is still under construction, but some significant pieces have been put into place, including one of the most important puzzles, and some more NPC dialogue and interactions:

@Ally is right about themes being useful for setting the mood. Adventuron’s ability to switch theme at runtime means that I can pull off an effect that I wanted to add to A Smörgåsbord of Pain, but couldn’t because of Glk limitations.

It’s also worth mentioning that I got rid of the infamous “You see nothing special” problem Ally alluded to above. In this game, you won’t have to worry about thinking you’ve examined an object, but in reality having missed a clue.

7 Likes

The wizened sourpuss takes in the latest update while idly tugging at his earlobe. This time, the camera can see briefly his notebook, “…no smells yet, but sounds :musical_note:…”

As the technical advisor has sold me in some detail, the sound and graphics abilities of Adventuron are part of its nature and to be explored and exploited, and consequently part of the overall consideration. It would be base and ignorant to do otherwise as a judge. What I am thinking as an example is if one participant goes to town with non-textual bells and whistles and another purely focuses on text, there is a possibility of imbalance that cannot be corrected by, say, refusing to be wowed and turning the speaker off, because the playing field is Adventuron, and its capabilities are available to all.

What I reflect beforehand considering my own biases and conflicts of interest as a hobby musician, is that it is not the hi-fidelity of the music per se, but how its use enhances the interactive storytelling in particular, and some well timed deployment of BEEP calls could be valued as equally effective when it’s time to rate the experience.

This is a long winded monologue that should have remained internal, but the upshot is that the mp3 is lovely and composed with skill, but you only get a half point for being a musician on the side.

The camera catches in clandestine close-up a handwritten footnote: “sforzando - fav. word of the week” as it pans away…

6 Likes