Skip to content

Trial of the Crusader#1

Closed
johnholiver wants to merge 2 commits into
TrinityCore:masterfrom
johnholiver:master
Closed

Trial of the Crusader#1
johnholiver wants to merge 2 commits into
TrinityCore:masterfrom
johnholiver:master

Conversation

@johnholiver

Copy link
Copy Markdown
Contributor

Some instance improvement.

John Holiver added 2 commits December 31, 2010 02:23
1) Fix Leeching Swarm damage and create spell difficulty links to code. Closes  issue #4909 .
2) Fix Valkyr's Touch. Closes  issue #4553 .
3) Fix Permafrost aura difficulty check.
4) Reduce Slime Pool damage range.
5) Avoid Shaman Champion Heroism spam using 5 minutes (CD) as timer.
6) Fix many spell target selection to only select players (no more totens or pets).
7) Fix Anub'arak Spike being able to receibe the permafrost aura in order to cast spike fail, hopefully.
Lopin added a commit that referenced this pull request Aug 19, 2011
@mshipman mshipman mentioned this pull request Nov 10, 2011
@durrrr durrrr mentioned this pull request Dec 9, 2011
@Norfik Norfik mentioned this pull request Jan 8, 2012
DDuarte pushed a commit that referenced this pull request Jan 8, 2012
- Re-write Svala Sorrowgrave
- Scripted achievement The Incredible Hulk.

This script was writen basing on work and data:
- Original TC script.
- Albis fix for Arthas sounds and texts #4002 .
- Ric event start fix.
- Recorded encounters uploaded on YouTube.
- Data found on ScriptDev2 forums.
- Iov's custom SD2 repo and Svalas's script https://github.com/Iov/scriptdev2 .
Also thx to:
- ZxBiohazardZx for pointing how to fix looting problem when boss is killed when flying.
- Aokromes for confirmig how many times event "Ritual of the Sword" is performed.

- Mini event with Arthas.
- Call Flames: timers of cast and time between "Ball of Flame" (48246) can be wrong (based on videos).
- Ritual of the Sword works  and is performed once at 50% hp but:
  a) Still need retail data for teleport position of Svala floating above player.
  b) Need fully fixed spell Ritual of the Sword (48276), the triggering of spell Ritual Strike - Trigger Missile (48331) part was hardcoded.
- Spell Paralyze (48278) used by Ritual Channeler: fixed stacking and selection to ritual player only.
- Achievement "The Incredible Hulk": works but often Scourge Hulk don't get initial dmg from spell Ritual Strike (spell 48277 Effect #1 Value: 6650 to 7350).
- Looting problems when Svala was killed in air (require vmaps and option "vmap.enableHeight = 1" enabled in "worldserver.conf").
- Moved script_texts to creature_text.

It require option "vmap.enableHeight = 1" to work properly.
@ghost ghost mentioned this pull request Jan 23, 2012
@ghost ghost mentioned this pull request Apr 20, 2018
Carbenium pushed a commit to Carbenium/TrinityCore that referenced this pull request Jun 24, 2020
- Move on-create customs (all explored, all reputations) to CharacterHandler::HandlePlayerLogin for first login. Fixes TrinityCore#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 TrinityCore#1).
- Fix all weapon skills max custom to properly apply on learning new weapon skills.

(cherry picked from commit 4b6351e)
Carbenium pushed a commit to Carbenium/TrinityCore that referenced this pull request Jun 25, 2020
- Move on-create customs (all explored, all reputations) to CharacterHandler::HandlePlayerLogin for first login. Fixes TrinityCore#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 TrinityCore#1).
- Fix all weapon skills max custom to properly apply on learning new weapon skills.

(cherry picked from commit 4b6351e)
Carbenium pushed a commit to Carbenium/TrinityCore that referenced this pull request Jun 25, 2020
- Move on-create customs (all explored, all reputations) to CharacterHandler::HandlePlayerLogin for first login. Fixes TrinityCore#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 TrinityCore#1).
- Fix all weapon skills max custom to properly apply on learning new weapon skills.

(cherry picked from commit 4b6351e)
Carbenium pushed a commit to Carbenium/TrinityCore that referenced this pull request Jun 26, 2020
- Move on-create customs (all explored, all reputations) to CharacterHandler::HandlePlayerLogin for first login. Fixes TrinityCore#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 TrinityCore#1).
- Fix all weapon skills max custom to properly apply on learning new weapon skills.

(cherry picked from commit 4b6351e)
Shauren pushed a commit to Carbenium/TrinityCore that referenced this pull request Jul 16, 2020
- Move on-create customs (all explored, all reputations) to CharacterHandler::HandlePlayerLogin for first login. Fixes TrinityCore#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 TrinityCore#1).
- Fix all weapon skills max custom to properly apply on learning new weapon skills.

(cherry picked from commit 4b6351e)
Shauren pushed a commit to Carbenium/TrinityCore that referenced this pull request Jul 16, 2020
- Move on-create customs (all explored, all reputations) to CharacterHandler::HandlePlayerLogin for first login. Fixes TrinityCore#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 TrinityCore#1).
- Fix all weapon skills max custom to properly apply on learning new weapon skills.

(cherry picked from commit 4b6351e)
Shauren pushed a commit to Carbenium/TrinityCore that referenced this pull request Jul 16, 2020
- Move on-create customs (all explored, all reputations) to CharacterHandler::HandlePlayerLogin for first login. Fixes TrinityCore#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 TrinityCore#1).
- Fix all weapon skills max custom to properly apply on learning new weapon skills.

(cherry picked from commit 4b6351e)
MysterioPRM pushed a commit to MysterioPRM/TrinityCore that referenced this pull request Mar 15, 2021
Core/Player: enable Allied Race
@dr-j dr-j mentioned this pull request Aug 19, 2021
ihm-tswow added a commit to ihm-tswow/TrinityCore that referenced this pull request May 31, 2022
Declipe pushed a commit to Declipe/TrinityCore that referenced this pull request Jan 22, 2023
* Class racial mounts (TrinityCore#1)

* Update bot_ai.cpp

* Update botcommon.h

pally mount test

* Update botcommon.h

Update class mounts

* Update bot_ai.cpp

implement class checks

* Update botcommon.h

BOT_DEATHKNIGHT_MOUNT > BOT_DEATH_KNIGHT_MOUNT for consistency

* Update bot_ai.cpp

Fix switch and typos

* Update bot_ai.cpp

Change from level base to mount speed based

* Update bot_ai.cpp

Update to work right with mounted speed effect

* Update bot_ai.cpp

add low speed sanity check

* Update bot_ai.cpp

Update to how mount speed is looked up, and style cleanup.

* Update bot_ai.cpp

Style cleanup
@JadaDev JadaDev mentioned this pull request Jun 4, 2023
@ex1dreamer ex1dreamer mentioned this pull request Jun 18, 2023
T1ti pushed a commit to T1ti/TrinityCore that referenced this pull request Jul 31, 2025
* Add Data and Column

* Load Data

* Use It
travsart pushed a commit to travsart/TrinityCore-Master-Moon-of-Dragon.com-Custom that referenced this pull request Feb 18, 2026
… yields to combat

ROOT CAUSE TrinityCore#1: ClassAI::CastSpell() built spell packets but NEVER sent them!
- SpellPacketBuilder::BuildCastSpellPacket() created the packet successfully
- But result.packet was never queued to session - just destroyed at function end
- This is why bots only did auto-attack (1 damage) - no abilities fired!
- Fix: Added GetBot()->GetSession()->QueuePacket(result.packet.release())

ROOT CAUSE TrinityCore#2: Quest strategy didn't check combat state in sub-functions
- UseQuestItemOnTarget, NavigateToObjective, CollectQuestItems, TurnInQuest,
  SearchForQuestGivers all lacked combat checks
- Bots would stubbornly continue quest activities while being beaten to death
- Fix: Added IsInCombat() early-return checks to all quest functions

Additional fixes in this commit:
- CombatBehaviorIntegration: Changed survivalMode threshold from 50% to 25%
  (50% was too aggressive, causing rotation to be skipped constantly)
- CombatBehaviorIntegration: Removed premature return true in HandleEmergencies
  that blocked rotation without actually using consumables
- BotMovementUtil: Reverted to MotionMaster::MovePoint() for thread safety
  (MoveSplineInit::Launch() caused ASSERTION FAILED: Initialized() crashes)
- BotAI: Added reactive combat target finding via getAttackers() when GetVictim()
  returns nullptr (happens when mobs attack bot first)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
travsart pushed a commit to travsart/TrinityCore-Master-Moon-of-Dragon.com-Custom that referenced this pull request Feb 18, 2026
…roller

Task 3 Progress: 4/33 files complete (HIGH PRIORITY TrinityCore#1)

Migrated 9 MotionMaster usages to BotMovementController with validated
pathfinding. Maintains backward compatibility with fallback to legacy
MotionMaster when validation fails or for non-bot players.

Changes:
- Added PlayerBotHelpers.h include for GetBotAI() helper
- Updated all 9 MotionMaster->MovePoint() calls:
  1. Tank rotation (line 152)
  2. Healer positioning (line 779)
  3. Melee DPS positioning (line 982)
  4. Ranged DPS positioning (line 1058)
  5. Safe position DPS (line 1118)
  6. Flank position DPS (line 1157)
  7. Tank group coordination (line 1780)
  8. Healer group coordination (line 1786)
  9. Emergency safe zone (line 1808)

Migration Pattern Applied:
```cpp
// Before:
bot->GetMotionMaster()->MovePoint(0, position);

// After:
if (BotAI* ai = GetBotAI(bot))
{
    if (!ai->MoveTo(position, true))  // Validated pathfinding
    {
        // Fallback to legacy if validation fails
        bot->GetMotionMaster()->MovePoint(0, position);
    }
}
else
{
    // Non-bot player - use standard movement
    bot->GetMotionMaster()->MovePoint(0, position);
}
```

Validation Features Now Active:
- Ground validation: Prevents walking into void/off cliffs
- Collision validation: Prevents walking through walls
- Liquid validation: Proper swimming detection
- Stuck detection: Auto-recovery when immobile
- State machine: Automatic environment-based transitions

Integration Points:
- Tank positioning during boss rotations
- Healer spread formation (5 healers)
- Melee DPS flanking and stack positioning
- Ranged DPS spread and safe zones
- Emergency safe zone movement (high priority)

Performance Impact: Negligible
- Only validates when BotMovement.Enable = 1
- Fallback to legacy ensures no movement degradation
- Validation overhead: ~5-10ms per path

Testing:
- Build successful (RelWithDebInfo)
- All existing combat positioning logic preserved
- Compatible with UnifiedMovementCoordinator arbiter
- Fallback chain: Arbiter -> BotMovement -> Legacy MotionMaster

Next Files (HIGH PRIORITY):
- FormationManager.cpp (5 usages)
- KitingManager.cpp (1 usage)
- InterruptManager.cpp (3 usages)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant