WoW-AddOn: CheeseSLS
scripted by dieck, wow-dieck@jwr.de
Feel free to edit, but please mail modifications to me, so I can put your improvements online for all users.
I am thankful for feedback of any kind.
CheeseSLS
CheeseSLS is an addon to implement the Shroud Loot System using EQDKP as web interface.
The use of CT RaidTracker is greatly encouraged to simplify raid and loot uploads.
The "minimum bid" of SLS is implemented as "offspec loot".
You can change the costs in the config dialogue or using /cheesesls config offspec_dkp VALUE.
CheeseSLS uses the EQDKP-CT-RaidTracker import configuration to determine twink (alias) entries.
For these players dkp is shown and substracted from the main.
Like this is is easy to implement "person/player based dkp" instead of "char based dkp".
Although a config button already exists, switching of "twinks=main" handling is not yet implemented.
As the CurseForge SVN does not allow bat files to be uploaded you have to rename download.txt to .bat.
Before executing World of Warcraft you'll have to run download.bat.
Of course, for users other then the Käsefreunde Stormwind you'll have to upload the eqdkp/cheeseSLS.php to your eqdkp path and change the link in download.bat
As of this time the addon works by slash commands or configuration interface.
The interface is simply called by "/cheesesls" or "/csls".
One small disadvantage: you can't post itemlinks into the "start" field.
You can use the "/csls actions start itemlink"-Syntax shown below.
There are 2 ways approaching the slash commands. For those interested in the programming:
/sls is a direct slash handler, which might become deprecated in some time.
/cheesesls or /csls is an AceOption handler. You'll need one more word, tough: actions :)
/sls start itemlink
/cheesls actions start itemlink
starts a loot poll for need or offspec requests.
The itemlink is published via raid warning (if you are promoted)
Now every member of your raid can vote + (need), ? (offspec), - (revoke) in the raid chat.
As of r27 you may switch on dual spec need (d) in the configuration.
/sls end
/cheesesls actions end
ends the loot poll and shows the request in correct order with charname, dkp, playername (for twinks)
and the costs to be debited (half DKP points, rounded down).
By showing the eqdkp rank of people you can identify regulars, candidats, subs and so on.
You can get a popup window showing the loot, the looter and buttons for debitting loot, offspec or nothing. This popup window can be switched off via configuration.
If you now distribute the loot and are using CT RaidTracker it will pop up and you can enter the dkp cost.
The file ctraidtracker-mod.txt describes how to get CT RaidTracker to get the item costs from CheeseSLS. There may occur problems with "0 dkp" items.
Afterwards, you'll have to use either the popup windows to debit, or use the slash commands
/sls loot Charname
or /sls off Charname (for offspec)
/cheesesls actions loot Charname
/cheesesls actions off Charname
to debit the player in the addon variables. This is neccessary so the next loot poll has the correct values to calculate priorities.
You don't have to enter costs as it's either half DKP points (loot) or 20 (off/dual).
Players cannot have negative DKP points, /sls off is aware of this and sets to zero as minimum.
/sls list
/sls list-all
/sls olist
/sls olist-all
/cheesesls lists [list|list-all|olist|olist-all]
Prints the DKP lists.
list to raid chat, olist to officer chat.
-all shows all players, without it shows only raid participants of the current raid.
Please note that with /cheesesls it's not "actions" in this case but "lists".
You can directly credit/debit DKP points to/from players.
This is primarly meant for correcting misplaced debits from /sls loot or /sls off.
/sls dkp-plus Player DKP
/sls dkp-minus Player DKP
/cheesesls actions dkp-plus Player DKP
/cheesesls actions dkp-minus Player DKP
Players can whisper you "?dkp?" to get their DKP balance.
"?dkp? playername" will show the DKP balance of the requested player.
Starting with r27 there is a CheeseSLS Client for your raid members which will pop up the item and buttons for main / dual (if activated) / off spec & pass. All handling is done via raid chat, so this is completly optional to use.
http://wow.curse.com/downloads/wow-addons/details/cheeseslsclient.aspx
Note:
If you experience problems with library errors, try installing the Ace3 pack seperatly from http://wow.curse.com/downloads/wow-addons/details/ace3.aspx
------------------------------------------------------------------------
r37 | dieck | 2009-06-06 10:59:32 +0000 (Sat, 06 Jun 2009) | 1 line
Changed paths:
M /trunk/CheeseData.lua
M /trunk/core.lua
M /trunk/functions.lua
M /trunk/slashcommands.lua
added a couple of nil settings and forced garbage collection to counter memory overflow issues (CurseForge Ticket #1)
------------------------------------------------------------------------
r36 | dieck | 2009-05-24 12:31:23 +0000 (Sun, 24 May 2009) | 1 line
Changed paths:
M /trunk/CheeseSLS.toc
M /trunk/Locale-deDE-output.lua
M /trunk/Locale-deDE.lua
M /trunk/Locale-enUS-output.lua
M /trunk/Locale-enUS.lua
M /trunk/configuration.lua
M /trunk/core.lua
A /trunk/dualspeclists.lua
M /trunk/functions.lua
Black and White Lists for dual spec option
------------------------------------------------------------------------
r35 | dieck | 2009-05-23 08:25:18 +0000 (Sat, 23 May 2009) | 3 lines
Changed paths:
M /trunk/.pkgmeta
M /trunk/CheeseData.lua
M /trunk/CheeseSLS.toc
M /trunk/HelperFunctions.lua
M /trunk/core.lua
M /trunk/embeds.xml
M /trunk/events.lua
M /trunk/functions.lua
A /trunk/libs
M /trunk/slashcommands.lua
.pkgmeta updated to include all neccessary libraries
added warning if data derived from web seems to be too old
added output with self:Print for debug purposes when not in a party or raid
------------------------------------------------------------------------
r34 | dieck | 2009-05-13 21:48:19 +0000 (Wed, 13 May 2009) | 2 lines
Changed paths:
M /trunk/HelperFunctions.lua
M /trunk/Locale-deDE.lua
M /trunk/Locale-enUS.lua
M /trunk/core.lua
M /trunk/events.lua
M /trunk/gui-endbuttonframe.lua
you can now configure the interface window positions
a list of CheeseSLS Clients can be found in the configuration interface (when in raid)
------------------------------------------------------------------------
r33 | dieck | 2009-05-12 13:47:29 +0000 (Tue, 12 May 2009) | 1 line
Changed paths:
M /trunk/CheeseSLS.toc
updated toc to 3.1
------------------------------------------------------------------------
r32 | dieck | 2009-05-12 13:43:01 +0000 (Tue, 12 May 2009) | 3 lines
Changed paths:
M /trunk
D /trunk/DOWNLOAD.RENAME
moved directories, should now work seemless with curse updater
hopefully got pkgmeta for libraries right this time
fixed an error: "d" could not be whispered
------------------------------------------------------------------------
r31 | dieck | 2009-05-12 13:40:03 +0000 (Tue, 12 May 2009) | 1 line
Changed paths:
A /trunk/DOWNLOAD.bat.RENAME
M /trunk/readme-1st-RENAME.txt
A /trunk/wget
A /trunk/wget/NEWS
A /trunk/wget/WGET.GID
A /trunk/wget/WGET.HLP.RENAME
A /trunk/wget/cacert.pem
A /trunk/wget/libeay32.dll
A /trunk/wget/sample.wgetrc
A /trunk/wget/ssleay32.dll
A /trunk/wget/wget.exe.RENAME
A /trunk/wget/wget.html
restoring additional directories
------------------------------------------------------------------------
r30 | dieck | 2009-05-12 13:30:52 +0000 (Tue, 12 May 2009) | 1 line
Changed paths:
A /trunk/eqdkp
A /trunk/eqdkp/cheeseSLS.php
restoring additional directories
------------------------------------------------------------------------
r29 | dieck | 2009-05-12 13:29:41 +0000 (Tue, 12 May 2009) | 1 line
Changed paths:
A /trunk/.pkgmeta
A /trunk/CheeseData.lua
A /trunk/CheeseSLS.toc
A /trunk/DOWNLOAD.RENAME
A /trunk/GameTime.lua
A /trunk/HelperFunctions.lua
A /trunk/Locale-deDE-output.lua
A /trunk/Locale-deDE.lua
A /trunk/Locale-enUS-output.lua
A /trunk/Locale-enUS.lua
A /trunk/comm.lua
A /trunk/configuration.lua
A /trunk/core.lua
A /trunk/ctraidtracker-mod.txt
A /trunk/embeds.xml
A /trunk/events.lua
A /trunk/functions.lua
A /trunk/gui-endbuttonframe.lua
A /trunk/gui-lootframe.lua
A /trunk/gui.lua
A /trunk/readme-1st-RENAME.txt
A /trunk/readme-DE.txt
A /trunk/readme.txt
A /trunk/slashcommands.lua
A /trunk/stub.lua
directories moved
------------------------------------------------------------------------
r28 | dieck | 2009-05-12 13:15:04 +0000 (Tue, 12 May 2009) | 1 line
Changed paths:
D /trunk/CheeseSLS
wrong subdir
------------------------------------------------------------------------
r27 | dieck | 2009-04-14 18:42:51 +0000 (Tue, 14 Apr 2009) | 6 lines
Changed paths:
M /trunk/CheeseSLS/CheeseData.lua
M /trunk/CheeseSLS/CheeseSLS.toc
M /trunk/CheeseSLS/DOWNLOAD.RENAME
M /trunk/CheeseSLS/Locale-deDE-output.lua
M /trunk/CheeseSLS/Locale-deDE.lua
M /trunk/CheeseSLS/Locale-enUS-output.lua
M /trunk/CheeseSLS/Locale-enUS.lua
M /trunk/CheeseSLS/changelog.txt
M /trunk/CheeseSLS/comm.lua
M /trunk/CheeseSLS/configuration.lua
M /trunk/CheeseSLS/core.lua
M /trunk/CheeseSLS/embeds.xml
M /trunk/CheeseSLS/eqdkp/cheeseSLS.php
M /trunk/CheeseSLS/functions.lua
M /trunk/CheeseSLS/gui-lootframe.lua
M /trunk/CheeseSLS/libs/AceAddon-3.0/AceAddon-3.0.lua
M /trunk/CheeseSLS/libs/AceAddon-3.0/AceAddon-3.0.xml
M /trunk/CheeseSLS/libs/AceBucket-3.0/AceBucket-3.0.lua
M /trunk/CheeseSLS/libs/AceBucket-3.0/AceBucket-3.0.xml
M /trunk/CheeseSLS/libs/AceComm-3.0/AceComm-3.0.lua
M /trunk/CheeseSLS/libs/AceComm-3.0/AceComm-3.0.xml
M /trunk/CheeseSLS/libs/AceComm-3.0/ChatThrottleLib.lua
M /trunk/CheeseSLS/libs/AceConfig-3.0/AceConfig-3.0.lua
M /trunk/CheeseSLS/libs/AceConfig-3.0/AceConfig-3.0.xml
M /trunk/CheeseSLS/libs/AceConfig-3.0/AceConfigCmd-3.0/AceConfigCmd-3.0.lua
M /trunk/CheeseSLS/libs/AceConfig-3.0/AceConfigCmd-3.0/AceConfigCmd-3.0.xml
M /trunk/CheeseSLS/libs/AceConfig-3.0/AceConfigDialog-3.0/AceConfigDialog-3.0.lua
M /trunk/CheeseSLS/libs/AceConfig-3.0/AceConfigDialog-3.0/AceConfigDialog-3.0.xml
M /trunk/CheeseSLS/libs/AceConfig-3.0/AceConfigRegistry-3.0/AceConfigRegistry-3.0.lua
M /trunk/CheeseSLS/libs/AceConfig-3.0/AceConfigRegistry-3.0/AceConfigRegistry-3.0.xml
M /trunk/CheeseSLS/libs/AceConsole-3.0/AceConsole-3.0.lua
M /trunk/CheeseSLS/libs/AceConsole-3.0/AceConsole-3.0.xml
M /trunk/CheeseSLS/libs/AceDB-3.0/AceDB-3.0.lua
M /trunk/CheeseSLS/libs/AceDB-3.0/AceDB-3.0.xml
M /trunk/CheeseSLS/libs/AceDBOptions-3.0/AceDBOptions-3.0.lua
M /trunk/CheeseSLS/libs/AceDBOptions-3.0/AceDBOptions-3.0.xml
M /trunk/CheeseSLS/libs/AceEvent-3.0/AceEvent-3.0.lua
M /trunk/CheeseSLS/libs/AceEvent-3.0/AceEvent-3.0.xml
M /trunk/CheeseSLS/libs/AceGUI-3.0/AceGUI-3.0.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/AceGUI-3.0.xml
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-BlizOptionsGroup.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-Button.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-CheckBox.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-ColorPicker.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-DropDown-Items.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-DropDown.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-DropDownGroup.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-EditBox.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-Frame.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-Heading.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-Icon.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-InlineGroup.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-Keybinding.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-Label.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-MultiLineEditBox.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-ScrollFrame.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-SimpleGroup.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-Slider.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-TabGroup.lua
M /trunk/CheeseSLS/libs/AceGUI-3.0/widgets/AceGUIWidget-TreeGroup.lua
M /trunk/CheeseSLS/libs/AceHook-3.0/AceHook-3.0.lua
M /trunk/CheeseSLS/libs/AceHook-3.0/AceHook-3.0.xml
M /trunk/CheeseSLS/libs/AceLocale-3.0/AceLocale-3.0.lua
M /trunk/CheeseSLS/libs/AceLocale-3.0/AceLocale-3.0.xml
M /trunk/CheeseSLS/libs/AceSerializer-3.0/AceSerializer-3.0.lua
M /trunk/CheeseSLS/libs/AceSerializer-3.0/AceSerializer-3.0.xml
M /trunk/CheeseSLS/libs/AceTab-3.0/AceConfigTab-3.0.lua
M /trunk/CheeseSLS/libs/AceTab-3.0/AceTab-3.0.lua
M /trunk/CheeseSLS/libs/AceTab-3.0/AceTab-3.0.xml
M /trunk/CheeseSLS/libs/AceTimer-3.0/AceTimer-3.0.lua
M /trunk/CheeseSLS/libs/AceTimer-3.0/AceTimer-3.0.xml
M /trunk/CheeseSLS/libs/CallbackHandler-1.0/CallbackHandler-1.0.lua
M /trunk/CheeseSLS/libs/CallbackHandler-1.0/CallbackHandler-1.0.xml
M /trunk/CheeseSLS/libs/LibStub/LibStub.lua
M /trunk/CheeseSLS/libs/docs/AceAddon-3.0.txt
M /trunk/CheeseSLS/libs/docs/AceBucket-3.0.txt
M /trunk/CheeseSLS/libs/docs/AceConsole-3.0.txt
M /trunk/CheeseSLS/libs/docs/AceDB-3.0.txt
M /trunk/CheeseSLS/libs/docs/AceEvent-3.0.txt
M /trunk/CheeseSLS/libs/docs/AceLocale-3.0.txt
M /trunk/CheeseSLS/libs/docs/AceSerializer-3.0.txt
M /trunk/CheeseSLS/readme-1st-RENAME.txt
M /trunk/CheeseSLS/readme-DE.txt
M /trunk/CheeseSLS/readme.txt
M /trunk/CheeseSLS/slashcommands.lua
M /trunk/CheeseSLS/wget/NEWS
M /trunk/CheeseSLS/wget/cacert.pem
M /trunk/CheeseSLS/wget/sample.wgetrc
M /trunk/CheeseSLS/wget/wget.html
new feature: dual spec bids, "d", are placed between main spec "+" and off spec "?"; costs offspec price.
Can be switched on in configuration (/csls)
New feature: supports CheeseSLS Client (install seperately)
Fixed some errors with german translations
------------------------------------------------------------------------
Installation Guide
- Exit "World of Warcraft" completely
- Download the mod you want to install
- Make a folder on your desktop called "My Mods"
- Save the .zip/.rar files to this folder.
- If, when you try to download the file, it automatically "opens" it... you need to RIGHT click on the link and "save as..." or "Save Target As".
- Extract the file - commonly known as 'unzipping'
Do this ONE FILE AT A TIME!
- Windows
- Windows XP has a built in ZIP extractor. Double click on the file to open it, inside should be the file or folders needed. Copy these outside to the "My Mods" folder.
- WinRAR: Right click the file, select "Extract Here"
- WinZip: You MUST make sure the option to "Use Folder Names" is CHECKED or it will just extract the files and not make the proper folders how the Authors designed
- Mac Users
- StuffitExpander: Double click the archive to extract it to a folder in the current directory.
- Verify your WoW Installation Path
That is where you are running WoW from and THAT is where you need to install your mods.
- Move to the Addon folder
- Open your World of Warcraft folder. (default is C:\Program Files\World of Warcraft\)
- Go into the "Interface" folder.
- Go into the "AddOns" folder.
- In a new window, open the "My Mods" folder.
- The "My Mods" folder should have the "Addonname" folder in it.
- Move the "Addonname" folder into the "AddOns" folder
- Start World of Warcraft
- Make sure AddOns are installed
- Log in
- At the Character Select screen, look in lower left corner for the "addons" button.
- If button is there: make sure all the mods you installed are listed and make sure "load out of date addons" is checked.
- If the button is NOT there: means you did not install the addons properly. Look at the above screenshots. Try repeating the steps or getting someone who knows more about computers than you do to help.
Translations
When you download a mod, please be sure that the mod is compatible with your translation of wow. Some mods only work on the US versions, while some only work on some of the various European versions. These variations are called "Localizations".
TOC Numbers (Out of Date Mods)
When Blizzard patches WoW, they change the Interface number. This means that all mods will be "out of date" unless or until the author releases a new version for that interface. Some people go into the .toc files and update the numbers themselves, but this is STRONGLY advised against as it will cause problems locating possible incompatibilities addons. When you log into WoW after a patch, you DO NOT have to delete your interface directory. All you have to do is simply tell WoW to ignore the interface numbers and load all the mods anyway. All you have to do is, while at the "character select" screen, look in the lower left corner and click on the "addons" button. A window will pop up listing all your installed mods.
If you look in the upper left corner of that window there should be a box that says "Load Out of Date AddOns". You want to CHECK this box. Now simply go into WoW normally and all your mods should load. As of the 1.9 patch, you will have to do this after EVERY patch/update that Blizzard posts! If you encounter any problems with a mod after a patch, please be sure to let the author of the mod know so they can fix it.
See also: About "Out Of Date AddOns"
Mac Support
WoW addons are not platformed based. As such, they can be used on either Mac or PC. You can extract both .zip and .rar files on a Mac using StuffitExpander.
Directory Structure
World of Warcraft
|_ Interface
|_AddOns
|_*AddonName*
|_ *AddonName*.toc
|_ *AddonName*.xml
|_ *AddonName*.lua
|_ (possibly others as well)...