Short Description:
This RTS Engine Asset handles all the game management for you and offers various possibilities of customization providing you the chance to create your RTS game from the inspector. It handles everything from maps, factions, NPC factions (AI), resources, units, buildings, minimap, UI, selection, single player, multiplayer, etc…
Demo:
WebGL Demo: Click here.
Feedback is always appreciated!
A standalone is also available, PM me to get it!
Features:
- Maps:
Each map must have each own scene where you can set the map as a normal terrain or any other form you want. Map settings include: the maximum amount of allowed factions per map, peace time, resource management, etc…
- Factions:
Have as much factions as you want in each map and customize each faction by a unique name, color, initial population, max population, capital building. While you can make factions share the same units and buildings, they can also have their own unique buildings and units. A player is defeated only when his faction’s capital is destroyed. In a single player game, one faction is controlled by the player and others are controlled by the AI who takes care of the resource management, building management, recruiting an army to attack or defend.
- AI:
There are different components that handle the multiple task that a NPC faction needs to deliver. From collecting resources, constructing buildings to assembling an army and attacking other factions. The AI will attempt to eliminate other factions by creating army units. The AI relies on some values that you set that will determine their behavior. This behavior determines how the NPC factions collects and uses its resources, how it takes its attacks and plans its strategies.
- Resources:
Create and customize different types of resources that unit and building creation depend on. Place the resources on the map and make their quantity limited or infinite and play with other settings such as the maximum amount of collectors, collection speed, etc…
- Buildings:
Customize buildings by making them deliver different tasks such as creating units, increasing the total maximum population, adding resource collection bonuses. Change the buildings look depending on its state (current health) to highlight damaged buildings for example or show a different look for under construction buildings. Other settings include: amount of possible builders and their interaction with the building, max allowed tasks, target positions for newly created units. Set a reload time and required resources for each task in addition to other customization. Buildings can also expand the faction’s territory to allow to exploit more resources and bring more space for the faction.
- Units:
Every faction needs units who can deliver multiple tasks, right? The Unit component defines the unit (name, code, health and all general settings) and handles the unit’s movement. A unit can have one function or many:
- Construct new buildings and fix damaged ones.
- Collect resources for the faction.
- Attack other factions’ units and buildings.
- Minimap:
The minimap shows the whole map at once as well as the borders of each faction, clicking on any area on the minimap will move the main camera view to that position allowing for fast navigation on the map.
- Camera:
RTS Camera that includes basic things like zoom using the mouse wheel or keyboard keys, moving on screen edge, movement limits and customization for the movement sensitivity and keys.
- Selection:
Selecting a unit or a building can be simply done by a left mouse click on their objects. Multiple selection is also available by holding the left mouse button and dragging the mouse. Right clicking on a building, resource or other unit while selecting unit(s) will make the units collect, build or attack depending on the unit’s abilities and the nature of the target.
- UI:
The game’s UI includes:
- a menu that the player’s faction resources and current/maximum population.
- the Task Panel that shows the available tasks for the selected unit(s) or building.
- the Selection Panel shows the currently selected unit(s) or building and displays info about them as well as their current health. In a case of a building, pending tasks will also appear in the selection panel.
(Check the demo for a detailed explanation about each UI panel).
- Single Player Menu:
The menu includes a component that handles picking out the map, choosing how many factions to spawn and determining the settings of these factions (color, name and for NPC factions: the difficulty level). You can have as much difficulty level as you want, each difficulty level represents different settings for the three AI managers above. One difficulty level doesn’t lead to the exact same actions but instead two factions having the same difficulty level can be different but they will generally some small similarities.
- Multiplayer:
Multiplayer using UNET using a lockstep model (both local games and internet match making available).
- Code modification and custom events:
Custom events are events called when a major action happens in the game (creating a new unit, placing a new building, etc…) to allow for even more customization.
There are a lot more features than what I have written above but I tried to keep the thread short. The asset’s documentation will include every little detail of the asset.