Categories
Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report – Published! What’s Next?

Last week, I reported that I had submitted the Toy Factory Fixer builds to the app stores and was waiting for them to finish reviewing the games.

Within days, the game was approved by both, and so I published it to the world!

If you missed the announcement, you can read it and find links to the free game at https://www.gbgames.com/2021/12/15/announcing-toy-factory-fixer-now-available-on-android-and-ios-%f0%9f%a7%b8/.

Sprint 53: Release criteria

Planned and Incomplete:

  • Create a strategy guide
  • Update Toy Factory Fixer web pages

When the game was approved by both the App Store and Google Play, I sent an email to my GBGames Curiosities subscribers first.

I then spent time updating my web pages that mention the game so that they no longer said “Coming soon” and had links to the app stores.

I also thought it would be good if the game’s main page mentioned the features and benefits of the game.

What I still need to do is create a new animated GIF. The one that is up is a bit outdated, as it features the third worker before I finalized how they functioned in the game, plus it has old art. I did not spend any time on making a replacement, though.

I announced the game primarily on social media, and one person already signed up for the newsletter, so that’s a good sign.

I had a lot of friends share it, too, which was nice of them, but I got to hear some amazing feedback from someone in the IGDA Des Moines chapter who loved the game.

The main thing I wanted to do was create a free Toy Factory Fixer Player’s Guide as a gift for signing up for the GBGames Curiosities newsletter.

My plan is for all of my Freshly Squeezed games to have a free strategy guide as a giveaway.

Aside from writing the announcements and making changes to my website, I spent almost no time on the planned work, partly because we’re heading into the holidays and I still have shopping to do, but also partly because after a year of development, I could use a small break.

I have read about how a lot of game developers don’t realize that a lot of work comes post-release, but as I didn’t have an audience I was hyping up, it has been a relatively quiet release, and I’m taking advantage of it.

What’s Next?

For the remainder of the year, I need to make some time to just be introspective and plan for 2022.

I like to write up post-mortems for my projects, and so after I finish writing the player’s guide and also see how the game’s metrics look in terms of downloads and how it impacted my newsletter subscriptions, a project post-mortem will be coming soon. In fact, I offered to present at the IGDA Des Moines chapter’s February meeting.

I’d like to create desktop ports of Toy Factory Fixer, so I’ll need to research the latest in terms of how to create a Windows and Mac release, especially since both of those platforms have some kind of signing requirements. I already develop on a Linux-based system, but I haven’t published anything for it in about a decade that wasn’t a Ludum Dare game, so I could probably stand to figure out if I need to do anything different. Perhaps I’ll use itch.io to distribute the games.

Speaking of Ludum Dare, I want to make sure I participate in Ludum Dare 50 in April. It will be the 20th anniversary, and I do not want to miss it.

I also have Toytles: Leaf Raking, and I should continue to create updates for it and port it to desktops as well.

As for my the next Freshly Squeezed project? I have some ideas.

I want to explore what persistence allows. Basically, if you can save progress, what does that open up in terms of possibilities? Toytles: Leaf Raking allows you to save your game, and yet I never implemented a way to save progress in Toy Factory Fixer even though it would have been nice to see how you rated on any given level and work shift. Perhaps a virtual pet kind of game would be a natural fit.

I just saw the movie Encanto, and it was gorgeous. A lot of the special effects looked like procedural animation. Basically, having a single flower pop up out of the ground is neat, but having thousands pop up one after another looks amazing. I am reminded of someone comparing the visuals of The Legend of Zelda: Ocarina of Time with some contemporary Playstation game, saying that while the Playstation game was big on massive spectacle, the Zelda game did a lot with a little, making the opening scene seem magical with subtle floating particles that chased each other like tiny fairies. One Ludum Dare game I never finished was about being a soldier who was sent to go find a giant, attract its attention, and then see if you could lead it back to trample the enemy’s base. I might tinker with the premise to see if there is a non-violent version I could explore, but I wondered if it would look great if the ground shook in ripples from the giant’s footsteps, and that your character could get tripped by those ripples.

In 2013, I worked on One Game a Month, and I have a lot of Ludum Dare and MiniLD projects. Many of those projects could be remade as Freshly Squeezed games.

And I could explore concepts such as randomness.

Of course, I definitely want to see if I can make a game much more quickly than one game per year.

But for now, I’m going to try to make time to play games and enjoy the holidays with friends and family, even if most of it will be virtual. Again.

Thanks for reading! And happy holidays to you and yours.

Want to learn when I release updates to Toytles: Leaf Raking, Toy Factory Fixer, or about future Freshly Squeezed games I am creating? Sign up for the GBGames Curiosities newsletter, and get the 24-page, full color PDF of the Toytles: Leaf Raking Player’s Guide for free, and eventually the Toy Factory Fixer Player’s Guide as well!

Categories
Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report – Submitted to App Stores…Now We Wait…

In my previous sprint report, I changed the URLs for my Call to Action buttons so I can do some simple analytics whenever someone shows an interest in signing up for my mailing list or otherwise going to my website, and I started updating the build so that the game complies with Google Play’s latest policies and requirements.

I continued the work of creating the builds to release to the app stores.

Sprint 52: Release criteria

Planned and Complete:

  • Update Android targetSdkVersion to 30
  • Create Android bundle
  • Create Google Play store entry
  • Create App Store entry

Planned and Incomplete:

  • Create a strategy guide

Unplanned and Incomplete:

  • Update Toy Factory Fixer web pages

First, let me take a moment to look harder at that number above. Sprint 52. That’s 52 weeks I’ve tracked my work on this project. An entire year’s worth of slow and steady progress. And it is finally coming to fruition.

I think I’ll have more to say about spending 52 weeks on what was supposed to be a one month project in a post-mortem.

Anyway, in my last report, I was worried about how changing the target SDK broke the game’s ability to open a web browser and get to my website, and luckily it was a relatively quick fix.

It turned out that Android is starting to require more information about what an app might do, and so there is a new thing in the manifest file called queries, in which your app expresses its intent to use things such as ACTION.VIEW with the scheme HTTP or HTTPS. Once those were in place, the app seemed to work correctly again. I plan to write up the technical details in another post.

Next up was creating a new Android bundle, and luckily there was no real difference between the bundle I submitted for an update to Toytles: Leaf Raking and the bundle needed for a new app, or at least I didn’t need to change anything on my end, so the bundle built just fine with my existing build scripts.

Then I needed to submit the bundle to the Google Play store, and it was here that I finally decided to figure out exactly what I needed in terms of screenshots and such. I re-created the app icon and the feature image since they were originally created months ago when the game looked a little different, then I spent time playing the game and taking multiple screenshots, trying to setup good looking situations that might make someone curious enough to play the game.

Toy Factory Fixer

I had to create a privacy policy, which is a little modified from the one I used for my previous app. I needed to specify details about the data I track, which isn’t much.

Otherwise, once I had the screenshots, I was able to submit the app for review.

Next, I needed to build the app for iOS, and there were no new requirements I could find, and I was able to build, test, and upload to the App Store.

I created a store page, reusing a lot of content from the Google Play side, and the only trick is that iOS requires separate screenshots for multiple form factors. As my game does scaling, it means in practice that there are black bars at the top and bottom or the left and right edges of the screen on some devices, and so I modified the existing screenshots quickly.

I similarly had to answer some questions about the data I track and how it is not personally identifiable, and then I submitted it for review.

THIS IS SO EXCITING

At this point, all I can do is wait.

Toy Factory Fixer - In Review

Well, that’s not true. There is always more work to do.

In creating the privacy policy, I realized I needed to update the web pages related to Toy Factory Fixer. For instance, once the game is released, it shouldn’t say “Coming soon” anymore. The animated GIF is outdated. I need to provide links to the app stores. And so on.

And I still want to create a strategy guide as a free gift for people who subscribe to the Curiosities Newsletter (see below).

But basically, as soon as both app stores approve of the game, assuming they don’t find anything that I need to fix first, then I will be sending an email to my newsletter subscribers and telling them that the game is available.

So if you want to be one of the first to know, subscribe below!

Then you can wait with me, and I hope the wait isn’t too long. I’m really looking forward to you trying out my latest game.

Thanks for reading!

Want to learn when I release updates to Toytles: Leaf Raking or about future Freshly Squeezed games I am creating? Sign up for the GBGames Curiosities newsletter, and get the 24-page, full color PDF of the Toytles: Leaf Raking Player’s Guide for free!

Categories
Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report – Android Requirements

Last week, I reported that Toy Factory Fixer was pretty much feature complete, and that all I needed to do next was package it up and submit it to the main app stores.

So how did it go? Well, I can say I anticipated needing to do extra work for compatibility with new platform requirements.

Sprint 51: Release criteria

Planned and Complete:

  • Update CTA URLs so they are more informative

Planned and Incomplete:

  • Update Android targetSdkVersion to 30
  • Create a strategy guide

I’ll start with what turned out to be the easier thing. The entire point of this game, and the Freshly Squeezed series of games I want to make, is that they are meant to be playable, relatively polished prototypes that I give away for free to make it easier for players to find them, play them, and if they enjoy them enough that they want to know more, they can sign up for the GBGames Curiosities newsletter (see below). Then, not only is it easier for me to tell fans about the games they’ve expressed interest in learning more about, but I hope that they become customers as well as collaborators who share with me what they would love to see me make so that they are more likely to be even more interested in what games I make.

For instance, I got an email from someone who is excited about Toy Factory Fixer and read that it will be available for mobile devices but would really like a PC version of the game to play with his daughter. So while I don’t have specific plans to create a desktop version of the game, I think I’ll make it a higher priority.

In the game, I have Calls to Action (CTAs) to ask people to sign up for the mailing list, and a colleague suggested that after going through all the trouble of putting this game together, I should do more to track which of the CTAs a player pressed so that I can be better informed going forward.

And that’s brilliant, so I worked on it, which involved changing the URL so that it provides URL parameters that tell me which of my games the player was playing, which OS (Android or iOS), which menu the button was on, and which variation of the button’s text was shown.

I don’t intend to add any kind of in-game tracking. As useful as it is, I would rather that the player not have to worry about my game needing permission to “phone home” with secret information, so I’m going without. But I think opening links to my website is fair game, as they player has already shown purposeful intent to go to my website.

I had to learn a bit about how my website’s analytics worked so that I could create a URL that makes sense, but I got it done.

Toy Factory Fixer - Call to Action on options screen

So, NOW I’m done with coding in the game. Let’s package things up!

Android requires new apps to target SDK 30. I expected this was either a one-liner fix in an Android manifest file to change from SDK 29 to 30, or it was going to involve figuring out what all changed on the Android side that would prevent things from just working.

When I build a debug Android apk and installed it on my Android 11 phone, I got excited that it seemed to work just fine.

But then I tried to tap on one of the CTA buttons that should open the browser and take you to this website, and it just…didn’t?

I can hear the audio feedback telling me that the game definitely knows you are trying to go to my website from within the game’s menu, but it wouldn’t.

So I checked the logs, and I can see:

AppsFilter: interaction: PackageSetting{[myApp's info]} -> PackageSetting{[Chrome's info]} BLOCKED

What the-?

Why?

WHY?!

Ok, so I double-checked, and before I targeted SDK 30, this functionality did work, so I think it is clear the only difference has to be related to some new requirements that Android’s SDK introduced.

It’s a little annoying that the app otherwise works correctly if I continue targeting an older SDK, but due to Google Play’s requirements, I need to target 30, which means I need to figure it out.

Unfortunately, it was late in the week when I discovered this issue, so I’m hoping it will be relatively quick work to investigate and fix it, but it is an annoying delay for an otherwise finished game.

I hope the iOS build isn’t similarly going to give me issues, but I’ll worry about that one later.

Thanks for reading!

Want to learn when I release updates to Toytles: Leaf Raking or about future Freshly Squeezed games I am creating? Sign up for the GBGames Curiosities newsletter, and get the 24-page, full color PDF of the Toytles: Leaf Raking Player’s Guide for free!

Categories
Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report – Final Level, Fixed Major Defects, and…Feature Complete?

In my last sprint report, I talked about adding Calls to Action in the menus and creating easier versions of the existing levels in Toy Factory Fixer.

In the past week, I finished the work of adding an easier version of the fourth level, added level previews to the level selection screen, and fixed a bunch of defects, including one really, really big, game-breaking one.

Sprint 50: Release criteria

Planned and Complete:

  • Create training level versions of existing 4th level
  • Level Selection previews level details
  • Defect: Dispenser bonus menu can show different amount than what player is rewarded with

Not Planned and Complete:

  • Defect: In-game options CTA seems to persist despite closing the options menu
  • Defect: Main menu CTA seems to persist on How To Play Screen even if it shouldn’t be there
  • Defect: Possible to click on dispenser button after “1 turn left”, meaning the next production run to start is the next-next one, skipping toys and preventing the game from ending

Planned and Incomplete:

  • Update Android targetSdkVersion to 30

As I said last time, with the Thanksgiving holiday, I wasn’t sure if I was going to find myself with a lot of time to work on the game or hardly any, and as it turned out, I ended up doing no game development after Wednesday.

Despite putting in less than four hours of game development, I managed to get quite a bit accomplished somehow.

I finished creating easy and challenging work shifts for the four levels, essentially doubling the game’s levels to a total of eight.

I realized partway through the previous sprint that I would love it if I had an indication of what each level involved when I was selecting it, so I added a preview on the right side:

Toy Factory Fixer - Level detail preview

Toy Factory Fixer - Level detail preview

Fixing the dispenser defect was more involved than I originally anticipated. Originally, I thought the issue was that if you opened the dispenser detail menu, it would tell you that you would earn 50 pigeon coins (or whatever the amount was), but when you actually started the production run early, you would instead earn less.

And that was AN issue, but it wasn’t the only one.

Basically, once a turn starts, it must end, but it was possible to be on this menu screen and not have it update with the new turn number (and associated pigeon coin bonus). So I made sure to update it at the appropriate time (which was more involved than it might seem).

But then I discovered that you could do something even more than merely miss out on some coins.

If you opened the menu when there was one turn left, but that turn ended, then technically, the production run has already started, but the menu will now update with the NEXT production run’s data even though you shouldn’t be able to get to this menu. So if you start the production run early, you actually skip one of the production runs.

And I was able to consistently skip multiple production runs, so it was easy to reproduce the issue. But when I got to the end of the game, the dispenser thinks it still has Bad Toys it hasn’t dispensed, but it would have no way to dispense them, so the game would never end.

So I had to prevent this defect by basically checking for this special case and closing the dispenser detail menu if you somehow managed to open it and can see it when you shouldn’t.

It’s probably the ugliest, most special-case code in the entire project.

Anyway, I then discovered that my new Call to Action buttons were showing up where they shouldn’t. Or rather, they didn’t show up but acted like they had. That is, it was possible for the buttons to appear and then not exactly go away, so even if you didn’t see them, you could still accidentally tap on them.

Whoops. So I fixed it both in the main menu and in the in-game options menu, mainly by writing code that essentially says “Only handle this button when these particular menus are active and ignore it otherwise.”

And then…I was done?

The game is done?

I mean, there are a lot of other features and updates I would love to do, but for v1.0, the game is basically ready to go.

Except I have worked on it for so long that I now need to make sure I don’t need to update any SDKs or libraries or built tools in order to package it up properly for both Google Play and the App Store, each of which has updated their requirements in the last year.

But assuming I don’t get stuck figuring that part out for too long, I just need to build, package, and upload the game to the stores, create the store pages, including any pictures or videos, then wait for their reviews to tell me what I need to fix…

Well, it is hard to say how much longer it will be, but I’m hoping you’ll be able to play the game before Christmas!

Thanks for reading!

Want to learn when I release updates to Toytles: Leaf Raking or about future Freshly Squeezed games I am creating? Sign up for the GBGames Curiosities newsletter, and get the 24-page, full color PDF of the Toytles: Leaf Raking Player’s Guide for free!

Categories
Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report – Creating Work Shifts for Each Level

Last week, I reported that I finished adding custom grunts/barks for the three worker types and made good progress on adding prominent Calls to Action in Toy Factory Fixer.

This past sprint I finished up the Call to Action work and started creating easier versions of the existing levels in the game.

Sprint 49: Release criteria

Planned and Complete:

  • Make mailing list CTA more prominent
  • Create training level version of existing 1st level
  • Create training level version of existing 2nd level
  • Create training level version of existing 3rd level

Planned and Incomplete:

  • Create training level version of existing 4th level

Not Planned and Incomplete:

  • Level Selection previews level details
  • Defect: Dispenser bonus menu can show different amount than what player is rewarded with

I got a bit of an early start, knocking out the Call To Action work and even getting the new first level work finished on Sunday.

Toy Factory Fixer - Call to Action on options screen

So the idea behind creating easier versions of the levels is that each of the four existing levels might be too challenging for new players. Once I finished creating the easier first training level, I realized I had a problem to solve on the level selection screen.

If I was adding four new levels, do I now have to create a way to scroll through the eight levels to choose from?

Instead, I rearranged the screen layout so that I could fit two new buttons at the top so that the player can choose a level and then choose a work shift:

Toy Factory Fixer - work shifts

Toy Factory Fixer - work shifts

After all, the level layout is the same, but the amount of money the player starts with, the target shipping deadline, and the configuration of the toys that come out of the dispenser are what is different.

I then worked on easier versions of the the remaining levels, but I ran out of time before I could finish the fourth level.

The good news is that the level design work has been straightforward and simple compared to the more challenging ones I made before. One reason is that I know the game’s systems a lot more intimately now, but another is that with the easier levels I am less concerned with providing a precise challenge for the player.

Each of these easier levels ramps up the production runs relatively slowly, and I found that trying different strategies and performing different actions can still result in different outcomes. The player should much more easily be able to get an A+ rating across all three categories at the end of the level, but it is still possible to do less well depending on how they play.

On Friday, I realized through play testing that it wasn’t clear what the difference between the two shifts could be, as all you see is a different description. Normally I am trying to avoid extra work before my 1st release, but I think adding the details on the right side of the screen is a quick task that will add a lot to the experience.

I also confirmed a defect that I wasn’t sure if I had encountered before. Basically, since turns will continue until they finish, it is possible to click on the dispenser button shortly after it appears in the middle of a turn update.

So you might see that the next production run will start in 9 turns, and the menu tells you that if you start it early, you’ll earn an extra 50 gold pigeon coins.

But when you do start it, you only earn 20, which is how much you would earn if there was 8 turns left.

So what I think is happening is that the turn updated and finished, but this particular menu didn’t get refreshed to reflect that fact. I expect it to be an easy fix, but it was also one I didn’t get to finish before the end of the week.

So this coming week, being it is Thanksgiving on Thursday, I’ll either have lots more time or hardly any time to finish these tasks. It’s hard to say because while I will have time off from the day job, that time can easily get filled with holiday and family logistics.

Once the above are done, I will work on creating the builds to submit to the App Store and Google Play for review. I don’t anticipate it taking much time, but this is a new project and not an update of an existing project, and I know each store has updated their requirements over the last year I’ve been working on Toy Factory Fixer.

Thanks for reading!

Want to learn when I release updates to Toytles: Leaf Raking or about future Freshly Squeezed games I am creating? Sign up for the GBGames Curiosities newsletter, and get the 24-page, full color PDF of the Toytles: Leaf Raking Player’s Guide for free!

Categories
Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report – Finished Custom Worker Barks, Adding Calls to Action

In my last sprint report for Toy Factory Fixer, I had finished up work on the in-game help pages and made a lot of progress towards updating the worker barks/grunts so that they were more varied and specific to one of the three worker types.

I continued the audio updates this past week.

Sprint 48: Release criteria

Planned and Complete:

  • Update worker grunts

Planned and Incomplete:

  • Make mailing list CTA more prominent

I managed to put in more game development time than usual, which allowed me to finish the worker barks for all three worker types.

The Strong Worker has a deeper voice, the Normal Worker has a squeaky voice, and the Sewing Specialist sounds kind of weird with an echo-y, gruff voice, as if they might be a machine or otherwise augmented.

In summary, I went from having three barks for “attention” (when you click on the worker and they effectively say, “Yes?”) and three barks for “affirmation” (when you command the worker to do something and they say “Yes!”) that played randomly no matter which worker was involved, to having each worker personalized with five attention and five affirmation barks, for a total of 30 audio files.

For those who are interested, I saved them as mono Ogg Vorbis files to keep the download size down, as stereo would have effectively doubled the size of the files for no real gain.

Now, as Toy Factory Fixer is the first of my Freshly Squeezed line of games, which are meant to be freely given away in the interest of finding my audience more easily, I wanted to make sure that that audience knows how to connect with me.

So at the suggestion of a colleague, I wanted to add more prominent Calls to Action asking the player to sign up for the GBGames Curiosities newsletter.

I already had one on the Quit Verification screen, but I wanted to add some to the main menus and to the in-game options menu, and potentially at the level end menu, but I don’t know if there is room for the widget I came up with.

Toy Factory Fixer - animated Call To Action widget

As you can see, the giant orange button has some text (really, an image of text) floating above it that animates by scaling up and down repeatedly. There are four variations on that text, so hopefully it captures the player’s attention each time they see it.

Is it obnoxious? Maybe. You can’t miss it, as it is the main thing animating on the screen, and the point of it is to make it clear that there is a mailing list and you want to sign up for it.

And the point of giving away the game for free is to attract players, and if they like my game enough, I want them to want to hear from me to know when my next games are coming out.

I’ve also considered adding more calls to action asking people to follow me on Twitter or like my Facebook page. Maybe either of those is a lower-barrier-to-entry ask, but I think the mailing list is better in terms of the kind of engagement I want with my players.

Unfortunately, I didn’t get to finish up the Call to Action work when it comes to the in-game options menu, as it overlaps the existing modal dialog that is there, so I need to rearrange some UI elements, but it’s almost finished and I expect to get it done early this week.

In the coming sprint, I’m going to be creating “easier” versions of the game levels already in the game, and I’ll need to finish up packaging for both Google Play and the App Store.

Then, the last thing I will want to do before the game is released is create a strategy guide PDF, much like the Toytles: Leaf Raking one you can currently get (see below!) as a free extra incentive for people to sign up for my newsletter. I can write the copy quickly enough, but taking screenshots, cropping the images, and placing them in the text can be annoyingly tedious if my past experience will be any indication.

So I anticipate between two and four weeks left, depending on how smoothly the level-design work goes.

This is it. Don’t get scared now.

Thanks for reading!

Want to learn when I release updates to Toytles: Leaf Raking or about future Freshly Squeezed games I am creating? Sign up for the GBGames Curiosities newsletter, and get the 24-page, full color PDF of the Toytles: Leaf Raking Player’s Guide for free!

Categories
Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report – Finished Help Pages, Custom Worker Barks

Last week, I reported that I was making decent progress towards the last tasks before Toy Factory Fixer was ready for a v1.0 release, starting with adding music to the menus, allowing the player to mute and unmute the audio as they please, and starting work on the in-game help menus.

I continued my work this past sprint.

Sprint 47: Release criteria

Planned and Complete:

  • Create How To Play menu

Planned and Incomplete:

  • Update worker grunts

I did not get as much game development in the last week as I usually do. That said, I finished the in-game help, including giving the player an indication of which page and how many pages they are currently viewing.

Toy Factory Fixer - help page

Toy Factory Fixer - help page

As for the worker grunts/barks, the current audio that plays comes from a royalty-free collection of audio I got either from a GDC giveaway from Sonniss or a Humble Bundle. Unfortunately, there wasn’t enough variety in those collections, so I decided to make my own.

I spent part of an evening in a room recording myself saying various phrases that I want the workers to say. My USB microphone and laptop weren’t giving me the quality I needed, so I used a Sony IC Recorder I bought in 2012 for a conference I was helping to run as I was recording the presentations.

When I felt I had recorded enough options, I used Audacity and sorted the phrases into tracks so I could choose from among the best options.

Toy Factory Fixer - Audacity with multiple worker audio tracks

I cleaned up the noise, lowered the pitch down on a few clips, and ended up with a bunch of barks for the Strong Worker to say.

Unfortunately, since I didn’t get as much time in for game development, I didn’t get to repeat the same kind of work for the other two worker types.

I expect I will be able to finish it early this coming week, and despite having a relatively slow week, I think I’m still on track to get this game out later this month.

Thanks for reading!

Want to learn when I release updates to Toytles: Leaf Raking or about future Freshly Squeezed games I am creating? Sign up for the GBGames Curiosities newsletter, and get the 24-page, full color PDF of the Toytles: Leaf Raking Player’s Guide for free!

Categories
Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report – Muting, New Menu Music, and Help Pages

In the last sprint report, I got a another level completed, and I put together a plan for the final pieces of work to do before I release v1.0 of Toy Factory Fixer.

I put a decent dent into that plan last week.

Sprint 46: Release criteria

Planned and Complete:

  • Allow player to mute SFX and music separately
  • Create music for main menus

Planned and Incomplete:

  • Create How To Play menu

I easily finished the work I started to create mute/unmute toggle buttons in my first hour of development.

Toy Factory Fixer - mute button toggles

Toy Factory Fixer - mute button toggles

And since the game is fairly silent outside of a game level being played, I added music to the main menu screens. I basically slowed down the in-game music so that it is rhythmic and industrial-sounding. I thought about having a droning factory hum, but I liked the music, and the hum was distracting, so I took it back out.

So the rest of the week was spent working on creating help pages. I know that even if I had done everything I could to make the game as intuitive and as clear as possible, someone would still have questions about it, so having in-game help seemed like a vital thing to have before release.

Of course, it required coming up with what help I wanted to show the player.

I used the same in-game “screen” that I used for the Credits and the end-of-level summary, and since it is so much smaller than the actual game’s screen, it helped me be concise and to the point. I’m still worried I was too verbose, though, and I worry that having too many pages of help text is also overwhelming.

Toy Factory Fixer - help page

Toy Factory Fixer - help page

Unfortunately I wasn’t able to finish creating the last few pages before the end of the week, so I will continue that work this week. Then, I’ll update the worker barks so that they are distinct for each worker type before moving on to the rest of the release criteria tasks I identified.

Thanks for reading!

Want to learn when I release updates to Toytles: Leaf Raking or about future Freshly Squeezed games I am creating? Sign up for the GBGames Curiosities newsletter, and get the 24-page, full color PDF of the Toytles: Leaf Raking Player’s Guide for free!

Categories
Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report – Finishing the Final Training Level, Muting Audio

As I said in the previous sprint report for Toy Factory Fixer development, I had spent time adding feedback to the player and fixing defects, including a major one that ended the game prematurely even if you had plenty of toys to craft.

I continued work on finishing the last of the training levels in this past sprint.

Sprint 45: Training levels

Planned and Complete:

  • Create floor training levels/tutorial

Unplanned and complete:

  • Allow player to mute SFX and music

The only task I wanted to focus on was finishing the final training level that introduces the sewing specialist. Originally the layout was derivative of a level I was using to do general play testing and experimenting, but I modified it so that workers placed near the beginning of the conveyor belt were less effective than those placed farther down the line.

Toy Factory Fixer - original play testing level layout

Toy Factory Fixer - finalized training level layout

Most of my time was spent designing the production runs of toys, and my main worry is that this training level is too intense.

Toy Factory Fixer - too intense?

However, it is possible to finish the level with an A+ rating in all three criteria.

Determining the First Release Criteria

Since I finished creating the level and it was the only task in my sprint, that meant I had time to work on something else. But what?

I decided that at the very least the player should have the option to mute the sound effects or music, so I started working on that functionality. It is mostly there, and the only thing left is to make the button labels change from “Mute” to “Unmute” when pressed.

Meanwhile, every Saturday I try to work on a non-routine improvement, and one of my goals this month was to put together a solid set of criteria for things that must be done before I feel comfortable creating a v1.0 release of this game.

So here’s the list I came up with:

  • Number of levels
    • 4 training levels
    • At least 1 non-training level
  • Polish
    • Worker grunts need to be worker-type specific
    • Need music/audio background for main menus
  • Need call to action (sign up for GBGames Curiosities)
    • Main Menu
    • Options Screens
  • In-game help
  • Create a strategy guide
  • Allow player to mute

I decided against any kind of persistence for this first release, even though I have some ideas and plans for it, such as a factory map with levels/floors that unlock as you finish them.

I’m most sad about not creating a Free Play level, which is a play tester request that I loved and also had plans for. Also, having only one more non-training level for a total of five levels may not sound like much when many other games have something like 20 or 100 levels, but this is a v1.0 release of a free game. Maybe I’ll work on a new update that includes more levels and features if there is enough feedback from players, but for now, I need to cut scope if I want to release this game anytime soon.

Then again, I keep worrying that these training levels are way too hard, and I think that I could always create shorter, easier versions as the training levels and use the existing level designs as more intense versions of them. I had originally envisioned the idea of reusing a level layout with different “shifts”, so each shift acts as a separate level with different production runs. So I could take the existing four levels and double it to eight levels if I create easier versions of them, getting both quantity AND an easier onboarding process for new players. Hmm…

Now, dear reader, you tell me. Is this actually feature creep, or is this just the nature of wearing multiple hats, including the producer hat?

Thanks for reading!

Want to learn when I release updates to Toytles: Leaf Raking or about future Freshly Squeezed games I am creating? Sign up for the GBGames Curiosities newsletter, and get the 24-page, full color PDF of the Toytles: Leaf Raking Player’s Guide for free!

Categories
Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report – Providing Important Player Feedback

Last week, I reported that I had a desire to communicate some feedback to the player in order to make the sewing specialist worker effective in the game Toy Factory Fixer. Unfortunately, my capacity to get it done had been more limited than usual.

But I finally got it done this past sprint.

Sprint 44: Training levels

Planned and Complete:

  • Make sewing worker unique

Unplanned and complete:

  • Show money earned as hanging value over chute
  • Defect: Worker specialty button isn’t highlighted on worker menu
  • Defect: Cannot change worker specialty in worker menu
  • Defect: Game ends prematurely even though there are plenty of toys possible to ship

Planned and Incomplete:

  • Create floor training levels/tutorial

From last week’s report, here are the things I wanted to get done in order to communicate to the player things I never needed to communicate before:

  • If the worker is idle and can’t craft due to missing parts, I want the player to know this fact instead of wondering why this worker isn’t crafting.
  • When the worker starts crafting, I want to make it clear that toy parts disappeared from the inventory, something that wasn’t necessary when the player was manually deciding when toys were being crafted.

I am happy to say that this past week was a lot more productive and that I finally got these pieces of feedback into the game.

While I did have plans to create something custom for this game, instead I stole a speech bubble and some angry scribbles from one of my other games, Toytles: Leaf Raking.

Toy Factory Fixer - designs for sewing specialist feedback

Toy Factory Fixer - frustrated sewing specialist

Whenever the sewing specialist doesn’t have the ability to do any work, they’ll express frustration, which lets the layer know when to change this worker’s orders to focus on crafting Good Toys from parts actually available in the player inventory.

And speaking of inventory, I needed a way to indicate to the player that parts were being used by this worker type automatically. Before, it wasn’t necessary because it was obvious when the player was specifically commanding a worker to craft a particular Good Toy. If there weren’t enough parts, the button for that particular toy type would be disabled, and if there were enough parts, the player could easily see how many parts would be left if they command a particular worker to craft a toy.

So, something I’ve been meaning to put into the game anyway was floating number indicators. And it looks pretty good:

Toy Factory Fixer - sewing specialist in action

I think I need an audio effect to also indicate that toy parts are being taken, and I still like the idea that toy parts fly out of the inventory to the worker in question so it is even clearer, but I might not implement that last one before I release the game.

I also added floating numbers when toy parts get added to the inventory, but more importantly, I changed how the money bonus for shipping toys or starting a production run early looks. I already had the text showing the amount of money earned flying from the source of the money bonus towards the player’s money, but it was moving too fast for anyone to read.

So based on some feedback I’ve gotten from play testers and others I’ve talked to, I use the same text floater with different colors and a larger font:

Toy Factory Fixer - money text floaters

I also fixed a few defects, a critical one being that the game would sometimes end even if the player still had toys to craft due to a logic error in determining if the game was over.

Unfortunately I barely started work on the level that introduces the new sewing specialist, so that work will need to continue this sprint.

Thanks for reading!

Want to learn when I release updates to Toytles: Leaf Raking or about future Freshly Squeezed games I am creating? Sign up for the GBGames Curiosities newsletter, and get the 24-page, full color PDF of the Toytles: Leaf Raking Player’s Guide for free!