Toytles: Leaf Raking Progress Report – Holiday Talk Finished

Here’s this week’s progress report for new updates to Toytles: Leaf Raking, my family-friendly leaf-raking business simulation available for iPhones, iPads, and Android devices.

Get it at the Toytles: Leaf Raking page.

Last week, I wrote in my report for sprint 15 that I expected it would only take a couple of hours more to get the rest of the holiday-specific dialogue into the game.

Sprint 16: Holiday-specific dialogue

Last week’s sprint plan was:

  • Create holiday-specific dialogue
  • Fix holiday text being cut off next to weather window
  • Fix time advancing incorrectly when loading a game in a neighborhood other than Midtown.

I did a total of 4 hours of game development, but that includes the time spent creating and testing the Android and iOS releases and uploading them to the app store. I was actually finished with the dialogue after 2 hours of work, as I predicted, and the rest of the time was spent fixing the two defects and creating the releases.

Amy's dialogue on Thanksgiving

Fixing the text issue was straightforward. I’ve mentioned before that I use JonnyD’s NFont to handle a lot of my text rendering, and I was rendering the text in a box that was too small. I don’t know how long it had been that way, but I modified the box so that the text wrapped around nicely and fit better.

The time issue was similarly straightforward. I don’t know if I introduced this defect when I was moving code around in the last few months, but here’s a summary of what was happening. There are two variables: one is your current neighborhood, and the other is the last neighborhood you were in. Your current neighborhood is saved and loaded. Your last neighborhood is not, and it is just a variable that is used during the game.

The idea is that if you navigated to the neighborhood screen, you either moved there from another neighborhood and should therefore use 10 minutes of time, or you were on a house screen and making your way to the street in the same neighborhood, using no time at all. The game determines which situation you are in by comparing the last neighborhood variable to the current neighborhood variable.

But apparently I forgot to set the last neighborhood variable to the current neighborhood variable after you load a game. So if you start out in a neighborhood other than Midtown, when you visit a neighbor’s house and leave back to the neighborhood view, the last neighborhood (Midtown) and the current neighborhood (not Midtown) do not match, and so time advances. There was another problem: navigating from a different neighborhood to Midtown does not advance time because the last and current neighborhoods are both Midtown, when you were obviously not in Midtown before traveling to Midtown.

The fix is simple: when loading a game, I set the last neighborhood to the value of the current neighborhood that was loaded. Now time advances (or doesn’t) correctly.

Creating the releases was actually the most painless it has been. I don’t have it quite automated yet, but the Android build is pretty much a one-liner script. The iOS build is almost there, except I still have quite a few manual steps after using CMake to create the XCode project, such as adding the Images.xcassets to the project and then specifying that it should handle signing automatically and which team. I am sure these things can be automated, but I haven’t figured it out, and I wonder if Apple will change things yet again and break whatever I do anyway.

I’ll be announcing the new v1.4.4 update tomorrow in my newsletter, so sign up below to get the news as well a curiosity and a free player’s guide.

Thanks for reading!

Toytles: Leaf Raking Player's Guide

Want to learn when I release updates to Toytles: Leaf Raking or about future 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!

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>