TipTac Reborn

TipTac Reborn

1M Downloads

[Classic Era] Invalid factory object type

entroscopy opened this issue ยท 6 comments

commented

Addon started throwing this error yesterday. Tooltips when hovering over players sometimes work as they should, but oftentimes they cut off information below the guild name. Also, certain sections in the options are missing and throw said error when they are opened.

how they should look
information missing
options missing

I'm not sure if you're accepting bug reports for Classic, throwing this out there in case you are.

EDIT: forgot to add, tested with all other addons disabled, only tiptac active.
EDIT2: been downgrading to previous releases and v21.12.22 seems to be the latest release without the options issue/error throwing for me. The information cut off below the guild name exists in that version too.

commented

I fixed the issue with the missing infos. Here's the dev version:

TipTac-dev.zip

commented

Yep, that fixed it. Thanks!

commented

Yes, I considered classic too. But I can't reproduce your issue. Your error message has something to do with TipTac options. The options pages are created here and the individual components (checkboxes, dropdown lists, sliders, etc.) were generated, where some types seem to be unknown, but this should not be the case.

Try the following when you are ingame:

  1. Open chat and enter: /console scriptErrors 1
  2. Open chat and enter: /reload

Do you get some lua errors when opening TipTac options?

commented

I get the following errors when opening the options:

Message: ...dMedia-3.0\LibSharedMedia-3.0\LibSharedMedia-3.0.lua:36: Cannot find a library instance of "CallbackHandler-1.0".
Time: Sun Feb 13 12:57:08 2022
Count: 1
Stack: ...dMedia-3.0\LibSharedMedia-3.0\LibSharedMedia-3.0.lua:36: Cannot find a library instance of "CallbackHandler-1.0".
[string "=[C]"]: in function `error'
[string "@Interface\AddOns\TipTac\libs\LibStub\LibStub.lua"]:23: in function `GetLibrary'
[string "@Interface\AddOns\TipTacOptions\libs\LibSharedMedia-3.0\LibSharedMedia-3.0\LibSharedMedia-3.0.lua"]:36: in main chunk
[string "=[C]"]: in function `LoadAddOn'
[string "@Interface\AddOns\TipTac\ttCore.lua"]:536: in function `?'
[string "@Interface\FrameXML\ChatFrame.lua"]:4829: in function `ChatEdit_ParseText'
[string "@Interface\FrameXML\ChatFrame.lua"]:4492: in function `ChatEdit_SendText'
[string "@Interface\FrameXML\ChatFrame.lua"]:4528: in function `ChatEdit_OnEnterPressed'
[string "*:OnEnterPressed"]:1: in function <[string "*:OnEnterPressed"]:1>

Locals: (*temporary) = "Cannot find a library instance of "CallbackHandler-1.0"."

Message: ...rface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:482: attempt to call method 'Register' (a nil value)
Time: Sun Feb 13 12:57:08 2022
Count: 1
Stack: ...rface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:482: attempt to call method 'Register' (a nil value)
[string "@Interface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua"]:482: in main chunk
[string "=[C]"]: in function `LoadAddOn'
[string "@Interface\AddOns\TipTac\ttCore.lua"]:536: in function `?'
[string "@Interface\FrameXML\ChatFrame.lua"]:4829: in function `ChatEdit_ParseText'
[string "@Interface\FrameXML\ChatFrame.lua"]:4492: in function `ChatEdit_SendText'
[string "@Interface\FrameXML\ChatFrame.lua"]:4528: in function `ChatEdit_OnEnterPressed'
[string "*:OnEnterPressed"]:1: in function <[string "*:OnEnterPressed"]:1>

Locals: REVISION = 13
azof = <table> {
 BuildOptionsPage = <function> defined @Interface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:108
 ResetObjectUse = <function> defined @Interface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:86
 objectNameCount = <table> {
 }
 objects = <table> {
 }
 GetObject = <function> defined @Interface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:57
 LibSharedMediaSubstitute = <table> {
 }
 vers = 13
 __index = <table> {
 }
 New = <function> defined @Interface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:96
}
ReturnZeroMeta = <table> {
 __index = <function> defined @Interface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:33
}
SetFromHexColorMarkup = <function> defined @Interface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:40
GenerateObjectName = <function> defined @Interface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:51
SliderEdit_OnEnterPressed = <function> defined @Interface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:161
Slider_OnValueChanged = <function> defined @Interface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:166
Slider_OnMouseWheel = <function> defined @Interface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:173
CheckButton_OnEnter = <function> defined @Interface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:228
CheckButton_OnLeave = <function> defined @Interface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:238
CheckButton_OnClick = <function> defined @Interface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:243
cpfState = <table> {
 prevColor = <table> {
 }
}
CPF = ColorPickerFrame {
 0 = <userdata>
 OnBackdropLoaded = <function> defined @Interface\SharedXML\Backdrop.lua:144
 Center = <unnamed> {
 }
 GetBackdropColor = <function> defined @Interface\SharedXML\Backdrop.lua:382
 SetupTextureCoordinates = <function> defined @Interface\SharedXML\Backdrop.lua:206
 OnBackdropSizeChanged = <function> defined @Interface\SharedXML\Backdrop.lua:174
 HasBackdropInfo = <function> defined @Interface\SharedXML\Backdrop.lua:270
 SetBackdropBorderColor = <function> defined @Interface\SharedXML\Backdrop.lua:414
 RightEdge = <unnamed> {
 }
 backdropInfo = <table> {
 }
 BottomEdge = <unnamed> {
 }
 GetEdgeSize = <function> defined @Interface\SharedXML\Backdrop.lua:180
 BottomLeftCorner = <unnamed> {
 }
 BottomRightCorner = <unnamed> {
 }
 TopEdge = <unnamed> {
 }
 ApplyBackdrop = <function> defined @Interface\SharedXML\Backdrop.lua:286
 SetBackdrop = <function> defined @Interface\SharedXML\Backdrop.lua:321
 ClearBackdrop = <function> defined @Interface\SharedXML\Backdrop.lua:274
 TopRightCorner = <unnamed> {
 }
 GetBackdropBorderColor = <function> defined @Interface\SharedXML\Backdrop.lua:401
 GetBackdrop = <function> defined @Interface\SharedXML\Backdrop.lua:339
 TopLeftCorner = <unnamed> {
 }
 SetupPieceVisuals = <function> defined @Interface\SharedXML\Backdrop.lua:238
 SetBackdropColor = <function> defined @Interface\SharedXML\Backdrop.lua:391
 LeftEdge = <unnamed> {
 }
 SetBorderBlendMode = <function> defined @Interface\SharedXML\Backdrop.lua:258
}
ColorButton_ColorPickerFunc = <function> defined @Interface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:286
ColorButton_OnClick = <function
Message: ...rface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:126: attempt to index local 'obj' (a nil value)
Time: Sun Feb 13 12:57:08 2022
Count: 1
Stack: ...rface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:126: attempt to index local 'obj' (a nil value)
[string "@Interface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua"]:126: in function `BuildOptionsPage'
[string "@Interface\AddOns\TipTacOptions\ttOptions.lua"]:603: in function `BuildCategoryPage'
[string "@Interface\AddOns\TipTacOptions\ttOptions.lua"]:347: in function <Interface\AddOns\TipTacOptions\ttOptions.lua:347>
[string "=[C]"]: in function `SetShown'
[string "@Interface\AddOns\TipTac\ttCore.lua"]:538: in function `?'
[string "@Interface\FrameXML\ChatFrame.lua"]:4829: in function `ChatEdit_ParseText'
[string "@Interface\FrameXML\ChatFrame.lua"]:4492: in function `ChatEdit_SendText'
[string "@Interface\FrameXML\ChatFrame.lua"]:4528: in function `ChatEdit_OnEnterPressed'
[string "*:OnEnterPressed"]:1: in function <[string "*:OnEnterPressed"]:1>

Locals: self = <table> {
 SetConfigValue = <function> defined @Interface\AddOns\TipTacOptions\ttOptions.lua:586
 GetConfigValue = <function> defined @Interface\AddOns\TipTacOptions\ttOptions.lua:581
 objectUse = <table> {
 }
 owner = <unnamed> {
 }
 isBuildingOptions = true
 instances = <table> {
 }
}
options = <table> {
 1 = <table> {
 }
 2 = <table> {
 }
 3 = <table> {
 }
 4 = <table> {
 }
 5 = <table> {
 }
 6 = <table> {
 }
 7 = <table> {
 }
 8 = <table> {
 }
 9 = <table> {
 }
 0 = "General"
}
anchor = <unnamed> {
 0 = <userdata>
}
left = 0
top = 95.999954
restrictToken = nil
lastHeight = 21.999989
(for generator) = <function> defined =[C]:-1
(for state) = <table> {
 1 = <table> {
 }
 2 = <table> {
 }
 3 = <table> {
 }
 4 = <table> {
 }
 5 = <table> {
 }
 6 = <table> {
 }
 7 = <table> {
 }
 8 = <table> {
 }
 9 = <table> {
 }
 0 = "General"
}
(for control) = 6
index = 6
option = <table> {
 y = 16
 type = "DropDown"
 var = "nameType"
 list = <table> {
 }
 label = "Name & Title"
}
restrictType = "nil"
allowCreation = true
obj = nil
(*temporary) = <table> {
 SetConfigValue = <function> defined @Interface\AddOns\TipTacOptions\ttOptions.lua:586
 GetConfigValue = <function> defined @Interface\AddOns\TipTacOptions\ttOptions.lua:581
 objectUse = <table> {
 }
 owner = <unnamed> {
 }
 isBuildingOptions = true
 instances = <table> {
 }
}
(*temporary) = "DropDown"
(*temporary) = nil
(*temporary) = <function> defined @Interface\AddOns\TipTac\ttCore.lua:37
(*temporary) = "|2<ERROR> Invalid factory object type!"
(*temporary) = <function> defined =[C]:-1
(*temporary) = <function> defined @Interface\SharedXML\ScrollingMessageFrame.lua:27
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = "attempt to index local 'obj' (a nil value)"

Message: (null)
Time: Sun Feb 13 12:57:08 2022
Count: 10
Message: ...rface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:126: attempt to index local 'obj' (a nil value)
Time: Sun Feb 13 12:57:55 2022
Count: 2
Stack: ...rface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua:126: attempt to index local 'obj' (a nil value)
[string "@Interface\AddOns\TipTacOptions\libs\AzOptionsFactory.lua"]:126: in function `BuildOptionsPage'
[string "@Interface\AddOns\TipTacOptions\ttOptions.lua"]:603: in function `BuildCategoryPage'
[string "@Interface\AddOns\TipTacOptions\ttOptions.lua"]:545: in function <Interface\AddOns\TipTacOptions\ttOptions.lua:538>

Locals: self = <table> {
 SetConfigValue = <function> defined @Interface\AddOns\TipTacOptions\ttOptions.lua:586
 GetConfigValue = <function> defined @Interface\AddOns\TipTacOptions\ttOptions.lua:581
 objectUse = <table> {
 }
 owner = <unnamed> {
 }
 isBuildingOptions = true
 instances = <table> {
 }
}
options = <table> {
 1 = <table> {
 }
 2 = <table> {
 }
 3 = <table> {
 }
 4 = <table> {
 }
 5 = <table> {
 }
 6 = <table> {
 }
 7 = <table> {
 }
 8 = <table> {
 }
 9 = <table> {
 }
 0 = "General"
}
anchor = <unnamed> {
 0 = <userdata>
}
left = 0
top = 95.999954
restrictToken = nil
lastHeight = 21.999989
(for generator) = <function> defined =[C]:-1
(for state) = <table> {
 1 = <table> {
 }
 2 = <table> {
 }
 3 = <table> {
 }
 4 = <table> {
 }
 5 = <table> {
 }
 6 = <table> {
 }
 7 = <table> {
 }
 8 = <table> {
 }
 9 = <table> {
 }
 0 = "General"
}
(for control) = 6
index = 6
option = <table> {
 y = 16
 type = "DropDown"
 var = "nameType"
 list = <table> {
 }
 label = "Name & Title"
}
restrictType = "nil"
allowCreation = true
obj = nil
(*temporary) = <table> {
 SetConfigValue = <function> defined @Interface\AddOns\TipTacOptions\ttOptions.lua:586
 GetConfigValue = <function> defined @Interface\AddOns\TipTacOptions\ttOptions.lua:581
 objectUse = <table> {
 }
 owner = <unnamed> {
 }
 isBuildingOptions = true
 instances = <table> {
 }
}
(*temporary) = "DropDown"
(*temporary) = nil
(*temporary) = <function> defined @Interface\AddOns\TipTac\ttCore.lua:37
(*temporary) = "|2<ERROR> Invalid factory object type!"
(*temporary) = <function> defined =[C]:-1
(*temporary) = <function> defined @Interface\SharedXML\ScrollingMessageFrame.lua:27
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = "attempt to index local 'obj' (a nil value)"

commented

I added the missing embeds for the library LibSharedMedia-3.0. It's pretty weird... I had not noticed before that they were missing, because these embeds were supplied through other addons. It's a general issue not related to classic only.

I fixed it in the current dev version:

TipTac-dev.zip

It's working fine for you too with this version?

commented

Yep, the dev version fixed the embeds. Options load fine now.
However, the missing info problem still persists. Apparently caused by TipTacTalents.

Untitled
Untitled2
Untitled3

The level-race-class info doesn't show up until you get into inspect range, where I assume the addon tries to get the talent info and fails because you can't inspect other people's talents pre-BC. Disabling TipTacTalents doesn't appear to fix this.