[1.6.7] Mindrot may not trigger from fast non-instant action

Where bugs go to lie down and rest

Moderator: Moderator

Post Reply
Message
Author
minmay
Wyrmic
Posts: 286
Joined: Fri Sep 07, 2012 1:34 am
Contact:

[1.6.7] Mindrot may not trigger from fast non-instant action

#1 Post by minmay »

Mindrot's description states "Every time you act, all enemies in your gloom take X mind damage and Y darkness damage." However, it's implemented with a callbackOnActEnd, which is only called after using energy and not having enough energy left to take another action:

Code: Select all

function _M:useEnergy(val)
	mod.class.Actor.useEnergy(self, val)
	if self.player and self.energy.value < game.energy_to_act then
		game.paused = false
		self:fireTalentCheck("callbackOnActEnd")
	end
end
This means that if you have a lot of extra energy and/or your action was very fast, Mindrot can fail to trigger, even though you did act. This is actually quite impactful in practice on Cursed, because Rampage + movement infusions will often take your movement speed above 1000%, which will mean that you can move more than once in the same game tick, which will only trigger Mindrot once. This is quite confusing to players that encounter it!

I am struggling a bit to come up with a good solution though. The bug itself is easily fixed by moving the fireTalentCheck outside the if block (and add a check that val > 0, I guess), that's not the problem. The problem is, I'm worried that just fixing the bug and doing nothing else... would make "take Through the Crowd and swap with summoned Wayists 200 times per game turn to kill things with Mindrot" into a viable strategy, and that is an unfun strategy that should remain unviable.

whitelion
Thalore
Posts: 167
Joined: Mon Mar 12, 2018 7:32 am

Re: [1.6.7] Mindrot may not trigger from fast non-instant ac

#2 Post by whitelion »

Why not just cap it at something like 15 times per turn, like Raze?

Elkan
Archmage
Posts: 336
Joined: Wed Aug 08, 2007 12:23 pm

Re: [1.6.7] Mindrot may not trigger from fast non-instant ac

#3 Post by Elkan »

It works differently in 1.7 beta so this is already addressed

Post Reply