Pre-Order the Game!

Desura Digital Distribution

Thursday, May 31, 2012

Clickfest and how to avoid it

In my previous post, there were comments about how it looks tedious in the space combat where you have to click on a weapon, then click on a ship to fire at it.  This has led me to brainstorm ideas for reducing the clickfest.  The goal of Beyond Beyaan is to provide an enjoyable experience with minimal tediousness and bad kinds of micromanagement (repetitious orders, etc), and I'm not accomplishing that with space combat.

Another thing is why does firing 2 weapons take more time than one?  Why can't you fire both your plasma and laser cannons at the same time, reducing the time used?  Right now an equipment (for example, 14 x laser cannons) will take the same time to fire, but what if you want to fire two weapons that have similar time requirements at once?

And why can't you move and fire at the same time?  I was basing the system off of X-Com, where a human can't really move and fire at the same time unless you sacrifice accuracy, but now I'm thinking that it might not be the best system for space combats with ships and computer-assisted targeting.

So I'm proposing some ideas, and would like to hear your feedback:

For the ship design, you can add weapons and stuff as usual, but you now can add "groups" of selected equipment, with max of 10 groups per ship.  Each group can share the same weapons as other groups.  You will have a group selected at all times, right clicking will activate that group and give it your mouse pointer's coordinates.  You can change the group by either hotkey (0 - 9 on your numpad/numberic keys), or clicking on the list of groups.  You can name each group for each ship design (Long Range, Short Range, Missiles, Falcon Punch, Death Blossom, etc) for easier quick glance when choosing a group.

For example, let's say that your ship have three weapons:
10 x Laser Cannon
5 x Laser Cannon
3 x Plasma Cannon

You have 3 groups that consists of each weapon (first group is just 10 x Laser cannon, and so on), 4th group is both 10x and 5x laser cannon, 5th is all three combined.

A group will take the longest time of any equipment included (if Plasma takes 10, and laser takes 5, it will use plasma's time), and take the sum of all equipment's power required (if Plasma uses 5, Laser uses 2, and all weapons are included, then it'd be 5 x 3 + 2 x 5 + 2 x 10 = 45)

A weapon must be included in a group in order to be used.  There will be a warning when confirming a design if there's any items that's not included in a group.  There will be a flag in the technology table whether or not an item should be included in a group.  For example, Sub Space Teleporter won't be included in a group.  In space combat, the left part of information display will be for this kind of items, and right part will be list of groups.

I think this should reduce the clicking required, and allows you to combine weapons into an impressive firework display (all weapons in a group will fire at the same time, unlike MoO 1/2 where it fires each weapon in succession)


Now for movement/firing.  I'm thinking of splitting those two, so that moving will use a separate point system from the weapons.  There will be "movement points", the faster your engines are, the more you can move.  You already sacrifice a lot of space to engines, so if you slap two system engines on your ship, you don't have much room for weapons, so why should you be punished twice by having to choose between moving and firing?

With this change, each ship will now have three separate point systems: Movement points (this doesn't consume power or time because engines generate its own power, and movement points is technically time), power points, and time units (the last two is for any equipment unrelated to moving).  The time units are there to prevent overpowered ships that have massive reactors to just fire all of its weapons repeatedly due to its massive energy reserves.

I think this should make the combat a lot more simpler for the players, and making it less of a click-fest.  I would like your feedback on those two changes!


  1. Thanks for taking my concerns to the main point of that posts. I like your ideas completely!

    I had a similar idea (using groups of weapons), and making them customizable is great.
    When can you actually change those groups?
    Id guess initially when you design the ship, but there should also be the possibility to change that later.

    Just during combat I think it shouldnt be changed without cost (reducing time units for that turn maybe).

    I also think the groups could somewhat be dependent on something, not every ship might have 10 groups from the start.
    For example experienced crews/captains can increase the number of weapons in a group, especially different kind of weapons in the same group.
    Maybe even the number of groups possible could be limited to experience or computer systems on board. Targeting systems could affect not only accuracy of weapons but also reduce the time units to fire certain weapons.

    Making different action points for movement and firing really makes sense!

  2. I like your idea with groups being associated with targeting computers! Maybe the computers could limit the amount of groups, and how many weapons per group? So the more computers you have (or better quality), the more slots you open up for groups/weapons?

    Or another approach, each computer is its own group, and you add weapons to each group individually? You don't want two computers trying to control the same weapon. Each computer will apply its modifiers (time reduction for example) to its group of weapons. Maybe you want a point-defense computer? It'd be more accurate, but have limited weapon slots (1 or 2 at most).

    I'm really liking the idea of a computer = a group, because it makes sense! However, I'll have to think about how to do it in UI, scripting, and under the hood...

  3. I've been thinking a lot about the computer/group thing, and the more I think about it, the less certain I'm about it. I want to keep things simple.

    I'll try and think of alternatives, but feel free to share your ideas!

  4. I wouldnt think one comuter per group would be neccessary.
    But better computers take less time for creating firing solutions or make more accurate solutions in the same time.
    But that could affect how many groups are actually usable per turn.
    Also experienced crews could control more weapons at once, meaning more weapons (or different weapon types?) can be selected in a group.

    My Ipad doesnt like this posting windows so I will continue tonight...

  5. I think another approach would be to have each ship class (battlecruiser, frigate, lancer, etc) have number of groups and slots for each group pre-defined, as well as slots for special equipment and other components like armor and shield.

    Those slots can have details on which equipment can be put in those, for example if a slot have "ARMOR", then only armor can be put there. If a slot don't have any details, then it's open for anything. If an slot have "ENGINE,REACTOR,SHIELD" then one of those can be placed in the slot.

    You're free to mod the ship classes to have no restrictions, but it won't make sense to put an armor in an group because armor won't do anything.

    I think this solution is the best one, and allows modders to create their custom ship classes with advantages and disadvantages.

  6. How would the groups be predefined?
    Weapons1 Weapons2 etc.?

    Or would it be BeamWeapons, ProjectileWeapons, DefenseWeapons?

    I like your first idea about mixing weapons together free in groups, but your right it would make the programming harder.

    More questions:
    Will it be possible to select more than 1 ship? Like in an RTS-game, select a bunch of ships and let them all attack a larger ship/base/monster whatever?
    Or do you need to move and order every ship single handedly?

    In your linked post you wrote about scouting ships in battles.
    How will these (probably) small and weak ships survive?
    Since its turn based they will just sit around for a complete turn.
    Will they have special evasive bonuses depending on their thrusters? Or do they rely on staying out of weapon range, while their scouting/scanning range is larger?
    Could there be scouting drones?

    How will balancing between smaller and larger ships be? Will small ships be just cannon fodder? Or are they really hard to hit, if they have good engines?

    Another questions, will there be crews? Or just officers like in MoO2?
    Or just ships?

  7. You'll be able to label each group in the ship class definition in the data files.

    The problem with selecting more than one ship like in RTS is that there's no "default" attack action that all ships share. Some ships may just have missiles, while others have beam weapons, and so forth. Also, some ships may have teleporters instead of system engines, so "default move" wouldn't work. So you need to manage each ship individually due to each ship's custom design.

    The combat mechanisms in this game is different from MoO 1/2. This uses physics, in that if you fire a bunch of particles, only the particles that you see visually hitting ships are actually hitting ships. There's no "behind the curtain" calculations of damage. If it hits, it hits, if it misses, it misses, like in X-Com. I posted some screenshots here:

    Note that they are individual beams fired in a group, and that some of them missed the small ships.

    Also, small ships will be harder to detect due to their size, and they usually would pack jammers as well to assist the bigger ships, so they'd be very hard to detect. Jammers will actively reduce affected ships' "visual range", so it's possible to blind a ship completely with advanced jammers in that it can't detect anything.

    I plan on adding various technologies that helps the small ship's survivalism, such as refracting shields that bends the beam weapons away from the ship, displacer devices that randomly moves the ship around in an area, and so forth.

    As for crews, this can be added through data already, that's what ship scripts are for, you can totally customize your ship (it can even have different stats, or be biological that regens health, or have four different health points, or whatever you think of). For officiers, I plan on adding leaders at one point, right now I'm trying to make the game playable with basic features.

  8. About your first point.
    Maybe the default attack could be group 1 weapons? Or pick a default group per ship.
    When group 1 is depleted and still points left use group 2 or something.

    Also about movement, teleporters would just teleport to the new location, while the normal moving ships use their movement points to get as far in that direction as possible.

    I think most of the time in a combat usually many ships combine their firepower and deal lots of damage to a single ship to kill it as fast as possible.

    Are formations planned?
    Because if you can define specific formations you can take into account grouping and form battle groups of ships which actually share the same type of weapons or movements.

    In MoO2 the later battles took forever because every ship was going after each other, which took a loot of time to to, even if you just selected auto battle and fast.
    But if you can let large groups move "together" in the same anymation frame, and let the weapons fire simultaniously that could make even large battles still "micro" manageable.

    In your march blogspot I cant see the screenshots :-(

    I hope you dont get annoyed by my comments, I really like your project and If I had the ideas, will to finish it no matter the cost, the patience, and the skills of course, I would like to make my own MoO successor.
    So I am happy I discovered you project and can follow your blog and share some thoughts about 4x gaming.

  9. Hmm, aren't formations contradictory to X-Com like combat? I mean, combat in X-Com combat is based around commanding each peace individually. Formations on the other hand take away that individuality.

    Real problem with late game combats in MoO 2 was the fleet limit. Each side could enter the combat with about 100 ships (wouldn't be surprised if the actual number was 127 :)). As you said, even with the fastest way to resolve the combat, it takes a while. So the logical solution to that problem is to decrease the ship quantity. Another way to decrease the micromanagement is to simplify controllable pieces but BB is not going that way.

    About making your own 4X, ideas are not the problem. Patience is the problematic but the real problem is overdoing the complexity. You know, why not add 10 more game mechanics to make it more like reality. I have fallen to that trap with my own project. Solar system has 8 planets + asteroid belt + at least 3 planetiods. So stars in my game has to have 15 planet "slots", not 8 like MoO 3, or 5 like MoO 2, or a single slot like many other 4Xs. It turns out that scrolling through the big list of planets at each star is not fun and it takes heavy thinking how to make intuitive and smooth GUI. In general, if you want to make a good game you have to have good analytic skills and a lot of experience with designing software.

    For instance, what makes MoO 2 so great? Race and ship customization are obvious features but there a some more subtile. Mutually exclusivity at research is probably the most overlooked feature. Without that, the MoO 2 would be just another game where you race to the end of the research tree and then start to play the game for real.

  10. I've never seen a turn-based game where you can select more than one unit and issue orders for all of the selected units. Usually turn-based games only lets you control one unit (or one stack) at a time, because you have all the time in the world to manage each unit unlike real-time strategy where things are occurring at the same time and you need to manage multiple units at once for speed.

    The closest thing to formation in my game will be the squadrons, in that you can set up the ship's position within the squadron so you don't have to set them during battles repeatedly.

    There are two main obstacles in creating a 4X game. One is complexity as Ivan pointed out. It's very easy to think "oh, I could add this neat feature! Wait, if I add this, I could add that!", I've had to set restrictions on myself so I don't fall into this trap. However, in some instances, I started work on a part of the game, realized that it's not quite what I wanted, or isn't fun. So I'd have to re-design it. For example: Changing from grid based movement to star-to-star/starlanes because it makes other aspects of the game more simple/fun.

    Second is again the complexity, but in development time/commitment. 4X games is very difficult to develop compared to other type of games.

    I don't mind the comments/suggestions. They've helped me see what people want in a MoO clone. But please don't take offense if I don't implement some of them. Some reasons for rejecting those suggestions includes being too complex, don't add to the fun factor, or drastically changes how the game works. At this point, I think I have the design mostly finalized, the only real issues are the UI and some minor implementation details.

  11. In M.A.X. (Mechanized Assult and eXploration) was possible to select multiple units and issue a move order, RTS style. I don't remember whether the algorithm was smart enough to move the units "in front" first.

    Yeah, code complexity in 4X game is also an issue. By my experience, GUI code is way more complex than game logic. Few days ago I implemented space combat implementation in my 4X game and out of 1500 lines of codes no more then 200 were combat related (ship movement, damage dealing, shield regeneration, cloaking, detecting cloaked). I even wrote the design document for space combat but nothing prepared me for the GUI implementation.

  12. Just because most turn based games only allow one unit to be selected at a time, doesnt mean its good.
    Especially if you have very many similar units which have some common denominators (all have some kind of weapons) it actually can make sense to issue orders simultaniously just to save time.

    But of course implementation would be more complicated.

    And, as you Ivan pointed out, it is also dependent on how combat is planned in general.
    In MoO1 you had stacks, so same ships just stacked, and then the order to give was actually fast, because there where only so many ships to select independently.
    Or you limit the number of ships per combat which to me does not make much sense, to put an arbitrary limit.

    A word on my mentioning of formations, I dont see why it would defeat the purpose of turn based games.
    If it is more convenient to move 10 ships in a formation then moving every ship single handedly to a new position who not do it (apart from implementation problems of course).

    Anyway, I just wanted to give my two cents about how RTS mechanics could help in turn based games as well. Especially in terms of interface convinience.
    PS: At the beginning of RTS games you also could not select more than one target, nowadays this seems pretty stupid...

  13. Curious argument with the evolution of RTS games. Your analogy is correct for games where player is supposed to have many units under his control. In games that revolve around few specialized units (Commandos, Desperadoes, Fallout Tactics) it is expected from player to manage each unit individually. Though those games too offer multiselect and bulk commands.

  14. Selecting multiple ships and moving them in a formation, while easy for the user to do, is hard to do under the hood. What if there's an obstacle that ships have to go around?

    For my sanity's sake, and to get the game out of door quicker, I'm going with single-ship control in space combat. Maybe later after the game's officially released, I'll look into formations and multiple-ship commands such as firing.

    When people play the game, I'm sure that they will point out issues and complaints. I will look into them at that time. Right now I just want the game to be playable...