The initial modules have been completed and uploaded to the SVN
DiscordEPGP is an addin module for DKPmon and Bidder that provides very customizable support for the EPGP Loot system.
This module supports the following features:
EP Specific
Award EP for Boss kills from a pre-generated list
Automatically creates timed EP awards on entering named instances
Notifies you if you have pending EP awards when you're out of combat
Trys to automatically master-loot when you target/mouseover a boss in your list
Supports pre-defined EP awards (IE Boss Attempts, Ontime Bonus, etc)
Provides a method for officers to add a custom EP awards
Bosskill detection with EP awarding and "farmstatus" recording for bosses. This allows bonus EP to be automatically earned when downing a new boss, and records in the DB when a boss should be considered on farm status.
GP Specific
Every item is a fixed point cost ("GP"), as dictated by a database of items.
Supports "dual pool" operation allowing the mod to track EPGP for two seperate pools within a single system. The primary purpose for this is to seperate Tier specific loot from general boss loot. The system calculates EP earned in two related pools, while GP is applied only to a specific pool. When a user queries for his current priority, the values for both pools are returned. Gear is assigned its GP value and correct pool via the custom.lua file.
System Specific
Supports separate decay values for EP and GP, this allows the users to decay both EP anf GP at separate rates, improving the customablity of the system and eliminating the need to start players at a base GP value above 1.
Instance detection with auto logging functions (autostarts a new log when entering a named instance)
To use the addon, download the following projects from SVN: DKPmon_DiscordEPGP
Bidder_DiscordEPGP
Tailor DKPmon_DiscordEPGP/custom.lua to your guild's EPGP system, an example.lua file is provided with all instances and loot values populated.
Remember all bidders are required to have the original Bidder as well as Bidder_DiscordEPGP for the system to work correctly
Feel free to respond with any bugs found with this system or suggestions for improvement. Future enhancements should include;
A way to sync mod settings between players to ensure consistency
A more detailed DKP display with both EP and GP displayed as well as sorting
Class restrictions on bidding
I've also customized the original DKPmon_CSV addon to become, DKPmon_EPGPCSV(available on the SVN). This addon allows for the users to import and export to the points database for the EPGP system. The real difference between this and the original version is that EPGPCVS supports the import/export of both points earned (EP) and points spent (GP). It should work crrectly for ANY EPGP type system including the original by Xerophyte.
This mod is mostly reworked bits of code from other's DKP Mods for the DKPmon
framework. Many thanks to all those that have provided the core pieces required to
complete this work. Some but not all are; Xerophyte's Original EPGP addon Javek's BossAuction Addon Eraslin for the core DKPmon addon
Showed your version of the EPGP module to our raid leader last night, he about wet himself. Good Job!
Query points no longer seems to be functional though. Only response we are getting is nil, even when the person has points in both or just a single pool. Any Ideas?
hehe, Yup, first thing I checked on. Bidder and Bidder_DiscordEPGP are both installed, no other Bidder modules.
Had the same problem with the sample files you had posted in the DKPmon_EPGP module thread. When I commented out the 2nd point pool, the functionality returned to normal.
DkDrunk,
OK then I'm assuming your using only a single pool setup, to be honest the bulk of my testing was done using the dual pool option. I'll spend a little time testing everything while using only a single pool or multiple non "dual" pools.
Been playing around with this last couple of weeks, works great.
Thanks!
Kinda off-topic but can anyone recommend a web-interface that will allow me to import the Xml strings that are generated by DKPmon, nothing that i've found so far will do a 100% import. Usually screwing up the attendees for the award events, either saying everyone in the raid was there for the event or skipping over the custom point award events entirely. What is everyone else using?
I spent yesterday trying out the standard epgp plugin and ran across this thread. Do you have to use more than one pool to use discord epgp? The pool is the persons ep right? I'm not sure why you would need more than one pool.
Also I saw something mentioned in another thread that if you set the gp to a minimum value you can balance the system better between new raiders and the old raiders. Is there a way to do that?
Is there a way to subrtract EP if you want to penalize someone?
I noticed there are points in there for some items. Will it calculate points for items not already in the example.lua and if no how can we get something that will calculate this on the fly?
Been playing around with this last couple of weeks, works great.
Thanks!
Kinda off-topic but can anyone recommend a web-interface that will allow me to import the Xml strings that are generated by DKPmon, nothing that i've found so far will do a 100% import. Usually screwing up the attendees for the award events, either saying everyone in the raid was there for the event or skipping over the custom point award events entirely. What is everyone else using?
The dkpmon_epgpcsv export module is not putting in the commas and quotes when you do an export. This causes an error when you attempt to import your edited database. Please fix this.
The dkpmon_epgpcsv export module is not putting in the commas and quotes when you do an export. This causes an error when you attempt to import your edited database. Please fix this.
No probem I should be able to fix this, this week.
I spent yesterday trying out the standard epgp plugin and ran across this thread. Do you have to use more than one pool to use discord epgp? The pool is the persons ep right? I'm not sure why you would need more than one pool
There are two seperate pools tracked in the system, one for Class specific tier loot and one for Hybrid loot. The way the system is currently setup all points earned are added to both pools, then the priority is based on dividing the earned points by the loot points for each specific pool. giving you a seperate priority value for each pool.
Also I saw something mentioned in another thread that if you set the gp to a minimum value you can balance the system better between new raiders and the old raiders. Is there a way to do that?
I addressed that issue by allowing EP and GP to decay at seperate rates, which I think is a more valid solution IMO. we also use a 3 raid minimum to be able to bid on loot. I will look into adding a base GP value if people would really like to see it.
Is there a way to subrtract EP if you want to penalize someone?
Not yet i need to add this ability.
I noticed there are points in there for some items. Will it calculate points for items not already in the example.lua and if no how can we get something that will calculate this on the fly?
There is a setting in the options to allow item adding, be sure to set the correct level of items you want the mod to detect and add to the DB.
You have done a great job with this module ! I just have a few questions:
Would it be possible to use just item ID in the custom.lua file to set GP values? this would enable more portable (locale independant) setup of GP values.
How does other people who use this module manage the setup of GP values? Basically I extracted the loot tables from the WOW Armory with some item info like item level and slot, put everything in an Excel spreadsheet. The Excel spreadsheet enables us to:
calculate the GP value, based on the Item level and Slot value
output the GP table into text to be included in the custom.lua file
output the GP table into HTML to be published in our forum
With about 340 items, we now have a table with the loot of the basic raid instances (KZ, ZA, Gruul, TK), however we are still missing the trash loot (I could not find how to extract them from the EU Armory, I'll have to use the Atlasloot tables...)
However since I did this for a French client, this can only be reused for the same locale. Using ItemID in the custom.lua would facilitate the reuse of such loot tables, and greatly reduce the setup effort for the EPGP system.
Do you think that it could be possible to set-up the custom.lua file to use the ItemID for GP values? The resulting file would also be much smaller. However this might need to be changed in DKPmon rather than in the loot system module.
When will you be able to improve the DKP display? it is the weak spot of this otherwise great module...
Is it possible to prevent some loot to show-up in the loot window? For example, the Badge of Justice keep poping-up when we loot. Is there a way to parameter the module to prevent this?
PS: I will post the French localization that I have done when we have finish to test it. There are still a few glitches which need to be fixed.
How does other people who use this module manage the setup of GP values?
Personally I've added ItemLevelDKP in the RequiredDeps of DKPmon_DiscordEPGP
and modified function DiscordEPGP.prototype:GetItemInfo(iteminfo) in discordepgp.lua to pull values from that mod by supplying itemid.
I've also modified ItemLevelDKP to export it's values to other mods through an
ItemLevelDKP.GetDKP (itemid) function that returns ilvldkpvalue.
And finally I've changed the valuation formula of ItemLevelDKP itself to account for sockets and sets
(with an arbitrary multiplier) and made it scale GP (or dkp) exponentially with itemlevel instead of linearly.
My doubling for Epics is set at 26 itemlevels, ie a T6 item will cost roughly 2*T4 item of the same slot.
I know the shortcomings of dynamic GP valuation.. but they didn't outweigh me going through loot tables
and assigning values manually to 400 items... plus there's no such thing as "unknown loot" in this system.
A nice side-effect is that ItemLevelDKP comes with a pricelist.lua file that can be used to assign static values too,
and it overrides the dynamic ones.
You can if so wish to input your whole loot tables here, I've chosen to put the - dynamically computed - value
of the tier_x rewards to the token itself, so tokens appear with their proper price when they drop automagically.
This is also where I keep my exceptions like void crystals and badges of justice that I want to force to 0 GP.
(see below for reason).
Quote from aldor »
Is it possible to prevent some loot to show-up in the loot window? For example, the Badge of Justice keep poping-up when we loot. Is there a way to parameter the module to prevent this?
I'd like to second that request :)
The way I'm doing it now is I've set ItemLevelDKP to return 0 GP cost for void crystals and badges of justice,
then in function DiscordEPGP.prototype:GetItemInfo(iteminfo)
if I get dkpinfo.cost = 0 for an item I return.
Probably the easiest way to do this would be some form of "blacklist".
The same conditional that checks for quality level now
if iteminfo.quality < mydb.qualthreshold then return nil,nil end
and returns if the item doesn't meet the criteria could maybe have a second check added
if iteminfo.quality < mydb.qualthreshold or blacklist[iteminfo.name] then return nil, nil end
and you put items you want blacklisted in the blacklist table.
DiscordEPGP is an addin module for DKPmon and Bidder that provides very customizable support for the EPGP Loot system.
This module supports the following features:
EP Specific
To use the addon, download the following projects from SVN:
DKPmon_DiscordEPGP
Bidder_DiscordEPGP
Tailor DKPmon_DiscordEPGP/custom.lua to your guild's EPGP system, an example.lua file is provided with all instances and loot values populated.
Remember all bidders are required to have the original Bidder as well as Bidder_DiscordEPGP for the system to work correctly
Feel free to respond with any bugs found with this system or suggestions for improvement.
Future enhancements should include;
I've also customized the original DKPmon_CSV addon to become, DKPmon_EPGPCSV(available on the SVN). This addon allows for the users to import and export to the points database for the EPGP system. The real difference between this and the original version is that EPGPCVS supports the import/export of both points earned (EP) and points spent (GP). It should work crrectly for ANY EPGP type system including the original by Xerophyte.
This mod is mostly reworked bits of code from other's DKP Mods for the DKPmon
framework. Many thanks to all those that have provided the core pieces required to
complete this work. Some but not all are;
Xerophyte's Original EPGP addon
Javek's BossAuction Addon
Eraslin for the core DKPmon addon
-Vlorn
Thanks!
Showed your version of the EPGP module to our raid leader last night, he about wet himself. Good Job!
Query points no longer seems to be functional though. Only response we are getting is nil, even when the person has points in both or just a single pool. Any Ideas?
Drunk
Gotta ask the obvious, You ARE using Bidder_DiscordEPGP aren't you?
Steve
hehe, Yup, first thing I checked on. Bidder and Bidder_DiscordEPGP are both installed, no other Bidder modules.
Had the same problem with the sample files you had posted in the DKPmon_EPGP module thread. When I commented out the 2nd point pool, the functionality returned to normal.
Drunk
OK then I'm assuming your using only a single pool setup, to be honest the bulk of my testing was done using the dual pool option. I'll spend a little time testing everything while using only a single pool or multiple non "dual" pools.
-Vlorn
That's exactly it. We normally just use a single pool for points, so had the dual pool option turned off. Turned it on and Query points works fine.
thanks,
Drunk
Thanks!
Kinda off-topic but can anyone recommend a web-interface that will allow me to import the Xml strings that are generated by DKPmon, nothing that i've found so far will do a 100% import. Usually screwing up the attendees for the award events, either saying everyone in the raid was there for the event or skipping over the custom point award events entirely. What is everyone else using?
Drunk
Also I saw something mentioned in another thread that if you set the gp to a minimum value you can balance the system better between new raiders and the old raiders. Is there a way to do that?
Is there a way to subrtract EP if you want to penalize someone?
I noticed there are points in there for some items. Will it calculate points for items not already in the example.lua and if no how can we get something that will calculate this on the fly?
This would be very sweet indeed.
No probem I should be able to fix this, this week.
There are two seperate pools tracked in the system, one for Class specific tier loot and one for Hybrid loot. The way the system is currently setup all points earned are added to both pools, then the priority is based on dividing the earned points by the loot points for each specific pool. giving you a seperate priority value for each pool.
I addressed that issue by allowing EP and GP to decay at seperate rates, which I think is a more valid solution IMO. we also use a 3 raid minimum to be able to bid on loot. I will look into adding a base GP value if people would really like to see it.
Not yet i need to add this ability.
There is a setting in the options to allow item adding, be sure to set the correct level of items you want the mod to detect and add to the DB.
-Vlorn
Would it be possible to use just item ID in the custom.lua file to set GP values? this would enable more portable (locale independant) setup of GP values.
How does other people who use this module manage the setup of GP values? Basically I extracted the loot tables from the WOW Armory with some item info like item level and slot, put everything in an Excel spreadsheet. The Excel spreadsheet enables us to:
However since I did this for a French client, this can only be reused for the same locale. Using ItemID in the custom.lua would facilitate the reuse of such loot tables, and greatly reduce the setup effort for the EPGP system.
Do you think that it could be possible to set-up the custom.lua file to use the ItemID for GP values? The resulting file would also be much smaller. However this might need to be changed in DKPmon rather than in the loot system module.
When will you be able to improve the DKP display? it is the weak spot of this otherwise great module...
Is it possible to prevent some loot to show-up in the loot window? For example, the Badge of Justice keep poping-up when we loot. Is there a way to parameter the module to prevent this?
PS: I will post the French localization that I have done when we have finish to test it. There are still a few glitches which need to be fixed.
Personally I've added ItemLevelDKP in the RequiredDeps of DKPmon_DiscordEPGP
and modified function DiscordEPGP.prototype:GetItemInfo(iteminfo) in discordepgp.lua to pull values from that mod by supplying itemid.
I've also modified ItemLevelDKP to export it's values to other mods through an
ItemLevelDKP.GetDKP (itemid) function that returns ilvldkpvalue.
And finally I've changed the valuation formula of ItemLevelDKP itself to account for sockets and sets
(with an arbitrary multiplier) and made it scale GP (or dkp) exponentially with itemlevel instead of linearly.
My doubling for Epics is set at 26 itemlevels, ie a T6 item will cost roughly 2*T4 item of the same slot.
I know the shortcomings of dynamic GP valuation.. but they didn't outweigh me going through loot tables
and assigning values manually to 400 items... plus there's no such thing as "unknown loot" in this system.
A nice side-effect is that ItemLevelDKP comes with a pricelist.lua file that can be used to assign static values too,
and it overrides the dynamic ones.
You can if so wish to input your whole loot tables here, I've chosen to put the - dynamically computed - value
of the tier_x rewards to the token itself, so tokens appear with their proper price when they drop automagically.
This is also where I keep my exceptions like void crystals and badges of justice that I want to force to 0 GP.
(see below for reason).
I'd like to second that request :)
The way I'm doing it now is I've set ItemLevelDKP to return 0 GP cost for void crystals and badges of justice,
then in function DiscordEPGP.prototype:GetItemInfo(iteminfo)
if I get dkpinfo.cost = 0 for an item I return.
Probably the easiest way to do this would be some form of "blacklist".
The same conditional that checks for quality level now
if iteminfo.quality < mydb.qualthreshold then return nil,nil end
and returns if the item doesn't meet the criteria could maybe have a second check added
if iteminfo.quality < mydb.qualthreshold or blacklist[iteminfo.name] then return nil, nil end
and you put items you want blacklisted in the blacklist table.
http://www.wowace.com/forums/index.php?topic=4046.msg166179#msg166179
And I attach to this post a detailed user manual to use the DKPmon/EPGP system (in French sorry)
Great set of mods, but if someone has a recommendation, or a modified PhP of the dkpMon2Export, I would definetly appreciate it.