MorgDKP2
MorgDKP2 is a full featured mod that allows the master looter (ML) to control the loot distribution process. Only one member is required to have this mod. MorgDKP2 is also capable of tracking DKP and outputting the DKP string for import into eqDKP using a custom php import script.
Please help localize here.
LDB shortcuts:
- L-click => MorgBid2 query
- Shift-L-click => Invite list
- Ctrl-L-click => Raidtracker
- R-click => Options
- L-click itemlink => Add manual item for query
- Shift-L-click Itemlink => Insert link into open chatframe message
- Ctrl-L-click Itemlink => Add item to ignore list
- Hover over itemlink => Show item tooltip
- Shift-hover over itemlink => Show bid history for the item
Bag shortcut - Shift-Alt-L-click any item in your bug to add a manual query (ie a BOE item)
Video Tutorial
BlueWarlord has created a video tutorial for setting up and using the MorgDKP2 system to run a raid. Find it here.
BlueWarlord created another video tutorial for setting up and using MorgDKP2 with eqdkp/eqdkp+. Find it here.
Thanks BlueWarlord!
phpRaid Integration
If you use eqdkp+ for setting up raids you can export the raid attendees (choose lua format) and save the file to the MorgDKP2 folder. When you open the invite list (shift-click) the day of a scheduled raid the phpRaid data will pop open in its own frame.
ClassLoot Integration
If you have ClassLoot (r98 or higher) running as well as MorgDKP2 when a new item drops the classes/altclasses allowed to bid for the item will automatically be filled in if the item is in ClassLoot's database. Only if the classes are NOT already set. Thanks Pneumatis for allowing me to hook your DB:)
Importable item database
There is now and item DB included in the ImportItemDB folder of MorgDKP2. It has as many Northrend raid items I have seen so far with classes set. To import it copy the file to the main MorgDKP2 directory and load WoW. Once imported delete the file from the main directory. Note it will not overwrite any items you already have set.
Using MorgDKP2:
Basic use is identical to MorgDKP. Documentation for setting up the web scripts etc still applies. Will post more information when I have time.
Suggested to start:
- Install the webscripts to the plugins folder of your eqdkp install and install it through the admin plugin menu
- Export your DKP from the website save in MorgDKP2 folder (even if your database currently has no members!)
- Enter WoW and make sure there are no errors
- Track your raid etc
- Click export raid(s) and copy the string
- Click Import raids on the admin panel of edkp and paste the string into the window
- Win!
Webscript help
Export standings
Used to export member DKP, events, aliases, and database information (needed for proper import) to the in game mod. Access through the eqdkp admin menu (after installing plugin)
- Select your game timezone (may not match your actual timezone)
- Select if you want to export member ranks
- Ignore ranks - do not export ranks and hence do not use rank sorting for item rolls
- Use all ranks - export all ranks for all members and use rank sorting for item rolls (only way to activate rank sorting)
- Only export [rank] - only export the selected rank from the website. Caution will only export members of that rank so any unranked members or members of different rank will not be in the file.
- Enter the directory and in game name for up to 5 eqdkp installs (ie if your website is http://sodalityoftheconstant.com/aqdkp/listmembers.php? then you would enter aqdkp and whatever name you want it called in game.)
- For eqdkp+ multiple pool install only enter the main directory name the pool names will be your actual pool names
- For installs in base directory (ie http://eqdkptest.sodalityoftheconstant.com) enter - for the directory name
- Click export
- Right click the link and choose save as .. save in WOW/Interface/Addons/MorgDKP2 directory.
- Load into WoW or reloadui if already in game.
Import raids
Used to import raids recorded with the MorgDKP2 in game mod. Click export raids in the LDB tooltip or export raid in the raidtracker for a single raid. Copy the DKP string (Ctrl-C) and paste it into the editbox. When editing names or adding people you do not need to capitalize them.
- Click parse DKP string
- Check the data and make sure the import looks correct:
- If you have any aliases to import they will be shown with ADD beside them. To not import the alias simply erase the editbox.
- If you have any DKP changes they will be listed. As above erase the value or the names to not import. Can add/remove names as well.
- For each event the name, note, value, attendees, and any items will be shown. Edit them if necessary. To not import a whole event (including items) erase it's name. Erase and item or item value to not import the item.
- If you are using zerosum or skall with zerosum check the use zerosum checkbox.
- Click enter final data:)
Note: - Ranks will only be used in sorting if you export all ranks and set the weight of each rank in the in game options (database options) Higher values should be higher ranks. Also rank sorting is ONLY used on the lootframe rolling window. It is not used anywhere else such as the MorgBid2 check or raid invite tab. This means that the MorgBid2 results frame may show a different winner.
Loot window help:
Here is how the loot window is designed to work for those having trouble understanding it. When you loot a corpse if any items are above the loot threshold the mod will:
- Check each item and if any have not had their classes set (who gets to roll for the item) it will automatically open the item edit page to that item. This takes priority over all other possibilites. ie You edit this item and start the roll for it. The mod checks again and there is still another item with its classes unset so it opens the item edit page for that 2nd item NOT the roll window for the auction you started. If you want to see the roll window simply right click on the 1st item again.
- If no items have unset classes the mod next checks if any items are currently in auction. If so it opens: roll summary window if more than 1 item being rolled for or the single item roll window if only 1 item.
- If none of above conditions apply no window automatically opens (ie not roll window or item edit window) and you can right click any item to open edit window (or roll window if auction started) or alt-right click any item to start ALL queries which will cause the roll summary window to open.
Note: - If you want to use MorgDKP2 with fubar you need to have Broker2Fubar installed or it will only show a minimap icon.
Whisper commands: - whispered to someone running morgdkp2.
Waitlist
mbid wait[+/-] [main] => main only necessary if you are whispering from an unknown alt
Bidding
mbid itemid/itemlink [need/take/pass/offspec] [bid] => itemid/link must be included - bid only for BidWar
Dkp queries
dkplist [pool/s] [class/all] [class] ... => pools only if you want to see what pools are available. pool to get the dkp for that pool (leave out for default pool). all for all members in the raid (if person running morgdkp2 is in a raid), guild otherwise. You own class is automatically included so a pally whispering dkplist rogue will get paladin and rogue.
Webscript note: - The MorgDKP2 webscript requires:PHP 5.2.3 or greater and MySQL 5.0.7 or greater. If you are having issues with special characters make sure your MYSQL database is in UTF-8.
Supported DKP modules:
- Fixed DKP
- Zerosum DKP
- Percent DKP
- Relational DKP
- Random
- SKall
- TakeBid
- BidWar
Syncing:
Options
- Broadcast - enable to send sync messages out during a raid to registered listeners. Usually one person will probably broadcast to the backup people in the raid but you can have more than one broadcaster.
- Receive - enable so your mod will act as a listener and receive syncing events from MorgDKP2 installs which are broadcasting.
- Overwrite raid - enable to overwrite the current raid with the new raid info (in the initial sync) if you have already started a raid. Useful when you zone in to the instance late after raid is already in progress to get the raidlog from the whole run. If you haven't started a raid overwrite is done by default.
- Manual Syncs - ie Sync options/members/items/all/initial sync. Click one of these buttons to manually sync to the current raid.
Sync Details
- Syncing will not be enabled until a raid has started and then the mod will check for sync necessity every 60s.
- When the raid starts or someone joins the raid with receive enabled the broadcaster will send out his eqdkp data (boss events/values, aliases, current pool, certain options, current raid data, and current member DKP) Current member DKP will only be updated in the listener client if it has a newer timestamp or if they are members of your current raid. The broadcasters current raid will overwrite the receivers current raid unless Overwrite raid is off.
- When you make changes to important values the mod will schedule a sync and send those changes to the listeners throughout the raid.
What is synced?
- item database changes (value/classes)
- raid tracker changes to items (value/winner/event)
- custom events
- event changes (value/name/note/deletion)
- alias additions
- BOE items (ie hand out through your inventory and manually trade)
- DKP change events
- item costs different from actual DB cost (ie TakeBid or offspec auctions)
- items incorrectly assigned to ML/DE in listener client
- full current raid sync
- initial waitlist and waitlist changes
NOTE: - There is generally no need for the manual syncs unless you specifically want to transfer the complete itemDB or the listener wants ALL of your MorgDKP2 options. The complete member DKP and necessary options are transferred when the initial sync is sent at the start of the raid (if you have Broadcast enabled and there are listeners present in the raid)
MorgDKP2 Features:
- Allows ML to query raid for interest in loot.
- Tracks DKP including raid attendees, start bonus, and all drops.
- DKP systems supported include zero-sum, relational, random, fixed, percent, and skall.
- Options to award DKP/unit of time, include a start bonus, and include custom events such as boss attempts.
- BidWar mode for item auctions.
- Custom php scripts to export/import/change DKP and add aliases to eqDKP/eqdkp+ website. (can import multiple raids/pools in one string)
- Allows a ML and disenchanter (DE) to be set so that they are not charged for items. (Toggle)
- Remembers what raid members have equipped and will not send a query to them for loot they already have. (Exceptions for some non-unique items included.)
- Sends query results to MorgBid2 (for players in that auction)
- Displays top 5 DKP members for the moused over item in the tooltip.
- Automatically hands out items to the winning player if the loot window is still open. Note: It asks with the standard blizzard confirmation dialogue.
- Allows ML to easily set which classes are eligible and DKP value. Also remembers these values.
- Scans for base installs of MorgBid in the current raid. Automatically outputs a link to MorgBid site on click.
- Allows ML to record BOE items before trading them to member. (Alt-shift click item in your inventory)
- Can load up to 5 separate DKP pools. Ie. MC1, MC2, BWL, AQ40, NAXX. These raids can be named whatever you wish.
- multiPool feature allows up to 5 DKP pools to be used in one raid. (ie separate pool for class items)
- Can change loot threshold on the fly.
- Item history for easy recall of current raid item winners.
- Allows raid members to whisper ML for current DKP for own class or specified classes in all 5 DKP pools. (sent to MorgBid2)
- Lets you know it is working by displaying boss kills, raid changes, and looting events.
- Automatically links items to raid chat.
- Edit item values from item history (Allow you to track DKP without being ML)
- Whisper system for those crazy people who hate mods:P
- Fubar/LDB support
- Main and offspec DKP rolling
- Waitlist including DKP awarding and alt whispering.
- ListDKP - shows guild members online and in/out of group and allows 1 click inviting
- Custom item ignore list
- Automatic loot method switching for certain encounters. (Vashj/MH)
- Boss attempt mode asks if you want to record a boss attempt after dying
- Custom loot frame with buttons for self-loot/random rolling items (loot frame can be used with mod in standby mode)
- Importable item database
- Built in xloot like loot frame which can be used with mod on standby
- New itemframe/rollframe built into loot window
- Customisable font/frame options
- Modular so can disable what you don't need
- Web script can handle offbase/eqdkp installs in main directory
- Imports MorgDKP database data (be sure to run both at same time if you want to mport your database the first time)
- Fully eqdkp/eqdkp+ compatible
- In game raid browser
Morgalm, you've been more than accommodating to all of my requests, and I have found another that seems pretty simple.
Is it possible to have a setting to remove everyone from the waitlist when starting a raid? I just had an incident where I had a couple people on the waitlist for my export when they weren't even online (Which shouldn't be awarding waitlist DKP regardless, right??).
Another issue I've come across is people getting waitlist DKP -and- raid DKP, if they're invited when a raid isn't up (I.E. getting the raid together when in Dalaran, then zoning into Naxx).
I know you're working on waitlist enhancement, but I'd imagine a simple wipe of the waitlist when starting a raid would be an easy fix until you get the enhancement done.
New version up. Finished raidtracker and added TT hints to make it a little more user friendly. Also added minimap icon for those resistant to fubar/LDB:)
Next up will be syncing...
Yes toggle off use events for DKP changes and it will behave like it used to. How do you mean export doesn't work correctly? You mean the boss registered a kill more than once right not any export problem? I still haven't figured out what is uniquely yelled at the start of every 4 horsemen fight to reset the counter after a wipe.
4 horseman export still doesn't work correctly :o
And, is there any way to get rid of the waitlist addition and do it like the old morgdkp did.. by adding the people on the waitlist to the raid directly
Thank you:)
Hi, i'm Volpo2001,
I want to apologize for any problems that I may have caused you due to the change i did on the svn repository.
I won't do it again, in the future i will post bugs and problems there and will not mess with the repository anymore.
Sorry for any problem caused
Added new version with alias editing working in the raidtracker and some bugfixes. Also pitbull issue should be fixed now.
volpo2001 - STAY OUTTA MY PIE!!!
That's much easier, thank you =)
OK found where I accidentally called a global...DOH! Will fix asap.
Has there been any progress on the conflict with Pitbull?
If it helps, here is the function that I'm getting the error from when someone whispers me...
pool = setmetatable({}, {mode='v'})
function memoizeTable(tab)
if type(tab) = "table" then
return tab
end
local t = newList()
tableToString(tab, t)
local key = table.concat(t)
t = del(t)
local pool_key = pool[key]
if pool_key then
deepDel(tab)
return pool_key
else
pool[key] = tab
return tab
end
end
Specifically, the line with "pool[key] = tab"...
Don't know if there are double variables or whatever... I don't know enough about lua to understand what would cause the error there...
Edit: I can almost guarantee it's because you use POOL in morgdkp2...
Edit2: That's exactly what it is. I changed all the POOLs in the code and all modules to PEWL, and it works fine now...
Why if we can just sync settings over the addon channel? Seems easier to me...
Perhaps using an XML config input string, which you paste in a textbox might be a solution?
Yeah I am afraid out of game syncing will not happen. But synching settings could prob be done. I will ponder it...
The issue with that (out-of-game syncing) is that the game cannot write to a regular lua file, it can only write to the saved variables (As far as I know, at least...pretty sure that's how it goes). So the only way to do it would be to trade the single savedvariables file, but that has EVERYTHING in it, and is customized per account per character.
I would like to have the synchronization of the settings first. Preferable, not only in-game, but also out side the game. Preferably by simple downloading a lua settings profile file. This way, I can put up a lua file for my clan mates to use when master looting. (Oooh and please add a user version tag in it).
I think synchronization is a great idea. I've gone through and edited savedvariables files so we can share item costs and everything, but it's between me and one other person who runs DKP.
Would this be able to sync settings, too? Obviously not font size and everything, that should be up to the user, but for what DKP system to use, what the award is for X, etc, that way if someone new has to start using the mod, we don't have to walk them through everything?
Updated to new version with working raid editing and itemdb editing in the raidtracker. I think the way I did it should be pretty user friendly but let me know what ya think.
Starting to think about syncronyzation. I am thinking it will work this way. Toggle - accept syncro. If you don't toggle this you are considered the "leader" and will only send outgoing syncs. Start of raid leader will look for other morgdkps and if found will send DKP table (if newer) When an item is edited or a player is edited a sync will be sent and any "listening" morgdkp will get the updated info. It will of course be PW protected. Any thoughts on this?
No, thank you:) I hate doing docs takes time away from coding lol.