Inspiration

After watching the railgun movie scene from Transformers: Revenge of the Fallen, we had the idea to use this in a game. The concept came to fruition when we thought to use it to help students learn projectile motion and kinematics. Many students learn these concepts and mathematics in their high school physics class, and it can oftentimes can be boring and frustrating. As high schoolers ourselves, we understand the struggle with physics for many, and this is a fun solution used to help provide students effective practice for their success in the physics classroom.

What it does

Kinematic Kaboom provides practice for a subset of physics: projectile motion. Within the game, the player controls the cannon on a battleship used to destroy a computer battleship with the same goal. Given a horizontal distance between battleships, the player must calculate a combination of an angle and initial velocity needed to successfully hit the computer battleship. Air resistance, drag, and forces other than gravity are negligible, and only variables within the kinematics equations should be accounted for. Basic trigonometry to use the kinematics equations effectively when calculating trajectories is needed to be successful. As the player progresses through more battleships, there score will increase for their chosen difficulty. Depending on the difficulty - easy, intermediate, or hard - that is chosen, the computer will have a probability of calculating the correct trajectory. As the difficulty increases, the greater the probability. If the player's battleship is destroyed, they will return to the main menu. Within the main menu, kinematic equations are provided to be used in trajectory calculations and the highest score obtained in each difficulty is displayed.

How we built it

The initial construction was planned out using Microsoft Paint, .txt files, and Google Docs. After the planning phase, we started with the first step which was to start making the art and the base level within Unity. While the art was being created, substitution art was used and game scripts were created to control functionality of the different game objects in the scene. This included the main menu and sub-menu scripts, player and computer scripts, and the player and computer projectile scripts. Unfortunately, some art was not implemented due to the time crunch, but the main components were all created and are functional in game. The main menu theme was designed using Song Maker, and thanks to many YouTube videos and YouTubers, we were able to code the game without hardly any experience.

Challenges we ran into

We ran into a multitude of challenges, but one was drastically more dragging than the others: connections. When we were creating the scripts for our game and had numerous game objects to attach them to, things became really messy. Connecting the shooting scripts to the battleship game objects and instantiating them in a level with another script was like figuring out where a mess of wires went in an electronic. Then, we needed to connect the high and current scores together for each difficulty and tie it back to the level generation and main menu. Overall, this experience made us better at making associations between different pieces of code and making them work together in unison.

Accomplishments that we're proud of

The complexity of our scripts in relation to the level of coding experience makes ourselves proud of the work and effort put into them, and they work and are functional! Moreover, the artwork and animation was created without much prior experience, and its simplicity matches the game's style nicely. We are proud of every component that went into Kinematic Kaboom.

What we learned

What stood out in Liquid Hacks 2.0 was the amount we learned. Because we have not competed in many hackathons, this was another great step in learning game development. Every step of the way, from planning to execution to finalization, we improved our skills at coding in c#, animation, art creation, working within Unity, project design, planning, team coordination, and especially time management. A big take away from Liquid Hacks 2.0 was time management. Even though we are relatively new beginners and our skills are not developed, we learned to understand how to effectively manage time. We learned that things should be done as soon as possible, and procrastination is fatal. You think you'll have it done in an hour, but it ends up taken two, three, or even four hours. For instance, when submission day came, we thought finalization would take a couple hours. It ended up taking four. We thought we would simply put in the final animations, connect scripts and scene objects that were created days ago, do some tweaking, and voilà. How wrong we were, but how fortunate we were to learn it now.

What's next for Kinematic Kaboom

Because we're students in high school, showing this to our physics teachers would be our next step. Maybe this can be used by the teachers to encourage students to practice their newly learned skills.

Built With

Share this project:

Updates