Skip to content

Upgrade Tree

connor-golin edited this page Oct 19, 2023 · 26 revisions

The Upgrade Tree is a fundamental part of the game that allows players to upgrade to improved weapons and hammers. This initially extends to upgrade weapons and a building hammer (to place or upgrade to stronger walls) but in the future could include things like extractor or powerup upgrades.

Upgrade purchases can be made with extracted ship resource Nebulite and the cost increases with the depth of the tree.

Design

Sprint 2

Initial concept design:

Initially, lines between nodes were placed in a horizontal/vertical manner, with lines able to connect two sides of the upgrade tree together.

image

Final Implementation (with some example nodes):

To modularise weapons/buildables, three main trees were constructed to allow respective weapon/tool types to be placed under their corresponding node (i.e. melee in the melee tree, buildables in the buildables tree. This allows for a more consistent design pattern and extension for future weapons and tools. The building hammer can be upgraded to a stronger hammer - which allows the user to build stronger gates, walls, or turrets.

image

Sprint 3

Initial concept design

To provide more depth of gameplay to the user, proposed changes include coloured status lines between nodes, an equipped weapon highlight, and tooltips which allow the user to hover over a weapon/buildable and easily view its associated stats.

image

Final Implementation:

All proposed changes were implemented, with some minor additions including a redesigned background and title, and the materials label displaying the required resource to purchase items within the tree. Additional buildables and weapons were also implemented, including a new swarm missile, grenade, 'bluemerang' and explosive buildables. The overall design was carefully chosen to be in line with the Game Design Document.

Background texture source

image

Sprint 4:

New weapons and tools were added in Sprint 4, which required the Upgrade Tree to be updated. Each item was placed in its respective slot (melee, ranged, buildable) within the tree. The layout of the tree was also updated, as nodes were beginning to collide as an increased amount of items were added. This was done by restructuring the tree, and slightly modifying node X, Y spacing, as well as the overall window size to give the user a more visually pleasing display. Costs for nodes were also updated to reflect their effectiveness in terms of damage for weapons, or total build cost for buildables. This balances upgrades so that the most expensive items within the tree are based on their node depth, as well as the aforementioned item-specific metrics. Overall, this was to ensure progression made sense, and so that the user feels a sense of achievement when unlocking a high-level item as they take much longer to acquire.

Final Implementation:

Note, all ranged weapons and Dirt Wall are unlocked

image

Tooltips updated to reflect ammo cost

image

How to use it

  • The upgrade tree can be accessed at any time through the Upgrade Tree UI button on the screen.
  • On access, you will be introduced to the upgrade tree which allows you to purchase improved weapons or building utility.
  • The tree contains a melee, ranged, and building hammer tree - all of which provide unique upgrades to the player.
  • Cost increases the deeper into the tree you go, so you must save up your Nebulite by using the ship extractors.
  • Switching your equipped weapons to others within the tree is simple - just click on the desired node and equip it to a respective melee or ranged weapon by pressing 1 or 2 on your keyboard.
  • Upgrading your building hammer allows you to place additional structures - simply equip your hammer by pressing 3 and then choose a building to place with the T key.

Upgrades

  1. Melee: Weapons which can be used close range to attack enemies.
  2. Ranged: Can be used to attack enemies from a distance.
  3. Building Hammer: Allows the user to construct many different buildables such as walls, turrets, gates, etc.

Code Specifics

Changes to plan, code usage, and the UML diagram can be viewed at the Upgrade Tree Usage Wiki page

Testing Plan

The detailed testing plan is located on the Upgrade Tree Testing Plan wiki page

Clone this wiki locally