Posted December 09, 2024 by EsoDev
I feel frustrated... but more about that in a moment.
Here are some quick updates on things I've mentioned before. Charts now have auto-generated legends (the trick here is to match the image on the left of the series name to the series):
Both nyctography and a form of shorthand are now available in the game for use with our writing system. This also really underlines how our writing system can work with both fonts and images now, which was impossible in the previous versions (it had to be fonts). What do I mean by images? I couldn't locate a free-for-commercial use nyctography font, so I nabbed some CC0 images and wrote a filter that transforms text to the images, like so:
3;1;<br>;<br> 2;1;\[aA]\[nN]\[dD];<img src="img\\doc\\writing\\nycto_and.png" class="nycto"> 2;1;\[tT]\[hH]\[eE];<img src="img\\doc\\writing\\nycto_the.png" class="nycto"> 2;1;<digit>;<img src="img\\doc\\writing\\nycto_digit.png" class="nycto"> 2;1;<letter>;<img src="img\\doc\\writing\\nycto_letter.png" class="nycto"> 2;1;<date>;<img src="img\\doc\\writing\\nycto_date.png" class="nycto"> 1;1;\#;<img src="img\\doc\\writing\\nycto_\_.png" class="nycto"> 1;1; ;<span class="nycto"></span> 0;1;\*;
Anyway, here are some images:
Now for the point of frustration. I'm going to paste what I wrote into Discord here. It's a bit long, but I hope some kind of discussion comes from this. I'm really stuck on this one thing and struggling to produce a system both appropriate for the game and friendly to the player:
Hey @everyone, can I get your attention for a moment?
I've been feeling rather frustrated recently due to the implementation of a critical portion of exploration mechanics that is just not going well. I want to waffle about the issue, my attempted solutions, and why I think I've been completely barking up the wrong tree.
The issue relates to presenting the environment to the player as the player character moves through the environment. This is still a text game, so we can start by touching on how text games usually handle this issue and then move on to the specific considerations that make it more complicated for what we're trying to do here.
As a bit of a simplification, text games usually divide the location into rooms, which have an on-enter description and are static enough to where that description rarely changes, and if it does, it more often than not changes due to the player's actions. This makes room descriptions easy enough to handle. Upon entering, you dump the room description on the player and proceed with a list of items or otherwise dynamic interactables that can change location. That is to say, the rare moving character or junk the player dumped on the floor.
Initially, that was also how I approached the issue, but it turned out to be quite unsatisfactory as a gameplay experience; the descriptions did little to match the complexity of moving around the area, and they ended up feeling disconnected from the actions taken by the player.
There are two reasons for this. Firstly, the approach we took divides rooms into sub-locations. This meant that in the approach above, the narration would go over the whole room and fall silent until you crossed into a different room. Secondly, our sensory systems reach between rooms. You can see what's on the other side of a door, but the narration ignores that until you step through it.
Unfortunately, while both of these factors might seem like overcomplicating what should already work since this game places a much more pronounced emphasis on agents other than the player (character), both are needed to handle various situations which we are working to represent in the game. Hiding, spotting things, avoiding things, and so on. This requires the player to be able to both see into different rooms and move around things located in the same room.
So, for several of the subsequent attempts, I found myself flailing about trying to find a completely automated system that allows the whole narration to somehow get generated and presented to the player fully automatically. And that just doesn't work. I tried different ways of breaking it up and building the logic, but it still doesn't present the information in a pleasing and digestible way.
Ultimately, on the last I've taken, I decided to cut down on the information and focus more on presenting it more like in the classic example I gave in the beginning, thinking I might start from there and try to build on it and I feel like it's still not it (it's missing the ability to represent some of the things I mentioned above). It honestly just feels frustrating, and at this point I feel like I'm stressing myself sick.
So.
I want to step back from this. I am trying something new and want some opinions because this has implications for the gameplay this time.
1) Upon entering a room, you only receive a brief description of the room to set the mood, as well as get information about the presence of any agents in the room with you, as long as you can detect their presence using your senses (you're not the only one who gets to hide).
2) You get more verbose information about the room the first time you enter and less on subsequent visits.
3) Agents that perform actions that lead to them being detected by your senses handle informing you about this "on their turn".
4) You may look through open doors and peep through closed doors that you can open (this usually requires the door to be unlocked and for you to be right next to it); some doors might also offer things like peepholes. In any case, the act of looking past a door to check what's there requires direct action and might let you pick up on things you didn't sense "passively".
5) You must look around a room sub-location to start interacting with what's there. Depending on the light levels, you might also "investigate" surrounding cells; however, darkness stops you from being able to do this at all. Investigating/looking around a cell reveals things like furniture/containers/objects to interact with and gives a more detailed description; this includes doors, so you will not be able to interact with doors you are not already aware of if it's too dark (though interactions might be limited - you can open but not unlock doors in the dark). I think this also opens up some interesting possibilities for chases in the dark, etc.
This approach would break up exploration into more player actions, and my worry here is that it might be too much. But I don't know, really. I'm desperate to work out some kind of solution here.
Please let's have a conversation about this. I can't do everything alone.