Coder Social home page Coder Social logo

persolootroll's Introduction

PersoLootRoll

This addon brings back the Need-Greed loot system and makes it work for Personal Loot. The goal is to make asking for, giving away and trading loot easy and straight forward, in PUGs as well as organized guild groups. Everything is designed to be as streamlined and out of your way as possible, so you can focus on playing the game instead of manually checking and keeping track of items you and others want.

Get it from Curse or WoWInterface!

Features

Roll on tradable personal loot from others

Whenever an item drops for someone in your group that might be an upgrade for you, you will get a good old Need-Greed-Pass roll window (remember those? :P) to decide if you want it or not. Rolling "Need" or "Greed" will add the item to your actions list (see below) for easy asking and trading, and optionally automatically send a whisper message to the owner asking for the item. If the owner uses PLR or another compatible addon as well, then all this happens in the background without need for whisper messages.

Give away loot you don't want

You also get a similar Keep-Greed-GiveAway roll window when you loot something that your party members might be interested in. If you choose "Greed" or "Give Away", then PLR offers the item to your group through party chat and handles accepting bids, picking a winner and trading the item for you. If you choose "Keep" on the other hand, then it'll automatically answer incoming whisper requests with "I need that myself".

Keep track of pending actions, and easily complete them

All your pending actions (asking for loot, trading, ...) will be shown in a simple list on screen, along with buttons for completing them.

Only bothers you when it actually makes sense

PLR is especially smart when it comes to choosing the right items for you. Many factors are checked before you are asked to roll on or give away an item, e.g. if it is actually tradable, what ilvl you and your party members have equipped, class restrictions, trinket type, and so on. It will only ask you to decide when it actually makes sense, while making sure you don't miss any loot you might be interested in.

Works for PUGs, organized groups and even masterlooting (Dragonflight update TBD)

It works great for randomly giving away loot in PUGs and organized groups, but it also has a masterloot mode where one person decides who should get which item. The masterlooter can also configure things like custom answers and a loot council.

Can be configured to your liking

Just about everything can be easily tweaked in the options menu. This includes whether or not to send messages to other players and customizing them, what items are considered "useful" (e.g. only certain specs or transmog missing) and which parts of the UI you want to see. See this Wiki page for details.

Works with other addons

This includes the popular loot roll addon Personal Loot Helper, Pawn to only roll on stuff that actually has your preferred stats, and EPGP to give away loot based on PR value or credit GP for awarded items.

More details can be found here.

Commands

Use /plr or /PersoLootRoll to open the rolls overview window, manually start rolling for items in your bag etc.

  • /plr: Open rolls window
  • /plr help: Print this help message
  • /plr roll [item]* (<owner> <timeout>): Start a roll for one or more item(s)
  • /plr bid [item] (<owner> <bid>): Bid for an item from another player
  • /plr trade (<player>) Trade with the given player or your current target
  • /plr test Start a test roll (only you will see it)
  • /plr options: Open options window
  • /plr config: Change settings through the command line
  • /plr log Show log

Development commands:

  • /plr debug Toggle debug mode
  • /plr trinkets Generate and show a new list of trinkets
  • /plr instances Generate and show a new list of instances

Legend: [..] = item link, * = one or more times, (..) = optional

Translation

PLR is translated (incl. chat messages) to

If you want to help translate it to your language or correct translation errors you found then please visit the Curseforge Translation section and also check out this wiki page for some tips.

Development

This project is fully open-source and the source code can be found on GitLab. To test out new features there are also beta versions available. Please report any bugs you find with these versions should you be brave enough to install them, so the stable releases will be as bug-free as possible.

Bugs

Please create a new entry on the issue tracker if you encounter any bugs. You can also post little things here in the comments. Also, in order to better identify the problem please type in /plr log right after the bug happend, and add the result to your issue/post.

Features

You can suggest new features and vote on existing suggestions here.

Build

To build a package from source you need to copy .release/.env.example to .release/.env, fill in the relevant infos (projects IDs and API tokens) and then run .release/release.sh. The completed file(s) will be available in the .release folder. More information about possible arguments to the release script can be found here.

Test

You can run tests in-game or on the commandline. For in game tests install the WoWUnit addon so the tests will automatically run on login. For the CLI install the LUA binary for your OS and then run lua Test.lua to test the current working dir, or lua Test.lua -b to run the tests against a finished build.

Donate

Click on the "Donate" button if you want to support the development of this addon or just buy me a beer. Always appreciated, never required!

Donate

persolootroll's People

Contributors

shrugal avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

persolootroll's Issues

Lua error in Events.lua:506

Oops ^^

PLR v12

In mythic+

1x PersoLootRoll\Events.lua:506: attempt to perform arithmetic on local 'version' (a nil value)
PersoLootRoll\Events.lua:506: in function <PersoLootRoll\Events.lua:493>
PersoLootRoll\Util\Comm.lua:216: in function <PersoLootRoll\Util\Comm.lua:213>
PersoLootRoll\Util\Comm.lua:206: in function <PersoLootRoll\Util\Comm.lua:202>
[string "safecall Dispatcher[4]"]:4: in function <[string "safecall Dispatcher[4]"]:4>
[C]: ?
[string "safecall Dispatcher[4]"]:13: in function `?'
...bot\Libs\CallbackHandler-1.0\CallbackHandler-1.0-7.lua:90: in function `Fire'
...eAskMrRobot\Libs\AceComm-3.0\AceComm-3.0-12.lua:264: in function <...eAskMrRobot\Libs\AceComm-3.0\AceComm-3.0.lua:246>

plr

%s in translations

I'm currently translating your addon in French and I need to change the order of some %s.
Is it possible for you to support this (by numbering these %s for example) ?

For exemple the correct translation for Whispering is disabled, you need to ask %s1 for %s2 yourself -> %s3. is Le chuchotement est désactivé, vous devez demander %s2 à %s1 vous-même -> %s3

LUA error in Hooks.lua

Hey
I don't know exactly when this starts happening, but I think it's after either I looted an item or had to roll on someone elses. From then on everytime I open my bags I get this error (copied from bugsack):

PersoLootRoll\Hooks.lua:48: attempt to index a nil value
PersoLootRoll\Hooks.lua:48: in function <PersoLootRoll\Hooks.lua:46>
(tail call): ?
CanIMogIt\Overlay\Loot-Loot.lua:19: in function `LootFrame_CIMIUpdateIcon'
CanIMogIt\Overlay\Loot-Loot.lua:58: in function `func'
CanIMogIt\Overlay\overlay.lua:145: in function `ItemOverlayEvents'
CanIMogIt\Overlay\Containers.lua:25: in function <CanIMogIt\Overlay\Containers.lua:24>
[C]: ?
[C]: in function `ToggleBag'
FrameXML\ContainerFrame.lua:139: in function `ToggleBackpack'
FrameXML\ContainerFrame.lua:359: in function `OpenBackpack'
FrameXML\ContainerFrame.lua:1503: in function <FrameXML\ContainerFrame.lua:1480>
[C]: ?
[C]: in function `ToggleAllBags'
[string "OPENALLBAGS"]:1: in function <[string "OPENALLBAGS"]:1>

Locals:
id = -2
(*temporary) = nil
(*temporary) = -2
(*temporary) = "attempt to index a nil value"
Roll = <table> {
 HideRollFrame = <function> defined @PersoLootRoll\Roll.lua:745
 FromPlrId = <function> defined @PersoLootRoll\Roll.lua:291
 GetRollFrame = <function> defined @PersoLootRoll\Roll.lua:712
 ACTION_ASK = "ASK"
 ShouldEnd = <function> defined @PersoLootRoll\Roll.lua:551
 End = <function> defined @PersoLootRoll\Roll.lua:586
 BID_GREED = 2
 EVENT_START = "START"
 Clear = <function> defined @PersoLootRoll\Roll.lua:276
 EVENT_VOTE = "VOTE"
 Restart = <function> defined @PersoLootRoll\Roll.lua:398
 IsRecent = <function> defined @PersoLootRoll\Roll.lua:1018
 UnitCanBid = <function> defined @PersoLootRoll\Roll.lua:971
 ShowRollFrame = <function> defined @PersoLootRoll\Roll.lua:724
 Vote = <function> defined @PersoLootRoll\Roll.lua:508
 EVENT_TRADE = "TRADE"
 Start = <function> defined @PersoLootRoll\Roll.lua:333
 STATUS = <table> {
 }
 STATUS_PENDING = 0
 BID_DISENCHANT = 3
 EVENT_CHAT = "CHAT"
 Update = <function> defined @PersoLootRoll\Roll.lua:166
 EVENT_BID = "BID"
 EVENT_CANCEL = "CANCEL"
 BID_PASS = 4
 HasMasterlooter = <function> defined @PersoLootRoll\Roll.lua:991
 EVENT_CHANGE = "CHANGE"
 STATUS_CANCELED = -1
 CanBeWonBy = <function> defined @PersoLootRoll\Roll.lua:951
 ACTION_AWARD = "AWARD"
 MAX_WHISPERS = 2
 events = <table> {
 }
 Trade = <function> defined @PersoLootRoll\Roll.lua:679
 TIMEOUT_RECENT = 120
 CanBeVotedOn = <function> defined @PersoLootRoll\Roll.lua:976
 ShouldAdvertise = <function> defined @PersoLootRoll\Roll.lua:780
 TIMEOUT = 15
 EVENT_AWARD = "AWARD"
 ToPlrId = <function> defined @PersoLootRoll\Roll.lua:290
 EVENT_CLEAR = "CLEAR"
 IsPlrId = <function> defined @PersoLootRoll\Roll.lua:289
 Validate = <function> defined @PersoLootRoll\Roll.lua:1028
 EVENT_ADVERTISE = "ADVERTISE"
 TIMEOUT_PER_ITEM = 5
 SendStatus = <function> defined @PersoLootRoll\Roll.lua:827
 EVENTS = <table> {
 }
 ACTION_VOTE = "VOTE"
 BID_NEED = 1
 CanBeRestarted = <function> defined @PersoLootRoll\Roll.lua:986
 UnitCanVote = <function> defined @PersoLootRoll\Roll.lua:981
 ACTION_TRADE = "TRADE"
 GetTimeout = <function> defined @PersoLootRoll\Roll.lua:294
 Bid = <function> defined @PersoLootRoll\Roll.lua:426
 CanBeWon = <function> defined @PersoLootRoll\Roll.lua:946
 CanBeAwarded = <function> defined @PersoLootRoll\Roll.lua:956
 CanBeAwardedTo = <function> defined @PersoLootRoll\Roll.lua:961
 On = <function> defined @Broker_Everything\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:90
 ExtendTimeLeft = <function> defined @PersoLootRoll\Roll.lua:894
 ShowAlertFrame = <function> defined @PersoLootRoll\Roll.lua:757
 DetermineWinner = <function> defined @PersoLootRoll\Roll.lua:909
 Add = <function> defined @PersoLootRoll\Roll.lua:124
 ExtendTimeout = <function> defined @PersoLootRoll\Roll.lua:874
 GetTimeLeft = <function> defined @PersoLootRoll\Roll.lua:869
 Finish = <function> defined @PersoLootRoll\Roll.lua:641
 Advertise = <function> defined @PersoLootRoll\Roll.lua:785
 AddChat = <function> defined @PersoLootRoll\Roll.lua:769
 DELAY = 1
 GetActionTarget = <function> defined @PersoLootRoll\Roll.lua:1011
 EVENT_VISIBILITY = "VISIBILITY"
 ToggleVisibility = <function> defined @PersoLootRoll\Roll.lua:763
 ANSWER_GREED = "GREED"
 Cancel = <function> defined @PersoLootRoll\Roll.lua:655
 GetActionRequired = <function> defined @Interf

Error Hooks:192

Description
When hovering icon in standart Blizzard loot roll frame

Steps that lead to the bug

  1. Standart Blizzard loot roll shown
  2. Hovering icon in roll

Addon version
12.02 (perhaps version 12.03 is also affected)

Your region, realm and language setting
EU-Галакронд (Galakrond), Russian

Additional info
hooks

341x Attempt to find 'this' in non-table object (used '.' instead of ':' ?)
[C]: ?
[C]: in function `SetLootRollItem'
PersoLootRoll\Hooks.lua:192: in function <PersoLootRoll\Hooks.lua:184>
(tail call): ?
[C]: in function `SetLootRollItem'
[string "*:OnEnter"]:2: in function <[string "*:OnEnter"]:1>

Locals:
InCombatSkipped

Chill Mode still instantly offering up loot

Description
Chill mode seems to not be working in all cases. In our raid last night quite a few members with chill mode enabled had their loot instantly offer up. Tonight, I had something instantly offered up in a M+.

Log from the M+:

~ PersoLootRoll ~ Version: 15 ~ Date: Fri Sep 21 23:03:39 2018 ~ Locale: enUS ~ Realm: US-Silver Hand (enUS) ~
[2977334.8] INFO: Debugging enabled
[2977452.5] INFO: You are now the masterlooter.
[2980117.7] DEBUG: "Roll.Update", {ownerId = 1, timeout = 50, item = {owner = "Darkenvar", eligible = 0, link = "[Concealed Fencing Plates]"}, status = 0, owner = "Darkenvar", itemOwnerId = 1}, "Darkenvar", nil
[2980118.7] DEBUG: "Roll.Update", {ownerId = 1, timeout = 50, item = {owner = "Darkenvar", eligible = 0, link = "[Concealed Fencing Plates]"}, status = -1, owner = "Darkenvar", itemOwnerId = 1}, "Darkenvar", {timers = {}, whispers = 0, votes = {}, item = {equipLoc = "INVTYPE_WRIST", color = "a335ee", classId = 4, subClassId = 4, bindType = 1, infoLevel = 3, isEquippable = true, expacId = 7, bindTimeout = true, quality = 4, linkLevel = 120, maxLevel = 345, attributes = {127, 4 = 127}, link = "[Concealed Fencing Plates]", id = 158311, owner = "Darkenvar", subType = "Plate", isSoulbound = true, effectiveLevel = 345, isOwner = false, name = "Concealed Fencing Plates", position = {}, texture = 1780200, isRelic = false, isTradable = true, level = 345}, status = 0, created = 1537592485, rolls = {}, timeout = 50, id = 1, owner = "Darkenvar", eps = {}, ownerId = 1, isOwner = false, itemOwnerId = 1, prs = {}, bids = {}}
[2980118.7] VERBOSE: Canceling roll for [Concealed Fencing Plates] from [Darkenvar].
[2980125.8] DEBUG: "Roll.Update", {ownerId = 2, timeout = 100, item = {owner = "Kokabrew", eligible = 0, link = "[Silver-Trimmed Breeches]"}, status = 0, owner = "Kokabrew", itemOwnerId = 2}, "Kokabrew", nil
[2980126.9] DEBUG: "Roll.Update", {ownerId = 2, timeout = 100, item = {owner = "Kokabrew", eligible = 2, link = "[Silver-Trimmed Breeches]"}, status = 0, owner = "Kokabrew", itemOwnerId = 2}, "Kokabrew", {timers = {}, whispers = 0, votes = {}, item = {equipLoc = "INVTYPE_LEGS", color = "a335ee", classId = 4, subClassId = 2, bindType = 1, infoLevel = 3, eligible = {Oroth = true, Lohruk = false, Kokabrew = true}, isEquippable = true, expacId = 7, bindTimeout = true, quality = 4, linkLevel = 120, maxLevel = 345, attributes = {4 = 226, 226}, link = "[Silver-Trimmed Breeches]", id = 159297, owner = "Kokabrew", subType = "Leather", isSoulbound = true, effectiveLevel = 345, isOwner = false, name = "Silver-Trimmed Breeches", position = {}, texture = 1941313, isRelic = false, isTradable = true, level = 345}, status = 0, created = 1537592493, rolls = {}, timeout = 100, id = 2, owner = "Kokabrew", eps = {}, ownerId = 2, isOwner = false, itemOwnerId = 2, prs = {}, bids = {}}
[2980161.0] DEBUG: "Roll.Update", {ownerId = 2, item = {owner = "Kokabrew", eligible = 2, link = "[Silver-Trimmed Breeches]"}, itemOwnerId = 2, started = 1537592542, status = 1, owner = "Kokabrew", timeout = 100}, "Kokabrew", {timers = {}, whispers = 0, votes = {}, item = {equipLoc = "INVTYPE_LEGS", color = "a335ee", classId = 4, subClassId = 2, bindType = 1, infoLevel = 3, eligible = {Oroth = true, Lohruk = false, Kokabrew = true}, isEquippable = true, expacId = 7, bindTimeout = true, quality = 4, linkLevel = 120, maxLevel = 345, attributes = {4 = 226, 226}, link = "[Silver-Trimmed Breeches]", id = 159297, owner = "Kokabrew", subType = "Leather", isSoulbound = true, effectiveLevel = 345, isOwner = false, name = "Silver-Trimmed Breeches", position = {}, texture = 1941313, isRelic = false, isTradable = true, level = 345}, status = 0, created = 1537592493, rolls = {}, timeout = 100, id = 2, owner = "Kokabrew", eps = {}, ownerId = 2, isOwner = false, itemOwnerId = 2, prs = {}, bids = {}}
[2980161.0] VERBOSE: Starting roll for [Silver-Trimmed Breeches] from [Kokabrew].
[2980172.7] VERBOSE: Passing on [Silver-Trimmed Breeches] from [Kokabrew].
[2980173.3] DEBUG: "Roll.Update", {ownerId = 2, item = {owner = "Kokabrew", eligible = 2, link = "[Silver-Trimmed Breeches]"}, itemOwnerId = 2, started = 1537592542, status = 2, owner = "Kokabrew", timeout = 100}, "Kokabrew", {timers = {bid = {{...}, 3 = true, argsCount = 3, object = {...}, ends = 2980275.996, callback = (fn), delay = 115, func = (fn)}}, whispers = 0, shown = true, votes = {}, item = {equipLoc = "INVTYPE_LEGS", color = "a335ee", classId = 4, subClassId = 2, bindType = 1, infoLevel = 3, eligible = {Oroth = true, Lohruk = false, Kokabrew = true}, isEquippable = true, expacId = 7, bindTimeout = true, quality = 4, linkLevel = 120, maxLevel = 345, attributes = {4 = 226, 226}, link = "[Silver-Trimmed Breeches]", id = 159297, owner = "Kokabrew", subType = "Leather", isSoulbound = true, effectiveLevel = 345, isOwner = false, name = "Silver-Trimmed Breeches", position = {}, texture = 1941313, isRelic = false, isTradable = true, level = 345}, status = 1, created = 1537592493, rolls = {}, timeout = 100, started = 1537592542, id = 2, owner = "Kokabrew", eps = {Oroth = 3857}, ownerId = 2, isOwner = false, itemOwnerId = 2, prs = {Oroth = 12.856666666667}, bid = 4, bids = {Oroth = 4}}
[2980173.3] VERBOSE: Ending roll for [Silver-Trimmed Breeches] from [Kokabrew].
[2980181.8] DEBUG: "Event.Loot", "You receive loot: [Kragg's Rigging Scalers].", "[Kragg's Rigging Scalers]", "Oroth", true
[2980182.0] DEBUG: "Events.Loot.Start", "Oroth"
[2980182.0] VERBOSE: Starting roll for [Kragg's Rigging Scalers] from [Oroth].

Steps that lead to the bug

  1. Have version 15.
  2. Turn on Chill Mode.
  3. Get tradeable loot.
  4. (some people in the M+ group have v14.07, could be a mixed version issue?)

Addon version
v15

Your region, realm and language setting
E.g. US-Silver Hand, English

Additional info
Add any other context or screenshots here.

Call a protected function InCombatLockdown

Description
Got it in party in Molten Core

Addon version
v12.01

Your region, realm and language setting
EU-Галакронд (Galakrond), Russian

Additional info
screenshot_29

Date: 2018-08-01 22:25:31
ID: -2
Error occured in: AddOn: PersoLootRoll
Count: 1
Message: Note: AddOn PersoLootRoll attempted to call a protected function (ToyBox:SetShown()) during combat lockdown.
Debug:
   [C]: SetShown()
   ...AddOns\Blizzard_Collections\Blizzard_Collections.lua:52: CollectionsJournal_UpdateSelectedTab()
   ...AddOns\Blizzard_Collections\Blizzard_Collections.lua:7: CollectionsJournal_SetTab()
   ..\FrameXML\UIParent.lua:957: SetCollectionsJournalShown()
   ..\FrameXML\UIParent.lua:943: ToggleCollectionsJournal()
   ...ce\AddOns\Blizzard_Collections\Blizzard_Wardrobe.lua:1825: WardrobeCollectionFrame_OpenTransmogLink()
   ..\FrameXML\ItemRef.lua:283:
      ..\FrameXML\ItemRef.lua:1
   [C]: ?
   ...ace\AddOns\Blizzard_CombatLog\Blizzard_CombatLog.lua:3510:
      ...ace\AddOns\Blizzard_CombatLog\Blizzard_CombatLog.lua:3452
   (tail call): ?
   (tail call): ?
   ..\FrameXML\ChatFrame.lua:3620: ChatFrame_OnHyperlinkShow()
   [string "*:OnHyperlinkClick"]:1:
      [string "*:OnHyperlinkClick"]:1
Locals:
None
AddOns:
  Swatter, v7.4.5714 (TasmanianThylacine)
  StatusTools, v8.0.1.2
  Auctionator, v5.0.4
  DBMCore, v8.0.1-17-g06183a68f
  DBMDefaultSkin, v
  DBMStatusBarTimers, v
  HandyNotes, vv1.5.2
  HealBot, v8.0.1.0
  HealBotru, v8.0.1.0
  HealBotTips, v8.0.1.0
  NPCScan, v8.0.1.2
  Pawn, v2.2.22
  PersoLootRoll, v12.01
  PetTracker, v8.0.0
  Recount, vv8.0.1a
  ZPerl, v5.5.7
  ZPerlArcaneBar, v
  ZPerlParty, v
  ZPerlPartyPet, v
  ZPerlPlayer, v
  ZPerlPlayerBuffs, v
  ZPerlPlayerPet, v
  ZPerlRaidAdmin, v
  ZPerlRaidFrames, v
  ZPerlRaidHelper, v
  ZPerlRaidMonitor, v
  ZPerlRaidPets, v
  ZPerlTarget, v
  ZPerlTargetTarget, v
  BlizRuntimeLib_ruRU v8.0.1.80000 <none>
  (ck=29c)

2

Date: 2018-08-01 22:25:31
ID: -3
Error occured in: AddOn: PersoLootRoll
Count: 1
Message: Note: AddOn PersoLootRoll attempted to call a protected function (PetJournal:SetShown()) during combat lockdown.
Debug:
   [C]: SetShown()
   ...AddOns\Blizzard_Collections\Blizzard_Collections.lua:51: CollectionsJournal_UpdateSelectedTab()
   ...AddOns\Blizzard_Collections\Blizzard_Collections.lua:7: CollectionsJournal_SetTab()
   ..\FrameXML\UIParent.lua:957: SetCollectionsJournalShown()
   ..\FrameXML\UIParent.lua:943: ToggleCollectionsJournal()
   ...ce\AddOns\Blizzard_Collections\Blizzard_Wardrobe.lua:1825: WardrobeCollectionFrame_OpenTransmogLink()
   ..\FrameXML\ItemRef.lua:283:
      ..\FrameXML\ItemRef.lua:1
   [C]: ?
   ...ace\AddOns\Blizzard_CombatLog\Blizzard_CombatLog.lua:3510:
      ...ace\AddOns\Blizzard_CombatLog\Blizzard_CombatLog.lua:3452
   (tail call): ?
   (tail call): ?
   ..\FrameXML\ChatFrame.lua:3620: ChatFrame_OnHyperlinkShow()
   [string "*:OnHyperlinkClick"]:1:
      [string "*:OnHyperlinkClick"]:1
Locals:
None
AddOns:
  Swatter, v7.4.5714 (TasmanianThylacine)
  StatusTools, v8.0.1.2
  Auctionator, v5.0.4
  DBMCore, v8.0.1-17-g06183a68f
  DBMDefaultSkin, v
  DBMStatusBarTimers, v
  HandyNotes, vv1.5.2
  HealBot, v8.0.1.0
  HealBotru, v8.0.1.0
  HealBotTips, v8.0.1.0
  NPCScan, v8.0.1.2
  Pawn, v2.2.22
  PersoLootRoll, v12.01
  PetTracker, v8.0.0
  Recount, vv8.0.1a
  ZPerl, v5.5.7
  ZPerlArcaneBar, v
  ZPerlParty, v
  ZPerlPartyPet, v
  ZPerlPlayer, v
  ZPerlPlayerBuffs, v
  ZPerlPlayerPet, v
  ZPerlRaidAdmin, v
  ZPerlRaidFrames, v
  ZPerlRaidHelper, v
  ZPerlRaidMonitor, v
  ZPerlRaidPets, v
  ZPerlTarget, v
  ZPerlTargetTarget, v
  BlizRuntimeLib_ruRU v8.0.1.80000 <none>
  (ck=29c)

screenshot_30

Date: 2018-08-01 22:25:31
ID: -4
Error occured in: AddOn: PersoLootRoll
Count: 1
Message: Note: AddOn PersoLootRoll attempted to call a protected function (MountJournal:SetShown()) during combat lockdown.
Debug:
   [C]: SetShown()
   ...AddOns\Blizzard_Collections\Blizzard_Collections.lua:50: CollectionsJournal_UpdateSelectedTab()
   ...AddOns\Blizzard_Collections\Blizzard_Collections.lua:7: CollectionsJournal_SetTab()
   ..\FrameXML\UIParent.lua:957: SetCollectionsJournalShown()
   ..\FrameXML\UIParent.lua:943: ToggleCollectionsJournal()
   ...ce\AddOns\Blizzard_Collections\Blizzard_Wardrobe.lua:1825: WardrobeCollectionFrame_OpenTransmogLink()
   ..\FrameXML\ItemRef.lua:283:
      ..\FrameXML\ItemRef.lua:1
   [C]: ?
   ...ace\AddOns\Blizzard_CombatLog\Blizzard_CombatLog.lua:3510:
      ...ace\AddOns\Blizzard_CombatLog\Blizzard_CombatLog.lua:3452
   (tail call): ?
   (tail call): ?
   ..\FrameXML\ChatFrame.lua:3620: ChatFrame_OnHyperlinkShow()
   [string "*:OnHyperlinkClick"]:1:
      [string "*:OnHyperlinkClick"]:1
Locals:
None
AddOns:
  Swatter, v7.4.5714 (TasmanianThylacine)
  StatusTools, v8.0.1.2
  Auctionator, v5.0.4
  DBMCore, v8.0.1-17-g06183a68f
  DBMDefaultSkin, v
  DBMStatusBarTimers, v
  HandyNotes, vv1.5.2
  HealBot, v8.0.1.0
  HealBotru, v8.0.1.0
  HealBotTips, v8.0.1.0
  NPCScan, v8.0.1.2
  Pawn, v2.2.22
  PersoLootRoll, v12.01
  PetTracker, v8.0.0
  Recount, vv8.0.1a
  ZPerl, v5.5.7
  ZPerlArcaneBar, v
  ZPerlParty, v
  ZPerlPartyPet, v
  ZPerlPlayer, v
  ZPerlPlayerBuffs, v
  ZPerlPlayerPet, v
  ZPerlRaidAdmin, v
  ZPerlRaidFrames, v
  ZPerlRaidHelper, v
  ZPerlRaidMonitor, v
  ZPerlRaidPets, v
  ZPerlTarget, v
  ZPerlTargetTarget, v
  BlizRuntimeLib_ruRU v8.0.1.80000 <none>
  (ck=29c)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.