Book Image

Creating an RTS Game in Unity 2023

By : Bruno Cicanci
4.5 (2)
Book Image

Creating an RTS Game in Unity 2023

4.5 (2)
By: Bruno Cicanci

Overview of this book

Building a successful real-time strategy game is challenging, because of both the complex mechanics and the need to strike a balance between different elements, ensuring that players enjoy creating and executing strategies against the game's AI. Creating an RTS Game in Unity 2023 will teach you how to install and set up the Unity game engine, create a new 3D project, and build a level editor to make it easier to modify and add maps to a game. The RTS game will start to take shape while you learn to implement different core systems such as melee and ranged battles, unit spawners, camera controls, dynamic mapping generation, basic enemy AI, and the pathfinder algorithm. You'll also get to grips with implementing command units to perform actions, crafting and producing resources, basic physics and collision detection, and building an RTS game from scratch using C# and the latest features of the Unity game engine. By the end of this book, you’ll be able to make professional and high-quality end-to-end RTS games using the best practices and techniques from the gaming industry.
Table of Contents (23 chapters)
1
Part 1: Foundations of RTS Games
6
Part 2: The Combat Units
11
Part 3: The Battlefield
15
Part 4: The Gameplay

Adding the new Mage unit and ranged attack

It is time to start adding more characters to our RTS game. We already have our Warrior character, and now we are going to use everything we have made so far to add a Mage character. We are going to expand the UnitComponent script to add the ranged attack as well, which will be a fireball cast by the Mage.

Now that we have built many support systems in our RTS game, we can define a clear path to use when we need to include and configure new units in the project. This is what we need to do:

  1. Create a new UnitData Scriptable Object and configure all the base attributes and animation states. We can always use another unit as a reference for the value and tweak it.
  2. Create a new message that will be sent when we need to spawn a unit.
  3. Create a new spawner script and a new object pool, adding the reference to UnitData and the Prefab.

That covers the basics of adding a new unit. However, in the case of the Mage, we are also...