For my Game Tools course I will implement an enemy manager tool that will help level designers through the development process of Empyreum Ascension. This tool will basically allow them to spawn individual or groups of enemies in any location in the scene of the game.

How will it be used?

The script will be attached to an empty game object. In order to select the spawn location, the user will need to click on the position where a gizmos shape will appear. The user will also be able to specify how many enemies will spawn within a set radius for each location. Additionally, there will be an option that will expand the editor uncovering a number field for each pre-set type. The user will be able to use these to mix pre-set types. They could spawn 2 heavy armor soldiers and 5 normal soldiers as an example.

When enemies spawn, there will be a red bar that will appear on top of the enemy indicating their health points. I believe this will be useful when testing player attacks on enemies. Health bar will only appear on scene for debug purposes.

Pre-set types

Designer will be able to instantly create an enemy model using a button through the inspector. There will be two pre-set types: Normal soldier and Heavy Armor soldier.

Normal Soldier

Health: Regular

Armor: None

Damage: Low

Movement speed: Average

Weapon Type: Blaster

Heavy Armor Soldier

Health: High

Armor: Heavy Armor

Damage: Medium

Movement speed: Slow

Weapon Type: Blaster

Enemy Data

In case the designer wants to change the preset values, they will be able to do so by pressing the customizable button. This will allow the following fields to show up:

  • Health points
  • Armor Type
  • Damage points
  • Weapon Type
  • Movement Speed
  • Firing Rate

Steps for creation of tool

  • Implement an Enemy data class.
  • Implement click event and draw gizmos at the location where player clicks.
  • Create a custom list class that stores each location and allows the player to set a radius value.
  • Include a field that will allow the user to set enemy model.
  • Implement spawning event.
  • Include health bars on top of spawn enemies.
  • Implement pre-set types of soldiers and also make sure that unnecessary fields/options are not effective when player uses these.