Skill system that doesn't make you regret early choices
I fear that the way you pay for character advancement in FLARE will lead to the same sort of frustration/regret as in Diablo. Here's the story which I think is very common:
You start playing for the first time, you get a stat upgrade point very soon. This is exciting and you don't know what to do with it. You (without knowing the full implications) pick a trait, and upgrade it. Your choice at the next level is maybe a bit more informed, but still not terribly. OK, Now fast-forward 30 hours of gameplay. Now you understand a lot more about the skill trees, and know that you wasted one (or more) of those early stat advancements (from eg level 2) and it takes 10+ hours of gameplay to get the stat upgrade you wished you'd gotten. And over time it just gets worse. After 100 hours of gameplay, that rookie mistake you made at level 2 costs 40 hours to fix.
So here's what I'd like you to add to your design goals:
Make it so 20 minutes spent gaining XP and spending it on advancing one stat of your character does _not_ make it take any longer to gain XP to advance a _different_ stat.
For example, if I decide to spend 20 minutes killing things so I can advance my spellcasting ability, this should not make it any slower/harder for me to advance my swordfighting ability (compared to if I hadn't spent the 20 minutes on spellcasting.)
The level-based upgrade system you have now has its advantages (mainly simplicity) but for me the issue desribed above out-weighs all that.
So the alternative that I'm aware of is that the XP cost of advancement in each of the stats goes up indepentantly. For example:
level 1->2 (of any stat) would cost 500xp.
level 2->3 (of any stat) would cost 800xp.
etc... so each level would cost something like 500 * (1.6^stat_level)
So even after raising the mental stat to level 4, raising defense stat to level 2 would still cost 500xp
In addition to leading to less regret, I think the system I'm suggestion also makes more sense (more intuitive.) It's more like the real world. If I take a day away from my usual daily sword training and learn basic knitting, it doesn't take 20 more sword classes to make up for the one I spent learning to knit.
It might take a little more work to make this approach really easy for new players who haven't already been trained on the system of spending XP to improve your character, but I think the new player can be guided well. Especially if all level 2 skills cost the same, we could detect that amount of XP and tell the user "you now have enough experience that your guild master can train you to a higher skill level" and then when they advance the first time we can say "As you get closer to mastery in each skill, it takes more experience to train to the next level of that skill" and (if we want a progress bar) "Would you like to be notified when you have enough experience to train in one of these? [defense] [offense] [mental] [physical] [no thanks]"
If you'd like to try a great game with this sort of advancement system, try the Discworld Mud: http://discworld.starturtle.net/lpc/
I've logged almost 2000 hours into that game over the (10) years. It's really nice to be able to spend a couple hours worth of xp every now and then into something I rarely use like swimming or bandaging, and it doesn't make it any harder for me to be a bad-ass wizard. Also it's very cool that it makes hardly any difference what I put my XP into in the early days when I had no idea what I was doing. The only early decision you have to make that effects you in a serious way long-term is choosing your guild (wizard, warrior, assassin, theif, priest, witch.)
Thanks for considering.
- Jason
I disagree with you - at least to an extent.
The problem with a skill system where the cost for each skill is unrelated to all other skills (or to total skills learned) is that it heads towards a situation where the optimal play (and the obvious one) for any character is to be a jack of all trades (and master of none).
Learning one skill should make it harder for you to learn others.
To my mind the best option is where your ability to learn a skill is made more costly by already knowing others - but not to the extent that learning lvl 1 of a skill (you don't know) costs the same as learning lvl 10 of a skill (that you do know).
Other option are:
Witch
Have a witch in one of the villages who can clear your mind.
This will un-train one of your skills. (How much XP you get back from it, is another question)
XP Loss
This is a variant of the "all skills are seperate" method.
In one sentence it is "all skills are seperate, and you will lose XP over time for each one"
The simplest solution is to have respec. Even Diablo 2 has a limited form of this now (one time per difficulty setting).
Agreed on respec. I'm a fan of the implementation in Borderlands - you still have a finite number of Skill Points to allocate, which forces the player to choose between different skill paths, but the player doesn't feel screwed over by an early choice made with limited information.
On the other hand, I can see where the OP is coming from regarding realism. Some settings allow for a respec system to work without breaking immersion (think sci-fi, where skills might be bionic augmentations or genetic enhancements), but other settings don't work as well (like medieval - "I trained my whole life as a swordsman, but yeah, no, I'm totally a wizard now").
As a gameplay mechanic, I'd say the length of the game matters as well. In a shorter game (10-ish hours), I wouldn't mind starting from scratch to build out a different skill tree and see the game from another perspective. But in a long game (80+ hours - think Elder Scrolls), starting over from scratch after 50 hours would seem like a big investment of the player's time.
My project: Bits & Bots
Thanks for your comments! I'm glad people are reading and thinking about this.
Re-spec is an interesting option. I forgot about that.
As for "jack of all trades, master of none", with my suggestion, you could do this, but I don't think it would be optimal. It'd take a while, and you wouldn't be good at anything... like fighting.
I think the optimal strategy is to choose how you're going to kill things (eg sword and shield) and then pump loads of xp into the skills that work with that strategie (eg physical and defense).
Then if you want to spend the 8 hours of XP on getting enough magic to do the teleport spell, then go for it.
'course this requires you to ballance the game knowing that any character class can get the teleport spell and still be good at fighting.
This is making me realise that discworld mud (the game I play a lot that has this sort of advancement scheme) has two other things that encourage specialization. First is that apart from the skills that you can advance with XP, you have a limited number of stat points, in things like strength, intelligent, dex, etc. You can rearrange them (once for free, and later only painfully slowly and expensively) to give boosts to whatever sorts of skills you are specializing in. eg if you make a wizard, you bump up intelligence at the cost of strength. The other thing in Disworld MUD is that you have to choose a guild (ie character class). Certain commands/abillities are available only to members of a certain guild (eg only wizards can memorize spells and make scrolls, everybody else can only cast spells by using up scrolls.) Oh, also your guild makes it much cheaper (in xp) to train the skills that the guild specializes in. The wizard's guild will only train you cheaply to a very low level of fighting, and even less of faith skills (wizards in Discworld feel that just because the gods exist, doesn't mean you have to believe in them.)
Oh, also, very good point about game length. I agree that if the game is short (like it is now) it's fine the way it is. I was asuming that the long-term vision of this game is to target 50+ hours for one play-through.
Oh, and now after trying to figure out how to encourage people to specialize... why are we trying to get people to specialize? How does that make the game more fun? We trying to make it so people are interested in playing multiple times (with different specializations)? Is there a hope for a multi-player future?
http://jasonwoof.com/
TES does this in a nice way, you actually train the skills that your character USES. Morrowind did this IMHO in a good way. Balance of Oblivion is not so good, so you could get wrong paths in there (but that was mainly due to auto leveling of enemies, e.g. raising bartering makes enemies stronger).
How about just a good ol' "Skill/Stat" reset NPC ?!?
If you f*c* up your build or need a specific build just talk to that NPC and resert your skills .
I don't mind resetting skills. Savegame files are in plain text; if you need to respec, for now, just set build=1,1,1,1. I can do an in-game method later.
Having attribute levels always cost the same is an interesting idea. I'll keep it in mind. If it's a popular request, I could implement it as an engine option.
Also
> I was asuming that the long-term vision of this game is to target 50+ hours for one play-through.
That is crazier than a soup sandwich. No offense, just wanting to add some perspective here:
Making decent game content takes quite a long time. Even if I stopped coding on Flare and focused all my free time on content, it will probably take me a month to create one additional hour of gameplay.
My "oh shit, this might be aiming impossibly high and I could fall way short" goal is to make a 12-hour single player campaign. Which I expect will take a year minimum.
Anyone here familiar with the Guild Wars spec system? I'm trying to explain it from memory but it goes something like this:
Every time you level up you get 20 attribute points. There are usually about eight different attributes to choose from (four for your primary profession and four for your secondary profession). To raise an attribute from level one to level two you need one point, from level seven to level eight requires seven points and so on. Maximum character level is 20, max attribute level is twelve. Respeccing can be done in every town or outpost.
Attributes in Guild Wars work a bit different to the typical RPG standard. Each skill in the game (you can only equip eight at a time) is based on an attribute. The main advantage of raising an attribute is that the associated skills become stronger. Some attributes also have inherent effects though (such as Swordsmanship which increases damage dealt with swords).
Alright, now finally getting to point: The system encourages what I would call semi-specialisation. Typical builds are usually of the kind 12-12, 12-10-8 or 11-10-10 (or something like that, haven't played in a while). So 12-10-8 means raising one attribute to level twelve (max), one to level ten and one to level eight.
It's a very specialised system but I really like the "semi-specialisation" concept and the freedom that comes from arbitrarily respeccing (though maybe this should only come with a price).
Clint,
Hehe I wasn't thinking you'd create 50 hours worth of levels yourself. I'm hoping others will help with content. That said it is a good idea to have a short-term goal that you can do even if not much help comes along.
Also, to clarify, I mean a game that you can enjoy for 50 hours, including getting lost, doodling around, playing good parts again to level up a little, etc. Playing several parts again to try to remember where that door to the area you didn't go to yet was, or looking around for something. So what I meant for a 50+ hour game could be completed in 15 hours if you know what you're doing.
My basic point isn't "please make me a huge game by Thursday" but "please make sure the advancement system scales well to longer games", so as the game grows over the years it doesn't become more broken.
manwesulimo2004, that sounds interesting (and more complex), but it sounds like the cost of your next stat upgrade (regardless of whether it's a level 1 upgrade or a level 10) scales up exponentially. Which doesn't address my concern about an early stat upgrade choice making it take hours longer to get level 10 in something.
http://jasonwoof.com/
JasonWoof, indeed. I hope to supply about 10 great tile sets, a few dozen monsters, etc... all the tools that other people can use to build new campaigns, or expand on the existing world. If it gets momentum, there could be many fan-made, 100hr campaigns to choose from.
Also, eventually we'll have quality random-dungeon generation in the core engine. Those will be exciting times.
JasonWoof, not a problem in Guild Wars because you can respec whenever you want in outposts.
Myckel, to maximize your attribute gains in Morrowind you have to micromanage your skill gains. That occasionally means not being able to run/fight/jump because that would give you a "bad" skill level up. It is also a bit hard to change your character half-way through the game, although TES does make it easy to gain early skill levels, encouraging at least basic "multi-classing".
Surely the main problem here is if each level takes more and more time to progress to?
I'd say a better system is where progressing to higher levels occurs in approximately constant time (each level takes more XP, but because you're stronger, you should be acquiring XP at a faster rate). This is how the games I've played seem to work.
So if you make a poor choice for a skill bonus when you go to level 2, it doesn't take any extra time to go up an extra level later on.
mdwh: I've never heard of an RPG that did not enable you to advance way quicker in the beginning.
I think it's good to give levels/advancement more quickly in the beginning to help get the player excited about the game, and learning the advancement system. (Which I assume is why just about every RPG does in this way.) Also this method mimics reality. We learn very quickly at first, but it takes years to become a true master.
http://jasonwoof.com/
I'm not sure I've played an RPG that didn't behave the way I described... :)
Depends what you mean by "in the beginning" - I can see that the first level or two might be that much quicker to obtain, but I've never experienced that I have to keep waiting longer and longer to progress. Otherwise in the later stages, you'd lose interest in any progressing up the levels. I thought it was standard D&D rules that although higher levels require more XP, you also get more XP for killing stronger enemies.
"Also this method mimics reality. We learn very quickly at first, but it takes years to become a true master."
But this is only relevant if you have different levels in different areas, as you suggest. Otherwise it doesn't mimic reality at all. Another way of modelling realism would be to give the level ups in approximate constant time, but if say a player keeps using the upgrades to improve the same skill, then the improvement becomes less and less with time. Alternatively, just because the levels increase in constant time, doesn't mean that has to equate to linear improvement.
Maybe a silly question, but why allow someone to choose which attributes to increase at all?
Or, more specifically, why allow someone to easily increase attributes which they aren't *using*?
Maybe the advancement system should be based on what the player actually *does*?
Kill something with a sword? That XP goes to whichever attributes/skills best reflect physical offense.
Kill something with a spell? Points to mental offense.
Kill something with an arrow? Points to...
This also leads to advancement based on more than just killing things.
Dodged an attack? Points.
Armor took that hit? Points.
Cast a healing spell? Points.
Detected a trap? Points.
Ran through an entire level in heavy armor? Points, at least if you had some model of endurance. I suppose just wearing armor could slowly accumulate armor skill?
If you *want* to advance a skill/attribute without just going out and using it, then you probably would do what people in the real world do... give someone money to train you.
Implementation is left as an exercise for the reader ;)
"Implementation is left as an axercise to the reader :) "
haha, yes.
So, one possible issue with automatic advancement is if there are limited points, players need to carefully control their actions to be the most powerful. See: Oblvion, where min-maxing requires absolutely backwards decision-making.
Or, say you're temporarily stuck with a sub-optimal or unfavored weapon. Maybe you're in an area that's easier with a longbow, or maybe you only have a longbow but you wish you had a good sword. Now your character is advancing in an unwanted way.
I guess this isn't an issue if points are unlimited, or points aren't harder to get as you get later in the game. But few viable systems have absolutely linear progression like that.
"I guess this isn't an issue if points are unlimited"
Yeah, if you limit points and want to encourage players to max out, it would require a lot more planning and discipline. Personally, I like a little randomness.
"But few viable systems have absolutely linear progression like that."
It doesn't have to be linear. What you end up doing is make it harder to advance individual skills as you get better at them. But skills which aren't as far along advance easier.
You can also make skills you don't use often or at a higher level of difficulty atrophy and lose points. i.e. if a warrior only ever casts healing, magic skill doesn't advance enough to be able to cast "time stop". The player needs to "get serious" about using a skill to get anywhere with it, and will probably have to sacrifice other skills.
I rather like the ability to say "I don't like playing like this anymore" and moving my skill points over to something else entirely. I don't see how this would work in a skill-based system - maybe some form of level scaling?
EDIT: I then like c's idea with skills that atrophy better. Sometimes a skill can be really vital to a build but still not used often though.
> So, one possible issue with automatic advancement is if there are limited points, players need to carefully control their actions to be the most powerful.
Yep, but in some cases it actually makes a game more entertaining, You has to think what You are doing. And, it's more logical and real, if You are slashing monsters with sword and gained some expirience, it will not help You in casting magic better.
And You still has the full control over the development of hero - You do it by choosing its actions (instead of choosing buttons in the skill three).
But, I believe this is personal preferences, I personally quite satisfied with both systems.
I guess in my mind it's coming down to:
What's a good way to offer offer the user some fun choices, and make enough variation in playing experience so you could play the same game again, without letting the user easily make choises that they will feel screwed over by later?
I want people thinking "wow, that was fun, I wonder what it'd be like to play again as a sourceress" not "man, if only I hadn't put a couple early advancement points into magic I'd actually have a good warrior"
I'm sure there are many good solutions to this. I'm curious what it'd be like if you only got better at what you practice. In Discworld Mud you randomly get skill advances in what you're doing (this system is called the Task Master). The amount of skill advances you get from the Task Master is less than you get in the usual way (of gaining xp from your actions (mostly fighting usually) and spending it on the skill of your choice. An interesting thing about the Task Master in Discworld Mud is that you are more likely to advance this way if you are doing something at a level that is challenging, eg fighting with a weapon that is heavy enough that you can only hit 50-70% of the time with. And of course leveling up skills in this way is much less likely if you already have a high level. This mirrors the real world in a cool way.
Discworld Mud is designed to be played for hundreds to thousands of hours, so it makes sense to me that it's more complex than Flare. For a game like flare (the size it is right now) I'd probably only ask the player one thing ever: Which of these (4 or so) character classes do you want? And then just tell them when they've gotten enough fighting experience to be able to use the next level of gear. And hide the weapons that only other classes will ever be able to use. But flare is aiming to be a longer game, so maybe more complexity/options is appropriate. Also I think Clint wants to build/test some standard RPM elements in the engine :)
http://jasonwoof.com/
What about increasing experience gain if you fight using weapons and skills you're poor at?