Download
(26 Kb)
Download
Updated: 10/31/19 03:06 PM
Pictures
File Info
Compatibility:
Dragonhold (5.2.5)
Updated:10/31/19 03:06 PM
Created:10/16/15 10:46 AM
Monthly downloads:188
Total downloads:6,827
Favorites:16
MD5:
sidTools  Popular! (More than 5000 hits)
Version: 1.7
by: sirinsidiator [More]
A collection of tools that I use during addon development. Most of them are hacked together quick and dirty, but have been in use since a long time. Don't be surprised if you see a bug or two.

The addon depends on LibAddonMenu-2.0, LibSlashCommander, LibTextFilter and LibMsgWin-1.0 which are not included and have to be installed separately.

The following slash commands are available:
  • /wme
    • Automatically starts chat input with yourself as target. Useful when you want to try chat stuff but don't want to bother anyone
  • /lang
    • Sets the cvar "language.2" to the passed value
  • /sidTools, /st
    • Toggles the sidToolBar which contains an idle time countdown and buttons for all modules. The command also has the following sub commands:
    • isolate <AddonName>
      • Remembers and deactivates all addons except for sidTools and the target addon and then reloads the UI. Useful for testing a specific addon in isolation
    • restore
      • Restores the saved state of loaded addons and reloads the UI
    • events [show/hide/start/stop/clear]
      • Opens a window that shows which events fire and how often
    • units [show/hide/<unitTag>]
      • Opens a window that shows details about a unit
    • items [show/hide]
      • Opens a window which allows to experiment with itemlinks
    • abilities [show/hide]
      • Opens a window which allows viewing all abilityIds and view a tooltip containing their information. Right click allows to link abilities to players with LibAbilityTooltips (not released yet, but contained in sidTools or sidWarTools)
    • fonts [show/hide]
      • Opens a window that shows all available font declarations, their definition and a preview of what it looks like.

The following keybinds are available:
  • Reload UI
    • Triggers /reloadui
  • Switch to English
    • Changes the cvar "language.2" to "en" (also triggers an ui reload)
  • Switch to German
    • Changes the cvar "language.2" to "de" (also triggers an ui reload)
  • Switch to French
    • Changes the cvar "language.2" to "fr" (also triggers an ui reload)
  • Toggle Idle Countdown
    • Toggles the sidToolBar which contains an idle time countdown and buttons for all modules. The coundown is reset whenever you move or use a skill/press sprint/swap weapons
version 1.7
  • updated UnitViewer for latest API
  • added Custom.lua to manifest as a place for quick and dirty hacks (check Custom-Example.lua for details)
  • added controls to change id range and toggle scan to ItemViewer and AbilityViewer
  • adjusted item viewer sliders to no longer clamp values
  • fixed item tooltip looking broken when an invalid id is selected (will now show a message instead)
  • fixed addon isolation not selecting all necessary dependencies in some cases
  • moved addon isolator into a separate bundled addon without any dependencies for less potential impact while in isolation mode
  • added "playerpets" and "worldevents" as autocomplete targets for the UnitViewer
  • removed sid_callLater (merged into the game) and trace (use LibDebugLogger instead)
  • removed LibAbilityTooltip (no more right click to link abilities in chat from the viewer)
  • removed embedded libraries (check description for what you need to install)

version 1.6 (internal only)
  • kept it alive on my machine

version 1.5
  • added LibSlashCommander and reorganized slash commands

version 1.4.1
  • fixed an error

version 1.4
  • updated for API version 100017
  • added first version of a toolbar (it will show when you toggle the idle timer)
  • renamed the custom zo_callLater function to sid_callLater on the pts in order to avoid errors (the function will be removed completely once the fix it applies has become part of the game in the near future)

version 1.3
  • updated for API version 100015
  • added power pool display to UnitViewer

version 1.2
  • updated API version to 100014
  • added buff display to UnitViewer
  • added ability and font viewer
  • added LibAbilityTooltips and LibTextFilter
    • warning: using complex search expressions on the ability or item list may cause crashes!
  • added some of merlight's proposed improvements

version 1.1
  • updated API version to 100013
  • added support for newly added API methods in UnitViewer
  • added a small delay while typing before filtering the list in the ItemViewer to avoid crashes
  • fixed rendering of negative countdown times
Optional Files (0)


Archived Files (7)
File Name
Version
Size
Uploader
Date
1.5
83kB
sirinsidiator
10/23/16 08:35 AM
1.4.1
73kB
sirinsidiator
09/22/16 07:05 AM
1.4
73kB
sirinsidiator
09/21/16 01:13 PM
1.3
71kB
sirinsidiator
04/26/16 03:54 PM
1.2
66kB
sirinsidiator
03/07/16 08:43 AM
1.1
51kB
sirinsidiator
11/02/15 07:13 AM
1.0
51kB
sirinsidiator
10/16/15 10:46 AM


Post A Reply Comment Options
Unread 01/27/19, 11:12 AM  
sirinsidiator
 
sirinsidiator's Avatar
AddOn Author - Click to view AddOns

Forum posts: 1566
File comments: 1119
Uploads: 41
Originally Posted by Marazota
item viewer is outdated?
i cant find any new motifs or sets i believe post-summerset
Yeah, but since this is a developer tool, it doesn't have any priority. Addon developers can easily overcome the issue on their own if they need to.
I suggest you use one of the many regular addons that can show items or motifs.
Report comment to moderator  
Reply With Quote
Unread 01/26/19, 05:57 PM  
Marazota
AddOn Author - Click to view AddOns

Forum posts: 257
File comments: 1517
Uploads: 2
item viewer is outdated?
i cant find any new motifs or sets i believe post-summerset
Report comment to moderator  
Reply With Quote
Unread 11/26/16, 05:21 AM  
sirinsidiator
 
sirinsidiator's Avatar
AddOn Author - Click to view AddOns

Forum posts: 1566
File comments: 1119
Uploads: 41
The text search already allows to filter for item types - just type the name of the type (e.g. 'weapon') and it will show only weapons. there may be some false positives if some item names contain parts of the search string, but at least for me it works well enough.
Originally Posted by Ayantir
Hello sirins, could you add a filter on itemtype for st items ?

i generally need it , it would avoid me to fork at each usage.

thank you.
Last edited by sirinsidiator : 11/26/16 at 05:22 AM.
Report comment to moderator  
Reply With Quote
Unread 11/26/16, 04:18 AM  
Ayantir
 
Ayantir's Avatar
AddOn Author - Click to view AddOns

Forum posts: 1019
File comments: 1531
Uploads: 31
Hello sirins, could you add a filter on itemtype for st items ?

i generally need it , it would avoid me to fork at each usage.

thank you.
Report comment to moderator  
Reply With Quote
Unread 09/22/16, 07:06 AM  
sirinsidiator
 
sirinsidiator's Avatar
AddOn Author - Click to view AddOns

Forum posts: 1566
File comments: 1119
Uploads: 41
Originally Posted by Upyachka
Originally Posted by Sounomi
Latest version on the PTS is giving me this error:
Code:
user:/AddOns/sidTools/StartUp.lua:48: Cannot find a library instance of "LibSlashCommander".
stack traceback:
	user:/AddOns/sidTools/lib/LibStub/LibStub.lua:29: in function 'LibStub:GetLibrary'
	user:/AddOns/sidTools/StartUp.lua:48: in function 'callback'
	user:/AddOns/sidTools/StartUp.lua:23: in function '(anonymous)'
Same issue on EU
Sorry about that. I forgot to remove some code that's not finished yet. New version is on its way.
Report comment to moderator  
Reply With Quote
Unread 09/22/16, 04:06 AM  
Upyachka
 
Upyachka's Avatar
AddOn Author - Click to view AddOns

Forum posts: 7
File comments: 22
Uploads: 6
Originally Posted by Sounomi
Latest version on the PTS is giving me this error:
Code:
user:/AddOns/sidTools/StartUp.lua:48: Cannot find a library instance of "LibSlashCommander".
stack traceback:
	user:/AddOns/sidTools/lib/LibStub/LibStub.lua:29: in function 'LibStub:GetLibrary'
	user:/AddOns/sidTools/StartUp.lua:48: in function 'callback'
	user:/AddOns/sidTools/StartUp.lua:23: in function '(anonymous)'
Same issue on EU
Report comment to moderator  
Reply With Quote
Unread 09/22/16, 03:08 AM  
Sounomi

Forum posts: 40
File comments: 69
Uploads: 0
Latest version on the PTS is giving me this error:
Code:
user:/AddOns/sidTools/StartUp.lua:48: Cannot find a library instance of "LibSlashCommander".
stack traceback:
	user:/AddOns/sidTools/lib/LibStub/LibStub.lua:29: in function 'LibStub:GetLibrary'
	user:/AddOns/sidTools/StartUp.lua:48: in function 'callback'
	user:/AddOns/sidTools/StartUp.lua:23: in function '(anonymous)'
Report comment to moderator  
Reply With Quote
Unread 12/07/15, 10:03 AM  
sirinsidiator
 
sirinsidiator's Avatar
AddOn Author - Click to view AddOns

Forum posts: 1566
File comments: 1119
Uploads: 41
I can try to include set names in the search, but it might lead to crashes if your pc is not powerful enough when too many text properties are searched.

The 80k is just a value I set it to in order to limit the processing time. I don't think there is a value in the api that indicates what the highest item id currently is, but if they add new items in the future I'll adjust it if necessary. I will also add a constant to the beginning of itemviewer.lua so it is easy to change.
Report comment to moderator  
Reply With Quote
Unread 12/07/15, 07:12 AM  
QuadroTony
Banned
 
QuadroTony's Avatar
AddOn Author - Click to view AddOns

Forum posts: 828
File comments: 3866
Uploads: 3
for example now it shows 80000 links in total

is there a way to know when after a patch they increase or decrease this value?
or whish links was edited by ZOS?
usefull for datamining
Last edited by QuadroTony : 12/07/15 at 07:13 AM.
Report comment to moderator  
Reply With Quote
Unread 12/05/15, 05:20 PM  
QuadroTony
Banned
 
QuadroTony's Avatar
AddOn Author - Click to view AddOns

Forum posts: 828
File comments: 3866
Uploads: 3
thanks for itemviewer!
i found some interesting items with it

can you pease add search by set name?
will be pretty nice

i mean if i put earthforge i will see all items from this set
Last edited by QuadroTony : 12/05/15 at 05:40 PM.
Report comment to moderator  
Reply With Quote
Unread 11/11/15, 07:23 AM  
merlight
AddOn Author - Click to view AddOns

Forum posts: 671
File comments: 213
Uploads: 12
Originally Posted by sirinsidiator
Multiple arguments for stisolate is a great idea. I am just wondering if addons can have a space in their name?
Although spaces in filenames are evil, they can. Here are those that do:


I wanted to suggest pat:gsub("+", " ") but apparently CraftAutoLoot+Key spoils it.

Then either use another delimiter for split, e.g. comma or semicolon; or name:gsub(" ", "_") (underscore in pattern will match underscore or space in add-on name); or require escaping spaces in pattern, but that'd a be a pain to implement with the limited pattern matching Lua has.

edit: it's not much of an issue, you can match a space with %s or even . and it's not very likely that multiple add-on names would differ only in that one "any character".
Last edited by merlight : 11/11/15 at 12:57 PM.
Report comment to moderator  
Reply With Quote
Unread 11/11/15, 06:08 AM  
sirinsidiator
 
sirinsidiator's Avatar
AddOn Author - Click to view AddOns

Forum posts: 1566
File comments: 1119
Uploads: 41
Thanks for the feedback. I'll incorporate these things as time allows.
As I wrote in the addon description, these tools where slapped together to help me with a certain problem, not to be efficient or win a usability contest.

I am not 100% sure, but I think the problem with the event viewer was that RegisterForAllEvents did not seem to have an UnregisterForAllEvents counterpart.
At least it is not documented or used anywhere. I'll take a look ingame in the evening.

The scroll behavior happens because I use LibMsgWin to create these windows and it is not really made for what I do.
I'll see what I can do about it.

Multiple arguments for stisolate is a great idea. I am just wondering if addons can have a space in their name?
Report comment to moderator  
Reply With Quote
Unread 11/10/15, 04:39 PM  
merlight
AddOn Author - Click to view AddOns

Forum posts: 671
File comments: 213
Uploads: 12
Great stuff! My favourite is the event viewer, big helper. Now some feature requests.

/lang XY
* I've had this in a private add-on for a long time:
Lua Code:
  1. SLASH_COMMANDS["/lang"] = function(args)
  2.     SetCVar("language.2", zo_strtrim(args))
  3. end

/stevents
* I never played with RegisterForAllEvents, but I'm wondering. Is there a reason /stevents stop only stops updates, but doesn't UnregisterForAllEvents?

* GenerateKeyFromArguments
Stringify args in place, no need to build another table of strings. Also from my private stuff, similar function that reuses one table for all calls:
Lua Code:
  1. local tmp_args = {}
  2.  
  3. local function arglist(...)
  4.     local n = select("#", ...)
  5.     for i = 1, n do
  6.         local a = select(i, ...)
  7.         if type(a) == "string" then
  8.             tinsert(tmp_args, strformat("%q", a))
  9.         else
  10.             tinsert(tmp_args, tostring(a))
  11.         end
  12.     end
  13.     return tconcat(tmp_args, ", ", 1, n)
  14. end

* would be nice if windows remembered scroll position between updates

/stisolate
* Could you make it accept space-separated search patterns? So we can keep multiple add-ons active.

Lua Code:
  1. local function FindAddonsMatchingPattern(...)
  2.     local npat = select("#", ...)
  3.     local out = {}
  4.     for index = 1, AddOnManager:GetNumAddOns() do
  5.         local name = AddOnManager:GetAddOnInfo(index)
  6.         for j = 1, npat do
  7.             local pat = select(j, ...)
  8.             local ms, me = strfind(name, pat)
  9.             if ms == 1 and me == #name then
  10.                 out[#out + 1] = index
  11.                 break
  12.             end
  13.         end
  14.     end
  15.     return out                                              
  16. end
  17.  
  18. function AddonIsolator:IsolateAddons(addonPatterns)
  19.     local addonIndices = FindAddonsMatchingPattern(zo_strsplit(" ", addonPatterns))
  20.     ...
  21. end

/... ok that's enough for today, will add my /x(script) later
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump:

Support AddOn Development!

You have just downloaded by the author . If you like this AddOn why not consider supporting the author? This author has set up a donation account. Donations ensure that authors can continue to develop useful tools for everyone.