> get punishment
Timeline
? Inform 7 creates a .materials folder by default which didn't want to commit straightforwardly so: I deleted it. Hope that doesn't bite me in the ass? It probably will.
Initial design and thinking
Hi, this is my first entry for this thing (though I wrote a bit about it in a notebook significantly earlier on I think?). In my sketch in my game idea list I wrote
> There is a boulder here.
So that's helpful. But actually it does get a little bit at the spirit and what I'd think was funny/interesting about the game. That is, using the language/style/techniques of text adventures to yet again translate the punishment games. To me it's just funny recognising things like "There is a boulder here" as an "equivalent" representation of the graphics of the original game.
It's been a long time since I used Inform 7 (since Kicker to be precise, which was back in... 2012... holy shit). So I might as well consider myself to have exactly no experience with it. I'll probably need to do a tutorial to remind myself of the basics again. I'm also wondering if it works on mobile? Does it? Anyway if not then: not. So a key todo is a tutorial.
Beyond that there's the individual levels. And then there's the concept of the menu system.
It seems obvious that everything should have a sort of narrative framing, including the menu system? So that the way everything gets done is via that.
Puzzles?
Obviously a major feature of text adventures is the idea of puzzles you solve to make progress. So one thing I need to decide is whether that's going to be part of the idea here. One option would be to have a puzzle for each task which, on completion, lets you perform the action, but then the action is reversed as per usual. Alternatively one could have various red herrings that make it seem like adequate completion of the task is possible by solving a puzzle, but then it always turns out it doesn't work.
No puzzles?
Or is having puzzles just asking for trouble because it would require a ton more labour on my end? I guess it would also potentially distract from the "purity" of form that most of these games have had too - it's not about deception, it's always clear you can't escape/can't make it through the task and so on. Hm.
Probably the right thing to do is just get my hands on Inform 7 and try to build a sense of it and then make decisions from there.
Content
One thing I'm pretty aware of is the question of how much content there needs to be, how many layers of looking at things, having conversations with people, and so forth. But that's probably kind of modular? There's going to be a core structure that I can implement minimally and then from there it will need to get more or less deep.
"Menu"
Okay so it seems like it's not as fun to just choose which punishment to experience and teleport right into it, rather it feels like there's an opportunity to have the menu be a part of the adventure.
As such, I think we could involve Charon and the River Styx in terms of getting into the game? e.g. maybe you start in front of Charon and have to tell him who you are in order to get transported to your punishment? A simple little conversation, could even be a puzzle if you don't know your options - he could say you're not on "the list" and you have to sneak a peak at his clipboard to find out the options. Once you tell him who you are on you go. (Maybe a multichoice dialog thing instead which fills out with correct options once you look at the clipboard?)
So you you tell him your name and he drops you off at the appropriate punishment spot. Seems reasonable.
Sisyphus
Clearly
> There is a boulder here.
And also
> push boulder
And you need to be able to look at, smell, touch, taste etc. the boulder. It should probably be the only thing there.
Do you need instructions from Zeus? Or is it so obvious that you would push the boulder?
Can you walk up the hill without the boulder? Yes I think that would be funny? Except that it's pretty weird because it's like evading your punishment by going on a nice walk? But the actual task is to push the boulder up. So maybe it's still funny because it's the only thing you can "do" in the end.
If you needed instructions how would they work? Probably just a sign? Maybe quite simple, a bit of comedy. Signed by Zeus at the end?
Clearly you push the boulder and it goes uphill for a while until it rolls back down. I like the idea that the hill is multiple parts so you make progress for a while? Like you push the boulder and it goes up the hill to the next room? THen you walk there and it's there. If you do anything except push it, it rolls back down. If you keep pushing you get to the top but then it rolls away. If you run down the hill you see it exit each space as you get there. Har har?
I think that can be quite satisfying. Maybe just three "rooms" worth of hill? Maybe more?
What if you could secretly pick up the boulder and walk up the hill, but even then it just falls out of your pocket at the top and rolls back? Or you try to drop the boulder and it rolls down. There could be a little demarcated spot to leave the boulder with an arrow or something.
Prometheus
Well I guess obviously Charon (or Zeus?) would have to actually help you into your chains on arrival? Or would you get into them yourself? That would be kind of funny, but really the myth is that you get put in them so maybe that's not so funny. Though there's something hilarious businesslike about the idea that you actively participate in your participant and kind of consent to it? Can try both ways I suppose.
Once you're in you can see the eagle in the distance and it gets closer over a few turns. Then you can
> struggle
> writhe
and so on. When you do that the eagle hovers up just like in the game, but it comes back. You lose liver over time (should there be something in the status bar perhaps? Or maybe your liver is in your inventory actually? That would be pretty funny.)
Once your liver is gone night falls for a few turns. Maybe you could sleep at that time? And then repeat. Eagle comes back. Once the eagle arrives you get
There is an eagle here.
Whereas while it's coming it's more just that you see it in the distance.
Tantalus
Well clearly we have
> get apple
> take apple
> drink water
> get water
And so on, with the object then not allowing you to take it. But also clearly needs
There is an apple and a pool of water here.
Or similar to assert their presence. Why would you not just leave? I don't think Tantalus is chained up is he? Or is he? Or Sisyphus for that matter. Guess we need some kind of magical boundary. Or alternately you're just in some kind of cave or on an island or whatever so that it simple isn't possible. Or there's just no exit and so it's not something you can do. Should account for things like leave and exit and so on.
In this one we should totally recreate hunger and thirst messages from some other game. Does Colossal cave have that? Like You are getting thirsty. and so on?
I mean it would be really fun if each game had some more specific reference to an already existing game or trope somehow? But probably too much to ask given my kind of lack of knowledge in this area.
Danaids
Clearly you need to
> get water
> put water in bowl
Or whatever? You need some kind of carrying device. And then put water in bath. And then it empties. And you can look in the bath and see that it's empty.
Can you drink the water? It's bathwater. Ha ha.
Seems simple enough?
Zeno
This one is interesting. I guess you could actually create the footrace here? In which case you're racing a tortoise? It sets of, and then you run in the same direction, and then it's perpetually just ahead of you? (This would actually be a different version of the myth to what I present in the game which is the idea that the finish line is where you're headed. Might be better to stick with remediating my games rather than the myths themselves?)
In which case I guess you want something like
> run east
> east
Maybe it encourages you to run? But maybe you don't have to?
Each time you go halfway, so I guess different amounts of time elapse between scenes. Should maintain the distance display? Or maybe just have it say things like you are really really close and so on? It's all in the discussion of how close you are to the finish-line. Almost like you could touch it. (But then maybe you try to touch it and you hand move half-way and then halfway and so on? Hee hee ha ha?)
Sounds okay.
IFCOMP?
So IFCOMP doesn't really allow me to release the game until October so I think: no. Also just feel like the community probably won't be into it, so I think I don't bother. Sorted.
Let's go?
Seems like I have thoughts on how to do it all. So I "just" need to relearn Inform and then I'll start building? I guess I can do the tutorial in the actual project file so as to run into any bullshit it has planned for me in connection with Git? We'll see;
Updates after beginning with Inform
Okay well I did dig into some work in Inform 7. Did read through documentation, started an Inform project to actually begin building, made some headway, and ran into some walls too.
Key learning: Inform is pretty straightforward at the most basic level of rooms, items, people, all with descriptions. All fine, no problem. As soon as there's the slightest subtlety or anything, though, it becomes really quite difficult. Spent a lot of time trying to get a "talk to" command to work so you could > talk to charon and never did make it work. It's undoubtedly possible, but it was very hard. More broadly, even the most simple "conversational" stuff I want to do with Charon is hard and I have no idea how to do it. So that's a big hurdle.
I guess a lot of the nicety stuff is just going to be hard, whether that's getting coverage of weird things that might get typed or offering different default messages or what have you. I should just ignore it and plow through to get the basic game working, but it's hard to let things go.
In many ways it doesn't have to be hard, I guess the big fear with any interpreted game is just that the player will get stranded and not know what to do. That said, all the things are very, very simple, so maybe not so hard?
Here's a revisit of what I need to do now I've at least touched Inform. I'll just do Charon and Sisyphus because if I can get them both to work I've got a skeleton playthrough. It may be worth testing early.
Charon (aka the menu system)
On the banks of the Styx. Charon is there with his ferry. You have a coin (ideally in your mouth). You need to read the list of names on his clipboard and then tell him you're one of those people and give him the coin. Then you get into his boat and he transfers you to your punishment. I guess that can be pretty much instantaneous.
So the key tricks here are:
- Conversation with Charon, specifically how to tell him your name (should this be "say Sisyphus" or should it be multiple choice? Or something else?) then give him the coin then get into the boat. And preventing other stuff - no getting into the boat before telling him your name and giving the coin. Can't tell him your name with a coin in your mouth. Can tell and give in either order? Or maybe force tell then give? Probably.
- Moving to a new room once in the boat. It's a vehicle so should be able to transition to the new place? May need different descriptions of the boat depending on the player's vantage point (in it or not).
Sisyphus
A scene at the foot of a hill. There's nowhere else to go. Could be surrounded by water. Maybe you've forgotten how to swim? Ha ha? There's a boulder. There might be a sign or a letter from Zeus that Charon gives to you as you get off the boat. It explains you need to push the boulder to the top of the hill. Do that and you can leave. So then you can push the boulder. It moves between, let's say, three or four rooms leading to the top of the hill, then rolls down.
Doesn't feel like there's a bit trick, but obviously I need to understand
- Pushing something between rooms, I think there's the idea of something pushable
- Automatic rolling back in response to no pushing or reaching the top, turn based rolling
Might want that idea you can mysteriously pick the boulder up and put it in your pocket. What are you wearing? And it falls out when you get it to the top etc.
So?
Ugh. There's no obvious way to just think/design my way out of this. The majority of my problems are simply about not understanding how to express ideas in Inform at the level of syntax and at the language level and at the conceptual level. Oh boy. Oh boy. This is tough. It's probably a great life lesson about the power of working in systems that you already understand and thus can express yourself in without running into low level operational issues. Reminds me somewhat of activity theory right now. I'm stuck at the level of operations and they're not very interesting to think about?
Do you guys like anything?
Sounds grim. However, I do think there are interesting things about all of this. Most notably I think the way that Inform 7 is so focused on the idea of building a coherent world is a very interesting and different way of representing the ideas in this game. To take a simple example I noticed while reading the documentation, the fact that I can make the apple in Tantalus edible is really interesting to me - such that it has an ontological status despite the fact I'll obviously prevent the player from taking and therefore being able to eat it.
It's funny that there's this extreme "physicality" involved in this totally text-based world. That there's a bunch of simulation that goes on under the hood and it perhaps adds to the authenticity of the whole thing, which I think relates favourably to the overall project.
Something to continue thinking about anyway.
? Holy shit this is hard, I'm really struggling to work effectively with Inform 7. I think I probably need to sit down and write about this a bit in process to get my head around what is making me struggle so much, as well as the ways in which it's potentially interesting.
? This is the first commit with an attempt to include a release of the game in the .materials folder (for my own release I'll have to move that stuff to the root I suppose, which is awkward, but also completely fine).
? Still trying to get a reasonable sense of how easily I can have playable builds as I go along with this. Inform 7 places releases in a subfolder by default (the materials/Release) folder which is a teeny bit arcane, so I think I'll manually shift the working build into the root of the repository so that the playable build sits where my other JavaScript stuff has traditionally, making it easier to just link to the playable version. It means remembering something which is annoying, but I think it's the better choice that having to go into a weird subdirectory.
? It's taken a lot of fiddling but I do feel like I'm adjusting to Inform 7 life. At this point it's really quite satisfying to look at what exists now. You start with a coin in your mouth, the game signals it's there and you have to open your mouth to get it out. You can't pay Charon until he knows who you are. You can't say who you are until you sneak a look at his clipboard. Some nice dependencies for a simple "puzzle". Although I'm realising that it might be pretty dull for someone who then reloads the whole thing? (Though really it's just open mouth, x clipboard, talk to charon, and pick a number, pay charon, get into boat. Not that bad?)
? The physicality stuff is already working well. The coin is "really" in your mouth. You really have to give it to Charon to pay him. You really have to get into the boat. And so on. It powerfully feels like a place more than you might imagine.
? This is getting more fiddly as I go but I think it's still worth it? It will undoubtedly lead to scenarios where I a) forget to build at all, b) build but forget to move the build, c) build, move the build, and forget to rename the play.html to index.html. Nonetheless, it's cleaner this way right? It means the location of the playable game stays the same throughout development rather than moving around depending on what I'm doing.
Sisyphus rolls, Vorple, Exit, Next steps...
Sisyphus rolls
I've done what I think is the basic structural work required to make Sisyphus work now. You can push the boulder uphill and if you stop pushing (by doing something else, say) it will roll back down. Also if you reach the top of the hill with the boulder it will roll back down on its own. Also you can walk to the top of the hill without the boulder.
That's about all there needs to be right? It's not meant to be a complicated sort of thing? And the rest revolves more around flavour? Smelling the boulder etc.? But not too much flavour because I suspect the more flavoursome the more irritating repeat readings are? This is all pushing into areas of writing fiction that I suppose I'm deeply out of practice with (though I used to fancy myself for this kind of thing).
Vorple
I read about a more flexible interpreter that might allow some CSS magic and which I'm thus inclined to try just to have a bit of control over how things look. There is some cachet/fun in just having a super bland default, but I do think I might at least like the option?
Exit
I just realised it's weird if you can restart? Or is that okay? Similar to reloading the page. At the very least it's not saying you escape from the punishment, it's a total reset of the whole system right?
Next steps...
I think it's probably semi-smart to flesh out Sisyphus next, make sure it holds together well and that it has the right level of entertainment, etc. And then to test it out with a couple of people (e.g. Rilla, my parents) to make sure it's possible to actually get through all this stuff? Basically I'd like a throughline from Charon to Sisyphus that would feel roughly "final" to see how the whole thing lands.
Fleshing out would include identifying all the default verbs in Inform 7 and giving them some flavour I suppose? A light sprinkling of paprika?
Right now, skipping ahead, the ad hoc life, happy times, and now...
Right now
So at this point I think I've implemented a lot of the bank of the Styx. Notably you are there with Charon, you have a coin in your mouth, you need to look at the clipboard to work out who you can be (the menu system effectively), and then talk to Charon to choose an identity, then pay him the coin, then get in the boat. That's the majority of the sequence, with the "last thing" being to move the boat to a new location for Sisyphus's punishment.
Skipping ahead
This morning I thought it would make sense to provide a "skip ahead" cheat for players once they've gone through the opening "puzzle" once to just type the name they want and to teleport to the punishment. Think I can do that.
The Ad Hoc Life with Inform 7
The experience of using Inform 7 has definitely been a major challenge on multiple fronts, notably:
-
I find that I don't write to-dos because I don't quite know how to phrase units of work in this environment - quite a weird experience actually, since to-dos are usually really important to me. Here, I'm just totally unclear on what counts as a unit of work. Or at least I'm scrambling so much it doesn't feel valuable to pretend I'm super organized about it?
-
I don't quite think through design in as detailed a way - same sort of issue I guess. When you don't quite know what's possible it starts being more of a response to the tool within the parameters of your broader ideas? So I have the broad strokes, but I'm kind of relying on Inform 7 to suggest ways of getting things done (as well as my hazy thoughts about how IF works as well, e.g. puzzles)
Happy times with Inform 7
A lot of the above can be cast as positive experiences for me. Being a fish out of water means that I'm forced to engage in a pretty detailed way with the technology. As I said earlier, there's a sense of being at the "bottom" of the activity theory division of operations/actions/activities here. Each syntax errors drops me to operations, and then occasionally I'm fluent enough with the syntax that I get to take actions toward goals. Definitely not feeling like a holistic activity though, not integrated, plenty of contradictions. It doesn't feel good, but I think it's likely making me think in different ways.
Because Inform 7 is just such a different representation, and that's a lot of fun. The "infinite possibilities" of text combined with its underlying ontology means you end up with a decent amount of guidance on how to do things (I'm not fighting the system here), while still being pretty free to use it in aid of what you're doing.
So it's constraining, but nice. It pushes me to think about objects, possession, containers, conversations, etc. Many of which I don't ever think about because most of what I do is much more locked together and less systemic. So the comparison to previous "standard" editions of this game should be quite fruitful I think... much more of an "world" than the others.
And now...
And now I want to get from Charon to Sisyphus and start Sisyphus. Things are getting easier I think. Some of the basic formulas are coming together for me. I believe I might be able to get something shaky together over today?
? I think it actually works? Of course I'm now totally blind to its complexity, but I don't think it's asking all that much from people and pretty much signposts each step along the way pretty clearly too.
? One thing I ran into this time was the whole issue of the salience of different actions in different contexts which you have to account for. Talking to Charon after you've already told him who you are doesn't make sense, for example.
? The whole writing process is definitely helped by going for pithiness and by having Charon be deeply uncommunicative.
? Finally managed to get the basic dynamics of a boulder you can push uphill and that rolls back down if you stop trying and also when you reach the top. A great deal of help obtained from the Zorb example in the documentation here: http://inform7.com/learn/man/RB_6_9.html
? I spent a bit of time trying to implement a version where if you tried to push the boulder while it was rolling downhill (e.g. you push it up, then run downhill, then try to push it as it rolls toward you) it would instead push you backward down the hill. The idea was that this would kind of mirror the dynamics of the original game, where you are connected to the boulder. However in this version I think it actually makes more sense and is more pleasingly dispiriting that Sisyphus has to trudge back down the hill after the boulder. This is a kind of continuation of that question of to what extent I'm remaking the game itself or the spirit of the game as a recreation of those punishments. The latter allows for more flexibility and potential for expressing ideas in the new technology I think? Anyway, let it be known that's a decision. (Somewhat made because, frankly, I struggled to get the "pushed backward" version working anyway.)
? Now that I have the skeleton I guess I have to ask myself whether it needs instructions or whether it's simply obvious to type "push boulder"? I think it is, but I'm me.
? It's quite satisfying to be spending some time like this just writing, thinking about characters, coming up with cute responses to unlikely actions etc.
Research Questions - v1
I'm writing this after having struggled with Inform 7 for a while in order to put together a basic menu system (Charon and his ferry) and the Sisyphus scene of the game. So this is not really pre-development hypothesizing, but them's the break.
Translation across media: Using Inform 7
Boring, but yes this once again fits into my ongoing interest in what happens when you take a game design or "game" and try to remake it in a different technology. The original punishment games are in the style of track-and-field retro games. This one presents them as a text adventure.
It's already clear that this leads to really different ways of thinking about the games despite the ultimate goal of presenting the same "story":
Narrative menu
The menu system turned out to be weirdly important in that I quickly ended up feeling like it needed to be as narrative as the rest of the game so had to come up with an actual scene rather than just buttons or selections, hence Charon and his ferry. There's something interesting about going from a list of five options to this quite fleshed-out version of a "menu".
Text-adventure culture
The call of the text-adventure has a bunch of conventions in my mind that I can't help but want to adhere to culturally. So I have a couple of things that look very faintly like puzzles (the coin in the mouth, stealing a look at the clipboard), because text adventures have that - you want a bit of indirection as you go along I suppose. Likewise I've found that it seems necessary to have little points of interest in the world for the player to look at so it's not just totally functional - a narrative version invites that kind of telling.
Inform 7 ontology
The ontology of Inform 7 has a genuine impact on how it feels to implement all this stuff as well. Inform 7 literally works in terms of objects, vehicles, things that open and close, walking places, getting into things, carrying things, giving things, and so on. All of these are built in and can be used to compose your experience and lend a kind of creedence and scope to the world that isn't there in previous versions of this game. There's more of a sense of being there, I think, than previously.
Sequels: A body of evidence
Of course we have the building experiment of making the "same game" over and over. This is the ninth version of the game I've made so we have this kind of body of evidence accumulating about what different approaches to design and implementation have on a more or less constant base.
Part of this involves me asking myself the question of whether I'm trying to make games out of the original myths or whether I'm trying to make games out of the original game from 2011. I often flip flop around on this, usually landing on the idea that I'm trying to make a new game "in the spirit of" the creation of the first one. As such I don't need to make a game that mimicks the first game's qualities, but rather possesses the same kinds of connections to the original, perhaps the same tone etc. too.
At some point I suppose some larger study could be done of all of the games to make some sort of case or set of observations about game design.
? Wrote room descriptions for the parts of the hill which was kind of fun. It's minimal for right now and I think I may prefer that. I added a couple of small points of interest (some grass, a hole, a note) just to break things up and to tempt the player into stopping pushing for a moment so that the boulder will roll away. I think it's pretty funny.
? Might be ready for testing this slice?
? Simon shared some really helpful basic rules to follow:
- Always have a description for
x me - Always have items for all first-level nouns (e.g. things mentioned in descriptions)
- Consider having descriptions for second-level nouns (mentioned in the first-level descriptions, etc.)
- In outdoor areas think about the visibility of distant objects/scenery
? I'm sure he has way more than that of course, but that was enough to require substantial effort on my part.
Designing Prometheus
After my claims of comfort and ease with Inform 7 how about I try to think through how I would put together the Prometheus section?
So the big things are
-
The player needs to be chained down to the rock. Clearly we can implement a system where if the player is chained then they can't do anything other than struggle and look. BUT how the heck do they get into the chains? Should it be voluntary? It's not in the myth, it's clearly something that is done to him. Should stick around to help you into your chains? Perhaps so.
-
The eagle needs to come and go on a schedule. I know something about scheduling from the Charon stuff with the ferry, but the eagle would be more complex than that. In particular it should only start to arrive when the player is chained (fine if Charon does it as a part of his exit message). It should take some number of turns to get to the player (3? 4?) then land. If the player thrashes it needs to hover for a couple of turns (or a random number?) then land again. When the liver drops to zero it should leave.
-
Need a struggle/thrash/writhe command. Hint those by denying all other commands by saying all you can do is x? Could also just allow the player to thrash when they try to do anything physical while chained? Like if you try to move in a direction you writhe in place instead, and it dislodges the eagle. "try writhing instead", ha ha.
-
Representing the remaining liver could be done in a couple of ways. It might be funny for the liver to be in your inventory, but it makes almost no sense. You could also look at it (with the liver being a part of the player). Maybe you can crane your neck and see and make a guesstimate of how much is left which will turn out to be correct. Could also have the "points" system be a representation of the liver in the status bar for this level. Makes sense too. Maybe bother.
-
When the liver is at zero night should fall which would mean changing the room description. And scheduling the eagle's return and the liver's regeneration. Maybe some "feelings" as the liver comes back? Or instantaneous?
Okay well I guess that's actually kind of it? Have a go?
IF Cultural Feedback, What if they don't push, Familiarity breeds todos, Next
IF Cultural Feedback from Simon Christiansen
At this point I now have a (relatively) polished version of Charon + Sisyphus scenes. I sent the initial version to Simon Christiansen (one of my favourite IF writers - e.g. PataNoir) who kindly looked at it and gave me some of the wisdom of the IF community. I wrote the key takeaways down in the list of todos but I'll repeat them here:
- Always have a description for
x me - Always have items for all first-level nouns (e.g. things mentioned in descriptions)
- Consider having descriptions for second-level nouns (mentioned in the first-level descriptions, etc.)
- In outdoor areas think about the visibility of distant objects/scenery
(He also found my "long drink of stagnant water" description of Charon to be confusing, maybe a cultural thing or maybe just a horrible attempt at a play on a long drink of water.)
It's so helpful to be able to find out about conventions like this, and it's an interesting case for me of genuinely wanting to know about and implement standard elements. Part of me wants to say this is because I'm so edgy and only care about pushing against the boundaries, but the reality is that it's important to be able to put together a convincing version of whatever you're making, even if it's ultimately about making something that with contradict the principles of that genre. For previous games I've been working with forms that I suppose I'm just better informed about (retro-style games, Sierra games, UI design, etc.) and so have implicitly known the kinds of things that mean they hold together properly even as they controvert various things. For IF I simply don't know enough, so it's nice to have some basic rules to follow.
What if they don't push?
One thing I started to wonder about with Sisyphus is whether it's wrong to allow the player to opt out. Technically you could just wander around indefinitely without pushing the boulder, which is maybe not what the game is meant to be about.
It's not really clear from the myth why Sisyphus does actually push the boulder up the hill? When you see or read portrayals of this, it's just that he's kind of "sentenced" to do it, but there's never any obvious compulsion beyond that? Is it just that he accepts his punishment? Does the word of Zeus mean he can't help but push the boulder? Per Camus, does he just want to push the boulder?
In my previous iterations it's always been a binary situation where the only "real" action in the world is to do the punishing action (e.g. track-and-field the keys or slide the slider), and so opting out looks more like just not playing. In the IF version you can both not push the boulder and kind of wander around.
One response to the freedom issue in this iteration is just to say that this kind of freedom is no neglibible that at some point you'd end up pushing the boulder just to feel like you're accomplishing something.
Another response is to incentivise the punishment (maybe Zeus is implying if Sisyphus is a good guy and does it long enough he gets out or something?). I could give the player a point every time the boulder reaches the top of the hill? That might be pretty funny.
A final response would be to get cute with it and kind of force the issue, having the player suddenly teleport back to the boulder with an implication that they find themselves in position to begin pushing. Maybe eventually even automate their pushing.
I think there's comedy value to that option, and it would be the most intricate to implement, but thinking about it right now I think that the points system is the most nicely balanced. It's an "incentive" in this really trivial bullshitty way that games lead us to do all kinds of Sisyphean tasks after all, so it's fitting that it would be the thing here. In the original game, of course I assigned "failure" points because I was really trying to ram home the sadism of the experience. But here I think it would be legitimate to genuinely award points, even with the standard notification. I think there's something to that.
Familiarity breeds todos
I notice that as I'm becoming more comfortable with Inform 7 it's proving more possible to think in terms of units of work/design/implementation for the project. Where previously it was a big mess where I just didn't feel like I could predict what would be doable, now it feels like there are specific tasks I can put into practice. Even different forms of work, from implementing things at the level of logic, to fleshing out descriptions, to writing first-order descriptions, and so forth. Good.
Next
Couple of tweaks to Sisyphus and then I think it's reasonable to start writing the next one. Prometheus seems like a fun challenge.
? Also fixed a bug where I was checking whether Charon had the obol instead of whether it was in his pocket. Apparently these are two different things. I'm sure you can write a rule to make them equivalent, but there you go. Life in the ontology of Inform 7. Quite fun actually.
? The points feels like something. I thought about giving a point at the summit and then removing it when the boulder gets to the bottom of the hill, but it's a little complex because you have to account for pushes up that don't reach the summit. This way you're getting a point each time which is incentivising perhaps. Also like the announcement of the point which makes it feel more significant.
? Nothing too impossible so far, though did notice I'm still getting confused by the scope of actions. The sisyphus movement default messages were showing up for Prometheus too which is undesirable, needed to scope them better to the room they applied to.
? Getting better at defining custom values and using them, such as the proximity of the eagle and the percentage of liver remaining.
? The scheduling stuff is getting easier. Kind of suspect there are ways to be smoother with a bunch of this using tables, but perhaps not. The game is simple enough that it doesn't feel like a great big deal to me. It's pretty satisfying at this point, the core gameloop is there just without the ability to convincingly writhe as yet. Still proof of concept my friend!
? It clearly remains to fill out the scene and make it feel more detailed, more things to look at and think about, some hints about writhing as an action and so on. But it works, the logic is in. Probably there are still breaks but I'll fix those as I find them.
? It's getting easier to use this software that goodness. This whole thing of building out a world in the context of what was originally intended to be an incredibly bare, stripped back experience is really quite interesting.
Tantalus-ed
So Tantalus is largely implemented and is pretty satisfying. I still need to make it more fun and interesting, but that mostly involves writing stuff and finding ways to include more detail and depth in the whole thing which I believe I can do in a different pass (that would also help with consistency of writing potentially).
Zeno?
Zeno seems like a weird one to do well. How would you create this kind of impossible space in a way that feels relatively true to the way that Inform 7 works?
- You could have a series of rooms of course, culminating in a looping set of "nearly there" kinds of things.
- For one thing it seems fair to express distances linguistically rather than numerically, which frees me up from floating point precision.
- Another way to display distance/proximity to the flag would be in the room title parenthetical? This would be an "enclosure preoposition" which is kiiiind of weird and wrong? But maybe you could vary the text in there as a way of indicating it. The iffiness would come from the representation below being that you're... in the flag? On the flag? All these things are bad. Oh but maybe there could be a track, you could be on the track, that would be fair. So you're "half-way along" the track and then "three quarters of the way along" and on until we break down into poetic descriptions of tiny distances?
All of this would be controlled by saying something like run north I suppose?
What if they want to then run south? You'd be trapped in the same scenario right? Except you'd be running back to the start line. So would I have A stony beach (running toward the start line, half-way along the track)? That won't work because "the track" is a single big thing, so if you reverse could you would get half-way to your destination but not half-way along the track. It would be much easier if you could just arbitrarily set a parenthetical text.
- So failing that room title parenthetical the other option is to just do it in the room description itself, with it telling you how close you are to the flag. Has the same issues around running in a different direction, so perhaps the sensible thing is to demand that the player runs to the flag first and foremost and then they could hypothetically run wherever they want after they've finished the race?
- Maybe we can at least have "at the start position" and "on the track" at the top, they can both be supporters.
There are shades of Alice in Wonderland here it feels like, or rather Through the Looking Glass I think? Where they're running furiously just to stay still.
Now, here, you see, it takes all the running you can do, to keep in the same place. If you want to get somewhere else, you must run at least twice as fast as that!
And as per usual I suppose it's good to have a few things to look at, ideally including a lol somewhere in there (this one from Archimedes).
I mean, I think there's enough to try and do this. Probably I need a table of description inserts to describe the proximity to the flag. Maybe a number tracking how many times they've run that way, and at a certain max it just randomises "nearly theres".
I'll try it out.
User flailing, Prometheus and flavour texts, Tantalus and the unattainable edible apple, Tantalus design thinking
User flailing
My mother tried out the version I created with a Charon and Sisyphus slice of the game. It did not go well. Other than somehow mysteriously finding the note from Zeus despite never intentionally leaving the starting level, she fell at the first hurdle and couldn't get the coin out of her mouth. Looking at the transcript is pretty instructive in terms of a vision of how a person might react to being told there's something in their mouth. spit was the first reaction which is great and should work. open mouth was never even close, and points out that the reason open mouth seems "obvious" is more to do with IF culture and particularly with the idea of seeing things as "containers" such that if something is in something else you always open it to get at it, despite the fact this isn't always very natural language, perhaps particularly for bodies?
I'm not totally sure what to do with it as I do think my mother's probably not the target audience, but the idea of people flailing around in the opening area and never making it onto the ferry is dispiriting for sure. I think I definitely need a 'help' command that could at least profile the sorts of commands you can expect to use in the game (OPEN, UP, PUSH, GIVE, TALK TO, LOOK, LOOK AT, etc.). That would give some direction - the game isn't remotely about parser fighting.
So I think for now a help is the way to go and then just hope for the best? I think you have to assume some level of willing enculturation into IF world to play these things, rather than providing every plausible verb?
Also the coin could fall out when you go to talk to Charon? That would also be amusing, though then no longer remotely a puzzle and more like a flavour? I think that would be okay.
Prometheus and flavour texts
I implemented pretty much exactly what I wrote about above and it was pretty much as straightforward as I could hope for. It feels somehow more bland than Sisyphus did, I suppose just because there's literally nothing you're really doing as a player? The most obvious thing would be to add a bunch of stuff to look at. So you can kill time. The main thing you can look at would be the eagle and the rock, and then the scenery which might include the river and the beach.
It's weird thinking about this whole flavour text thing - I clearly have a drive to make the experience "interesting" in a way that has never been a priority in the other forms at all, they've always had their one trick/idea and then that's that, you don't get finer details or things to think about beyond the main proposition. In IF it feels like you can't do that, like the most basic simulation would effectively not be a use of the form at all, and so you need to lean into the writing at least a bit.
That feels necessary for Prometheus to be complete.
Tantalus and the unattainable edible apple
I feel inclined to move to Tantalus next just because it's been vaguely in my mind in terms of the whole idea of an edible unattainable object being quite nicely expressible in Inform 7. I really like the idea that the apple is edible despite the fact you cannot eat it. This feels really distinct from the games prior to this where the apple is effectively a red square and either is or is not included in an animation sequence representing you getting it, as such there's no reasonable sense in which that apply is edible. (If I'd thought more deeply about these facets of the game I might have though to have an animation of eating the apply but make it impossible to trigger, effectively what I'll be doing here. But this is the thing that Inform 7 bring to the table in a lot of ways right? Thinking about the properties of objects rather than just the representations and actions.)
As such I think that's next.
Tantalus design thinking
So what do we need for Tantalus?
- Well the thing that weirds me out right now is the question of why he stays standing in the pool of water? What do online sources have to say about this? Here's quote from the Odyssey via https://www.ancient.eu/Tantalus/
I also saw the awful agonies that Tantalus has to bear. The old man was standing in a pool of water which nearly reached his chin, and his thirst drove him to unceasing efforts; but he could never reach the water to drink it. For whenever he stooped in his eagerness to drink, it disappeared. The pool was swallowed up, and all there was at his feet was the dark earth, which some mysterious power had drained dry. Trees spread their foliage high over the pool and dangled fruits above his head – pear-trees and pomegranates, apple-trees with their glossy burden, sweet figs and luxuriant olives. But whenever the old man made to grasp them in his hands, the wind would toss them up towards the shadowy clouds. (Odyssey, 11:582-593)
-
So basically Tantalus stands in the pool because he has to stand in the pool, he might as well be chained there, he is compelled by the will of the gods, etc. As such in the IF version there can simply be no exit - could consider explaining it when the movement fails (e.g. you don't feel like it, or you feel you shouldn't) or could consider just a literal "You can't go that way" default response which is kind of apropos and I do like leveraging the materials to hand.
-
Given he's in a pool we'll need a similar thing to Prometheus with Charon guiding the player to the pool I suppose to get them situated in the place they cannot leave. The tree can just be on the beach, so seen from the boat. On getting out you end up in the pool and that's that.
-
Note that in the Odyssey the water is up to the chin which is higher than in my games previously (to the waist). I suppose I can go with the imagery from my game rather than the Odyssey? Interesting question though because I really went with certain choices in part because of graphical limitations which I don't have in this form. There's only one apple originally just to be graphically clear, but there's no reason there couldn't be many now. That said, I do think the conceptual clarity given by the single apple is probably appropriate here too? You know what you're mean to try to do.
-
I like the detail that the wind blows with the branch out of the way, that can be included.
-
Most basically: you're trying
get appleandeat appleandget wateranddrink waterrepeatedly and they never work. Beyond that you can look around and perhaps try things like jumping and climbing the tree. -
Details include the tree, the apple, the water, maybe a note carved on the tree lolling at you, the beach, the river, ...
It doesn't seem overly complex, feels like I can get this one done today?
? Had to make the pool scenery to prevent it from displaying in the room description. It feels very slightly wrong to do this because it makes me feel like I'm saying the pool isn't a functional part of the scene, but that's not really what scenery means in Inform 7. Just means it's immobile and not in the set of objects listed. So I feel like that's okay.
? Made the apple part of the tree which technically means you can't pick it up ("that seems to be part of the tree") which feels wrong since you should be able to pluck it. Oh wait I can use 'on'! Okay so now the tree is a supporter and the apple is on the tree, which feels reasonable. Okay that makes me feel happier about the underlying nature. The apply then "could" be taken, it's just that, well, it can't be. Could versus cannot. Nice one.
? In the end this one is very very simple, as I kind of though it might be. Still need flavours but the basic stuff is there.
? Oh except I want a hunger and thirst system. That will make it funnier and it's appropriate to feeling the punishment.
? Basically you just get an annoying message every turn about how hungry/thirsty you are. It's pretty funny though and does add to the frustration involved in the whole thing.
? You can now run from the start line toward the flag with increasingly fractional descriptions and you can't walk (because it's lazy). But there are plenty of niggling issues going on with it for now and it's pretty damn bare bones.
Zeno-ed, IF niche, Danaid?
Zeno-ed
So Zeno is "done" now. It feels pretty bare bones, and each subsequent level feels less exciting to some extent as I get more and more used to writing things in Inform 7's weird language, you start to develop a kind of blindness to the workings of the tool the more comfortable you are with it (this is the whole operations > actions > activities thing happening live in this process). As such these things are feeling slightly bland. That said, I think a lot of that is also because I'm focusing on getting the core mechanical aspects working properly before I try to make the game entertaining. (Not to mention that game isn't really ever going to be that entertaining anyway. It's punishment, right?)
IF niche
Have definitely been thinking and worrying about the potetially extremely niche nature of this project. Somehow it seems more niche than chess to me, I guess just because at least most people know what chess is and have some faint understanding of its objectives, hopefully enough to get the jokes in that game. With IF it's like a whole other world that demands really different skills and thinkings from activities people are comfortable with.
This has had me revisiting the idea of delaying the release of this game to coincide with IFCOMP instead at least as a way to get some insiders to play it. I fear that otherwise maybe nobody will play it? On the other hand, delaying sucks I hate delaying.
Danaid?
The final level to put together is for the Danaid. Some design-ish observations:
-
There's whole thing of which Danaid you are, maybe I can make something of which of the 49 you are? At least just assign a random one to the player at some point? Or maybe just not bother being cute when it won't impact the play?
-
This one involves some reasonable "serious" manipulation of stuff in the game, notably multiple receptacles to move water from one place to another, with it draining out on a timer. It's probably not that complicated in reality, but it seems lightly daunting. Not least because I don't have a super clear vision of how to present it (maybe sticking with the earlier game depiction is smarter - a fountain/faucet, a container, a bath)
-
Again has the opportunity to have "true"(ish) underpinnings in terms of substances in containers moving around
-
Only seems to need the one room
-
Should be able to get into the bath etc. for hilarious non-bathing messages
-
I guess this is the least clear of all the punihsments now I think about it? How are you supposed to intuit that you need to get water and put it in the bath and then bathe? That's a lot to take in. But I haven't had instructions to this point. Maybe you're just told to take a bath (Charon) and from there the various failure methods will do the job to guide you toward your futile task (e.g. there's no water in the bath to start with).
-
Looking on line there's basically no evidence that the Danaids are trying to bathe! Yikes, where did that come from then? Instead it's just that they're meant to fill a vessel that has holes. Jugs to fill a basin apparently. That's it. Maybe there can even just be a note on the basic "Fill me. Lol. Zeus"? Heh. And then there's just a jug and a water source handy.
-
A HHGTTG babelfish joke is plausible if someone tries to do anything to the holes in the basic?
I think I can proceed with this.
? Jumping and touching and getting off have special answers
? Fixed the fractional descriptions leading to "so close" descriptions
? Ran into boring difficulties around get and pour water. The documentation does warn about liquids. I should read their liquids examples a little more closely and see if there's some help there, it's just so fiddly. Still, I'll nail it eventually of course. Not much interesting to say about it though. This is a classic moment where the whole container thing is kind of sucking. Maybe I need to model the water better and have it actually be in the jug or in the fountain etc.? Yeah probably.
? Slowing getting there. Thought I found a wonderful package that would do everything for me, but it had a compiler error and I wasn't really prepared to deal with it. I might still look at the source and try to understand how the hell it works. Inform 7 is cooooomplex.
? I think one (probably painfully obvious) insight involved here is that you're better of trying to do everything with the built in actions, even if they seem stupid. And then to kind of paper over them with new verbs that will shade the meaning. So that "pouring water into the basin" is secretly "inserting water into the basin". And so on. That does seem to make life that much easier at least.
? Overall it's semi interesting that this scene has been absolutely the worst to create, for reasons I can't totally put my finger on. I suppose because it's about moving things around and that just turns out to be frustrating. It's the scene with the most moving parts, and this has been true in other cases as well, it has the most distinct actions involved.
Skeleton exists, help needed, editing
Skeleton exists
Perhaps it's too modest to say it's a skeleton, but I have essentially a working throughline for all scenes in the game that work and do what I think I want them to do. It's been a hell of a hard time getting to understand Inform, and the more I use it the more clear it is to me that there are much, much cleaner and better ways to use it to the effect I want - but I just don't think I want to invest the energy required to achieve a more impressive mastery? Do I want to make any more text adventures? It's possible I do of course, but gee it's really pretty hard stuff.
Help needed
Really the next thing is fleshing out the world with first and second order nouns everywhere, checking for stupid behaviours (especially with any new actions I've introduced), ideally having all special actions just translate back to standard actions. And adding much more help and facilitation with hints, bolding of important objects and verbs, and probably automating certain things where reasonable to avoid as much interpreter guessing as possible.
I think there are probably interesting questions around agency here. The more hinting there is the more it may end up feeling more like a Twine? But I think so long as the main throughline is super easy to follow but there are nice asides if people want to take the time, we're good?
Editing
In the end I think it feels like this is perhaps closer to finishing than I'd quite imagined, particularly now that I'm more "editing" than creating. Should be less resistant to change hopefully.
(I'm reminded I should make a Twine version of this game.)
? Per testing, it remains to do some serious work to make the whole thing more navigable by people who aren't into IF at all - in terms of an initial mini tutorial (particular telling them to look at things), and bolding specific actions or items that they need to engage with. None of this experience is meant to be about working out what you can do! (At the same time without wanting to strip away any feeling of agency.)
Research Questions - v2
Having now built a reasonably complete version of the entire game, I feel like I can weigh in again on where I think the interesting parts of this have been.
Hello, Hades
That is, as above the fact that Inform 7 is about explicitly modeling a world for the player to exist and act in is very, very different to prior editions of this series and has had me thinking correspondingly differently about what's important and what it means to represent things.
The most obvious edge of this comes when I'm using specific underlying constructs (whether that's vehicles or containers or edibles or whathaveyous) to represent the key aspects of the "story" of the punishment. And then more particular still has been the distinct pleasure of pairing these specifics of the engine with the key aspect of the punishment. Such that the apple is edible but not gettable. Or the boulder is pushable. Or the water really goes into the jug then the basin then out again.
As a corollary, it means it's kind of disappointing when this isn't happening. e.g. the representation of the liver is just a set of percentages. The running track in Zeno just "says" you in a particular position on it. The water doesn't really pass through the holes and it teleports back to the fountain which is pretty weird.
Most importantly, it's this aspect of the project that really has me thinking seriously about the world of the punishments and the question of "realistic" or "authentic" programming underlying things. Notably the edible apple is powerful I think. It's not unlike the idea that Best Chess is really solving chess, despite it being pointless/unfinishable. It feels meaningful (to me) that the underlying representation is of a world where you "could" in some sense eat the apple, it's just that it doesn't work out for you. I suppose it's just as artificial as the apple not being edible at all in the first place, or not even "existing", but still. But still.
Hello, IF
The other big thing, also already mentioned, is the way in which this project has drawn me into trying to pay attention to and mirror various cultural forms from IF. I'm making an effort to write in what I take to be a kind of chipper IF tone (I don't know why I think this particularly authentic, but I do). Likewise I'm attentive to rules that exist in this community (and thus was able to ask Simon Christiansen for help with them) and want to live up to them to the extent it's practical for me.
This raises questions around the culture of a specific tool. Not all tools necessarily have this I suppose, some are so of course so generic that this sort of thing doesn't build up, but Inform is one. Twine (which I'm thinking of for the next project) is another one.
Part of the question then becomes whether I'm trying to remediate the punishments into the platform or the culture? Am I trying to use the tool itself in a way that fundamentally meshes with these punishments (e.g. the edible apple) or is it more important to tell the punishments "in the style of" a text adventure? Naturally there's tons and tons of cross-over between the two ideas and they effectively codefine each other, but there's still some kind of decision to be made. Perhaps it can be put this way: should I look at the tool "my way" and extrapolate how I would use it to tell this story, or should I look at the form more broadly and try to fit in with it?
The answer is probably some boring variant of both, but I think it's a good distinction to be thinking about.
Hello? IF?
An extension of the IF culture question concerns how people will eventually encounter this work. In particular I've definitely found myself fretting about how legible it is to outsiders (my parents struggles mightily with early versions) and how lame/awkward/incomplete it may appear to insiders (I remember Kicker not going over all that spectacularly).
This is kind of expressed best in terms of how to release the game, for which I currently have three options
- Just release it the way I always do. This is easy and natural. It will also be the least likely to get the game in front of people who actually appreciate IF and so I'd be missing out on potentially important and interesting engagement. The kind of lame reason I lean this way is also just because I like to have things coming out regularly and if I don't release this game soon I probably won't release anything for June.
- Submit to IFCOMP. The main place I suppose you're likely to get IF people paying attention is at this competition, because as I understand it there's an agreement that people will play and review/rate each others's games. Naturally I wouldn't do well at such a competition, but it might be some guarantee of feedback and response from a highly literate crowd?
- Submit to Sub-Q. This is an online literary magazine for IF (and the like). This would be the same idea of getting it in front of a literate crowd. It's a "risk" in that they could just reject it. But they might reject it with helpful feedback. There's something appealing and interesting about putting a game forward in this way, it's not something I've ever done. The response time is up to 60 days though which is grim in terms of my preferences for fast movement.
Extra point: the IF crowd route is slightly awkward because I don't think the fact this is a retelling of a game I've retold 8 other times is really going to come through and that's at least part of the gag here.
Rambling about almost being done
Have added a bunch of niceties today after a longish feeling gap (actually only two working days, but you know). It's getting close to something that's probably releasable? How will I know when it's done? Remaining things are mostly around making a few things more consistent and generally adding greater depths of description as a way of making the whole thing more "fractal" and thus more sustaining even while the frame is utterly repetitive. If I do a serious push on this tomorrow morning maybe I'll have something I could consider finished? I send it to Simon and my parents again maybe?
I don't know.
? Added a help text that people can use to understand a little bit about how to play
? Added bold text to emphasise particularly important elements in the game, notably specific actions and objects they needs in order to make progress
? Fixed a couple of oddities (like pushing the boulder while still in the ferry)
? Added spitting... you know, the good stuff.
? Mostly this has been work around a consistent presentation of the instructions (via coloured post-it notes on an appropriate object) and the laughter of your tormentor (generally represented by an object of torment).
? Fixing the boulder was just logic stuff, not all that interesting.
? Notably made some effort to have a bunch of stuff on the hill so that there's generally one thing to do at each location. Feels a bit forced, but then that's also kind of the idea. I like that for each thing, if you take the time to engage while pushing the boulder you'll lose the boulder. Har har.
? Making first-order and second-order nouns visible, like bark, branches, moons, suns, etc.
? Clarifications like saying which post-it was just looked at (when there are two)
? More fractional distances
Wrapping up
Alright well after yet more tweaking and adding of little bits and pieces I've sent the game again to Simon Christiansen in the hopes of getting some solid experienced feedback on the thing as it stands.
There's a tension between trying to make it a "good" IF with lots of descriptions and information and so on - versus keeping it kind of stark and thus more in keeping with the nature of the punishments.
You might think it's obvious that I should be making it as much like IF as possible, and thus full of rich detail. But part of my thinking about this series of games has always been that the play experience should mirror at some significant level the actual punishment itself, and so should be repetitive and ultimately unrewarding. As such, the IF version needs to keep that in mind and so I think I'm kind of walking something of a balance between the two ideas?
I think I'm fairly happy with it. Jim and Mary still get totally lost in it, it's really hard to design an IF that's playable by people who never play IF and don;t play games more generally, but I'm having a go.
? Mostly just trying some little tweaks, trying to make certain things make more sense. Like having a transition text if you use a "magic phrase" to teleport to a punishment.
? Tantalus now prints a little more detail about the post-it notes to differentiate red and blue. In an ideal world I'd like to simply not ask for clarification if they haven't seen the other note, but I don't know how to do that at present.
? Zeno had a bug where if you "walked" it would still advance the counter.
? Fixed typo (double "the" created in the "which do you mean" text)
? Tried to deambiguate Charon's instructions about the shortcut
? Added points to all "levels" of the game and had a darn good time doing it too. It ended up being a nice vehicle to reinforce the sad sack messaging and is probably not what Tanya meant when she said the points were satisfying, but it does help in terms of my view of the game. Essentially the points behave roughly how you might expect? Sisyphus gets a point at the top of the hill, but loses it when the boulder rolls back to the bottom. Prometheus gets 10 points to start with and loses them with his liver until they're given back etc. (basically replacing the liver with points, which makes much more sense I think). Zeno gets ever smaller fractional points (greatly enjoyed this making a reappearance, though "interestingly" I had to represent the points and increase amounts as strings since Inform's floating point precision is tiny - at least by default? At least by default representation?). Danaids get a point for filling the basin and lose it when the water runs out. Tantalus gets notified he gained exactly no points when he tries to accomplish his goal. Satisfying! For me!