Over the last two years loot tracking and management in World of Warcraft has become steadily more involved. With the introduction of token items and a tiered, upgradable loot progression path the defacto standard of EQDKP has become increasingly inadequate. ZDKP is an attempt to fill it's shoes with a system built from the ground up with the aim of helping mere mortals track loot in the Burning Crusade.
Goals:
- Provide a format for writing configurable, flexible, and portable (between guilds/systems/etc) rulesets for WoW DKP/Attendance systems.
- Provide a database and web viewer that can display a wide variety of configurations and be extended by a third party (in a portable way that doesn't break the rest of the system) if their particular rule set is incompatible with the basic viewer
- Provide tools that can import and make use of the vast amount of information in the modded CTRaidtracker strings that the EQDKP import plugin carelessly throws away
- Provide robust error checking in the raid import stage to prevent common input errors, both basic (duplicate entries, looter not present at raid) and advanced (double dippers getting points for multiple timers in the same week). As well as automate many common import tasks (looking up upgrade prices, resolving token items, and obviously calculating DKP itself)
- Display all of this data in the context of the World of Warcraft Burning Crusade expansion (where most raid drops are token items and the days of single raid group guilds are numbered) and provide a way to use this data for other player management tasks.
- Open source fully self contained system that can be downloaded and installed on your guild's webserver, managed however you see fit.
How does it work
ZDKP relates the following information:
Groups of players who raid together
Raids that these groups go on
Events (bosses) completed on each raid
Exact attendance of each member
a 'DKP System' is a set of rules that maps raid attendance and drop data to point standings.
drops are charged to systems, raids credit systems.
Raid Importing
Raid information can be entered manually from a blank slate or from a base provided by an EQDKP modded CT Raidtracker string. (All data that ZDKP uses is fully backwards compatible with current EQDKP strings).
The RaidTracker import utility is being written to solve many of the annoying problems that plagued the EQDKP plugin and provide . The ZDKP importer is much better at figuring out exactly what dropped off what boss. This includes situations where items were not looted until after the raid started killing trash mobs, as well as token items that can be dropped off multiple bosses.
DKP Processing
The meat and potatoes of this system. The code that turns raids and drops into points. The alpha demo system is currently set up in a configuration common for raiding guilds this past year, a single 40 man group with multiple loose 20 man groups. There are two example DKP systems set up. One is a standard zero sum system, the other is a Non-zero sum system (do these have a name? my guild calls them pies, but I think that's just us). The example zero sum configuration uses fixed priced zero sum split into class specific/non-class specific sections, it is used for the 40 mans. The example non-zero sum sum is set up as a suicide system, where you receive a fixed point value per encounter and loose all points whenever you win a contested item.
These represent two configurable states of the two most common dkp frameworks, and will be two of (i think) three systems included in the default installation. Their [incomplete] feature sets so far are:
Basic Zero Sum
Pricing
- Fixed or variable (bidding systems)
- Automatically entry from a sharable item price/metadatabase.
- Automatic generation of item upgrade prices based on rules
Point Distribution
- Flat
- Attendance weighted
- Cap-able at item tier or dungeon level
Possible experimental features (If I find some time, or anyone is interested in helping)
+ Dynamic processing [which would allow things like]
-- DKP decay
-- Dynamic expansion/compression of the zero sum based on active/inactive players
Basic Non-Zero
Pricing
- Same as basic Zero Sum
- Several misc options frequently used in more informal systems (example: suicide)
Point Distribution
- Fixed or variable amount per raid/raid event (boss)
- Automatically generate from attendance (time based dkp)
- Fixed player adjustments
All systems include the ability to run multiple concurrent instances of themselves. If you want to do separate systems for each instance/tier or separate armor/non-armor or class specific vs non. You can also run multiple non-related systems with different configurations at the same time. (ex 1 common zero sum for the 25 mans, then multiple separate non-zero sums for each 10 man group. Or one fixed zero sum for a hardcore attendance required group, and one bidding zero sum for a more casual group) Between the two of these I believe most dkp systems in use today will be able find a proper configuration, and if not, with a bit of php knowledge your guild hacker can write your own to fit your exact needs one [and share it for fame and glory for your guild.]
(this third default system is an example of such a system)
ZDKP Crazy Insane Experimental System
An example of the what the power of a linked zero sum and attendance database can do to help solve age old dkp problems.
This system will be a weekly attendance weighted zero sum system designed for use by a single group with raid progression as a sole focus. It charges a fixed or variable price for items immediately, but defers point distribution until the instance timer resets. At this point it awards the dkp spent during the week as a function of the entire week's attendance.
If your attendance score for the week was 50% you would get 50% the points as someone with 100%. 'Attendance' in this case can be a value automatically calculated or estimated from actual attendance, a weighted score by officers, or some combination. This also allows penalties/bonuses to be awarded as attendance scores. Example: you could set it up so that there is a penalty for arriving late/leaving early. Overall this allows a much more even zero sum distribution (varies with actual effort/attendance, not with who was present at the moment of each boss kill) without breaking that sum for and penalties, rewards. and properly rewards players for raiding on wipe days.
General player management tools
While ZDKP can be used purely as DKP management software, and that is it's primary focus, it stores a ton of data that is useful for other things. These areas are among the less complete at the moment. The nexus for this information lies in the group portal pages. The group page is essentially a statistical subset of the whole system that shows only the info relevant to that group. Key features of the group portal will be a DKP leaderboard for that group's members, optional raid signup and raid bank sections, as well as news and raid statistics relevant to that group. Attendance can also be calculated separately by group so you can add trival/gimmick/optional raids to your system without messing up the serious business attendance charts.
Nifty group statistic example:
ZDKP is fully aware of all instance timers and so you can calculate which members of which groups are currently locked onto which timers based on currently entered raid information.
What I need help with
First and foremost, the current setup has been written with my own guild loosely in mind. Running a dkp/player management system for Goon Squad is a lot like running one for an entire server so I feel that I have covered a pretty wide base of interest. However, I am sure there are still things that you wish your dkp software did that this doesn't do yet. I'd like to know what those things are. So if you have a minute, browse through the alpha system, tell me what you like, what you don't like, what you think would make whatever it is you do with dkp software easier.
Perspectives I am particularly interested in:
1. Guild/group leaders/officers
2. DKP point enterers (on usability of the import utility)
3. Raiders (on general usability)
Secondly, I have not led a raid in several months and have a very short supply and limited variety of complete raidtracker strings. I am particularly interested in a string that contains a 4 Horseman kill (Raidtracker reports chest based looting slightly different than boss bodies) or any other unusual strings. Also, in general, am looking for specific feedback on how to streamline the string->raid functionality. I will post info for a limited access admin account at the end of this post if anyone is interested in testing out the raid import utility. I would love to get some feedback on that.
Thirdly, the group portal page is in an open review stage. What would you find helpful on such a page? DKP/Attendance leaderboards, signups, raid banks top the request list so far, is that list missing anything?
Relevant Links
ZDKP Alpha System
http://zdkp.zaphoyd.com/new/zdkp_mod.../view_news.php
ZDKP Alpha System EJ forum admin preview info
(to access the raid import page. the data in this system is not overly important, feel free to play around)
name: ejpreview
pass: flex