What makes a good RTS

closed account (1v5E3TCk)
Hi guys,
I am planning to make a RTS game but I have questions about it and as it is an open-source project I want to ask them to you.

1) Which age would be better? (Sci-Fi, Pre-Historic, Medieval, WWI, WWII etc.)
2) Is there any unit which you can say it must be on game?
3) Which nations or counties there must be?
4) How would be better the technological progress, with age ups or technological improvements for every unit?
5) What about gameplay?
6) Would it be better if there wouldnt have been limit for castle buildings in AoE3?
7) What kind of units there would be?
Very interesting! What are you writing this in?

1) More ages = Better - Go through the ages from stone age to space age?
2) Lots of units!
3) Doesn't matter.
4) Age ups and tech ups for each unit/structure would be good. More upgrades - The better!
5) Make a good interface. Everything should be doable in just a few clicks.
6) No.
7) Lots!
closed account (1v5E3TCk)
I will use C++ with SFML.

Wouldnt it be confusing with too many units? I think player must be able to know his units and be able to create a strategy with them. If there will be tons of units player cant decide which one to use.

But if it was from stone age to space age it wouldnt be problem the number of units
The total number of units can be shielded from the user, in one way as you said, by having different units for different ages. Of course another common way to do this is to have unique units for races (e.g. as in Warcraft or Command & Conquer).

My other question is, do you know what you're in for? I'm writing an RTS type game now and it's just a world of problems keeping on top of the damn thing!
closed account (1v5E3TCk)
I know what will it take to make that game. Which libraries do you use? Can you share informatioan about your game, maybe we can work together.
I'm not making my game in raw C++, I'm using Game Develop (http://www.compilgames.net/) which is actually a game engine written in C++ & SFML. Anyway, my game is fairly far along. If you have troubles with some stuff I *might* be able to help out. I found it rather hard to find information about certain problems I had on the way.
closed account (3qX21hU5)
Just wanted to mention something about the subject of having a lot of different unit choices. Remember every time you add a new unit the chances are your work is going to increase exponentially. The reason is because the #1 most important thing in a RTS is balance.

All the units in the game need to be balanced to provide good game play. So every time you add another unit you need to make sure that unit is balanced and works with all the other units in the game already.

Getting a good balance it quite hard to do while still retaining the fun aspect. It isn't as simple as making them have the same attack points or hitpoints or whatever. They need to be unique but still be balanced with other units. You also have to consider what units they should counter, what they should be used to for, ect.

So with all that considered lets say each "fraction" has 10 different units and you have 5 fractions and 3 different eras. That is 150 units that you need to design, balance, and make it so they all somehow fit together (This assume the units change in little ways other then appearance through different eras).

What I am trying to get at is don't go overboard on to many units. Start small (I mean very small) first. Then start adding new ones. It might seem very easy to make 3 units per fraction with 5 fractions but in reality it is quite hard.

So take it slow and start small. RTS game can be one of the most challenging games to get right and are in my opinion some of that hardest to program. I have failed miserably on all the attempts I have made at a RTS.
Last edited on
closed account (1v5E3TCk)
Have you got a skype account?
What did you do about GUI?
I'm changing in game unit balance with cost. I made them at what I thought was about right. If a unit ends up being a bit too strong or a bit too weak, I just tweak the amount of gold they cost, which involves only changing one variable.

My GUI has all buttons to place units and buildings on the left hand side in sidebar style menu. When you select a building, it makes a menu appear with buttons around the factory on screen. I don't know if that will work in your game though, I would just recommend looking at GUIs of several successful AAA games and trying out some variations of them to see what works in your game.
I'm just working on the principal that everything should take as few clicks as possible. For instance, to build and then upgrade a factory in my game takes one click to select a factory from menu, one to place it, one to select it (which opens the factory menu) and one to upgrade -> 4 clicks.

I don't have fast or reliable enough internet to Skype over.

So take it slow and start small. RTS game can be one of the most challenging games to get right and are in my opinion some of that hardest to program. I have failed miserably on all the attempts I have made at a RTS.


This is very good advice from Zereo. This game has proven far more challenging than I thought. It's rather small and I'm looking to finish by Christmas, even though I already spent 2 1/2 months on it already.
Last edited on
closed account (1v5E3TCk)
Most challenging part is GUI for me /: I am not good at creating menus and I have little problems about AI.

EDIT: I made the node class. Is there any thing which I forgot to add:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
class Node
{
    bool _moveAble;
    bool _sea;
    bool _buildAble;

    sf::Sprite _s_tile;
    sf::Sprite _s_shadow;

    sf::Texture* _t_tile;
    sf::Texture* _t_shadow;

public:

    Node( int x, int y, Tile tile );

    bool isMoveAble();
    bool isSea();
    bool isBuildAble();

    void switchMovaAble();
    void switchSea();
    void switchBuildAble();

    void changeTile( Tile tile );
};
Last edited on
You have a typo: switchMov[a]Able(); <-- [a] Should be e.
Last edited on
closed account (1v5E3TCk)
Thanks
closed account (3qX21hU5)
Most challenging part is GUI for me /: I am not good at creating menus and I have little problems about AI.


Here is some code for a very simple GUI you might get some ideas from. This is mainly used for making Menu's so wouldn't really be to great for a UI overlay but still might help. Also you might need to browse the repo a bit to figure out how they work.


Component.h and Component.cpp - The base class for all GUI components.

https://github.com/Epidemic-Games/SFML/blob/master/Component.h
https://github.com/Epidemic-Games/SFML/blob/master/Component.cpp


Label.h and Label.cpp - Used to display a text label.

https://github.com/Epidemic-Games/SFML/blob/master/Label.h
https://github.com/Epidemic-Games/SFML/blob/master/Label.cpp


Button.h and Button.cpp - As the name implies this is used to show a Menu button.

https://github.com/Epidemic-Games/SFML/blob/master/Button.h
https://github.com/Epidemic-Games/SFML/blob/master/Button.cpp
closed account (1v5E3TCk)
Thanks for help
Topic archived. No new replies allowed.