Commit Graph
112 Commits
Author SHA1 Message Date
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
Spp 25ac835507 Core/Groups: Move all function definition from .h to .cpp
Core/Groups: Remove Group.h dependency from any .h file

--HG--
branch : trunk
2010-11-29 07:50:31 +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
Shauren 7133f3f08e Core: Fixed some build warnings
--HG--
branch : trunk
2010-11-11 13:40:52 +01:00
Machiavelli 8862663df0 Core/Battleground: Fix a possible crash in Alterac Valley.
Author: HUNTERok
Fixes issue #4268

--HG--
branch : trunk
2010-11-09 11:08:33 +01: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
Liberate 0a1d017b7d Core/Arena: Add a missing change from revision 6802b3bf07. Also personal rating should now start at 1k again if the team rating is over 1k and a new member joins the team (and the start personal rating is set to 0 in the config).
Fixes issue #4283

--HG--
branch : trunk
2010-10-07 16:49:35 +02:00
Liberate 6a504b983c Core/Arena: Fix an exploit which made you gain personal rating when you leave arena, and add some comments to the arena system (which I should have done way earlier).
--HG--
branch : trunk
2010-10-07 16:35:08 +02:00
click 613b81f36f REALLY fix the CRLF-crap...
--HG--
branch : trunk
2010-10-07 15:54:07 +02: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 a67d7c9afd Copyright header updates - part 3... (and some whitespace cleanups)
--HG--
branch : trunk
2010-10-07 14:00:52 +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
linencloth 41d816740b Core/Battleground: Fix typo
--HG--
branch : trunk
2010-09-30 19:54:32 +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
Machiavelli 3c6dc32030 Core/DBLayer:
- Rewrite Field class to be able to store both binary prepared statement data and data from adhoc query resultsets
- Buffer the data of prepared statements using ResultSet and Field classes and let go of mysql c api structures after PreparedResultSet constructor. Fixes a race condition and thus a possible crash/data corruption (issue pointed out to Derex, basic suggestion by raczman)
- Conform PreparedResultSet and ResultSet to the same design standards, and using Field class as data buffer class for both
* NOTE: This means the fetching methods are uniform again, using ¨Field* fields = result->Fetch();¨ and access to elements trough fields[x].
* NOTE: for access to the correct row in prepared statements, ¨Field* fields = result->Fetch();¨ must ALWAYS be called inside the do { }while(result->NextRow()) loop.
* NOTE: This means that Field::GetString() returns std::string object and Field::GetCString() returns const char* pointer.

Still experimental and all that jazz, not recommended for production servers until feedback is given.

--HG--
branch : trunk
2010-09-24 22:16:21 +02:00
Spp 7a3fd2e9bf Core/: Fix warnings
--HG--
branch : trunk
2010-09-21 10:11:25 +02:00
Shocker eaadad5dfd Core/Arenas:
* Fix handling of Arena.ArenaStartPersonalRating
* Correct some typos for some arena configs in default world configuration file

--HG--
branch : trunk
2010-09-21 04:10:01 +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
click bf664b7a44 Cleanup/Core: Remove whitespace and tabs
--HG--
branch : trunk
2010-09-12 01:40:27 +02:00
Machiavelli a41e99223e Core/DBLayer:
* Rename QueryResult class to ResultSet
* Rename QueryResult_AutoPtr to QueryResult
* Declare ACE refcounted auto pointer for PreparedResultSet class

--HG--
branch : trunk
2010-09-11 21:10:54 +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
Shauren d42cfb6aa6 Core/Battlegrounds: Fixed scoreboard packet (and possible core crash) for TBC arenas, thx Maxdestroyer for pointing it out
--HG--
branch : trunk
2010-09-05 12:38:52 +02:00
Shauren 67c37b37cc Core/Battlegrounds: Added sanity checks for bg scoreboard packet handler, should fix client crashes in AV, thx Timothy003 for research
Closes issue #2165.

--HG--
branch : trunk
extra : rebase_source : b12e4ccf42d0d38064f1694242461eb0d9ad1605
2010-09-05 11:24:43 +02:00
Machiavelli 320cd16f20 Core/ArenaTeam: Correct player_divider use in ArenaTeam::GetAverageMMR and add a sanity check
--HG--
branch : trunk
2010-09-04 18:11:36 +02:00
Machiavelli a9ca3d5ed1 Core/ArenaTeam: Add a check to determine if a player is account for an accurate calculation of ArenaTeam::GetAverageMMR
Fixes issue #3789

--HG--
branch : trunk
2010-09-04 17:39:23 +02:00
Shocker 8331da627d Some old typo fixes, closes issues #3747, #2756, #2607, thanks 2010phenix/jean-michele.nefen/toshik.777
--HG--
branch : trunk
2010-09-02 15:25:02 +03:00
Spp 405f312918 Core: Fix more warnings
--HG--
branch : trunk
2010-08-30 15:25:15 +02:00
Liberate 1f9936399c Add a function to calculate the ratin gain/loss, instead of calculating it seperately 5 times.
Thanks to proof1337 for the patch.
Closes issue #3686

--HG--
branch : trunk
2010-08-29 23:36:55 +02:00
Liberate 453476e2c3 Fixes the huge personal rating gained. Damned typos.
Also changes the max rating loss from 48 to 24 when under 1000 rating.
Only the max rating gain is 48.
Huge thanks to Gyullo for giving me lots of info which led to finding this hidden typo.
Thanks go to click and Shocker as well for helping me find this issue.
Now, please, is it finished yet? is it finally over?

--HG--
branch : trunk
2010-08-28 23:17:09 +02:00
Liberate d91ec9d8dc Typo in r9b698bb399. Can this finally be over with? I'm being messy.
--HG--
branch : trunk
2010-08-28 16:10:07 +02: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
azazel caa3a58213 Core:
* add Player::HasEnoughMoney methods to check, whether player has specified amount of money and use new methods where applicable
* fix some signed/unsigned warnings and some typos

--HG--
branch : trunk
2010-08-23 22:58:32 +06:00
Spp 050f85b2c6 Core: Fix Windows compile
--HG--
branch : trunk
2010-08-23 15:46:12 +02:00
Spp 51d8333ccc Core: Fix more warnings
--HG--
branch : trunk
2010-08-23 15:11:06 +02:00
Spp 16d95d3115 Core: Fix some warnings
--HG--
branch : trunk
2010-08-23 07:51:19 +02:00
azazel 399e35f8f5 Core:
* fix "warning C4305: 'initializing' : truncation from 'double' to 'float'" warnings
* fix some other warnings here and there

--HG--
branch : trunk
2010-08-22 23:46:40 +06:00