Jump to content

[One]Buff appearing as debuffs


Guest Oniryck

Recommended Posts

Hello,

Using One branch, I updated today from [s0852] to [s0860] (no particular patch) and all the player's buff are appearing as debuff for players of the same faction or group. Look like it only does this when you are near the other player. From a distance you're seeing the buff like usual. I can't figure out why yet but I was wondering if anyone have the same issue. Maybe due to the data blob disappearance? Or problem from my setup ? If anyone can confirm this, thank you !

Edit: I should add that when applying the sql patch from [s0858], my exploredZone have been reset, the field was filled with numbers but in game all the maps went undiscovered.

Edit 2: I confirm that [s0858] is responsible for this, but still don't know why or how to fix yet :( It seems like one field remains not loaded but I can't figure out which one.

Link to comment
Share on other sites

Worked hard but couldn't find what field causes that :(

I hope someone with more knowledge of this can help me. I tried forcing loading the old data field by adding that back :

if(!LoadValues( fields[60].GetString()))    
   {     
       sLog.outError("Player #%d have broken data in `data` field. Can't be loaded.", GUID_LOPART(guid));    
       delete result;         
       return false;     
   }

of course I changed the main query. Then the data field loads and the buff shows correctly, but that doesn't fix the problem, only show that's where it's from. :S

Link to comment
Share on other sites

As i understand this affect only post update state and later once explored zone later show in correct state?

Exactly ! After the update all is reset but then it works correctly when you discover new zones.

1. Hmm, aura fields don't must be dependent from character save `data` field and must filled at auras loading.

That's what I thought, so because this bug is data field dependent, I guess it could be something like characters faction or property that causes that, but I didn't find any difference in thoses fields with or without the data field... Still searching.

Link to comment
Share on other sites

`exploredZones` field problem fixed in [s0863]. Note: you can edit sql update for use second way (provided in sql update) for re-extract values from data_backport if you still have it.

I will look at auras problem now.

[added]

Hmm, i check with some spells bufs and not see problem with proper place its to buffs line after relogin.

So proper values prepare for client for auras show work correctly for saved data.

Link to comment
Share on other sites

diff --git a/src/game/Player.cpp b/src/game/Player.cpp
index 60547a2..9206306 100644
--- a/src/game/Player.cpp
+++ b/src/game/Player.cpp
@@ -14294,6 +14294,15 @@ bool Player::LoadFromDB( uint32 guid, SqlQueryHolder *holder )
        return false;
    }

+    
+    SetByteValue(UNIT_FIELD_BYTES_2, 1, UNIT_BYTE2_FLAG_AURAS );
+    
    // overwrite possible wrong/corrupted guid
    SetGuidValue(OBJECT_FIELD_GUID, ObjectGuid(HIGHGUID_PLAYER, guid));

That fix seems to work

Link to comment
Share on other sites

For [s0863] for retreiving the datas from the data_backup table you provide this :

UPDATE characters, data_backup SET
 exploredZones = SUBSTRING(DATA,
 LENGTH(SUBSTRING_INDEX(DATA, ' ', 1332))+2,
 LENGTH(SUBSTRING_INDEX(DATA, ' ', 1459+1))- LENGTH(SUBSTRING_INDEX(DATA, ' ', 1332)) - 1)

but isn't this :

UPDATE characters, data_backup SET
 exploredZones = SUBSTRING(DATA,
 LENGTH(SUBSTRING_INDEX(DATA, ' ', 1332))+2,
 LENGTH(SUBSTRING_INDEX(DATA, ' ', 1459+1))- LENGTH(SUBSTRING_INDEX(DATA, ' ', 1332)) - 1) WHERE characters.guid = data_backup.guid;

more like it ?

Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use