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
Right the Name and Value are in the XML export as is the Item ID. The Plugin for EQDKP does not read the Item ID like say the CTRaid plugin does. This has lead to issues with, for example, items in ToC and ToGC that have the same name. As far as the import script for MorgDKP knows they are the same item.
Thanks :)
@arkaria - not sure what you are asking? The name and value are already in the xml export (from wow) You not using eqdkp?
New version seems to be working pretty well so far. One question though, the Item ID is included in the XML export. Any chance of including that in the Item creation along with the Name and value?
Oops forgot the localization thanks lol.
Last update, r150
AceConfigDialog-3.0-42:1752: AceConfigRegistry-3.0:ValidateOptionsTable(): MorgDKP2.args.dkpmodules.args.takeminbid.name: expected a string or funcref, got 'nil' AceConfigRegistry-3.0-11:50: in function <...-3.0\AceConfigRegistry-3.0\AceConfigRegistry-3.0.lua:45> AceConfigRegistry-3.0-11:184: in function <...-3.0\AceConfigRegistry-3.0\AceConfigRegistry-3.0.lua:179> AceConfigRegistry-3.0-11:218: in function <...-3.0\AceConfigRegistry-3.0\AceConfigRegistry-3.0.lua:193> AceConfigRegistry-3.0-11:228: in function <...-3.0\AceConfigRegistry-3.0\AceConfigRegistry-3.0.lua:193> AceConfigRegistry-3.0-11:228: in function <...-3.0\AceConfigRegistry-3.0\AceConfigRegistry-3.0.lua:193> AceConfigRegistry-3.0-11:256: in function `ValidateOptionsTable' AceConfigRegistry-3.0-11:297: in function `app' AceConfigDialog-3.0-42:1752: in function `Open' MorgDKP2-MorgDKP2 r150\Core.lua:594: in function `?' AceConsole-3.0-7 (Ace3):94: in function `value' Interface\FrameXML\ChatFrame.lua:3565: in function `ChatEdit_ParseText': Interface\FrameXML\ChatFrame.lua:3213: in function `ChatEdit_SendText': Interface\FrameXML\ChatFrame.lua:3237: in function `ChatEdit_OnEnterPressed': <string>:"*:OnEnterPressed":1: in function <[string "*:OnEnterPressed"]:1>
Locals: msg = ": expected a string or funcref, got 'nil'" errlvl = 6 t = <table> { 1 = "MorgDKP2" 2 = "args" 3 = "dkpmodules" 4 = "args" 5 = "takeminbid" 6 = "name" } select = <function> defined =[C]:-1 tinsert = <function> defined =[C]:-1 error = <function> defined =[C]:-1 MAJOR = "AceConfigRegistry-3.0" tconcat = <function> defined =[C]:-1
Few minor changes to make localization easier and things more efficient. Changed ignore list to use item IDs so if you added custom items to ignore list you may need to re-add them. Also you can now set a minimum bid in takebid and the member using morgbid2 can't bid less than that value for take. Still alpha as I have some bosses in ICC that need special handling and I don't have the boss yells etc yet.
Hmm well there is really no easy way. Either you have to go through and add the adjustments so they have an event (all things in eqdkp+ should really have an event) or I have to go into the code and try figure out how to pick up the adjustments with no events and I really really hate editing the webcode lol.
If I remember right, the current export code adds up all the points earned, spent, and adjusted based on the log type entries. I *think* that the totals for all of those, and/or the grand total points for each member are also stored with the member in the database.
It's been quite a while since I looked at that, but you might be able to pick up the numbers from there.
You can edit the amount of DKP earned/spent/adjusted through the list, edit, delete by clicking on a person's name.
Any simple fix for this issue or do I have to redo all of the adjustments (which will suck really badly.)
Yeah that is basically like it is hard coded. The mod can't see those kind of adjustments (maybe it could but I have never been able to get it to yet) Hmm I don't even see anyplace to adjust DKP on my install through list/edit/delete. It will pick up adjustments added to members and assigned to the correct pool by going to individual adjustments/add and then assigning the adjustment to an event (which is included in the pool you are interested in) Adjustment handling kind of sucks in general.
No. I did it by going to: Admin panel -> Manage Members -> List, Edit or Delete. I did it this way when I first set the website up. Would doing it that way cause the addon to not pick up the adjustment? The adjustment is 677.03
The item that you are looking at that is 1000 DKP is the Trophy of the Crusade, and that item was assigned that value by a majority vote of the officers.
I notice (looking at Cindra) that the adjustment isn't listed on his member page. It looks like you did it by using an item and assigning it 1000 dkp etc. I believe you need to use teh adjustment system and assign that adjustment to the SAME pool as the dkp or the mod will not pick it up. I would think it would be better to just figure out how much dkp the member has and add it as an adjustment.
Hey Morgalm,
I'm having an issue with exporting. The plugin is not reading the adjustments from the website, and as such is not wanting to export them. Unfortunately, I had a web-hosting problem (if anyone hosts with 000webhost.com search for a new provider asap. They use bad tactics to get you to pay for their "free" service and are not upfront with their limitations). So I had to take all the DKP from the old website and enter it as adjustments into the new website. Both use(d) 0.6.3.5 EQDkp-plus, and I use MorgDKP2 Export v2.7. Here is a sample of the string:
["Cindra"] = {earn = 683.67,spent = 2405,adj = 0,bal = -1721.33,class = "Shaman"} According to the "Standings" page on the website it should read: ["Cindra"] = {earn = 683.67,spent = 2405,adj = 677.03,bal = -1044.3,class = "Shaman"}
Website: http://khaos.x10hosting.com
Thank you sir. This is a fantastic DKP system, and this might be my second hiccup in the several months I have used this system.
I'm sure, because once the raid starts nothing gets changed until after the raid, and only if we switch to an older instance.
Think I see the problem but are you absolutely sure that the item/items didn't get set to an alternate pool (using multipool setting) as items remember the pool they should use? Just seems weird it only does it for that boss.
one pool, not switching, on mouse over of any item he has.
Icehowl has the loot on his body, not in a chest.
The system has 2 pools in it, but only one is active and we don't switch it mid raid or anything.
@daveis - if it's working for you feel free to sue it.
@kalem - when exactly on looting? ie immediately when you loot the chest and the window opens? When you hover over a certain item? Are you switching pools or anything? Using 2 different pools? More details please:P
Long time since i've had an issue.. but
[2009/11/17 21:13:15-525-x3]: MorgDKP2-MorgDKP2 v4.16\Modules\FixedDKP.lua:133: attempt to index field '?' (a nil value) MorgDKP2-MorgDKP2 v4.16\Modules\Lootframe.lua:793: in function `AddDKPInfoTT' MorgDKP2-MorgDKP2 v4.16\Modules\Lootframe.lua:971: in function <Interface\AddOns\MorgDKP2\Modules\Lootframe.lua:966>
Locals: self = <table> { SetDefaultModuleLibraries = <function> defined @Interface\AddOns\Bagnon\libs\AceAddon-3.0\AceAddon-3.0.lua:384 StartItemQuery = <function> defined @Interface\AddOns\MorgDKP2\Modules\Lootframe.lua:1637 EnableModule = <function> defined @Interface\AddOns\Bagnon\libs\AceAddon-3.0\AceAddon-3.0.lua:349 modules = <table> { } baseName = "MorgDKP2" IterateEmbeds = <function> defined @Interface\AddOns\Bagnon\libs\AceAddon-3.0\AceAddon-3.0.lua:459 SecureHook = <function> defined @Interface\AddOns\BigWigs\Libs\AceHook-3.0\AceHook-3.0.lua:339 CreateMLMenu = <function> defined @Interface\AddOns\MorgDKP2\Modules\Lootframe.lua:1573 OpenInvMenu = <function> defined @Interface\AddOns\MorgDKP2\Modules\Lootframe.lua:1659 RawHookScript = <function> defined @Interface\AddOns\BigWigs\Libs\AceHook-3.0\AceHook-3.0.lua:398 CreateDEButton = <function> defined @Interface\AddOns\MorgDKP2\Modules\Lootframe.lua:1364 GivetoX = <function> defined @Interface\AddOns\MorgDKP2\Modules\Lootframe.lua:1420 OnOpen = <function> defined @Interface\AddOns\MorgDKP2\Modules\Lootframe.lua:248 SetDefaultModulePrototype = <function> defined @Interface\AddOns\Bagnon\libs\AceAddon-3.0\AceAddon-3.0.lua:426 items = <table> { } RaidEvent = <function> defined @Interface\AddOns\MorgDKP2\Modules\Lootframe.lua:231 defaultModuleState = true OutputWinner = <function> defined @Interface\AddOns\MorgDKP2\Modules\Lootframe.lua:879 IsEnabled = <function> defined @Interface\AddOns\Bagnon\libs\AceAddon-3.0\AceAddon-3.0.lua:468 ExtraButton_Selfloot = <function> defined @Interface\AddOns\MorgDKP2\Modules\Lootframe.lua:1415 IsML = <function> defined @Interface\AddOns\MorgDKP2\Modules\Lootframe.lua:1384 DisableModule = <function> defined @Interface\AddOns\Bagnon\libs\AceAddon-3.0\AceAddon-3.0.lua:367 RollUpdateCheck = <function> defined @Interface\AddOns\MorgDKP2\Modules\Lootframe.lua:821 UpdateLootFrameMedia = <function> defined @Interface\AddOns\MorgDKP2\Modules\Lootframe.lua:227 rollframe = <unnamed> { } RegisterMessage = <function> defined @Interface\AddOns\Bagnon\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:117 UnregisterMessage = <function> defined @Interface\AddOns\Bagnon\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:180 AwardBuffer = <table> { } itemframe = <unnamed> { } IsHooked = <function> defined @Interface\AddOns\BigWigs\Libs\AceHook-3.0\AceHook-3.0.lua:496 lootframe = <unnamed> { } target = "Icehowl" SendCommMessage = <function> defined @Interface\AddOns\MorgBid2\Libs\AceComm-3.0\AceComm-3.0.lua:69 CreateItemsFrame = <function> defined @Interface\AddOns\MorgDKP2\Modules\Lootframe.lua:1042 StopItemQuery_Button = <function (... more ...)
When looting icehowl in normal 25. 3 weeks in a row