Hi. I was reading the wiki and found disagreement on skills system.
It seems there are two positions about skills increase: a) "... skill cost increases exponentially with skill level..." and b) "No, skills do not get harder with more you know; they get easier..." (http://wiki.worldforge.org/wiki/Rule_Set_Parameters)
They both seem right so I'd like to hear that worldforge has a customizable skills increasing function that can be set to a 'sigmoid-like function' (restricted to a maximum or not) so at low skill levels it gets easier to advance your skill but once certain value is reached it gets harder.
I'd like to play games with skills decay, games where you train and level up skills you use which define your character but you can still get rid of those which you don't find comfortable with anymore.
However I've seen commercial games with skills based systems (no levels) which do not have skills decay thus allowing to max out every skill possible. I assume they have chosen that approach on behalf of fun. Maybe majority of players do not like to lose skills, abilities, spells levels they earned months ago just because they stopped using them for a while. As a result developers implement restrictions to the simultaneous use of them so you have all your skills available but can use a small set of them on each situation.
So if the problem is many players would hate to see their skills decreasing an alternative could be
'skills effectiveness decay'.
Your skill remains the same level but the cost to use it increases (efficiency decreases) or effectivity decreases. For example if while training archery its level increases meaning that you do more damage and it costs less stamina and time needed between blows is shorter, effectiveness decay will make stamina cost increase or time between blows longer or damage lower but will let you keep the other aspects so you feel you still have a high level "Archery 100 (45%)" (Archery at level 100 but with effectiveness reduced due to lazyness). Or for example swimming effectiveness decay would mean that you can swim as fast as for your level but as you've been lazy and stopped swiming it will cost you more stamina.
Re: Decay - the real reason I think this is not implemented is because if there is decay then people who have all the skills feel like they "need" to go out and hit one mob with every weapon every day, or whatever other mechanic is in place. Either way, if skills decay, there is something players can do to prevent decay of the skills they want to keep. Most players would see this as a required "grind" to keep ALL the skills they've worked so hard for.
Efficiency decreases don't really solve that problem. Players will read "Archery 100 (45%)" as "Archery 45" every time, and will do whatever the game tells them they have to do to keep it at "Archery 100 (100%)". But they won't like the "grind".
Let's appeal to realism again for how this works in the real world. My primary skill is in Computer Programming. I also have a decent level of skill in Singing, since I practice regularly in my church Choir and Praise Team. I have a low, but usable skill in Cooking, Mechanical Work, and General Household Repair. Why don't I train up all these skills so I can make Culinary delights and not just Hamburger Helper, or fix my car or household appliances every time anything breaks and save thousands of dollars? Well, because then I would have to take away from time that I could be advancing (or just using) my skill in Computer Programming.
In reality, skills get easier to learn the more you know about them - to a point. Ask an olympic runner how hard it was to go from a 10-minute mile to a 9-minute mile? They'll tell you they did that in middle school. Then ask them how hard it was to go from a 5-minute mile to a 4-minute mile. They trained for years to reach that. I personally do good to run a 12-minute mile, but if I got in shape enough to get to a 10-minute mile, 9 minutes wouldn't be that far around the corner. I doubt I'd ever make it down to even 5 though.
Apply this to Computer Programming. When I first started learning to program, the concepts were completely foreign to me. I knew nothing of data structures or algorithm design, so my first programs looked like gigantic trees of if statements (apparently the same way the telecom industry's professional programs look today, but I digress). However, my strong skill in Math helped me to learn programming faster, because I had some basis for building on logic and variables. The more I learned to program, the easier it became - at least to increase my breadth. I can now learn a new language or library within a few hours, at least to the point where I can fluently write programs in the language and library as long as I have reference material nearby. But increasing my skill in a particular language and technology platform once I've learned the basics requires months or years of experience. If I want to get any better at, say, Swing programming in Java, I'd need to work with Swing enough that I begin to memorize the library, all of its classes, methods, and even order of arguments. For me, that will take a long time and a lot of experience, or a long, intensive, incredibly boring study session that I'll be less likely to remember than the experience.
We're really beginning to get into learning theory here. Research shows that learning is the process of strengthening synaptic connections. You're brain is always in the process of creating new synapses and destroying old, unused ones. So when you do something new, you use some of those new synapses. The more you do it, the stronger the connection becomes. But you also use synapses that are associated with related topics. When you learn something new by applying knowledge you already have, learning is easier, because you have fewer synapses to strengthen and reinforce - the ones where you are able to say "topic B is like topic A in this way" are already there and fully strengthened. As you gain a more complete understanding of a field and its related concepts, fewer synapses are required to "encode" the understanding of each new concept, to a point. Some research even shows that for some very basic and long lasting associations, your brain can encode this knowledge in a single synapse. For instance, it is often posited that a single neuron fires to associate your mother's face with the word "Mom" (or whatever you call her), even though it may take hundreds or thousands of synapses to associate other names and faces.
But not all learning is achieved by this altering of brain chemistry. For many tasks, there is also a strong physical component to it. Your body must be conditioned to be able to handle what your brain is telling it to do. Your muscles almost have a memory of their own that can only be taught by constant reinforcement. Think of touch typing. If you've been doing it for long enough, you simply say the words in your head and your fingers hit the right keys. You don't even really spell out the words any more. All of that is done somewhere between the language center of your brain and your fingers. But the process of moving tasks down from where you really have to think of them to where they are second nature is where true skill is gained, but where the only true gains come from actual experience.
Bottom Line:
So, with all that said (ok, way too much said), I think a realistic view of skill gains looks something like this: Every skill has a "learnable" range. Let's say 1-100 can be learned. You can learn this by practicing, by reading a book, or by watching a master do it. It takes minimal investment to get to level 100, say a week or so of casual play, and when you get there, you have a usable understanding of the skill. Don't expect to slay a dragon with Archery 100, but you can handle yourself in the wild.
Also, every skill is related to other skills to some degree. The correct model of this system is an undirected weighted graph. Fishing is weakly related to axe wielding in that both required swinging your arm at the elbow. Chopping is more closely related to axe wielding in that it also deals with using axes and requires similar amounts of strength in each swing and stamina to keep going. The more skills you already know that are related to a given skill, the easier it is to learn. If you already know Fishing, it might only take 6 days to learn Axe Wielding. If you already know Chopping, perhaps only 4. If you know both, you may learn Axe Wielding to 100 in 3 days flat. The intention is, within a few months of play, you have every skill you care about at level 100.
Now, every skill also has the ability to be mastered. Mastery of a skill simply takes its skill level over 100, but is exponentially more difficult to achieve the next level. Furthermore, mastery of a skill decays over time. Level 100 is riding a bike, level 200 is competing in the Tour de France. You never forget how to ride a bike, but if you don't keep working out, you lose the ability to be competitive. So most skills you use on a semi-regular basis will stay in the 100-110 range. Your core playstyle skills will continue to increase until they balance the decay rate. Now here's a question that will have many opinions: how much should the 18-hour a day gamer be rewarded for their investment over the casual 1-hour a day gamer? My personal opinion is that the 18-hour a day gamer should perhaps be able to get 18 skills to level 200 and beyond, but no more quickly than the 1-hour a day gamer could get 1 skill to that level. In other words, cap the skill gains for a day at what you can do in about an hour. Introducing a mechanic that allows obsessed players to be 10x better than casual players because they throw fireballs 18 hours a day doesn't seem healthy, but some games thrive off of requiring this hardcore approach, so the system should allow it. Such a game would need to work harder to prevent people from macroing to 1000 fire - or introduce some sort of automatic offline advancement.
Bah, character limit... I should really try to be more concise... or start a blog or something.
Either way, the point is that it is OK, even desirable, for everyone to get to a decent level at all skills. It shows people portions of the game and playstyles that they would never see in a class-based system. People with 100 healing will be able to heal themselves and others, but nowhere near as efficiently as the person who forgoes all offensive skills to focus on healing during their entire play session. Such a dedicated healer will need to find groups willing to tackle difficult enough content that they still have a challenge, or else their heals will be so efficient there won't be enough damage to heal to keep their skill up. After all, it's hard to train for the Tour de France by riding along with your local biking club. But guilds will want that 348 healing healer to heal for their raids when they go up against the hardest content in the game, because even 10 casual healers with 120 skill will not be able to match the efficiency, responsiveness, and actual player skill of the 348 healer. There is no cap to mastery, and the number actually becomes an indicator of just how much you really practice that skill in game.
I enjoy hybrid playstyles. Under this system, I could achieve a high level of mastery at tanking, fire magic, and healing, assuming I had 3 hours a day or so to keep working on mastering those skills, and another hour or so to keep seeking out new and more difficult content to continue to hone my skills on. With unlimited mastery levels, given enough time, it is feasible that I could eventually work up to a high enough level of mastery that I could solo the most difficult content in the game. Is this desirable? Maybe, maybe not. As long as individual players can't monopolize the spawns (through instancing or fast respawn timers), being able to become a demi-god after a year of honing skills in a fantasy game doesn't seem far-fetched. It is then up to the devs to decide whether to continue creating new content for the demi-gods to be challenged by, or make PVP the way to keep the game challenging, or expect players to branch out once they reach that level of mastery and level up more skills to keep the game interesting.
On the other hand, perhaps the answer here is to make each "profession" really need a set of skills to play at its best. Perhaps a fire mage also needs skill in mana regeneration, mana storage, spell range, and spell potency along with the basic fire magic skill to be truly effective. Maybe tanking is really a set of skills too - absorption, reflection, mitigation, regeneration, and armor usage. Add threat generation for team tanks. Maybe healing really needs a set of skills as well - faith regeneration, faith storage, prayer range, and prayer potency along with the basic healing skill. So as a hybrid I have a choice to build a one-trick pony - skill up fire magic, spell potency, absorption, regeneration, and healing, which is only truly effective against single targets that can be easily pulled or multiple targets that all close to melee range (due to lack of spell range), are relatively weak (due to lack of mana regeneration and storage), and don't hit too hard (due to lack of mitigation, reflection, armor usage, and healing aids). Or I can choose to skill up all those skills at the same time, until I hit whatever caps are in place, capping out at a lower overall skill, but being more versatile. Either way, I can never quite skill up everything I need to survive and defeat the biggest content on the server alone (unless the game designer decides that allowing 15 skills to be trained completely each day is OK). Even if I can skill up 15 skills to level 300, I could have instead skilled up 5 skills in one of the 3 areas to 400, giving me and two other people a greater overall strength than I would have alone. The question is whether 3 people that all have 300 fire magic as well as the ability to handle themselves with good tanking and healing skills are better than a dedicated tank, mage, and healer. You'll have some WoW imports that build entire guilds around the idea that you have to have one skill at 500 before you're even invited to the guild, and other guilds that are full of tank mages and don't even have a dedicated healer, where everyone is expected to be able to change roles as needed for any content they face - and if the skills, abilities, and scaling parameters are designed well, both styles of guild will prosper.
PVP - another wrench in the plans when you start talking about unlimited skill systems. Is it fair to pit people against each other who have widely varying skill levels, simply because one player is obsessed and the other has a life? Should the casual player be basically locked out of PVP by the obsessed player? Should the obsessed player be rewarded for his obsession? All are interesting questions that delve into what exactly we are trying to accomplish here. The commercial game industry wants their game to be addictive as possible to keep as many subscriptions as possible, but any world of any size will require subscriptions just to maintain the servers, even if the game code and art is free. On the other hand, with a volunteer force of programmers and artists, there is much less expenses, so subscriptions can be cheaper, subscribers can be fewer, and the game will still survive. So, maybe creating a game that encourages addictive behavior is ethically wrong. On the other hand, what fun is a game that rewards you just as much for not playing as it does for playing? So many questions, so many decisions. I think either offline advancement or artificial caps (you only gain 1 hour worth of skill per day no matter how long you play) is required to level the playing field between the obsessed player and the casual player, and to convince the obsessed player that they can have fun in the game without ruining the rest of their life. But again, some games thrive off of creating an environment where only the most hardcore gamers survive. They definitely have a more tight-knit, competitive community. So the WorldForge skill system really needs to be a highly abstracted system that can support a wide range of advancement, usage, and decay scenarios.