aboutsummaryrefslogtreecommitdiff
path: root/src/server/shared
AgeCommit message (Collapse)Author
2018-01-08nopch build fixShauren
2018-01-06Core/Misc: Added compatibility layer for boost 1.66 and future std:: ↵Shauren
networking stuff * Based on work done by @dimiandre in PR #21173 Closes #21171 Closes #21173 (cherry picked from commit dfd2660a85e4f0891c63009ee8425b2796586409)
2018-01-06Core/Networking: Activate single threaded optimization for io_service ↵Shauren
running in NetworkThread (cherry picked from commit 9711dd3f706a30d23f57b259765837b71292d09e)
2018-01-01Update copyright note for 2018tkrokli
Best wishes for the new year.
2017-12-21Build: Inherit the features and warning flags privatelyNaios
(cherry picked from commit 12853475186569b2f47f1d69f817cbef8e590d83)
2017-12-17Build: Use the cotire library for precompiled header handlingNaios
* Required for handling flags inherited by linked projects correctly in the corresponding precompiled header. * Reduces the maintenance effort for precompiled headers
2017-11-25Misc: More cleanupAokromes
2017-11-25Misc: More cleanupAokromes
2017-11-12Core/Misc: Fix static analysis issuesjackpoz
2017-07-15Core/Misc: Fix static analysis issuesjackpoz
2017-06-19Core: ported headers cleanup from master branchariel-
2017-06-19Core/Misc: Cleanup worldserver/authserver main() functions to run ↵Shauren
destructors in predictable order * world/auth servers will now fail to startup if listen ports are in use * Restored "Network.OutUBuff" config option lost during boost transition (cherry picked from commit 6c92a481a34eb19c7ba751a1f7547a39c3d3a088)
2017-06-05Build fixShauren
2017-06-02Core/Globals: add more AIName and MovementType checks to ObjectMgrariel-
- Ninja fix AI factories (restores prev behaviour of not selecting stuff with PERMIT_BASE_NO) Closes #19831
2017-06-01Core/AI: Factory functions cleanupariel-
- Get rid of fugly void pointers - Streamlined AI selection code, using Permissible as it should've been instead of harcoded checks on the selector code - Moved IdleMovementGenerator singleton to factory code
2017-01-28Few small optimizations here and there (#18684)xinef1
Changes list: - Added CharacterGuidByNameContainer which contains name -> guid unordered map (updated along CharacterInfo) - Extended CharacterInfo structure with GuildId - Extended CharacterInfo structure with ArenaTeamId[3], for all possible teams (2v2, 3v3, 5v5) - Removed CHAR_SEL_GUID_BY_NAME and CHAR_SEL_CHAR_GUID_BY_NAME synchronous queries, name -> guid can be now retrieved in World::GetCharacterGuidByName - Removed CHAR_SEL_GUID_RACE_ACC_BY_NAME synchronous query, guid can be retrieved by name and rest of the data can be retrieved by guid - Removed CHAR_SEL_CHAR_LEVEL synchronous query, level can be retrieved by guid - Changed CHAR_SEL_CHARACTER_ACTIONS_SPEC to asynchronous query, action bars are now loaded asynchronously - Removed CHAR_SEL_CHARACTER_NAME_CLASS synchronous query, guid can be retrieved by name and rest of the data can be retrieved by guid - Removed CHAR_SEL_PLAYER_ARENA_TEAMS and CHAR_SEL_ARENA_TEAM_ID_BY_PLAYER_GUID synchronous queries, arena teams are now stored in CharacterInfo - Replaced synchronous db calls with CharacterInfo lookups - Removed ObjectMgr::GetPlayerGUIDByName, as it used db query - Replaced some unnecessary UpdateObjectVisibility() calls because they were either duplicated (called few lines above in other function) or it is enough to call DestroyForNearbyPlayers because object is being removed or should be invisible and DestroyForNearbyPlayers is faster - Corrected typo in Player::DestroyForPlayer, only items in slots 0 to EQUIPMENT_SLOT_END are sent to other players - Renamed Player::GetGuildIdFromDB to Player::GetGuildIdFromCharacterInfo and changed the function to use CharacterInfo structure - Renamed Player::GetArenaTeamIdFromDB to Player::GetArenaTeamIdFromCharacterInfo and changed the function to use CharacterInfo structure - Renamed Player::GetLevelFromDB to Player::GetLevelFromCharacterInfo and changed the function to use CharacterInfo structure - Removed GameEventMgr::_questToEventLinks and associated functions, eventId is now stored in Quest class under _eventIdForQuest variable - Changed some functions checking quest status to use other functions for quest status check instead of duplicating code - Removed callback from add friend, because we can get the guid from appropriate storage, no need to make db query - Removed callback from add ignore, because we can get the guid from appropriate storage, no need to make db query - Added callback to unwrap wrapped items asynchronously - Removed synchronous select in tutorials to check if we have any entries in db, if any entry exists in db, m_TutorialsChanged variable will have TUTORIALS_FLAG_LOADED_FROM_DB flag added and it is no longer necessary to query database
2017-01-02Update Copyright notice for 2017tkrokli
Happy new year!
2016-10-06Core/Misc: fix interaction of spells like Shadowmeld with Threat reducing ↵ariel-
effects - SPELL_AURA_MOD_TOTAL_THREAT should be temporary and not added/subtracted from total, only computed - Cleanup of reference related code - Kill getLast() and reverse iterator obsevers, LinkedList iterator can't be used as a standard reverse_iterator (ie with operator++). They weren't used anyways
2016-08-19Core/Packets: Port packet handling rework from 6.x branch (#17777)jackpoz
* Core/Packets: Port packet handling rework from 6.x branch Port packet handling reword from 6.x branch. Old handlers are still used at the moment, these changes allow to port old handlers to new packet-specifc ones.
2016-08-17Core/MMAPs: Update recastjackpoz
Update recast to https://github.com/recastnavigation/recastnavigation/commit/64385e9ed0822427bca5814d03a3f4c4d7a6db9f
2016-08-12Core/Dynamic: Reduce differences between 3.3.5 and 6.x branchesjackpoz
Code functionality shouldn't have been modified.
2016-05-11Core/Maps - Improvements to Cinematic functionr00ty-tc
- Moves to own class for reading, storage and player subclass - Proper destruction handling for player (ensure cinematic is ended) - Timeout for cinematic if it reaches past the end without completing - boost::filesystem::path used for path/filename transform - Correct for assert trigger under certain circumstances - Other changes previously suggested
2016-04-14[Core/Maps] Activate creatures and objects during opening cinematics and ↵r00ty-tc
other flyby cameras (sunwell etc). Requires re-running map extractor to extract camera m2 files from data files. These are very small. Closes #4755 Closes #16772
2016-04-09Build fixShauren
2016-04-09Core/Misc: MSVC /W4 warning fixesShauren
(cherry picked from commit 08c27d3205a6dc825512757ab88acf0e4379fe75)
2016-04-09Buildsystem: Initial changes to support building with vs clang toolsetShauren
(cherry picked from commit 4a3a178d7fe9d2d7e8fde2fe915cf5cec5223502)
2016-04-09Core/Common: Moved MessageBuffer to commonShauren
(cherry picked from commit a81a204678f4cbd8b8a53333600f50f0b494706a)
2016-04-09Core/Misc: Moved RealmList to sharedShauren
(cherry picked from commit cfe8a6a58b37280e4ed922e4d70878579dbc8bee)
2016-03-28Core/Network: Change SocketMgr.StartNetwork to take the thread count by arg ↵DDuarte
instead of config AuthSocketMgr doesn't need "Network.Threads" config Fixes "Missing name Network.Threads in config file authserver.conf" Ref #16859
2016-03-24Core/Shared: Converted the shared library to a shared library ,-).Naios
* There is still the possibility to static link against shared. (cherry picked from commit 25b0e743b1a823b636ffc1ba17062f8d5ebe35ab)
2016-03-18Core/Shared: Fix no PCH buildNaios
2016-03-18CMake: Use inherited dependencies in database, shared and gameNaios
2016-03-13Build fixShauren
2016-03-12Core/Networking: Added new AsyncRead method to Socket class allowing to pass ↵Shauren
a custom completion handler (Partially cherry-picked from f123c396591ffb50fa7e02365235740df618f579)
2016-03-12Core/Misc: Removed unneccessary boost/asio/buffer.hpp includeShauren
(cherry picked from commit 01be486f2f0f35e8421d1a1919bd037194756932)
2016-03-12Core/Networking: Fixed DelayedCloseSocket when compiled without ↵Shauren
TC_SOCKET_USE_IOCP (linux) Closes #16769 (cherry picked from commit 0daba931ef8e57777ed98a94a0a51c0690ba3d9c)
2016-03-11Core/Common: Generalize platform specific includes in common/PlatformNaios
(cherry picked from commit 30517cb1d3b27d5abb8632d863797aa5749199a6)
2016-03-06Core: Backport 6.x realm changesDDuarte
Make acessible all the info about current realm (e.g name) anywhere, not only realm id Reduce the number of differences between the two branches Original changes by Shauren Partial port of bacc90b6baa34e6a194c93e5a7860d4041f08af7 and 63def8aa3291d0a6e5f83b289ad12c4c8a3cebd9
2016-02-21Final build fix for gcc 4.7 (no longer supported in 8 days)Shauren
2016-02-20Core/Networking: Rewrite networking threading modelShauren
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-09Core/Utils: Moved rng functions to separate header and added utility ↵Shauren
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-01-01Update copyright note for 2016Rushor
2015-11-07Core: Whitespace cleanupVincent-Michael
2015-10-31Core/Networking: Fixed possible crashes happening if async query retrieving ↵Shauren
account data takes too long Closes #14944 (cherry picked from commit 590c6e399d778db459fc8417322c80549081440a)
2015-10-31Core/Threading: Fixed possible data races after making auth queries async by ↵Shauren
moving their processing to boost::asio::io_service::run threads (cherry picked from commit f6bc87fe5df8b60ca0bf3a35f61305fd780a7e7d)
2015-09-22Map local guids 6.x -> 3.3.35:pete318
Implemented: https://github.com/TrinityCore/TrinityCore/commit/ca83e14f8b141fab0a13e08f48fca6c1ace0c4c7 https://github.com/TrinityCore/TrinityCore/commit/ee1c1b97be4492ecabe8b15ea6323fc37e4eaa8c https://github.com/TrinityCore/TrinityCore/commit/18e4ab6911468b829b0fc768e532a770263c3717 https://github.com/TrinityCore/TrinityCore/commit/bf37446b3c2ed73b4d3aa9e227d3eff5c53b378b https://github.com/TrinityCore/TrinityCore/commit/cb854a2b7bb7bd96cf9c4d1daf3789f797bf4db8 * This adds separate (per map) guid sequences depending on object type * Ported map object container from cmangos/mangos-wotlk@a2d396e * Added type container visitor for TypeUnorderedMapContainer * Implemented helper function to erase unique pairs from multimap containers * Moved object storage of all objects except players and transports to map level * Added containers linking database spawn id with creature/gameobject in world * Renamed DBTableGuid to spawnId * Added a separate spawn id sequence generator for creatures and gameobjects - this will be used in db tables * Moved building SMSG_UPDATE_OBJECT - updatefields changes broadcast to map update * Added new function to return but not increment guid * Adjusted .debug loadcells to show low guid in map before/after load * Added debug messages for creature spawn/destroy, for map guid debugging * Store all Gameobjects and Creatures added to OutdoorPvP, so the callback script can be removed when OutdoorPvP instance is destroyed.
2015-08-24Core/BuildSystem: Merged crypto and gitrevision into common, cleaned include ↵StormBytePP
directory lists (to mimic 6.x buildsystem)
2015-08-16Core/Build: Renamed Revision.h to GitRevision.h to avoid compile failure ↵StormBytePP
when old revision.h file is present
2015-08-16Core/BuildSystem: Merge collision, debugging, threading, utilities and ↵StormBytePP
configuration into "common" which does not depend on shared anymore and moved database out of shared library These changes enables to build tools only without even having MySQL installed
2015-08-16Build fix for WheatyExceptionReport, c++ exceptions must not be thrown in ↵Shauren
SEH handlers