In my last report, I finished creating navigation menus, only to rethink the prioritization of my project’s tasks for my second Freshly Squeezed Entertainment project called Clown Alley Creator, a creativity tool about creating your own fun clowns.
I started this week by focusing on how to work on things differently to make it more likely that I can ship something in the six months I originally wanted to.
Sprint 2024-4: Clown Faces
Planned and incomplete:
- Create Hair & Make-up menu
- Create hair option and submenu
- Create make-up option and submenu
- Create nose option and submenu
- Create Finish modal
- Update Gallery View to show all loaded clowns
- Create clown preview nose cut-outs
I did some rearranging of my backlog and created a subset of tasks much like how I described in my last report. I didn’t expect to actually get all of these things done in a single week, especially not in a week with a major family holiday such as Thanksgiving, but I did like that this list captures what needs to be in place for the spine of the project to be in place, something I can build upon.
Unfortunately, I decided to keep my high level features/tasks as-is rather than rewrite them to more accurately reflect what I was done. It’s not an issue to work within, but it is harder to report here because it looks like I got nothing done.
In reality, what I actively worked on and finished looked more like:
- Create Hair & Make-up menu with only the Nose option
- Create Nose submenu
My thinking was that while the entire subset above makes for a good spine, I can get there pretty quickly if I focus on the simplest thing. Rather than provide a bunch of hairstyles or make-up options, I could create a couple of noses.
So my big goal is to make it possible for the player to choose a custom nose from among at least two options, see that nose in the clown preview while doing so, save the clown with the chosen nose, and then see that clown in the gallery: a thin slice/spine for a game about creating clowns!
I imagine if I hadn’t traveled to see family and instead had a normal amount of productivity last week, I would have some better screenshots for you today.
Part of the reason for the lack of finished tasks is because I recognized the need for a way to define my menus better than simply hardcoding the buttons into place on each menu.
I originally was writing entire functions to create and setup each menu. It could work, but it is a lot of manual work that risks looking inconsistent from one menu to the next. Instead, I could write an algorithm to lay out the options in a reasonable way, which led to me wanting to make my menus a bit more data-driven.
So two major things came out of this past week’s efforts:
First, I made the menus more data-driven. The menu titles, the submenu titles, and the menu button options and their locations are defined somewhere, and when the menu is created, it is able to grab all of that data and put it together.
It still has some things that are hardcoded, though, but the point is that it does go through this indirection in a way that makes it easy for me to replace those hardcoded values with values that are defined separately.
And second, I think I keep relearning that sometimes the first step to abstracting and generalizing is to get something concrete in the place first. Having a nose submenu with actual nose options hardcoded into place would have informed how to generalize such a menu better than me trying to generalize it upfront.
Doing the generalizing upfront risks creating a tool that I feel stuck with or have to work around rather than one that feels useful and helpful.
Anyway, I will continue to work on the spine of creating a clown with saved options that I can preview and load.
And since we just started the last month of the year, I also need to remember that December is usually one of the least productive months for me (more family holidays, after all) and that I shouldn’t expect to get a full month’s worth of effort out of it. Getting that simple spine in place before the start of the next year will feel like a pretty big win, I think.
Thanks for reading, and stay curious!
—
Want to learn 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!