...which is to say that it depends on the I6 variables prior_named_noun and prior_named_list, the latter of which is not directly accessible in #Inform7 by default.
Without getting into every detail, they get set whenever you `say` an object, `say` a list, or say `[regarding <number>]`, `[regarding <object>]`, `[regarding <description of objects>]`.
They're not automatically set just by saying a number; you must use `regarding` in that case if that's what you want.
Maybe I like projects like #Inform7 and #DwarfFortress so much because they are absolutely insane, tilting at windmills with wild abandon. They don’t care that their goals are borderline insane; they plunge ahead and do it anyway, unfettered by the concepts of “practicality” and “sensibility”. It’s a sort of barely-restrained, mad-scientist view: “You won’t stop me! NOBODY can stop me! BWAHAHAHA!”
As a dedicated #Inform7 spelunker, on a recurring basis I wonder "am I the only one who's noticed this?"
The List Writer Internal rule responses have two different entries for "closed" at 'E' and 'O'.
https://ganelson.github.io/inform/standard_rules/S-var.html#SP50
I suppose someone *could* want to rename "closed" as used in the Printing room description details (E) and the Printing inventory details (O) activities independently...
(I assume I'm usually *not* the first person to notice...I'm just a blabbing about #Inform7 outlier)
Don't mind me, toward testing the listwriter, I wrote a script to generate an #Inform7 program to create every combination of container and supporter -- lit/unlit, wearable or not, holding something or not, that thing being concealed or not, that thing being lit or unlit, and also, for containers,
transparent/opaque, openable or not, lockable or not, open/closed, locked/unlocked, then checking their inventory and room descriptions in a dark and lit room, worn or not worn for wearable things...
I've long been in the habit of never using Instead rules to forward an action to a different action in #Inform7 -- unless you have some unusual and unlikely reason to delay it, you're better off with a Before rule. But I've still sometimes been nervous about the before rules ending up in an unfortunate order and screwing things up. I finally thought of an obvious approach.
You may recall how WI 4.16: Names Made in Assembly tells us that one can use either of these:
A person (called its fan) likes every colour.
Every person likes a colour (called his favourite colour).
This construction directs #inform7 to *create* a thing as a side effect of creating another thing on a 1:1 basis.
I’ve been tinkering with #Inform7, #ink, and #twine for writing #InteractiveFiction lately and they are all so good! Each has a different focus but they are all interesting and well thought out and elegant in their own ways.
#interactivefiction #twine #ink #inform7
pull me
twist me
squeeze me
turn me
press me
move me
push me
screw me
Things to which #Inform7 replies, by default:
"You might not like that."
...
I dunno, doesn't sound that bad.
List-writing in #Inform7 uses "and" by default and it's not especially obvious how to switch it to "or".
--
list-writer-conjunction is initially "".
For issuing the response text of list writer internal rule response (C) when list-writer-conjunction is not "": say " [list-writer-conjunction] ".
To say (L - a list of values) with/using (t - text):
let previous be list-writer-conjunction;
now list-writer-conjunction is t;
say L;
now list-writer-conjunction is previous;
In hopes of making a better experience for itch.io players, I've tuned a release of Repeat the Ending for comfortable play/reading. I've also added instructions for "reading" RTE for those who have would prefer not to experience it as a parser game. I hope this is helpful!
#interactivefiction #inform7 #parser
If you try compiling this #Inform7 code (assuming there's a Table of Fish with a name column and at least 1 row...)
To select row: choose row 1 in the Table of Fish;
when play begins:
select row;
say name entry;
you'll get this error:
"You wrote 'say name entry': but no row seems to have been chosen at this point, so it doesn't make sense to talk about the entries within it."
I always you needed a `choose row` or a table reference with `listed in` to satisfy the compiler.
So, I think I've gotten more or less to the bottom of one of #Inform7's secrets...
I've mentioned before that the kinds over which one can iterate with `repeat with x running through the Ks`:: enumerated kinds of value, external files, figure names, sound names, scenes, objects, truth states, use options, responses, verbs, table names, action names, or descriptions of values of those kinds.
Units, aka specified kinds of value, are arithmetic values.
Many #Inform7 debugging commands, like `rules` or `trace` or `responses` can produce a *lot* of output. A convenient way to capture it can be:
echo 'test me'|cheap-glulxe gamefile.ulx > gamefile_testme.out
where cheap-glulxe is glulxe built with the CheapGlk library. (This assumes your code has a test me with the commands whose output you want.) Use dfrotz for Z-machine games.
The `transcript` command is another viable way to capture output.
So... I will attempt to write an #InteractiveFiction using #Inform7.
Here's a small WIP on the first room (and spoiler alert on how to beat the game! 😂)
By release it will look (and sound!) more 8-bit than now.
Wish me luck!
#interactivefiction #inform7 #youarelikelytobeeatenbyagrue
I've had a couple of small improvements suggested for Repeat the Ending, and I'd like to revamp the hints related to scoring. I'll do another (final?) release of Repeat the Ending to incorporate these changes.
Please let me know if you have had problems with it or would just like to suggest something.
No, "I didn't like it" doesn't count as a suggestion! :P
#interactivefiction #repeattheending #inform7
Using #Inkle to prototype out the conversations in my current Interactive Fiction project, because it's easier than using the REALLY fancy Conversation Framework Eric Eve built for #inform7
Once I get the conversation flow more or less where I like it I think it won't be too hard to convert into Inform. But this is faster for now.
And it feels SO GOOD to be interested in a creative project again!
#amwriting #interactivefiction #projectnotes #inform7 #inkle
@spacehobo the clockworkpi uconsole seems also attractive as an interactive fiction appliance ;)
and i need the .gblorb interpreter. i compiled #inform7 some time ago, but that was on #riscv
i completely forgot that the pi zero 1 is armv6. so i cant just copy stuff.