WetJet

In WetJet, your goal is to see how far you can get without crashing your jetpack. You do this by tilting left and right with the Q and P keys, and boosting with B. Your boosting power runs out after a while, so you have to stop above a sewer geyser to refuel. You lose a life when hitting the ground, a seagull, or a bench. Once you lose all three lives, the game is over.

You can play the game here

What I did

I worked mainly on the playerโ€™s controls and movement. I also made a simple UI that kept track of lives and the amount of boost left. I also designed all the menus and buttons that included the art for it. I also did all the music and sounds in the game. The other programmer that I worked with did the continuous screen, obstacles, and all the art for that. We had two other members that were supposed to do the art, but they backed out in the last second.

What I learned

Being my first game jam where I was actually helping with the programming (all others Iโ€™ve done I mostly worked on the music and sounds), I was a little nervous going into it. Luckily the programming friend that I worked with was really cool and helpful. With his experience we were able to get a cohesive game together. I learned how to manage scope during the jam, and I think we got everything done that we wanted to do within the limited. There comes a point where we must accept that not all the cool ideas we had for the game will be implemented. It think focusing just on the making the one mechanic of flying fun helped streamline our goals. When first came up with the game, I was kind of thinking of making the controls ridiculous like the game QWOP, but reading reviews it became clear that itโ€™s best to keep the controls to what people are used to.

There were a lot of โ€œfirstsโ€ that I experienced in the game jam besides being the first time to program a game. Iโ€™m not used to adding different packages into my games that I didnโ€™t create for myself, so I had to get used to what my teammate added, as well as some of Unityโ€™s new input features. My teammate also suggested to use Unityโ€™s built-in rigidbody system rather than planning out all the movement through code. Being a little hesitant about it, I went ahead and implemented it and learned how to work with it to get it to do what Iโ€™d like. Figuring out the turning of the player was probably the most difficult part because I wanted the angle of where the jetpack was pushing off from to match the body angle, not just firing straight up and down. This lead to me learning about turning Quaternion angles to Euler angles that had to be applied in world space and back to Quaternion to be applied to the playerโ€™s transform.

We also had a lot of trouble with source control collisions between Unity and GitHub, even though there werenโ€™t suppose to be any. I had to make completely new scenes to try avoid the collision. Dealing with this problem took up a lot of the time, which isnโ€™t good when the jam is only 48hrs.