RTS Template Creation

Hey Everyone!

Currently I am working on a highly optimized Real-Time Strategy Template.
As well as the Source Code, I will also be giving out a fully complete project, and a tutorial series on how to setup/tweak everything.

It’s currently being based off of the original Dawn Of War system and with StarCraft flares thrown in.
It will be for the most part, generalized, but with a easy to use AI system that can command Squads (locations, upgrades, attack stances, etc)

I would like to know what kinds of things everyone would like to see, that they think is VITAL to an RTS Template.
Mainly that it suits everyone’s needs! :3

(Once I release it, someone can work on Networking it. Not really my field…)

Lemme know what you think! :smiley:


Hey loken, i think it’s a great idea, and i think it would be even more great if you made it open to cooperate, so people can add even functionality on it, " as long as you wish of course and it suits".
In UE3 for example cube made one, and i added to it a fully competent box selection system. :slight_smile:

Yea in fact, this actually made my template at least twice as useful :slight_smile: and it would propably help here too.

Can we have specific requests? :slight_smile:

  • Did you implement some sort of command-listener pattern?
  • How did you manage lag with a lot of units spawned? (I am assuming the game is networked)
  • How about the HUD?
  • Were you able to implement a marquee selection box to select multiple units?


Hey Guys!

Thanks for all of the feedback so far!

It will be open once I have finished the the first iteration! :smiley: So feel free to work on it and update it as you please. :3

You can request any kind of thing you want at all. :smiley:
I want to make sure this is as generalised as possible!

  • What do you mean by command listener? (Do you mean global delegate events?)
  • In terms of lag, for my test project (Which I want to release along with the empty base template),
    I have the distances for the LODs ramped up a lot! xD At standard view height, diffuse and basic silhouette are maintained,
    but zoom right in, and you get the lovely hipoly models! (As for networking, which I’m terrible at… it can be handled once I put up the first iteration)
  • For the HUD I was originally using my own custom system, which you can find in my signature, or on the Wiki! (Switching to UMG now, since it reminds me of ScaleForm)
  • Marquee selection was something I had handled in previous games, and modifying the function to work for UE4 was simple enough, although it will now need redone for UMG.

Basic Structure:

For those that are interested, the flow of logic is like so:


  • Grid world actor, manages grid size, spacing, world size, etc.
  • Pawn/Controller is the main interaction actor for one “Race”
  • Races have buildings with can spawn units, research upgrades, have queues, etc
  • Races have squads, with commands, stances, upgrades and units.
  • Squads have unit(s) with variables weapons, abilities, etc.
  • Squads have a special slot for high profile characters, like commanders, healers, etc.
  • Squads have Control/AI that is general, but within this, each unit is also semi independent.
  • Units can be Walk, land vehicle, air vehicle, water vehicle, etc
  • Vehicular units will have multiple slots for different weapon types
  • Weapon types can be blueprinted to have specific angle limits, recharge time, etc
  • Upgrades can be blueprinted, because their logic is so diverse, it would have to be done in a graph (for instance the owning squad’s speed/armour would be increased)
  • Volumes for higher and lower defensive areas


  • Squads and Upgrades can all have dependencies which have to be met before they appear in any building capable of spawning/researching them.
  • Currently planning to create a visual editor plugin, much like the AI behaviour, which can handle dependencies, meaning you can draw connections to required values. For instance, you maybe need a specific upgrade done, a building made, and a critical location captured, before you can queue a specific upgrade.
  • For AI, I will be creating a bunch of custom nodes allowing for easier visual, since it’s one controller with many individual “pawns”


  • General menu, with options for diplomacies, etc
  • Minimap, with buttons to iterate through and select units of a specific type
  • Center window showing all selected squads, with the ability to select one, (while maintaining the group selection) and individually upgrading, etc
  • Marque selection working no matter the way you drag the box (sometimes some algorithms can’t handle bottom right to top left…)
  • Unit highlighting/occlusion that only the you will see, meaning if you have a selected actor that is occluding through a building, it isn’t going to be visible to an enemy player.
  • Health markers on highlighted actors. (Can only single select enemies, and they will deselect if they go out of view, or into the fog of war)
  • High/low defence on units, based on positioning/volumes
  • Fog Of War

But currently I am tired! Bed time awaits!

Feel free to add anything I missed :smiley:

Also, as a side note, everything that has been made so far (and everything in the future) has been editor friendly, meaning no more coding is required, unless some kind soul wants to do the networking ;D
So EVERYTHING, will be a lovely clean structure of blueprints, with heavy duty C++ source behind it :smiley:


great… cant wait to get my hands on it… git it fast :smiley: