How to Remove Victory Dancing


Although the central place for design discussion is ##crawl-dev on freenode, some may find it helpful to discuss requests and suggestions here first.

User avatar

Ziggurat Zagger

Posts: 5832

Joined: Thursday, 10th February 2011, 18:30

Post Thursday, 21st April 2011, 00:19

How to Remove Victory Dancing

Victory dancing, I believe, is the act of repeating the exact same task over and over to apply unallocated xp to a skill.

My solution to victory dancing requires a bit more action tracking. When a check to allocate experience to a skill succeeds, check the last action and turn number recorded for allocating experience to this skill. If it is the exact same as the current action and the number of turns between checks is less than 50, do not count it; otherwise record the current action (include spell cast and target/attacking monster id and item id used as applicable) and turn number for this skill and allocate the experience to the skill.

I chose 50 as an arbitrary number.
"Be aware that a lot of people on this forum, such as mageykun and XuaXua, have a habit of making things up." - minmay a.k.a. duvessa
Did I make a lame complaint? Check for Bingo!
Totally gracious CSDC Season 2 Division 4 Champeen!

Ziggurat Zagger

Posts: 3037

Joined: Sunday, 2nd January 2011, 02:06

Post Thursday, 21st April 2011, 00:29

Re: How to Remove Victory Dancing

So, we have to victory dance TWO skills at once, and alternate between them? This is actually a buff to casters, assuming spellcasting skill is distinct from other magic skills, since you're guaranteed to send half your xp into spellcasting.

Or are we supposed to mill around for 50 ticks in between each cast? This could be awkward if we are, say, training our kill spell in combat by killing things. Sometimes monsters approach more than one every 50 ticks.
User avatar

Ziggurat Zagger

Posts: 5832

Joined: Thursday, 10th February 2011, 18:30

Post Thursday, 21st April 2011, 01:34

Re: How to Remove Victory Dancing

Read the post again, KL.

I specifically mention using a unique target id. Meaning you can get xp applied if the target or attacker (in the case of shield/armor dancing) is a diferent one than before.

Alternately track all successful xp applications to skills for the last 50 turns and if the exact combination qualfies again (skill plus optional target id(specific monster or self or nothing) plus whatever else might make the check distinct) then don't apply the xp to the skill.

50 seemed like a reasonable number that I pulled out of the ether.
"Be aware that a lot of people on this forum, such as mageykun and XuaXua, have a habit of making things up." - minmay a.k.a. duvessa
Did I make a lame complaint? Check for Bingo!
Totally gracious CSDC Season 2 Division 4 Champeen!

Ziggurat Zagger

Posts: 3037

Joined: Sunday, 2nd January 2011, 02:06

Post Thursday, 21st April 2011, 01:38

Re: How to Remove Victory Dancing

Allow me to clarify, without any attempts at weak levity.

Increasing the tedium of victory dancing is not a fix. It is the opposite of a fix.
User avatar

Ziggurat Zagger

Posts: 5832

Joined: Thursday, 10th February 2011, 18:30

Post Thursday, 21st April 2011, 01:41

Re: How to Remove Victory Dancing

Tedium requires no consequences.

By increasing time or requirements you add... time which increases hunger and increases OOD encounters and subtracts score.
"Be aware that a lot of people on this forum, such as mageykun and XuaXua, have a habit of making things up." - minmay a.k.a. duvessa
Did I make a lame complaint? Check for Bingo!
Totally gracious CSDC Season 2 Division 4 Champeen!
User avatar

Slime Squisher

Posts: 332

Joined: Friday, 4th February 2011, 18:04

Location: The South, US

Post Thursday, 21st April 2011, 01:59

Re: How to Remove Victory Dancing

I think that the problem of victory dancing is not so much a problem behaviour in itself, but rather a symptom of how the xp training works. Most RPG's make you artificially select which skills your XP points go into; Crawl puts XP points into whatever skilled action you happen to be doing at the moment. A direct consequence of this is that when you have a large amount of XP to use up, and when you have a skill that you would prefer to be boosted, you will victory dance.

Some of the proposed solutions to victory dancing try to track which skilled actions you have been doing the most, and retroactively assign XP points to those skills.

Merely punishing a player for engaging an a boring and tedious behaviour that is a natural result of the XP system wouldn't be very nice and doesn't solve the real problem, any more than cutting off the feet of a soccer player who is kicking badly solves his bad kicking.

edit: I know that's a fairly harsh example, and I wish that I could l think of a better one. I'm not trying to be malicious.
Human kind cannot bear very much reality.
TSE
User avatar

Ziggurat Zagger

Posts: 5832

Joined: Thursday, 10th February 2011, 18:30

Post Thursday, 21st April 2011, 02:04

Re: How to Remove Victory Dancing

This thread was inspired by the mummy wizard tactics which describe some serious vd tactics to raise skills.
"Be aware that a lot of people on this forum, such as mageykun and XuaXua, have a habit of making things up." - minmay a.k.a. duvessa
Did I make a lame complaint? Check for Bingo!
Totally gracious CSDC Season 2 Division 4 Champeen!
User avatar

Tartarus Sorceror

Posts: 1850

Joined: Monday, 20th December 2010, 04:22

Location: Surabaya, Indonesia

Post Thursday, 21st April 2011, 02:57

Re: How to Remove Victory Dancing

If you want to make your body stronger, it's just natural that you do push-up or weight-lifting or whatever over and over again. There's absolutely nothing wrong with such repeated task.

But if the repeated task doesn't suit you (like if you're playing a pure spellcaster and you have to slash rats with a short blade so you can get more HP), now that might be a problem....
User avatar

Ziggurat Zagger

Posts: 5832

Joined: Thursday, 10th February 2011, 18:30

Post Thursday, 21st April 2011, 03:40

Re: How to Remove Victory Dancing

The system I propose allows for a repeated task as long as it is made unique. Attacking seven different rats in a row will allow a check for each rat. Chances are if you gained ex to your skill you probably killed the rat. It is attacking the exact same rat over and over that is discouraged.

This type of system could be used in conjunction with any addiional xp allocation reform.
"Be aware that a lot of people on this forum, such as mageykun and XuaXua, have a habit of making things up." - minmay a.k.a. duvessa
Did I make a lame complaint? Check for Bingo!
Totally gracious CSDC Season 2 Division 4 Champeen!
User avatar

Dungeon Master

Posts: 4031

Joined: Thursday, 16th December 2010, 20:37

Location: France

Post Thursday, 21st April 2011, 08:33

Re: How to Remove Victory Dancing

The plan is not to make VD even harder. We'll add a manual mode in the skill menu which will allow you to select the skills you want to train. All incoming XP will go into the selected skills. Then we'll add an automatic mode that select the skills to train based on previous actions. No more XP pool.
<+Grunt> You dereference an invalid pointer! Ouch! That really hurt! The game dies...

For this message the author galehar has received thanks:
pratamawirya

Mines Malingerer

Posts: 44

Joined: Thursday, 7th April 2011, 12:24

Post Thursday, 21st April 2011, 09:06

Re: How to Remove Victory Dancing

The player needs to rest after each battle.
The player also needs to train the skills he want, and allocate time for that.
How about assuming that while he is resting(waiting for XP and MP to recover), he is actually exercising instead, doing the "victory dance" for skills he wishes off-screen? That is, while you rest, you are training selected skills at an accelerated rate.
Advantages: no more macros, no more tedium, no more victory dancing.
Disadvantages: no "gym" required - bats to train defense, low-level spells to train spellcasting; no extra hunger costs for training magic, piety costs for invocation; no glowing risk.

Sol

Lair Larrikin

Posts: 19

Joined: Wednesday, 13th April 2011, 16:21

Post Thursday, 21st April 2011, 10:11

Re: How to Remove Victory Dancing

galehar wrote:The plan is not to make VD even harder. We'll add a manual mode in the skill menu which will allow you to select the skills you want to train. All incoming XP will go into the selected skills. Then we'll add an automatic mode that select the skills to train based on previous actions. No more XP pool.

Please, can you explain this a bit? Can you select only one skill, so all xp will go to it? What about I select Fighting, but don't ever melee, will it grow?
User avatar

Dungeon Master

Posts: 4031

Joined: Thursday, 16th December 2010, 20:37

Location: France

Post Thursday, 21st April 2011, 13:09

Re: How to Remove Victory Dancing

Sol wrote:
galehar wrote:The plan is not to make VD even harder. We'll add a manual mode in the skill menu which will allow you to select the skills you want to train. All incoming XP will go into the selected skills. Then we'll add an automatic mode that select the skills to train based on previous actions. No more XP pool.

Please, can you explain this a bit? Can you select only one skill, so all xp will go to it? What about I select Fighting, but don't ever melee, will it grow?

Yes. We're still at the designing phase for it, so nothing is written in stone. But the idea is to allow players to choose which skill to train, even fighting and spellcasting. The HP bonus from fighting will be nerfed before. There will probably be a few restrictions, like carrying an appropriate weapon to train a weapon skill or knowing a spell from the school you want to learn (with a decent success), but nothing too drastic.
You'll be able to select one or several skill. You will also probably be able to choose between simple and double weight for selected skills.
<+Grunt> You dereference an invalid pointer! Ouch! That really hurt! The game dies...

For this message the author galehar has received thanks:
Sol

Abyss Ambulator

Posts: 1244

Joined: Thursday, 10th March 2011, 19:45

Post Thursday, 21st April 2011, 13:16

Re: How to Remove Victory Dancing

Will this mean we can choose to train a skill even if we currently have 0 in it? If so, I assume all skills will be visible on the skill screen so we can see progress towards getting the first level in a skill.

Maybe for spellcasting you should have to be at least carrying a spell book - this could also apply to training magic schools; you need to have a book with a spell of that school in even if you can't currently cast it.

I guess the problem with this is it would mean spellcasters would have to carry more books around with them.
User avatar

Blades Runner

Posts: 575

Joined: Tuesday, 18th January 2011, 15:11

Post Thursday, 21st April 2011, 13:37

Re: How to Remove Victory Dancing

allowing to train a skill without actually practicing it sounds very weird; it's a different paradigm. but it might just work. it's silly, in a way, but performing the same rote action a million times isn't any better. it's victory dancing without having to victory dance.

the thing is, i find this surprising because it's the first i hear of it. the last time i checked there was some talk about the "monster experience pool". is there a public discussion of this new proposal anywhere? can't see anything.
Wins: DDBe (3 runes, morgue file)
User avatar

Dungeon Master

Posts: 4031

Joined: Thursday, 16th December 2010, 20:37

Location: France

Post Thursday, 21st April 2011, 14:07

Re: How to Remove Victory Dancing

Jeremiah wrote:Will this mean we can choose to train a skill even if we currently have 0 in it?

Probably not. You'll still have to victory dance the first level.

Jeremiah wrote:Maybe for spellcasting you should have to be at least carrying a spell book - this could also apply to training magic schools; you need to have a book with a spell of that school in even if you can't currently cast it.

I think it's better to require the player to learn a spell rather than just carry a book.

absolutego wrote:the thing is, i find this surprising because it's the first i hear of it. the last time i checked there was some talk about the "monster experience pool". is there a public discussion of this new proposal anywhere? can't see anything.

No, there was some informal discussion about it on IRC but we haven't wikified anything yet. I'm confident that it will come soon because the person who suggested it is kilobyte, our most active dev :)
<+Grunt> You dereference an invalid pointer! Ouch! That really hurt! The game dies...

Abyss Ambulator

Posts: 1244

Joined: Thursday, 10th March 2011, 19:45

Post Thursday, 21st April 2011, 15:07

Re: How to Remove Victory Dancing

galehar wrote:
Jeremiah wrote:Will this mean we can choose to train a skill even if we currently have 0 in it?

Probably not. You'll still have to victory dance the first level.

That sounds like it could be hard to implement: how do you victory dance that first level if there is no more experience pool and all XP earned are going straight into one of your other skills?
User avatar

Dungeon Master

Posts: 4031

Joined: Thursday, 16th December 2010, 20:37

Location: France

Post Thursday, 21st April 2011, 15:31

Re: How to Remove Victory Dancing

Jeremiah wrote:
galehar wrote:
Jeremiah wrote:Will this mean we can choose to train a skill even if we currently have 0 in it?

Probably not. You'll still have to victory dance the first level.

That sounds like it could be hard to implement: how do you victory dance that first level if there is no more experience pool and all XP earned are going straight into one of your other skills?

You can victory dance and gain new skills in automatic mode. Allowing the selection of 0 level skills is a detail anyway. We might do it if necessary, but if automatic mode works properly, I think we won't have to.
<+Grunt> You dereference an invalid pointer! Ouch! That really hurt! The game dies...
User avatar

Snake Sneak

Posts: 121

Joined: Tuesday, 11th January 2011, 20:02

Post Thursday, 21st April 2011, 17:36

Re: How to Remove Victory Dancing

I think the current system is neat. I like getting better at things that my character actually does in game. Although if it fixes victory dancing and keeps the skill system in place I won't complain.

I am not sure why anyone would pick automatic when they could select manual allocation of skills. Wouldn't a manual mode just encourage raising everything to be passable, then dumping all your experience into one or two things something to max it out? (I'm looking at you conjurers). Although on the other hand, being able to raise stealth or armour quickly would be cool too.
User avatar

Dungeon Master

Posts: 4031

Joined: Thursday, 16th December 2010, 20:37

Location: France

Post Thursday, 21st April 2011, 19:35

Re: How to Remove Victory Dancing

LunarHarp wrote:I am not sure why anyone would pick automatic when they could select manual allocation of skills.

New players who don't know what skills to train. And maybe also any player in the mid-game, once they have reached their urgent goals. This is assuming that the automatic mode is efficient and that no skill is overpowered, so this probably won't happen with the first iteration of the system.

LunarHarp wrote:Wouldn't a manual mode just encourage raising everything to be passable, then dumping all your experience into one or two things something to max it out? (I'm looking at you conjurers). Although on the other hand, being able to raise stealth or armour quickly would be cool too.

Players can already train the skills they want. There is a few downsides and limitations, but with dedication, you can put at least 90% of your XP into the skill you want by victory dancing. So this change would just remove the tedium of it.
<+Grunt> You dereference an invalid pointer! Ouch! That really hurt! The game dies...
User avatar

Vestibule Violator

Posts: 1533

Joined: Thursday, 16th December 2010, 20:52

Post Thursday, 21st April 2011, 22:32

Re: How to Remove Victory Dancing

Wow, this sounds eminently sensible! This will probably the biggest gameplay improvement in the history of the game, and I don't think people will realize how big the improvement is until they actually experience it. IMHO of course.

Temple Termagant

Posts: 9

Joined: Friday, 22nd April 2011, 13:29

Post Friday, 22nd April 2011, 14:17

Re: How to Remove Victory Dancing

It sounds like you already have a system that is actively being implemented, so this suggestion might be coming a bit late. But for the sake of futility, I'm going to post it anyway. I'm also going to confess that I'm fairly new to DCSS and haven't made it to D:10 yet (I like to bite off more than I can chew), but I have a good understanding of what Victory Dancing is, and why it's retarded and not fun. I've also read the experimental skill pool changes page and forum threads, so I think I have a good grasp on what needs to change.

Taking another look at why VD is necessary, there's the experience draining attacks, and there's the accidental training of useless skills. We also want to avoid pre-dancing as it's as tedious and not-fun as post-dancing. All of these are addressed in galehar's/kilobyte's idea (which I like, personally). We have the manual mode to address pre-dancing and useless skills, and getting rid of the pool to combat exp-drains.

However, there is still the idea that a skill should only be truly trained if it's used, and the proposed "Manual Mode" sort of goes against that idea. We could do a pure-automatic run, but then we risk training useless skills or not training seldom-used skills when we want (unless the logic for determining pre-used skills is spot on - a very difficult thing to fine tune). So my proposal is instead of applying experience directly to a skill, we apply the experience to raise a skill cap, then allow the actual skill points to be gained by using the skills (but not beyond the cap, obviously).

The cap-raising allocation can be done any way we'd like:
    -Current system: enabled skills get preference, disabled skills get 25%
    -Multi-tier weighted current system (select 0%, 25%, 50%, 75%, 100%, proposed in the wiki)
    -Automatic based on pre-used skills
    -Manually
    -Hybrid of the previous two (via galehar/kilobyte)

Of course this doesn't eliminate Victory Dancing since players could still dance to gain points within the cap but only until they hit the cap, and we could apply some limitations to the way points are gained when a skill is used:
    -As a skill gets closer to the cap, increase the number of times it's used between skill gains
    -Apply some kind of item/spell/target tracking system (via XuaXua earlier in the thread)

TL;DR: We apply galehar's idea to a skill cap system, which allows training via skill use, but also kills off the need for Victory Dancing.
User avatar

Halls Hopper

Posts: 61

Joined: Friday, 18th March 2011, 03:16

Post Sunday, 24th April 2011, 23:44

Re: How to Remove Victory Dancing

danr wrote: ... This will probably [be] the biggest gameplay improvement in the history of the game ...


Autoprayer.
User avatar

Ziggurat Zagger

Posts: 5832

Joined: Thursday, 10th February 2011, 18:30

Post Monday, 25th April 2011, 17:07

Re: How to Remove Victory Dancing

roguelikedev wrote:
danr wrote: ... This will probably [be] the biggest gameplay improvement in the history of the game ...


Autoprayer.


Autoplayer.
"Be aware that a lot of people on this forum, such as mageykun and XuaXua, have a habit of making things up." - minmay a.k.a. duvessa
Did I make a lame complaint? Check for Bingo!
Totally gracious CSDC Season 2 Division 4 Champeen!

Ziggurat Zagger

Posts: 6393

Joined: Friday, 17th December 2010, 18:17

Post Tuesday, 26th April 2011, 06:02

Re: How to Remove Victory Dancing

Perhaps this has already been suggested, but what about decoupling skill training from levelling experience? That is, you would still get XP from monster kills that level you up, raising stats and HP/MP as per usual, but skills are trained only according to how often you use them, with no XP pool. Different ways of using a skill could have different contributions to skill improvement. So for example if I swing an axe at a mushroom I get one Axes point, if I swing at an orc and miss I get two, if I swing at an orc and hit I get three, and if I swing at an orc and deliver the killing blow I get ten points towards Axes. What say you?

Mines Malingerer

Posts: 44

Joined: Thursday, 7th April 2011, 12:24

Post Tuesday, 26th April 2011, 09:42

Re: How to Remove Victory Dancing

Grimm: that will never happen, as it encourages scumming (imagine mummy player sitting on a level hacking away at bushes to train all skills to 100%).

Ziggurat Zagger

Posts: 6393

Joined: Friday, 17th December 2010, 18:17

Post Wednesday, 27th April 2011, 00:18

Re: How to Remove Victory Dancing

Scumming would be prevented by

1) the OOD Scum-prevention Service, that already prevents mummyscumming
2) the extremely low return from attacking plants (it's realistic that combat conditions would produce higher returns)
3) the linking of skill levels to character levels in the following fashion: the cost to increase a skill level increases with each character level. So for example at XL 1 it costs 100 points to get one level of Axes, but at XL 10 it costs 1000 points, making plant-hacking unfeasible before the police come. (The numbers are fictional; more mathematical minds could easily work up better ones.)

Ziggurat Zagger

Posts: 6393

Joined: Friday, 17th December 2010, 18:17

Post Wednesday, 27th April 2011, 10:35

Re: How to Remove Victory Dancing

But "however many turns you can tolerate" is sharply limited by the OOD police, not to mention hunger. Hunger! Scumming's only a problem in the Tomb sitch you point out, and that could doubtless be worked around. Also, to decrease the attractiveness of non-combat training, simply make the point gain from non-combat training negligible and the gain from combat training (or actual trap defusing etc.) massive.

Ziggurat Zagger

Posts: 6393

Joined: Friday, 17th December 2010, 18:17

Post Wednesday, 27th April 2011, 18:44

Re: How to Remove Victory Dancing

All right, then make non-combat training only valid for going from skill level 0 to skill level 1. After that, only combat experience counts. This is similar to the way Spellcasting is already learned: only reading scrolls counts between 0 and 1.

Ziggurat Zagger

Posts: 6393

Joined: Friday, 17th December 2010, 18:17

Post Thursday, 28th April 2011, 05:47

Re: How to Remove Victory Dancing

That does only seem to be a problem with mummies though, due to the food thing. Everyone else would starve eventually.

Vaults Vanquisher

Posts: 447

Joined: Thursday, 16th December 2010, 22:10

Post Thursday, 28th April 2011, 07:31

Re: How to Remove Victory Dancing

It'd still easy enough to milk it for a long while, and then there's necromutation.
Not to mention how it'd probably end up being both tedious and optimal (bad design in my opinion).

Ziggurat Zagger

Posts: 6393

Joined: Friday, 17th December 2010, 18:17

Post Thursday, 28th April 2011, 07:37

Re: How to Remove Victory Dancing

This is indeed a knotty problem.
User avatar

Dungeon Master

Posts: 4031

Joined: Thursday, 16th December 2010, 20:37

Location: France

Post Monday, 2nd May 2011, 16:04

Re: How to Remove Victory Dancing

I have wikified the manual skill training proposal.
<+Grunt> You dereference an invalid pointer! Ouch! That really hurt! The game dies...

Temple Termagant

Posts: 5

Joined: Friday, 6th May 2011, 20:26

Post Saturday, 7th May 2011, 03:54

Re: How to Remove Victory Dancing

Getting rid of the need for victory dancing is a great plan.

I would agree with keeping the initial skill level gain as a manual process. The "reading scrolls for spellcasting" is a cool mechanic, and gaining the initial weapon points at the beginning of the game is part of the challenge- especially if you find a cool weapon early on of a type you're not skilled in.

Ideally I would prefer a completely different type of skill system - something like Diablo, where you can manually put points into skills, but that doesn't really work with the way Crawl experience works.

Lair Larrikin

Posts: 26

Joined: Thursday, 5th May 2011, 22:24

Post Wednesday, 11th May 2011, 01:33

Re: How to Remove Victory Dancing

Perhaps a slightly different suggestion (or not, there are lots of them here):

Drop skill pool entirely. Skill points are immediately applied when earned, in a ratio based on the actions of the last X turns.

Whenever a skill-based action is used, increment the counter for said skill. So every time you attack with a mace, increment fighting and maces/flails counter. Casting a spell? Increment spellcasting and school-specific counter. When skill points are earned, check last X turns, and say we find:

Fighting: 10 (33%)
Maces/Fails: 10 (33%)
Spellcasting: 5 (17%)
Air magic: 5 (17%)

And then the 'n' SP are applied in this ratio.

I don't know how to handle fractional SP - track it as such (are SP int or float internally?), or some other solution.

This would prevent even the idea of 'victory dancing', because you'd have nothing to dance. You'll just go up in skills you actually keep using.

Lair Larrikin

Posts: 26

Joined: Thursday, 5th May 2011, 22:24

Post Wednesday, 11th May 2011, 08:38

Re: How to Remove Victory Dancing

I disagree. You can't train fighting/weapons without hitting something, or spellcasting without casting a spell. If the X turn divider is set reasonably short, you won't be able to spam a macro for casting a spell and then go kill something and train it - the window will have passed.
User avatar

Dungeon Master

Posts: 4031

Joined: Thursday, 16th December 2010, 20:37

Location: France

Post Wednesday, 11th May 2011, 10:37

Re: How to Remove Victory Dancing

We don't want to make it harder to train skills. This system would simply revert the system from post battle dance to pre battle dance and would probably be worse. Have you read what is planned for 0.9?
<+Grunt> You dereference an invalid pointer! Ouch! That really hurt! The game dies...

Return to Game Design Discussion

Who is online

Users browsing this forum: No registered users and 92 guests

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.