Sunday, March 28, 2010

Primary Class Advancement

Today's topic ties in with the last three. We're going to talk about the design for Primary units. A player's squad consists of a single Commander and a set of Primaries. The primaries do the heavy lifting, while the commander controls the behavior of the squad as a whole. Advancement-wise, commanders earn skill points, which the player uses to purchase skills. The primaries use a class system, which is the main topic of today's rant.

Every primary unit has a current class, which determines what his abilities and some behaviors are. It also determines what limited equipment he may use. Classes are simple, in that they at most have 3 or 4 active abilities or options, so they are relatively easy to design. Since the player may have anywhere between 4 and 16 primaries, we've built them to be easy to manage. When a unit ranks up in his class, there are no decisions to be made; it just happens. The only real developmental control the player has over his primaries is which class they are currently, and deciding when to change classes. Since there are lots of them.

Classes each have 10 ranks. Each rank may grant a new action (only while that class), some statistic upgrades (either permanent or only-that-class), and maybe some behaviors (such as the ability to critical strike). In the current design, at rank 5 the class will be given the ability to move to a more advanced class. If the advanced class has multiple class prerequisites, each will require rank 3. While the advanced classes are in general more powerful, ranking up to 10 grants the primary some permanent benefits. The option to change to something fancier is available early but it's up to the player to decide whether or not to use it.

The first 4 classes available (only 2 for any given player) are the Shieldman, Swordsman, Archer, and Scout. Very basic archetypes. Each of these has a direct advancement path, a specialization path, and a combination path. The Shieldman may advance to a Veteran Shieldman (direct), the Defender (specialization), or combine with either of the 3 other seed classes to form, respectively, the Dueller, Crossbowman, and Javeliner. Each of these has a different set of basic abilities, and further advancements beyond these work similarly, although the set of combinations ceases being exhaustive, since that would require a disgustingly large number of classes.

Gameplay-wise, the different seeds are catered to different playstyles. The shieldman is a line-unit, in that they are simple to use, and prefer to be in a large group. Archers work well in similar fashion, they like to be in large groups bombarding from relative safety. The Swordsman and Scout, on the other hand, prefer to be a bit more free to move and do their job. They suffer morale penalties when stuck in combat too long, as well, so they prefer the hit and run, or in general to be on the offense. Furthermore, the scout and archer have more specialized abilities, so may work better for players who like to manage units rather than formations. Advancements may or may not follow the basic paradigm of their origin classes, except for the direct advancement path, which does not make substantial changes to the behavior of the class. The Defender is a Shieldman specialization, which focuses on mobile defense. He's good at defending a set of other units, but only given space to move. He's a sort of interceptor, while the raw Shieldman is more of a blockade.

These 3 echelons (seed, Veteran, Master) form the basic unit types. Once the elemental power is available to the player, this changes things a bit. This happens around level 20, which after about 15 to 16 ranks learned, so a full class and a half. In the original design, the elements granted new seed classes, which may have also combined with existing classes, and, well, you can see the potential nightmare of class count here.

So we had a new idea. The elemental power doesn't really determine 'what' the unit can do, it merely modifies how the player does it. Why not codify that into the class system? When the power is gained, a new set of classes becomes available, one for each element. We call these classes Augmentation classes (and call the 'main' classes Cardinal). Aug classes never grant actions, but rather modify existing actions on any class they are tied to. Modifications can come in the form of procs (something happens as a result of something else happening), or in the form of ability replacements. A sweeping strike may be modified by an air elemental to be a wider range knockback wave. The basic action feels the same, but the effect is upgraded.

The complete classname is thereby given as a prefix for the Augmentation: A flame-swordsman, an earth-shieldman, etc. The early augmentations will be basic; aids to elemental defenses, some simple procs, etc. Later advancements between elements will yield more complicated ability conversions. Like cardinal classes, augments rank up and can yield new augments, or...

Or they can yield new cardinal classes! Or perhaps cardinal classes can teach augments? Why not?

After a bit of training with the elements, the units have mastered their control enough to consider making themselves into a strict magic user. Not a swordsman or archer with a bit of magic tacked on, but a raw magus. New cardinal classes become available; Incanter, Enchanter, Thaumaturge. Respectively; Projecting effects of magic, Modifying objects by use of elements at touch, and modifying elemental power at range. Incanters use a simple ability 'Blast'. But blast is just the method, it's nothing with an element to drive it. These classes require an elemental augmentation to be useful. And Fire-Incanter will have a fire blast, a Water-Enchanter may enhance weaponry with cold and ice, an Earth-Thaumaturge may slow the enemies movements or make their armanents brittle.

I'm personally holding out for a Mist-Summoner. Why not?

Thursday, March 11, 2010

A Quick Update

  • Client Data expanded to include states (and thereby classes as well).
  • Eirikr added a large number of icons to various actions, skills, classes, and states.
  • Added UI in the unit details panel to show buffs and debuffs, and added overlays in the group-selection that shows debuffs only.
  • Updates on communications (whoah, forgot about those) and action tooltips.
  • More primaries being built all the time. :p
Soon, type-database for correct enemy icons, enemy-group selection and auto-targetted specials.

Wednesday, March 10, 2010

Setting and Progression, Part 3

This time, a more bullet-point-y version of our planned game progression. Once we've got this down we can talk more about advanced classes and mitigating the class explosion the current design entails.

So the rough idea:

  • Character creation:
    • Levels 0->5
      • Training missions, teaches basic control concepts and culminates in deciding which two of the four initial classes are available (Shieldman, Swordsman, Archer, Scout)
  • Survival and finding faction, seeing the new world:
    • Levels 5->10
      • Introduces active abilities on primary classes. The initial 4 seeds focus less on passive abilities and more on 'relatively boring' buttons to push. There is also very little synergy between these classes, and their mechanics are 'easy'. Threat mechanics are exaggerated for simplicity, morale works well by default, no actions consume resources.
    • Levels 10->15
      • Introduces commander skills, starting with Tactical skills. These are the simplest category and are similar to primary classes actions and passives.
      • Introduces primary class decisions: At 10 the first class-change will be available, so the units can decide to specialize or not.
      • Begin introducing simple equipment for primaries
    • Levels 15->20
      • Introduce controllable formation mechanics, rather than only having the default automatic formations. Do so by starting learning commander skills of the 'Command' tree.
      • Class abilities migrate towards 'use at the right time' abilities with costs and potential negative consequences. Likewise introduce synergies between primary classes and formation mechanics.
      • Managing engagement and threat to become more important.
  • Exploring new power
    • Levels 20->30
      • Elemental archetypes are introduced to the player seeds. A specialized set of quests are built to train the player in the new class mechanic, do be discussed in the next article. This quest, like the training, should culminate in a class-availability selection.
      • Introducing terrain and region mechanics to combat statistics and movement.
      • Introduce commander-equipment, such as a standard.
    • Levels 30->40
      • New formation mechanics are available through Command-skill training, allowing more dynamic control.
      • Maneuver introduction: Maneuvers are a sort of 'group script' that can be setup beforehand and executed as a whole. Examples of such would be a simultaneous knock-back to afford regrouping into formation. Maneuver slots are granted through Command skills.
      • Antagonist introductions! Plot continues! 
      • Strong focus on primary classes' abilities synergizing, especially with new elemental-classes incorporated.
      • Introduction of consumable primary-class resources?
      • Managing morale to increase in importance and difficulty
  • Advanced settlement
    • Levels 40->50
      • Reintroduction of technology. New classes available. More decisions to be made.
      • Commanders gain access to their 'Resource' skill trees.
      • Introduction of combat-area manipulation in combat: Building walls, ditches, modifying the region through elemental magic or technology.
    • Levels 50->60
      • Introduction of automata construction for combat. Both elemental and technologically based. 
  • Confrontation
    • Levels 60+
      • Merged technological and elemental units. Access through quest-arc. No decision making here, previous decisions cover it. 
      • Other Awesome Things!

Actual 'level' numbers may change of course. A 'level' right now is defined as a number of ranks gained for primary classes, and by skill point availability for commanders.

Sounds kind of complicated by the end, doesn't it?

Next time, focusing on primary classes development over levels.

Friday, March 5, 2010

Setting and Progression, Part 2

Last time was a sort of exploration of how to train the player and use the setting to accomplish this transparently. Many of our ideas are rough and have not necessarily been planned or thought out fully. And all will likely change. But this is our/my current design, for the setting of the game.

First and initially, before actual playing: Your character belongs to a relatively advanced technological society. To give it some style, we're thinking of a sort of steampunk civilization. In this case the 'steam' technology will be substantially more advanced than actual steam technology. It's a sort of 'future of the past' setting.

However, the society is crumbling. As the game opens the player is escaping his homeland, through desperate measures. The civilization is under sudden and relentless attack, and the living remnants of society abandon their lands in Exodus. Their exodus takes them to a new land, hopefully beyond the reach of their aggressors. The exodus, however, has not allowed them to bring anything more than their technological knowledge. There was no time to bring artefacts and tools.

The nature of the attack and exodus is still up for debate. I personally have some ideas that are a bit out there, but I like that. Since I'm the one typing this, I get to say them. The nature of the attack is largely unknown to the players, but the attackers bear an unknown power that grants them swift victory. This power is, naturally, learned later as a course of the game and plot. My idea for the exodus is rather extreme; I want to ship the players to a new planet. More specifically, a new moon around the same planet. Bringing in the concepts of the victorian age, we'll have the space between filled with the aether, which the increasingly absurd 'steam' power propels the player through. The aether, though, is partially responsible for the new power. Travelling through it leaves the mark on the player, establishing their exceptionalism in the new world.

The player lands, regains consciousness in a hostile environment, and must survive. A few others join him for the previously mentioned tutorial segment. The new world is largely untamed, although ruins are scattered here and there. The player discovers a settlement of refugees learning how to survive, and a top level gameplay tutorial commences. The next major milestone is learning the power of the new world. The refugees are too hard pressed to spend time relearning lost steam technology, but instead make contact with intelligent local species with similar powers to those that destroyed the homeland. Let's just call it elemental magic. Through various means the ability to manipulate natural forces is learned. The survivors latch onto this power in order to survive. At this point the player is introduced to new class types and abilities.

Contact between survivors is reestablished, and factions begin to emerge. The player joins a faction, not unlike a guild, and begins settlement and exploration of the new world. They begin to make the land their own.   Naturally, a new foe emerges, an aggressor of the new world to prevent indefinite and total expansion of the now-colonists. The factions, their power unsufficient to continue expansion, need to learn more about their foes, to learn their weaknesses and defend themselves. The NPC factions begin attacking player settlements on the frontier of the new civilization. The players begin to uncover ruins of the old civilizations, and learn about their specific foes, which may differ from area to area. The deceased civilization is remarkably recent, and the factions learn that this land was wracked by wars of the elemental powers. The old civilization was destroyed utterly and left only ruins. Of course they are not completely gone, but we can reveal that later.

After some time, the colonists' resources become sufficient to rebuild their old technologies. Some turn to technology as a weapon, rather than the natural forces. Again, new classes and abilities are unveiled to players that pursue these options. About now we should hint that their destroyer is pursuing them through the aether, but will take some time to land. But when it does, the factions will be ready to defend themselves, with their newborn powers and technology rebuilt.

Shortly before the destroyers land, a breakthrough is made. A ruin is discovered with a special mineral in it. This mineral twists the natural elemental energy of the planet, and converts it into similar form as the colonists' technology requires. It is revealed that the steampower their technology is based on is rooted in the same physics as the local powers, and so the two can be combined, setting up the 4th Tier of classes and abilities: The merger of magic and technology into something greater than either alone.

The destroyers land, and epic battles commence.

The important bits, gameplay wise, are the four tiers of abilities: Survival (simple), Elemental, Technological, and Combined. Each of these involves granting new classes to players, which may merge or work with existing classes. Each also involves a decision, which will limit the player to a partial set of each tier. For example, there are 4 'survival' classes, and the player may only use 2. Further tier limitations haven't been decided really. The Elemental tier will probably constrain the 'methods' for using elemental magic, rather than the elements being consumed. The Technological tier design is still quite a ways off. The Merged tier will probably not involve any decisions; but the decisions in technology and elements will decide how the player can merge them together.

So much to do.

Monday, March 1, 2010

Setting and Progression, Part 1

The skirmish engine, as we've planned it, is a remarkably complicated little beast. Combat is not simple, and understanding every aspect of it will likely be difficult. Mitigating this chaos has been a topic we've been going back and forth on for a while, trying to decide how to introduce the player to the various concepts in the game at a managable pace.

The obligatory reference is to Portal. Portal breaks the first half of the game into a linear sequence of separable training levels. Each level teaches the player precisely one concept, and the following levels expand on the concept (but slowly) to hammer the idea home. Most players don't realize the training, which is fabulous, since it both gives them a sense of momentum and accomplishment.

So, we decided to break up the 'timeline' of the player's gameplay by level, and decide when concepts were to be introduced. The design of the classes and skills at that level need to be built to reflect the training, so we'd better decide the progression fairly early. We'd also like it if the progression of ideas mirrored the plot development of the setting. Like portal, it would hide the complicating mechanics by masking it as a plot change. It could maybe feel more natural to have a new concept to learn, if there's a setting based reason.

With our goal in hand we look a bit at other games in a closer space. WoW always comes up, naturally. WoW staggers some new concepts throughout the game. New skills are learned slowly; more complicated skills are often in later levels. Talents are not available until level 10, and they are almost the only actual decision making a player has to make in the game! Yes, until level 10 there are no necessary decisions; it's a good thing! Certain types of more complicated equipment (verb-pieces, like trinkets) are not available until 40 or 50. These pieces are inherently more complicated than mere stat-sticks, since they need to be used, and often interact more closely with the player's behavior.

Now for Skirmish again. What decisions does the player have to make? Initially, they must decide which primary unit seeds they will be able to control. This is similar to selecting a class for WoW. Other than this, changing primary classes and selecting commander skills are the major skirmish-related decisions. The world gameplay may introduce some of its own, and we really ought to figure that out more soon, but we haven't, so be it.

Can we delay the decision making until providing a method for making the decisions? The Elder Scrolls games (or really just Bethesda games, seeing as Fallout 3 follows the same paradigm) have the player proceed through an introduction before making any decisions except for character visuals (which don't really even matter, since they are typically first-person). I often like this paradigm, although the implementation may leave something to be desired, especially with respect to immersion.

Let's have a training section, but let's ground it in setting. We haven't talked much about setting yet, but the plan is to have the player start the game exiled from home, arriving through some means into a new environment. And this exodus was not planned, which is important. Let us have our player crash land, sans equipment or training, with only a few companions together. They've landed in a hostile environment, and scavenge for tools to survive. From the environment they find basic implements for combat, something so very basic... Like a Stick. Yes. A stick. Your companions are now a new training class, 'Stick Swinger'. Or something. Maybe something a little less silly, like 'Trainee' or something more plot poignant like 'Refugee'.

The game begins, we teach you how to move. Your trainee has very little he can do, you just stick together and learn to defend yourself. Later you pick up a makeshift shield, and learn some defenses. Later, you acquire a simple ranged mechanism by throwing the stick. And perhaps later we have you sneak around a frightening collection of foes; some foreshadowing for the setting? Or just a convenient way to teach stealth? Both really.

Now through survival we've taught you the mechanics of the 4 starting classes! Aha! But now a group of settled locals encounters your group and tells you that you must flee the area immediately or be overrun. But there are several means to escape. Perhaps this is your decision point where you pick your 'class', by deciding on a way out. The means to survive in your chosen path are granted by your decision, and so the path is set.

Now, what else have we introduced? Basic equipment in theory, although that could easily be hidden from the player at this stage. Basic controls, but no active abilities, just group control. Very very basic.

Next time I'll focus more on our ideas for setting, and after that how training, progression, and setting are all tied together.

More updates.

Agh! We did more stuff! Here's the list.

  • Client-side database: We are no longer flying blind on the client side! Previously the only information the client had available was necessarily provided through the communication protocol. This both complicated the protocol and inflated the communication overhead, and was very limited! Now we have a client-side database that can store parallel information, but can ALSO store client-specific information, such as icons and tooltips. I think I'll write a more detailed post about the process and decisions on this one.
  • Client Icons: As aforementioned. We have a 'nice' editor for adding icons into the database and referencing them from actions. States to be added soon and made visible on the client.
  • Classes: Kol's made progress on primary class development; The first 2 ranks of classes are functional (and neat), and the third echelon is in progress. We've also decided on a new way of handling the expansionist class philosophy we had to deal with. I think THAT should also be a new post.
  • Commanders: Eirikr's built up the first couple major skill trees and done a first pass on the skill implementations. Since Skills are more complicated to use than class levels, though, they don't get much testing. We're still working on the client UI for selecting skills (currently it's a big long list of 80 options or something else rather absurd). The UI was waiting on the client database implementation, so that's not far off now.
  • Load/Save: Still bugs with entity storage. It's complicated! The initial methodology for saving entities assumes a complete zone state, and doesn't break cross-entity references. That's not possible for permanent storage, so I needed to break up a lot of internal and cross-entity references to prevent bad data on load. Lots of problems here unfortunately. They're getting cleaned up and it's decent now. Always more to do.
Oh, and we fixed XP and SP gain mechanics. But then it was too slow so we mutliplied it by 10. Yay for 2 levels for killing an Ogre.