Shopkeeper exploit Ruining High Score list (rip rogueleague??)
issueid=5902 01-06-2018 12:18 AM
Junior Member
Number of reported issues by Majora: 6
Shopkeeper exploit Ruining High Score list (rip rogueleague??)
secret exploit Soils highscore list

okay for awhile now there has been an exploit, where if you feed waldenbrooke(or any merchant) with a lot of si's, you can easily level him up to huge amounts. You can then use door creation to sacrifice him easy, taking you from level 5 to 50 instantly, and destroying all the games challenge.

but it gets worse, If you wait to level 50 and play as necromancer, you can feed him a lot more, and use their level 50 power quickly hold down button and kill him, maxing xp to 999999999999999. This inflates the highscore and makes it so a regular gate close can get 4x more score than even the best Ultra Chaos God ending. You can even suicide so many times that you create a bug on necromancers level 50 death penalty and giving you infinite health/stats for easy casting.

We have two scores on the list that demonstrate the exploit

First we have Grond's "waldensplat" using the technique to its greatest potential so far, as a necromancer killing waldenbrooke himself, and bugging the death hp penalty to health/book cast ball spells infinitely, and do it in low turncount, was able to almost get 4x as much as the highest Ultra Chaos God ending.

We also have Psy_wombat's "glitter" that also used a variation, except instead of killing waldenbrooke, he sacrificed him, still netting him millions of points more than regular gateclose and almost reaching the highest Ultra ending highscore.

I suggest removing the artifacts leveling shopkeepers, and deleting the highscores that use this.

If it is kept in game, the highscore list will be nothing be gateclosing necromancers eventually, that all did the shopkeeper exploit. (you don't get as many bonus highscore points in ultra endings for xp, like you do in gate close victory, so this exploit is not possible to do as well on ultra endings)



demonstration of the necromancer exploit (and current high score)
https://www.twitch.tv/videos/210452617

http://ancardia.wikia.com/wiki/Waldenbrook_sacrificing
wiki page with easy strategies on the exploit.
Issue Details
Issue Number 5902
Project ADOM (Ancient Domains Of Mystery)
Category All
Status Fixed
Priority 2
Affected Version ADOM 3.0.6
Fixed Version ADOM 3.1.0
Milestone Important Bugfixes
Users able to reproduce bug 2
Users unable to reproduce bug 0
Assigned Users adom-admin
Tags (none)




01-06-2018 12:39 AM
Senior Member
Yeah it'd be nice to get rid of this, it's so abusable that it's pretty much required to get a decent high score (also turns speedrunning for highscores into something dumb like speedrunning for gold generation, also way outscores speedruns apparently)

I believe this was originally implemented to prevent stuff like selling a ton of artifacts to a shopkeeper for cash and then killing them to get all the loot back, which never seemed like a huge issue to me. The problem of stealing the artifact back could be fixed by using the existing solution (level up shopkeeper) but just giving the thing a sane level cap.

02-14-2018 04:23 PM
The Creator
My current idea is to include a more general fix: Never receive more experience points from killing a single monster than necessary for advancing a limited number of levels (e.g. max. 5 levels for level 1-5, max. 4 levels for level 6-10, max 3 levels for level 11-15, max 2 levels for levels 16-20 and never more than one level above). What do you think?

02-14-2018 04:38 PM
Junior Member
Quote Originally Posted by adom-admin
My current idea is to include a more general fix: Never receive more experience points from killing a single monster than necessary for advancing a limited number of levels (e.g. max. 5 levels for level 1-5, max. 4 levels for level 6-10, max 3 levels for level 11-15, max 2 levels for levels 16-20 and never more than one level above). What do you think?
That seems fair to me. Just because in some convoluted way or by luck a weak character manages to kill one tough enemy, they shouldn't instantly become professional fighters. The actual limits are up for debate if someone wants to comment on them, but in principle it sounds OK.

02-14-2018 04:46 PM
Ancient Member
I think those xp limits would have some bad side effects. On the low end, a spellcaster getting their first kill in a really dangerous place (like elementalist in ToEF for brimstone man) would get punished. On the high end, some of the really powerful new monsters, such as Rolf and the great gray wyrm, can sometimes give a well-deserved two or three levels even after level 20.

I would recommend capping shopkeeper level at 200 or something. I know "shopkeepers are special", but there is little point in leveling them up further - almost any strategy capable of killing them is going to be something degenerate that works just as well at level 10000.

02-14-2018 05:03 PM
Junior Member
Quote Originally Posted by Grond
I think those xp limits would have some bad side effects. On the low end, a spellcaster getting their first kill in a really dangerous place (like elementalist in ToEF for brimstone man) would get punished. On the high end, some of the really powerful new monsters, such as Rolf and the great gray wyrm, can sometimes give a well-deserved two or three levels even after level 20.

I would recommend capping shopkeeper level at 200 or something. I know "shopkeepers are special", but there is little point in leveling them up further - almost any strategy capable of killing them is going to be something degenerate that works just as well at level 10000.
That seems more like a problem with the specific numbers to me. The goal here is to prevent instantly going to level infinity, not anything that can occur during normal gameplay.

02-14-2018 05:14 PM
Ancient Member
Quote Originally Posted by Taederias
That seems more like a problem with the specific numbers to me. The goal here is to prevent instantly going to level infinity, not anything that can occur during normal gameplay.
If there's only one way to instantly "go to level infinity" then just fix that one way - there's no need for an opaque general solution that can have side effects.

02-14-2018 05:16 PM
The Creator
Quote Originally Posted by Grond
I think those xp limits would have some bad side effects. On the low end, a spellcaster getting their first kill in a really dangerous place (like elementalist in ToEF for brimstone man) would get punished. On the high end, some of the really powerful new monsters, such as Rolf and the great gray wyrm, can sometimes give a well-deserved two or three levels even after level 20.

I would recommend capping shopkeeper level at 200 or something. I know "shopkeepers are special", but there is little point in leveling them up further - almost any strategy capable of killing them is going to be something degenerate that works just as well at level 10000.
Generally capping monster levels could be something else to do, I agree. But it doesn't solve experience exploits. And I guess there could be more in the future like e.g. with speed differentials.

02-14-2018 05:19 PM
The Creator
Quote Originally Posted by Grond
If there's only one way to instantly "go to level infinity" then just fix that one way - there's no need for an opaque general solution that can have side effects.
My first instinct was to go with the old D&D rule of never allowing to advance more than one level. But that seemed truly harsh.

Personally I'm taking the position that almost any way allowing you to kill a monster hugely more powerful than you are would be considered more of an exploit as these solutions usually do not make much sense story-wise. And for me ADOM still is more of a story-driven game than a kind of chess game.

Another solution might be to limit the "excess advances" possible for one character to 15 levels... and if you have used them up it's over and you never again gain more than one level from a single monster. That would allow you to gain more on higher levels... but to be honest to me it rather seems like a kind of exploitation to have such a fix.

Additionally I do not like the "fix that one instance approach" to much as you and other very creative folks like you will find new ways to exploit that aspect of the game - that's why I also tend towards a more general fix ;-)

02-14-2018 05:35 PM
Ancient Member
EDIT: never mind.

02-14-2018 05:39 PM
Senior Member
I think the "general fix" of limiting to ~3 levelups per kill is a good one. Would also lessen the impact of other exploitable stuff like firing a thousand lightning bolts into shambling mounds, chucking !invis and !speed at big enemies, stuff like that.

And while it's probably another can of worms, "speed differential" would definitely also be nice to have addressed -- it's always been questionable that "Slow Monster" is such a sought-after spell solely because you can gimp yourself with it.

edit: past L50 I'd imagine the XP thresholds needed increase skills would apply

02-14-2018 05:53 PM
Ancient Member
Quote Originally Posted by psy_wombats
I think the "general fix" of limiting to ~3 levelups per kill is a good one. Would also lessen the impact of other exploitable stuff like firing a thousand lightning bolts into shambling mounds, chucking !invis and !speed at big enemies, stuff like that.
Didn't think of shambling mounds, I guess Walden nonsense isn't the only arbitrarily high xp mob you can create. Some form of a general fix would be for the best then.

02-15-2018 10:26 AM
ixi ixi is offline
Junior Member
I sopport general fix wholeheartedly. It doesn't make much sense even to look for a way to scum for XP. SMC challenge might get even tougher though...

02-15-2018 11:45 AM
The Creator
Fixed by limiting level advances to 5/4/3/2/1 dependent on your current level.

02-17-2018 01:03 AM
Junior Member
Im Special Olympics High Score Gold Medalist,can i join your club? Do you have PvP in this game?...
But sereously w h y you need High Score?
And maybie You should scale exp gain from learning?It works good for (nefed) companions and some "special tactics since 200"?

+ Reply