Commit Graph
100 Commits
Author SHA1 Message Date
Shauren 3ae02de71b Core/Quests: Reset seasonal quests based on saved completion time and intended holiday start time 2022-12-24 23:56:06 +01:00
Shauren e7f8a0e086 Revert "Core/Event: prevent seasonal quests from resetting at server restart (#17455)"
This reverts commit 6a8ca9b0bf6f7cd355e1994723d6be6a5003d4d4.

# Conflicts:
#	src/server/game/Events/GameEventMgr.cpp
2022-12-24 23:36:13 +01:00
Shauren 05b2fe8acd Core/WorldStates: Migrate Ebon Hold worldstates from Player::SendInitWorldStates to new system 2022-12-21 22:09:35 +01:00
Shauren e9b13bcf00 Core/WorldStates: Migrate remaining hardcoded worldstates from Player::SendInitWorldStates to new system 2022-12-21 22:06:50 +01:00
Shauren d35f58a46d Core/WorldStates: Migrate pvp season worldstates to new system 2022-12-21 22:05:48 +01:00
Shauren ccff3af924 Core/WorldStates: Migrate battleground HolidayWorldState to new system 2022-12-21 22:01:54 +01:00
Shauren e748845e78 Core/WorldStates: Migrate OutdoorPvP worldstates to new system 2022-12-21 21:55:27 +01:00
Shauren c63312cc06 Core/WorldStates: Migrate battleground worldstates to new system 2022-12-21 21:41:58 +01:00
Shauren 5657280b65 Core/GameObjects: Implemented playerCast (Data23) for GAMEOBJECT_TYPE_GOOBER 2022-12-19 16:06:26 +01:00
Shauren e548dfafdf Scripts/Gossip: Fixed money not being removed when enabling/disabling experience gains 2022-12-18 13:48:43 +01:00
Shauren 36aacc7f2a Core/Gossip: Fixed gossip menu options not performing their default actions when added by script using db data 2022-12-18 13:47:54 +01:00
Shauren f5f6dbfa3e Core/GameObjects: Use serverOnly property of GameObjectTemplate for all types that have it, not just spell focus 2022-11-18 10:38:58 +01:00
Shauren 4e0e5785e9 Core/Misc: Minor cleanup in worldserver main.cpp 2022-10-20 22:21:47 +02:00
Shauren 6daa2ce262 Core/Threading: Create ThreadPool class
# Conflicts:
#	src/server/worldserver/Main.cpp
2022-10-20 22:21:41 +02:00
Shauren 030fe869df Core/WorldStates: Skip sending SMSG_UPDATE_WORLD_STATE when value does not change 2022-10-09 14:03:19 +02:00
Shauren 0a5de93e82 Core/WorldStates: Allow setting "hidden" field of SMSG_UPDATE_WORLD_STATE 2022-10-09 14:01:46 +02:00
Shauren 12b60099f8 Core/WorldStates: Migrate instance script worldstates to new system 2022-10-09 13:45:38 +02:00
Shauren fe7e42b0b8 Core/WorldStates: Migrate Tol Barad worldstates to new system 2022-10-09 13:11:33 +02:00
Shauren 10823f8fcc Core/WorldStates: Add area requirements to world states 2022-10-09 01:34:37 +02:00
Shauren 8a98cc0205 Core/WorldStates: Migrate Wintergrasp worldstates to new system 2022-10-09 01:15:02 +02:00
Shauren 3aae23803d Core/Battlefield: Fixed startup crash when compiled without scripts
(cherry picked from commit 1405760f317cfcfed29aca5ab36633863a2d9dc9)
2022-10-09 00:46:17 +02:00
Shauren 6fc90de3b5 Core/WorldStates: Allow multiple map ids for world states 2022-10-08 23:48:04 +02:00
Shauren 0461bdc730 Core/WorldStates: Migrate conditions and criteria to new worldstate api 2022-10-08 23:18:03 +02:00
Shauren 3f51add635 Dynamic build fix
# Conflicts:
#	src/server/game/Maps/MapManager.cpp
2022-10-08 00:51:17 +02:00
Shauren 0ba58aeb6e Core/Maps: Move terrain data handling out of Map class
Partial port of cmangos/mangos-wotlk@ff5232c648
2022-10-08 00:25:32 +02:00
Shauren 21e9854686 Core/Maps & Extractors: Move copypasted map file headers into a single shared file and replace #defines with enums 2022-10-07 22:16:46 +02:00
Shauren 8c447da29d Core/Misc: Rename MapDefines.h to MMapDefines.h as it contains mmap defines exclusively 2022-10-07 19:09:42 +02:00
Shauren 0ca955897f Core/Spells: Remove all hardcoded restrictions for pick pocket spell effect and rely only on presence of pickpocket loot in db 2022-10-04 12:42:10 +02:00
Shauren cf2bf7f77f Core/Spells: Corrected implementation of SPELL_ATTR1_ALLOW_WHILE_STEALTHED and SPELL_ATTR2_ALLOW_WHILE_INVISIBLE to use DispelType instead of checking effect types 2022-10-04 12:36:58 +02:00
Shauren 03cf98152e Core/DataStores: Defined map.dbc flags 2022-10-04 12:32:58 +02:00
Shauren b4a39d42a8 Core/Auras: Fixed requireImmunityPurgesEffectAttribute logic for school immunities 2022-09-30 12:50:31 +02:00
Shauren c3b52fd29f Core/Auras: Improve aura interactions with immunities on spell effect level
* Effects that target is immune to will be suppressed instead of completely removed
2022-09-30 12:49:31 +02:00
Shauren f35e49b515 Core/Spells: Implemented SPELL_ATTR6_TAPS_IMMEDIATELY 2022-09-30 11:27:56 +02:00
Shauren f93918ef0c Core/Spells: Implemented SPELL_ATTR6_ABSORB_CANNOT_BE_IGNORE 2022-09-30 11:26:38 +02:00
Shauren c78371f321 ore/Spells: Autorepeat casting fixes
* Fixed cast bars of ranged spells not disappearing when canceled while autoshooting
* Replaced hacky 500ms delay on non auto shot autorepeat spells with native spell cast time (wands have 500ms cast time)
* Update cooldowns before attempting to cast autorepeat spells (for cases when cooldown ends on the same server tick as cast attempt)
2022-09-30 11:08:20 +02:00
Shauren dfc6fe6450 Core/Spells: Cleanup movement checks in spells - use correct interrupt flags 2022-09-30 11:02:52 +02:00
Shauren 1f60928a51 Core/Spells: Implemented SPELL_ATTR6_DELAY_COMBAT_TIMER_DURING_CAST 2022-09-30 10:56:37 +02:00
Shauren b394faf376 Core/Spells: Implemented SPELL_ATTR6_NO_PUSHBACK 2022-09-30 10:55:29 +02:00
Shauren 50235ffcbc Core/Spells: Implemented SPELL_ATTR6_AURA_IS_WEAPON_PROC 2022-09-30 10:53:58 +02:00
Shauren 6900a904cb Core/Spells: Implemented SPELL_ATTR6_DO_NOT_RESET_COOLDOWN_IN_ARENA 2022-09-30 10:53:09 +02:00
Shauren 050300771d Core/Spells: Rename SpellAttr6 to use official attribute names 2022-09-30 10:45:17 +02:00
Shauren 818e73dd5f Core/Spells: Implemented SPELL_ATTR5_AURA_UNIQUE_PER_CASTER 2022-09-30 02:15:18 +02:00
Shauren 180836b977 Core/Spells: Implemented SPELL_ATTR5_ALWAYS_LINE_OF_SIGHT and SPELL_ATTR5_ALWAYS_AOE_LINE_OF_SIGHT 2022-09-30 02:14:25 +02:00
Shauren 0f6cac2373 Core/Spells: Implemented SPELL_ATTR5_TREAT_AS_AREA_EFFECT 2022-09-30 02:12:19 +02:00
Shauren 4cfd439d34 Core/Spells: Implemented SPELL_ATTR5_NOT_AVAILABLE_WHILE_CHARMED 2022-09-30 02:08:33 +02:00
Shauren 8fa4b57925 Core/Spells: Implemented SPELL_ATTR5_NOT_ON_PLAYER and SPELL_ATTR5_NOT_ON_PLAYER_CONTROLLED_NPC 2022-09-30 02:05:54 +02:00
Shauren 86fbfb77f4 Core/Spells: Implemented SPELL_ATTR5_IGNORE_AREA_EFFECT_PVP_CHECK 2022-09-30 02:01:13 +02:00
Shauren 2c78751b5a Core/Spells: Corrected implementation of SPELL_ATTR5_ALLOW_ACTIONS_DURING_CHANNEL - it allows casting other spells while channeling, not allows movement while channeling 2022-09-30 02:00:04 +02:00
Shauren 75906f3d06 Core/Auras: Added support for SPELL_ATTR5_LIMIT_N limit to other number than just 1 2022-09-30 01:57:52 +02:00
Shauren 70c76a166a Core/Spells: Removed SPELL_SPECIFIC_JUDGEMENT 2022-09-30 01:35:50 +02:00
Shauren d1700ba5fa Core/Spells: Rename SpellAttr5 to use official attribute names
* Implemented SPELL_ATTR8_HASTE_AFFECTS_DURATION
2022-09-30 01:30:14 +02:00
Shauren a7dc339a6a SHA-1: 8d16a79dea4c0100d36e13b068c42499a3a48154
* Core/Spells: Rename SpellAttr4 to use official attribute names

* Corrected implementation of SPELL_ATTR4_CLASS_TRIGGER_ONLY_ON_TARGET
* Implemented SPELL_ATTR4_NO_HELPFUL_THREAT
* Implemented SPELL_ATTR4_NO_PARTIAL_IMMUNITY
* Implemented SPELL_ATTR4_ALLOW_PROC_WHILE_SITTING
* Implemented SPELL_ATTR4_USE_FACING_FROM_SPELL
* Implemented SPELL_ATTR4_BOUNCY_CHAIN_MISSILES
* Implemented SPELL_ATTR4_AURA_NEVER_BOUNCES
* Implemented SPELL_ATTR4_AURA_BOUNCE_FAILS_SPELL
* Implemented SPELL_ATTR4_AURA_IS_BUFF
* Implemented SPELL_ATTR5_MELEE_CHAIN_TARGETING

* Implemented SpellEffectAttributes::ChainFromInitialTarget
2022-09-30 01:16:39 +02:00
Shauren 6856c1a0be Core/Spawns: Added startup error for incorrect map assignments in instance_spawn_groups 2022-09-23 20:41:31 +02:00
Shauren 946f928ee2 Core/Spells: Rename SpellAttr3 to use official attribute names
* Implemented SPELL_ATTR3_NO_AVOIDANCE
* Implemented SPELL_ATTR3_ONLY_PROC_OUTDOORS
* Implemented SPELL_ATTR3_ONLY_PROC_ON_CASTER
* Implemented SPELL_ATTR3_PVP_ENABLING
* Implemented SPELL_ATTR3_SUPPRESS_CASTER_PROCS
* Implemented SPELL_ATTR3_SUPPRESS_TARGET_PROCS
2022-09-13 15:40:25 +02:00
Shauren ea4bc6c02a Core/Spells: Rename SpellAttr2 to use official attribute names
* Corrected implementation of SPELL_ATTR1_ALLOW_WHILE_STEALTHED
* Implemented SPELL_ATTR2_RETAIN_ITEM_CAST
* Implemented SPELL_ATTR2_ALLOW_WHILE_INVISIBLE
* Implemented SPELL_ATTR0_PROC_FAILURE_BURNS_CHARGE
* Implemented SPELL_ATTR2_PROC_COOLDOWN_ON_FAILURE
* Implemented SPELL_ATTR2_NO_TARGET_PER_SECOND_COSTS
* Implemented SPELL_ATTR2_DO_NOT_REPORT_SPELL_FAILURE
* Implemented SPELL_ATTR1_REQUIRE_ALL_TARGETS
* Implemented SPELL_ATTR2_CHAIN_FROM_CASTER
* Implemented SPELL_ATTR2_NO_ACTIVE_PETS
* Implemented SPELL_ATTR2_ENCHANT_OWN_ITEM_ONLY
2022-09-13 14:36:32 +02:00
Shauren ca7d36873f Core/Spells: Rename SpellAttr1 to use official attribute names
* Implemented SPELL_ATTR1_NO_SKILL_INCREASE, SPELL_ATTR1_AURA_STAYS_AFTER_COMBAT, SPELL_ATTR1_DISPEL_ALL_STACKS
2022-09-12 09:15:31 +02:00
Shauren 16aef47f61 Core/Spells: Fixed implementation of Spell::EffectRechargeManaGem when it is not the first effect on a spell (0 cases, sync code between branches) 2022-09-12 09:15:30 +02:00
Shauren 39b5168dbb Core/Auras: Changed aura dot stacking rule to not ignore aura type of "existingAura" 2022-09-12 09:15:30 +02:00
Shauren b28ff89c5d Core/Spells: Prevent manual cancelling of channelled spells that have SPELL_ATTR0_CANT_CANCEL 2022-09-12 09:15:28 +02:00
Shauren eeef100e08 Core/Spells: Fixed checking free inventory space for some spells that have bad dbc data 2022-09-12 09:15:27 +02:00
Shauren e395af341a Core/Spells: Fixed crash with some gameobject spell casters 2022-09-12 09:15:22 +02:00
Shauren 54b65fc2ac Core/Objects: Properly ASSERT when trying to access invalid updatefields 2022-09-12 09:15:22 +02:00
Shauren 96c4a1b1f9 Core/Spells: Fixed unapplying rockbiter weapon 2022-09-12 09:15:21 +02:00
Shauren 5ceba73504 Core/Spells: Corrected haste affecting GCDs to match 3.3.5 client logic 2022-09-12 09:15:21 +02:00
Shauren dc8bf301bb Core/Auras: Fixed saving auras with same spell id but different item source 2022-09-12 09:15:21 +02:00
Shauren adfeaa7666 Core/PacketIO: Fixed SMSG_SPELLNONMELEEDAMAGELOG structure 2022-09-12 09:15:20 +02:00
Shauren d448ea4370 Core/Spells: Rename SpellAttr0 to use official attribute names 2022-09-12 09:15:04 +02:00
Shauren dcd46b8b1a Core/Phasing: Fixed terrain swaps appearing on incorrect maps when player is added to a map wilth not meeting its condition but later condition gets satisfied 2022-08-14 18:15:27 +02:00
Shauren 4b92f09fec Core/Transports: Initialize stoppable transports at start of path 2022-07-15 22:21:07 +02:00
Shauren 279f1cccae Core/GameObjects: Fixed crash when GameObject::Delete was used for transports 2022-07-10 01:15:57 +02:00
Shauren 16f699b049 Tools/mmaps_generator: Fixed loading db2 stores on linux
* Author @rapsys

Closes #21898

# Conflicts:
#	src/tools/mmaps_generator/PathCommon.h
2022-07-05 20:02:29 +02:00
Shauren 5931ab55f6 Core/Maps: fixed a typo in world state loading that caused all world states to become realm wide 2022-06-25 19:50:07 +02:00
Shauren 412f166561 Core/Items: Fixed logic mistake in ItemTemplate::IsRangedWeapon 2022-06-24 21:08:37 +02:00
Shauren 338e9d8033 Core/GameObjects: Use all axis rotations for gameobject model collision, not just orientation 2022-06-20 15:21:55 +02:00
Shauren 8733f6fafa Core/Utils: Added helper function to make creating unique_ptr with custom deleters more convenient
# Conflicts:
#	src/server/game/World/World.cpp
2022-06-19 21:42:45 +02:00
Shauren 440aecfe7b Core/Battlegrounds: Replace manual criteria timer starts in battlegrounds with new GameEvents api 2022-06-19 18:47:51 +02:00
Shauren 786131a162 Core/Transports: Localized transport objects within each map
Transports no longer move between maps, each map gets a separate copy of the transport object and players are moved between them when transferring to another map
This means they can no longer be globally looked up in HashMapHolder
2022-06-19 18:11:20 +02:00
Shauren acb599823e Core/Transports: Fixed stoppable elevator position calculation when going from first floor to third or higher
# Conflicts:
#	src/server/game/Entities/GameObject/GameObject.cpp
2022-06-19 16:15:44 +02:00
Shauren 5a236799c2 Core/Transports: Path generation rewrite v2
* No TaxiPathNode row is skipped anymore (events/delays on first node now work)
* Fixed transport animation synchronization with client
* Fixed stoppable transports randomly resuming their path after relogging
2022-06-18 22:37:46 +02:00
Shauren c682680a2f Core/Movement: Allow overwriting number of steps for spline length calculations
* Also minor cleanup of non-virtual functions in spline derived classes
2022-06-18 22:21:22 +02:00
Shauren e212f92161 GCC warning fix 2022-06-18 22:16:26 +02:00
Shauren 5c0c2e3f25 Core/Objects: Remove restriction on what object types can be set as active 2022-06-18 21:43:24 +02:00
Shauren 25465699f7 Core/GameObjects: Transport (type 11) improvements
* Fully synchronize serverside animation progress with client
* Implemented updating passenger positions on elevators
* Removed visibility hack for elevators that always forced CreateObject packet to be sent to client
2022-06-18 21:36:17 +02:00
Shauren b596675c3b Core/Transports: Extracted transport and vehicle passenger relocation to shared function 2022-06-18 19:13:38 +02:00
Shauren 79aa6e2456 Core/GameObjects: Implement more gameobject gameevent uses 2022-06-18 19:08:44 +02:00
Shauren 2b7b0b0db1 Core/Scripts: Begin unifying triggering gameevents (not the game_event db stuff) 2022-06-18 19:05:57 +02:00
Shauren 43c1876970 Core/Transports: Store information about continent transports 2022-06-18 18:53:25 +02:00
Shauren 30d6f97567 Core/DBLayer: Fixed false positive msvc analysis warning 2022-06-15 14:03:21 +02:00
Shauren b070267898 Core/Misc: Remove uses of std::aligned_storage (deprecated in future c++ standard)
# Conflicts:
#	src/common/Threading/MPSCQueue.h
#	src/server/game/Server/Packets/AuctionHousePackets.cpp
2022-05-18 13:52:21 +02:00
Shauren 76fc64b038 Core/PacketIO: Stop WorldSession packet processing loop immediately when AntiDOS kicks/bans the player
# Conflicts:
#	src/server/game/Server/WorldSession.cpp
2022-04-17 01:28:59 +02:00
Shauren 62368ec93e Core/World: Allow specifying minimum world updates diff in config 2022-04-17 01:26:21 +02:00
Shauren eff7e72c97 Core/CrashHandler: Support retrieving windows version names for all future versions 2022-04-17 01:23:52 +02:00
Shauren f442c684cc Dep/zlib: Upgrade embedded zlib to 1.2.12 2022-04-14 11:40:00 +02:00
Shauren c307969695 Core/Spells: Changed channel triggered spells to inherit positive/negative status from main spells 2022-02-22 21:24:49 +01:00
Shauren 93259bc282 Build: Never automatically link any boost library with a #pragma comment(linker) encountered in boost headers 2022-02-20 20:27:55 +01:00
Shauren 5ad23e61e4 Dep: Raise required boost versions to 1.73 on windows and 1.71 on linux and remove compatibility code for unsupported versions
# Conflicts:
#	dep/boost/CMakeLists.txt
2022-02-20 20:27:35 +01:00
Shauren 73bae7c5e5 Core/Spells: Correct implementation of SPELL_ATTR2_TRIGGERED_CAN_TRIGGER_PROC, SPELL_ATTR3_TRIGGERED_CAN_TRIGGER_PROC_2, SPELL_ATTR3_CAN_PROC_WITH_TRIGGERED and rename them (SPELL_ATTR2_ACTIVE_THREAT, SPELL_ATTR3_NOT_A_PROC, SPELL_ATTR3_CAN_PROC_FROM_PROCS) 2022-02-02 17:45:23 +01:00
Shauren f2b4f2208e Core/Objects: ported master branch handling for properly destroying objects via out of range and destroy object opcode
# Conflicts:
#	src/server/game/Entities/Creature/Creature.cpp
2022-02-02 16:24:42 +01:00
Shauren f4c39d1aa9 Build: Disable Visual Studio 2022 MSBuild resource manager to make compile take only as much time as it does in Visual Studio 2019 2022-01-28 21:14:47 +01:00
Shauren 29fc3d55b4 Build: Enable some msvc warnings that are enabled for other compilers
# Conflicts:
#	cmake/compiler/msvc/settings.cmake
2022-01-21 13:56:39 +01:00