BagSync

BagSync

3M Downloads

[Ru][Wrath] Don't update items in inventory.

kanodiry opened this issue · 12 comments

commented

Hello, since Ulduar update Addon won't update items (increasing, decreasing, removing) in bags, till Reload UI or relogin.
But items in bank and mail updates after reopening bank/mail.

Example: I have 10x Runic Healing Potion in Bank, 5x in mail, and in bags 6x
Toolitip shows: 21(In bag: 6, In bank: 10, in mail: 5);

Then i take potions from mail,
Toolitip shows: 16(In bag: 6, In bank: 10);

Then i put 3 of them in bank:
Toolitip shows: 19(In bag: 6, In bank: 13).

For test purpose I've install Bagnon and Item counting and update works fine.

p.s. I don't know reason, but this issue occurs only on Russian realms, tried English and all works fine.

commented

They did. But then they broke it again.

commented

Here some Debug info:

  1. I hovered mouse on Runic Healing Potion ([Рунический флакон с лечебным зельем]) (addon count 240)
  2. Open mailbox and took another 20 Runic Healing Potion
  3. Then hovered again Runic Healing Potion and got tooltip about 220 potions
[18:53:01]: [Data]: IterateUnits, false, nil
[18:53:01]: [Unit]: GetUnitInfo, Альвирен, Хроми, nil, Alliance, DEATHKNIGHT, Human, 3, Сайзвел©, Хроми, Хроми, Хроми
[18:53:01]: [Unit]: GetUnitInfo, Альвирен, Хроми, nil, Alliance, DEATHKNIGHT, Human, 3, Сайзвел©, Хроми, Хроми, Хроми
[18:53:01]: [Tooltip]: ColorizeUnit,  Альвирен, Хроми, true, false, Хроми
[18:53:01]: [Unit]: GetUnitInfo, Альвирен, Хроми, nil, Alliance, DEATHKNIGHT, Human, 3, Сайзвел©, Хроми, Хроми, Хроми
[18:53:01]: [Tooltip]: TallyUnits, 33447, 33447, [Рунический флакон с лечебным зельем], OnTooltipSetItem, nil, 240
[18:53:04]: [Unit]: PLAYER_INTERACTION_MANAGER_FRAME_SHOW, 17
[18:53:04]: [Events]: BAGSYNC_EVENT_MAILBOX, true
[18:53:04]: [Scanner]: SaveMailbox, true, true, true, false
[18:53:05]: [Scanner]: SaveMailbox, nil, true, true, false
[18:53:06]: [Data]: IterateUnits, false, nil
[18:53:06]: [Unit]: GetUnitInfo, Альвирен, Хроми, nil, Alliance, DEATHKNIGHT, Human, 3, Сайзвел©, Хроми, Хроми, Хроми
[18:53:06]: [Unit]: GetUnitInfo, Альвирен, Хроми, nil, Alliance, DEATHKNIGHT, Human, 3, Сайзвел©, Хроми, Хроми, Хроми
[18:53:06]: [Tooltip]: ColorizeUnit,  Альвирен, Хроми, true, false, Хроми
[18:53:06]: [Unit]: GetUnitInfo, Альвирен, Хроми, nil, Alliance, DEATHKNIGHT, Human, 3, Сайзвел©, Хроми, Хроми, Хроми
[18:53:06]: [Tooltip]: TallyUnits, 33447, 33447, [Рунический флакон с лечебным зельем], OnTooltipSetItem, nil, 240
[18:53:13]: [Scanner]: SaveMailbox, nil, true, true, false
[18:53:17]: [Data]: IterateUnits, false, nil
[18:53:17]: [Unit]: GetUnitInfo, Альвирен, Хроми, nil, Alliance, DEATHKNIGHT, Human, 3, Сайзвел©, Хроми, Хроми, Хроми
[18:53:17]: [Unit]: GetUnitInfo, Альвирен, Хроми, nil, Alliance, DEATHKNIGHT, Human, 3, Сайзвел©, Хроми, Хроми, Хроми
[18:53:17]: [Tooltip]: ColorizeUnit,  Альвирен, Хроми, true, false, Хроми
[18:53:17]: [Unit]: GetUnitInfo, Альвирен, Хроми, nil, Alliance, DEATHKNIGHT, Human, 3, Сайзвел©, Хроми, Хроми, Хроми
[18:53:17]: [Tooltip]: TallyUnits, 33447, 33447, [Рунический флакон с лечебным зельем], OnTooltipSetItem, nil, 220
commented

Hey there! Thanks for reporting this. Hmm let me look into this and see if I can replicate the issue. They may have caused a bug with the recent patch. The debug info above helps as it looks like the scanner is picking up the stuff to scan and save, but somehow it's not saving it correctly on your end.

commented

Never mind, yep it looks with the Ulduar update they screwed up the BAG_UPDATE_DELAYED event. Figures... no wonder it's not working. Seriously then people wonder why addon authors get frustrated lol. Bagnon actually did an update to fix that issue as well, it was broken for them too.

commented

What I will do is add a timer that checks every 2 seconds when a BAG_UPDATE is fired. It will reset the timer and it should fire within 2 seconds of the last BAG_UPDATE sent. This is a temporary fix until they can freaking fix their stupid servers.

commented

Here steps dony by me, as you asked:

  1. Open bank and put Runic Healing Potion ([Рунический флакон с зельем маны]) into bank.
  2. Close bank
  3. Open bank again and take Potions back
  4. Close bank
[20:25:56]: [Unit]: PLAYER_INTERACTION_MANAGER_FRAME_SHOW, 8
[20:25:56]: [Events]: BAGSYNC_EVENT_BANK, true
[20:25:56]: [Scanner]: SaveBank, nil, true
[20:25:56]: [Scanner]: SaveBag, bank, -1
[20:25:56]: [Scanner]: SaveBag, bank, 5
[20:25:56]: [Scanner]: SaveBag, bank, 6
[20:25:56]: [Scanner]: SaveBag, bank, 7
[20:25:56]: [Scanner]: SaveBag, bank, 8
[20:25:56]: [Scanner]: SaveBag, bank, 9
[20:25:56]: [Scanner]: SaveBag, bank, 10
[20:25:56]: [Scanner]: SaveBag, bank, 11
[20:26:03]: [Data]: IterateUnits, false, nil
[20:26:03]: [Tooltip]: ColorizeUnit,  Мелмара, Хроми, true, false, Хроми
[20:26:03]: [Tooltip]: TallyUnits, 33448, 33448, [Рунический флакон с зельем маны], OnTooltipSetItem, nil, 477
[20:26:14]: [Unit]: PLAYER_INTERACTION_MANAGER_FRAME_HIDE, 8
[20:26:14]: [Events]: BAGSYNC_EVENT_BANK, nil
[20:26:23]: [Unit]: PLAYER_INTERACTION_MANAGER_FRAME_SHOW, 8
[20:26:23]: [Events]: BAGSYNC_EVENT_BANK, true
[20:26:23]: [Scanner]: SaveBank, nil, true
[20:26:23]: [Scanner]: SaveBag, bank, -1
[20:26:23]: [Scanner]: SaveBag, bank, 5
[20:26:23]: [Scanner]: SaveBag, bank, 6
[20:26:23]: [Scanner]: SaveBag, bank, 7
[20:26:23]: [Scanner]: SaveBag, bank, 8
[20:26:23]: [Scanner]: SaveBag, bank, 9
[20:26:23]: [Scanner]: SaveBag, bank, 10
[20:26:23]: [Scanner]: SaveBag, bank, 11
[20:26:29]: [Data]: IterateUnits, false, nil
[20:26:29]: [Tooltip]: ColorizeUnit,  Мелмара, Хроми, true, false, Хроми
[20:26:29]: [Tooltip]: TallyUnits, 33448, 33448, [Рунический флакон с зельем маны], OnTooltipSetItem, nil, 497
[20:26:37]: [Unit]: PLAYER_INTERACTION_MANAGER_FRAME_HIDE, 8
[20:26:37]: [Events]: BAGSYNC_EVENT_BANK, nil

And here is EvenTracker window
screenshot
There was no BAG_UPDATE_DELAYED events fired due this actions.

commented

There was no BAG_UPDATE_DELAYED events fired due this actions.

Well there is the reason none of the bags are updating. It relies on that command to process the bags. I wonder why they aren't firing it as it even fires on the Classic servers. It could a bug that the Russian server admins haven't realized? Let me do some testing myself as well. Something is weird here.

commented

Looking at your debug, after pulling the 20 runic potions from your mailbox, It should have fired two events. I'm not seeing the one for the saving of stuff in your bags.

It should be

[Scanner]: SaveMailbox

followed by a

[Scanner]: SaveBag

in fact I'm not seeing any SaveBag events being fired to store your stuff in your bags anywhere. The one when you reload or use reloadui is a forced one done by the StartupScans. That is why that one works. The rest are triggered when Blizzard sends a BAG_UPDATE event.

Try this, make sure you have DEBUG and INFO set in your BagSync Debug. Move an item from your bags to your bank. Then your bank to your bags. See if it's triggering the SaveBank and SaveBag.

I suspect they did something with the BAG_UPDATE and BAG_UPDATE_DELAYED events that Blizzard uses to let addon authors know that a bag update has happened.

Look for a the following to see if it's actually being triggered.

[Events]: SpamBagQueue

commented

You can also use the /eventtrace or /etrace tool that Blizzard provides to check for the events. Just press "Play" and then move stuff around in your bags and such. It should fire the BAG_UPDATE and BAG_UPDATE_DELAYED. The important one is BAG_UPDATE_DELAYED .

commented

Thank you for the work!
Btw I enjoy your addon.

commented

Thank you for the work! Btw I enjoy your addon.

Thank you! I'm glad you enjoy the addon :) It's a fun little project I've maintained over the years. I appreciate that you took the time to file the ticket. It helps me identify issues like these to resolve them.

commented

Looks like Blizzard updated their servers and fixed the missing BAG_UPDATE_DELAYED event. So I removed the temporary fix.

check with /eventtrace <-- that's two t's or you can do /etrace (you don't need a separate addon, blizzard has their own built in one)