The Making of Shoot Your Shot


I have someone I like. Someone I recently got into a small disagreement with. They will remain anonymous. The reason I bring this up is that this disagreement happened a mere hours before the GMTK 2022 Game Jam. I was originally planning on participating in this Game Jam. I had been looking forward to it for a few weeks now. But since I was still processing this disagreement I decided to wait a few hours and start late.  

At around 5 pm local time or 7 hours after the jam officially started I began. But my head was not in the right place. As soon as I heard the theme Roll Of The Dice I immediately thought of the game idea for Shoot Your Shot. A luck-based dating game where you roll dice to progress a relationship. On paper, I liked the idea. It seemed small in scope and doable by one dev within 48 hours. However, I quickly realized that if handled incorrectly the game could come off as petty or vindictive. I did not want that. So after only participating in the game jam for a few hours I left and decided to work on the game over the next week instead. Starting on Monday. Give me some time to clear my head.

I planned to work on it Monday, July 18th with the hopes of releasing it Friday, July 29th. I did not get a finished build until Sunday, July 24th. These delays were partly due to a less rushed work schedule and due to unforeseen problems in polishing this game. Monday through Tuesday was spent adding the main systems. Wednesday was spent on concept art for the game. Thursday through Sunday was mostly just adding final touches and extra polish to the game.  

Well, there were several smaller problems and challenges that I ran into during the game development there were a few notable ones.

Drag and Drop UI elements are not something that I was familiar with before starting this project. After some looking around I found a tutorial by Code Monkey that explained how to do it. The method they used involved using Unity’s inbuilt UI Events system to track everything. It was very consistent and hardly something I had to think about once I got it working.

The Artstyle I went for was another interesting part of this project. Well, it is an art style that I’ve used before I’ve never released a project using it. It’s mostly just been used on small test projects. All the art is hand drawn by me in my sketchbook. I pencil and ink everything physically. Next, I take a picture of the drawings with my phone and upload it to my computer. After that, I open those pictures into Gimp (a free open source photo photoshop software) and cut out the individual elements. After that, I load those into Unity and use them as sprites. It provides an interesting look, but the process could be improved. For one, the camera on my phone is not the best quality for taking pictures. Also, I do not have a reliable and even lighting set for taking the pictures, instead relying on natural lighting. This results in the white balance being very different for each picture, some even skewing more toward the gray side. It also can create subtle shadows on the art assets. Lastly despite the massive raw file sizes, there appears to be some compression entering into the pictures somehow. For a small project like this, these problems are manageable, but for a larger game, I would want to smooth these out.  

The last notable incident came when I was making the final builds for the game. The Windows and Mac versions were built and ran fine. But for some reason, the Web version was not playing. I would make a build and then get an error when I tried to play it after uploading it to itch.io. The web browser wasn’t liking the build/<NAME>.framework.js.br file. After looking around at the 3 forum posts on this topic from 6 years ago I concluded it had something to do with a compression setting when the game was built. Why was this game giving me problems when web builds of other games worked fine? I had no clue. But here's what I learned. When Unity makes a web build of a game it can compress it in several different ways. One way, the default, is known as Broli compression and often ends with the files getting a .br extension. Another compression method Unity has is Glitz compression which gives files the .gz extension. Now apparently sometimes the header file can break under one of these compression methods. If this happens your game won’t run in the web browser. But after switching my game from Broli compression to Glitz compression it worked. Not sure why. But it worked. And now I know those are things you can change when building the game.  

In the end, it is not my best work. I’ve made worse games, I’ve made better games. But I'm glad I made this game. I made it at a time when I was uncertain about a possible relationship. It was on my mind a lot. And yet I’m glad the game didn't suffer from it. It didn’t become petty or vindictive. It's not a bad thing to build games based on personal feelings. Some of the best art was made that way. But also make sure not to bring down the game cause of it.

Lastly, I feel like I learned a few things by making this. But I also have a few other game dev projects I want to move onto. So follow me on social media and I’ll keep you posted on those. Thanks for reading! And don’t stop creating :)

[Sources]

Simple Drag Drop (Unity Tutorial for Beginners)

GMTK 2022 

GMTK 2022 Theme Video

Unity EventSystem

Gimp

Unity Answers Post

Files

Shoot Your Shot (Win) 1.0.zip 73 MB
Jul 25, 2022
Shoot Your Shot (Mac) 1.0.zip 82 MB
Jul 25, 2022
Shoot Your Shot (Web) 1.03.zip Play in browser
Jul 25, 2022

Get Shoot Your Shot

Download NowName your own price

Leave a comment

Log in with itch.io to leave a comment.