Play It Here
This is a game I designed and coded with my classmates Hugo & John.
Our task was to create a game in 3 weeks with the following themes in mind;
- Cycles of life
- Unusual aftermath
- Shoes in places they shouldn’t be.
It was an exercise in rapid development, decision making & team work.
We decided to make a game like Shopping Cart Hero, which we overlaid our themes and our own spin on things.
To satisfy the themes we chose to show time passing by changing the backgrounds to different times of day and aging the character when they got new vehicle upgrades (Cycle of life); We had the character driving a shoe (Shoes in places they shouldn’t be); And, once the player lands their jump, an almighty foot comes down and crushes them (Unusual Aftermath). Because, maybe the player character stole its shoe? not sure, don’t read into it too much!
The design of the game was already laid out within the project we adopted as inspiration. This sped things and I immediately created the functionality of the basic game loop, which was;
Drive down ramp, jump and flip mid-air,
Land or crash,
Get Scored,
Upgrade your vehicle,
Repeat.
Players were scored on their distance travelled and the height achieve multiplied by number of flips made. If the landed the jumps there scored would be unchanged, if the crashed their score would be harshly penalised. Higher scores would afford you better vehicles and better control of the vehicle so you are able to get higher scores! What an incentive!
Upgrades included were;
These upgrades made for interesting variation within gameplay, at least until you got the best vehicle & rocket.
Vehicles
Vehicles were controlled with the arrow keys or w,a,s,d; up for accelerate, left and right to tilt.
There were 4 vehicles in total. They differed in looks, speed, and rotation control.
Each vehicle prefab was setup with all upgrades already attached, their functionality would be enabled when the corelating upgrade was purchased.
Each vehicle was already loaded into the scene, and each would enable and disable for whatever vehicle the player chose.
See the different upgrades attached to the vehicle:
I wanted to focus on a satisfying crash system, as players would be doing a lot of this.
So I kept the player object and the vehicles separate. I held the player within the vehicle using colliders, which would disappear when the vehicle hit the ground upside down and eject the player away from the car. To achieve this I used ray casts to detect collision, this way the vehicle could tip on its ends and almost fall over, but tip back the right way, which lead to some fun and thrilling landings.
See below:
Some demonstrations:
Upgrade Screen & Scoring System
I created the Rockets upgrade for the vehicle. This was done by adding a temporary boost to thrust and dropping the gravity down to emulate the propulsion of the rocket. I also added a slight shift effect of the camera which would temporarily fall behind the players position focus and catch up moments later, this gave a nice “powerful” effect to activating the rockets
To create the scoring system, I had a collider as a trigger positioned at the end of the ramp. When the vehicle passes through it, the distance and height of the vehicle travelled from that point were recorded and stored for scoring.
A screen showing the score would appear and then players would proceed to the upgrade menu.
These points were then used as currency to purchase the upgrades.
Initial Look:
Final Look:
Players were scored on their distance travelled and the height achieve multiplied by a figure based on the number of flips. But scores were reduced to a tenth if they crashed.
This was an interesting system to set up as most past experience has mainly been in physics mechanics. I learnt a lot about how a few simple tracking variables can make a game so much more engaging!
The Upgrade System was also a new task I hadn’t played with yet.
The system is a matter of bool states which govern sprites and stats. The player vehicle prefab object has the upgrades already on the object, So when the player has enough points, they “purchase” a choice which activates the selected upgrades functionality and sprite.
I had a lot of difficulty making the upgrades work seamlessly with players changing upgrades. I found the changing of vehicles and transferring the already purchased upgrades difficult because of the amount of unique scripts there were attached to each vehicle. This definitely gave me some thought as to how to set up vehicles and upgrades in the future.
Art
Art was mostly handled by my classmate Hugo. He supplied the pixel art of everything you see!
We needed a few more backgrounds so they were done up, though I made a few changes to the colour schemes as I thought the colours were far too harsh;
Initial Look:
Final Look (with launch ramp in view):
I softened the colour pallets and added some variation for morning/sunsets. I also used a gradient tool to better blend the trees into the colour of the time or day.
That’s all folks!
For all other things you saw in this project, it was completed by my talented classmates!
Here’s some footage of uninterrupted gameplay:
And if you’d like to play it yourself, CLICK HERE to check it out!