Commit Graph

1049 Commits

Author SHA1 Message Date
jackpoz
cc0f20f73d Core/Misc: Fix no-pch build 2019-02-16 18:28:25 +01:00
jackpoz
46f2595f51 Core/Networking: Set SO_REUSEADDR on *nix platforms 2019-01-18 20:31:47 +01:00
Giacomo Pozzoni
57d7b19452 Core/Networking: Fix memory leak (#22923)
Fix memory leak reported by ASan happening when ports fail to bind in Authserver
2019-01-10 20:02:09 +01:00
Treeston
fcfcb0eb6f Happy New Year, folks. It's 2019! 2019-01-01 15:45:25 +01:00
Shauren
3b5014fdae Core/Spells: Fixed ErrorCube spell missiles 2018-12-31 21:41:25 +01:00
Ghaster
bf3ab6d9c4 Core/Creatures: Port trainer changes from master
Closes #20493
2018-12-30 19:51:36 +01:00
Treeston
3acba6dded Core/Misc: Explicit typing for SpellAttrN enums, add nicer text to UNKs, and restore some relevant info from old comments. Final one of these. 2018-12-11 14:38:50 +01:00
Treeston
cd7b036485 Core/Misc: Update description text for SpellAttr6 and SpellAttr7 2018-11-27 15:59:36 +01:00
Treeston
d920e5b0e4 more clarity (9309988 follow-up) 2018-11-27 00:02:47 +01:00
Treeston
9309988a05 Core/Misc: Update description text for SpellAttr5 (I'm back, baby!) 2018-11-26 23:57:02 +01:00
Treeston
8836fc3903 Core/Misc: Update description text for SpellAttr4 2018-11-14 19:37:10 +01:00
Treeston
50f78e686c Core/Misc: Update description text for SpellAttr3 2018-11-13 01:20:51 +01:00
Treeston
9b4feaacfa Core/Misc: Update description text for SpellAttr2 2018-11-12 20:43:15 +01:00
Treeston
8cac5feb58 Core/Misc: Update description text for SpellAttr1 2018-11-12 13:05:27 +01:00
Treeston
b69ee07d50 Core/Misc: Update description text for SpellAttr0 to match actual behavior 2018-11-12 01:22:27 +01:00
Shauren
f6b0d99e2c GCC build fix
Closes #22785
2018-11-12 00:39:53 +01:00
Treeston
c16d461e16 Core/Util: Redesign SmartEnum to properly work for large enums (>64 entries) and play nice with IDEs (PR #22768) 2018-11-11 17:52:41 +01:00
Treeston
338e8ba0fe Core/Misc: Partial merge of 3.3.5-dbedit:
- Added SmartEnum.h for enum iteration, stringification, and more, courtesy of krabicezpapundeklu/smart_enum
- Moved a bunch of enums in SharedDefines.h to the new system
- Miscellaneous utility methods ported
2018-10-26 14:43:22 +02:00
ccrs
7417cbc655 Core/Shared: add BattlefieldBattleId definitions
Also rename BG_TEAMS_COUNT and BattlegroundTeamId
2018-10-24 16:45:26 +02:00
Treeston
f2447a8dfc Core/DBC: Some cleanup of Cleanup (8edea4a follow-up) 2018-10-02 20:05:22 +02:00
Treeston
8edea4a3c2 Core/DBC: Sanitize DBC loading procedure. Extra checks. Capability to load strings from DB. Load SpellName from spell_dbc. 2018-10-02 19:01:57 +02:00
Treeston
ab3eab990e Core/Misc: Revert 4990423, need to find out a better way to handle this. 2018-09-27 20:59:48 +02:00
Treeston
4990423dbf Core/Misc: Unify naming of DBC entry, storage and format identifiers based on DBC file name
* DBC file name: <dbc>.dbc
* Format string: DBCfmt_<dbc>
* DB Format string: DBCfmt_<dbc>_DBFormat
* DB index string: DBCfmt_<dbc>_DBIndex
* Entry struct: <dbc>Entry
* Global storage: s<dbc>Store
2018-09-27 18:19:20 +02:00
Treeston
1dc675f0a1 Core/Misc: constexpr a bunch of things, and a missing include of Windows.h somewhere
(that last one wasn't me!)
2018-09-27 14:42:42 +02:00
Treeston
8ad5322465 Core/Misc: Move some headers from game/ to shared/ 2018-09-27 14:01:34 +02:00
jackpoz
deabd4ab45 Core/Packets: Reduce memory footprint of cached queries (#22297)
Ensure only the minimum required memory is used by caching query packets by calling shrink_to_fit()
2018-08-22 19:44:21 +02:00
Shauren
fcb1e3e642 Core/PacketIO: Added missing move assignment operator to ByteBuffer 2018-04-19 17:35:57 +02:00
Shauren
c01d4ceadc nopch build fix 2018-01-08 20:40:53 +01:00
Shauren
b2b4f9d1e4 Core/Misc: Added compatibility layer for boost 1.66 and future std:: networking stuff
* Based on work done by @dimiandre in PR #21173

Closes #21171
Closes #21173

(cherry picked from commit dfd2660a85)
2018-01-06 12:30:28 +01:00
Shauren
6da6f1b415 Core/Networking: Activate single threaded optimization for io_service running in NetworkThread
(cherry picked from commit 9711dd3f70)
2018-01-06 12:29:23 +01:00
tkrokli
f6b6f57a6d Update copyright note for 2018
Best wishes for the new year.
2018-01-01 01:55:29 +01:00
Naios
85e460802d Build: Inherit the features and warning flags privately
(cherry picked from commit 1285347518)
2017-12-21 23:31:11 +01:00
Naios
92f96fc10e Build: Use the cotire library for precompiled header handling
* Required for handling flags inherited by linked projects
  correctly in the corresponding precompiled header.
* Reduces the maintenance effort for precompiled headers
2017-12-17 20:22:34 +01:00
Aokromes
6c9c106d39 Misc: More cleanup 2017-11-25 03:00:05 +01:00
Aokromes
59e94fd9bb Misc: More cleanup 2017-11-25 02:39:27 +01:00
jackpoz
9b7c73a19d Core/Misc: Fix static analysis issues 2017-11-12 12:38:18 +01:00
jackpoz
b2a341df6e Core/Misc: Fix static analysis issues 2017-07-15 16:22:32 +02:00
ariel-
85a7d5ce9a Core: ported headers cleanup from master branch 2017-06-19 23:20:06 -03:00
Shauren
7874bee7bf Core/Misc: Cleanup worldserver/authserver main() functions to run 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 6c92a481a3)
2017-06-19 04:04:21 -03:00
Shauren
f59bac4d14 Build fix 2017-06-05 20:00:28 +02:00
ariel-
d56a28afee Core/Globals: add more AIName and MovementType checks to ObjectMgr
- Ninja fix AI factories (restores prev behaviour of not selecting stuff with PERMIT_BASE_NO)

Closes #19831
2017-06-02 04:17:29 -03:00
ariel-
ce3787f190 Core/AI: Factory functions cleanup
- 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-06-01 02:29:20 -03:00
xinef1
b955456008 Few small optimizations here and there (#18684)
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-28 01:00:28 -03:00
tkrokli
6a51a88767 Update Copyright notice for 2017
Happy new year!
2017-01-02 19:52:45 +01:00
ariel-
3b6fd226be Core/Misc: fix interaction of spells like Shadowmeld with Threat reducing 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-10-06 23:14:51 -03:00
jackpoz
4073cc510a Core/Packets: Port packet handling rework from 6.x branch (#17777)
* 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-19 22:29:00 +02:00
jackpoz
1d7013e0e2 Core/MMAPs: Update recast
Update recast to 64385e9ed0
2016-08-17 22:00:35 +02:00
jackpoz
194fbd1792 Core/Dynamic: Reduce differences between 3.3.5 and 6.x branches
Code functionality shouldn't have been modified.
2016-08-12 11:33:02 +02:00
r00ty-tc
de918a0f64 Core/Maps - Improvements to Cinematic function
- 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-05-11 11:56:25 +02:00
r00ty-tc
87b4533046 [Core/Maps] Activate creatures and objects during opening cinematics and 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-14 01:34:17 +02:00