RTS Template

About

The RTS Template is an experimental prototype I am developing alone, aiming to enhance my understanding of C++, Unreal, and gameplay development. The ultimate goal of this game is to create a powerful and universal squad-based RTS template so I can quickly develop a game like Company of Heroes based on it. The template is still under development since April 2023.


Engine: Unreal 5 | Language: C++ | Platform: PC | Team Size: 1

Roles

Gameplay Engineer  Technical Designer

Gameplay System

  • Commander & Faction

I created a commander class that controls the camera and sends orders to the squads. It receives input from players. Every commander has their faction; different factions have different relationships with others, which alters their units' behavior. 

 

  • Squad & Unit

Players can put the items into machines and select formulas to craft merchandise. The machines have many kinds of types, so I abstract the basic crafting mechanics into a component that provides the necessary delegates to allow us to make different interaction experiences.

 

  • Command & Task

The Command class contains information and tasks passed down to the Squad. The Command has three types: No Target Command, Target Location Command, and Target Actor Command. Those types should cover every kind of Command players can give in a traditional RTS game. Developers should make their combat mechanics based on the Command. After receiving the Command from the Squad, the squad will send tasks to units' behavior trees accordingly.

 

  • Attacking & Weapon Component

There is a unique task called Attack Task, which makes units perform other tasks and attack simultaneously. The Attack Task will use the Weapon Component in the Base Unit class as its default attacking method and calculate the result of the attack through the Attacking Interface.

 

  • Future Plans

I want to improve the Fog of War system. Right now the Fog of War can just block player's version, I am planning to adding perception system and combine it with the Fog of War.