cmangos / issues

This repository is used as a centralized point for all issues regarding CMaNGOS.
179 stars 47 forks source link

🐛 [Bug Report] / TBC / BG: Eye of the Storm / Base Points higher than max. available Bases (incl. flag) #3726

Closed Anastasija1234 closed 1 month ago

Anastasija1234 commented 3 months ago

Bug Details

While doing Eye of the Storm, i noticed that the captured Base Number (in the middle of the sreen next to Victory Points) (Number of Bases) even went to 6 and above. Since each faction can only have max. all 4 towers and 1 flag, the max. Base Number should be max. 4 /// or max. 5, when a faction has all bases + the flag and IF the following is correct: I read into some Eye of the Storm guides and found out, that each tower, but also the flag counts as 1 base point concerning the conquered symbols (number of bases) which appear in the middle of the screen while in bg, next to the number of ressources counting up to 2000. Additionally: When bug appears, the victory points are not counting correctly anymore, f.e. a faction with less bases owned on the map, receives still faster/more victory points. In the screenshot you can see all together 6 bases and how the victory points change format. I also experience server crashes in Eye of the Storm. (Had some probs with addons ins bgs some days ago, but i doubt thats the reason for the EotS server crashes here, since i dont experience server crashes in other bgs anymore at all, only in eots still). Dunno if it is of help, but i noticed the message: "Script registering but ScriptName go_bubbly_fissure is not assigned in database. Script will not be used." within "SD2Errors.log" file is shown at point in times when eots crashes, so if this script has to do anything with Eots i thought i should mention here aswell. Thx.

WoWScrnShot_061024_170635

Steps to Reproduce

  1. Start BG Eye of the Storm as Horde Player on TBC core/branch (with new playerbots).
  2. Conquer more than 2 Bases (as Horde Player), at least 3 Bases.
  3. Watch the Base Number increasing above 5, 6 etc.
  4. When BG ends and score is shown, watch how Base Number changes and how Victory points become suddenly values like f. e. -13544555.

Expected behavior

max. base nr. 4 or 5. Victory Points of winning faction when score is shown: 2000.

Suggested Workaround

No response

Crash Log

No response

Core SHA1 Commit Hash

tbc hash (2709cf19d293c36e7d4aa122075c37577d21206a)

Database SHA1 Commit Hash

tbc-db hash (2709cf19d293c36e7d4aa122075c37577d21206a)

Operating System

Windows 10 Home

Client Version

2.4.3 (The Burning Crusade)

killerwife commented 3 months ago

So far working as intended, waiting to tick to 2000

image

are you by any chance compiling with bots

killerwife commented 3 months ago

image

killerwife commented 3 months ago

Clean core, newest db, played around with horde and ally char, even turned in flag.

Anastasija1234 commented 3 months ago

I chose the new playerbots in server settings activated when compiling the server, yes. Im joining the bg alone and the random-world-playerbots are added when entering the bg. So i dont join as grp. Sometimes when i join a bg the 1000 bots i chose to be activated on login are still beeing logged into world. (What i mean herby is: Sometimes when i join bg only 500 bots are loged into world yet). If u meant that by your question, killer. // Im gonna do a server and db update and try then. Thx so far, killerwife.

Anastasija1234 commented 3 months ago

I did a completely fresh all dbs install (incl. playerbots), then updated the tbc and tbc db to the commits of yesterday. /// While Base Numbers are now also decreasing (they did not before), the bug itself remains. I made several screenshots during the same BG. By the ingame clock you can see their chronology. And even with Base Numbers decreasing now, as u can see in screenshots: 6 and 7 bases and 2400 Victory Points in the End Score. That the Numbers decrease now is seen from WoWScrnShot_061124_053955 to WoWScrnShot_061124_054115 (also on the Map). But somehow the Base Numbers are still to high and final Victory points too. So yeah, i dont know what it causes but as you guys can see by the screenshots, it happens.

Shots: WoWScrnShot_061124_053909 WoWScrnShot_061124_053955 WoWScrnShot_061124_054115 WoWScrnShot_061124_054206

Anastasija1234 commented 3 months ago

Whats not shown in the screenshots here, is, that the alliance had more bases before (2) and a higher victory score. The value >>> decreased <<< very much, when the base nr of horde went above 5 and more. I noticed it firstly in end of bg, when seeing the very low victory points of alliance even after having had 2 towers for several minutes and (but im not sure on the following: i believe the alliance also had flag bringing into their towers). So thats, why i wasnt able to screenshot it aswell, since i realised too late on this, sry...

cpevors commented 3 months ago

I can’t replicate. Are you still using playerbots?

Anastasija1234 commented 3 months ago

Yes i do. Since me and my gf are the only players, whe have to use the new playerbots to be able to do BGs.

1-1 1-2

cpevors commented 3 months ago

I wonder if playerbots is to blame, if @killerwife isn't able to replicate with a fresh core and a new db (without playerbots), and I'm not able to replicate under the same circumstances as him.

Conjecture.

Anastasija1234 commented 3 months ago

I never did it in Debug mode/without bots. /// I also tested it (with playerbots) after the fresh tbc / tbc db new installation and after having updated to newest commits with ALL addons not only deactivated, but ALL addons not even beeing installed in WoW. So used a completely fresh WoW install aswell. Bug appears by this "pure" settings aswell. So i highly doubt this beeing caused by any addon... /// Well if you guys tried to replicate without playerbots (and it works normally with u 2), next logic step would be someone trying to replicate it, who uses playerbots like me aswell, i guess... Might get confirmed by doing so.

Anastasija1234 commented 3 months ago

Wanted try to test in debug mode aswell and see if that works (as the last step i can try on my side), but since u mentioned, that u and killerwife allready tried without bots, i wont need to try it by myself. too.

celguar commented 3 months ago

to replicate lose base and gain it again

celguar commented 3 months ago

just capturing bases and waiting wont replicate it

celguar commented 3 months ago

or just let other side capture your base

celguar commented 3 months ago

I had to fix it 2y ago after BG rework stuff https://github.com/celguar/mangos-tbc/commit/6bb682c116dfc611406cd98ab803638038d5a49a#diff-0bf36d3578bb3c132f91538d3493b595818856dee402319ede76afbc47cdb0db

insunaa commented 3 months ago

is it possible that 2 players capturing a base accidentally counts the base as being captured twice?

diff --git a/src/game/BattleGround/BattleGroundEY.cpp b/src/game/BattleGround/BattleGroundEY.cpp
index 63da83c08..6e8e248f7 100644
--- a/src/game/BattleGround/BattleGroundEY.cpp
+++ b/src/game/BattleGround/BattleGroundEY.cpp
@@ -316,6 +316,11 @@ void BattleGroundEY::ProcessCaptureEvent(GameObject* go, uint32 towerId, Team te
 {
     DEBUG_LOG("BattleGroundEY: Process capture point event from gameobject entry %u, captured by team %u", go->GetEntry(), team);

+    Team oldTeam = m_towerOwner[towerId];
+
+    if (oldTeam == team)
+        return;
+
     if (team == ALLIANCE)
     {
         // update counter
@@ -376,7 +381,6 @@ void BattleGroundEY::ProcessCaptureEvent(GameObject* go, uint32 towerId, Team te
     }

     // update capture point owner
-    Team oldTeam = m_towerOwner[towerId];
     SetTowerOwner(EYNodes(towerId), team);

     if (oldTeam == ALLIANCE || oldTeam == HORDE) // only on going to grey

edit: just read celguar's patches and he basically does the same thing in a slightly different place. should fix the issue then.