How to add a new Part
Adding an Upgradeable Drone
This guide explains how to add an upgradeable drone to your game.
A drone is an auxiliary game object that automatically follows the player and attacks enemies. The drone has two upgrade levels, each with distinct visual and functional characteristics:
Level 1 – Cube: the basic version of the drone.
Level 2 – Sphere: the upgraded version, with increased firing rate and improved attack efficiency.
Part Prefab
Open the Part prefab.
Create an empty GameObject named Drone and parent the visual representations of the different versions (Cube, Sphere) under it.
Configure the Transform component on the Drone GameObject.
ReferencePlane A helper object used for aligning parts. Important: Make sure to deactivate this object after positioning the parts.

Open the Enum.cs file. Add a new enumeration named Drone.
On the Part prefab, register the drone visual objects in the PartLevelController component.
Important: The order of elements in the array matters.

In Play Mode, you can spawn a Level 1 drone. You can drag it and upgrade it on the board.

PlayerGraphics Prefab
Add a hierarchy of Drone objects:

Add an UpgradeLevelSwitcher component to the Drone GameObject. The following components will be added automatically: PartLevelController and PartVisualsController.
Set up all references in the components.

Add a BoxCollider to the Drone GameObject and assign it to the Player layer (Select: No, this object only). This is required for Raycast interactions during upgrades.

The object is now ready for upgrades.

In the DefaultPlayerProgress config, add Drone and set the initial part level:

After completing a level, the next upgrade becomes available for all parts. In the RewardConfig, assign the corresponding sprites for drones to inform the player.


This guide provides the foundation for adding a new upgradeable element.
From here, you can further develop the drone by adding features such as natural flight mechanics, destruction of the drone along with the vehicle, the ability to detect enemies and deal damage, and much more.
Last updated