Commit Graph
50 Commits
Author SHA1 Message Date
Shauren 2f79b0f266 Core: Removed all double (and more) empty lines 2011-03-21 10:52:14 +01:00
Azazel bcaa3e07c8 Core/Cleanup: reformated and refactored code in Battleground.cpp/h:
* added proper formatting;
* moved identical code into separate method (have I already said that I hate copy/paste?);
* fixed several leaks;
* added more informative error messages.

More to come...
2011-03-14 19:21:34 +06:00
Azazel 6ad4044f05 Core/Mechanics: refactor XP (and in fact, honor/reputation/kill credit) rewarding routine and get rid of copy/pasted code. 2011-03-13 15:28:45 +06:00
leak 5b481d36bf Core/Battlegrounds: BG instances are not saved to the database and thus need no deletion. 2011-03-10 22:22:28 +01:00
leak aa2455b586 Core/Groups: Reimplement group id recycling 2011-02-27 00:55:45 +01:00
leak 4dc1bf3076 Core/Groups: Prevent group id pool corruption (BG groups take their Ids out of the same pool thus the need to register properly) 2011-02-24 23:35:39 +01:00
leak 09bac61e42 Core/Groups: Move scattered group object deletion to Disband() 2011-02-22 16:52:38 +01:00
Machiavelli e07e20ffca Core/Log: Implement log masks for debug log level, to allow selective debug output. Update your worldserver.conf. 2011-02-20 20:16:34 +01:00
leak 6a64c79d2a Core/Groups: Group system cleaning sweep. 2011-02-18 18:35:52 +01:00
leak 422cfec07d Core/Battlegrounds: Refactoring some pointless parameters 2011-02-09 16:47:47 +01:00
Manuel 5cf76896eb Core/Battleground: Implemented blizzlike script for Isle of Conquest, written by gyullo and me, based on Socolin's and Josh's patch -BIG THANKS TO THEM-
Anyway the map is not yet playable, there are issues not related with the script.

I also want to thanks to QAston, linencloth, Shauren and Machiavelli to be so patient with my questions.
2011-01-09 00:00:08 -03:00
Machiavelli 957c69de83 Update copyright note for 2011.
Happy new year.
2011-01-01 15:01:13 +01:00
click f5492f82b5 Core: Include the name and ID of the affected BG in Battleground::GetBGCreature() error-reporting
--HG--
branch : trunk
2010-12-26 00:06:03 +01:00
Shauren 928443d899 Core: Removed more operator workarounds for ACE_Singleton (missed previously because of inconsistent naming)
--HG--
branch : trunk
2010-12-23 23:25:44 +01:00
Xanadu cfa26522ad Core: Fixed occasional wrong order of async operations at respawn time saving. Closes issue #5239.
DB schema: Sorted out a discrepancy in respawn time column format.

--HG--
branch : trunk
2010-12-23 05:49:23 +01:00
Shauren 0f3b9019a8 Core: Get rid of dirty operator workaround for ACE_Singleton class implementation
--HG--
branch : trunk
2010-12-22 21:25:23 +01:00
Shauren 7b4e1c6387 Core/ObjectMgr: Static members are no longer accessed through singleton
--HG--
branch : trunk
2010-12-22 20:23:47 +01:00
linencloth 59da698189 Core: Rename spell attributes, use more general names
--HG--
branch : trunk
2010-12-19 05:15:47 +01:00
Anubisss 6d9029c12e Make some cleanup.
My thank goes to Az@zel for the code analysis.

--HG--
branch : trunk
2010-12-16 18:08:23 +01:00
azazel d2d62eab50 Cleanup: implemented helper methods for manipulating percentage calculation and used it where appropriate (plus fixed some other warnings).
NOTE: Initially I just wanted to fix some warnings, but noticed that there is no common method for percentage calculation and various formulas are used many time in the code making it difficult to read and understand what the code actually does. So, I introduced several template methods for calculating percent values and adding those values to the original base. I replaced all the raw calculations throughout the code where found, but I could have missed something or could have made a mistake. So, please report any strange behaviour after this commit.
If you ask me why I did it: for the sake of consistency and exact understanding what code means. If you see CalculatePct method, you clearly understand, that it find the value of x percent of y. And you can easily express, for example, spell behviour "reduces smth by x%" by the means of a method instead of recalling school maths.

--HG--
branch : trunk
2010-12-11 20:37:38 +06:00
Spp 408fce1de6 Core: Some optimizations
- Declare some functions const
- Fix some mem leak
- Fix some resource leak
- Remove unused variables and functions
- Remove duplicate functions
- Reduce the scope of some variables
- Remove unused file

--HG--
branch : trunk
2010-12-06 02:07:53 +01:00
Liberate 418f704e92 Core/Battlegrounds: Actually remove 16 rating from the teams if the match was ended because of the 45 minutes time limit.
--HG--
branch : trunk
2010-12-03 23:14:38 +01:00
click cf5e7b255d Core/Battleground: Fix compile - forgot to remove one '(' when pushing
(AND YES IT WAS TESTED - I was just thinking of cleaning it slightly, dropped it, and forgot I had changed it)

--HG--
branch : trunk
2010-12-02 23:14:26 +01:00
click 28c2e270db Core/Battlegrounds: Implement power resets on arena-fight preparations (first 60 seconds before arena-fight kicks off) (Thanks to Kaelima)
Restores all player powers every 5 seconds untill arena starts (fixes possible exploit with entering arena battle with full rage or runic power)
(The 5 second timer is not 100% confirmed, as official pages only states that the power is reset after prep-time - needs feedback)
Closes issue 4805

--HG--
branch : trunk
2010-12-02 22:50:30 +01:00
click 2338eae0ff Core/Battlegrounds: Stop arena matches after 45 minutes of no win/loss candidate, and deduct 16 points from each team (blizzlike) - Thanks to Alez
Closes issue 2017

--HG--
branch : trunk
2010-12-02 22:25:32 +01:00
click 5cd3904059 Core/DBLayer: Move tables reserved_name, gameobject_respawn and creature_respawn from WORLD database to CHARACTER database as it's content is realm-specific and should be preserved (thanks to leak for the cleanup)
*** TO PRESERVE (COPY) THE DATA CONTAINED IN THE OLD TABLES, YOU MUST FOLLOW THE FOLLOWING SQL-RECIPE (REPLACE DATABASENAMES WHERE NEEDED!) ***

-- Move creature_respawn from world to characters db
INSERT INTO `characters`.`creature_respawn` (`guid`, `respawntime`, `instance`)
SELECT `guid, `respawntime` `instance` * FROM `world`.`creature_respawn`;
-- Remove creature_respawn table from world db
DROP TABLE `world`.`creature_respawn`;

-- Move gameobject_respawn from world to characters db
INSERT INTO `characters`.`gameobject_respawn` (`guid`, `respawntime`, `instance`)
SELECT `guid`, `respawntime`, `instance` FROM `world`.`gameobject_respawn`;
-- Remove creature_respawn table from world db
DROP TABLE `world`.`gameobject_respawn`;

-- Move reserved names from world to characters db
INSERT INTO `characters`.`reserved_name` (`name`)
SELECT `name` FROM `world`.`reserved_name`;
-- Remove reserved_names table from world db
DROP TABLE `world`.`reserved_name`;

*** THE ABOVE MUST BE DONE, OR EXISTING INSTANCES WILL BE FULLY RESPAWNED - YOU HAVE BEEN WARNED ***
Closes issue 4842. Closes issue 4849.

--HG--
branch : trunk
2010-11-19 15:53:14 +01:00
Shocker 48d90fab32 Misc: Some engrish fixes, thanks to ZxBiohazardZx, closes issue 4740
--HG--
branch : trunk
2010-11-14 23:46:34 +02:00
Shocker 222d1cd211 Core/Misc: Also remove buffs from pet when joining arena to make sure a player won't enter with a prebuffed pet, fixes issue 4287
--HG--
branch : trunk
2010-10-16 17:34:21 +03:00
Shocker 8154f7243c Core/Arenas: Remove pet spell cooldowns on arena join too, fixes issue 1868
--HG--
branch : trunk
2010-10-16 17:01:01 +03:00
azazel 3bd1ee0665 Fix most of the recently introduced warnings
--HG--
branch : trunk
2010-10-16 13:32:30 +06:00
click f0c4241ea4 Remove the accidental additions of CRLF-crap from the header updates
--HG--
branch : trunk
2010-10-07 15:35:36 +02:00
click 8ea4b32fab Update copyright headers (following the same standard in all files = good)
--HG--
branch : trunk
2010-10-07 12:41:56 +02:00
Shocker 78803c9f09 Magic numbers cleanup:
- Replace many magic numbers with constants
- Use enum for vehicle flags/seat flags
- Correct structure for ItemRandomSuffixEntry

--HG--
branch : trunk
2010-09-28 08:21:51 +03:00
linencloth d8a854d6e0 Core: Cleanup locale handling.
It also fixes the recent problem of strange strings.

--HG--
branch : trunk
2010-09-17 07:04:29 +02:00
Liberate 00630d94d4 Core/Arena: Fix another exploit: When leaving your team in the middle of the arena fight your average Matchmaker Rating will not change till after the fight.
--HG--
branch : trunk
2010-09-12 18:41:47 +02:00
Liberate 50a90522f9 Core/Arena: Fixes the Config option for the start rating of personal rating.
Add a Config option for the start rating of matchmaker rating.
Personal rating now resets when joining a new team.
Fixes the strange behaviour Personal rating gain/loss can have opposing to team rating,
by using a better way of calculating the personal rating gain.
Fixes issue #3871
Fixes issue #3847
Fixes issue #3843
Fixes issue #3839

--HG--
branch : trunk
2010-09-10 23:08:49 +02:00
Shocker 9ac9641429 Core/Arena/Logging: Better implementation for fetching IP address
--HG--
branch : trunk
2010-09-10 15:47:58 +03:00
Spp 9e9c39244b Code/Groups: use enum as parameter in Group::RemoveMember
--HG--
branch : trunk
2010-09-10 13:37:55 +02:00
Shocker 0126590c54 Core/Arena/Logging:
* Implement option for extended arena match info for each player (guid, name, team, IP, healing/damage done, killing blows) [disabled by default]
* Fix logging for rating change, winner and loser get different ratings with the new arena system

--HG--
branch : trunk
2010-09-09 15:27:27 +03:00
Liberate 2228a8f8d9 Change the Arena Rating system to reflect the official system more.
Under 1000 rating the max rating gained should be 48.
Between 1000 rating and 1300 rating the max rating gained should move from 48 to 24.
Above 1300 rating the max rating gained is 24.
Team Rating and Personal Rating use this formula now.

--HG--
branch : trunk
2010-08-28 13:31:13 +02:00
Liberate 9bd804dece Updates the arena rating system to use Matchmaker Rating.
The arena_team_stats sql in this commit sets all ratings to 0.
You start with 0 Team Rating and 1500 Matchmaker Rating.
Personal rating is moved to character_arena_stats, and will not reset when disbanding an arena team.
This new system is based on all the info I could get, but Blizzard didn't leak much info about the new system.
At least this system is really close to the official system.
Any issues found should be reported in an issue.
Huge thanks go to Aokromes for the intensive testing he has done with me.
Also thanks to Parzival for hearing me out and giving his ideas.
Fixes issue #3189

--HG--
branch : trunk
2010-08-27 18:18:26 +02:00
Shocker 35066fdb6a Small cleanup/corrections
--HG--
branch : trunk
2010-08-27 04:55:49 +03:00
Shocker c247de12a9 Fix arena unit frames, original code by A Metaphysical Drama
--HG--
branch : trunk
2010-08-27 04:49:04 +03:00
azazel 341e6303ef Core:
* add helping methods for manipulating unit's health and use it where applicable
* fix some conversion warnings and cleanup code (formatting, CRLF, tabs to spaces)

--HG--
branch : trunk
2010-08-26 01:20:57 +06:00
silinoron 8649bee17f Replace World::getConfig with World::getFloatConfig, World::getIntConfig, and World::getBoolConfig.
Also fix a warning from a previous commit.

--HG--
branch : trunk
2010-08-23 19:56:47 -07:00
Shauren 30468a106f Moved battleground achievement scripted checks into scripts
Call ACHIEVEMENT_CRITERIA_TYPE_SPECIAL_PVP_KILL updates in code
Implemented achievements: Save the Day, Quick Cap, Warsong Expedience

--HG--
branch : trunk
2010-08-13 13:48:59 +02:00
click 1f80c7b3c0 Sourcefile sleanups -> tabs to spaces, remove whitespace - also update the cleanupscripts very slightly
--HG--
branch : trunk
2010-08-08 19:45:53 +02:00
XTZGZoReX 9083271a2f * Some singleton renames for consistency:
accmgr -> AccountMgr
objmgr -> ObjectMgr
auctionmgr -> sAuctionMgr
spellmgr -> sSpellMgr
CreatureEAI_Mgr -> sEventAIMgr
achievementmgr -> sAchievementMgr
gameeventmgr -> sGameEventMgr
sInstanceSaveManager -> sInstanceSaveMgr
poolhandler -> sPoolMgr

--HG--
branch : trunk
2010-08-08 05:25:45 +02:00
XTZGZoReX 909e332579 * Rename: BattleGround -> Battleground.
--HG--
branch : trunk
2010-08-08 04:37:24 +02:00
click 4cb0f25b94 Some consistency-cleanups on the TC battleground (This means war?)
--HG--
branch : trunk
rename : src/server/game/BattleGrounds/ArenaTeam.cpp => src/server/game/Battlegrounds/ArenaTeam.cpp
rename : src/server/game/BattleGrounds/ArenaTeam.h => src/server/game/Battlegrounds/ArenaTeam.h
rename : src/server/game/BattleGrounds/BattleGround.cpp => src/server/game/Battlegrounds/Battleground.cpp
rename : src/server/game/BattleGrounds/BattleGround.h => src/server/game/Battlegrounds/Battleground.h
rename : src/server/game/BattleGrounds/Zones/BattleGroundAA.cpp => src/server/game/Battlegrounds/Zones/BattlegroundAA.cpp
rename : src/server/game/BattleGrounds/Zones/BattleGroundAA.h => src/server/game/Battlegrounds/Zones/BattlegroundAA.h
rename : src/server/game/BattleGrounds/Zones/BattleGroundAB.cpp => src/server/game/Battlegrounds/Zones/BattlegroundAB.cpp
rename : src/server/game/BattleGrounds/Zones/BattleGroundAB.h => src/server/game/Battlegrounds/Zones/BattlegroundAB.h
rename : src/server/game/BattleGrounds/Zones/BattleGroundAV.cpp => src/server/game/Battlegrounds/Zones/BattlegroundAV.cpp
rename : src/server/game/BattleGrounds/Zones/BattleGroundAV.h => src/server/game/Battlegrounds/Zones/BattlegroundAV.h
rename : src/server/game/BattleGrounds/Zones/BattleGroundBE.cpp => src/server/game/Battlegrounds/Zones/BattlegroundBE.cpp
rename : src/server/game/BattleGrounds/Zones/BattleGroundBE.h => src/server/game/Battlegrounds/Zones/BattlegroundBE.h
rename : src/server/game/BattleGrounds/Zones/BattleGroundDS.cpp => src/server/game/Battlegrounds/Zones/BattlegroundDS.cpp
rename : src/server/game/BattleGrounds/Zones/BattleGroundDS.h => src/server/game/Battlegrounds/Zones/BattlegroundDS.h
rename : src/server/game/BattleGrounds/Zones/BattleGroundEY.cpp => src/server/game/Battlegrounds/Zones/BattlegroundEY.cpp
rename : src/server/game/BattleGrounds/Zones/BattleGroundEY.h => src/server/game/Battlegrounds/Zones/BattlegroundEY.h
rename : src/server/game/BattleGrounds/Zones/BattleGroundIC.cpp => src/server/game/Battlegrounds/Zones/BattlegroundIC.cpp
rename : src/server/game/BattleGrounds/Zones/BattleGroundIC.h => src/server/game/Battlegrounds/Zones/BattlegroundIC.h
rename : src/server/game/BattleGrounds/Zones/BattleGroundNA.cpp => src/server/game/Battlegrounds/Zones/BattlegroundNA.cpp
rename : src/server/game/BattleGrounds/Zones/BattleGroundNA.h => src/server/game/Battlegrounds/Zones/BattlegroundNA.h
rename : src/server/game/BattleGrounds/Zones/BattleGroundRB.cpp => src/server/game/Battlegrounds/Zones/BattlegroundRB.cpp
rename : src/server/game/BattleGrounds/Zones/BattleGroundRB.h => src/server/game/Battlegrounds/Zones/BattlegroundRB.h
rename : src/server/game/BattleGrounds/Zones/BattleGroundRL.cpp => src/server/game/Battlegrounds/Zones/BattlegroundRL.cpp
rename : src/server/game/BattleGrounds/Zones/BattleGroundRL.h => src/server/game/Battlegrounds/Zones/BattlegroundRL.h
rename : src/server/game/BattleGrounds/Zones/BattleGroundRV.cpp => src/server/game/Battlegrounds/Zones/BattlegroundRV.cpp
rename : src/server/game/BattleGrounds/Zones/BattleGroundRV.h => src/server/game/Battlegrounds/Zones/BattlegroundRV.h
rename : src/server/game/BattleGrounds/Zones/BattleGroundSA.cpp => src/server/game/Battlegrounds/Zones/BattlegroundSA.cpp
rename : src/server/game/BattleGrounds/Zones/BattleGroundSA.h => src/server/game/Battlegrounds/Zones/BattlegroundSA.h
rename : src/server/game/BattleGrounds/Zones/BattleGroundWS.cpp => src/server/game/Battlegrounds/Zones/BattlegroundWS.cpp
rename : src/server/game/BattleGrounds/Zones/BattleGroundWS.h => src/server/game/Battlegrounds/Zones/BattlegroundWS.h
2010-08-08 04:12:18 +02:00