Replacement for bankitems

Up until now I have used bankitems and just modified myself it as necessary. I’m currently thinking about not trying to figure out how to fix it this time but wanted to see what addons might be a good replacement. My main requirements in order:

  1. Displays the total number of X that I have and lists how much each of my alts have of it
  2. Search option to find out which alts have it and how many
  3. Able to see my bags and equipment on all my toons at anytime

Are there any addons that give all or most of these features?

Bagnon pretty much does all 3, ALtoholic pretty much does too

Thanks, I’ll take a look at those!

1 Like

Bagsync is another one that seems to do what you want too

Note: I am not the author, I’ve just used this addon forever and don’t really want to let it die yet.

So with the addition of the Reagent Pouch slot, Blizzard in their infinite wisdom decided to force the Reagent Pouch into slot 5 (0 is backpack, 1-4 are main bags) which forced the bank bags to go from 5 through 11, to 6 through 12.

They also added in a lot of “strict” parameter checks for API calls, which is why a lot of other errors started showing up.

I spent last night and a just a little bit today figuring out how to un-break the addon and get things showing up, and I have it working.

I can’t seem to find a way to just share an attachment and BankItems.lua is a pretty big file so I don’t really want to paste it all here, so hopefully this works:

https://cdn.discordapp.com/attachments/270679410565316629/1035329911222718564/BankItems.lua

Edit: looks like it works to download it. That should get the addon working again. I don’t think I have any way to submit this to the author, and they haven’t updated in over a year so they probably won’t see it anyway.

Here’s an alternative link I put on the addon’s Curse page :
https://media.forgecdn.net/attachments/509/565/bankitems.lua

2 Likes

I tried this, but there’s no minimap button to access BankItems, and when I use /bi, I get the message that the addons are generating a lot of LUA errors (which isn’t happening with BankItems disabled).

I do appreciate it that you’re trying to keep it alive! I wish I could help, but I know zip all about LUA programming. :frowning:

I’m not really sure what to say without the error messages. I only made changes in the one file. As long as that is in the right place
( … World of Warcraft_retail_\Interface\AddOns\BankItems )
it should be working.

Yeah, I can’t see the actual error messages. There doesn’t seem to be a setting to enable in the Options any longer to do that. If it’s there, and I’m blind, let me know and I’ll enable it so I can see what the messages are!

Could try grabbing BugGrabber + BugSack to see error messages.

/run C_CVar.SetCVar("scriptErrors",1)

Change it to 0 to turn them off.

1 Like

Okay, I couldn’t seem to highlight and copy anything out of BugSack (I could highlight, but the highlight wouldn’t actually stay on at all so I could copy it–totally weird behavior), but the console command Elvenbane posted worked. So, here’s the error that just keeps going and going like the Energizer Bunny:

Message: Interface/AddOns/BankItems/BankItems.lua:1113: attempt to call global 'BankItems_SaveInvItems' (a nil value)
Time: Thu Oct 27 19:51:55 2022
Count: 2649
Stack: Interface/AddOns/BankItems/BankItems.lua:1113: attempt to call global 'BankItems_SaveInvItems' (a nil value)
[string "@Interface/AddOns/BankItems/BankItems.lua"]:1113: in function <Interface/AddOns/BankItems/BankItems.lua:1107>

Locals: self = Frame {
 0 = <userdata>
}
elapsed = 0.008000
(for index) = 1
(for limit) = 11
(for step) = 1
i = 1
(*temporary) = nil
(*temporary) = 1
(*temporary) = "attempt to call global 'BankItems_SaveInvItems' (a nil value)"
bagsToUpdate = <table> {
 1 = true
 2 = true
 3 = true
 4 = true
 6 = true
 7 = true
 8 = true
 9 = true
 10 = true
 11 = true
 12 = true
}
bankSlotsToUpdate = <table> {
}
UpdateClosedBankCounts = nil
wipe = <function> defined =[C]:-1

It’s over 9000(!) as I type this! LOL

Other errors:

Message: Interface/AddOns/BankItems/BankItems.lua:1 (null)
Time: Thu Oct 27 19:51:33 2022
Count: 1

Message: Interface/AddOns/BankItems/BankItems.lua:1042: attempt to call global 'BankItems_UpgradeDataToTBC' (a nil value)
Time: Thu Oct 27 19:51:32 2022
Count: 1
Stack: Interface/AddOns/BankItems/BankItems.lua:1042: attempt to call global 'BankItems_UpgradeDataToTBC' (a nil value)
[string "@Interface/AddOns/BankItems/BankItems.lua"]:1042: in function <Interface/AddOns/BankItems/BankItems.lua:937>

Locals: self = BankItems_Frame {
 0 = <userdata>
}
event = "ADDON_LOADED"
arg1 = "BankItems"
arg2 = nil
(*temporary) = nil
(*temporary) = "attempt to call global 'BankItems_UpgradeDataToTBC' (a nil value)"
bagsToUpdate = <table> {
}
BankItems_UpdateFrame = Frame {
 0 = <userdata>
}
isBankOpen = false
bankSlotsToUpdate = <table> {
}
dontUpdateClosedBank = false
isVoidReadable = false
selfPlayer = nil
time = <function> defined =[C]:-1
lastErrorTime = nil
BankItems_Frame = BankItems_Frame {
 0 = <userdata>
}
lastErrorItemID = 0
BankItems_ExportFrame = nil
lastErrorSearch = ""

Message: BankItems_Frame:RegisterEvent(): BankItems_Frame:RegisterEvent(): Attempt to register unknown event "VOID_STORAGE_OPEN"
Time: Thu Oct 27 19:51:32 2022
Count: 1
Stack: BankItems_Frame:RegisterEvent(): BankItems_Frame:RegisterEvent(): Attempt to register unknown event "VOID_STORAGE_OPEN"
[string "=[C]"]: in function `RegisterEvent'
[string "@Interface/AddOns/BankItems/BankItems.lua"]:1442: in main chunk

Locals: (*temporary) = BankItems_Frame {
 0 = <userdata>
}
(*temporary) = "VOID_STORAGE_OPEN"

Message: BankItems_Frame:RegisterEvent(): BankItems_Frame:RegisterEvent(): Attempt to register unknown event "VOID_STORAGE_OPEN"
Time: Thu Oct 27 19:51:32 2022
Count: 1
Stack: BankItems_Frame:RegisterEvent(): BankItems_Frame:RegisterEvent(): Attempt to register unknown event "VOID_STORAGE_OPEN"
[string "=[C]"]: in function `RegisterEvent'
[string "@Interface/AddOns/BankItems/BankItems.lua"]:1442: in main chunk

Locals: (*temporary) = BankItems_Frame {
 0 = <userdata>
}
(*temporary) = "VOID_STORAGE_OPEN"

Hope that helps, and again, it’s awesome that someone is trying to keep this alive!

It’s very strange, I downloaded the most recent version again to make sure, and I didn’t make changes at those lines, or the functions they point to, but I am also not getting the errors either.

Were you doing anything in particular when these happened?

see when i tried to post code, my smart butt did not use code blocks,lol

Thanks, it worked for me out of the box. no errors so far. Really appreciate it.

1 Like

Well, holy crud… I downloaded the addon again (even though I had downloaded that very version before), then used the bankitems.lua file you provided, and bam, no errors. So I dunno what happened there, but I’m just going to apologize for doubting you, and say you are a goddess (or god, if that’s more applicable)!!!

Thank you so much, from me and my husband both! :partying_face: :tada:

1 Like

Hey I’m glad it worked.

I did find another issue while seeing what you had going on, that kind of fixes itself in the end, but it’s kind of funny so I wanted to share it:

If you get on a character with fewer bags than bag slots, say like a new alt that only has backpack + 1 extra bag, BankItems will save that bag in its slot. Move it to another bag slot, it will save in that slot…but not remove it from the slot it was in before. So now the BankItems window will show it in every slot you had moved it to, but it only really exists in one of them. But, once you have all the bag slots filled in, that’s hardly a problem anymore.

1 Like

Good to know though. I might make more characters someday, and that would be a weird thing to see!

It apparently fixes itself on login and reload, so it’s rather short-lived, but it looks funny.

Another side effect is that it wipes the reagent bank info at login or logout somehow. Haven’t figured out why yet, but poking around. Maybe something to do with the slot number changes?

Good news! I found a fix for that issue now too. Turns out it was just one line (965) :

...
elseif event == "PLAYER_ENTERING_WORLD" then
	BankItems_SaveInvItems()
	--BankItems_SaveReagentBank() --comment this line to prevent saving over reagent bank on login/reload
	BankItems_SaveMoney()
	BankItems_SaveZone()
	BankItems_SaveFaction()
	BankItems_Generate_SelfItemCache()
elseif event == "PLAYERBANKSLOTS_CHANGED" or event == "PLAYERBANKBAGSLOTS_CHANGED" then --fires even when bank is closed
...

file with fix in place
https://cdn.discordapp.com/attachments/1035400811460706344/1035400942583038013/BankItems.lua