22 Aug, 2010, Scionwest wrote in the 1st comment:
Votes: 0
I'm getting ready to start building a stat and leveling system into my MUD engine and was curious how some of the existing MUD's handle experience gains and leveling. If a player has several stats such as strength and intelligence, as they use skills related to that stat i thought about increasing the experience points of the player as that stat increases. As the player's experience points hits a certain value the player would level and unlock new skills.

There are also other systems out there that is soley experience based. Each kill awards EXP and when the player levels the stats are increased manually by the player. I thought about attempting to support both, but I'm not sure quiet how you would go about implementing either one of these. How do you perform your calculations? How do you build the EXP curve that defines when a character can level?

I'm not so much looking for you guys to tell me how to write it, but rather explain the process involved and why your process is the way it is so I can have a better understanding when I go to code it.

Anything would be helpful!

Thanks
22 Aug, 2010, Rudha wrote in the 2nd comment:
Votes: 0
Im a big fan of advancement being tied to actually using the skills or stats in question, then the progression becomes natural as part of the game experience as opposed to feeling more seperate and disjointed.

I'll be doing something in that vein with Elvenblade, though I've not entirely hashed out the specifics yet.

Maya/Rudha
22 Aug, 2010, quixadhal wrote in the 3rd comment:
Votes: 0
WileyMUD uses the tried and true "YOU WILL SUFFER!!!!!"(TM) method of character advancement and leveling. :)

We follow the old-school AD&D (2nd edition) rules, although the actual experience tables were adjusted to take into account that you get experience for smacking chickens, not as a reward for outsmarting the DM. Basically, you have a single experience counter. When you kill stuff, it goes up. You have multiple level counters, and you are eligible to gain a level when your level counter for a given class > the exp requirement for that classes' next level. When you kill stuff, the exp you gain is whatever it was worth / your number of classes.

The level tables typically have each level require twice the experience the previous one did, although it's not a perfect doubling curve… there are places that are easier, and places that are harder. The fun part is death. When you die, you lose half your experience. This usually results in you losing a level, and in a few cases you can even lose two levels.

In our game, once you are eligible to level, you have to go find your trainer and pay them for their services in training you. You can also have them train any new skills or spells you have gained access to at that point. While you can train your spells/skills up in the field once you've spent a single point to learn them, they only go up to about 3/4 proficiency without expert training.

Do I think this is the best way to do it? Hell no! But, I do think it's better than some of the alternatives I've seen, which make things so easy, even a bot can do it! Or the one I loathe the most… where you always need 1000xp to level and stuff just becomes worth less as you go up. WileyMUD will happily let you slaughter a billion chickens to hit max level if that's really what you want to do with your time.
22 Aug, 2010, Rudha wrote in the 4th comment:
Votes: 0
Reminds me of frying anthills in old school D&D…

There's as many preferences as there are players, but it is worth noting that the "D&D" style of advancement is as pervasive in RPGs because … well, it works.

Maya/Rudha
23 Aug, 2010, Runter wrote in the 5th comment:
Votes: 0
There's several patterns. Often muds use a singular pool of experience to gain levels. If there is customization each level gives points to apply in various disciplines.

Another pattern awards xp to various pools depending on why its being awarded. Each pool would have its own level often related to stats.

Furthermore, exp awarded may happen when damage is dealt or at the death of an enemy or at the conclusion of a battle. Some games do a combination of these things.
23 Aug, 2010, Oliver wrote in the 6th comment:
Votes: 0
My MUD uses a system of leveling that I have not seen on another MUD before and is a creation of my own. I've seen a similar system on one MUD, but I think mine has improved upon that one in several ways.

The way it works is like this: every skill that a player has is given a rating between 0 and 25. So, there are 25 possible skillups for each skill.

Every class has a number associated with each level called their "leveling point requirement." Let's pretend that Josephino is a Warrior. Josephino is level 10. The leveling point requirement for warrior level 11 is, let's say, 50.

In order to reach level 50, the cumulative total of all of Josephino's skill ranks must equal or exceed 50.

Like Rudha said earlier in the post, it's a system that creates fluidity of advancement; as players grow more capable and powerful (as represented by the number of abilities they can perform combined with how effectively they can perform them), they level up. Instead of having power follow levels, levels follow power.
23 Aug, 2010, Runter wrote in the 7th comment:
Votes: 0
There's several patterns. Often muds use a singular pool of experience to gain levels. If there is customization each level gives points to apply in various disciplines.

Another pattern awards xp to various pools depending on why its being awarded. Each pool would have its own level often related to stats.

Furthermore, exp awarded may happen when damage is dealt or at the death of an enemy or at the conclusion of a battle. Some games do a combination of these things.
23 Aug, 2010, Runter wrote in the 8th comment:
Votes: 0
Lawl. Sorry about the double post. If an admin would remove it I have no objection.
23 Aug, 2010, David Haley wrote in the 9th comment:
Votes: 0
Oliver, your system sounds very similar to what the Elder Scrolls games do (e.g., Morrowind, Oblivion) except that skills are 1-100 and you gain levels from advancing a special set of major+minor skills, not all skills. Once you have ten advancements in any combination of skills in your major+minor set (repetition allowed) you gain a level, at which point you can increase stats. So, your skills are constantly increasing with use, and stats change at level up.
23 Aug, 2010, KaVir wrote in the 10th comment:
Votes: 0
Advancement in my mud is split into a variety of things.

There are 8 different stats, each of equal value, and the sum total of all your stats is called your "Divine Age". Stats are split into 4 categories:

  • Base stats: The 50 points you start with are the most important, as only these are used to meet talent requirements.


  • Class stats: After classing you gain a further 50 stat points, with a fixed distribution based on your subclass. Thus even a newly classed vampire will be far stronger than the strongest mortal, etc.


  • Trained stats: You may spend primal (basically exp) to train your stats, and each time you do so you'll gain a second stat for free, selected randomly but with a weighing based on your subclass.


  • Bonus stats: Equipment and spells can also give stats, but these don't count towards your Divine Age.


  • In addition to stats, there are also the following:

  • Skills: These are common abilities that everyone has, such as athletics, weapon skills, magical skills, etc. You start with 250 points worth, and they go up through use.


  • Styles: Fighting styles increase through use much like skills, except there are three tiers, and you have to master the appropriate basic fighting styles before moving on to the more advanced forms.


  • Talents: These are special boolean abilities, organised in a complex skill-web. Everyone starts with 3 talents, and you unlock a handful more by mastering skills and styles, and by increasing your Divine Age. Subclasses also grant specific talents.


  • Powers: Available after classing, these are once again laid out in a skill-web, rather like ranked talents. Like stats, they are trained with primal. The maximum rank of a power (and maximum total number of powers) is based on your Divine Age.


  • Knowledges: Class-specific boolean abilities, these are earned as rewards for defeating certain opponents, and enhance specific powers in some way (usually by unlocking new options rather than giving outright bonuses).


  • Fame/Glory: You earn these from a minigame. Glory is spent on enhancing special items, while fame limits how much glory you can spend or use.


  • Part of my system drew inspiration from Diablo2, where every time you gain a level you earn 5 stat points and 1 skill point - except I decided to drop the level part, and just allow people to spend their exp directly on either stats or class powers. In some ways "Divine Age" could be viewed as a "level" - however the Divine Age itself doesn't give any bonuses, it's simply the sum total of your 8 stats.
    23 Aug, 2010, Omega wrote in the 11th comment:
    Votes: 0
    Leveling / stat development is always a question when trying to develop something that hasn't beend one before.

    For me, fighting / combat skill uses give low experience, the body of experience gained is always through questing, which are script based.

    For me, thats the bulk of experience gain. However, there are allot of other methods to deal with experience / leveling. My mud class-less, so everyone has the same amount of xp to level.

    500*level = xp to gain, when reached, current xp = 0, and they start all over again… The ladder to advance is huge.
    every 3 levels, they attain 1 skill point (used to learn new skills) and 2 practice points (used to improve the existing skills)

    Skill use *can* improve experience, based on the skill… Sitting and casting cure spells on everyone you see who is wounded won't yield experience, but if your party just finished a battle and are wounded, all healing within a 2 minute span (to your party members who are wounded) will yield experience.

    I also have teamskills, and by virtue of use, also yield small experience gains. Ie, you teamskill 'hammer of thor' and your selected team-mate uses teamskill 'fury of thunder' and as a 'team' you do one attack, unleashing 'booming lightning', yields experience, based on damage done, the fact that you worked properly as a team, and that you both selected the appropriate skills to create a team skill.

    Which - btw - are dynamically created per character, so one combonation for one set of characters, won't work for the next ;)

    In anycase, this is how I offset experience gains.

    I also have at other phases of character development, other requirements to 'level'

    Past level 30, experience itself isn't the main requirement to level - you also need completed quests, this is the anti-grind method, stopping people from leveling by diligently doing combat alone.. An example is: 15000 xp to level with 25 completed quests (after level 30) to reach 31, at 31, you'll need 15500 xp and 26 quests (current level - 5), each time, the quest count, and xp reset to 0. (takes a long time to level ;) )

    Anyways, thats just how I work my system for leveling, but my mud is heavily designed around questing. which, since I'm not done yackking yet, also yields rewards like skill points, practices, and stat points.

    At level, players receive 1 stat point to distribute, every 3 levels, all stats go up by 1.

    Thats it. I'm done, oi, enjoy. Hope thats useful in aiding you pick/design a way to advance your system.
    24 Aug, 2010, donky wrote in the 12th comment:
    Votes: 0
    Rudha said:
    Im a big fan of advancement being tied to actually using the skills or stats in question, then the progression becomes natural as part of the game experience as opposed to feeling more seperate and disjointed.

    Some of the original programmers (one of whom is now the CEO) of EVE Online used to play Discworld MUD which had its "taskmaster" system, which is basically learn by use. So for a period of time perhaps just during development, EVE Online in addition to its time based learning of skills had accelerated learning based on use. However, I have no idea why it was removed. It was a pretty straightforward implementation, there was a chance that each use would increase each usage, but it couldn't happen too often. I wouldn't want to implement a learn what you want purely time-based system like EVE Online for my MUD though.
    24 Aug, 2010, Rudha wrote in the 13th comment:
    Votes: 0
    I havent decided in the finer points of my own advancement system yet. It will likely be that skills will advance two ways: Yoy can hone them from use, or you can use lessons/training sessions/whatever to increase them. So when you have accumulated enough total experience from using skills/defeating mosters/doing quests/etc, you would have a chance to go back and train skills you didnt use as much - or to further specialise in the ones you did.

    Maya/Rudha
    24 Aug, 2010, Oliver wrote in the 14th comment:
    Votes: 0
    I saw a system on one MUD that worked fairly well.

    Essentially, abilities could go up through use normally like any old RoM derivative. However, over time, you also gained another stat called "passive points." At any time, you could funnel your passive points into your skill percentages– it worked well to alleviate the grind for those sorts of skills that are very hard to raise through use (anything with a cooldown timer, for instance). Each skill had a difficulty/rarity category, also; the more difficult or rare a skill, the more passive points were required to raise the skill's percentage by one point.

    That said, the rate of increase for "passive points" went up dramatically if you spent your time roleplaying, and plummetted like a rock if you spent your time fighting things. That was one of the many reasons that the aforementioned MUD was an exercise in good ideas gone horribly awry. I'm all for roleplay, but disincentivizing combat has exactly the sort of effect that you would expect.
    28 Aug, 2010, Scionwest wrote in the 15th comment:
    Votes: 0
    Hmm, I had subscribed to this page, but I guess it didn't save lol.

    A lot of good replies from you all, quiet a bit of information.

    How do you guys go about creating an EXP curve to generate the amount of EXP needed for each level? I know that doubling the EXP can be done, but that doesn't seem like the proper way to do things. That's in regards to having a pool of EXP.
    28 Aug, 2010, Ssolvarain wrote in the 16th comment:
    Votes: 0
    I'd like to see some oldschool console leveling. But rather than have set levels, you'd gain predefined stats based on your experience automatically, so you see a constant improvement. You could manage it by class or paths or whatever.

    I don't know about the rest of you, but I'm starting to find the idea of completely leveling up a whole slew of skills sort of annoying. You can hop a lot of muds before you find one you like. In the mean time, you can waste a whole lot of time just getting powerful enough to play the game. In fact, I find most gear to be silly. Especially leveling gear. I like how Project Bob has the typical armor types of heavy, medium and light, but they each have sup-types. Like samurai armor is a subtype of medium, and grants a specific amount of base modifiers before being further improved with a pre/suffix system. Their weapons were also like that.

    If you could change your equipment into different subtypes and have it remain just as effective, I think it would allow for a lot more varied characters in terms of equipment, especially with free restrings. Could completely remove the need to spend hooouuurrrssss building sets of equipment that will progressively get outclassed and start to break the game if left unchecked.

    Basically… less grind. More play. Tweakable balance. Yarrrgh!
    28 Aug, 2010, quixadhal wrote in the 17th comment:
    Votes: 0
    Scionwest said:
    Hmm, I had subscribed to this page, but I guess it didn't save lol.

    A lot of good replies from you all, quiet a bit of information.

    How do you guys go about creating an EXP curve to generate the amount of EXP needed for each level? I know that doubling the EXP can be done, but that doesn't seem like the proper way to do things. That's in regards to having a pool of EXP.


    The usual method is to plot a few data points on a curve and then do the math (or have software do it for you), to find the equation of the curve that fits all the points you want.

    So, you perhaps know that level 1 is at 0xp, and level 2 is at 500xp, so if you think level 10 might want to be at 75000xp, and level 20 might be at 2000000xp, plot those and see what curve hits all the points. Once you have the formula that maps, you should be able to plug in any value to see the other matching value (provided you don't go over INT_MAX or something).
    28 Aug, 2010, Kline wrote in the 18th comment:
    Votes: 0
    quixadhal said:
    The usual method is to plot a few data points on a curve and then do the math (or have software do it for you), to find the equation of the curve that fits all the points you want.

    So, you perhaps know that level 1 is at 0xp, and level 2 is at 500xp, so if you think level 10 might want to be at 75000xp, and level 20 might be at 2000000xp, plot those and see what curve hits all the points. Once you have the formula that maps, you should be able to plug in any value to see the other matching value (provided you don't go over INT_MAX or something).


    This is about what I did; sans plotting. I just pumped some numbers into a spreadsheet and tinkered until I was happy. Comparing it side-by-side with average kill per <mob/task/etc> at level <x> let me see roughly how quickly somebody could power through some levels.

    edit: Of course, I've also got parts of the cost and gain formulas changeable via an admin console in-game; so it's quick to test new changes in the live environment if needed. I would also take to consideration are you looking for big or small numbers? 30 exp for a level with mobs worth 1 exp per is just as much effort as 3000 exp with mobs worth 100 per. Some people like bigger numbers for show or "wow" factor; some don't. I'd say keep this in mind, too, depending on what you like or what kind of player you want to attract. (Note the insanely large numbers in anything DBZ related…)
    28 Aug, 2010, quixadhal wrote in the 19th comment:
    Votes: 0
    I suggested a while ago that it would be fun/useful/annoying to get rid of numbers entirely from the user's display. You don't have a 14 strength, you are "pretty strong". You don't have 132/137 hit points, you "feel great despite the bug bites". Likewise, killing a rat doesn't give you 13xp… "You think killing rats isn't going to teach you very much". Killing a dragon, OTOH…. "You feel you've learned a LOT from this fight!"

    Yes, I know. Everyone will hate it. :)
    28 Aug, 2010, Chris Bailey wrote in the 20th comment:
    Votes: 0
    Personally I like it Quix. I'm considering that route for something I've been working on, but I hadn't thought about presenting experience in that way.
    0.0/27