Quantcast
Download
(24 Kb)
Download
Updated: 05/23/20 03:56 PM
Pictures
File Info
Compatibility:
Greymoor (6.0.5)
Updated:05/23/20 03:56 PM
Created:12/26/16 04:20 PM
Monthly downloads:154
Total downloads:6,344
Favorites:13
MD5:
6.0.5
Group Food & Drink Buffs  Popular! (More than 5000 hits)
Version: 1.13
by: Phinix [More]
Group Food & Drink Buffs


(Click your flag to translate the page. Addon includes in-game support for all listed languages.)

REQUIRED LIBRARIES: LibAddonMenu LibPhinixFunctions

Warning: Spoiler



Gold donations are always welcome!
PC NA: @IllusoryID



Features:

Group food & drink tracking currently supports vanilla, Foundry Tactical Combat, Lui Extended, and Bandits User Interface group & raid frames.

Group Food & Drink Buffs will optionally show the icon of each member's active food or drink buff next to their group or raid frame. All craftable and Cyrodilic food is supported, as well as Crown and garbage food you find in the world. When someone's food buff runs out there is an option to show a red X icon which makes it obvious so they can be reminded.

By default the addon will simply show the icon for the active buff when they have it, and no icon at all when they have no food or drink buff. There are also options to configure the left-right and up-down offset position for group and raid icons separately in order to show them where you want them.


Click here to view my other addons, or view my Skyrim mods here.
1.13:
- Updated API version for Greymoor.

1.12:
- Added event filters for food/drink buff checks to speed up performance.

1.11:
- Added support for new Witch's Festival food buffs.

1.10:
- Updated API for Harrowstorm.
- Removed dependency on LibStub.
- Various fixes and code maintenance.

1.09:
- Updated API version for Scalebreaker.

1.08:
- Hopefully fixed a typo causing errors with the Bandit UI support module.

1.07:
- Added proper detection of enabled group and raid frame addons on startup. Group Food & Drink Buffs should now automatically configure the proper frame type under addon settings based on your currently enabled group/raid frames.
- Added the chat command "/ready" to send a group ready check.
- Migrated global functions to LibPhinixFunctions for speed and streamlining of code. Please manually install the LibPhinixFunctions library.

1.06:
- Slightly modified the options for icon size to use a table instead of a slider which is more intuitive.
- Minor cleanup and consolidation of some language strings and code.

1.05:
- Complete re-write for Wrathstone.
- Removed included libs and added note to install separately to avoid possible out of date errors.
- Added support for all new food and drinks currently in the game.
- Added support for Foundry Tactical Combat, LUI Extended, and Bandits User Interface group and raid frames (NOTE: You must select the frames you are using in the options!).
- Added ability to move icons up and down as well as left and right.
- Many other improvements.
Post A Reply Comment Options
Unread 03/31/20, 05:41 PM  
Baertram
 
Baertram's Avatar
AddOn Author - Click to view AddOns

Forum posts: 2983
File comments: 3607
Uploads: 62
Hm interesting. Maybe this works for all of the food and drink buffs but I doubt as ZOs is not very consistent with it's data And 66125 actually could also be an itemId of a normal item like the Alessian Cuirass. The ids are not unque afaik. At least not "across their intended usages" like itemIds and abilityIds.


The lib is not using itemlinks, but a collector checking all the possible ability Ids info (radius, distance, duration, costs of powertypes, channel and cast time and target descriptor = "yourself" + blacklisted ability names) to match only the food and drink abilityIds.
Maybe there are still old ones in the ZOs data but they curerntly still return the appropriate ability names like
"Increase maximum life" so we asume they can still be active on the player.
Report comment to moderator  
Reply With Quote
Unread 03/31/20, 05:09 PM  
Phinix
 
Phinix's Avatar
AddOn Author - Click to view AddOns

Forum posts: 155
File comments: 1158
Uploads: 30
[quote=Scootworks]
Originally Posted by Phinix
aaaaah wait. this id‘s are not itemId‘s! they are abilityId‘s
Maybe I am missing something about how the library is looking up whether you have a food or drink buff. In this addon I have a database of all the ID's of buff effects possible to have from all the different food and drink items. I saw that your table also has all of these same ID's.

However when I noticed it had a bunch of other ID's in the same table that mine didn't have I wanted to check really quick if they were actually food or drink effect ID's since I would want to add them to my table if I had somehow missed them (I have been gone a while).

The link interpreter only handles links for things like consumables or equippable items, so if you give it an ability ID it either matches it to the closest valid link item (a consumable or item with a matching string ID sequence, or however ZOS does it) or else it simple fails to convert (nil) which you will notice because pasting it in chat will not convert to a link and you will see the whole custom link text.

For example, a link for the ability 35771 which is for the Stage 1 Vampirism buff pasted into chat (or exported by a function) will not convert and the entire '|H1:item:35771:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0|h|h' will show in chat. I call that a nil conversion.

However pasting the ability 45902 which is the Off-Balance debuff does convert the link into a close-matching valid link, and outputs "[Recipe: Rihad Beet and Garlic Salad]" to chat. This is obviously wrong, but for my purpose of testing whether these ID's were for consumable effects not included in my database, either scenario SHOULD be enough to say whether they are food or drink buffs.

I suppose it is possible the link interpreter could match an invalid ability link to a valid food or drink buff effect and give a "false positive" for an item being a food or drink buff effect when it really wasn't. That would make automating detection of consumable buff effect sources problematic in a script without some function in the API available to query it (GetEffectSourceType(...) with one possible return value being "FOOD_OR_DRINK_EFFECT" but that is probably wishful thinking.

Anyway, maybe it is useful for LibFoodDrinkBuff as well since I don't know if it is intended to have ability or item ID's in the food & drink buff effect table. ZOS has on some occasions removed ID's from the game as well as changed ID's for certain things.

I think it is a law that older systems tend towards entropy as randomness increases.
__________________
My Addons: ESO Master Recipe List - SALTI - Dungeon Tracker - EZReport - Poison Master - Vampire's Woe - Chat Window Manager ... (more)
Also co-author for: Azurah - Srendarr - Show Motifs

PC NA @IllusoryID
Last edited by Phinix : 03/31/20 at 05:10 PM.
Report comment to moderator  
Reply With Quote
Unread 03/31/20, 04:37 PM  
Scootworks
 
Scootworks's Avatar
AddOn Author - Click to view AddOns

Forum posts: 289
File comments: 149
Uploads: 26
Originally Posted by Phinix
Originally Posted by Baertram
What does "Alessian Cuirass" have to do with an abilityId opf a buff? These are no itemIds of itemlinks! So what do you mean you have created a link string of them? Makes no sense!
The block of bad ID's I pasted before is not in any special format. I just put the ID from the beta LibFoodDrinkBuff followed by the name of the actual item that ID is associated with in game.

As for how I did that? It is easy! From the wiki article "How to create custom links", you can make a working link using any valid game ID by wrapping it in the proper syntax and pasting it in chat. The game engine will send this to the link interpreter and output an actual working link you can click.

So to test these ID's what I did was take each ID, for example 66125, and wrap it in the proper (generic) syntax:

Code:
|H1:item:66125:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0|h|h
Paste that into chat and it will create an actual working link for that ID, which is how you can get the name of the item it links to. If you want to use it in functions in place of an actual link you have to wrap it in ur double quotes ("").
aaaaah wait. this id‘s are not itemId‘s! they are abilityId‘s
__________________
EU Server - SŁĄuGhTerHØuSe
Report comment to moderator  
Reply With Quote
Unread 03/31/20, 04:24 PM  
Phinix
 
Phinix's Avatar
AddOn Author - Click to view AddOns

Forum posts: 155
File comments: 1158
Uploads: 30
Originally Posted by Baertram
What does "Alessian Cuirass" have to do with an abilityId opf a buff? These are no itemIds of itemlinks! So what do you mean you have created a link string of them? Makes no sense!
The block of bad ID's I pasted before is not in any special format. I just put the ID from the beta LibFoodDrinkBuff followed by the name of the actual item that ID is associated with in game.

As for how I did that? It is easy! From the wiki article "How to create custom links", you can make a working link using any valid game ID by wrapping it in the proper syntax and pasting it in chat. The game engine will send this to the link interpreter and output an actual working link you can click.

So to test these ID's what I did was take each ID, for example 66125, and wrap it in the proper (generic) syntax:

Code:
|H1:item:66125:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0|h|h
Paste that into chat and it will create an actual working link for that ID, which is how you can get the name of the item it links to. If you want to use it in functions in place of an actual link you have to wrap it in double quotes ("").
__________________
My Addons: ESO Master Recipe List - SALTI - Dungeon Tracker - EZReport - Poison Master - Vampire's Woe - Chat Window Manager ... (more)
Also co-author for: Azurah - Srendarr - Show Motifs

PC NA @IllusoryID
Last edited by Phinix : 03/31/20 at 04:27 PM.
Report comment to moderator  
Reply With Quote
Unread 03/31/20, 03:01 PM  
Scootworks
 
Scootworks's Avatar
AddOn Author - Click to view AddOns

Forum posts: 289
File comments: 149
Uploads: 26
Originally Posted by Baertram
doh, sorry. I had copied the text 66125 with the blank at the end and pasted it into the search
Originally Posted by Baertram
But still: What does "Alessian Cuirass" have to do with an abilityId opf a buff? These are no itemIds of itemlinks! So what do you mean you have created a link string of them? Makes no sense!
These numbers are abilityIds (of the buffs on your player).
Check the library's function code of the "collector" for an example how to scan all buff ids ingame (chat slash command /dumpfdb). Those are not itemIds nor itemLinks.

The group stuff can be checked via the unitTag as well, like "player" can be used for yourself the unittags for the group members was somethiing like group1, group2 etc. I think (or maybe differently, not sure anymore).

Edit:
Yes I was right. There is a fixed prefix "grouP" or "boss" and a counter after that creating the unitTag concatenated at the end:

Code:
REGISTER_FILTER_UNIT_TAG    Any event with a unitTag argument    string unitTag    Filter for the exact unitTag
REGISTER_FILTER_UNIT_TAG_PREFIX    Any event with a unitTag argument    string unitTagPrefix    Filter for a unitTag that has multiple instances (e.g. group, boss)


here is an example:

Lua Code:
  1. LIB_FOOD_DRINK_BUFF:RegisterAbilityIdsFilterOnEventEffectChanged("Test", function(...)
  2.     local output = ""
  3.     local changeType = select(1, ...)
  4.     if changeType == EFFECT_RESULT_FADED then
  5.         output = "fade"
  6.     elseif changeType == EFFECT_RESULT_GAINED then
  7.         output = "gain"
  8.     end
  9.     if output ~= "" then
  10.         df("%s: %s effect", GetUnitName(select(4, ...)), output)
  11.     end
  12. end, REGISTER_FILTER_UNIT_TAG_PREFIX, "group")
__________________
EU Server - SŁĄuGhTerHØuSe
Report comment to moderator  
Reply With Quote
Unread 03/31/20, 02:43 PM  
Baertram
 
Baertram's Avatar
AddOn Author - Click to view AddOns

Forum posts: 2983
File comments: 3607
Uploads: 62
doh, sorry. I had copied the text 66125 with the blank at the end and pasted it into the search
But still: What does "Alessian Cuirass" have to do with an abilityId opf a buff? These are no itemIds of itemlinks! So what do you mean you have created a link string of them? Makes no sense!
These numbers are abilityIds (of the buffs on your player).
Check the library's function code of the "collector" for an example how to scan all buff ids ingame (chat slash command /dumpfdb). Those are not itemIds nor itemLinks.
You can use GetAbilityName(abilityId) for those ids and they should return values.

The group stuff can be checked via the unitTag as well, like "player" can be used for yourself the unittags for the group members was somethiing like group1, group2 etc. I think (or maybe differently, not sure anymore).

Edit:
Yes I was right. There is a fixed prefix "grouP" or "boss" and a counter after that creating the unitTag concatenated at the end:

Code:
REGISTER_FILTER_UNIT_TAG	Any event with a unitTag argument	string unitTag	Filter for the exact unitTag
REGISTER_FILTER_UNIT_TAG_PREFIX	Any event with a unitTag argument	string unitTagPrefix	Filter for a unitTag that has multiple instances (e.g. group, boss)
Last edited by Baertram : 03/31/20 at 03:10 PM.
Report comment to moderator  
Reply With Quote
Unread 03/31/20, 11:34 AM  
Phinix
 
Phinix's Avatar
AddOn Author - Click to view AddOns

Forum posts: 155
File comments: 1158
Uploads: 30
Originally Posted by Baertram
Just noticed: You should also maybe add an event filter on the unitTag "player" for the food stuff to be sure the event only triggers for your own buffs!
With Group Food & Drink Buffs, the OnEffectChanged callback actually fires OnGroupChanged() which only processes if you are in a group (it includes the player's group ID). It doesn't actually track anything if the player is solo. Not sure if you can set up an event filter to only fire for group members? Can't find the documentation on the feature yet.

I might try and add an option in Srendarr to only track things that are whitelisted for people that value performance over completeness, and re-register the events with filters if they select that option. Not sure if anyone would want such a feature.

Originally Posted by Baertram
My hybrid solution was just an attempt to make your addon maintainable automatically even if you are not around but the users decide to install the library.
I appreciate that. If it looks like I will be gone for an extended time I will reconsider.

Originally Posted by Baertram
Thanks for the hint about the nil abilityIds but are those abilityIds you have posted? Looks like item names at least? And the number 66125 is not in our library data at all?
It probably isn't in the live version. In the beta version you linked me though it is, along with the others. I just made a link string out of them and tested them in game with a chat script to see what they were because I saw there were things in the beta database that weren't in mine. The ID 66125 is on line 13:

Code:
	[66125] = LFDB_BUFF_TYPE_MAX_HEALTH, -- Increase Max Health
It is in the lib.DRINK_BUFF_ABILITIES table.
__________________
My Addons: ESO Master Recipe List - SALTI - Dungeon Tracker - EZReport - Poison Master - Vampire's Woe - Chat Window Manager ... (more)
Also co-author for: Azurah - Srendarr - Show Motifs

PC NA @IllusoryID
Last edited by Phinix : 03/31/20 at 11:35 AM.
Report comment to moderator  
Reply With Quote
Unread 03/31/20, 05:09 AM  
Baertram
 
Baertram's Avatar
AddOn Author - Click to view AddOns

Forum posts: 2983
File comments: 3607
Uploads: 62
Originally Posted by Phinix
I never did any performance tests to see if the difference between running an index nil check against a small database and pre-adding filters was actually noticeable in demanding situations (like big battles) but I will take your word for it and agree that any performance increase it brings certainly can't hurt, even if there wasn't an immediately noticeable difference (since things do add up).
It makes a difference in the end as the filtering happens before lua and all unneeded calls to lua functions + code would be just "skipped". So each simply nil check etc. would be skipped as well, which can make quite a noticeable difference if there will most likely be 200+ buff changes = 200 functions calls + nil checks in a table structure in only 1 fight.

Just noticed: You should also maybe add an event filter on the unitTag "player" for the food stuff to be sure the event only triggers for your own buffs!

For Srendarr it could help as well, I think yes we were talking about that in the past. But it would be complicated to keep track of all registered buffIds and filters and to clean them up (unregistering the appropriate event names) each time a change in the settings is done.
In the end I guess it could make a real diference if there are several buffs manually tracked on "whitelists" or "show at buff bar x". But maybe the filters would also just skip all other buffs this way and thus make the addon not work properly anymore. Not sure if you can add a filter to e.g. 5 abilityIds but also keep track of others in general, but I doubt it as this would be against the filter idea



LibFoodDrinkBuff
No problem and not taken as offense
The lib actually is used in some addons about food/drinks and inventory management already.

My hybrid solution was just an attempt to make your addon maintainable automatically even if you are not around but the users decide to install the library.


Thanks for the hint about the nil abilityIds but are those abilityIds you have posted? Looks like item names at least? And the number 66125 is not in our library data at all?
Code:
66125 - Alessian Cuirass
66132 - Alessian Cuirass
66137 - Alessian Pauldron
66141 - Alessian Gauntlets
84732 - Maul of the Sun
84733 - Greatsword of the Sun
85497 - Maul of Salvation
86560 - nil
86674 - Restoration Staff of the Storm Knight
86678 - Gauntlets of the Storm Knight
86747 - Sword of Necropotence
92433 - nil
92476 - Barkskin Bow
17407 - nil
17577 - nil
17581 - nil
17608 - nil
17614 - nil
66128 - Alessian Helm
66130 - Alessian Pauldron
84736 - Inferno Staff of the Sun
85484 - Restoration Staff of Salvation
92435 - nil
92437 - nil
92474 - Barkskin Greatsword
92477 - Barkskin Inferno Staff
127537 - Pillar Of Nirn Shield
127578 - Pillar Of Nirn Jack
127619 - Pillar Of Nirn Boots
127736 - Earthgore Epaulets
Last edited by Baertram : 03/31/20 at 05:21 AM.
Report comment to moderator  
Reply With Quote
Unread 03/30/20, 06:17 PM  
Phinix
 
Phinix's Avatar
AddOn Author - Click to view AddOns

Forum posts: 155
File comments: 1158
Uploads: 30
Originally Posted by Baertram
Warning: Spoiler
Hi Baertram.

I really appreciate you bringing up the event filter functions they added a while back and showing an example how they can be used in this case which is helpful. I remember talking to someone (maybe you?) about it back when it came out and how it wouldn't be of much use for Srendarr since you really have to track EVERYTHING in that addon.

I never did any performance tests to see if the difference between running an index nil check against a small database and pre-adding filters was actually noticeable in demanding situations (like big battles) but I will take your word for it and agree that any performance increase it brings certainly can't hurt, even if there wasn't an immediately noticeable difference (since things do add up).

I will definitely add food/drink ID pre-filters fo the Effect_Changed event next update.

I also took a look at the beta for LibFoodDrinkBuff 15, and while I definitely see the benefit for such a library in many use cases, I do not at this time see a need for this addon to include it.

My reasoning is simply this: There are many functions LibFoodDrinkBuff provides which this addon simply would not make use of as others may. The only aspect of the library I could see this one using would be the food/drink database, however I already have a script to automate updating the database this addon already contains (assuming I am around) and so adding support for LibFoodDrinkBuff just to have another database source of food/drink ID's seems unnecessarily redundant.

I also found that many of the IDs in the beta release are either not for food/drink items or have been removed from the game (?):

Warning: Spoiler

I hope you will understand and do not take offense. I do think LibFoodDrinkBuff will find use in many applications.
__________________
My Addons: ESO Master Recipe List - SALTI - Dungeon Tracker - EZReport - Poison Master - Vampire's Woe - Chat Window Manager ... (more)
Also co-author for: Azurah - Srendarr - Show Motifs

PC NA @IllusoryID
Report comment to moderator  
Reply With Quote
Unread 03/30/20, 05:47 AM  
Baertram
 
Baertram's Avatar
AddOn Author - Click to view AddOns

Forum posts: 2983
File comments: 3607
Uploads: 62
Hey Phinix,

already asked you a while ago but now i've prepared a version including LibFoodDrinkBuff for you so you might have a look:
https://www.dropbox.com/s/a7h1tz2wa4...kBuff.zip?dl=0

It supports both: Your code and LibFoodDrinkBuff (added as optional dependency in version 15 -> It's not out yet but we worked on it to provide more API functions and global constants to support addons like yours properly. You can find verison 15 here: https://github.com/Scootworks/LibFoo...Buff/tree/beta)

What I have changed in your addon:
-Updated DE translations a bit
-Added optional dependecy to LibFoodDrinkBuff>=15
-Changed your table creation in /bin/fdbDB.lua so it will either run your normal code or use LibFoodDrinkBuff (if loaded properly) to get the abilityIds and buffTypes.
-Added the difference of your internal code table and LFDB table to the detection of the junk/normal food buffs in the group frames
-Changed your event_effect_changed callback function to ONLY register the event for each abilityId in the table GroupFDB.fdbDB, using event filters.
This way you do not need to react in your addon on each effect changed, which will be quite thousands during fights!!! You checked the abilityId of the effect against your table then GroupFDB.fdbDB.
But this will trigger the callback function way too often, where as the event filter will register the filter before the lua code at the C code already and will make the callback function ONLY fire for the abilityIds needed.
-Added some local speed up variables like local fdbDB = GroupFDB.fdbDB etc. for reused table variables

I did not test it so far as LibFoodDrinkBuff v15 is still untested but I hope you see via my example how to use it, and that it's easy to implement for you as well.
And if not you'll at least be able to port the eventfilters to your code as it makes a difference, + maybe the changed translations (minor change)

Feel free to write me a PM if you got questions about my code example.
Last edited by Baertram : 03/30/20 at 05:50 AM.
Report comment to moderator  
Reply With Quote
Unread 03/29/20, 04:20 PM  
Phinix
 
Phinix's Avatar
AddOn Author - Click to view AddOns

Forum posts: 155
File comments: 1158
Uploads: 30
Originally Posted by Nudel
This addon doesn't recognize the new Witches' Festival foods, including Bewitched Sugar Skulls, Disastrously Bloody Mara, and Pack Leader's Bone Broth. If a party member is using any of those, the addon displays the icon for having no food buff active.
Thanks for reminding me! Lots of addons to update...

Originally Posted by Kenza
To fix, add these lines to fdbDB.lua, under Festivals, Chapters, and DLC

[127572] = {buffType = 5}, -- Pack Leader's Bone Broth
[127596] = {buffType = 5}, -- Bewitched Sugar Skulls
[127531] = {buffType = 5}, -- Disastrously Bloody Mara
Just verified these ID's are correct in-game and re-uploaded with the new recipes added.
__________________
My Addons: ESO Master Recipe List - SALTI - Dungeon Tracker - EZReport - Poison Master - Vampire's Woe - Chat Window Manager ... (more)
Also co-author for: Azurah - Srendarr - Show Motifs

PC NA @IllusoryID
Last edited by Phinix : 03/29/20 at 04:38 PM.
Report comment to moderator  
Reply With Quote
Unread 03/29/20, 03:03 PM  
Kenza
AddOn Author - Click to view AddOns

Forum posts: 31
File comments: 174
Uploads: 1
Originally Posted by Nudel
This addon doesn't recognize the new Witches' Festival foods, including Bewitched Sugar Skulls, Disastrously Bloody Mara, and Pack Leader's Bone Broth. If a party member is using any of those, the addon displays the icon for having no food buff active.
To fix, add these lines to fdbDB.lua, under Festivals, Chapters, and DLC

[127572] = {buffType = 5}, -- Pack Leader's Bone Broth
[127596] = {buffType = 5}, -- Bewitched Sugar Skulls
[127531] = {buffType = 5}, -- Disastrously Bloody Mara
Report comment to moderator  
Reply With Quote
Unread 01/16/20, 07:29 AM  
nocturnal-disquiet

Forum posts: 0
File comments: 1
Uploads: 0
Originally Posted by Nudel
This addon doesn't recognize the new Witches' Festival foods, including Bewitched Sugar Skulls, Disastrously Bloody Mara, and Pack Leader's Bone Broth. If a party member is using any of those, the addon displays the icon for having no food buff active.
Please update the food library! I love this add on but it's unhelpful without the full list of buff food/drinks.
Report comment to moderator  
Reply With Quote
Unread 11/19/19, 04:08 PM  
Nudel

Forum posts: 0
File comments: 130
Uploads: 0
This addon doesn't recognize the new Witches' Festival foods, including Bewitched Sugar Skulls, Disastrously Bloody Mara, and Pack Leader's Bone Broth. If a party member is using any of those, the addon displays the icon for having no food buff active.
Report comment to moderator  
Reply With Quote
Unread 03/07/19, 02:15 PM  
Phinix
 
Phinix's Avatar
AddOn Author - Click to view AddOns

Forum posts: 155
File comments: 1158
Uploads: 30
Originally Posted by Baertram
Hi Phinix.
Just in case you did not know: There is a library which supports the food and drink buffs so you do not need to hardcode it in your addon

https://www.esoui.com/downloads/info...DrinkBuff.html
Hey Baertram,

Yes I am aware. I remember working on that with Scootworks once upon a time. I would probably have used it however I originally built this before it existed anyway and had most of the table values already there.

I could probably have modified the database references since I basically re-wrote the entire addon from scratch to incorporate my new method for group aura tracking which is far superior to previous attempts, but I guess I opted for a "less is more" philosophy for library inclusion, at least in this particular case.
__________________
My Addons: ESO Master Recipe List - SALTI - Dungeon Tracker - EZReport - Poison Master - Vampire's Woe - Chat Window Manager ... (more)
Also co-author for: Azurah - Srendarr - Show Motifs

PC NA @IllusoryID
Last edited by Phinix : 03/07/19 at 02:15 PM.
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.