I like reorganizing my Inform 7 project with volume/book/part/chapter/section headings (Ryan Veeder’s mnemonic “Very Bad People Choose Sin” will never leave my brain. Thanks, Ryan.) to better suit my need to fly around lengthy code. It’s a great way to pretend to be working on my game when I should be working on my game.
Is there something you find oddly satisfying while tinkering with your game? Any system.
before doing something
or after reading a command
or after doing something
it’s the thrill of danger, I think
Scope rules, too, a very similar experience
e: I also like doing scenes just to have them in the index. Scenes index is weirdly satisfying to me.
e2: rules that check the current action against a table value! I especially like making up actions with very literal, readable names and putting them in tables. I guess I like a lot of things in Inform 7
Sometimes I’ll have an if/otherwise in Inform which only applies to a few things. For instance:
A fruit is a kind of thing. The apple is a fruit. The orange is a fruit. The pear is a fruit.
Instead of attacking a fruit:
if the noun is the apple:
say "It fights back hard, but you prevail, splattering it.";
otherwise if the noun is the orange:
say "It tries to roll away but you stomp it to pulp.";
otherwise if the noun is the pear:
say "It bites you and wobbles into the shadows, growling."
There’s no need for a general “otherwise,” because there aren’t any more fruits. But it twingles me to put one in anyway:
otherwise:
say "It explodes, killing you instantly!";
end the story finally.
So satisfying to have in-jokes with myself. Also dangerous if I add another fruit later.
I like tracing logo fonts and game artwork in vector art programs to reduce the path data to absolutely bare minimum file sizes, while still keeping accuracy. Almost all font files are way oversized, I’ve discovered. Like, by factors. There’s something so satisfying about pushing Bézier curves over the largest span possible.
I’d love to teach a university/college course for graphic artists called This is how you effectively create vector paths, you wasteful little shits! - 101.
This is my version of the Twine logo, for example. (Feel free to use it in your projects if you wish.)
My vague impression is that it’s supposed to be a branching path and only (unfortunately) coincidentally looks exactly like an R, but I don’t know for sure
I love making rare cases where something happens (eg. If you did one tiny particular action earlier in the game, or an NPC’s relationship counter is down, then the text you grt for a lot of responses is slightly different. Half of my next WIP is based around this (not really, but it happens a lot).
what I often find oddily satisfying, nay, utterly satisfying is abusing language/libraries into undesigned but useful results. Perhaps descends from my coding 8 bit machines during the 80s (an era and hardware where with a well-placed POKE you get interesting unusual behaviour; provided that isn’t a large-screen PET, of course…)
of course, this imply that the successful field test against Isekai source code of adv3Lite 2.0 is more successful than seems…
another odd satisfaction is in finding in released source code interesting insights.
Putting in all the locations, connecting them together and then walking around the game map is always oddly satisfying for me. Even without puzzles, there’s a buzz from creating a little textual game world.
I have learned my lesson. “One King to Loot them All” was not really designed with map makers in mind. So for my WIP “Pack Rat” I started with creating a map. Filling in all the blanks and getting some cohesive whole is very rewarding. And indeed, taking a stroll through the environment is pretty cool, even without any actors or things to do.
Now about those actors: Creating a “responsive” NPC is a lot of work but very rewarding as well. At least now I will be able to properly “handle” misbehaving players like inveterate noodlers and experienced beta testers… I hope!