Commit Graph
100 Commits
Author SHA1 Message Date
Shauren 0e9b34ff05 Merge pull request #16711 from ariel-/conditionmerge
[3.3.5 only] Core/Conditions: Improved mergeability between branches
2016-03-02 16:55:22 +01:00
Shauren 85c912c404 Core/Misc: Added Convenience methods removing auras by predicate
(cherry picked from commit 0953bcf73f01ab5d85bb8665fbf8451d0ed460b3)
2016-02-25 21:01:38 +01:00
Shauren 2345e84855 Final build fix for gcc 4.7 (no longer supported in 8 days) 2016-02-21 14:13:00 +01:00
Shauren e60f575ac8 Core/Misc: Fixed a crash happening when a db string array was NULL
Closes #15670
2016-02-20 13:13:29 +01:00
Shauren b2e03a7448 Core/Networking: Rewrite networking threading model
Each network thread has its own io_service - this means that all operations on a given socket except queueing packets run from a single thread, removing the need for locking
Sending packets now writes to a lockfree intermediate queue directly, encryption is applied in network thread if it was required at the time of sending the packet

(cherry picked from commit 97a79af4701621ec04b88c8b548dbc35d120e99e)
2016-02-20 13:08:03 +01:00
Shauren e4dfbb60fd Rename 2016_02_15_01_world_335.sql to 2016_02_19_01_world_335.sql 2016-02-19 15:03:21 +01:00
Shauren 2ee36facad Merge pull request #16622 from P-Kito/3.3.5
[3.3.5] Core/Spells: Fix Glyph of Arcane Shot
2016-02-19 15:02:17 +01:00
Shauren 655fc0135f Core/Auth: Cancel ban expiry check timer on shutdown 2016-02-16 00:16:31 +01:00
Shauren 811c8bbd69 Build fix 2016-02-15 19:40:34 +01:00
Shauren dfbb3bec56 Core/Auth: Moved expiring bans to background task - no longer blocking queries during login by default running every minute (configurable) 2016-02-15 19:38:53 +01:00
Shauren ce6221b10b Warning fix 2016-02-14 18:47:12 +01:00
Shauren 5bf90b3338 Core/Auth: Performance/security improvements
* Changed all db queries to async
* Added buffer length checks
* Only allow one challenge/proof packet per socket lifetime

Closes #13217
Closes #16602
2016-02-14 18:41:25 +01:00
Shauren 101c3f9303 Merge pull request #16585 from Treeston/3.3.5-flightform
Core/Spells: Disallow druid flight form while shapeshifted
2016-02-13 23:56:11 +01:00
Shauren ff45a422c5 Warning fix. 2016-02-12 20:45:09 +01:00
Shauren fa3f106693 Core/Maps: Use map.dbc zone fallback if no area is found in grid files, not only if grid files don't exist
Closes #16583
Closes #16584

Extracting new maps is NOT needed.
2016-02-12 20:39:25 +01:00
Shauren 9f6a7c7526 Merge pull request #16548 from Keader/omen
[3.3.5][6.x]Core/Scripts Fix multiple summon of Omen (Lunar Festival)
2016-02-12 10:04:49 +01:00
Shauren 7f817a4fc0 Core/Scripts: Fixed calling UnitScript hooks
Closes #16543

(cherry picked from commit f809e5e13eac66add49d361ffb1634ff2ba6d4aa)
2016-02-11 16:36:08 +01:00
Shauren 89d8d50b2e Core/Maps: Moved min height calculation to worldserver for more precise results
Closes #16530
2016-02-10 21:25:28 +01:00
Shauren 9d81ef2af2 Core/Creatures: Improved creature text selection to be "more random" instead of favoring first entry
(cherry picked from commit 41d6460c75ce094e8ade92c88b603231aaa8e8a5)

# Conflicts:
#	src/server/game/Texts/CreatureTextMgr.cpp
2016-02-09 19:26:43 +01:00
Shauren 55ef8d80a3 Core/Utils: Moved rng functions to separate header and added utility functions to select a random element from a container where each element can have different chance of being selected
(cherry picked from commit ae20b2ab561bc07d85f443ae914bc597c9d6ac6e)
(cherry picked from commit 921d893c2a82eb6ac0762bf7001df87911b44611)
(cherry picked from commit 9ab10d6e680ca835d1dfdfbceb9f18f330f994fc)
(cherry picked from commit 00c878e73a8c6b8ce3339d224ab5611df3bbd07c)
(cherry picked from commit ff9c999334d87acc3fcea9737753c30b7f1abe25)
(cherry picked from commit bc94bacce404401a480b6871eaa7bc38d766014c)
(cherry picked from commit d5b0ffbe9b0c07beb8d0dfc52a6532c2da805285)
2016-02-09 19:26:29 +01:00
Shauren 761c82e65a Core/Maps: Use IsValidMapCoord for checking Z coord instead of just std::isfinite - only acceptable values are between -17066.6656 and 17066.6656
(cherry picked from commit 4d956c89fc6f20c546a396573cf42aa97b844c09)
2016-02-09 19:18:05 +01:00
Shauren 25cdc5d980 Core/Maps: Parse MFBO adt chunk to properly handle height where player counts as falling under the map
* This fixes the height at which player is instantly killed when falling from The Frozen Throne
* Set PLAYER_FLAGS_IS_OUT_OF_BOUNDS on players under the map to enable release spirit button while still falling

Note: Extracting new maps is required
(cherry picked from commit 4f78efd4633f79285f176b61367a067b2cd90e2b)

# Conflicts:
#	dep/PackageList.txt
#	src/server/game/DataStores/DBCStructure.h
#	src/server/game/Entities/Player/Player.cpp
#	src/server/game/Handlers/MovementHandler.cpp
#	src/tools/map_extractor/CMakeLists.txt
#	src/tools/map_extractor/System.cpp
#	src/tools/map_extractor/adt.h
#	src/tools/map_extractor/loadlib.cpp
2016-02-09 18:44:19 +01:00
Shauren aa432db36d Core/Maps: Changed the way area data is stored in maps, it now uses ID field from AreaTable.dbc instead AreaBit used for exploration marker (and is not unique anymore on top of simply being stupidly confusing)
Note: Extracting maps is required
(cherry picked from commit db0b8bf24e2b8eb87e6aed7b031ebe138717403d)

# Conflicts:
#	src/server/game/Achievements/AchievementMgr.cpp
#	src/server/game/Chat/Chat.cpp
#	src/server/game/Conditions/ConditionMgr.cpp
#	src/server/game/DataStores/DBCStores.cpp
#	src/server/game/DataStores/DBCStores.h
#	src/server/game/DataStores/DBCfmt.h
#	src/server/game/Entities/Player/Player.cpp
#	src/server/game/Globals/ObjectMgr.cpp
#	src/server/game/Handlers/BattleGroundHandler.cpp
#	src/server/game/Handlers/MiscHandler.cpp
#	src/server/game/Maps/Map.cpp
#	src/server/game/Spells/Spell.cpp
#	src/server/game/Spells/SpellEffects.cpp
#	src/server/scripts/Commands/cs_go.cpp
#	src/server/scripts/Commands/cs_group.cpp
#	src/server/scripts/Commands/cs_lookup.cpp
#	src/server/scripts/Commands/cs_misc.cpp
#	src/tools/map_extractor/System.cpp
#	src/tools/mmaps_generator/TerrainBuilder.cpp
2016-02-09 18:19:28 +01:00
Shauren 9b796ddf0b Merge branch 'Keader-shamant6' into 3.3.5 2016-02-08 22:29:10 +01:00
Shauren fb9a686672 SQL: Rename file with proper date 2016-02-08 22:26:38 +01:00
Shauren 4611125339 Merge pull request #16465 from Keader/rapture
Core/Spells: Fixed cooldown check for Rapture (Priest) talent
2016-02-03 15:57:11 +01:00
Shauren cb8f64cb63 Merge pull request #16417 from Keader/kinetic
Core/Scripts Fix Kinetic Bomb stuck after knockback effect
2016-01-29 08:47:12 +01:00
Shauren 3f886025a2 Core/Spells: Ignore category cooldowns for triggered spells.
* This fixes weird issues where triggered spell fails because it has the same category as the spell triggering it

Closes #15794
Closes #15048

(cherry picked from commit 044edced9a5b8f0a53640bfea4727eb9d38eae7f)
2016-01-22 22:14:28 +01:00
Shauren 48940e292f Core/Quests: Fixed party accept quests 2016-01-12 19:41:27 +01:00
Shauren 3c3cde028c Core/Quests: Fixed quest sharing
Closes #12304
Closes #16183
2016-01-12 19:08:37 +01:00
Shauren a3dbfa5eb6 Core/Authserver: Do not close the socket immediately when user types in invalid authenticator token to allow receiving failure packet 2016-01-05 18:46:21 +01:00
Shauren 2f44bd9045 Merge pull request #16066 from Treeston/3.3.5-penance
Spells/Penance: Fix erroneous cooldown on misplaced hostile target
2015-12-19 13:22:12 +01:00
Shauren b3e718dcca Removed unneeded loop from previous commit, copypaste fail from 6.x 2015-12-12 00:06:59 +01:00
Shauren f72795240a Core/Creatures: Implemented automatic detection of trigger models, their order in creature_template no longer matters
(cherry picked from commit c488fb219ab080031488593a0b86ac785a7d2cae)
2015-12-11 23:51:04 +01:00
Shauren cc685ac334 Core/Items: Fixed a possible crash with soulbound tradable items
Closes #15700

(cherry picked from commit 094f505e404b5a4e4846657031f89ac44626a1f8)
2015-12-08 18:02:43 +01:00
Shauren 94e4bddb90 Scripts/Icecrown Citadel: Professor Putricide - fixed Expunged Gas damage formula
Closes #6396
2015-12-01 19:27:17 +01:00
Shauren 3ab108c8ea Core/Spells: Fixed passibe talent auras targeting pets instead of player
Closes #1543
Closes #15918
2015-11-29 14:13:30 +01:00
Shauren ba1e00399d Core/Players: Use constant gender from PLAYER_BYTES_3 where appropriate.
Closes #15895
2015-11-27 18:30:01 +01:00
Shauren e9bd786351 Merge pull request #15763 from ShinDarth/channeled
[3.3.5] Fix conflicts between duration and cast time of channeled spells
2015-11-25 18:31:33 +01:00
Shauren f012800751 Core/Spells: Fixed typo in ecbbcc8972 2015-11-17 17:51:09 +01:00
Shauren 071ede8a93 Core/Misc: Fixed memory leak in trade handler
(cherry picked from commit fc852181c578e2ab8644bebfef13199a7897ebe9)

CID 1339313
CID 1339312
2015-11-16 00:11:50 +01:00
Shauren ecbbcc8972 Core/Spells: Fixed Raise Dead cooldown
Closes #15862
2015-11-15 00:31:17 +01:00
Shauren 7631ec444e Core/DBLayer: Improve error message from 0a27f8bce264b8f6d8c55efa8ebc97f6e9cb7d11
(cherry picked from commit d31706b07e5e4a4d632f5deea7076e864b467bbe)
2015-11-14 13:54:36 +01:00
Shauren 536365a70f Fix build for mysql versions older than 5.7
(cherry picked from commit 5604aed5f130a48a660fa2a2f957489f6a3024ea)
2015-11-13 09:28:14 +01:00
Shauren 9bc5088a81 Core/DBLayer: Ensure that MySQL version used when compiling is the same as libmysql.dll version used for running the server.
Ref #15848

(cherry picked from commit 0a27f8bce264b8f6d8c55efa8ebc97f6e9cb7d11)
2015-11-12 17:55:10 +01:00
Shauren 11b3a60900 Buildsystem: Fixed building on windows 10 with cmake 3.4
(cherry picked from commit b5fbf773a5071fc4c88f8e0112ffe8a9f2f760e3)
2015-11-12 17:55:04 +01:00
Shauren 910fb00130 Core/Corpses: Fixed a possible crash adding bones to grid
Closes #15808

(cherry picked from commit ec1583df67605b7253a34dc5f153cdad5b16969e)
2015-11-06 21:30:41 +01:00
Shauren e9e349c7cc Dep/g3d: Removed std::shared_ptr, std::weak_ptr, std::dynamic_pointer_cast, std::static_pointer_cast and std::enable_shared_from_this from global namespace
(cherry picked from commit 2c23a686e30cd23dbfa18f2fdfac0282052731ab)
2015-11-05 21:33:23 +01:00
Shauren d6c52ba28c Core/Commands: Added assertion checking if command name is not null
(cherry picked from commit 56959697257aba3537af2273d9d30114bfd6bd5c)
2015-11-05 21:30:29 +01:00
Shauren a17c27aaeb Core/Accounts: Fixed ban check after 517a30d7c1 2015-11-05 21:25:51 +01:00
Shauren 965d29484b Core/Items: Corrected all spellid checks from item_template to also check -1
Closes #15797
2015-11-01 16:29:29 +01:00
Shauren e8909de8de Core/Accounts: Check active column when determining if account is banned or not 2015-11-01 13:16:29 +01:00
Shauren 14d382f185 Core/Conditions: Optimizations part 3 changed ConditionStore to a simple array
(cherry picked from commit db0c48c17fdf61b8816cc229dcfec907354326cd)
2015-10-31 20:26:40 +01:00
Shauren cba122ad94 Core/Conditions: Optimizations part 3 removed copying condition containers all over the place
(cherry picked from commit b09e63e9debfab49e635a591339294dd96b09d95)
2015-10-31 20:26:40 +01:00
Shauren 57c4b3d42c Core/Conditions: Add const to methods not modifying ConditionMgr
(cherry picked from commit 2cce998e905bed0873fbf0b3da981857c139e5d5)
2015-10-31 20:26:40 +01:00
Shauren 6ab90cc57d Core/Conditions: Optimizations part 2 removed unneeded code
(cherry picked from commit e5c1e7d71c3460a39317bacbc432adc3307c63ca)
2015-10-31 20:26:40 +01:00
Shauren 3158605603 Core/Conditions: Optimizations part 1 - use containers more suited for their role
(cherry picked from commit 9fa938f3e0df2ca6b9ff4f800a5b41ba18cdd214)
2015-10-31 20:26:40 +01:00
Shauren dc74454356 Core/Conditions: Type renaming
(cherry picked from commit 5e0cee85ddd67188365ead3f18206df088e1f0c7)
2015-10-31 20:26:40 +01:00
Shauren 635dc9c02a Core/Players: Fixed automatic learning skills gained from learning spells when leveling
Closes #15391

(cherry picked from commit 3fceabfa113983549b5784dfd3f42259a53c258b)
2015-10-31 18:57:59 +01:00
Shauren c5d36a3183 Core/Misc: Added a few stl header includes to Common.h
(cherry picked from commit 89b902b4e0d0016accd9540ca133519995a0b123)
2015-10-31 18:37:54 +01:00
Shauren b8e86b9b7a Core/DBLayer: Allowed using GetDouble for SUM results instead of requiring string conversions
(cherry picked from commit 3109ab2da08d094df97724355bff681d7951e576)
2015-10-31 18:25:40 +01:00
Shauren f56bb2e0a6 Core/Spells: Extended spell required shapeshift masks to 64 bits and defined a new spell attribute
(cherry picked from commit 191d2c7262d3680776579055a063a433add54277)
2015-10-31 18:14:36 +01:00
Shauren 119c372dff Dep: Silenced build warning in G3D header
(cherry picked from commit 22653c99f874e189bda6670c42be38151b58e52b)
(cherry picked from commit cce7f1adf2b76c59d8a07f080f23d4b125ed8f15)
(cherry picked from commit d2795c98ddf37ab3a74752ecf54ad65af8541c25)
2015-10-31 17:33:35 +01:00
Shauren 7fb63478bb Buildsystem: Added dependency on revision_data to common project. Simply including the header in GitRevision.cpp is not enough to rebuild that file after updating sources
Fixes having to build twice before GitRevision returns accurate info.

(cherry picked from commit 65999801d3085387a00d7bf0a172be77571123c5)
2015-10-31 17:30:59 +01:00
Shauren 1de03cf107 Core/Players: Implemented serverside validation of reserved/profane names
Closes #15357

New library dependency: Boost.Regex

(cherry picked from commit b564c10b13effed63c7b7dae25117e2e0a2c64e4)
2015-10-31 17:27:45 +01:00
Shauren 60da7c6552 Core/Networking: Fixed possible crashes happening if async query retrieving account data takes too long
Closes #14944

(cherry picked from commit 590c6e399d778db459fc8417322c80549081440a)
2015-10-31 16:04:14 +01:00
Shauren 97fe228334 Core/Threading: Fixed possible data races after making auth queries async by moving their processing to boost::asio::io_service::run threads
(cherry picked from commit f6bc87fe5df8b60ca0bf3a35f61305fd780a7e7d)
2015-10-31 15:56:02 +01:00
Shauren b95648ae27 Core/Threading: Significantly reduced the severity of possible data race during player login
* This commit changes a data race on a pointer value to data race on integers (guid)

(cherry picked from commit dbe20510569e6bd4a26892be84289b5864350ea6)
2015-10-31 15:41:32 +01:00
Shauren 517a30d7c1 Core/DBLayer: Sprinkle some async magic on worldserver auth/session load process
(cherry picked from commit 0e49eefe85790ac365c90202a2e22ce6b266ac31)
2015-10-31 15:36:48 +01:00
Shauren 6c53f820ae Core/Players: Fixed saving players with incorrect gender 2015-10-31 12:30:22 +01:00
Shauren ba3c54323b Travis: Upgrade clang to 3.5 2015-10-30 20:11:36 +01:00
Shauren 61094c911d Core/Misc: Warning fix 2015-10-30 18:40:29 +01:00
Shauren 53d56551be Travis: Added -k flag to make call so as many errors as possible are displayed instead of failing after the first one 2015-10-30 18:32:49 +01:00
Shauren e62f091a4b Core/Misc: Warning fix 2015-10-30 18:32:01 +01:00
Shauren 2e2bdec28f Travis fix. 2015-10-30 18:20:33 +01:00
Shauren 8c9ea7782a Core/Corpses: Fixed a crash happening when a corpse is added to a grid that was not yet fully loaded
Closes #15684
2015-10-30 17:53:00 +01:00
Shauren a94bdd00a9 Core/Corpses: Prevent deleting corpses by ObjectGridUnloader, fixes accessing freed memory in multiple places due to the corpse still being registered in Map containers
Closes #15775
Closes #15781
2015-10-30 17:51:19 +01:00
Shauren 4245c2c59d SQL: syntax fix in characters_database.sql 2015-10-30 08:15:01 +01:00
Shauren 4a36850167 Core/World: Store account id in CharacterInfo to reduce the amount of database queries
(cherry picked from commit aaaa1c34410c160c7b0382f5ecdb39fa01ba007c)
2015-10-29 21:08:00 +01:00
Shauren 38c7a37530 Core/Crash reporting: Fixed windows version detection for 8.1 and newer
(cherry picked from commit 4c866a0af0ffe1828c5694de7ef7007cefb46966)
2015-10-29 18:59:24 +01:00
Shauren c7bad70e55 Core/Players: Check if player can enter the instance during login before trying to add him to map
* Fixes name displaying as "Unknown"

(cherry picked from commit 45994a177c128dc83ea01b0697377f7b74b5c4ba)
2015-10-29 18:59:06 +01:00
Shauren b1b72dafd0 Warning fixes
(cherry picked from commit 82db416b5d4825f24da1ad92e771d6567750f649)
2015-10-29 18:56:26 +01:00
Shauren 31cf5ea305 Core/Misc: Removed manually defined ObjectGuid copy/move constructors. This will cause the compiler to automatically generate trivial constructors allowing them to be treated as simple integers
(cherry picked from commit 3fd15ed22a23af1c5bb2cf037f93c1bce5f1e243)
2015-10-29 18:52:00 +01:00
Shauren 1d17475791 Core/Corpses: Fixed map crash happening during map unload when there are corpses inside 2015-10-29 18:46:37 +01:00
Shauren 7dcddd90be Core/Spells: Improved spell category cooldown handling
* Category cooldown is stored with the spell that started the cooldown (and only resetting cooldown on that spell will clear cooldowns on entire category - this fully mirrors client behavior)
* This significantly reduces the amount of data saved to database for cooldowns
* Spell casts from items that have a different category specified than on spell will now check for cooldown during the cast

(cherry picked from commit 1efb3f08e278530f59d681f676b031a7fc6db3ac)

Closes #15766
Closes #15137
Closes #14837
2015-10-29 17:56:18 +01:00
Shauren 20b4e6f03a Core/Corpses: Fixed leaking corpses
Closes  #15765

(cherry picked from commit bd16520ecc91d827abae7f0447cc292fe9e843e9)
2015-10-28 21:56:40 +01:00
Shauren 96b5bfd985 Core/Commands: Fixed merge error 2015-10-23 18:12:42 +02:00
Shauren c92faf6277 Core/Commands: Refactored chat command script hook, fixes a crash when building with gcc 5
Closes #15616
Closes #15740

(cherry picked from commit 2d942ddcc528cc9fe718ebbd5903318fcbdab817)

# Conflicts:
#	src/server/scripts/Commands/cs_battlenet_account.cpp
#	src/server/scripts/Commands/cs_cast.cpp
#	src/server/scripts/Commands/cs_debug.cpp
#	src/server/scripts/Commands/cs_go.cpp
#	src/server/scripts/Commands/cs_misc.cpp
#	src/server/scripts/Commands/cs_mmaps.cpp
#	src/server/scripts/Commands/cs_modify.cpp
#	src/server/scripts/Commands/cs_npc.cpp
#	src/server/scripts/Commands/cs_reload.cpp
#	src/server/scripts/Commands/cs_ticket.cpp
2015-10-22 22:34:16 +02:00
Shauren c04c409f41 Merge pull request #15746 from Rushor/Venom
Core/Spells: Reduce Duration for EffectEnchantHeldItem-Spells
2015-10-20 17:31:21 +02:00
Shauren 90546f8a29 Renamed sql 2015-10-11 11:40:31 +02:00
Shauren 15cafba8d5 Merge pull request #15495 from Treeston/3.3.5-gemperfection
Core/Spell: Implement "Gem Perfection" (and framework for similar spells in the future)
2015-10-11 11:40:05 +02:00
Shauren 2415646d9e Merge pull request #15698 from Treeston/3.3.5-loatheb
Scripts/Naxxramas: Loatheb follow-up
2015-10-11 11:25:09 +02:00
Shauren 5529728ab0 Merge pull request #15689 from sirikfoll/FriendOrFowl
Core/Scripts: Friend or Fowl Achievement
2015-10-10 11:59:19 +02:00
Shauren c8b99012fd Merge branch 'Treeston-3.3.5-loatheb' into 3.3.5 2015-10-10 11:56:42 +02:00
Shauren ba100a0cb9 Rename sql 2015-10-10 11:56:31 +02:00
Shauren 88c2066ea8 Merge branch 'Treeston-3.3.5-heigan' into 3.3.5 2015-10-10 11:54:53 +02:00
Shauren 3e5d5e14a0 Rename sql 2015-10-10 11:54:41 +02:00
Shauren 02fc625e52 Merge branch '3.3.5-noth' into 3.3.5 2015-10-10 11:50:14 +02:00
Shauren f1c48bb716 Rename sql 2015-10-10 11:49:49 +02:00
Shauren b8a846d33e Merge pull request #15504 from Treeston/3.3.5-bosscombatpulse
Core/Creature: Add default-disabled periodic zone combat pulse (and have base AI enable it for bosses)
2015-10-10 11:42:28 +02:00