Last time I worked on the skill/stat system, I didn’t even touch active abilities, like feats in DnD. My main problems with my skill breakdown were:
- Too many skills: around 50. Easier to navigate by using categories, but still.
- Skill progression is difficult because of the skill breadth. Difficult to balance a jack-of-all-trades and a focused grandmaster of a few skills, with interesting skill progression/bonuses
- The options were many, and the bad options could be many too. So, level ups would be a bit confusing and prone to mistakes and bad builds
- Only some of these skills would enable DnD style feats, but I hadn’t thought that part out, and it would possibly be imbalanced.
So I engaged in some thinking, and some more thinking, and tried to recall bits of advice and suggestions by a variety of game/RPG design people, most importantly for what I want the core experience to be like. And the cornerstone pillars of the game’s experience is combat and exploration. But at the same time, I don’t want to ignore stealth or NPC interactions in cities/factions/elsewhere, so these exist but are of lesser importance, and this should be reflected in the system.
So, while the skills needed revamping, I like the attributes and the mastery levels. So, here are the main components of the current train of thought:
- There are about 20 skills in 4 categories: offense, defense, arcana and misc.
- Players can put points in each skill up to a limit of 15 skill points.
- Players can improve their mastery of a skill given sufficient points and training from an NPC
- Improving the mastery of a skill gives new passive bonuses (e.g. evasion chance when adding points in light armour skill). Points in a skill improves those bonuses.
- Active abilities (think DnD feats, or ToME active skills) can be learnt from NPCs or scrolls, if player satisfies requirements in terms of skills, attributes and masteries. For example, crafting light armour would require mastery in both crafting and light armour.
- Each level, the player can allocate 3 skill points, to a total of 90 skill points at level 30. Only one skill can be trained to grandmaster level, and thus reach the 15th point
Here’s the current list of skills:
Ranged and thrown
Crafting and alchemy
The idea behind this is that skills reflect play style. My goal is to make as many as possible viable play styles, mixing arcane with melee, etc.
Previously I had to manually author archetypes, as not all combinations of skill points would be valid. With the new approach, it should be easier to write an automatic generator of characters that does not use any predefined limits in masteries etc. If a barbarian wants to learn meditation, more power to them, it’s going to be useful still. What is required to be careful about is the related attribute. If your barbarian has very low intelligence, it’s an indicator that he/she won’t really master that skill. The goals of the archetype creation are:
- Maximum diversity
- Minimum bad-looking builds
- Fully procedural builds (“make me a character”)
- User-guided builds (“make me a grandmaster in destruction magic, with some other nice skills too”)
- Minimum data entry / configuration effort
The new archetype generator is parameterized on a list of target skill/mastery combos to achieve (optional), and a “well-roundedness” factor, which represents how hyper-focussed or jack-of-all trades we want the character to be. It works roughly in the following way:
- Character creation: If we have target mastery combos, roll and initialize stats to satisfy requirements as close as possible
- Assigning attributes: Try to satisfy criteria. If done, allocate based on the well-roundedness, between completely randomly (well-rounded) and to the highest attribute (focused)
- Assigning skills: Try to satisfy criteria. If done, allocate based on attributes and well-known combos, e.g.:
- dual-wield + one-handed = good
- two-handed + dual-wield / shield = bad
- meditation + any magic = good
- sneak + heavy armour = bad
And that’s it! Yes it’s oversimplified a bit, but the archetype generation code is less than 300 lines, and is much, much, much simpler than the old approach. So, what characters does it generate? Plotting time again!
So, archetypes look like they are working as intended. For next time, instead of fast encounter resolution, like last time, I’m going to deal with HP/MP next and attempt something more concrete, like spawning a few aggressive creatures with levels, and progressing with connecting skills to active abilities.