Commit Graph

8703 Commits

Author SHA1 Message Date
treeston
9bacaf15b6 Woopsie. Fix an oversight causing the main tank flag in SelectTarget to be inverted. 2017-07-09 02:53:00 +02:00
treeston
74af880217 Hi, I'm Treeston, and welcome to Combat PR Prep Refactors.
Today, we're moving UNIT_FLAG_IMMUNE_TO_PC and UNIT_FLAG_IMMUNE_TO_NPC to higher-level abstraction so combat manager can react to it.
New methods on Unit:
- void SetImmuneTo<All/PC/NPC>(apply, keepCombat = false);
- bool IsImmuneTo<All/PC/NPC>() const;
2017-07-09 02:07:29 +02:00
Gustavo
a27a3e0457 Core/Auras: Implement SPELL_AURA_DETECT_AMORE (#19955)
Based on b58b29c958
2017-07-06 21:32:10 +02:00
treeston
88543c0eaa Formation idle: Remove more shitty code. Fixes #19995 for real this time. 2017-07-06 20:43:30 +02:00
treeston
2dd658cacc Fix formation follow. Closes #19995. 2017-07-06 19:41:49 +02:00
treeston
07593f6c34 Core/Combat: Fixed issues with creatures sometimes entering combat with friendly targets
Close #19980
2017-07-03 19:40:56 -03:00
treeston
0d27fee6f4 adjust CreatureGroups to use cmangos flags (for already-supported values, no functionality changed) 2017-07-03 20:03:39 +02:00
treeston
495e161db2 Fix an issue that was causing all creature group members to assist each other, even if only one of the aggro flags was set. Also refactor enum values to be readable.
Fixes #19977.
2017-07-03 19:39:16 +02:00
treeston
62d5113252 Two more refactors I missed for #19930. Last ones for now, I promise. 2017-07-03 17:49:54 +02:00
treeston
2739a5c5f5 Some more refactoring prep for combat/threat (#19930). 2017-07-03 17:33:34 +02:00
treeston
5d3c69bf44 Creatures now release spell focus on projectile launch (for spells that have a projectile portion) as opposed to projectile impact.
This should make some very slow projectiles (f.ex. Professor Putricide's Malleable Goo) a lot smoother.
2017-07-03 00:17:31 +02:00
Shauren
383b30041f Nopch fix 2017-07-01 20:40:07 +02:00
Treeston
e2a1ccd118 [3.3.5] Combat/Threat rewrite - prep & refactor (#19966)
* Combat/Threat rewrite (PR #19930) prep work. Mostly refactors, and a compatibility layer on ThreatManager/HostileReference that allows scripts to be changed already.
2017-07-01 20:18:02 +02:00
treeston
e35092c6a1 Combat/threat rewrite prep - merge RBAC/DB changes. 2017-06-28 17:27:34 +02:00
Treeston
7dfd472f8d Proper client timeout detection (#19906)
- Properly detect client timeout when logged into a character after a configurable time (default 60s) has passed without the client sending any packets.
- Fixes issues with crashed clients leaving characters in the world for a very long time (default 15 minutes), as well as edge case exploits involving intentionally pausing client execution for some amount of time.
2017-06-27 00:22:33 +02:00
Rushor
0770848322 Core/Creature: Implement Mangos GroupAI flags (allows formation without following) (#18733) 2017-06-25 12:29:05 +02:00
Treeston
489478b74d Core/Entities: Extend combo point system to all Units and fix numerous quirks with rogue CP and vehicles (Malygos P3) (#19914)
- Implement Wolverine Bite (fixes #752)
- General combo point system cleanup
2017-06-24 22:41:16 -03:00
ariel-
641c2036ab Core/Spells: fix runtime log spam 2017-06-24 22:28:00 -03:00
ariel-
d790f86a94 Core/Movement: silence warning 2017-06-24 17:27:38 -03:00
ariel-
30f9426b5b Core/Movement: New names for a few spline flags
(cherry picked from commit c7cd51e8f5)
2017-06-24 17:19:32 -03:00
Shauren
5024813fe3 Buildsystem: Minor PCH building changes
* *PCH.cpp are now only compiled with MSVC, other compilers use custom helper commands to generate the precompiled header
* Don't call the linker for pch helpertargets

(cherry picked from commit 137f5e7887)
2017-06-22 02:33:12 -03:00
Shauren
9d37c2b8eb Core/Maps: Fixed initializing instance free ids when compiled with WITH_COREDEBUG
Closes #19931
2017-06-21 17:55:38 +02:00
ariel-
9f765a1620 Core/Spells: fixed crash
Closes #19924
2017-06-20 13:31:36 -03:00
ariel-
faf299459b Core/Globals: fix VS2015 build 2017-06-20 00:02:34 -03:00
ariel-
c106177f20 Core/Achievement: fix linking 2017-06-19 23:47:55 -03:00
ariel-
85a7d5ce9a Core: ported headers cleanup from master branch 2017-06-19 23:20:06 -03:00
treeston
052fc24315 Fix an overly strict check that was causing guardians to evade loop. Also make players properly enter combat when their pets are engaged by a creature. 2017-06-20 00:58:32 +02:00
ariel-
fd07c4985e Core: fix warning 2017-06-19 13:38:01 -03:00
Shauren
d6201e5dbb Core/Grids: Ported cmangos/mangos-wotlk@ea99457e50
(cherry picked from commit 9299e9bde0)
2017-06-19 13:16:13 -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
joschiwald
46cb32c99f Core/Misc: Added Creature::CanGiveExperience helper function
(cherry picked from commit c1cc0e9949)
2017-06-19 02:35:22 -03:00
Keader
b74ed00f4e Core/Spells: Fixed range issue with Killing Spree
Closes #19913
2017-06-18 14:44:02 -03:00
treeston
4b9b1d485d Revert "Cross-check client-submitted fall time with server-measured time. When excessive difference is detected, punish player. (#19895)" due to really random edge case client behavior causing false positives.
Going to need to find a different approach for dealing with the underlying issue.

This reverts commit 27cbfc3a93.
2017-06-18 01:25:36 +02:00
Treeston
27cbfc3a93 Cross-check client-submitted fall time with server-measured time. When excessive difference is detected, punish player. (#19895)
Fixes an exploit that could trivialize the Lich King encounter.
2017-06-17 03:31:53 +02:00
treeston
41eddd59aa Correct some missing auth DB changes from b59ca1c. 2017-06-17 01:24:53 +02:00
treeston
c81f221e48 30ac4f5 follow-up. (Finally, Keader. Finally.) 2017-06-16 23:04:35 +02:00
treeston
30ac4f5377 Fix an issue where temp summons were ignoring m_regenHealth. (Hi Keader.) 2017-06-16 22:28:41 +02:00
treeston
250e8d998b Group creation again (follow-up to 132538d). Groups now only disband if all members reject the invitation (as opposed to if any member rejects the invitation). 2017-06-15 13:08:26 +02:00
treeston
4b6351e6a5 Fixes to all-reputation and all-skill custom option handling:
- Move on-create customs (all explored, all reputations) to CharacterHandler::HandlePlayerLogin for first login. Fixes #19839.
- Add Wrath factions to all reputations custom (it only had BC factions).
- Remove unused ReputationMgr::SendStates. Add ReputationMgr::SendState handling for sending all updated states in arbitrary order if nullptr is passed (used in point #1).
- Fix all weapon skills max custom to properly apply on learning new weapon skills.
2017-06-15 04:19:28 +02:00
Cannix
c14b448d63 Core/Player: Keep shared quests through map changes instead of getting stuck in busy state (#19821) 2017-06-15 01:27:37 +02:00
Gustavo
23f2646adf Core/Entities Allow DynamicObjects with UNIT_FLAG_IMMUNE_TO_PC to select targets (#19168) 2017-06-14 14:31:46 +02:00
Gustavo
3bfe67792d Core/Spells Allow bosses to receive KnockBack under certain conditions (#19312)
Conditions: Not player, not controlled by player and not hunter's pet
2017-06-14 14:16:12 +02:00
Treeston
132538db1d Modify group invite behavior while creating group to be blizzlike: (#19870)
- Leader can invite multiple people before the first invite is accepted
- Leader can cancel group formation by sending CMSG_GROUP_DISBAND (using /run LeaveParty() or similar)

Fixes #17258.
2017-06-14 00:34:38 +02:00
treeston
6f29aac936 Add new command 'npc showloot'. Does exactly what it says on the tin. 2017-06-12 19:10:41 +02:00
treeston
c9e7ab496e dynamic_spawning conflict avoidance, part deux: World.h enums 2017-06-12 17:19:47 +02:00
treeston
ac0f76f8c5 - Add new commands .group set assistant, .group set maintank and .group set mainassist to toggle raid member flags.
- Fix 2017_05_29_00_auth.sql to be reapply safe.
2017-06-12 17:01:47 +02:00
treeston
ca02629950 Make some adjustments to .summon and .group summon behavior to make them more permissive:
- Now only requires the either target's group leader or target itself to be on your map
- Now summons all applicable group members even if one member fails checks
- No longer has some truly weird edge case instance unbind code that could cause exploit behavior (Really, I have no idea why this existed, because it certainly didn't do what it might've been meant to do.)
2017-06-12 13:08:07 +02:00
ariel-
d6cae113c6 Core/Scripts: fix some /W4 warnings 2017-06-11 18:06:39 -03:00
ariel-
3e7b64b2f7 Core/OutdoorPvP: refactor using Position and Quat to pack parameters
- Moved statics to cpp
- Save scriptids into an array
2017-06-11 17:02:01 -03:00
ariel-
b58a364192 Core/Spell: fix some spells that shouldn't allow stealth or invisibility
- Touch of Zanzil
- Glowing Blood
- Lambent Blood
- Vibrant Blood
- Black Blood
- Perpetual Instability
2017-06-11 02:31:59 -03:00