Experimental Skill Pool Changes

Let us unite and figure out how to end victory dancing once and for all!

Discussion from http://crawl.develz.org/mantis/view.php?id=30

New proposal

Lemuel's system has gained quite a bit of support, but there's one flaw in it: “Only if no skills are eligible is XP added to the pool to be allocated next time.”. In my opinion, this isn't acceptable. If we are to fix the system, let's do it all the way, not stop in the middle. So I'm proposing a system, in which all the XP earned is immediately and completely distributed to your skills. The system is designed to make skills train naturally when unattended, but also to give a lot of control to the player. Here is how it works:

  • Each skill has a certain amount of exercise points (EP) which represent the percentage of XP which will be used to train it.
  • Obviously, the total amount of EP is always 100.
  • In the beginning of the game, EP are attributed proportionately to the amount of skill points in each skill. For example, a wizard (of any race) would start with the following EP:
    • Dodging: 17.64
    • Stealth: 8.85
    • Spellcasting: 38.16
    • Conjuration: 11.78
    • Translocation: 11.78
    • Fire: 11.78
  • Whenever a skills is exercised, it might gain some EP. The higher the amount of EP, the less likely it is to keep raising. Other skills are also taken into account. If most of them are disabled or haven't been exercised for a while, it becomes much easier to reach very high EP.
  • Whenever a skill gains some EP, the same amount needs to be deduced to other skills to keep the total at 100. Skills who get reduced EP are randomly chosen based on how long since they were last exercised.
  • Stealth and armour are (mostly) passively trained. If you're wearing light armour, stealth gets a minimum of 5 or 10 EP. When walking with unaware monsters in your LOS, the skill is exercised (like in the current system) and EP might raise. For armour, the minimum EP is based on the difference between skill level and the EVP of your armour. The active training of armour (when you get hit) could be removed, as it is a bit stupid.
  • Disabling a skill either cap the EP, or divide its amount (or both). Or we can keep the current system (disabled skills are exercised less often).

This sounds good. I have one objection: passive training is not good, in my opinion. And in the cases you mention, it seems clear how to go for active training (I think that's actually done right now):

  • Stealth: Is trained by waking up monsters (you learn from failing to stay hidden) or from moving unnoticed with monsters around.
  • Armour: Is trained whenever you take damage; trained more the heavier your armour is. (Analogously for Dodging.)

Or is your point that this approach cannot work when xp is handed out as soon as it is earned? — dpeg 2010-12-10 23:33

Quick note that that's an absolutely terrible way of training stealth. It would train more often for people who aren't trying to be stealthy than people who are. Moving around with unaware monsters nearby is more logical, and I'm pretty sure it's what we use now, but it's completely passive and will funnel points into stealth even if you don't care about stealth. — brickman 2010-12-11 06:48


What lever can we pull to balance this system? The formulas for raising and reducing EP are the core of this system and would probably need to be adjusted for each skill type (weapon, magic and misc). Fighting and spellcasting are special cases too. Maybe they will need a cap.

Active training

So, what happens to victory dancing in this new system? How do you train a skill? When you want to train a magic school, you'll have to cast a spell from this school from time to time to keep its EP at a respectable level. This actually sounds like “exercising” and seems natural (at least a lot more natural than victory dancing). I think we should also give the ability to the player to choose one skill to study. This skill EP would never go below 20, so even if you forget to exercise it, it will still be trained. Using a manual would raise this minimum to 60. — galehar 2010-12-02 11:41


  • If you don't want to spend points on a skill at the beginning, doesn't this encourage casters to exercise a spell a bunch of times (with no feedback or indication that this helps)?
  • Does this actually prevent dancing? The good thing about Lemuel-like systems is that there's a simple cap: one action will get you all the training you possibly can. This can have diminishing returns, sure, but successive casting will definitely increase the rate of training. This is bad.
  • I feel like this would take too much control away from the player. — tgw 2010-12-02 12:56

You can have feedback. We can put the EP in the m-screen. If you don't want to spend points on a skill, then just do as you do now, disable it.
As long as skill training depends on usage, there will always be a way to abuse the system, and min-maxers will look for it. I'm trying to make a system in which it is just not needed. Sure, you can cast a spell 20 times to bring your EP at 80%. But if setting the skill to “study”, disabling some other skills and casting a spell 3 times is enough to bring it to 70%, you probably won't bother. It's just about the numbers, we have to find a formula that works. — galehar 2010-12-02 14:25

The studied skill can be rationalized as training-while-resting. For instance, if the player hits '5' while the character is focused on Earth magic,
in addition to the message “You start searching”, you'd get “You concentrate on the earthly sturcture of the dungeon”. — galbolle

Collected Thoughts and Brainstorming

  • dpeg: I want to encourage people to think about how to remove the need to explicitly show the xp pool. Of course, we want to keep being able to skill characters in any given way; I just think that it's possible to do this without the xp pool crutch. (Historical note: Linley once said on ##crawl that getting rid of victory dancing was on his agenda before he handed over Crawl development.)
  • Kyrris: If there were a way to assign focus skills, tagging them so they trained twice as fast and gobbled up your xp, that might help diminish the necessity of victory dancing. It would widen the range between chosen and ignored skills from 4x to 8x, and give us multiple priority tiers to work with.
    • Sure, but this would make victory dancing only more convenient (and it would require more twiddling on the m screen) — this is an attempt to make victory dancing more convenient, rather than to get rid of it. — dpeg 2010-01-17 02:08
  • Siber: Instead of putting experience in a pool that you use up with actions, the game instead tracks the last N actions you made and allocates all experience you get automatically, as soon as you get it. Experience would be treated as a float instead of an integer, so small amounts of use of a skill will still slowly add up. Aptitudes of course apply after the initial division of experience, and skill toggling in m can modify the effective ratio of actions so the player can still affect experience division. Victory dancing would still be somewhat rewarded in that spellcasting more will increase the amount of experience going into spell casting, but many of the incentives will be removed, and hopefully combat casting and skill toggling will, under this system remove any perceived need for it.
    • Lubaf: There's no need for floating point arithmetic, just multiply skill XP so that 1 point of current XP is equivalent to, say, 100 or 1000 skill XP. Gives us the granularity, without dealing with floating point, and all the trouble it implies.
  • If I understand correctly, this system would keep track of “virtual experience” and assign it. And when actual xp comes in, it would be handed out according to how the eternal (virtual) xp was? This sounds indeed interesting. If we do this, we should remove all traces from skill training over time (as was/is done for Stealth, Armour etc.) — dpeg 2010-01-17 02:08
    • Yes, I like this too. A better model might be to use the Nemelex deck distribution algorithm - using skills increases an associated skill exercise value, gaining xp adds to skills based on the ratio of skill exercise values, and whenever skills gain xp, the exercise value is reduced by some amount. (as discussed on ##crawl-dev) — doy 2010-01-20 18:33
    • I signed up for the wiki just so I could support this idea! After doing plenty of research and playing a few dozen characters to their untimely ends, I stil thought the game already worked this way. It wasn't until I read this suggestion that I realized you don't benefit from exercise with an empty xp pool. This type of system is common enough (see Elder Scrolls games) that I think many players will immediately assume it. Combined with the ability to slow down skill training like the m screen currently gives, I think we'd have a convenient, intuitive system. — hotsake 2010-03-02 23:55
  • Another idea that I had is simply faster training for some skills. — dpeg 2010-01-17 02:08
    • Yes, this would be very nice for things like Armour, Spellcasting, and Stealth. I could see it being problematic with T&D, because it is one of those things you really have to go out of your way to train. — porkchop 2010-01-17 18:20
  • What about depg's faster training idea combined with an increase(reduction really) -8x (vs-4x)to skill training on the m screen when you gray out a skill? I can see this working good, any balance problems looking forward? — porkchop 2010-01-17 19:39
  • lemuel: Here's another approach. 1. There is a flag for each skill. Successful use of the skill has a chance (ranging from say 5% for frequently used, passive skills up to say 50% for Invocations and 100% for less-frequently used casting skills like Tmig and Tloc) of setting the flag to one. 2. Every 50 or so turns (longer for T&D and perhaps Stealth), each flag has a 50% chance of being set back to zero. 3. As soon as experience is earned, allocate it all between those skills with flags that are one, except that skills that are turned off have a 75% chance of being skipped. (As now; skills like Fighting could also have a chance of being skipped if we want to slow down the rate they train.) 4. Only if no skills are eligible is XP added to the pool to be allocated next time. So with this system, almost all XP will be allocated as soon as it is earned. It also has the advantages of (a) no more victory dancing – a bunch of castings in a row don't much increase the amount of training, (b) skills used in combat (i.e. in the period shortly before XP was gained) will be favored, © more consistent treatment of skills – since there are the same three parameters (chance of setting flag on successful use, speed with which flag resets to zero, and chance of being skipped at allocation), it will be easier with this system to adjust the relative training rates between skills. This is somewhat similar to some earlier suggestions but I think the on-off flag for training eligibility solves the victory-dance problem better than counting actions.
    • I came here to suggest this, but it was already here. I like this. — tgw 2010-03-07 04:59
    • I support this. — mrmistermonkey 2010-05-15 17:52
    • mrmistermonkey proposes to to tweak returns based on current skill level and method of training. For example, in the proposed weights, Transmutations has a 100% chance of setting; while this may be appropriate for XL1 transmuters, who scrounge for corpses upon which to cast Fulsome Distillation (after fights, even; perhaps there should be a way to have a lower probability for flag unsetting, rather than higher probability of flag setting, for cases like this), it's probably inappropriate for a slightly higher level transmuter often casting Spider/Ice Form before fights. On another hand, once you know enough about a spell school, you probably don't have much to learn from training with one of its lower-level spells (e.g. using Flame Tongue to dance Conj/Fire up to the point of casting Fire Storm is pretty ridiculous); similarly, training a weapon school you have at a high level with one of its weaker weapons doesn't feel right, though this is probably much rarer. Any ideas for numbers, or ways to work around pesky cases where a spell sticks out as requiring a different timer from the rest of its school?
  • Here is my assessment of the situation (dpeg 2010-03-07 05:09): We want to keep the m screen to make it easy for players to change their character's style (e.g. going fighter → caster). But at the same time we want that keeping the starting build does not require fiddling with m. So, for example, T&D should train inherently slower than Axes. If you go out of your way and deliberately disarm traps (for whatever reason), it should become faster, but still be slower than weapon skills. If you want T&D to dominate, there's always m.
    Secondly, a retroactive system will help in that xp is not generically spent for the killing action (which makes weapon skills, stabbing and some magic spells benefit out of proportion, and then forces victory dancing for the more indirect skills).
    So here is a plan:
    1. Skills should train naturally. Address training of individual skills. For example, Armour and Dodging should not rely on grinding-type actions. This should come first. For some skills, the speed might be adjusted. (As another example, while reading scrolls without Spellcasting skill, we should print a hint that the character is yet another bit closer to casting.)
    2. Exercise before getting xp. Introduce a retroactive system (Nemelex style should work), without changing the learning speeds (apart from what possibly got changed in step 1).
    3. Easier skill engineering. Strengthen the meaning of - in the m screen. Over the course of a game, rations between skills spent in various skills will be large (think of 100s or 1000s) but - currently means 1/4. Being more generous here will make it easier for dedicated skill set changers to switch.
  • Doesn't a retroactive system simply reward doing “preparatory dancing” before fighting instead of victory dancing after fighting? Or, with a very small time horizon, make non-combat skills (e.g. Enchantments used for self-buffing) untrainable? — luca 2010-05-15 17:35
    • Lemuel's proposal (see above) mitigates this issue. — mrmistermonkey 2010-05-15 17:52
      • Lemuel's proposal rewards doing a single dance action to set the flag to 1 before battle. Also, a conjurer who mostly kills with conjuration, but then uses melee to finish off a single summoned rat will train conjurations and melee skills equally. I don't think it is mathematically possible to both make victory dance ineffective and require skill use for training — luca 2010-05-16 05:18
        • Lemuel's proposal does! I fail to see how either of your examples are exploitable, or even undesirable, especially relative to the current state of dancing. The player can just turn off melee skills, hey? — tgw 2010-05-16 06:32
        • Supporting skills trained in combat, which Lemuel's proposal does, is a good thing. Dancing non-combat skills is probably excessive, too, considering how their flags have lowered chances of expiration. The only scummy case I can think of is taking a break in combat to train a magic school with a spell near useless in combat but whose respective skill has a short expiration timer. — mrmistermonkey 2010-05-16 06:51
          • Sure, and I think that would be quite common. For example, wizards would start training Spellcasting, Conjurations, with no Necromancy/Trasmutation skills. Once they decide they want Necromutation, they will start casting Pain and Sandblast (or Polymorph Other) at sufficient frequency to keep those flags always on, rather than casting them at the end of a fight until the XP pool is empty: not very different. — luca 2010-05-16 08:38
            • Casting Pain and Sandblast is still training combat skills in combat; I meant a scenario more like training Necromancy with Fulsome Distillation; in an attempt to remove such cases, see my tweaked Lemuel proposal above. — mrmistermonkey 2010-05-16 18:10
              • I was referring to casting Pain and Sandblast at relatively high levels where they do negligible or no damage, and generally not even bothering to cast them at an enemy (a macro that always casts them to your right is easier to use). The sole purpose is to set the flag with minimal MP and spell slot consumption. Your proposal of making low level spells ineffective will make this more inconvenient, since more spell slots, MP, food and miscasts will need to be expended on victory dance spells, since you will need to use higher level spells (e.g. you will now uselessly cast bolt of draining and cigotuvi's degeneration instead of pain and sandblast). — luca 2010-05-17 12:21
                • This would become more problematic if the selective amnesia spell is removed, of course. — og17 2010-05-17 15:46
      • Honestly, I think Luca is significantly understating the risks of using a system like Lemuel's. Let's look at a real situation: I'm a Merfolk Ice Elementalist, and I have decided that I want to train Necromancy for Simulacrum (or whatever else). The only Necromancy spell I possess is Fulsome Distillation, and there is no practical reason for me to ever cast it except for the purposes of manipulating my experience allocation. What happens now: I disable a couple of experience-hungry skills and then play however I want, without even thinking about experience distribution mechanics. Eventually, I just so happen to notice that I've amassed a few thousand experience in the pool (maybe I killed a tough unique or a bunch of Death Yaks, or maybe it was a gradual accumulation; it doesn't matter). I stop, spend all of fifteen seconds spamming Fulsome Distillation to get my Necromancy skill up, rest, and go on my merry way. It's a little silly, but it takes very little time and barely obstructs the process of playing the game organically at all. What would happen under Lemuel's system: I still want Necromancy skill, and I still have no means of getting it except by pointlessly casting Fulsome Distillation. Except I can't limit those casts to the times when it'll yield the biggest rewards, because once I see a Hydra or some other high-experience target barreling towards me, I most likely don't have time or mana to spare casting spells which are not crucial to my survival. So if I ever want to get any Necromancy skill out of those situations, I need to have already flagged Necromancy before the threat presented itself. The only solution is to cast Fulsome Distillation every 50 turns on the 50th turn, without rest, forever. And I'd still miss out on a lot of Necromancy experience if I'm in a life-or-death situation during my scheduled flag-refreshing turn. It would hugely disrupt the organic flow of the game, and make playing any caster with an interest in magical diversity unbelievably tedious compared to the simplicity and ease-of-use of the pre-existing experience pool system (I probably wouldn't even be able to use auto-explore anymore because it might not interrupt me often enough to keep my Necromancy flag up). I'm not sure if it's possible to create a retroactive experience system that doesn't create this problem, and I don't personally feel that victory dancing is enough of an issue to necessitate a major change. Without a way to passively force experience into a skill without needing to actively exercise it, it seems like any change intended to kill victory dancing will just replace it a far more arbitrary and frustrating form of pointless skill-spamming. — sjohara 2010-10-15 01:13
        • I agree that we have to leave players a mean of training skills they don't know yet, or which they plan to use later. If we remove victory dancing, we have to replace it by something else. See my proposal below about manuals. Instead of having to find a book with a low level spell of the school you wish to learn, you need to find a manual to train your magic skills. We can even limit manuals to magic school skills (and maybe T&D), because they are the only skills which don't always train naturally and often need to be trained by victory dancing. — galehar 2010-10-15 12:01
          • I don't think we can really rely on items to accomplish that. The odds of both getting a book with useful Necromancy spells and finding a Necromancy manual on the same character would be pretty low even if manuals dropped like candy, so you'd still have the same problem most of the time. If it's at all possible for people to get experience into an important skill, they'll feel obligated to do so; no serious player will let Borgnjor's Revivification rot in their inventory just because they haven't found a Necromancy manual yet if there's an alternative, and Crawl should never be actively encourage the kind of tedious, grindy behavior that I was talking about above. What I think you'd have to do is make it so you can go into the skill screen and mark a single skill as “focused” on your own, without needing an item, to force experience to be passively allocated to it (no more than 25% though, since this would be unlimited). That would largely solve the problem with retroactive experience, but you lose the flavor of needing to actually cast a spell in order to improve in it, which may be worse than keeping victory dancing depending on how you want to look at it. — sjohara 2010-10-16 21:10
  • What about simply totally ignoring the character actions, and instead letting the 'm' screen fully configure the training weights, which are then used to make a weighted random choice each time XP is gained? This way, victory dancing has no effect, and the initial build is fully guaranteed to be preserved if no configuration is done. Additionally, an “automatic” mode could be added to automatically adjust the weights depending on player actions, but with player specified weight range constraints (the manual mode would then be reduced to the case of having single element intervals for all skills). — luca 2010-05-15 17:35
    • I don't like this; it requires extensive fiddling for optimal performance; without “automatic mode” it would probably prove near unusable for new players, perhaps leading to needless victory dancing for the sake of less fiddling. Oh and it doesn't even require actual skill use to train. — mrmistermonkey 2010-05-15 17:52
      • I'm not sure that requiring skill use to train matters. You can already trivially use most skills by either attacking a summoned creature (beasts from the horn of Geryon are the easiest), learn and uselessly cast a level 1 spell in the desired school, uselessly evoke something, uselessly channel mana with Sif Muna, and so on. The automatic weighting feature should allow to avoid fiddling unless desired (and make fiddling easier since you can do it based on the automatic weights). — luca 2010-05-16 05:18
        • Currently, yes, it's easy to victory dance, but that's not necessarily so with some of the proposals; they are intended to eliminate or at least mitigate victory dancing. That's what this page is about, right? — mrmistermonkey 2010-05-16 06:51
          • Unless you totally ignore player action, these things will have an effect, whether it is to direct the XP pool to a skill, set a flag, alter weights, etc. It is possible to mitigate things by ignoring fights with summoned creatures and spells that don't have any effect, but I don't think this can be completely fixable: for example, it is hard/impossible to determine whether a summoning spell or Dig is being cast usefully or for “victory dancing” — luca 2010-05-16 08:38
  • The general question I see is: should the player be able to train skills he is not actively using or using sparingly? Note that this is a very useful pattern for casters.
    • For instance, in my current game (NaWz of Sif Muna), I first played independently of skills, with tweaks only to prioritize Spellcasting at first (resulting in mostly training that, Conjurations and Fire Magic), then started raising Enchantments/Air to get good Haste and Deflect Missiles, then raised Translocations to get great Controlled Blink, then raised Transmutations/Necromancy to get Necromutation, then raised Conjurations and Fire Magic to get Fire Storm (these 4 are the essential high level spells for casters). I did not really care for Transmutations or Necromancy other than for casting Necromutation. Of course, I extensively victory danced (with Swiftness, Blink, Bolt of Fire) with the exception of Necromancy, where I took advantage of Crypt to train it via Dispel Undead (but would have just used Mystic Blast or Bolt of Fire otherwise). I think this is essentially the optimal way to play a caster of Sif Muna (swapping Fire for Ice due to Ozocubu's Armor in some cases). — luca 2010-05-16 08:54
  • In particular, how should the game handle the need of casters to be able to use Haste(6)+Controlled Blink(7)+Necromutation(8)+Fire/Ice Storm(9), often without caring much about lower level spells in at least some of those schools, and obtaining these spells in this optimal order? “Victory dancing” is also necessary to train Fighting, for the sole purpose of getting higher HP: how do we handle this too? — luca 2010-05-16 08:54
  • So long as the skill use is required for training there will be some victory dancing. There will always be some cases when a character wants to train a skill that they won't have any practical use for until it reaches a certain level (Casters particularly). That said, an on/off flag system (like lemuel's)is superior to any system that counts actions (like the current one, or the proposed nemelex-like system) simply because casting apportation once before combat is less tedious than casting it ten times after. I propose a simplification on Lemuel's system, with a tweak:
    • All skills have a binary training flag. Any use of the skill sets the training flag to 1. There is no time based decay. Any time experience would enter the pool, it is divided between all skills with a flag set to 1. Skills greyed out in the 'm' menu have a 75% chance of being skipped AND only get half a share of the XP when they aren't skipped. Any time a skill gets XP assigned to it, it has a chance of having its flag set to 0. The chance will vary from skill to skill. Weapon skills and Conjurations should toggle near 100% of the time. Stealth and Traps/Doors too, probably. Dodging and Armor should toggle a middling amount while Invocations and non-combat spell schools should have a higher chance of retaining their flag. Of course, there is also room for some skills (like fighting and spellcasting) to get less than a full share on distribution. Finally, there is an additional setting in the 'm' menu. In addition to greying or non-greying a skill, the player turn a skill blue to focus on it. Only one skill may be focused at a time, but a focused skill is ALWAYS trained when XP is allocated, regardless of its flag. This will totally eliminate the need for victory dancing in all cases where a character is only dancing up one skill at a time, while retaining a general system where skill use matters and a novice player can end up with a reasonable skill build without ever touching the 'm' menu. — 256 2010-07-26 20:25
  • With Lemuel's system, manuals have to be removed or redesigned. How about using them to reduce the need to victory dance (which is more a pre-battle dance under the new system)? Here is my proposal: when you read a manual, you're asked if you want to learn this skill. If you do, the skill is set as a “focus” skill and as long are you're carrying the manual, half the XP you gain goes to that skill. The expiration of the manual should be based on XP gain, not time, both for flavour and gameplay. For flavour, because you're reading the manual while you're resting or travelling, not in the middle of tough fights. For gameplay, because you don't have to micro-manage it for optimal use. Just activate it and you know that half your XP will go to that skill, no matter what. Of course, the proportion of XP that goes to the skill might need adjustment. For flavour, it could even depend on how long you've been carrying the manual just walking around or waiting (you had more time to read it), but I'm not sure it's interesting gameplay wise. Also, when the manual expires, maybe the message could be “You've finished it and throw it away”, instead of it crumbling into dust. It's just a manual, not a magic book. With this new system, manuals could (should?) be much more common. — galehar 2010-08-27 11:41
    • This sounds like the Sage card's effect, except without multiplying exp sent to the respective/selected skill. — mrmistermonkey 2010-08-27 11:53
  • How about traiding xp from pool for xp from kill. Imagine you've killed something and got 200xp to your pool. Then you kill, say goblin, and get XP from pool distributed to used skills. Not sure if it's good idea - though it can help handle victory dancing, since you will train skills only by killing monsters. there is problems with invocation and summonings (and something else i guess) - though summonings is not an issue, imo.
  • Figured I'd add an idea to the pool. Kind of similar to a few ideas proposed already, but a bit different too; it's kind of rough, though. Proposal: instead of tracking an experience pool, have a smaller, more intuitive pool of potential skill-ups. The first skill-up point will be attained when the player accumulates x experience, the second after y (larger than x) more experience, and so on. Skill points can be redeemed for immediate advancement in skill levels, with the number of skill points needed for advancement determined by racial aptitudes (for example, Spriggans, with awesome Enchantments aptitude, might only need to consume one or two skill points to advance Enchantments by a rank, while Trolls will need more). There would be two 'modes' of skill advancement, automatic and manual, and the player can toggle between them at will (with automatic being the default, so beginners who don't want to mess with skills can do well). Under the automatic system, the game tracks 'training events', so that getting hit while wearing armor will add n points to a hidden 'armor training' stat (depending on what armor was worn), casting Magic Dart would add a point or two to a hidden 'conjurations training' stat, and so on. Less-commonly used skills like Translocations would add more points to their respective training stat. Whichever skill has the most training points will be advanced immediately as soon as there are enough skill points available, accompanied by a sharp reduction in that training stat (so it's not just one skill getting advanced over and over again). These training skills will also decay slowly over time, just so actions at the beginning of the game won't still affect endgame skill advancement. Under the manual advancement system, the player just spends the skill points as he or she pleases. Clumsy, sure, but canny players can more or less get the same effect currently by victory dancing; this is just less tedious. Fighting and Spellcasting would be special cases, advancing after some number of advancements in a sub-skill. For example: Fighting could advance after every 1.3 advancements of skills like Long Blades and Axes, Spellcasting could advance after every 3 advancements of magical skills. The frequency would, of course, be based on racial aptitudes; Fighting would, sadly, probably have to be a floating-point number due to the tendency of fighters to focus on one weapon type. This makes manuals, as they are, useless, but I think they could just be converted to (very) rare items that immediately provide a few additional ranks in a given skill, being destroyed immediately in the process. — dtsund 2010-09-03 21:06

My experience with the xp pool and victory dancing is that for me, victory dancing is currently necessary because otherwise the experience goes into unwanted skills. It is very rare for me to ever have a maxed out xp pool (i.e. Tomb 1 in the greater mummy gauntlet; zot 5; and Slime:6) Othertimes my xp pool only ever gets above 5000 when I either have many skills greyed out or else I just killed a unique. If I knew that this experience wouldn't go into stabbing for my non-stabbing characters, throwing for my non-throwing characters, or dodging for my large characters, etc. then I wouldn't care how much xp was in my pool. Greying out a skill doesn't seem to have nearly a significant enough effect on training, which I find rather counter-intuitive. Example: in a recent game I entered a bailey with 700 xp in my pool. The trouble was that I could only throw or wand-kill the orcs but I didn't want throwing to increase because of acquirement trouble with Trog and because I wanted the skill in fighting/maces/dodging/stealth, so I left them alone and died, oops, my fault, but my motivation was based on the skill pool. Similarly when I come upon sleeping monsters with xp in my pool I do not engage them directly anymore because stabbing climbs too fast, so my options are to a)shout (!), b)wait patiently for them to wake up, or c)keep on walking. Similarly, I victory dance with Sif Muna because I know that if I don't, my invocations are going to use up all of the xp from my past battles. The solution seems really rather simple: a greyed out skill trains far-far-far-slower than it does now. In fact, victory-dancing as it is currently used, in my experience, is an effort to reduce training of unwanted skills to 0; so I would recommend having the 'm' screen completely block a skill from training at all. — tenaya 2010-09-15 23:26

  • I like the idea of turning off skills entirely, but at the same time, I don't think we should get rid of the reduced rate skill training that we currently have. I'm not the best player, but I'm sure that I'm not the only one who turns off their primary weapon skill while keeping fighting turned on. Due to the relative rates they advance, it ensures that I'm not running around with unarmed 17 and fighting 3 or vice versa. I think this would effectively resolve most victory dancing, except in the case where one wants to learn / train up a new skill. I don't think any of the proposals above really address the desire of a pure caster to learn a level or two of fighting by beating on fungus in the Lair. — rebthor 2010-10-19 14:12

I think this would allow players to learn and raise skills without dancing, provide fine tuning for those with a training strategy, and make sense for new players and those who don't want to fiddle with settings:

  • Show some skills in the “m” for manage skills menu that are at 0%, specifically Spellcasting when carrying a spellbook, fighting and weapons skills for the currently wielded and quivered weapons, shields if you wear one, magic schools for all memorized spells, invocation and evocation if anything on the “a” for abilities screen trains it, and some special ones all the time: traps and doors, armour, dodging, stealth, stabbing.
  • When a kill is made, 50% of the experience is divided among the recently used skills (use one of the already suggested methods to track these), and 50% is divided evenly among turned on skills. Make it 25:75 if we want to “waste” less experience on things we use but don't want to train, or 60:40 if we want to emphasize exercise over configuration.

This way, you can learn news skills without dancing (just wield a weapon or memorize a spell, then play as you will) and you still get better at what you use the most more quickly than what you don't use. If you never touch the “m” screen, everything is trained, but more goes into what you use more. If you turn off all but your most important skill, that one will go up the fastest. –jejorda2

-If the issue is Victory Dancing only, it could be directly prevented with a gain over time method, rather than a direct spending method. Let me explain: Suppose that XP worked as it does now, I kill something, gain some XP, and decide to cast a meaningless fire spell to gain fire magic skill. Now, instead of the current (cast, exp loss, skill gain, rest, repeat) that happens now, suppose that doing this took a larger (based on how much XP is on the pool, or experience level maybe?) amount of XP right away, and trained the skill I just used slowly over something like (28-experience_level)d(skill_level*(1d(experience_level)+10)) turns, so the training happens faster as you level up, yet slower as the skill being trained goes up. During this time, more XP can't be allocated for this skill, though it can be allocated to other skills. Once it's finished, it can be allocated to this skill again. The result of this is that the skill will still train from use, but I'm now unable to put all of my XP into it at once, and the hunger clock will now be a factor, with the exception of Mummies. Since more skill it taken up front, there is not going to be too much of a surplus. If the actual time isn't shown, it won't be possible to wait to use the skill until it wears off, but rather, it will train “naturally” from regular use. I suppose this would also work well with an increased chance to not train the grayed out skills. -IronJelly

- Probably it's worth to make some kind of scale instead of on/off switch for skills training? For example “Do not train, Train a little, Train normally, Train whenever possible, Train always!”. Something need to be done for situation when high level character is training low level skill. Like lvl27 spellcaster trying to train fighting and armor. Right now it's rather tedious cycle: find monsters with high exp cost, obliterate them with spells, find weak monsters to pump xp to fighting/armor. Probably monsters should have some kind of training level. Using sword against monster with 'fighting level 10' should train fighting relatively easy till level 10 regardless of exp pool. — xecutor 2010-11-09 12:11

- Backing out of specifics: Folks, there's a basic contradiction between “getting rid of victory dancing”, and “training based on practice”. Remember,”You get whatever you measure” (and reward) – any practice-based system will have players doing whatever it takes, to get the skills they want. I'd say it's perfectly reasonable to auto-train skills that get used a lot, even if the player objects. But, if skills like Dodging are just slurping up too much experience, then the greedy skills should get a reduced share. How about, have a general limit (based on current level and user choice) on how much experience a skill can absorb per time. A deselected skill might be restricted to (handwaving) absorbing 1% of its current experience total every 100 turns. (Even selected skills should have some limit there, but much higher.) Instead or in addition, there could be a rule that deselected skills can't tap the pool more than once in a row, until some other skill has been trained. — mental_mouse 2010-11-30 14:18

-For me, skill training is the biggest joy-kill in the game, and I agree with MentalMouse - any system that rewards practicing is going to invite victory dancing - all you can do is make it more obscure, frustrating and difficult and thus promote more farming-type, non-gameplay-directed activity that is even less rewarding for the player. I think the problem could be solved by stepping back and remembering that this is a game and that the mundane details should be abstracted out to make sure it is FUN. So I really like the idea of just being able to “buy” the skill advancements you are interested in. WHY should it be necessary to grind away at a skill to get it to the level you need? Give players the flexibility to advance the skills they want _without grinding_. Sorry - the current skill training system really irks me, I see it as the one single major design flaw in the game. Training = Grinding. I hate that when I have no XP pool, my character is not “learning” anything even though I'm fighting to stay alive on DL2 where monsters only provide 1XP or 2XP each. I also hate that I spend the first five levels of the dungeon with all other skills turned off to try to get a level in Fighting, because I know I'll need that. My whole game becomes obsessed with trying to use a skill that I don't have yet, and it's frustrating because you have no idea if you are even making any progress. — djnrempel 2010-12-01 18:47

If you fight popcorn monsters, you're not supposed to be learning anything anyway, so this is working correctly. — kilobyte 2010-12-02 00:55
“Buying” skills or otherwise manually configuring point allotment to skills is tedious, as well, albeit less annoyingly intertwined with play (no repeatedly and uselessly casting spells to train their skills, for example); e.g. with buying you continually have to pick which skills you want to train, and I imagine manual configuration of automatic allotment would require a bunch of confusing interface, though with a good bit less micromanagement. As an abstraction of some of the above skill training proposals I noticed, I imagine automatic allotment (regardless of implementation) with allowance of manual override (for direct training, or perhaps also weight adjustment) should be fine, if the interface isn't too ridiculously complicated and tedious to use. — mrmistermonkey 2010-12-01 20:50

I second mrmistermonkey's suggestion (and commiserate with djnrempel). Rote training or victory dancing will happen to some extent under any system that bases skill advancement on the use of the skill. This suggestion combines the current system with one of buying skills: Add that third level to the skill toggle in the “m” interface. Currently we toggle between more skill advancement and less advancement. Keep those levels and add a higher level called “exclusive advancement”. Skills default to “more”, as in the current system. If no skills are toggled to exclusive advancement, then the system works exactly as is. If one or more skills are toggled to exclusive advancement, all XP added to the skill pool is distributed to the exclusive advancements skill(s). I would support doling out the XP in the skill pool over many turns, as it'd be unflavorful to advance in bows immediately after defeating a unique with an axe. The symbols for the less, more, and exclusive toggle settings could be minus, period, and plus (-/./+). I don't like the flavour of buying skills – this system would have slightly better flavour – but victory dancing annoys me more and training or pre-dancing would annoy me even more, I think (I don't find Nemelex gift management fun). — smock 2010-12-02 21:32

Another problem with the Exp Pool is its greater risk for non-spellcasting players. A spellcasting player can victory dance and rest their way through their Exp Pool while a non-spellcasting player (or non-inclined to victory dance player) risks meeting up with a draining attack and losing unallocated xp in the pool. Therefore the optimal play is to grind. I would propose that draining attacks do not drain from the exp pool, just as they do not drain from skills; or, draining attacks should drain from skills, too. In a recent game I had 6000 xp in my pool after killing some uniques in Elf, but after seeing that Blink and Confusing Touch were each using up less than 100 xp from my pool I decided to just keep on playing. Of course, I met up with an elven long sword of draining before too long. — tenaya 2010-12-31 16:16

Shoot, really? I didn't even know that you could guard exp from draining by getting it out of the pool. This sounds way too metagamey and munchkiney to leave unchanged. That said, you could also do the reverse if you wanted–let draining attacks make the exp pool negative, although it'll only show an 'x' or a '-' or something rather than the actual number since that would look silly. While it's negative skill training doesn't happen at all. — brickman 2010-12-31 19:51
  • A different idea: during rest, train only emphasized skills, at an accelerated rate. Of course, you should be able to select any skill (even those you don't know yet). — sinsi 2011-03-23 18:08

[playing 0.9 trunk) I'm glad to see the xP pool has been uncapped, very nice! One less reason to bother with victory dancing. As a short term fix, how about removing the vulnerability of the xp pool to draining attacks (as I mentioned above)? Please? Again in Elf, I lost 6k from my pool to an elf conjurer; it's tough & boring (and yet still optimal) to victory dance as a Trog worshipper. — Tenaya 2011-06-03 20:35

  • So, as far as I can see, the general consensus is that victory dancing needs to be minimized/gotten rid of, and I keep on seeing people saying 'Victory dancing is going to happen to some extent in a system that trains skills on use'. I'm new here, so don't really know previous discussions on this. Thus, the question: what is the upside of skills being trained on use rather than some other system? Valsu

> The upside of training skills being used is “natural training”. You don't have to fiddle in the skill menu, and your character naturally trains the skill he uses (which are probably the ones he needs). See this page for the planned new system. The goal is to offer the player the ability to switch between manual (he chooses which skills to train) and automatic (used skills are trained). In both mode, there's no XP pool and skills are trained immediately when XP is gained. — galehar 2011-06-21 13:40

Logged in as: Anonymous (VIEWER)
dcss/brainstorm/skills/experimental_skill_pool_changes.txt · Last modified: 2011-06-21 13:45 by galehar
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki