Categories
Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report: (Still) Upgrading to SDL3

In my last update, I said I was working on migrating my code from libSDL2 to libSDL3 for a Major Update(tm) for my strategic leaf-raking business simulation game, Toytles: Leaf Raking.

I continued the work this past week.

Sprint 2025-MJ_3: Preproduction

In progress:

  • Update SDL2 to SDL3

Toytles: Leaf Raking

I’ve modified almost 2,000 lines of build scripts and code so far. Most of them are renames of existing functions that didn’t change much, but some of them involved a bit more work.

For example, SDL_mixer is completely different, which means that my code now needs to be changed to create a mixer, then create tracks. Before I just had channels to worry about.

It looks like instead of getting one music track and a bunch of sound effects the way SDL_mixer provided before, I can mix and match multiple music and sound effects in a more unified way. So it will be nice when it all comes together.

Porting can be tedious, but it has been helpful to go through it step by step and see how this migration will directly impact things.

And there is a light at the end of the tunnel as the list of compiler errors is now fitting on a single screen.

So I’m almost done, but I’m not done yet, and these are the days when I wish I was able to dedicate full-time effort to the work.

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!

Categories
Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report: Upgrading to SDL3

Last time, I reported that I had started working on my first sprint for a Major Update(tm) for my strategic leaf-raking business simulation game, Toytles: Leaf Raking.

This past week I started the work of migrating my code from libSDL2 to libSDL3.

Sprint 2025-MJ_2: Preproduction

In progress:

  • Update SDL2 to SDL3

Toytles: Leaf Raking

Technically, this work started in the previous sprint, but it was a very short sprint that started near the end of the week.

Also, this is a somewhat technical update.

Years ago, I wrote an abstraction over my usage of SDL2. SDL3 is a major change from SDL2, but I anticipated that the impact should be isolated to a few files that directly reference SDL2.

Even so, I’m finding that while many variables, constants, and functions are merely renamed, there are some areas in which SDL3 changed how it does things, or at least there is enough change that it requires me to spend time digging into it to determine if the changes are relevant to what I am trying to do.

For instance, the SDL2 to SDL3 Migration Guide mentions that “SDL_WINDOW_FULLSCREEN_DESKTOP has been removed” and that “Windows now have an explicit fullscreen mode that is set, using SDL_SetWindowFullscreenMode()” which makes it sound like I can’t do what I did in SDL2, which is use SDL_CreateWindow() for either fullscreen or resizable windows.

But when I looked into it, SDL_CreateWindow() still lets me pass in a SDL_WINDOW_FULLSCREEN flag. Creating a fullscreen window is still fine, but the way to set an existing window as fullscreen is different…something I never do in my code, so I don’t have to worry about handling this change in my own code.

It’s a little tedious, but the migration guide is very helpful, and the error codes are incredibly helpful:

1
2
include/SDL3/SDL_oldnames.h:1168:26: error: ‘SDL_RendererFlip_renamed_SDL_FlipMode’ does not name a type
 1168 | #define SDL_RendererFlip SDL_RendererFlip_renamed_SDL_FlipMode

That’s very thoughtful of the SDL3 developers!

And it also gives me an opportunity to look through some of my oldest parts of my code to see if there is anything I can also cleanup.

My hope is that I can get this migration work accomplished quickly early this week, and then I can make sure that the game still runs the same as before. Then I can start the work of updating the game itself.

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!

Categories
Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report: Logos and Infrastructure

In my last report, I was concerned about how much work I identified for a Major Update(tm) for my strategic leaf-raking business simulation game, Toytles: Leaf Raking.

Last week, I put together an initial roadmap and started work on the first sprint.

Sprint 2025-MJ_1: Preproduction

In progress:

  • Update SDL2 to SDL3

Early in the week, I started looking into fun fonts to use for a new logo for the game.

The current logo, if you can call it that, is pretty simple and uninteresting:

Toytles: Leaf Raking old simplistic logo

So early in the week I started looking into fun fonts to use for a new log for the game.

I found quite a few, fell in love with one, then had to abandon it when it turned out that the font in question required me to pay a license fee for use in a logo for a limited number of uses.

So I found a few others and found that I can love a different font. Here’s an initial stylized logo that I really like:

Toytles: Leaf Raking new logo prototype

I toyed a bit with the kerning and outline, and a colleague added some iconography that showed some potential. Basically, don’t expect it to be the finished logo.

At the same time, though, I got really excited about the project upon seeing it. I think in the future I will spend time making a nice logo early in development of any new projects.

Later in the week, I set to work to finally update libSDL2 to libSDL3. I anticipate it might be tedious work, but I hope it isn’t going to require major surgery on my game’s code.

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!

Categories
Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report: How Is this Backlog So Huge?

Last time, I reported that I was grappling with big questions regarding the scope of a Major Update(tm) for my strategic leaf-raking business simulation game, Toytles: Leaf Raking.

I started by putting together everything I currently would like to see in a Major Update(tm) and would worry about what to cut or streamline later.

For my last few projects, I have found that I tend to have close to 100 high-level tasks.

But those were new projects, built from scratch, and with my part-time efforts, they can take me sometimes a year to develop.

A Major Update(tm) to an existing game shouldn’t be so bad, right?

So why do I already have 70 tasks identified? It’s almost like I might as well create an entirely new project!

Many of these tasks are actually quite big, with some unknowns that I will need to identify and break out into their own tasks.

For instance, if I want to create a better looking town, it isn’t enough to just redraw the background, streets, and sidewalks. I would also need to redraw the houses in the neighborhood, including their yards, and the trees.

And of course the general store will need a facelift.

Store

And that’s just what I can think of offhand.

I’ve also been giving considerable thought to the general art direction as well as audio. I originally thought I would try to preserve the slapdash nature of the art while making it a bit more appealing, but now I am considering really focusing on the “toy” part of Toytles.

What if the game looked like it was a bunch of toys being played with by a kid with an active imagination? The houses would need to look like toy houses, with decals and painted blocks. The characters should look like action figures talking to each other with perhaps barks that sound like a kid is mimicking all of the voices.

Which of course might also impact the scope. But I’m taking my time with figuring this all out before I commit to development.

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!

Categories
Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report: Asking the Big Questions

First, don’t forget that I’m asking for fan submissions for Clown Alley Creator. Send me your clowns, and I might share them here and on social media! See details at that link.

In my previous report, I broke down some of the ideas I had for a Major Update(tm) for my strategic leaf-raking business simulation game, Toytles: Leaf Raking, into a few major categories.

Toytles: Leaf Raking

This past week I had other priorities for my time and energy, so I didn’t make much progress on fleshing out the plan, but I did find myself chatting with a few people about what I am trying to do.

And it got me thinking about all sorts of things, such as:

  • What is the exact impact that I hope to have with this Major Update(tm)?
  • How much time do I want to commit to it?
  • Should I look into contracting an artist, which will cost money but save time (hopefully)?
  • Does one big release make sense, or should I break it up into frequent, smaller releases?
  • Even with the new look and feel I hope to go for, how do I find customers who want to play it?

No matter how big of a Major Update(tm) I want to do, I am confident that I can create a solid game development project plan for it.

But how do I determine how big of a Major Update(tm) to do?

Because I also have to think about opportunity cost: time spent on trying to improve the appeal of Toytles: Leaf Raking is time not spent making a new game.

The faster I can make this update, the sooner I can put it out there and promote it.

But I don’t work on GBGames full-time (yet), so I know that there is only so fast I can go. It takes me months to do what a full-time game developer might do in days or weeks, which means that while I might want to only dedicate a month, realistically I might find that I would put hardly a dent in the update in that time.

In the end, I’m trying to determine how much I want to invest in this Major Update(tm). It’s hard for me to determine because I do not have a ton of market research and insight that justifies such an investment.

It is entirely possible that my strategy game about running a leaf-raking business aimed at pre-teens and teens won’t benefit significantly from significantly improved production values. I want to see what happens if it does, but I also recognize that I don’t want to spend years of effort on it.

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!

Categories
Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report: Getting Expansive with Ideas

Last time, I reported that I was starting to prepare for a Major Update(tm) for my strategic leaf-raking business simulation game Toytles: Leaf Raking‘s 10 year anniversary next year.

Toytles: Leaf Raking

This past week I spent time going through my old notes for the project, some of which date back to 2014.

I had some ideas that sounded good but got cut or changed as progress was made, and other ideas are…less good.

But I’m going through all of them to help me determine what I might want to put into this Major Update(tm).

I had a number of ideas that could be implemented relatively quickly, and other ideas that would require me to add entire features or systems.

At this point, I wanted to think about all the possibilities before limiting the scope by looking at the calendar, my capabilities, and reality.

But I’ve already started to categorize some ideas. Low-hanging Fruit are things like replacing background graphics, updating the font, using better sound effects, adding music, and updating the general user interface. These are things I can do without substantially changing the code or worrying about impacting the game play, but that I think will enhance things quite a bit.

Requires Some Effort to Enhance the Game are things that require me to add or modify code and art to support things that can’t be done yet. For instance, the game supports one save file, but there is no reason not to support multiple saves. There is no way to mute the audio, which makes sense since the game has no music yet, but I should allow the player to not only mute sound effects and music but also adjust their volumes. And I should create a proper ending, as right now the ending is quite anticlimactic.

And then there are Game Play Improvements, which not only require updates to the game but some hard design work to make sure that things are improved and not broken accidentally. I’ve mentioned this before, but I think the main game play of potentially getting interrupted by rain while raking leaves and needing to wait it out can be quite clunky. There are also awkward edge cases that result in what might be seen as unfair situations, such as finishing a yard at midnight and not getting paid because technically midnight is when leaves get added for the next day.

The first two are mostly technical in nature, as in I am doing art swaps or adding features with known constraints and parameters. The third is likely to be the most challenging because there is a risk of potentially unbalancing things and anticipating that I might need to do more work to rebalance the design.

I also have plans to update the app icon:

Toytles: Leaf Raking - app icon

Seriously, it could be a LOT better.

And I want to create a proper trailer and even add translations.

If you’ve played Toytles: Leaf Raking, I’d love to hear from you. What did you love about it, and what do you wish you could do in it?

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!

Categories
Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report: Preparing for a Major Update

I recently released a few minor updates for my games on both Google Play and the App Store. As far as I know, any current requirements are met, and I have time before I need to worry about the next required update.

So I started turning my attention to planning a Major Update ™ for Toytles: Leaf Raking, my leaf-raking business simulation game that was originally released in 2016. I want to release that Major Update for its 10 year anniversary next year!

Toytles: Leaf Raking

So, what is going to be in this update? I’m still figuring it out, but the main pillars of the update will be improving the game play and enhancing the visuals and audio.

I still think Toytles: Leaf Raking is a good game, but there is a lot of room for improvement.

The gist of the game is that you are balancing a number of resources: time, energy, money, yard bags, the durability of your rakes, and your responsibilities to your clients. The weather plays a factor as well, as the wind on a given day will determine how many leaves you might need to rake to earn money, but any precipitation will slow you down as you can’t rake while it is actively raining.

But in practice, it is kind of clunky. If it is drizzling out, you’re supposed to wait 10 minutes and see if it stops. If the drizzle continues, you can’t rake leaves. So wait some more. And if you do get a dry spot, you might find that you need to stop raking if it is drizzling again. While drizzle operates in 10 minute increments, actual rain is an hourly event, so waiting 10 minutes doesn’t make sense unless it is to get to the top of the next hour.

And heavy rain is an all day event, which is likely combined with heavier leaf fall that you can’t actively manage until potentially the next day. Other than getting to rest earlier or meet new clients and shop for supplies, such days don’t let you do much, which isn’t exactly fun.

Later on, I wanted to retroactively make the game feel more alive, so I tried to give the neighbors personalities. Today, if you speak to them, they say different things throughout the season, but it was still quite limited, and in terms of your goal of earning enough money to purchase the Ultimate Item(tm), such dialogue wasn’t relevant.

I also recall that when I was making it that I purposefully made the graphics quickly. That is, I am no artist, and you wouldn’t mistake me for one when you look at this game. I found that I would spend way too long trying to make my art look less bad, and it was still bad, so I tried to avoid wasting time on improving the art and instead focused on making the game.

For example, here is a kitchen scene featuring your parents who give you advice and tips:

Toytles: Leaf Raking - the kitchen scene

I want to say that the background was a 2nd pass effort, but I also remember putting blobs of color on their plates without really having any idea what they might be eating.

In a way, the art has its charm (I hope?), and I want to try to keep it, but I also recognize that there isn’t a lot of consistency and it could be greatly improved. The HUD, menu buttons, and menu frames all look pretty basic and terrible.

The game doesn’t look too great in motion, which means it isn’t fun to watch someone else play and it is probably hard to follow what is happening. I added transitions between screens for one of the updates, which helped to make the game feel more user-friendly and intuitive, but most menus do not have it, so it is still quite jarring at times.

Music doesn’t exist, and the sound effects are very simple and minimal. There is a lot of room for improvement here.

I expect that the art and audio will be the easiest to improve, although it will still be a lot of work to add animations and effects.

But the hardest work will be improving the game play. I want to keep the core strategic focus on balancing resources, but I am considering a complete overhaul of the mechanics to make it more intuitive and more playful. I expect that I’ll be doing quite a bit of prototyping.

I am still figuring out just how much scope is going to be in this Major Update(tm). Maybe this should be a proper sequel? For those of you who have played Toytles: Leaf Raking, I will definitely be looking to hear from you about what you love and what you wish was better. 10 years is a long time, and I really want to celebrate.

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!

Categories
Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report: More Google Play Updates

Last time, I reported that I was creating Google Play updates for all of my games to support 16KB memory pages.

I published those changes last week, so now you can play Toytles: Leaf Raking, Toy Factory Fixer, and Clown Alley Creator on your newer Android devices.

And if you’ve tried out Clown Alley Creator, send me your clowns! I shared my first fan submission last week, and I can share yours next! Learn how at this page, and I look forward to seeing what you come up with!

And don’t forget you can play all of my games on iOS, Windows, Mac, and Linux as well!

Meanwhile, I have started working on a major update for Toytles: Leaf Raking, which will be 10 years old next year. As I said before, I want to update the visuals and streamline the interface to celebrate, and I hope you look forward to it as well.

On a side note, I also did some decluttering of my office to make some of my game design prototyping tools more accessible for me to quickly pick up and use. I’ve been getting some ideas for new game concepts that are starting to excite me. Stay tuned!

Speaking of staying tuned…

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!

Categories
Games

Meet Klwnie the Clown (Fan Submission)

Earlier this week, I asked for fan submissions for Clown Alley Creator, Clown Alley Creator, a creativity tool about creating your own fun clowns.

The first submission comes from Andrew P.

Meet Klwnie the Clown!

Clown Alley Creator - Klwnie the Clown, submitted by Andrew P

Thank you, Andrew P! I love the combination of colors and the make-up!

Now, it’s your turn! Learn how to submit your own clown creations at this page, and I look forward to seeing what you come up with!

Categories
Games

Fan Submission Request: Send In Your Clowns! 🤡🤡🤡

A couple of months ago, I released Clown Alley Creator, a creativity tool about creating your own fun clowns.

Have you tried it yet? If not, get it now! It’s free for Android, iPhone/iPad, Windows, Mac, and Linux.

Clown Alley Creator - feature graphic

In that time, I’ve seen some fans share their creations with me, either through email or through social media.

I would love to see what you made with Clown Alley Creator, so I’d like to ask you to share your favorite clown faces with me.

  1. If you haven’t already, get Clown Alley Creator for your iPhone, Android, or desktop computer.
  2. Make some clowns!
  3. For each clown you want to submit, select your clown in the Gallery View so you can see a close-up with your clown’s name at the top, then take a screenshot.
  4. Subscribe to the GBGames Curiosities Newsletter if you haven’t already, and reply to the latest email you receive from it with your first name and the first initial of your last name, and make sure your screenshot is attached.

If you have any questions, feel free to ask below, and I’ll try to clarify or help you.

When I receive your submission, I might share it on my blog with a credit to you, as well as on social media.

Here are some examples I’ve made recently for my own clown alley in case they help inspire you:

Here’s how:Clown Alley Creator - Preston the Clown

Clown Alley Creator - Vicky the Clown

Clown Alley Creator - Bob Tale the Clown

Clown Alley Creator - Cass O'Roll the Clown

Clown Alley Creator - Hope the Clown

Clown Alley Creator - Chromy the Clown

Remember, in order to submit your own zany and fabulous clown creations, sign up for the GBGames Curiosities Newsletter and reply there!