I Made 24 Games In 24 Hours

I’ve been using Defold since the summer of 2018 and in that time I’ve made a lot of different projects. Ranging from games I’ve spent many months on to several projects I’ve made in just a few hours. In fact, I’ve gotten really good at spinning up 2d prototypes quickly. So, I decided to put my skills to the test and create 24 games in 24 hours.

The main rule I followed was “No Generative Ai”. No Ai code, art, ideas, or music. I did allow myself to repurpose existing art and code as long as I wasn’t just copying in an entire pre-existing game.

Here’s the game if you’d like to play it blind:

Here’s a video I made about my process. It’s a video focused more on entertainment, I’m planning to get a little more technical in this forum post.

Full Breakdown:

Rather then create and upload 24 separate projects, I decided to contain everything within one game. I went with the theme of an arcade since it seemed to naturally fit. This also allowed me to give a reward (tickets) from each of the minigames that the player can use in the arcade to buy items (mainly shirts from a prize counter).

I designed each of the 24 games to have a main menu, how to play, high score, and game over menu. I was able to make the high score / game over shared between all games and just populate them using an init script when the collection is loaded.

Recreating each of these levels by hand would take time and copying / pasting ran the risk of me missing something. Since Defold stores files in a readable text format, I was able to write a script in python to automate the creation of each level. The hardest part was getting the .collection to print correctly since there are several instances of the “\n” escape sequence. I discovered that I could put an “r” before a python text string which ignored that and entirely fixed the issue.

At this point I was about 5 hours and 20 minutes in with the arcade, a single minigame, and a shell for each of the remaining games. From this point I was able to focus entirely on making the games. I had about 53 minutes to spend on each game.

Due to the nature of the challenge I ended up reusing a lot of art and code between each project. I was trying to save time everywhere I could. This resulted in several games with similar aesthetics. I lovingly referred to these groups of games as my “Space Era”, “Zombie Era”, “Strategy Era”, “Luck Era”, and “I’m Running Out Of Creativity Era”.

I ended up finishing the challenge with about 33 minutes to spare. I adjusted the rules to not count the arcade itself as a game. This let me create one more game and spend around 3 hours polishing. When I began I had started creating arcade machines for each game but stopped since I was running low on time. I closed out the challenge by making as many unique machines as I could:
zombie_d_day balloon_archer doge_rockets last_one_alive machine_bogart_jump machine_dodge_astroids

After that (and since the arcade itself isn’t counted as a game) I was able to polish up the arcade, redesign the layout, and add some secrets.

Personal Favorites (and how I made them):

Out of this challenge I have three games I really enjoyed.

“Celestial Search”
celestial_search

This game is from my “Space Era” where you pilot a ship an get to explore an asteroid belt littered with tickets. The tickets are set to spawn randomly so each time you play will be different. I also gave the ship momentum and a wide turning radius to add a skill element to mastering the movement. To top it off I had asteroids fly across the map giving the player something to dodge while playing.

Rather then calculate where tickets should be, I spread them out across the map and added a script with a random chance of deleting the ticket. This does have the effect of some playthroughs having uneven amount of tickets. I don’t think that’s a bad thing since the luck encourages re-playability.

“Door Bomb”
door_bomb

This game is from my “Luck Era” and is a simple game of chance. One of the doors has a bomb behind it while the other 2 lead up to the next floor. When the player picks a door, I added a little animation of the player going in then a random delay before the player learns if they succeeded or not. That little pause adds a lot of character. I was able to put a good amount of polish into this game too.

On a technical level there is only one real “floor” to the game. When the camera scrolls up I utilized go.animate and a go.set once it finished to return the map to the starting position. At this time I also randomize the door. This removed any issues with having to spawn new floors and potentially running out of game objects (if the player was super lucky).

“Free Will Warfare”

free_will_warfare

This game is from my “Strategy Era” and lets the player select one a few cards to play against the computer. 7 - King. I also added in the ace as an “assassin” card that can take out the King / Queen but looses to everything else. This creates a number of unique strategies of how to play against the computer.

On a technical level the computer does just randomly pick a card (had to do that with the time limit) but it is still a fairly formidable opponent 90% of the time.

This game also really shows off the user of the lofi-horror asset: Horri-Fold - a Lo-Fi Horror Shader for Defold

Regrets / How I Would Improve:

With the time limit I didn’t get to add art to everything I would have liked too. Some of the art looks to be very rushed (because it was). I tried to give each of the games a unique arcade machine. Near the end I was out of time and had to reuse several machine designs (making it harder to find some games). The arcade machine design for “Door Bomb” is notably bad, which is ashame since I love that game.

door_bomb

A number of games also still use my placeholder blue character.

fall_for_it

Lastly is the balance between games. Some games give out way more tickets then others. This creates a scenario where the player can easily optimize the fun out of the game by only playing those games. I briefly considered adding coins and having each machine cost a different amount to play. BUT I couldn’t figure out how the player would get more coins and I was already out of time.

Conclusion:

In conclusion this challenge was a lot of fun (if a bit exhausting by the end)! I enjoyed the creative process and troubleshooting on the fly.

It was also a nice break from a larger project my friends and I have been working on (something I hope to share with you all within the next month or two).

Here’s the game if you’d like to try it: 16 Bit Arcade [24 Games in 24 Hours] by IanGoGo

If you have any questions on specific games or my creative process, I’m more then happy to answer!

Thank you so much for reading and I hope you have a wonderful day!

27 Likes

This was fun! Played everything except the machine that’s locked in the spare room, only at 350 tickets.

I don’t allow analytics on my network so I won’t show up there.

I got good at the circle game when I figured out the spacebar release was the trigger, not press. I enjoyed the simplicity of it. I stopped focusing on it because the ticket rate was relatively low.

Good work!

3 Likes

Glad you enjoyed it!

The high scores are all local. Within the 24 hours I didn’t attempt (or really even know where to begin) adding server side stuff for high scores.

The circle game is a lot of fun! If I had time to add more juice to it then it probably would have made my top list. Yeah, the ticket balancing is way off, some machines give way more then others unfortunately.

1 Like

Really nice set of games! You nailed the jam! :heart:

I’m astonished I guessed the number first time in only 4 tries!

image

3 Likes

Thanks! I had a blast making this one!
That’s impressive! Good work!