Commit Graph

977 Commits

Author SHA1 Message Date
pete318 dcb7082277 Map local guids 6.x -> 3.3.35:
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-09-22 21:33:57 +02:00
StormBytePP 405f823f68 Core/BuildSystem: Merged crypto and gitrevision into common, cleaned include directory lists (to mimic 6.x buildsystem) 2015-08-24 03:38:54 +02:00
StormBytePP 0cc3d883e1 Core/Build: Renamed Revision.h to GitRevision.h to avoid compile failure when old revision.h file is present 2015-08-16 23:08:01 +02:00
StormBytePP 1f66d719f2 Core/BuildSystem: Merge collision, debugging, threading, utilities and 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-16 21:23:15 +02:00
Shauren 222eaccc51 Build fix for WheatyExceptionReport, c++ exceptions must not be thrown in SEH handlers 2015-08-16 18:08:03 +02:00
StormBytePP 94f69fb1bc Core/Build: Removed obsolete SystemConfig.h and made genrev be part of shared library, which allows cache hits to happen more likely 2015-08-16 17:15:38 +02:00
DDuarte 90c9290761 Add a missing include of d5cf594bfe 2015-08-16 01:09:29 +01:00
DDuarte 233615c785 Fix build warnings addded in d5cf594bfe 2015-08-16 00:45:50 +01:00
Shauren cdbd563157 Core/Logging: Refactored appender creation to allow using logging without mysql dependency in tools (future task)
Conflicts:
	src/server/bnetserver/Main.cpp
	src/server/worldserver/Main.cpp
2015-08-16 00:09:02 +01:00
Vincent-Michael 9f04cbad21 Fix non pch build for Visual Studio 2015 compiler
(cherry picked from commit df1f4969d8)
2015-07-24 12:05:26 +01:00
DDuarte d12fec67f2 Core/Misc: Add a few consts to methods
(cherry picked from commit 7d9843c380)

Conflicts:
	src/server/bnetserver/Packets/ConnectionPackets.h
	src/server/game/AI/SmartScripts/SmartAI.h
	src/server/game/Battlefield/Battlefield.h
	src/server/game/Battlegrounds/Battleground.h
	src/server/game/Entities/Object/Object.h
	src/server/game/Entities/Player/Player.h
	src/server/game/Guilds/Guild.h
	src/server/game/Instances/InstanceSaveMgr.h
	src/server/game/Support/SupportMgr.h
2015-07-24 12:02:57 +01:00
Gacko 73fd4fb49c Fix non pch build.
(cherry picked from commit 49a6f7b7bd)
2015-07-24 11:52:28 +01:00
Shauren b4adf3f5dd Core/Misc: Fixing warnings detected by Visual Studio 2015 compiler
(cherry picked from commit a22e4e121a)

Conflicts:
	cmake/compiler/msvc/settings.cmake
	src/server/game/DataStores/DBCStores.cpp
	src/server/game/Entities/GameObject/GameObject.cpp
	src/server/game/Entities/Object/Object.cpp
	src/server/game/Entities/Object/Object.h
	src/server/game/Entities/Pet/Pet.cpp
	src/server/game/Entities/Player/Player.cpp
	src/server/game/Entities/Unit/Unit.cpp
	src/server/game/Garrison/Garrison.cpp
	src/server/game/Garrison/GarrisonMgr.cpp
	src/server/game/Globals/ObjectMgr.cpp
	src/server/game/Globals/ObjectMgr.h
	src/server/game/Guilds/GuildMgr.cpp
	src/server/game/Handlers/CharacterHandler.cpp
	src/server/game/Handlers/QueryHandler.cpp
	src/server/game/Handlers/QuestHandler.cpp
	src/server/game/Handlers/SpellHandler.cpp
	src/server/game/Server/Packets/ChannelPackets.h
	src/server/game/Server/Packets/PartyPackets.cpp
	src/server/game/Server/WorldSession.h
	src/server/game/Spells/Spell.cpp
	src/server/game/Spells/SpellInfo.cpp
	src/server/game/Spells/SpellScript.cpp
	src/server/scripts/Commands/cs_list.cpp
2015-07-24 11:51:48 +01:00
Naios 73212c2b09 Core/Utilities: Add std::chrono::duration overloads to EventMap.
* makes it possible to write:
```c++
events.ScheduleEvent(1, Seconds(10));
// ... or ...
events.ScheduleEvent(2, Minutes(1) + Seconds(20));
// ... or with C++14 support:
events.ScheduleEvent(2, 45s);
```

(cherry picked from commit e4e55a3dcb)
2015-07-22 02:18:41 +02:00
Naios 7f377a4f1b Core/Database: Enable perfect forwarding for database format calls.
(cherry picked from commit ca16dc8c1b)
2015-07-22 02:18:38 +02:00
Naios e011ae63d5 Core/Logging: Enable perfect forwarding for logging format and args.
* Handle timestamp parsing though cppformat.
* Change a wrong forward -> move

(cherry picked from commit 026ceb85b9)
2015-07-22 02:18:36 +02:00
et65 b0255927f0 Core/Logging: Partial cherry-pick from commit c6ab951025
* solves differences 3.3.5 <-> 6.x because of make_unique workarround.

(cherry picked from commit c6ab951025)

Signed-off-by: Naios <naios-dev@live.de>
2015-07-22 02:18:18 +02:00
Naios 09d34e0a9b Core/Utilities: Move EventMap into its own source file.
* Move implementation details to .cpp.

(cherry picked from commit 11bfead40b)

Conflicts:
	src/server/game/Battlegrounds/Battleground.h
	src/server/shared/Utilities/Util.cpp
2015-07-22 02:02:51 +02:00
Naios 1741bfc64e Core/Utilities: Forward parameters of StringFormat correctly to fmt::sprintf.
(cherry picked from commit 11dfd9e7d4)
2015-07-22 02:00:05 +02:00
Naios 45058990e2 Core/Utilities: Remove global using of std::chrono namespace.
* never use "using namespace" in header files!

(cherry picked from commit 6bf10c2b83)
2015-07-22 01:59:57 +02:00
Naios 4c0c634814 Core/Utilities: Seperate std::chrono::duration typedefs into its own file.
* add std::chrono_literals using decl. comment for future usage.

(cherry picked from commit 6e4a1b3e1e)
2015-07-22 01:59:50 +02:00
Shauren f880f2e778 Core/Threading: Clarified comment on ProducerConsumerQueue::WaitAndPop
(cherry picked from commit 08316552b5)
2015-07-19 00:48:17 +01:00
Shauren 23e4472d14 Core/PacketIO: Removed timezone adjustments from ReadPackedTime - player's session timezone offset should be used there, not server offset
(cherry picked from commit aa3b05c312)
2015-07-06 22:25:34 +01:00
Naios 4335611010 Core/Updater: Fix mysql cli password prompt when password is empty.
* ref: http://community.trinitycore.org/topic/11510-world-server-bug-enter-password-to-update/
2015-06-30 23:33:07 +02:00
Naios 836ec5a6e6 Core/Utilities: Fix callback invokation when there are no tasks present.
* thx @joschiwald for noticing.
2015-06-30 23:29:19 +02:00
Carbenium adb5d3ea5f Merge pull request #14941 from ShinDarth/db_backports3
DB/World schema backport: move questItem* fields to *_questitem tables
2015-06-29 20:03:11 +02:00
ShinDarth 1c0b0f825c DB/World schema backport: move questItem* fields to *_questitem tables 2015-06-29 19:21:00 +02:00
Warpten aade16a2f4 Scripts/RubySanctum: Updates to Halion.
* Fixed Living Embers not spawning.
* Meteor Strike is now randomized.

(cherry picked from 1447875cac)

Scripts/RubySanctum: Fix a mathematical mistake.
SQL: Do not use MAX(Id), hardcode it.

(cherry picked from 7a5bc9e1fe)

Scripts/RubySanctum: Correctly spawn Living Embers.

(cherry picked from 7c4b8b0e82)

Scripts/RubySanctum: Remove duplicate code.

(cherry picked from 1d29328769)

Core/Misc: Warning fixes

(cherry picked from dc53dad8a4)
2015-06-26 01:52:17 +01:00
ShinDarth f8230a59a9 DB/Characters: Backport schema changes from 6.x branch (renames)
Closes #14951
2015-06-26 00:28:32 +01:00
Naios 3d95aba2b3 Core/Utilities: TaskScheduler: add a task validator and on update success callback.
* makes it possible to block tasks if there is an active spellcast.
* requested by @joschiwald
2015-06-21 18:19:17 +02:00
Naios bd661b58fd Core/Updater: Fix a wrong formatter introduced in 0d095109ee
* thanks @Aokromes for noticing
2015-06-21 18:13:01 +02:00
Naios a5b3862bc1 Core/Updater: Add some info about the count of applied updates.
* some minor improvements
* add a log message when database updates are disabled.
2015-06-20 14:33:31 +02:00
Naios 151a0f5c5e Core/Shared: Hide the internal shared_ptr of the TaskContext
* use . operator instead of -> to access the TaskContext now.
* Add TaskContext::IsExpired to check whether the owner has expired.
2015-06-03 18:24:21 +02:00
jackpoz 1a5051a9c3 Core/CrashHandler: Make crashhandler tread-safe
Handle only 1 exception in the whole process lifetime and create only 1 crash report.
2015-06-01 21:43:57 +02:00
MitchesD db8fdd94ed Merge pull request #14782 from doctaweeks/fixes-for-6.x
Minor fixes for 6.x
(cherry picked from commit 0cf0209741)

Conflicts:
	src/server/bnetserver/Main.cpp
	src/server/game/Battlegrounds/Zones/BattlegroundBFG.h
	src/server/game/Battlegrounds/Zones/BattlegroundTP.h
	src/server/game/Chat/Channels/Channel.h
	src/server/game/Entities/Player/Player.h
	src/server/game/Quests/QuestDef.h
	src/server/scripts/OutdoorPvP/OutdoorPvPNA.h
	src/server/shared/Cryptography/SHA256.h
2015-06-01 00:39:56 +01:00
Naios da77a90aa9 Shared/Util: Introduce a task scheduler which schedules task with c++11 techniques.
* Use std::function as callback (methods, lamdas & std::bind).
* Uses std::chrono::duration as duration type (Milliseconds, Seconds...)
  - With c++11 user defined literals we could just write "11s" for example (MSVS 2015, gcc & clang).
* Provides a lot of overloads for easier usage:
  - Static durations or random durations between min and max.
  - Named (with group ids - group id 0 is possible) or anonymous tasks.
  - Asynchronous tasks.
* Is adapted to the current needs of scripting:
  - Repeat tasks through the TaskContext
  - Schedule new tasks from the context.
  - Provides access to the times repeat counter of a task,
    this will help to schedule multi step events (dialogs for example).

See https://gist.github.com/Naios/6d143538abdc3d32fd2b for usage examples.
2015-05-31 19:32:09 +02:00
glkrlos fd660d725d Core/Updater: Fix issues when connecting through unix sockets.
* closes #14766
* closes #14759

Signed-off-by: Naios <naios-dev@live.de>
2015-05-28 18:30:03 +02:00
jackpoz ec4b08e3cf Core/CrashHandler: Log STACK_OVERFLOW crashes
Try to log STACK_OVERFLOW crashes by allocating log buffer on the heap which should still be in a valid state with a stack overflow exception.
This will probably still not produce a complete crash report with details about all stackframes.
2015-05-23 23:15:56 +02:00
Shauren ba9e0de36d Core/Misc: Removed gcc specific packing pragma syntax - only unsupported (now) versions required it
(cherry picked from commit 4c7c2abf03)

Conflicts:
	src/server/bnetserver/Packets/BitStream.h
	src/server/shared/Common.h
2015-05-19 21:47:48 +01:00
Duarte Duarte f4c1a8fb2d Merge pull request #14454 from ariel-/cd
Port Core/Spells: Cooldown updates (6.x branch)
2015-05-19 18:52:05 +01:00
Shauren 970d7abf97 Core/Networking: Fixed possible msvc debug assertions in vector
(cherry picked from commit e4abbc0926)
2015-05-19 11:12:03 +01:00
Shauren 88af3ffc2a Core/Socket: Removed unused synchronous read method
(cherry picked from commit 59e9bcf0bf)

Conflicts:
	src/server/game/Server/WorldSocket.cpp
2015-04-29 00:06:19 +01:00
Naios 2592528741 Core/Log: Fix newlines when using dynamic log names
* thanks @Aokromes for reporting
* also removes an unnecessary std::move
2015-04-24 19:44:16 +02:00
Daniel M. Weeks 2dda2483a3 Add missing newline
(cherry picked from commit f48b86fd8a)
2015-04-15 19:29:38 +02:00
Daniel M. Weeks 5b556fb1cb Remove unnecessary semicolons
(cherry picked from commit 27923b8d8f)
2015-04-15 19:29:37 +02:00
Daniel M. Weeks c25a06f4b6 Fix documentation
(cherry picked from commit 62ff887236)
2015-04-15 19:29:36 +02:00
Daniel M. Weeks 67faa0f458 Prevent collisions in GCC attribute definitions
(cherry picked from commit 6484885600)
2015-04-15 19:29:35 +02:00
ariel- e707905764 Port commit 56186319bd (6.x branch)
Core/Spells: Cooldown updates

Updates #14418
2015-04-13 12:13:46 -03:00
click a09eafa104 Core: Whitespace/tab2spaces cleanup 2015-04-10 04:12:06 +02:00
Shauren 62a3edb84a Core/Misc: Warning fixes
(cherry picked from commit cc4d79495f)

Partial cherry-picked.

Signed-off-by: Naios <naios-dev@live.de>
2015-04-05 01:20:11 +02:00