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
Make sure you are using the newest version of the webscripts on your website (I changed the timestamp format) and also delete the dkpinfo.lua file from the morgdkp2 folder in your wow directory.
Going to throw this up here in the hopes someone has an idea for how to fix it. I have exported and deleted my SV several times to no avail. I'm trying to export standings from the website to the addon.
<<quote>>
Message: Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:328: attempt to compare string with numberTime: 06/17/10 17:46:25
Count: 1
Stack: Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:328: in function `ImportDKPInfoFile'
Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:200: in function <Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:195>
(tail call): ?
[C]: ?
[string "safecall Dispatcher[1]"]:9: in function <[string "safecall Dispatcher[1]"]:5>
(tail call): ?
...e\AddOns\MorgDKP2\Libs\AceAddon-3.0\AceAddon-3.0.lua:539: in function <...e\AddOns\MorgDKP2\Libs\AceAddon-3.0\AceAddon-3.0.lua:532>
(tail call): ?
Interface\AddOns\MorgDKP2\Core.lua:586: in function `EnableModules'
Interface\AddOns\MorgDKP2\Core.lua:645: in function `ActivateCore'
Interface\AddOns\MorgDKP2\Modules\LDBPlugin.lua:92: in function `OnClick'
...AddOns\MorgDKP2\Libs\LibDBIcon-1.0\LibDBIcon-1.0.lua:122: in function <...AddOns\MorgDKP2\Libs\LibDBIcon-1.0\LibDBIcon-1.0.lua:122>
Locals: self = <table> {
ClearDatabase = <function> defined @Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:207
SetDefaultModuleLibraries = <function> defined @Interface\AddOns\MorgDKP2\Libs\AceAddon-3.0\AceAddon-3.0.lua:381
OnInitialize = <function> defined @Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:190
NewModule = <function> defined @Interface\AddOns\MorgDKP2\Libs\AceAddon-3.0\AceAddon-3.0.lua:255
SetRankWeight = <function> defined @Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:267
EnableModule = <function> defined @Interface\AddOns\MorgDKP2\Libs\AceAddon-3.0\AceAddon-3.0.lua:346
modules = <table> {
}
GetModule = <function> defined @Interface\AddOns\MorgDKP2\Libs\AceAddon-3.0\AceAddon-3.0.lua:230
IterateEmbeds = <function> defined @Interface\AddOns\MorgDKP2\Libs\AceAddon-3.0\AceAddon-3.0.lua:456
ClearRaidDB = <function> defined @Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:238
defaultModuleLibraries = <table> {
}
GetRankWeight = <function> defined @Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:262
ConvertDB = <function> defined @Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:213
DefaultDKP = <function> defined @Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:425
SetDefaultModulePrototype = <function> defined @Interface\AddOns\MorgDKP2\Libs\AceAddon-3.0\AceAddon-3.0.lua:423
GetOptions = <function> defined @Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:182
name = "MorgDKP2_PointsDB"
IsEnabled = <function> defined @Interface\AddOns\MorgDKP2\Libs\AceAddon-3.0\AceAddon-3.0.lua:465
IsDKP = <function> defined @Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:186
DisableModule = <function> defined @Interface\AddOns\MorgDKP2\Libs\AceAddon-3.0\AceAddon-3.0.lua:364
ZeroPLayerDB = <function> defined @Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:229
AddNewIgnoreItem = <function> defined @Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:287
CullItemDatabase = <function> defined @Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:446
baseName = "MorgDKP2"
CullMemberDatabase = <function> defined @Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:464
IsModule = <function> defined @Interface\AddOns\MorgDKP2\Libs\AceAddon-3.0\AceAddon-3.0.lua:237
db = <table> {
}
SetDefaultModuleState = <function> defined @Interface\AddOns\MorgDKP2\Libs\AceAddon-3.0\AceAddon-3.0.lua:401
ImportDKPInfoFile = <function> defined @Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:314
ImportItemDB = <function> defined @Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:302
SetEnabledState = <function> defined @Interface\AddOns\MorgDKP2\Libs\AceAddon-3.0\AceAddon-3.0.lua:438
RemoveItemLink = <function> defined @Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:280
enabledState = true
ImportMorgItems = <function> defined @Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:295
AddNewItem = <function> defined @Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:243
GetIgnoredItemLinks = <function> defined @Interface\AddOns\MorgDKP2\Modules\PointsDB.lua:271
GetRankValues = <function> defined @Interface\AddOns\<</quote>>
Any ideas?
nobody whispered me, i wasnt even in the instance, just the group. as soon as the leader zoned in I got the error
Hmm looks like someone whispered you dkplist and your pool wasn't set maybe? Will add a nil check thanks.
Smee again..
I'm sitting outside the ICC zone doing some work, give lead to somebody else, they zone in and I get the following
1x MorgDKP2-MorgDKP2 v4.31\Modules\CoreModule.lua:1238: attempt to index field '?' (a nil value) MorgDKP2-MorgDKP2 v4.31\Modules\CoreModule.lua:1434: in function `IncomingWhispers' MorgDKP2-MorgDKP2 v4.31\Core.lua:707: in function `?' CallbackHandler-1.0-5 (Ace3):147: in function <...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:147> <string>:"safecall Dispatcher[13]":4: in function <[string "safecall Dispatcher[13]"]:4> <in C code>: ? <string>:"safecall Dispatcher[13]":13: in function `?' CallbackHandler-1.0-5 (Ace3):92: in function `Fire' AceEvent-3.0-3 (Ace3):120: in function <Ace3\AceEvent-3.0\AceEvent-3.0.lua:119>
I would suggest that your SV file might have a bug in it as well causing fixedDKP to get stuck. Send it to me and I will take a look. But yeah that is always the first thing to try:P
He moved his SV file to backup, creating a new one, and the tooltip started working again. Still want to see the one that seems to be broken? Sorry I didn't think about having him do that, You'd think by now I'd know that! :)
No, I didn't get an error on the extra Fixed DKP issue. But, this is NOT a big deal, as I haven't seen any effect whatsoever from it.
I assume you must have got an error then? Do you have that error?
I was seeing the fixed dkp issue. Only he was seeing the problem with seeing only the tips on the tooltip.
I was in the control panel where I had it on random rolls, then clicked fixed dkp, and random stayed on, then anything else i clicked fixed still stayed on.
I'll get you his SV file when I see him, hopefully this evening.
Were these issues just for that 1 person or you too? How are you selecting fixed DKP? I tried through both tooltip and options with no problem? So minimap tooltip was blank? Or really short and only showing the tips?
Send me his SV file.
Found a couple issues, trying to help bring a new master looter up to speed.
Both of us were running r170. When selecting a module if Fixed DKP is set then it won't get unset no matter what else you select. No big deal, just a weird thing we noticed.
The really weird one is that his drop-down from the minimap icon was *only* showing the tips (Click, Alt-Click, etc.) and not showing the ML, DE, pool, system, quality, start/end/export raid items.
We disabled all other addons (except morgBid2) and tried all we could. If you have any ideas on what might possibly be causing this we'll try 'em out.
Thanks!
New alpha is up with different (more efficient) timestamp system. This means it has to convert your DB and will delete your current saved raids so be ready for that. Bunch of other little fixes and also added a toggleable boss kill timer which will save your best times. I know DBM does that but I no longer use DBM and missed it:P
I have already added the <diff> tag to boss names in my latest alpha (will release soon) so instead of the bosskill being called say Rotface it will be called Rotface (10) or Rotface (25H) etc if you add the tag to boss naming. Not sure what you mean the items show up the same? Item's already go by itemID.
Is there any way to get a changed event ID for normal and heroic encounters? If we zone in to ICC25 and start normals and then flip heroic on a few bosses, they all show as the same events and not heroic/normal, and all the items that drop show the same even though they are very different.
Thanks fixed.
Joined a 10man in progress at a wipe point and as I zoned in I got the following
MorgDKP2-MorgDKP2 v4.19\Modules\CoreModule.lua:1458: attempt to index field '?' (a nil value) MorgDKP2-MorgDKP2 v4.19\Modules\Syncing.lua:706: in function `AddNewAliases' MorgDKP2-MorgDKP2 v4.19\Modules\Syncing.lua:668: in function `ImportMembers' MorgDKP2-MorgDKP2 v4.19\Modules\Syncing.lua:481: in function `AcceptImport' MorgDKP2-MorgDKP2 v4.19\Modules\Syncing.lua:432: in function `?' CallbackHandler-1.0-5:147: in function <...non\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:147> <string>:"safecall Dispatcher[4]":4: in function <[string "safecall Dispatcher[4]"]:4> <in C code>: ? <string>:"safecall Dispatcher[4]":13: in function `?' CallbackHandler-1.0-5:92: in function `Fire' AceComm-3.0-6 (Recount):206: in function `aceCommReassemblerFunc' AceComm-3.0-6 (Recount):265: in function <...face\AddOns\Recount\Libs\AceComm-3.0\AceComm-3.0.lua:257>
The raid leader of the existing raid had morg running as well and was masterlooter