Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report: Comic Strip Scripts and Android Issues

Last week, I reported that I updated the art in the titular dungeon of The Dungeon Under My House, my non-violent, first-person role-playing game and my second Freshly Squeezed Entertainment project.

I also started the work of making a part of the intro sequence clearer, and I finished that work this past week.

Sprint 2024-20: Project Management

Planned and complete:

  • Show broom knocked over when searching for pickles

Unplanned and incomplete:

  • Why won’t game run on Android after map-loading code was added?

To start with, there is a part of the intro sequence in which the player goes into the basement to look for a jar of pickles, as requested by the parents in the kitchen, and then for some reason a secret door appears.

The Dungeon Under My House - basement scene before finding pickles

The Dungeon Under My House - original exclamation when searching for pickles

The Dungeon Under My House - secret entrance to second basement room revealed

In my head, I had a somewhat elaborate series of events involving knocking over the broom, which hits a secret button in the wall, which opens the door.

But none of that was communicated to the player, so it just looked like the player clicked on the shelves, saw the main character Francis say something in shock, then suddenly there is an entryway that may or may not have been noticed as being new depending on if the player was paying attention to the scene before and after.

Now, I could have used animated sprites and effects to make it clear what was happening, but that sounded like a lot of work for a one-time situation, and I feel like this project is too big as it is.

So after a bit of thought, I came up with what I hope was an effective solution while also requiring the least amount of effort.

The Dungeon Under My House - finding the pickles knocks over the broom

The Dungeon Under My House - the broom hits the secret button in the wall

So I made some comic strips to illustrate what happened.

I’m hoping these two sets are enough, but I could always add a third showing the secret door opening to make it more obvious if it is still needed.

After that work was done, I spent time trying to identify all of the work I might have left in this project.

And it is a lot. I mean, if I was dedicating full-time effort to it, it would probably only be a few months of work, and since I’m sure I am underestimating it, maybe some small multiple of a few months.

But since I am working mere hours at a time on it in a given calendar week, I’m worried that I’m looking at another year of development, and I’m sure I’d find new features and fixes that take up time, too.

So I think my most immediate project management concern is nailing down exactly what this project absolutely needs. For example, I had ideas of entities navigating throughout the dungeon on their own based on their own agendas and time passing.

I can avoid an entire category of work involving pathfinding and decision-making if I decide that it can be in a future project or potential sequel instead. Dungeon entities might just need to be statically placed for this project if I want to finish it in a more reasonable period of time.

On the other hand, since this game is meant to be non-violent, which means I don’t get to rely on existing and tried-and-true game mechanics related to health, weaponry, armor, and combat, I wanted to focus on relationships. The entities you encounter and your interactions with your own party members NEED to be at a minimum level of complexity to make it interesting. When cutting scope, I need to be mindful that some things getting cut will reduce the richness of those interactions.

Meanwhile, I wanted to address what I thought was going to be am minor fix to ensure the project runs on my Android phone again. It makes it easy to show to people what I’ve been working on if I have the latest version available in my pocket.

But ever since I added the dungeon loader to load the dungeon from a JSON file, I found my Android build crashes.

It turns out that I had a discrepancy in my build scripts that didn’t add the JSON file from my resources directory into the correct location when I built the project for Android.

Once I fixed it (and fixed the typo that prevented it from copying the file still), it still crashed. It turned out that I ran into a known issue when loading files from the Android assets directory, which you cannot simply open using std::ifstream since it is in the APK’s .zip format.

You are supposed to use the Android AssetManager, but I am under the impression that libSDL2 provides a mechanism to do so, especially since many of the assets I already load, such as images and audio, load fine using the existing image-loading functions.

So I ended the week investigating how to load my text file into my project. Once I have the Android build functional again, I’m going to be doing some serious design and project management work.

Thanks for reading!

Want to learn when I release The Dungeon Under My House, or about future Freshly Squeezed games I am creating? Sign up for the GBGames Curiosities newsletter, and download the full color Player’s Guides to my existing and future games for free!

One reply on “Freshly Squeezed Progress Report: Comic Strip Scripts and Android Issues”

Leave a Reply

Your email address will not be published. Required fields are marked *