Skip to main content
‹ Back to Tutorials
Intermediate Game Dev

Trixel Rocket 2 - Devlog 08 - Building a new Enemy Ship called The Dart with it's own game mechanic

Oct 31, 2020
About this tutorial

#TrixelRocket2 Devlog 08 - In this video, I am building out a new enemy ship for the game Trixel Rocket 2. The ship is "The Dart" and will zip in and zip out really fast as it's attack method. 🚀 Download Trixel Rocket for free on App Store at: https://apple.co/31s4gzt ► Download Unity at htt

Written Guide

Devlog 08 of Trixel Rocket 2 covers the build of a new enemy ship called the Dart. What makes this one worth a devlog isn't the model itself so much as the reason it exists: the Dart was designed around a specific attack behavior, and that behavior is the point.

Enemies exist to serve level generation

The larger job in progress here is the beginning of level generation for Trixel Rocket 2. Procedural or semi-procedural level building only works if there is a roster of pieces worth drawing from, and for a shooter that roster is the enemy list. Building the generator first and the enemies later tends to produce levels that are technically varied but feel identical, because every encounter plays the same way.

So the order of work here is deliberate: create a bunch of different types of enemies first, and give the generator something with real texture to assemble.

Every enemy type gets its own mechanic

The rule Jerry is working to is that each enemy type has its own mechanic for how it attacks your planet. That single constraint does a lot of quiet design work. It forces each ship to be distinguishable in play, not just in silhouette, and it gives the player something to learn. Once a player can recognize a ship and predict what it is about to do, dodging stops being random and starts being a skill.

It also keeps the enemy list honest. If a new ship can't be described in one sentence of behavior, it probably doesn't earn a slot.

The Dart's mechanic: hit and run

The Dart darts in, fires a bunch of blasters, and darts back out. That's the whole loop, and it's deliberately short. Unlike an enemy that parks itself in a firing position and trades shots with you, the Dart never gives you a stable target. It commits to a burst, then leaves before you can line up a clean response.

The result is an enemy that causes a lot of havoc without being individually tough. It moves back and forth across the play space, which means the threat isn't only the blaster fire but the constant disruption of where you were planning to be. Its name is the mechanic, which is a good sign a design idea is tight.

What to take from this

If you're building an enemy roster for your own game, start from the verb rather than the model. Decide what the enemy does to the player, name it after that, and let the shape follow. A ship called the Dart that darts is easy to build, easy to balance, and easy for a player to read at a glance.

Then make sure no two enemies share a verb. That's the cheapest variety you will ever get, and it costs nothing at runtime.

Unity tools by Bliz Studio
Built for our own games — now on the Asset Store

Multi Tag — unlimited hierarchical tags for any GameObject. Hierarchy Pro — style your whole hierarchy with rules. Made by a Unity dev, for Unity devs.

Explore our Unity assets →