Dev Diary #2 - Ship construction
Posted on May 24, 2016

Hi everyone!

Today, we’ll talk about one of the core features of Galactic Junk League (GJL) – ship construction. In GJL, ship construction plays a major role and will influence all other parts of gameplay. We want to give players the freedom to create their unique spaceships, which suit their playstyle, as well as visual taste. Read on to see how we’ve designed the features that make this possible.

Ship construction is a pretty big deal in GJL so we’ll split this topic into two entries. In this entry, we’ll cover functional design of the ship. Next time we’ll look at visual customization options.

Ship construction will take place in the player’s hangar (early concept art).

So let’s talk about functional design. When constructing a new ship, you’ll get to determine all of its attributes such as speed, maneuverability, durability, damage output and type, range, and special abilities. How do you do that? By placing construction blocks in a cube grid in a way similar to such games as Minecraft or Space Engineers. We chose a simple grid-based construction system for three main reasons: First, we find it’s easy to learn and use effectively even for casual players. Second, in our internal testing it has proven it allows for enough design freedom and variability. Third, this system is already hugely popular thanks to the games mentioned earlier.

Some of the construction blocks you’ll use to build your ship with their respective grid sizes visualized in green.

Most construction blocks have a special set of properties, which they contribute to the ship as a whole. For instance, you’ll start construction by placing hull blocks to create the ship’s chassis and basic layout, then you’ll add thrusters for speed, weapons for damage, armor to protect vulnerable areas and special ability blocks to add abilities (yes, you’ll get to pick a  specific set of abilities for each ship – more on that in another dev diary).

The position of individual blocks is just as important as their number. A ship that has vital systems protected inside its hull is likely to survive longer and a ship with well placed weapon turrets can do damage at a wider firing angle (think of broadside fire of large battleships).

A detail of our current Ship stats window shows the parameters you’ll be able to determine. The colored bars on top give a simplified overview. The Ship stats window will appear throughout the game and will allow you to compare your ship to others.

The number of blocks, that can be used to build a ship, is limited by its CPU’s processing power. Each block uses up a specific amount of CPU based on its impact on the overall strength of the ship i.e. weapons use up 50 CPU while a basic hull block only uses up 2. The only exception to this are abilities, which are limited by a separate parameter - Ability Power or AP. We made this decision so that we’re able to independently balance the number of abilities a ship has available. Both CPU and AP values are based on the level of the ship class. That means, that as you level up, you’ll be able to build larger and more powerful ships.

Btw the ship is not only built block-by-block, but also takes damage this way in combat. That means you’ll be able to make tactical decisions to target specific systems, such as to destroy an enemy ship’s thrusters to disable its movement, or shoot straight for its Ship core for a quick kill.

Which brings us to the Ship core. Each new ship starts of with a core which is something like its main control center and power source. It is also the center point from which construction starts. If the core is destroyed, the ship blows up, so you’d better stick some armor on it.

A spaceship with a visible Ship Core (the green crystal in the middle). Note: Do NOT keep your core revealed like this :-)

The construction model also partially reflects real life physics. For instance, acceleration and maximum movement speed is calculated based on the overall thrust force of the thrusters and the ship’s mass. Maneuverability (rotational acceleration and speed) is determined by the overall rotational force of gyroscopes and the mass distribution of all blocks (the ship’s moment of inertia). Note: We know that in space there’s no drag to stop your acceleration , but we added a max speed limit for the sake of gameplay :-)

Now, if this sounds a bit complicated to you, don’t worry. The system is designed so that you’ll be able to build a pretty decent spaceship just by using your intuition and a few test flights :-). You just need to know that more thrusters make the ship go faster, more armor gives the ship more durability etc. We’re planning to include a store feature where you’ll be able to get some pretty decent ships.

That’s it for this entry. There’s a lot more to cover, especially about the properties of specific block types (armor, weapons etc.). If you’d like to know more about the construction system, let us know in the forum. In the next dev diary, we’ll look at visual customization options for the ships.

See you next time
Martin “Gajxo” Gajarsky

Game Designer