I am looking at implementing DKP decay for our guild, but it does not look like the system handles spent DKP the way I would like.
The way I would like to see it work is that when a member spends their DKP they always spend their oldest DKP (that is, the DKP that will decay first, or is the most decayed). As near as I can tell the way the system works now is that spent DKP decays exactly the same way that earned DKP decays (that is, it has the same waiting period before it starts to decay, and then decays at the same rate). This can lead to some strange situations where people end up gaining DKP due to the decay or people end up going into negative DKP even though they were not when they spent their DKP.
Is is possible to do what I want to with the system as it is? Am I misunderstanding the way the current system works?
If it is not something that can currently be done, would it be possible to modify the system to allow it? If you accept outside contributions I would be glad to send a patch, just let me know how to go about doing it.
I don't think a DKP tax makes much sense for us since we're already operating on a percentage based DKP system.
Basically, it offends the efficiency geek in me that I (or the members of my guild) don't get to choose which DKP they spend when they bid on an item, and from a system design perspective it feels very odd to have my spent DKP decay as if I earned it when I spent it. (And the software engineer in me realizes it is a lot easier to implement it in the way that it is done now.)
Since it sounds like what I want to do isn't possible with the current system, would it be possible for me to attempt to send a modification to the decay code to dkpsystem? Let me know if there's a way for me to help.
The point of decay, in its design is to place the emphasis on recent activity. Which is why both earned and spent DKP decays (it's important to recognize that spent DKP decays in reverse, that is, you EARN points from the decay of "spent DKP").
That said, we do not provide the code, which means we cannot accept patches. I appreciate your fervor as far as your desire to tweak the system to your liking, but at the moment, this is not an option.