Cargo
Engine | Godot
Team Size | Three
Duration | 3 Days
Cargo is a 2D cargo collection game (pretty self explanatory). The player has to collect cargo and drop it off at designated ‘collection bays’ where they can purchase upgrades in exchange for dropping off the load. Asteroids are about, so be careful to avoid them. Don’t get too close though, the ship can crash into the cargo, it can damage the player and the goods will be lost. Use the tractor beam to pick up the freight safely and securely.
Game Physics
The game is set in space, so you would think that there wouldn’t be any physics. That, however is not the case. All of the entities (besides the collection bays) have rigidbody based movement.
The player ship has no gravity being in space and all, but still has the rigidbody component which is how I got the movement to feel so slow. The linear velocity of the player ship is clamped between a minimum speed and a maximum velocity, which is how I prevent the player from going to fast.
The cargo is effected by gravity, which is why they sit on platforms. When the tractor beam is activated, the haul has an impulse applied every frame that the tractor beam is colliding with the cargo. This allows for the merchandise to exponentially increase in speed when in the beam.
The asteroids come in three different sizes determined randomly at the start of each level. With each different size, the asteroids each have different speeds that they can travel, also determined randomly.
Leaderboard
Cargo was made for the ScoreSpace Game Jam #18. This Jam has the requirement of having a leaderboard system in place either online or offline. For my game, I decided to use the SilentWolf Godot backend services to help set up a global leaderboard. Learning how to use the SilentWolf API was straightforward, and I was successfully able to submit my game to the Jam with a working global leaderboard.
Upgrade System
Cargo has a basic upgrade system in the game. The player can purchase upgrades with the obtained goods. Upgrades in the game are:
- Increased Beam Length
- Stronger Beam
- Faster Fire Speed
- Faster Ship Speed
In addition, you could also use the obtained cargo to repair your ship.