* fix(cpp/db): Quest how to win friends and infleunce enemies missing dialogue during torture
Scarlet Crusader (id: 28940), Scarlet Marksman (id: 28610), Scarlet Preacher (id: 28939) and
Scarlet Commander (id: 28936) were missing some dialog in the database and script
npc_crusade_persuaded always succeeded when the spell on Keleseth's Persuader (item id: 39371
and spell id: 52781) procced. It now only succeeds thirty percent of the time. Increased ppmRate for spell to 8.
Finally removed aggro when scarlet was 'persuaded'
closes Azerothcore issue #20110
* fix(cpp): trailing white space
* fix(db): error in text
* fix(db): syntax error
* fix(cpp/db): using urand and removed db name from insert
* fix(db): remove broadcast text and missing creature text
* fix(DB): change sql queries to comply with rules
Added a delete query before insert and backticks to column and table names
* add empty newline at the end
---------
Co-authored-by: Stefano Borzì <stefanoborzi32@gmail.com>
* fix(Script): Changed npc move script
Death Knight Initiate (id: 28406) was not turning to face the player
after they engaged a duel instead the npc followed the player
wherever they went. Change was to remove script line for follow
and replace with SetFacingToObject and specify the player
as the object.
Closes AzerothCore issue #20108
* fix(script): Fix npc following player whitespace issue
Attempt to fix code styling fail on whtiespace
* fix(script): Fix npc following player another whitespace issue
Found more whitespace that was made by the fix to previous whitespace
* Bug fixes
- Corrected std::chrono from seconds to milliseconds
- Got rid of leftover code that caused objects to not show up on time
* Removed logic to set gameobject as active
- More alignement with TC.
- Reduces CPU usage drastically
* Revert back to using time_t instead of std chrono
* Invoke SetNoCreate() method to reduce CPU usage drastically
* Remove setActive from static and motion transports
* Fix performance issues
* Added SetFarVisible to WG and some dungeon scripts
- Also removed setActive(true) from creatures in Wintergrasp. As for gameobjects they are set to active upon being damaged/destroyed and removed from active on rebuild (reset)
* Removed comments related to VISIBILITY_COMPENSATION
* Fix log
* Deleted unused files + corrected a check
* Added missing header
* Removed unused parameter
* Removed another unsued parameter
* Changed vector to set for i_visibleNow
- Changed vector to set for i_visibleNow in VisibleNotifer
- Adjusted HaveAtClient to accept Object*
- Adjusted SendUpdateToPlayer to send createobject packet only if not known to client
* update (source): Establish chapter 3 dk scripts
Per source notes
Xinef: Should be in chapter III
We establish chapter 3 script for scarelet enclaved and to make the easy of future development in terms of organization
* Update: (script) Spell Script Loader to Register Spell Script
* update: (script): typo
This fixes the client side crash while flying as the EYE OF ACHERUS, apparrently if the player lacks the visual spell on his character the client would crash. This is something I just want NOT ABLE to identify in debugger, however, true story also by the way, @TheDdraig made a suggestion while being both stone and highly intoxicate that he came up with the insane nonsensible approach that actually solved the issue 100%.
Co-Authored-By: TheDdraig <62179779+TheDdraig@users.noreply.github.com>
Co-authored-by: TheDdraig <62179779+TheDdraig@users.noreply.github.com>
Npc positioning
Implemented slope check to avoid unwanted climbing for some kind of movements (backwards, repositioning etc.)
Implemented backwards movement
Re-implemented circle repositioning algorithm (smartest than retail, but with the same feeling)
Fixed random position of summoned minions
Improved pet following movement. Also, they attack NPC from behind now. Thanks to @Footman
Swimming creatures
Fixed max_z coordinate for swimming creatures. Now only part of their body is allowed to be out of the water level
Fixed pathfinder for swimming creatures creating shortcuts for specific segments, now they swim underwater to reach the seashore instead of flying above the water level.
Creatures with water InhabitType but no swimming flag now, when not in combat, will walk on water depth instead of swimming. Thanks @jackpoz for the original code
UNIT_FLAG_SWIMMING in UpdateEnvironmentIfNeeded to show the swimming animation correctly when underwater
Implemented HasEnoughWater check to avoid swimming creatures to go where the water level is too low but also to properly enable swimming animation only when a creature has enough water to swim.
Walking creatures
Extended the DetourNavMeshQuery adding area cost based on walkability (slope angle + source height) to find better paths at runtime instead of completely remove them from mmaps
improve Z height in certain conditions (see #4205, #4203, #4247 )
Flying creatures
Rewriting of the hover system
Removed hacks and improved the UpdateEnvironmentIfNeeded. Now creatures can properly switch from flying to walk etc.
Spells
LOS on spell effect must be calculated on CollisionHeight and HitSpherePoint instead of position coords.
Improved position for object/creature spawned via spells
Improved checks for Fleeing movements (fear spells)
Other improvements
Implemented method to calculate the CollisionWidth from dbc (used by repositioning algorithm etc.)
Improved raycast and collision checks
Co-authored-by: Footman <p.alexej@freenet.de>
Co-authored-by: Helias <stefanoborzi32@gmail.com>
Co-authored-by: Francesco Borzì <borzifrancesco@gmail.com>
Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>