Game Off 2020–First week wrap-up
Just a little over a week ago the theme of the 2020 Game Off has been announced; moonshot.
moonshot — noun
an extremely ambitious and innovative project
the act of launching a spacecraft to the moon
a hit or thrown ball that travels a great distance with a high trajectory
moonshot thinking — noun
a type of thinking that aims to achieve something that is generally believed to be impossible.
In case you’re unfamiliar with Game Off or game jams in general, they are usually short-running events where you, either individually or in a team, have to design, implement and deliver a (fully) functioning game. It’s a great way to try out new ideas, build small prototypes or even make something that can later on turned into a business.
My brother and I decided to join last Monday. We wanted to test our limits and see how are skills have progressed over the last few months, so we came up with a multiplayer game idea that takes elements from different
battle royale games. Some of the things we would like to achieve:
- Room-based multiplayer up to 8 players per room
- In-game progression through levels, stats, skills and different weapons
- Hosted on a dedicated AWS Gamelift fleet
- Relatively fast game sessions, aiming for 5–15 minutes on average
- Low-poly, handmade assets including models, VFX and shaders
This in itself is quite ambitious on its own and fits the theme nicely, but to double-down on the
moon idea, the game will take place in space where each player controls a ship and owns a moon. Players can navigate the spaceship around the map, collecting scraps to gain experience points. Upon reaching enough experience, the player levels up and is able to choose between different stats to upgrade. On levels 4, 7 and 10 they get to decide between upgrading their weapons or their utilities. On top this, with each player level, the player’s moon also gains stats and different add-ons, like a shield that blocks a certain amount of damage or additional turrets that defend against intruders. Weapons and utilities spawn on the map randomly. Each weapon and utility has a unique functionality. For example, you might pick up a laser that does not have travel time but overheats if not used with care. Or you may find a booster jet that you can strategically use to dash forward a certain distance.
When a player’s spaceship is exploded, the player respawns at their moon. When their moon is destroyed, however, the player loses the game.
The last player standing wins.
So where are we at right now?
We’ve spent the last week brainstorming, prototyping and implementing the core functionalities. The core game loop is not quite done yet, but we’re very close. Multiplayer is working fine, although we’re only running it on LAN for now. We have ships, a basic weapon with multiple levels, scraps that can be collected to gain experience points and a moon that doesn’t really do anything just yet. Leveling up and gaining stat/skill points is also in the game, although there’s no way to use them just yet. The backend code is there though, so it’s just a matter of wiring things together once we have the HUD. We also built a procedural map generator that needs some tweaking and changing, but it does the job. The controls are okay, but still need polishing.
Here’s a short video of the things we have in place.
What do we plan for this week?
There are a couple of things we want to get done. For now we’re going to focus on implementing the whole core gameplay; as in the players will need to be able to destroy the other players’ moons and win the game.
We’re also adding a fancy HUD and different indicators for when a projectile hits a target or when the player takes damage.
Then we’ll move onto sound effects and different weapons. This might already be plenty for the week, but hopefully we can make some progress.
Our stretch goal is to implement a pre-game lobby where players can configure how they want to set up the game. Hosting is still going to be done locally for now.
My brother is on this full-time working away on the visual side of things, but I do have a full-time job so my time is fairly limited.
If you’re interested in seeing the progress, drop a follow to be notified of future pieces. I also blog here and there about other game dev stuff and even some devops topics.