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)
Part 1: Foundations of RTS Games
Part 2: The Combat Units
Part 3: The Battlefield
Part 4: The Gameplay

Creating a debugging tool for the Editor

One of the easiest and fastest ways to test things while we are developing is by creating debugging tools to help us execute specific methods and trigger events so we can validate that our systems are working without having to play the game. This can be used for simple things such as adding more gold for the player or even spawning units and upgrading buildings.

Creating the Object Pool for the Warrior unit

Before we move to the actual debugging tool, let us first add the scripts we created so far to the Prefabs and GameObjects that will need them:

  1. Open the Level01 scene.
  2. Left-click on the + button in the top-left corner of the Hierarchy view, select Create Empty, and name it ObjectPools. In the Inspector view, in the Transform component, set X, Y, and Z to (0, 0, 0).
  3. Right-click on the new ObjectPools GameObject, select Create Empty, and name it BasicWarriorObjectPool. In the Inspector view, in the Transform component...