Making EQDKPlus Work with Old DKP System

  • Due to a few issues, we are looking to move our DKP site to a new host, and I was looking at EQDKPlus as an option. I've configured a server and got it up and running, but I'm not sure if it will be able to support our current DKP system.


    Basically we have a 45-day rolling attendance/loot count (loot falls off after 45 days, and only the last 45 days of raids are counted for your "DKP"). DKP is calculated by your percentage of total possible DKP for the last 45 days and then subtracting any spent DKP from that amount.


    So, before I pull more hair out trying to make it work, is that sort of configuration even possible with EQDKPlus?

  • After looking a little closer at our system, it's just calculating normal DKP based on attendance. The big thing is the 45-day rolloff period (and just 45 days being our basic metric, as opposed to 30 days).

  • Currently, the following DKP systems are supported:

    • Normal DKP (Current = Earned - Spent + Adjustments)
    • Effective DKP = (Earned - Spent + Adjustments) * Attendance in Time Period
    • EPGP: Prio = EP / GP
    • Suicide Kings Bottom = Suicide victim drops to last place in list.
    • Suicide Kings Fixed = Raid attendees change positions with eachother.
    • Suicide Kings = Suicide victim drops behind last raid attendee
    • Zero Sum = Sum of all DKP is always Zero. Spent DKP will be distributed between other members
    • NoPoints

    Also, it is possible using the Auto Point Adjustments (APA) to add decay for the current standing, or for Raids, Adjustments or Items.

    Viele Grüße,
    GodMod


    Bitte sendet mir keine unaufgeforderten Support-PNs. | Please don't send me unwanted support-PMs.
    Du willst dich bei mir bedanken: | You want to thank me:

    Amazon Wishlist | PayPal

  • For changing the 30 days into 45 days, you can add your own column, following this article:

    https://wiki.eqdkp-plus.eu/wik…lculation#Add_own_presets


    Your settings should look like this: https://www.screencast.com/t/dqekFRFEgGgX


    After that, you have to edit the effective dkp layout and add the newly created column to the points page.


    Maybe it will come to an fatal error (dependent on your PHP version), then open the file core/data_handler/includes/modules/read/effective_dkp/pdh_r_effective_dkp.class.php and change line 107 to:

    Code
    1. public function get_html_caption_effective_dkp($mdkpid, $time_period, $showname=false, $showtooltip=false){

    This will be fixed with the next release (https://github.com/EQdkpPlus/c…195b477226f70a44eade623ad)

    Viele Grüße,
    GodMod


    Bitte sendet mir keine unaufgeforderten Support-PNs. | Please don't send me unwanted support-PMs.
    Du willst dich bei mir bedanken: | You want to thank me:

    Amazon Wishlist | PayPal

  • Okay, the easier solution is the one you already made - change the days directly at the EDKP Layout ;)

    But if you want raid attendance based on the 45 days, you can create a new column.

    Viele Grüße,
    GodMod


    Bitte sendet mir keine unaufgeforderten Support-PNs. | Please don't send me unwanted support-PMs.
    Du willst dich bei mir bedanken: | You want to thank me:

    Amazon Wishlist | PayPal

  • So I think I've got most of it working, but having trouble with the APA. I can't seem to get it to run on some "imported" (aka manually entered) raids. I've set up an APA to, I think, decay off raids older than 45 days, but it doesn't seem to work.

  • The question is also:

    How are your apa settings and function, and what do you want to achieve?


    If you want to achieve "The Raids older than 45 days should be zero", than this is currently not possible, because the Decay currently implemented says "Decay value everything the APA is executed (e.g. every week)", and you can just say the everything older x Months should be zero. The "x Months" part is the thing that would not fit the 45 days.

    Viele Grüße,
    GodMod


    Bitte sendet mir keine unaufgeforderten Support-PNs. | Please don't send me unwanted support-PMs.
    Du willst dich bei mir bedanken: | You want to thank me:

    Amazon Wishlist | PayPal

  • I see why it is not working... Due to a new Caching Layer introduced with 2.3, the APA type for Raids, Items and Adjustments is not respected for the points.

    I think I need a few days to implement a fix for this.... The whole APA thing is unfortunately not trivial...

    Viele Grüße,
    GodMod


    Bitte sendet mir keine unaufgeforderten Support-PNs. | Please don't send me unwanted support-PMs.
    Du willst dich bei mir bedanken: | You want to thank me:

    Amazon Wishlist | PayPal

  • I see why it is not working... Due to a new Caching Layer introduced with 2.3, the APA type for Raids, Items and Adjustments is not respected for the points.

    I think I need a few days to implement a fix for this.... The whole APA thing is unfortunately not trivial...

    No worries, thanks for your help so far! I was trying to see if I could implement a SQL job to do the decay for me, but seems the SQL DB is more complex than my meager knowledge is capable of working with. :P

  • Directly changing values in the Database is also not recommended, because the caches do not get cleared. Also, the new current point status of members is also not changed, as it saved precalculated.

    Viele Grüße,
    GodMod


    Bitte sendet mir keine unaufgeforderten Support-PNs. | Please don't send me unwanted support-PMs.
    Du willst dich bei mir bedanken: | You want to thank me:

    Amazon Wishlist | PayPal