538 Commits

Author SHA1 Message Date
bashermens
d1e9496fa4 Merge pull request #148 from azerothcore/master
update
2026-01-13 00:50:29 +01:00
Gultask
15f596c9d8 fix(Scripts/HoS): Set Boss Boundaries for Sjonnir (#24370) 2026-01-12 13:09:14 -03:00
github-actions[bot]
4b9c6ae55f chore(DB): import pending files
Referenced commit(s): 9e6493ff26
2026-01-12 13:32:16 +00:00
blinkysc
9e6493ff26 fix(Core/SmartAI): Skip positive spells when determining attack distance (#24381)
Co-authored-by: blinkysc <blinkysc@users.noreply.github.com>
2026-01-12 10:31:13 -03:00
Andrew
7ffef7b5fa fix(Scripts/CoS): Move chest spawn handling to Mal'Ganis script (#24382) 2026-01-12 08:30:33 -03:00
github-actions[bot]
088b86052d chore(DB): import pending files
Referenced commit(s): db2dafec95
2026-01-12 02:27:48 +00:00
Gultask
db2dafec95 fix(Scripts/Spells): Implement Blade Barrier Script (#24154)
Co-authored-by: Ariel Silva <ariel-@users.noreply.github.com>
2026-01-11 23:26:41 -03:00
Victor Godoy
6bdc48c7d4 fix(Scripts/RubySanctum): Halion Corporeality not updating (#24383)
Co-authored-by: victor <vngodoyr@unap.cl>
2026-01-11 18:26:35 -03:00
bashermens
b37d504c99 Merge pull request #145 from hermensbas/fixes/delta_cleanup_correction
[HOT FIX] Cleanup corrections (mistakes make during cleanup)
2026-01-11 21:23:51 +01:00
Benjamin Jackson
36560a4ff3 fix(Core/Entities): Don't reward quest reputation for factions that are hostile to your player's team. (#24100)
Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
2026-01-11 20:57:04 +01:00
bash
d81355460f corrections 2026-01-11 20:49:54 +01:00
sudlud
0b9472b7cd fix(apps/installer): update mysql installation for Debain 13 (#24368)
Co-authored-by: Degen <61268368+aradep@users.noreply.github.com>
2026-01-11 20:45:34 +01:00
Thelsen
1b35971f00 refactor(CMake): Improve ARM target detection, deprecate powerpc (#24329)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-11 20:43:41 +01:00
Gultask
71cc99f1a9 fix(Scripts/Nexus): Don't update Telestra's event timers while she's affected by Ice Nova (#24354) 2026-01-11 12:31:48 -03:00
github-actions[bot]
838e49f007 chore(DB): import pending files
Referenced commit(s): a4c2476957
2026-01-10 21:14:47 +00:00
Gultask
a4c2476957 fix(DB/Conditions): Don't allow players to steal other players' horses during Mounting Up (#24374) 2026-01-10 18:13:43 -03:00
Dan
beae2ba6d6 fix(Scripts/Naxxramas): further modernise Anub'Rekhan (#24225)
Co-authored-by: sogladev <sogladev@gmail.com>
2026-01-10 11:45:57 -03:00
Andrew
226591a02e fix(Scripts/AN): Ensure only the watchers minions start the event (#24371) 2026-01-10 10:36:35 -03:00
Dan
1f270d0fd1 fix(Scripts/Naxxramas): make sure mobs attack live side EVEN if nobody was on dead side for the whole fight (#24344) 2026-01-10 11:39:22 +01:00
Benjamin Jackson
e12f739dc9 chore(Core/Entities): Define deprecated resting states for players. (#24367) 2026-01-09 22:51:46 -03:00
github-actions[bot]
01488006ff chore(DB): import pending files
Referenced commit(s): cb69e65716
2026-01-09 13:10:29 +00:00
Gultask
a98971a5be fix(DB/Quest): Implement Event for Killing Two Scourge With One Skeleton and phasing for following quests (#24357)
Co-authored-by: sudlud <sudlud@users.noreply.github.com>
2026-01-09 10:09:36 -03:00
Gultask
cb69e65716 fix(DB/Creature): Vrykul near Lieutenant Icehammer should appear dead (#24356)
Co-authored-by: sudlud <sudlud@users.noreply.github.com>
Co-authored-by: Benjamin Jackson <38561765+heyitsbench@users.noreply.github.com>
2026-01-09 10:09:22 -03:00
bashermens
43f496d372 Merge pull request #143 from azerothcore/master
Update (crashfix movement generator)
2026-01-09 07:43:25 +01:00
bashermens
b6124e2727 Merge pull request #142 from mod-playerbots/hermensbas-removed-dead-code
Legacy/dead code
2026-01-09 07:42:16 +01:00
sudlud
8785a9a726 fix(Conf): remove unused config option Logger.ahbot (#24355) 2026-01-09 07:37:44 +01:00
Localhost
a43dda6444 fix(Core/Movement): Crash FlightPathMovementGenerator (#24347) 2026-01-09 07:37:29 +01:00
bashermens
ccc17be7e1 Legacy/dead code 2026-01-09 01:13:14 +01:00
bashermens
54914d0854 Merge pull request #141 from hermensbas/fix/hotfix_till_core_merge
[HOTFIX] Wrong class/race learning throw skill
2026-01-09 00:51:39 +01:00
bash
dbfc8001a2 wrong class/race learning throw skill 2026-01-09 00:19:31 +01:00
bashermens
9dd35e78fe Merge pull request #140 from azerothcore/master
Small core update which includes some reverts from the core guys
2026-01-08 21:32:38 +01:00
bashermens
cdd6e84508 Merge pull request #138 from hermensbas/fix/core_delta_corrections
[FIX] Removed legacy implementation, merge mistakes keeping the delta lower with us and stock
2026-01-08 18:54:41 +01:00
github-actions[bot]
15855e9080 chore(DB): import pending files
Referenced commit(s): 2ff095bc8f
2026-01-08 16:25:55 +00:00
Gultask
2ff095bc8f fix(Scripts/Icecrown): Don't despawn Tirion's Gambit NPCs prematurely (#24337) 2026-01-08 13:24:50 -03:00
sudlud
ddb9c515b6 Revert "fix(Core/Player): Make sure OnEquip spells from items are added after revive" (#24352) 2026-01-08 06:49:19 -03:00
Gultask
a1f5d39370 fix(Core/Movement): Improve Pet LoS cancellations by using path calculation instead of raycasting (#24330) 2026-01-07 23:47:41 -03:00
blinkysc
01c4b10b6d fix(Core/Pets): Remove xinef hack that caused hunter pet deletion (#24350)
Co-authored-by: sogladev <sogladev@users.noreply.github.com>
2026-01-07 21:50:08 -03:00
bash
0a0ba0a53f minimize delta, legacy and merge mistakes over the years 2026-01-08 00:50:49 +01:00
github-actions[bot]
cd0c736385 chore(DB): import pending files
Referenced commit(s): 7d8580a3c6
2026-01-07 21:13:30 +00:00
sogladev
7d8580a3c6 fix(DB/Conditions): Bone Gryphon vehicle target Onslaught Gryphon riders (#24349) 2026-01-07 18:12:23 -03:00
github-actions[bot]
7ad9d10c63 chore(DB): import pending files
Referenced commit(s): 2e919afbe0
2026-01-07 19:17:40 +00:00
Gultask
2e919afbe0 fix(DB/Quest): Make Sealed Vial of Poison Repeatable (#24345) 2026-01-07 16:06:30 -03:00
blinkysc
fc36f1b68c fix(Core/Events): set Brewfest to static date Sept 20 (#24342)
Co-authored-by: blinkysc <blinkysc@users.noreply.github.com>
2026-01-07 17:25:28 +01:00
Gultask
3fd0fa1e64 fix(Scripts/HallsOfLightning): Remove early handling for General Bjarngrim causing event cancellation (#24335) 2026-01-07 12:08:04 -03:00
bash
ae2af138e2 script zones 2026-01-07 13:53:49 +01:00
github-actions[bot]
d8b4f93bc6 chore(DB): import pending files
Referenced commit(s): cc5a8dd42e
2026-01-07 12:43:10 +00:00
Gultask
cc5a8dd42e fix(DB/SAI): The Brothers Bronzebeard (#24339) 2026-01-07 09:42:00 -03:00
github-actions[bot]
69e861b708 chore(DB): import pending files
Referenced commit(s): c78d71ab6d
2026-01-06 22:31:56 +00:00
Ryan Turner
c78d71ab6d fix(DB/SAI): Bonestripper Vulture only casts Gut rip when the aura is missing from the target (#24177)
Co-authored-by: FlyingArowana <TheSCREWEDSoftware@users.noreply.github.com>
2026-01-06 19:30:50 -03:00
bash
5a1445a0dc added missing db-scripts 2026-01-06 19:41:55 +01:00
sudlud
dbee971ab9 fix(CI): adjust concurrency to cancel pending CIs on merge (#24258) 2026-01-06 17:31:58 +01:00
bashermens
8f55eb0ca9 Merge pull request #136 from azerothcore/master
Minor/update
2026-01-06 16:25:13 +01:00
bashermens
eb9913b808 Merge pull request #134 from azerothcore/master
Minor update
2026-01-05 16:43:20 +01:00
bashermens
782bc2a74a Merge pull request #132 from noisiver/merge-master
Merge master and remove Naxxramas headers
2026-01-05 15:05:12 +01:00
bashermens
1dadda2c04 Update MotionMaster.cpp
Set the correct _reverseOrientation
2026-01-05 14:13:09 +01:00
Revision
00f4193bbf Updated PointMovementGenerator for MovePointBackwards 2026-01-03 17:38:54 +01:00
Revision
4cff291e7d Reverted Naxxramas to stock 2026-01-03 17:38:28 +01:00
Revision
382896c857 Merge branch 'master' into merge-master 2026-01-03 17:37:33 +01:00
bashermens
6056978687 quickfix: crashlog - item::CheckSoulboundTradeExpired
quickfix: crashlog - item::CheckSoulboundTradeExpired
2025-12-24 23:48:23 +01:00
bashermens
7a1fa7b081 quickfix: crashlog player::RestoreSpellMods
quickfix: crashlog player::RestoreSpellMods
2025-12-24 23:48:06 +01:00
bashermens
7aaefb76d9 Update Item.cpp 2025-12-24 22:36:45 +01:00
bashermens
896e1d3f38 Update Unit.cpp 2025-12-24 22:02:38 +01:00
bashermens
a3b2c7ad0e Update Unit.cpp 2025-12-24 22:01:20 +01:00
bashermens
c91ce7f7c2 fix: crashlog player::RestoreSpellMods 2025-12-24 21:44:21 +01:00
bashermens
befa0158e2 Update Item.cpp 2025-12-24 21:24:17 +01:00
bashermens
58e3316c45 fix crashlog 2025-12-24 21:22:31 +01:00
bashermens
b9345774f9 Merge pull request #126 from mod-playerbots/hermensbas-patch-1
Oopsie hotfix
2025-12-18 23:55:51 +01:00
bashermens
97ee5f7459 Oopsie 2025-12-18 23:45:50 +01:00
bashermens
f262dc7835 Merge pull request #125 from mod-playerbots/core-update-correction
Core-update-correction-fix
2025-12-18 11:33:39 +01:00
bashermens
fc7c7055ba fix 2025-12-16 23:04:46 +01:00
bashermens
3ba00be179 Fix MotionMaster.cpp
https://github.com/mod-playerbots/azerothcore-wotlk/issues/122
2025-12-16 19:08:47 +01:00
bashermens
8f84271af8 Merge pull request #119 from mod-playerbots/core_update_2025_12_7
Core update: 2025-12-7
2025-12-07 15:22:03 +01:00
bash
7b41eb5c90 core_merge_fix_due_header_split 2025-12-07 12:09:42 +01:00
bash
58c1c49610 Merge remote-tracking branch 'upstream/master' into Playerbot
# Conflicts:
#	src/server/game/Spells/SpellInfoCorrections.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_thaddius.cpp
2025-12-07 12:04:32 +01:00
kadeshar
08323af7a5 Merge pull request #115 from mod-playerbots/license_syncing
License update
2025-12-04 19:14:11 +01:00
bash
bc9ca38d78 changed into the current license model 2025-11-24 15:42:51 +01:00
bashermens
7be3d24c1e merge_conflict_fix 2025-11-24 14:51:47 +01:00
bash
87d3f3ba3a fix 2025-11-24 14:03:13 +01:00
bashermens
6b5da02e78 Merge pull request #110 from hermensbas/core_update_no_squash
2. Core update at 2025_11_23 (without squash)
2025-11-24 12:20:58 +01:00
bashermens
821f854318 Merge branch 'Playerbot' into core_update_no_squash 2025-11-24 12:18:01 +01:00
SaW
7228e76355 Merge pull request #109 from mod-playerbots/revert-104-core-merge-17112025
1. Revert "Core merge 17112025"
2025-11-24 12:15:10 +01:00
bashermens
528e590f10 Merge branch 'Playerbot' into core_update_no_squash 2025-11-23 23:11:12 +01:00
bash
eef1980923 fix 2025-11-23 23:09:26 +01:00
bash
1ed9aee631 Merge remote-tracking branch 'upstream/master' into core_update_no_squash 2025-11-23 23:08:23 +01:00
bashermens
454a4f34f0 Revert "Core merge 17112025 (#104)"
This reverts commit 236c842934.
2025-11-23 23:02:15 +01:00
kadeshar
236c842934 Core merge 17112025 (#104)
* fix(DB/SmartAI): improve Harry surrendering during quest 'Gambling Debt' (#23598)

* fix(DB/Quest): The Kalu'ak dailies reward 500 rep (#23600)

* chore(DB): import pending files

Referenced commit(s): fb03f41b2a

* fix(DB/GameEvent): Remove midsummer pole in K3 (#23614)

* chore(DB): import pending files

Referenced commit(s): 7b0000d6ee

* fix(DB/SmartAI): increase reliability of quest event Foolish Endeavors (#23612)

* chore(DB): import pending files

Referenced commit(s): 86f219abbc

* fix(Scripts/AreaTrigger): players become stuck after Last Rites (#23613)

* chore(DB): import pending files

Referenced commit(s): c1a8047cf1

* fix(Core/Vmaps): Fix inconsistency of hitInstance and hitModel to cause wrong area ids (#23233)

Co-authored-by: ModoX <moardox@gmail.com>
Co-authored-by: Shauren <shauren.trinity@gmail.com>
Co-authored-by: Grimdhex <237474256+Grimdhex@users.noreply.github.com>
Co-authored-by: sudlud <sudlud@users.noreply.github.com>

* fix(DB/Gameobject): Sniffed Values for 'Wild Mustard' spawns (#23608)

* fix(DB/SmartAI): remove large combat distance of Frostbrood Sentry (#23607)

* chore(DB): import pending files

Referenced commit(s): 41d40b236f

* fix(DB/ReputationRewardRate): Patch 3.0.0 gain for Northrend factions (#23597)

* chore(DB): import pending files

Referenced commit(s): 067a898caa

* fix(Core/Map): It should be ensured that the instance is unloaded only after the Creature Respawn. (#23103)

* fix(Scripts/Northrend): Sniffing Out The Perpetrator horde (#23620)

* fix(Scripts/Northrend): ensure Drakuru stays in place during Betrayal (#23619)

* chore(DB): import pending files

Referenced commit(s): 928e145694

* fix(DB/SmartAI): quest 'Reconnaissance Flight' (#23628)

Co-authored-by: dr-j <dr-j@users.noreply.github.com>
Co-authored-by: Killyana <morphone1@gmail.com>

* fix(DB/QuestOfferReward): remove mention of a beta recipe in text (#23629)

* fix(DB/Conditions): update quest conditions to drop chokers (#23610)

* chore(DB): import pending files

Referenced commit(s): bca8f7ce07

* refactor(Core/PlayerScript): Delete OnPlayerChat, use OnPlayerCanUseChat (#23617)

* fix(Core/SmartAI): startup warnings unused params (#23551)

* fix(Core/Unit): Druid Talent Survival of the Fittest lacking immunity to creature daze (#23471)

* fix(DB/SAI): Fix Fizzcrank Paradrop teleporters (#23633)

* chore(DB): import pending files

Referenced commit(s): 94ba1c210d

* fix(Core): Fix waterwalking after dying in instance (#23593)

* fix(DB/SAI): don't remove all auras when mounting flamebringer (#23640)

* chore(DB): import pending files

Referenced commit(s): 22f91f3802

* fix(DB/SAI): Emerald Lasher goes out of the terrain when aggroed. (#23642)

* chore(DB): import pending files

Referenced commit(s): f9d6fe41de

* fix(DB/SAI): Burning Depths Necromancer no longer stays in place. (#23641)

* chore(DB): import pending files

Referenced commit(s): 1037471c8d

* fix(DB/SAI): Remove SmartAI from Valkyrion Harpoon Gun. (#23646)

* chore(DB): import pending files

Referenced commit(s): 8e3a7e6dcf

* fix(DB/Creature): Fix Weakened Reanimated Frost Wyrm inhabit type (#23645)

* chore(DB): import pending files

Referenced commit(s): 3baa18ef5b

* fix(DB/Spell): Infectious Bites should stack from different casters (#23647)

* chore(DB): import pending files

Referenced commit(s): 5aede412ab

* fix(DB/SAI): Solve various issues with It Goes to 11... quest. (#23651)

* fix(DB/Loot): Fireproof Satchel will now always drop the Ritual of Torch  (#23585)

* chore(DB): import pending files

Referenced commit(s): 1090c209b3

* fix(Scripts/Northrend): Betrayal quest (#23650)

* fix(Script/BlackTemple): Reliquary of Souls will use 45 degree in front to set incombat (#22938)

* fix(Scripts/Spell): Fix Animal Blood spawning when it shouldn't (#23656)

* fix(Scripts/BoreanTundra): Script Bloodspore Haze/Psychosis (#23657)

* chore(DB): import pending files

Referenced commit(s): baf7957e36

* fix(DB/SAI): Sibling Rivalry quest credit if mounted (#23659)

* chore(DB): import pending files

Referenced commit(s): 6919cc679d

* fix(docs/license): use GPLv2 as MaNGOS-based project (#23655)

* fix(Core/Achievements): a character can only have 1 race realm first (#23626)

* chore: fix leftover license header (#23678)

* fix(Scripts/HoL): Update Loken script (#23587)

* fix(Scripts/DTK): Update King Dred script (#23572)

* fix(DB/SAI): Bitter Departure quest credit (#23658)

* chore(DB): import pending files

Referenced commit(s): e595425578

* fix(DB/Conditions): Ice Shard require Icy Imprisonment (#23661)

* chore(DB): import pending files

Referenced commit(s): 8294652e77

* fix(DB/Loot): add Scourge Curio drop to Lost Shandaral Spirit (#23686)

* chore(DB): import pending files

Referenced commit(s): b6ed4347fe

* fix(DB/Gameobject): fix spell focus location for 'Will of the Titans' (#23683)

* chore(DB): import pending files

Referenced commit(s): 388f18895d

* fix(DB/Creature): update IOC Demolisher spells (#23685)

* chore(DB): import pending files

Referenced commit(s): cdfa50c990

* fix(Scripts/Northrend): IOC boss cast ability Mortal Strike (#23684)

* fix(Scripts/BoreanTundra): Fix Beryl Sorcerer engaging mobs (#23690)

* fix(Core/Entities): Improve interactions between taxis and players regarding PvP flag. (#23681)

* fix(DB/Creature): Peon Gakra should be an innkeeper (#23699)

* chore(DB): import pending files

Referenced commit(s): 6abff4ac2b

* fix(Scripts/SholazarBasin): Fix Song of Wind and Water double credit (#23707)

* fix(DB/SAI): Reanimated Frost Wyrm engage after being hit by quest spell (#23697)

* fix(DB/SAI): Timely respawn Nesingwary Trappers (#23703)

* fix(DB/Creature): Fix Fjord Hawk Matriarch unit flags (#23696)

* fix(DB/Conditions): Fix Fordragon Resolve target conditions (#23701)

* chore(DB): import pending files

Referenced commit(s): 2942d63125

* fix(DB/Script): Move Tailhorn Stag and Amberpine Woodsman behavior into SmartAI. (#23708)

* fix(DB/Creature): Set Trigger flag on Steam Vent. (#23710)

* chore(DB): import pending files

Referenced commit(s): 435ca302ef

* fix(DB/SAI): To Stars' Rest! taxi flight (#23712)

* chore(DB): import pending files

Referenced commit(s): ab4d59ac9d

* fix (DB/Creature): Set Surveyor Orlond flags. (#23714)

* chore(DB): import pending files

Referenced commit(s): e8ec77dca7

* fix(DB/Loot): Fix Master Summoner Staff drop chance (#23717)

* chore(DB): import pending files

Referenced commit(s): 182c055e6e

* fix(Scripts/DTK): Fix Oh Novos! achievement (#23539) (#23718)

* fix(Core/Spells): Remove King Mrgl-Mrgl costume on spell casting (#23713)

* chore(DB): import pending files

Referenced commit(s): 8c963a11ce

* fix(DB/Reputation): Utigarde Pinnacle normal reputation (#23719)

* chore(DB): import pending files

Referenced commit(s): 88ed7d66d5

* fix(Scripts/HoS): Clean up faction update hacks (#23720)

* fix(DB/Reputation): Lower reputation according to rates handling (#23722)

* fix(DB/Reputation): Oculus normal & UP correction (#23723)

* chore(DB): import pending files

Referenced commit(s): abc2cf3028

* fix(Scripts/Oculus): Implement crossfaction support for drakes (#23704)

* fix(DB/Quest): Correct prerequisite for Reclaimed Ration (#23736)

Co-authored-by: blinkysc <blinkysc@users.noreply.github.com>

* fix(DB/Quest): Correct prerequisite for Salvaging Life's Strength (#23734)

Co-authored-by: blinkysc <blinkysc@users.noreply.github.com>

* chore(DB): import pending files

Referenced commit(s): afd8197588

* fix(Core/Movement): Fix SummonMovementInform for summons (#23725)

* refactor(Core/Movement): Fix Build (#23739)

* fix(DB/SAI): Update Iron Rune Construct SAI to use DO_ACTION instead … (#23716)

* chore(DB): import pending files

Referenced commit(s): 7cc39f78e2

* fix(DB/SAI): Fix Flamebringer gossip interaction (#23740)

* chore(DB): import pending files

Referenced commit(s): 9cb683cfcd

* fix(DB/SAI): Nerub'ar member packs now attack together. (#23727)

* chore(DB): import pending files

Referenced commit(s): 6f5a1b7ccc

* fix(DB/SAI): Remove Harrison Johnes quest flag on escort accept (#23700)

* chore(DB): import pending files

Referenced commit(s): bacf15d356

* Update crash issue template with log submission guidelines (#23754)

* Merge

* Updated OnPlayerChat method name to OnPlayerCanUseChat

---------

Co-authored-by: sogladev <sogladev@gmail.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: 天鹭 <18535853+PkllonG@users.noreply.github.com>
Co-authored-by: ModoX <moardox@gmail.com>
Co-authored-by: Shauren <shauren.trinity@gmail.com>
Co-authored-by: Grimdhex <237474256+Grimdhex@users.noreply.github.com>
Co-authored-by: sudlud <sudlud@users.noreply.github.com>
Co-authored-by: dr-j <dr-j@users.noreply.github.com>
Co-authored-by: Killyana <morphone1@gmail.com>
Co-authored-by: Undo <50205200+UndoUreche@users.noreply.github.com>
Co-authored-by: Andrew <47818697+Nyeriah@users.noreply.github.com>
Co-authored-by: killerwife <killerwife@gmail.com>
Co-authored-by: Tereneckla <Tereneckla@pm.me>
Co-authored-by: Rocco Silipo <108557877+Rorschach91@users.noreply.github.com>
Co-authored-by: Ryan Turner <16946913+TheSCREWEDSoftware@users.noreply.github.com>
Co-authored-by: blinkysc <37940565+blinkysc@users.noreply.github.com>
Co-authored-by: Francesco Borzì <borzifrancesco@gmail.com>
Co-authored-by: Benjamin Jackson <38561765+heyitsbench@users.noreply.github.com>
Co-authored-by: Traesh <Traesh@users.noreply.github.com>
Co-authored-by: blinkysc <blinkysc@users.noreply.github.com>
2025-11-23 20:45:22 +01:00
SaW
3732047b9e Fix https://github.com/mod-playerbots/azerothcore-wotlk/issues/96
Fix https://github.com/mod-playerbots/azerothcore-wotlk/issues/96
2025-11-17 21:02:36 +01:00
SaW
3d29de2844 Fix codestyle nag 2025-11-17 20:54:25 +01:00
bashermens
a2a4a4f7cf Fix
https://github.com/mod-playerbots/azerothcore-wotlk/issues/96
2025-11-17 12:17:39 +01:00
bashermens
923cccdc25 Merge branch 'azerothcore:master' into Playerbot 2025-11-10 13:52:10 +01:00
bashermens
cd799aa1c6 Merge branch 'azerothcore:master' into Playerbot 2025-11-09 21:14:51 +01:00
bashermens
0bb40fddc4 Merge branch 'azerothcore:master' into Playerbot 2025-11-08 23:31:01 +01:00
bashermens
e68fa57fd6 Merge branch 'azerothcore:master' into Playerbot 2025-11-08 10:01:09 +01:00
bashermens
838628a25d Merge branch 'azerothcore:master' into Playerbot 2025-11-07 13:00:19 +01:00
bashermens
7c5b199489 Merge branch 'azerothcore:master' into Playerbot 2025-11-07 06:44:08 +01:00
bash
b5cdb0e63e Merge branch 'azerothcore:master' into Playerbot 2025-11-05 23:18:17 +01:00
bash
12909c1958 Merge branch 'azerothcore:master' into Playerbot 2025-11-05 15:00:25 +01:00
bash
b7c92a52aa Merge branch 'azerothcore:master' into Playerbot 2025-11-05 10:53:28 +01:00
bash
6bee45a1c8 Merge pull request #92 from mod-playerbots/update/core_4_11_2025
update/core 4 11 2025
2025-11-05 10:53:09 +01:00
bash
8c2409ff06 naxx merge fixes 2025-11-04 21:21:59 +01:00
bash
52a09fbf54 Merge remote-tracking branch 'upstream/master' into update/core_4_11_2025
# Conflicts:
#	src/server/game/Guilds/Guild.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_anubrekhan.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_faerlina.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_four_horsemen.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_gluth.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_gothik.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_grobbulus.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_heigan.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_kelthuzad.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_loatheb.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_maexxna.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_noth.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_patchwerk.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_razuvious.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_sapphiron.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_thaddius.cpp
2025-11-04 20:07:10 +01:00
kadeshar
c96314a9b3 Merge pull request #91 from mod-playerbots/Playerbot_merge29102025
Playerbot merge
2025-10-31 06:45:52 +01:00
kadeshar
1b0eef2e6c Merge branch 'azerothcore:master' into Playerbot_merge29102025 2025-10-29 06:37:33 +01:00
bash
c6c90e0034 Merge branch 'azerothcore:master' into Playerbot 2025-10-25 20:37:41 +02:00
bash
39187083b0 Merge remote-tracking branch 'upstream/master' into Playerbot
# Conflicts:
#	modules/CMakeLists.txt
2025-10-25 00:48:25 +02:00
bash
2607df754b Merge branch 'azerothcore:master' into Playerbot 2025-10-23 01:57:59 +02:00
bash
880529a5b4 Merge pull request #87 from hermensbas/hermensbas-patch-1
fix: MotionMaster.cpp
2025-10-21 19:36:44 +02:00
bash
e846fdc8b9 Update MotionMaster.cpp 2025-10-21 18:42:31 +02:00
bash
6d42ab1797 fix: MotionMaster.cpp
knockback movement fix
2025-10-21 18:06:39 +02:00
bash
fc1d8e2a64 Merge branch 'azerothcore:master' into Playerbot 2025-10-21 10:38:27 +02:00
bash
4f9b4d5470 Merge branch 'azerothcore:master' into Playerbot 2025-10-20 14:13:31 +02:00
bash
f96e7c577b Merge pull request #85 from hermensbas/feature/core_merge_10_2025
CORE_UPDATE_10_2025
2025-10-20 14:12:45 +02:00
bash
be3d55f770 added comments for future merge conflicts 2025-10-20 00:53:13 +02:00
bash
fac127718d core merge fixes for playerbots 2025-10-19 23:55:38 +02:00
bash
1aac4fbef6 Merge remote-tracking branch 'upstream/master' into feature/core_merge_10_2025
# Conflicts:
#	src/server/game/Entities/Unit/Unit.cpp
#	src/server/game/Movement/MovementGenerators/PointMovementGenerator.h
#	src/server/game/Server/WorldSession.cpp
#	src/server/game/Server/WorldSession.h
#	src/server/scripts/Northrend/Naxxramas/boss_gluth.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_gothik.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_grobbulus.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_kelthuzad.cpp
#	src/server/scripts/Northrend/Naxxramas/boss_sapphiron.cpp
2025-10-19 22:34:18 +02:00
bash
dae1f55536 Update core-build-playerbots.yml 2025-10-19 17:12:13 +02:00
bash
ec7bb81473 Update core-build-playerbots.yml 2025-10-19 03:24:29 +02:00
bash
d9c7330434 Update core-build-playerbots.yml 2025-10-18 15:45:13 +02:00
bash
2eda59a0dc Update core-build-playerbots.yml 2025-10-18 12:34:54 +02:00
bash
21e313a7f1 Update core-build-playerbots.yml 2025-10-18 09:09:01 +02:00
bash
96f1fe67d9 Update core-build-playerbots.yml 2025-10-17 20:22:20 +02:00
Yunfan Li
798589fb5d Merge pull request #75 from mod-playerbots/project_transfer
Preparation for project transfer
2025-10-14 00:08:36 +08:00
bash
6aef3aae5f Merge branch 'azerothcore:master' into Playerbot 2025-10-03 19:43:33 +02:00
bash
945fdff66c Merge branch 'azerothcore:master' into Playerbot 2025-10-03 02:36:11 +02:00
bash
245fe501f1 Merge pull request #72 from kadeshar/relic-usage-fix
Fix to make bots roll and equip for correct relic
2025-10-01 21:07:58 +02:00
kadeshar
19a834fa55 - Added method BotCanUseItem 2025-10-01 20:39:57 +02:00
bash
152b1cc455 Merge branch 'azerothcore:master' into Playerbot 2025-10-01 12:16:44 +02:00
bash
5fbcb45727 Merge branch 'azerothcore:master' into Playerbot 2025-09-30 15:27:48 +02:00
kadeshar
0145bebb10 - Fix to make bots roll and equip for correct relic 2025-09-29 20:41:21 +02:00
bash
59c1233d98 Merge branch 'azerothcore:master' into Playerbot 2025-09-29 20:09:38 +02:00
bash
f67b86df8b Merge branch 'azerothcore:master' into Playerbot 2025-09-28 00:12:50 +02:00
bash
1125d84fb2 Merge branch 'azerothcore:master' into Playerbot 2025-09-25 16:35:37 +02:00
bash
1665fefb1a Merge branch 'azerothcore:master' into Playerbot 2025-09-24 01:59:18 +02:00
bash
9d82a35671 Merge branch 'azerothcore:master' into Playerbot 2025-09-23 14:43:56 +02:00
bash
861058f657 Merge branch 'azerothcore:master' into Playerbot 2025-09-22 21:59:40 +02:00
bash
c092fb1581 Merge branch 'azerothcore:master' into Playerbot 2025-09-20 22:17:46 +02:00
bash
fd567ddcfa Merge pull request #70 from kadeshar/guild-crash-fix
Possible crash fix while adding member to guild
2025-09-19 20:01:08 +02:00
kadeshar
dc6be0655f Merge pull request #69 from hermensbas/core/update_2025_09_18
update 2025 09 18
2025-09-19 10:59:42 +02:00
kadeshar
c0aec97676 - Possible crash fix while adding member to guild 2025-09-18 20:39:39 +02:00
bash
ced3cf9b22 Merge remote-tracking branch 'upstream/master' into core/update_2025_09_18 2025-09-18 20:09:00 +02:00
bash
93c0ab5b6b Merge pull request #67 from kadeshar/guild-cross-faction-fix
Fixed cross faction guilds not allowed by config
2025-09-14 10:51:02 +02:00
kadeshar
9bc46a7b77 - Fixed cross faction guilds not allowed by config 2025-09-13 16:33:09 +02:00
Yunfan Li
18a5a2be5c Merge pull request #65 from liyunfan1223/Playerbot-250911
Playerbot 250911
2025-09-11 13:42:52 +08:00
Yunfan Li
fdb71c521e Merge branch 'master' into Playerbot-updated 2025-09-11 12:20:54 +08:00
kadeshar
830e1fc5c2 Merge pull request #8 from azerothcore/master
Merge
2025-08-30 21:23:42 +02:00
kadeshar
234268e3bf Merge pull request #7 from azerothcore/master
Merge
2025-08-27 21:04:10 +02:00
Yunfan Li
4514980791 Merge pull request #56 from liyunfan1223/Playerbot_sync_0809
Playerbot sync 0809
2025-08-09 19:17:18 +08:00
Yunfan Li
025aaacf20 Merge branch 'master' into Playerbot 2025-08-09 15:02:41 +08:00
Yunfan Li
32b3e6331d Merge pull request #54 from liyunfan1223/Playerbot_sync
Playerbot sync
2025-08-02 16:10:42 +08:00
Yunfan Li
8ff1d2ccc1 Merge pull request #52 from Rochet2/patch-1
Fix scriptmgr hook double call on whisper
2025-08-02 15:32:26 +08:00
Yunfan Li
55bc26f505 Merge branch 'master' into Playerbot 2025-08-02 11:35:47 +08:00
Yunfan Li
21c2c3e0ee Merge branch 'master' into Playerbot 2025-07-25 21:18:51 +08:00
Rochet2
1620d6d64b Fix scriptmgr hook double call on whisper 2025-07-22 18:34:00 +03:00
Yunfan Li
c167fef89c Merge branch 'master' into Playerbot 2025-07-15 20:34:44 +08:00
Yunfan Li
475e5a42c4 Merge branch 'master' into Playerbot 2025-07-04 22:41:14 +08:00
Yunfan Li
24fa79040f Merge branch 'master' into Playerbot 2025-06-29 10:55:43 +08:00
Yunfan Li
c3fbb2da20 Merge branch 'master' into Playerbot 2025-06-28 10:46:23 +08:00
Yunfan Li
1e88fccd3c Merge branch 'master' into Playerbot 2025-06-14 21:33:35 +08:00
Yunfan Li
13edac562c Merge branch 'master' into Playerbot 2025-06-01 14:55:09 +08:00
Yunfan Li
4ace49c95a Merge branch 'master' into Playerbot 2025-05-23 19:55:02 +08:00
Yunfan Li
c6222b9aa3 Merge branch 'master' into Playerbot 2025-05-16 19:42:56 +08:00
Yunfan Li
58fd50651d Merge branch 'master' into Playerbot 2025-05-09 22:07:43 +08:00
Yunfan Li
ce9343d916 Merge branch 'master' into Playerbot 2025-05-02 16:50:45 +08:00
Yunfan Li
c304ccee57 Merge branch 'master' into Playerbot 2025-04-18 22:57:30 +08:00
Yunfan Li
97342b05e7 Merge branch 'master' into Playerbot 2025-04-09 23:35:21 +08:00
Yunfan Li
95fc3f0932 Merge branch 'master' into Playerbot 2025-03-29 17:25:52 +08:00
Yunfan Li
4deb6ec311 Merge branch 'master' into Playerbot 2025-03-22 11:15:08 +08:00
Yunfan Li
565019ed27 Merge branch 'master' into Playerbot 2025-03-14 21:37:02 +08:00
Yunfan Li
34811a047a Merge branch 'master' into Playerbot 2025-03-04 21:57:19 +08:00
Yunfan Li
f332b07140 Merge pull request #40 from liyunfan1223/Playerbot_20250219
Merge branch 'master' into Playerbot
2025-02-22 12:08:24 +08:00
Yunfan Li
bd0302605a Merge branch 'master' into Playerbot_20250219 2025-02-22 10:36:10 +08:00
Yunfan Li
990c85c2cd Remove MOD_PLAYERBOTS macro to compile without mod-playerbots 2025-02-19 23:01:53 +08:00
Yunfan Li
7d431dc796 Merge branch 'master' into Playerbot 2025-02-19 22:29:36 +08:00
kadeshar
d1032678ff - Added support for playerbots message hyperlink (#37) 2025-02-16 22:27:55 +08:00
Yunfan Li
41415bb3c3 Merge branch 'master' into Playerbot 2025-02-11 22:35:57 +08:00
Yunfan Li
de3c2b553e Merge branch 'master' into Playerbot 2025-02-04 23:40:06 +08:00
Yunfan Li
e5c67bd47d Merge branch 'master' into Playerbot 2025-01-31 18:29:34 +08:00
Yunfan Li
cf035b5e5e Merge branch 'master' into Playerbot 2025-01-23 23:23:53 +08:00
Yunfan Li
91edb92f7a Merge branch 'master' into Playerbot 2025-01-15 20:49:11 +08:00
Yunfan Li
36987b8a96 Merge branch 'master' into Playerbot 2025-01-09 19:56:11 +08:00
Yunfan Li
8e5802da4e Merge branch 'master' into Playerbot 2025-01-06 23:04:02 +08:00
Yunfan Li
36ac083814 Merge branch 'master' into Playerbot 2024-12-31 17:18:40 +08:00
Yunfan Li
5035e880f4 Merge pull request #33 from liyunfan1223/move_backwards
Add MovePointBackwards in MotionMaster.h
2024-12-29 21:24:02 +08:00
Yunfan Li
b603c8c1e8 Add MovePointBackwards in MotionMaster.h 2024-12-29 21:16:33 +08:00
Yunfan Li
2bab8ee807 Merge pull request #32 from liyunfan1223/modify_char_sel
Add class and race to CHAR_SEL_CHARS_BY_ACCOUNT_ID
2024-12-25 22:41:10 +08:00
Yunfan Li
4e8524bd13 Add class and race to CHAR_SEL_CHARS_BY_ACCOUNT_ID 2024-12-25 21:39:39 +08:00
Yunfan Li
c76e70a364 Merge branch 'master' into Playerbot 2024-12-22 13:24:03 +08:00
Yunfan Li
7347f64938 Merge branch 'master' into Playerbot 2024-12-13 18:51:37 +08:00
Yunfan Li
889b509313 Merge branch 'master' into Playerbot 2024-12-05 00:08:25 +08:00
Yunfan Li
ba56317506 Merge pull request #30 from noisiver/update-character-online
Add a new statement to update character online by guid
2024-12-01 11:46:32 +08:00
Yunfan Li
e8679bc13b Merge pull request #29 from Raz0r1337/Playerbot
Update worldserver.conf.dist
2024-12-01 11:45:38 +08:00
Revision
3d3fff1a2e Add a new statement to update character online by guid 2024-11-30 17:18:01 +01:00
Sascha
9e5f551b58 Update worldserver.conf.dist
logging stuff inserted into the correct area of ​​the config file
2024-11-29 13:13:01 +01:00
Yunfan Li
1294d79764 Merge branch 'master' into Playerbot 2024-11-25 23:22:31 +08:00
Yunfan Li
4cd23792db Merge pull request #27 from hermensbas/feature/alignment_core_data_folder
placed playerbot sql folder into data folder as core/module describes
2024-11-18 15:36:20 +08:00
bash
4183a34608 placed sql into the data folder as core/module describes 2024-11-16 21:37:24 +00:00
Yunfan Li
fce06946e1 Merge branch 'master' into Playerbot 2024-11-16 13:15:00 +08:00
Yunfan Li
545bb18af4 Merge branch 'master' into Playerbot 2024-11-08 20:58:52 +08:00
Yunfan Li
abd9b4ebb8 Merge branch 'master' into Playerbot 2024-10-30 21:43:42 +08:00
Yunfan Li
2e37c1ff1d Merge branch 'master' into Playerbot 2024-10-21 11:43:19 +08:00
Yunfan Li
418afce6d7 Merge branch 'master' into Playerbot 2024-10-10 23:13:20 +08:00
Yunfan Li
0e1fb788c1 Merge pull request #24 from liyunfan1223/fix_header_include
Fix header include for playerbots
2024-10-05 00:12:41 +08:00
Yunfan Li
b4ca46c3af Fix header include for playerbots 2024-10-04 23:07:08 +08:00
Yunfan Li
6eb5070cbc Merge branch 'master' into Playerbot 2024-10-04 21:57:35 +08:00
Yunfan Li
9ebdbd8459 Merge branch 'master' into Playerbot 2024-09-29 23:22:47 +08:00
Yunfan Li
66c55bc450 Merge branch 'master' into Playerbot 2024-09-22 21:56:15 +08:00
Yunfan Li
9780dbab7e Merge branch 'master' into Playerbot 2024-09-17 23:15:28 +08:00
Yunfan Li
910848c51b Revert "Revert "Merge branch 'master' into Playerbot""
This reverts commit 2358b256f2.
2024-09-17 23:14:42 +08:00
Yunfan Li
57b7a6a4eb Merge pull request #22 from manstfu/Playerbot
Fixed spells not granted by quest
2024-09-15 10:57:28 +08:00
manstfu
ddd7c1fb6c Updated with master branch 2024-09-14 18:25:46 +02:00
manstfu
c85e9772a8 Update PlayerQuest.cpp
Fixed spells not granted by quests
2024-09-14 09:12:52 +02:00
Yunfan Li
af776520db Merge pull request #21 from liyunfan1223/revert_spell_crash
Revert "Merge branch 'master' into Playerbot"
2024-09-13 17:45:21 +08:00
Yunfan Li
2358b256f2 Revert "Merge branch 'master' into Playerbot"
This reverts commit 9973151927, reversing
changes made to 6f5b504e4c.
2024-09-13 17:13:32 +08:00
Yunfan Li
7e8c2d2887 Fix continuous integration workflow 2024-09-12 22:52:49 +08:00
Yunfan Li
9973151927 Merge branch 'master' into Playerbot 2024-09-12 22:49:08 +08:00
Yunfan Li
6f5b504e4c Merge branch 'master' into Playerbot 2024-09-07 14:27:11 +08:00
Yunfan Li
414805e692 Merge branch 'master' into Playerbot 2024-09-04 23:46:34 +08:00
Yunfan Li
f8a28b6883 Merge branch 'master' into Playerbot 2024-08-30 22:38:08 +08:00
Yunfan Li
fdb6fedc00 Naxx scripts header 2024-08-26 23:05:53 +08:00
Yunfan Li
a642358a43 Merge branch 'master' into Playerbot 2024-08-26 22:29:54 +08:00
Yunfan Li
1bf88ad3a3 Merge branch 'master' into Playerbot 2024-08-19 18:59:50 +08:00
Yunfan Li
27b243e7b2 Merge branch 'master' into Playerbot 2024-08-18 23:02:22 +08:00
Yunfan Li
33e4bc8390 Merge branch 'master' into Playerbot 2024-08-12 01:07:20 +08:00
Yunfan Li
c3be0fa2a8 Merge branch 'master' into Playerbot 2024-08-05 01:22:16 +08:00
Yunfan Li
3e2509e20c Merge pull request #20 from atidot3/Playerbot
Fix last modification warning chat.h
2024-08-03 21:44:04 +08:00
Atidote
2cde786785 Merge branch 'liyunfan1223:Playerbot' into Playerbot 2024-08-03 15:13:32 +02:00
Atidot3
0406652bae fix chat warning 2024-08-03 15:11:13 +02:00
Yunfan Li
f5e44cd8a6 Merge branch 'master' into Playerbot 2024-08-01 15:41:23 +08:00
Yunfan Li
7227e78f54 Merge pull request #19 from liyunfan1223/movement-rewrite
Add MoveKnockbackFromForPlayer
2024-08-01 11:40:40 +08:00
Yunfan Li
0ba424a853 Merge pull request #18 from atidot3/Playerbot
Playerbot helper
2024-08-01 11:40:24 +08:00
Yunfan Li
7a1986da61 Merge pull request #17 from noisiver/playerbots
Fix compiler warnings
2024-08-01 11:39:42 +08:00
Yunfan Li
f6a9b1f97d Add MoveKnockbackFromForPlayer 2024-07-31 23:47:24 +08:00
antony
bba6c86364 Playerbot helper 2024-07-31 17:24:20 +02:00
Revision
84c12b0402 Fix warnings 2024-07-30 15:42:07 +02:00
Yunfan Li
e6fa5732dc Fix macos build 2024-07-29 23:08:30 +08:00
Yunfan Li
172f54b49a Merge branch 'master' into Playerbot 2024-07-29 15:40:17 +08:00
Yunfan Li
f7ad415b3f Merge pull request #15 from atidot3/Playerbot
Playerbot fixes and functionnality to talk in channels
2024-07-27 23:56:51 +08:00
antony
4a48e18d5b Playerbot fixes and functionnality to talk in channels 2024-07-26 11:34:32 +02:00
Yunfan Li
5276676a11 Merge branch 'master' into Playerbot 2024-07-24 20:57:52 +08:00
Yunfan Li
c72188467a Merge branch 'master' into Playerbot 2024-07-23 18:23:10 +08:00
Yunfan Li
22132addce Merge branch 'master' into Playerbot 2024-07-19 17:25:43 +08:00
Yunfan Li
05c9a96ba9 Merge branch 'master' into Playerbot 2024-07-11 12:32:13 +08:00
Yunfan Li
1f54cb14fa Merge branch 'master' into Playerbot 2024-07-07 13:33:14 +08:00
Yunfan Li
223ec63ba5 Merge branch 'master' into Playerbot 2024-07-03 22:54:06 +08:00
Yunfan Li
2a2e2ec445 Rollback name check 2024-07-03 20:01:14 +08:00
Yunfan Li
cc5adebbe4 Merge branch 'master' into Playerbot 2024-07-03 16:04:51 +08:00
Yunfan Li
d7a07b2397 Merge branch 'master' into Playerbot 2024-06-29 21:57:41 +08:00
Yunfan Li
9a11d9dd5b Merge branch 'master' into Playerbot 2024-06-28 18:36:45 +08:00
Yunfan Li
fb4dbdd604 Merge branch 'master' into Playerbot 2024-06-24 18:51:01 +08:00
Yunfan Li
20f917c48f Merge branch 'master' into Playerbot 2024-06-22 16:09:16 +08:00
Yunfan Li
72725635ba Merge branch 'master' into Playerbot 2024-06-19 14:32:16 +08:00
Yunfan Li
7ca3db8bd0 Merge branch 'master' into Playerbot 2024-06-10 00:03:20 +08:00
Yunfan Li
72634b2829 Merge branch 'master' into Playerbot 2024-06-07 22:28:03 +08:00
Yunfan Li
971b2f8316 Merge branch 'master' into Playerbot 2024-06-03 23:16:28 +08:00
Yunfan Li
12ea82a57f [Scripts] Naxxramas scripts refactor with namespace 2024-05-26 23:41:04 +08:00
Yunfan Li
1e22c4dc94 Merge branch 'master' into Playerbot 2024-05-26 23:00:39 +08:00
Yunfan Li
5079750396 Merge branch 'master' into Playerbot 2024-05-07 22:22:40 +08:00
Yunfan Li
9bbe90d388 Merge branch 'master' into Playerbot 2024-05-04 23:35:53 +08:00
Yunfan Li
0a1570ec52 Merge branch 'master' into Playerbot 2024-04-29 20:00:32 +08:00
Yunfan Li
99bc841ff6 Merge branch 'master' into Playerbot 2024-04-26 18:56:32 +08:00
Yunfan Li
c010742289 Merge branch 'master' into Playerbot 2024-04-22 21:50:43 +08:00
Yunfan Li
10bd872f2d Merge branch 'master' into Playerbot 2024-04-15 21:02:03 +08:00
Yunfan Li
ab9fe20600 Merge branch 'master' into Playerbot 2024-04-14 21:08:07 +08:00
Yunfan Li
65cb23b56a Merge branch 'master' into Playerbot 2024-04-10 23:50:39 +08:00
Yunfan Li
f0be01a5d7 Merge branch 'master' into Playerbot 2024-04-07 21:49:34 +08:00
Yunfan Li
d74a6dd960 Merge branch 'master' into Playerbot 2024-03-31 12:44:21 +08:00
Yunfan Li
6338010e09 Merge branch 'master' into Playerbot 2024-03-28 19:15:09 +08:00
Yunfan Li
97604fab77 Merge branch 'master' into Playerbot 2024-03-22 20:41:43 +08:00
Yunfan Li
91870c9ccd Merge branch 'azerothcore:master' into Playerbot 2024-03-19 20:12:59 +08:00
Yunfan Li
4387de8b82 Fix macos CI 2024-03-18 22:17:56 +08:00
Yunfan Li
e0ddd7f610 Disable test build for macos CI 2024-03-18 19:55:39 +08:00
Yunfan Li
0024602d42 CI ignore warnings 2024-03-18 17:35:29 +08:00
Yunfan Li
b1ee6cfe06 Fix macos compilation 2024-03-18 14:25:49 +08:00
Yunfan Li
af717c592f Fix macos CI 2024-03-18 09:07:56 +08:00
Yunfan Li
ce59a892c7 Fix macos CI 2024-03-17 19:48:03 +08:00
Yunfan Li
68219e6f55 Merge branch 'azerothcore:master' into Playerbot 2024-03-17 12:05:57 +08:00
Yunfan Li
a42219e17d Merge branch 'azerothcore:master' into Playerbot 2024-03-12 16:54:14 +08:00
Yunfan Li
b3f96a2bc1 Update core-build.yml 2024-03-12 14:52:37 +08:00
Yunfan Li
23cf1a3aab Update workflows 2024-03-12 14:50:04 +08:00
Yunfan Li
f0cb94cb3f Fix variable unused warning 2024-03-12 13:56:48 +08:00
Yunfan Li
6d5b402c2c Fix workflows 2024-03-12 13:15:19 +08:00
Yunfan Li
60b624a3ac Fix workflows 2024-03-12 13:10:51 +08:00
Yunfan Li
19cd29ff6d Merge pull request #6 from liyunfan1223/revert-5-Playerbot
Revert "Split Ulduar's script files"
2024-03-12 12:46:05 +08:00
Yunfan Li
c36a7a25a0 Revert "Split Ulduar's script files" 2024-03-12 12:41:20 +08:00
Yunfan Li
187db6f688 Merge pull request #5 from Garashan/Playerbot
Split Ulduar's script files
2024-03-12 11:38:04 +08:00
Garashan
984e03db18 Split Ulduar's script files
Split Ulduar script .cpp files into .h and .cpp files.
2024-03-11 19:25:24 +01:00
Yunfan Li
01a6bd65bf Merge branch 'master' into Playerbot 2024-03-09 10:30:25 +08:00
Yunfan Li
5ef572eaf9 Merge pull request #4 from MrSlntGhost/Playerbot
Fix docker load metadata error
2024-03-06 19:02:55 +08:00
MrSlntGhost
8a1635bc6e Fix docker load metadata error 2024-03-05 21:46:31 +01:00
Yunfan Li
0b0eeb05c9 Merge branch 'master' into Playerbot 2024-03-04 17:13:57 +08:00
Yunfan Li
8e5731ff60 Fix ServerScript.h 2024-03-03 12:37:43 +08:00
Yunfan Li
51219291a3 Merge branch 'master' into Playerbot 2024-03-03 11:58:01 +08:00
Yunfan Li
7c856eaf63 Merge branch 'master' of github.com:azerothcore/azerothcore-wotlk into Playerbot 2024-02-24 22:48:16 +08:00
Yunfan Li
b4046d48d7 Merge branch 'master' into Playerbot 2024-02-22 23:34:59 +08:00
Yunfan Li
ccff9469fc Merge branch 'master' into Playerbot 2024-02-19 23:10:00 +08:00
Yunfan Li
cd5826f283 Merge branch 'master' into Playerbot 2024-02-14 01:02:12 +08:00
Yunfan Li
5699c97d8c Merge branch 'master' into Playerbot 2024-02-11 23:45:22 +08:00
Yunfan Li
9784f932e9 Merge branch 'master' into Playerbot 2024-02-06 17:51:47 +08:00
Yunfan Li
1ef5b9a6b4 Merge branch 'master' into Playerbot 2024-01-29 11:46:32 +08:00
Yunfan Li
b314b04001 Merge branch 'master' into Playerbot 2024-01-23 12:31:39 +08:00
Yunfan Li
9e172c9113 Merge branch 'master' into Playerbot 2024-01-15 21:00:38 +08:00
Yunfan Li
b70e64dbcf Merge branch 'master' into Playerbot 2024-01-14 15:23:52 +08:00
Yunfan Li
600b0873e7 Merge branch 'master' into Playerbot 2024-01-08 23:30:50 +08:00
Yunfan Li
cb795ae5d4 Merge branch 'master' into Playerbot 2024-01-07 22:41:44 +08:00
Yunfan Li
213300bf66 Merge branch 'master' into Playerbot 2024-01-06 17:54:45 +08:00
Yunfan Li
ccf92f481d Merge branch 'master' into Playerbot 2024-01-04 19:22:20 +08:00
Yunfan Li
19f7e753ba Merge pull request #2 from oiuv/Playerbot
Playerbot
2023-12-28 22:08:00 +08:00
Yunfan Li
68c8fad239 Merge pull request #1 from AlvinZhu/Playerbot
Force playerbots locale enUS and Fix multi-language DBC loading
2023-12-28 22:07:05 +08:00
Oiuv
f68f398e59 Merge branch 'master' into Playerbot 2023-12-28 17:33:26 +08:00
Alvin Zhu
608ff291cb Force playerbots locale enUS 2023-12-27 17:00:20 +08:00
Alvin Zhu
7c91ec9bf9 Fix multi-language DBC loading 2023-12-27 16:59:26 +08:00
Yunfan Li
452584a155 Merge branch 'master' into Playerbot 2023-12-17 22:42:51 +08:00
Yunfan Li
80a8896dfe playerbot logout 2023-12-17 22:41:43 +08:00
Yunfan Li
60cf17d70a fix scripts issue 2023-12-12 20:52:59 +08:00
Yunfan Li
7915f79d04 Merge branch 'master' into Playerbot 2023-12-12 20:52:42 +08:00
Yunfan Li
d879fc9258 Merge branch 'master' into Playerbot 2023-10-27 20:12:09 +08:00
Yunfan Li
57e0c7a09f Merge branch 'master' of github.com:azerothcore/azerothcore-wotlk into Playerbot 2023-10-22 19:52:23 +08:00
Yunfan Li
a5e27362d8 Merge commit '26c583c24ab7dbbf1fecf3dcd737c1ad543c8b33' into Playerbot_1017 2023-10-17 22:18:39 +08:00
Yunfan Li
2dd1490c18 Merge branch 'master' of github.com:azerothcore/azerothcore-wotlk into Playerbot 2023-09-23 22:44:15 +08:00
Yunfan Li
e7ac00b586 Merge branch 'master' into Playerbot 2023-09-05 19:24:48 +08:00
Yunfan Li
28fcb40b88 Merge branch 'master' into Playerbot 2023-09-05 00:13:44 +08:00
Yunfan Li
cc4ac0ab57 Merge branch 'master' into Playerbot 2023-09-03 14:38:52 +08:00
Yunfan Li
92c6ef23ff Merge branch 'master' into Playerbot 2023-09-01 21:17:04 +08:00
Yunfan Li
c6bcda8b9d Merge branch 'master' into Playerbot 2023-08-29 20:50:49 +08:00
Yunfan Li
e2019033c1 Merge branch 'master' into Playerbot 2023-08-27 00:42:24 +08:00
Yunfan Li
58a7625be7 Merge branch 'master' into Playerbot 2023-08-25 02:29:53 +08:00
Yunfan Li
4b1f585fab Merge branch 'master' into Playerbot 2023-08-24 22:07:53 +08:00
Yunfan Li
33eb24f543 MOD_PLAYERBOTS macro 2023-08-24 21:08:59 +08:00
Yunfan Li
36e18dd5e1 change gitmodules 2023-08-10 15:22:06 +08:00
Yunfan Li
6a954d7560 Merge branch 'master' into Playerbot 2023-08-10 13:45:03 +08:00
Yunfan Li
b8567b3f66 conf for playerbots log 2023-08-10 10:30:12 +08:00
Yunfan Li
df11f5a0e7 Merge branch 'master' into Playerbot 2023-08-07 23:58:57 +08:00
Yunfan Li
db889ed3c9 Merge branch 'master' into Playerbot 2023-08-05 19:11:41 +08:00
Yunfan Li
a4e5ff3779 Merge branch 'master' into Playerbot 2023-08-01 23:21:36 +08:00
Yunfan Li
058526b612 Merge branch 'master' into Playerbot 2023-07-30 14:37:00 +08:00
Yunfan Li
78e21a0539 Merge branch 'master' into Playerbot 2023-07-26 13:25:50 +08:00
Yunfan Li
06b2f25a00 Fix(scripts): bot receive CMSG packet 2023-07-26 13:10:55 +08:00
Yunfan Li
2ca14cd5eb Merge branch 'master' into Playerbot 2023-07-24 14:43:27 +08:00
Yunfan Li
95add2b815 Merge branch 'master' into Playerbot 2023-07-18 17:59:18 +08:00
Yunfan Li
2afc3a46d0 refactor naxxramas 2023-07-18 17:58:03 +08:00
Yunfan Li
4d3abb0538 logout bots in kickall 2023-07-15 16:42:10 +08:00
Yunfan Li
95843d5835 Merge branch 'master' into Playerbot 2023-07-14 13:16:02 +08:00
Yunfan Li
44046ee5df Merge branch 'master' into Playerbot 2023-07-08 00:47:19 +08:00
Yunfan Li
0713446e1e Merge branch 'master' into Playerbot 2023-07-04 10:05:31 +08:00
Yunfan Li
55821a893c Merge branch 'master' into Playerbot 2023-06-22 09:53:06 +08:00
Yunfan Li
433467b8c0 split anubrekhan, grobbulus scripts 2023-06-18 21:52:39 +08:00
Yunfan Li
abaf4655e2 Merge branch 'master' into Playerbot 2023-06-18 20:48:30 +08:00
Yunfan Li
b417973361 Merge branch 'master' into Playerbot 2023-06-13 01:04:01 +08:00
Yunfan Li
e766845cb4 Spell(item check): turn ItemLevel to RequiredLevel 2023-06-11 18:19:28 +08:00
Yunfan Li
69740eb29b Merge branch 'master' into Playerbot 2023-06-09 23:40:54 +08:00
Yunfan Li
23306a3d10 split heigan 2023-06-09 23:16:44 +08:00
Yunfan Li
f05b5e678c split grobbulus 2023-06-08 10:58:37 +08:00
Yunfan Li
dc4c50923c Merge branch 'master' into Playerbot 2023-06-07 23:39:37 +08:00
Yunfan Li
46f277f2f6 spilit boss_heigan to .cpp and .h 2023-06-06 00:10:41 +08:00
Yunfan Li
a7519279f7 Merge branch 'master' into Playerbot 2023-06-06 00:07:04 +08:00
Yunfan Li
05103aeacf Merge branch 'master' into Playerbot 2023-06-02 15:38:15 +08:00
Yunfan Li
a1a3263727 Merge branch 'master' into Playerbot 2023-05-29 19:05:17 +08:00
Yunfan Li
0e7289304d command setskill range allow 0 2023-05-29 19:00:11 +08:00
Yunfan Li
9d3d2c84fe HandlePlayerLoginFromDB 2023-05-26 20:52:01 +08:00
Yunfan Li
f677900061 Prevent GUID from exhausting 2023-05-26 01:02:22 +08:00
Yunfan Li
ec45b40cb9 feat: fix warning and configuration 2023-05-24 19:43:56 +08:00
Yunfan Li
72660b1ed8 Merge branch 'master' into Playerbot 2023-05-24 17:57:30 +08:00
ZhengPeiRu21
aa1214a6ba Merge branch 'azerothcore:master' into Playerbot 2023-05-01 10:31:02 -06:00
ZhengPeiRu21
2e294eae2b Merge pull request #6 from kjack9/Playerbot
fix(Docker): add libboost-thread-dev dependency to Dockerfile
2023-05-01 10:30:47 -06:00
KJack
42e8c3f172 fix(Docker): add libboost-thread-dev dependency to Dockerfile 2023-05-01 11:51:21 -04:00
ZhengPeiRu21
25d2c3ebe7 Merge branch 'azerothcore:master' into Playerbot 2023-04-26 13:57:57 -06:00
ZhengPeiRu21
d6a099e98c Merge branch 'azerothcore:master' into Playerbot 2023-04-24 09:38:43 -06:00
ZhengPeiRu21
1773a505c0 Merge branch 'azerothcore:master' into Playerbot 2023-04-23 13:53:58 -06:00
ZhengPeiRu21
e355e79482 Merge branch 'azerothcore:master' into Playerbot 2023-04-21 22:17:38 -06:00
ZhengPeiRu21
bb0f212b87 Merge branch 'azerothcore:master' into Playerbot 2023-04-20 16:01:49 -06:00
ZhengPeiRu21
780c8ede85 Merge branch 'azerothcore:master' into Playerbot 2023-04-19 09:48:45 -06:00
ZhengPeiRu21
e622ba991f Merge branch 'azerothcore:master' into Playerbot 2023-04-18 09:28:55 -06:00
ZhengPeiRu21
affbfa1e30 Merge branch 'azerothcore:master' into Playerbot 2023-04-16 20:27:56 -06:00
ZhengPeiRu21
d02099db9a Merge branch 'azerothcore:master' into Playerbot 2023-04-13 10:42:03 -06:00
ZhengPeiRu21
ae175496dd Merge branch 'azerothcore:master' into Playerbot 2023-04-10 08:27:49 -06:00
ZhengPeiRu21
0248ed8778 Merge branch 'azerothcore:master' into Playerbot 2023-04-06 10:12:34 -06:00
ZhengPeiRu21
43778acb9a Merge branch 'azerothcore:master' into Playerbot 2023-04-05 11:49:27 -06:00
ZhengPeiRu21
ed4e0ffbda Merge branch 'azerothcore:master' into Playerbot 2023-04-04 13:23:00 -06:00
ZhengPeiRu21
c9186547dd Merge branch 'azerothcore:master' into Playerbot 2023-04-04 08:16:34 -06:00
ZhengPeiRu21
a27f752dcc Merge branch 'azerothcore:master' into Playerbot 2023-04-03 22:10:19 -06:00
郑佩茹
00f9f8e0d0 Merge branch 'Playerbot' of https://github.com/ZhengPeiRu21/azerothcore-wotlk into Playerbot 2023-04-03 07:53:39 -06:00
郑佩茹
1b3fd82f5c Merge branch 'master' into Playerbot
# Conflicts:
#	src/server/game/Guilds/Guild.cpp
2023-04-03 07:52:56 -06:00
ZhengPeiRu21
4004dcb23b Merge branch 'azerothcore:master' into Playerbot 2023-04-02 09:42:34 -06:00
ZhengPeiRu21
6cb1778c6d Merge branch 'azerothcore:master' into Playerbot 2023-04-01 08:07:59 -06:00
ZhengPeiRu21
0aca3f7b72 Merge branch 'azerothcore:master' into Playerbot 2023-03-30 07:34:21 -06:00
ZhengPeiRu21
2bf872e446 Merge branch 'azerothcore:master' into Playerbot 2023-03-29 06:29:03 -06:00
ZhengPeiRu21
939291c9c2 Merge branch 'azerothcore:master' into Playerbot 2023-03-28 09:26:50 -06:00
ZhengPeiRu21
4c18f3b3e5 Merge branch 'azerothcore:master' into Playerbot 2023-03-25 13:06:10 -06:00
ZhengPeiRu21
38268a187e Merge branch 'azerothcore:master' into Playerbot 2023-03-23 09:07:11 -06:00
ZhengPeiRu21
317afd051b Merge branch 'azerothcore:master' into Playerbot 2023-03-22 10:16:52 -06:00
ZhengPeiRu21
71e8baf929 Merge branch 'azerothcore:master' into Playerbot 2023-03-22 09:35:01 -06:00
ZhengPeiRu21
e9143a2c0b Merge branch 'azerothcore:master' into Playerbot 2023-03-21 08:46:26 -06:00
郑佩茹
0a192af532 Merge branch 'Playerbot' of https://github.com/ZhengPeiRu21/azerothcore-wotlk into Playerbot 2023-03-16 11:08:57 -06:00
郑佩茹
be7c57507f Merge branch 'master' into Playerbot
# Conflicts:
#	src/server/game/Entities/Player/Player.h
2023-03-16 10:00:13 -06:00
ZhengPeiRu21
e898462333 Merge branch 'azerothcore:master' into Playerbot 2023-03-10 08:18:50 -07:00
ZhengPeiRu21
ca84c22cf2 Merge branch 'azerothcore:master' into Playerbot 2023-03-06 23:19:41 -07:00
ZhengPeiRu21
fce7ba32a3 Merge branch 'azerothcore:master' into Playerbot 2023-03-02 08:52:37 -07:00
郑佩茹
328d991305 Merge branch 'Playerbot' of https://github.com/ZhengPeiRu21/azerothcore-wotlk into Playerbot 2023-03-01 11:52:48 -07:00
郑佩茹
826bac08ec Merge branch 'master' into Playerbot
# Conflicts:
#	src/server/game/World/IWorld.h
#	src/server/game/World/World.h
2023-03-01 11:52:02 -07:00
ZhengPeiRu21
d40a859de6 Merge branch 'azerothcore:master' into Playerbot 2023-02-21 11:29:39 -07:00
ZhengPeiRu21
62d3317c93 Merge branch 'azerothcore:master' into Playerbot 2023-02-17 16:12:43 -07:00
郑佩茹
6a1589c989 Update to be compatible with latest AC 2023-02-17 12:41:37 -07:00
郑佩茹
8ffdf088d4 Merge branch 'master' into Playerbot 2023-02-17 11:37:31 -07:00
郑佩茹
d5e1ec851a Merge branch 'Playerbot' of https://github.com/ZhengPeiRu21/azerothcore-wotlk into Playerbot 2023-02-14 12:03:09 -07:00
郑佩茹
4bc9901f16 Merge branch 'master' into Playerbot
# Conflicts:
#	src/server/game/Entities/GameObject/GameObject.h
2023-02-13 13:07:03 -07:00
ZhengPeiRu21
ba4e49f5b2 Merge branch 'azerothcore:master' into Playerbot 2023-02-10 15:48:50 -07:00
郑佩茹
ccee04c908 Merge branch 'Playerbot' of https://github.com/ZhengPeiRu21/azerothcore-wotlk into Playerbot 2023-02-09 12:42:09 -07:00
郑佩茹
03b3f9d051 Merge branch 'master' into Playerbot
# Conflicts:
#	src/server/game/World/World.h
2023-02-09 12:40:25 -07:00
ZhengPeiRu21
465d19b7f6 Merge branch 'azerothcore:master' into Playerbot 2023-01-19 11:57:25 -07:00
ZhengPeiRu21
f51115a054 Merge branch 'azerothcore:master' into Playerbot 2023-01-12 09:20:22 -07:00
ZhengPeiRu21
16eecd908e Merge branch 'azerothcore:master' into Playerbot 2023-01-04 11:21:02 -07:00
ZhengPeiRu21
b86914fd37 Merge branch 'azerothcore:master' into Playerbot 2022-12-29 12:20:26 -07:00
ZhengPeiRu21
2bb78d1451 Merge branch 'azerothcore:master' into Playerbot 2022-12-27 09:50:12 -07:00
ZhengPeiRu21
cd6e0d7e0b Merge branch 'azerothcore:master' into Playerbot 2022-12-12 10:18:34 -07:00
ZhengPeiRu21
5a8fe17184 Merge branch 'azerothcore:master' into Playerbot 2022-12-09 11:56:19 -07:00
郑佩茹
2ec6f2d92f Merge branch 'Playerbot' of https://github.com/ZhengPeiRu21/azerothcore-wotlk into Playerbot 2022-12-07 14:46:45 -07:00
郑佩茹
c1c97ad425 Merge branch 'master' into Playerbot
# Conflicts:
#	src/server/game/Server/WorldSession.cpp
#	src/server/game/Server/WorldSession.h
2022-12-07 14:46:21 -07:00
ZhengPeiRu21
fad161a76b Merge branch 'azerothcore:master' into Playerbot 2022-12-01 09:43:29 -07:00
ZhengPeiRu21
87f185bb85 Merge branch 'azerothcore:master' into Playerbot 2022-11-23 09:13:39 -07:00
郑佩茹
ec7288bc17 Merge branch 'Playerbot' of https://github.com/ZhengPeiRu21/azerothcore-wotlk into Playerbot 2022-11-18 12:15:17 -07:00
郑佩茹
cab0d6f027 Merge branch 'master' into Playerbot
# Conflicts:
#	src/server/game/Guilds/Guild.cpp
2022-11-18 10:21:36 -07:00
ZhengPeiRu21
8ec316da13 Merge branch 'azerothcore:master' into Playerbot 2022-11-07 13:20:52 -07:00
ZhengPeiRu21
4d068b0e74 Merge branch 'azerothcore:master' into Playerbot 2022-11-04 09:12:25 -06:00
ZhengPeiRu21
18ae6a473f Merge branch 'azerothcore:master' into Playerbot 2022-10-31 16:12:42 -06:00
ZhengPeiRu21
99dbd3d4c5 Merge branch 'azerothcore:master' into Playerbot 2022-10-26 09:07:05 -06:00
ZhengPeiRu21
780b947f51 Merge branch 'azerothcore:master' into Playerbot 2022-10-24 16:21:51 -06:00
ZhengPeiRu21
b68c3a733a Merge branch 'azerothcore:master' into Playerbot 2022-10-24 08:50:01 -06:00
ZhengPeiRu21
e0b905aef7 Merge branch 'azerothcore:master' into Playerbot 2022-10-22 17:44:53 -06:00
ZhengPeiRu21
4b8fb01016 Merge branch 'azerothcore:master' into Playerbot 2022-10-19 19:25:35 -06:00
ZhengPeiRu21
ce8592b29b Merge branch 'azerothcore:master' into Playerbot 2022-10-17 10:41:21 -06:00
ZhengPeiRu21
46438255bf Merge branch 'azerothcore:master' into Playerbot 2022-10-15 09:59:28 -06:00
郑佩茹
5996f1f1af Remove outdated Git submodule 2022-10-07 09:17:43 -06:00
ZhengPeiRu21
906748cd16 Merge branch 'azerothcore:master' into Playerbot 2022-10-07 09:14:47 -06:00
ZhengPeiRu21
80c608df4f Merge branch 'azerothcore:master' into Playerbot 2022-10-02 10:46:28 -06:00
ZhengPeiRu21
a300a4be12 Merge branch 'azerothcore:master' into Playerbot 2022-09-28 17:09:45 -06:00
郑佩茹
203f2ec7eb Update PLAYERBOTS_SEL_TEXT query 2022-09-27 08:40:27 -06:00
ZhengPeiRu21
8c05b69e4e Merge branch 'azerothcore:master' into Playerbot 2022-09-26 10:01:10 -06:00
ZhengPeiRu21
7b5a03ac8f Merge branch 'azerothcore:master' into Playerbot 2022-09-23 10:03:15 -06:00
ZhengPeiRu21
4c6c80d880 Merge branch 'azerothcore:master' into Playerbot 2022-09-22 15:18:27 -06:00
ZhengPeiRu21
8da3ae8a91 Merge branch 'azerothcore:master' into Playerbot 2022-09-21 09:42:10 -06:00
ZhengPeiRu21
e67849a858 Merge branch 'azerothcore:master' into Playerbot 2022-09-19 09:23:59 -06:00
ZhengPeiRu21
d38899321c Merge branch 'azerothcore:master' into Playerbot 2022-09-18 17:01:24 -06:00
ZhengPeiRu21
6dfc04c2bf Merge branch 'azerothcore:master' into Playerbot 2022-09-15 18:12:58 -06:00
ZhengPeiRu21
46fa7b484d Merge branch 'azerothcore:master' into Playerbot 2022-09-15 09:10:16 -06:00
ZhengPeiRu21
76f4f741d8 Merge branch 'azerothcore:master' into Playerbot 2022-09-13 18:48:47 -06:00
ZhengPeiRu21
8791645166 Merge branch 'azerothcore:master' into Playerbot 2022-09-13 10:44:15 -06:00
ZhengPeiRu21
77571adf1f Merge branch 'azerothcore:master' into Playerbot 2022-09-08 15:10:29 -06:00
ZhengPeiRu21
aa1705d6c5 Merge branch 'azerothcore:master' into Playerbot 2022-09-07 09:35:58 -06:00
郑佩茹
c9fa699837 Attempt to fix Evade issue 2022-09-06 13:35:06 -06:00
ZhengPeiRu21
819532426b Merge branch 'azerothcore:master' into Playerbot 2022-09-06 12:11:39 -06:00
ZhengPeiRu21
31f36b25f2 Merge branch 'azerothcore:master' into Playerbot 2022-09-03 10:17:45 -06:00
ZhengPeiRu21
ac5bcfae12 Merge branch 'azerothcore:master' into Playerbot 2022-09-02 10:49:43 -06:00
ZhengPeiRu21
399b8803b8 Merge branch 'azerothcore:master' into Playerbot 2022-09-01 12:56:06 -06:00
ZhengPeiRu21
cd7a22a4de Merge branch 'azerothcore:master' into Playerbot 2022-08-30 20:52:05 -06:00
ZhengPeiRu21
2759a5ee1d Merge branch 'azerothcore:master' into Playerbot 2022-08-29 09:30:33 -06:00
郑佩茹
0752208c43 Merge branch 'master' into Playerbot
# Conflicts:
#	src/server/game/Entities/Player/Player.cpp
2022-08-25 10:07:17 -06:00
郑佩茹
3d8f540110 ResetChatTimer no longer needed with upstream chat flood handling changes 2022-08-19 12:16:34 -06:00
ZhengPeiRu21
774225e669 Merge branch 'azerothcore:master' into Playerbot 2022-08-18 13:48:09 -06:00
郑佩茹
bbd283598d Fix Evading issue 2022-08-18 13:46:22 -06:00
郑佩茹
32c6babdb7 Merge branch 'master' into Playerbot
# Conflicts:
#	src/server/game/Entities/Player/Player.cpp
#	src/server/game/Entities/Player/Player.h
#	src/server/game/Entities/Unit/Unit.h
2022-08-16 16:13:26 -06:00
郑佩茹
29e14042e7 Update to work with latest AzerothCore master 2022-07-27 10:15:08 -06:00
郑佩茹
a5f1fc38a8 Merge branch 'Playerbot' of https://github.com/ZhengPeiRu21/azerothcore-wotlk into Playerbot
 Conflicts:
	src/server/game/Entities/Creature/Creature.cpp
2022-07-27 09:57:48 -06:00
郑佩茹
6ad65508af Merge branch 'master' into Playerbot
# Conflicts:
#	src/server/game/Entities/Creature/Creature.cpp
#	src/server/game/Entities/Creature/Creature.h
#	src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp
2022-07-27 09:11:50 -06:00
ZhengPeiRu21
2a45fdff1f Merge pull request #5 from KobaltBlu/Playerbot
fix: illegal instruction error in Creature.cpp:3470
2022-07-21 09:07:48 -06:00
ZhengPeiRu21
d960ccd4e4 Merge branch 'azerothcore:master' into Playerbot 2022-07-21 09:06:44 -06:00
KobaltBlu
55510b18e6 fix: illegal instruction error in Creature.cpp:3470 2022-07-20 00:50:00 -04:00
ZhengPeiRu21
0fd3d185b9 Merge pull request #4 from KobaltBlu/Playerbot
fix: remove WorldFloatConfigs[CONFIG_WATER_BREATH_TIMER]
2022-07-19 08:53:24 -06:00
KobaltBlu
efd245daf5 fix: remove WorldFloatConfigs[CONFIG_WATER_BREATH_TIMER]
fixes compile error: "fatal error: redefinition of enumerator"
2022-07-16 11:09:52 -04:00
郑佩茹
27300e9fdf Merge branch 'Playerbot' of https://github.com/ZhengPeiRu21/azerothcore-wotlk into Playerbot 2022-07-13 10:32:18 -06:00
郑佩茹
a44c241430 Merge branch 'master' into Playerbot
# Conflicts:
#	src/server/apps/worldserver/worldserver.conf.dist
#	src/server/game/Battlegrounds/Battleground.h
#	src/server/game/Entities/Player/Player.cpp
#	src/server/game/World/World.cpp
2022-07-13 10:31:30 -06:00
ZhengPeiRu21
f1043be632 Merge branch 'azerothcore:master' into Playerbot 2022-07-06 10:08:55 -06:00
ZhengPeiRu21
0d3a10cc26 Merge branch 'azerothcore:master' into Playerbot 2022-07-05 10:24:47 -06:00
ZhengPeiRu21
e8781b0fc1 Merge branch 'azerothcore:master' into Playerbot 2022-07-01 10:11:40 -06:00
ZhengPeiRu21
c687d40741 Merge branch 'azerothcore:master' into Playerbot 2022-06-30 09:34:51 -06:00
ZhengPeiRu21
65f6fbb496 Merge branch 'azerothcore:master' into Playerbot 2022-06-27 09:06:46 -06:00
ZhengPeiRu21
98f0f093e5 Merge branch 'azerothcore:master' into Playerbot 2022-06-24 15:25:18 -06:00
郑佩茹
67e9f2fd35 Fix merge conflicts 2022-06-21 13:24:33 -06:00
郑佩茹
98c22aa96d Merge branch 'master' of https://github.com/ZhengPeiRu21/azerothcore-wotlk into Playerbot 2022-06-21 13:23:18 -06:00
郑佩茹
87fc81d0cc Merge branch 'master' of https://github.com/ZhengPeiRu21/azerothcore-wotlk into Playerbot 2022-06-21 09:19:50 -06:00
郑佩茹
743479e817 Merge branch 'Playerbot' of https://github.com/ZhengPeiRu21/azerothcore-wotlk into Playerbot 2022-06-16 10:06:30 -06:00
郑佩茹
7cc44a4ab1 Merge branch 'breathTimerConfig' into Playerbot 2022-06-16 10:06:05 -06:00
ZhengPeiRu21
3ab6d3cb37 Merge branch 'azerothcore:master' into Playerbot 2022-06-16 10:04:30 -06:00
ZhengPeiRu21
4f8564ea5b Merge branch 'azerothcore:master' into Playerbot 2022-06-13 15:00:30 -06:00
ZhengPeiRu21
2d7cba14db Merge branch 'azerothcore:master' into Playerbot 2022-06-10 08:51:40 -06:00
ZhengPeiRu21
d8a2665867 Merge branch 'azerothcore:master' into Playerbot 2022-06-08 11:10:38 -06:00
郑佩茹
46e9e82118 feat(Core/Config): Configurable Water Breath Timer 2022-06-03 12:34:31 -06:00
ZhengPeiRu21
427f0afaaf Merge branch 'azerothcore:master' into Playerbot 2022-06-03 10:02:54 -06:00
郑佩茹
b314b3a711 Merge branch 'master' into Playerbot 2022-05-31 09:11:39 -06:00
ZhengPeiRu21
2442fc6ad7 Merge branch 'azerothcore:master' into Playerbot 2022-05-29 21:07:57 -06:00
郑佩茹
650e71728a Merge branch 'master' into Playerbot
# Conflicts:
#	src/server/game/Entities/Unit/Unit.cpp
2022-05-25 08:51:01 -06:00
ZhengPeiRu21
882359297d Merge branch 'azerothcore:master' into Playerbot 2022-05-23 09:04:16 -06:00
ZhengPeiRu21
0d42597ba3 Merge branch 'azerothcore:master' into Playerbot 2022-05-22 12:08:05 -06:00
ZhengPeiRu21
34b332b51b Merge branch 'azerothcore:master' into Playerbot 2022-05-19 12:55:28 -06:00
ZhengPeiRu21
cc94955bb2 Merge branch 'azerothcore:master' into Playerbot 2022-05-17 11:00:13 -06:00
郑佩茹
9a6c789f1a Add missing override annotation to GetPlayerbotsDBRevision 2022-05-16 13:16:03 -06:00
ZhengPeiRu21
26595bd2d9 Merge branch 'azerothcore:master' into Playerbot 2022-05-16 13:11:42 -06:00
ZhengPeiRu21
6b57ea8223 Merge branch 'azerothcore:master' into Playerbot 2022-05-12 09:41:56 -06:00
ZhengPeiRu21
e05bc38461 Merge pull request #3 from qudzy/upstream/refactor-instance-suggestions
Refactor instance suggestions
2022-05-10 08:48:32 -06:00
ZhengPeiRu21
0053ac67d9 Merge branch 'azerothcore:master' into Playerbot 2022-05-10 08:46:47 -06:00
ZhengPeiRu21
c2efd301b5 Merge branch 'azerothcore:master' into Playerbot 2022-05-06 16:13:01 -06:00
qudzy
44e4cd8cda Add prepared dungeon suggestion statement 2022-05-06 16:55:21 +02:00
qudzy
0e6a5bddbb Declare strToLower method in utilities 2022-05-06 16:55:21 +02:00
qudzy
1e3d488784 Ignore Visual Studio folders 2022-05-06 16:55:21 +02:00
ZhengPeiRu21
c6df5eae3a Merge branch 'azerothcore:master' into Playerbot 2022-05-04 10:47:16 -06:00
郑佩茹
0326d8576d Merge branch 'master' into Playerbot
# Conflicts:
#	src/server/game/World/IWorld.h
#	src/server/game/World/World.cpp
#	src/server/game/World/World.h
#	src/server/scripts/Commands/cs_server.cpp
2022-05-02 16:39:21 -06:00
ZhengPeiRu21
92841a35e1 Merge branch 'azerothcore:master' into Playerbot 2022-04-26 08:42:57 -06:00
ZhengPeiRu21
84b794ab38 Merge branch 'azerothcore:master' into Playerbot 2022-04-25 08:58:13 -06:00
ZhengPeiRu21
8b0ef0b5a0 Merge branch 'azerothcore:master' into Playerbot 2022-04-22 09:13:49 -06:00
ZhengPeiRu21
0efe2a01fe Merge branch 'azerothcore:master' into Playerbot 2022-04-20 09:18:17 -06:00
ZhengPeiRu21
f5f3d78ed6 Merge branch 'azerothcore:master' into Playerbot 2022-04-19 09:07:56 -06:00
ZhengPeiRu21
534df7c448 Merge branch 'azerothcore:master' into Playerbot 2022-04-17 17:59:20 -06:00
ZhengPeiRu21
ec96415fda Merge branch 'azerothcore:master' into Playerbot 2022-04-16 21:41:45 -06:00
ZhengPeiRu21
19b2c35180 Merge branch 'azerothcore:master' into Playerbot 2022-04-14 09:06:05 -06:00
ZhengPeiRu21
a1985ddbeb Merge branch 'azerothcore:master' into Playerbot 2022-04-11 08:40:56 -06:00
ZhengPeiRu21
2cb590a48b Merge branch 'azerothcore:master' into Playerbot 2022-04-07 08:55:50 -06:00
ZhengPeiRu21
68d3ec7d77 Merge branch 'azerothcore:master' into Playerbot 2022-04-04 07:53:51 -06:00
ZhengPeiRu21
a25c289a5a Merge branch 'azerothcore:master' into Playerbot 2022-04-01 08:30:15 -06:00
ZhengPeiRu21
32dc06900c Merge branch 'azerothcore:master' into Playerbot 2022-03-30 09:53:52 -06:00
ZhengPeiRu21
1c11bde14f Merge branch 'azerothcore:master' into Playerbot 2022-03-28 17:33:20 -06:00
ZhengPeiRu21
f5f6478688 Merge branch 'azerothcore:master' into Playerbot 2022-03-27 11:23:15 -06:00
ZhengPeiRu21
7d7e66cbe4 Merge branch 'azerothcore:master' into Playerbot 2022-03-25 10:48:58 -06:00
ZhengPeiRu21
fb52816a11 Merge branch 'azerothcore:master' into Playerbot 2022-03-24 12:58:22 -06:00
ZhengPeiRu21
246e2cad2e Merge branch 'azerothcore:master' into Playerbot 2022-03-24 08:28:09 -06:00
郑佩茹
36ed431c7f Merge branch 'master' of https://github.com/ZhengPeiRu21/azerothcore-wotlk into Playerbot 2022-03-23 08:47:32 -06:00
郑佩茹
5cec9facf8 Add missing ifdef for PLAYERBOTS 2022-03-23 08:46:03 -06:00
郑佩茹
d4062269c8 Merge branch 'master' into Playerbot 2022-03-22 10:53:26 -06:00
郑佩茹
db71f4739c Fix corrupt item cache crashes, bot whispers, trade crashes 2022-03-22 10:51:50 -06:00
郑佩茹
ff0e5d5e3b Merge branch 'questXPHook' into Playerbot 2022-03-21 14:47:43 -06:00
郑佩茹
60f11b3671 Merge branch 'master' into Playerbot
# Conflicts:
#	apps/ci/ci-install-modules.sh
#	src/common/Collision/Management/MMapMgr.cpp
#	src/common/Debugging/Errors.h
#	src/server/game/AI/SmartScripts/SmartScript.cpp
#	src/server/game/Battlegrounds/Arena.cpp
#	src/server/game/Battlegrounds/ArenaScore.h
#	src/server/game/Battlegrounds/Battleground.cpp
#	src/server/game/Battlegrounds/BattlegroundMgr.cpp
#	src/server/game/Battlegrounds/BattlegroundMgr.h
#	src/server/game/Battlegrounds/BattlegroundQueue.cpp
#	src/server/game/Battlegrounds/BattlegroundQueue.h
#	src/server/game/Battlegrounds/Zones/BattlegroundAB.h
#	src/server/game/Battlegrounds/Zones/BattlegroundEY.h
#	src/server/game/Battlegrounds/Zones/BattlegroundIC.h
#	src/server/game/Conditions/ConditionMgr.cpp
#	src/server/game/DataStores/M2Stores.cpp
#	src/server/game/DungeonFinding/LFGMgr.cpp
#	src/server/game/Entities/Creature/Creature.cpp
#	src/server/game/Entities/Creature/CreatureData.h
#	src/server/game/Entities/GameObject/GameObject.cpp
#	src/server/game/Entities/GameObject/GameObject.h
#	src/server/game/Entities/Player/Player.cpp
#	src/server/game/Entities/Player/Player.h
#	src/server/game/Entities/Player/PlayerStorage.cpp
#	src/server/game/Entities/Unit/Unit.cpp
#	src/server/game/Entities/Unit/Unit.h
#	src/server/game/Globals/ObjectMgr.cpp
#	src/server/game/Groups/Group.cpp
#	src/server/game/Groups/Group.h
#	src/server/game/Guilds/Guild.cpp
#	src/server/game/Guilds/Guild.h
#	src/server/game/Handlers/BattleGroundHandler.cpp
#	src/server/game/Handlers/CharacterHandler.cpp
#	src/server/game/Scripting/ScriptDefines/BGScript.cpp
#	src/server/game/Scripting/ScriptDefines/DatabaseScript.cpp
#	src/server/game/Scripting/ScriptDefines/PlayerScript.cpp
#	src/server/game/Scripting/ScriptDefines/ServerScript.cpp
#	src/server/game/Scripting/ScriptMgr.cpp
#	src/server/game/Scripting/ScriptMgrMacros.h
#	src/server/game/Server/Packets/MiscPackets.cpp
#	src/server/game/Server/Packets/MiscPackets.h
#	src/server/game/Server/WorldSession.cpp
#	src/server/game/Spells/SpellEffects.cpp
#	src/server/game/World/IWorld.h
#	src/server/game/World/World.cpp
#	src/server/game/World/World.h
#	src/server/scripts/Commands/cs_npc.cpp
#	src/server/scripts/Commands/cs_server.cpp
#	src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_nefarian.cpp
#	src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/instance_blackwing_lair.cpp
#	src/server/scripts/EasternKingdoms/BlackrockMountain/MoltenCore/boss_ragnaros.cpp
#	src/server/scripts/EasternKingdoms/ShadowfangKeep/boss_apothecary_hummel.cpp
#	src/server/scripts/EasternKingdoms/ShadowfangKeep/instance_shadowfang_keep.cpp
#	src/server/scripts/EasternKingdoms/ShadowfangKeep/shadowfang_keep.h
#	src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/culling_of_stratholme.cpp
2022-03-21 13:57:37 -06:00
郑佩茹
e42a572c35 Merge branch 'master' into questXPHook 2022-03-16 15:22:22 -06:00
郑佩茹
921bfbde86 Merge branch 'master' into questXPHook 2022-03-13 16:37:06 -06:00
郑佩茹
b88c5d8b89 Added changelog 2022-03-12 20:13:55 -07:00
UltraNix
12d41d1314 Big update. 2022-03-12 22:28:00 +01:00
郑佩茹
c2a6eff91d Merge branch 'master' into questXPHook 2022-03-10 12:08:00 -07:00
郑佩茹
7b3b37b1b3 Merge branch 'master' into questXPHook 2022-03-08 10:23:32 -07:00
郑佩茹
d60bb4fc90 feat(Scripting/Hooks): Implement OnQuestComputeXP() hook 2022-03-07 19:17:29 -07:00
UltraNix
6006eeeb01 asd 2021-12-07 15:57:39 +01:00
UltraNix
2cab3258bb 1st commit 2021-12-06 11:16:04 +01:00
170 changed files with 2486 additions and 2185 deletions

View File

@@ -31,7 +31,7 @@ body:
description: | description: |
Do you have any logs or screenshots that can be useful? Do you have any logs or screenshots that can be useful?
Crash logs in text are preffered over screenshots. Crash logs in text are preffered over screenshots.
If you have logs in text form please upload them to [Gist](https://gist.github.com/) or PasteBin and upload the link. DO NOT POST THE FULL CRASH LOG IN THE ISSUE BODY. DO NOT UPLOAD TEXT FILES. USE [GITHUB GIST](https://gist.github.com/), PASTEBIN, OR ANY SIMILAR SERVICE INSTEAD.
validations: validations:
required: false required: false
- type: input - type: input

View File

@@ -10,7 +10,14 @@ on:
- synchronize - synchronize
concurrency: concurrency:
group: ${{ github.head_ref }} || concat(${{ github.ref_name }}, ${{ github.workflow }}) # One concurrency group per workflow + ref.
#
# - PRs use `refs/pull/<PR_NUMBER>/merge`, so new commits cancel older
# in-progress runs for the same PR.
# - When a PR is merged, a push to the target branch starts a new group,
# canceling any still-running PR CI.
# - Branch pushes are isolated by ref.
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true cancel-in-progress: true
permissions: permissions:

View File

@@ -10,7 +10,14 @@ on:
- synchronize - synchronize
concurrency: concurrency:
group: ${{ github.head_ref }} || concat(${{ github.ref_name }}, ${{ github.workflow }}) # One concurrency group per workflow + ref.
#
# - PRs use `refs/pull/<PR_NUMBER>/merge`, so new commits cancel older
# in-progress runs for the same PR.
# - When a PR is merged, a push to the target branch starts a new group,
# canceling any still-running PR CI.
# - Branch pushes are isolated by ref.
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true cancel-in-progress: true
permissions: permissions:

View File

@@ -24,7 +24,14 @@ permissions:
contents: read contents: read
concurrency: concurrency:
group: ${{ github.head_ref }} || concat(${{ github.ref_name }}, ${{ github.workflow }}) # One concurrency group per workflow + ref.
#
# - PRs use `refs/pull/<PR_NUMBER>/merge`, so new commits cancel older
# in-progress runs for the same PR.
# - When a PR is merged, a push to the target branch starts a new group,
# canceling any still-running PR CI.
# - Branch pushes are isolated by ref.
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true cancel-in-progress: true
jobs: jobs:

View File

@@ -16,7 +16,14 @@ on:
workflow_dispatch: workflow_dispatch:
concurrency: concurrency:
group: ${{ github.head_ref }} || concat(${{ github.ref_name }}, ${{ github.workflow }}) # One concurrency group per workflow + ref.
#
# - PRs use `refs/pull/<PR_NUMBER>/merge`, so new commits cancel older
# in-progress runs for the same PR.
# - When a PR is merged, a push to the target branch starts a new group,
# canceling any still-running PR CI.
# - Branch pushes are isolated by ref.
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true cancel-in-progress: true
permissions: permissions:

View File

@@ -9,7 +9,14 @@ on:
- synchronize - synchronize
concurrency: concurrency:
group: ${{ github.head_ref }} || concat(${{ github.ref_name }}, ${{ github.workflow }}) # One concurrency group per workflow + ref.
#
# - PRs use `refs/pull/<PR_NUMBER>/merge`, so new commits cancel older
# in-progress runs for the same PR.
# - When a PR is merged, a push to the target branch starts a new group,
# canceling any still-running PR CI.
# - Branch pushes are isolated by ref.
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true cancel-in-progress: true
env: env:

View File

@@ -9,7 +9,14 @@ on:
- synchronize - synchronize
concurrency: concurrency:
group: ${{ github.head_ref }} || concat(${{ github.ref_name }}, ${{ github.workflow }}) # One concurrency group per workflow + ref.
#
# - PRs use `refs/pull/<PR_NUMBER>/merge`, so new commits cancel older
# in-progress runs for the same PR.
# - When a PR is merged, a push to the target branch starts a new group,
# canceling any still-running PR CI.
# - Branch pushes are isolated by ref.
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true cancel-in-progress: true
jobs: jobs:

View File

@@ -6,7 +6,14 @@ on:
branches: [ "Playerbot" ] branches: [ "Playerbot" ]
concurrency: concurrency:
group: ${{ github.head_ref }} || concat(${{ github.ref_name }}, ${{ github.workflow }}) # One concurrency group per workflow + ref.
#
# - PRs use `refs/pull/<PR_NUMBER>/merge`, so new commits cancel older
# in-progress runs for the same PR.
# - When a PR is merged, a push to the target branch starts a new group,
# canceling any still-running PR CI.
# - Branch pushes are isolated by ref.
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true cancel-in-progress: true
jobs: jobs:

View File

@@ -1,10 +1,5 @@
# List of AUTHORS who contributed over time to the AzerothCore project # List of AUTHORS who contributed over time to the AzerothCore project
## Warning
The code of AzerothCore is shipped as it is without any form of warranty,
and - except for third party libraries licensed under the AGPL 3,
which you can read from the file "LICENSE".
## Point of current development ## Point of current development
The project is currently hosted at https://www.azerothcore.org/ and developed under https://github.com/azerothcore The project is currently hosted at https://www.azerothcore.org/ and developed under https://github.com/azerothcore

View File

@@ -258,4 +258,4 @@ COPY --chown=$DOCKER_USER:$DOCKER_USER --from=build \
/azerothcore/env/dist/bin/vmap4_assembler /azerothcore/env/dist/bin/vmap4_assembler /azerothcore/env/dist/bin/vmap4_assembler /azerothcore/env/dist/bin/vmap4_assembler
COPY --chown=$DOCKER_USER:$DOCKER_USER --from=build \ COPY --chown=$DOCKER_USER:$DOCKER_USER --from=build \
/azerothcore/env/dist/bin/vmap4_extractor /azerothcore/env/dist/bin/vmap4_extractor /azerothcore/env/dist/bin/vmap4_extractor /azerothcore/env/dist/bin/vmap4_extractor

View File

@@ -31,8 +31,16 @@ $SUDO apt-get install -y gdbserver gdb unzip curl \
VAR_PATH="$CURRENT_PATH/../../../../var" VAR_PATH="$CURRENT_PATH/../../../../var"
# run noninteractive install for MYSQL 8.4 LTS # run noninteractive install for MYSQL
wget https://dev.mysql.com/get/mysql-apt-config_0.8.35-1_all.deb -P "$VAR_PATH" # Version
DEBIAN_FRONTEND="noninteractive" $SUDO dpkg -i "$VAR_PATH/mysql-apt-config_0.8.35-1_all.deb" MYSQL_APT_CONFIG_VERSION=0.8.36-1
$SUDO apt-get update # # # # #
DEBIAN_FRONTEND="noninteractive" $SUDO apt-get install -y mysql-server libmysqlclient-dev mkdir -p "$VAR_PATH/mysqlpackages" && cd "$VAR_PATH/mysqlpackages"
# Download
wget "https://dev.mysql.com/get/mysql-apt-config_${MYSQL_APT_CONFIG_VERSION}_all.deb"
# Install
sudo DEBIAN_FRONTEND="noninteractive" dpkg -i ./mysql-apt-config_${MYSQL_APT_CONFIG_VERSION}_all.deb
sudo apt update
sudo DEBIAN_FRONTEND="noninteractive" apt install -y mysql-server libmysqlclient-dev
# Cleanup
rm -v mysql-apt-config_${MYSQL_APT_CONFIG_VERSION}_all* && unset MYSQL_APT_CONFIG_VERSION

View File

@@ -1,5 +1,5 @@
# #
# Copyright (C) 2016+ AzerothCore <www.azerothcore.org>, released under GNU AGPL v3 license: https://github.com/azerothcore/azerothcore-wotlk/blob/master/LICENSE # Copyright (C) 2016+ AzerothCore <www.azerothcore.org>
# Copyright (C) 2021+ WarheadCore <https://github.com/WarheadCore> # Copyright (C) 2021+ WarheadCore <https://github.com/WarheadCore>
# #
# This file is free software; as a special exception the author gives # This file is free software; as a special exception the author gives

View File

@@ -0,0 +1,5 @@
-- DB update 2025_11_09_05 -> 2025_11_10_00
--
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 24539) AND (`source_type` = 0) AND (`id` IN (5));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(24539, 0, 5, 0, 2, 1, 100, 513, 0, 50, 0, 0, 0, 0, 80, 2453900, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, '"Silvermoon" Harry - Between 0-50% Health - Run Script (Phase 1) (No Repeat)');

View File

@@ -0,0 +1,4 @@
-- DB update 2025_11_10_00 -> 2025_11_10_01
--
UPDATE `quest_template` SET `RewardFactionValue1` = 5 WHERE (`ID` = 11472);
UPDATE `quest_template` SET `RewardFactionValue1` = 5, `RewardFactionOverride1` = 0 WHERE (`ID` = 11945);

View File

@@ -0,0 +1,4 @@
-- DB update 2025_11_10_01 -> 2025_11_10_02
--
DELETE FROM `game_event_gameobject` WHERE `eventEntry`=1 AND `guid`=5;
INSERT INTO `game_event_gameobject` (`eventEntry`, `guid`) VALUES(1, 5);

View File

@@ -0,0 +1,15 @@
-- DB update 2025_11_10_02 -> 2025_11_10_03
--
-- Increase grid searches to 60 from 40
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 2572900) AND (`source_type` = 9) AND (`id` IN (2, 5));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(2572900, 9, 2, 0, 0, 0, 100, 0, 8000, 8000, 0, 0, 0, 0, 1, 7, 0, 0, 0, 0, 0, 19, 25749, 60, 0, 0, 0, 0, 0, 0, 'Shadowstalker Getry - Actionlist - Say Line 7'),
(2572900, 9, 5, 0, 0, 0, 100, 0, 3000, 3000, 0, 0, 0, 0, 41, 0, 0, 0, 0, 0, 0, 19, 25749, 60, 0, 0, 0, 0, 0, 0, 'Shadowstalker Getry - Actionlist - Despawn Instant');
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 25618) AND (`source_type` = 0) AND (`id` IN (3, 4));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(25618, 0, 3, 4, 6, 0, 100, 512, 0, 0, 0, 0, 0, 0, 15, 11705, 0, 0, 0, 0, 0, 18, 60, 0, 0, 0, 0, 0, 0, 0, 'Varidus the Flenser - On Just Died - Quest Credit \'Foolish Endeavors\''),
(25618, 0, 4, 0, 61, 0, 100, 512, 0, 0, 0, 0, 0, 0, 45, 1, 1, 0, 0, 0, 0, 19, 25729, 60, 0, 0, 0, 0, 0, 0, 'Varidus the Flenser - On Just Died - Set Data 1 1');
-- Increase despawn time from 3 to 4 minutes
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 2561800) AND (`source_type` = 9) AND (`id` IN (25));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(2561800, 9, 25, 0, 0, 0, 100, 0, 240000, 240000, 0, 0, 0, 0, 41, 0, 0, 0, 0, 0, 0, 19, 25729, 100, 0, 0, 0, 0, 0, 0, 'Varidus the Flenser - Actionlist - Despawn Instant');

View File

@@ -0,0 +1,4 @@
-- DB update 2025_11_10_03 -> 2025_11_11_00
--
DELETE FROM `areatrigger_scripts` WHERE `entry`=5338;
INSERT INTO `areatrigger_scripts` (`entry`, `ScriptName`) VALUES(5338, 'at_last_rites');

View File

@@ -0,0 +1,10 @@
-- DB update 2025_11_11_00 -> 2025_11_11_01
--
-- Update comments, remove action On Init AI set combat distance to 100
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 32767) AND (`source_type` = 0) AND (`id` IN (0, 1, 2, 3, 4, 5));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(32767, 0, 0, 0, 1, 0, 100, 0, 5000, 10000, 3000, 6000, 0, 0, 49, 0, 0, 0, 0, 0, 0, 19, 31406, 80, 0, 0, 0, 0, 0, 0, 'Frostbrood Sentry - Out of Combat - Start Attacking'),
(32767, 0, 1, 0, 1, 0, 100, 0, 5000, 10000, 3000, 6000, 0, 0, 49, 0, 0, 0, 0, 0, 0, 19, 32512, 80, 0, 0, 0, 0, 0, 0, 'Frostbrood Sentry - Out of Combat - Start Attacking'),
(32767, 0, 2, 0, 1, 0, 100, 0, 5000, 10000, 3000, 6000, 0, 0, 49, 0, 0, 0, 0, 0, 0, 19, 31838, 80, 0, 0, 0, 0, 0, 0, 'Frostbrood Sentry - Out of Combat - Start Attacking'),
(32767, 0, 3, 0, 1, 0, 100, 0, 5000, 10000, 3000, 6000, 0, 0, 49, 0, 0, 0, 0, 0, 0, 19, 32513, 80, 0, 0, 0, 0, 0, 0, 'Frostbrood Sentry - Out of Combat - Start Attacking'),
(32767, 0, 4, 0, 9, 0, 100, 0, 0, 0, 2000, 3000, 0, 40, 11, 60542, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 'Frostbrood Sentry - Within 0-40 Range - Cast \'Bitter Blast\'');

View File

@@ -0,0 +1,45 @@
-- DB update 2025_11_11_01 -> 2025_11_11_02
-- Update gameobject 'Wild Mustard' with sniffed values
-- updated spawns
DELETE FROM `gameobject` WHERE (`id` IN (192827)) AND (`guid` IN (100121, 100244, 100245, 100246, 100247, 100248, 100249, 100411, 100412, 57471, 57472, 57473, 57475, 57476, 57477, 57478, 57479, 57480, 57481, 57482, 57483));
INSERT INTO `gameobject` (`guid`, `id`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `position_x`, `position_y`, `position_z`, `orientation`, `rotation0`, `rotation1`, `rotation2`, `rotation3`, `spawntimesecs`, `animprogress`, `state`, `ScriptName`, `VerifiedBuild`, `Comment`) VALUES
(100121, 192827, 571, 0, 0, 1, 1, 5985.08349609375, 664.72296142578125, 642.370849609375, 4.799657344818115234, 0, 0, -0.67558956146240234, 0.737277925014495849, 120, 255, 1, "", 45942, NULL),
(100244, 192827, 571, 0, 0, 1, 1, 5934.06103515625, 660.3663330078125, 642.92462158203125, 5.6897735595703125, 0, 0, -0.29237174987792968, 0.956304728984832763, 120, 255, 1, "", 46158, NULL),
(100245, 192827, 571, 0, 0, 1, 1, 5846.48681640625, 490.76507568359375, 657.25555419921875, 5.515241622924804687, 0, 0, -0.37460613250732421, 0.927184045314788818, 120, 255, 1, "", 46158, NULL),
(100246, 192827, 571, 0, 0, 1, 1, 5831.59619140625, 763.8204345703125, 640.30194091796875, 1.762782454490661621, 0, 0, 0.771624565124511718, 0.636078238487243652, 120, 255, 1, "", 46248, NULL),
(100247, 192827, 571, 0, 0, 1, 1, 5767.6494140625, 770.37530517578125, 640.4595947265625, 4.537858963012695312, 0, 0, -0.76604366302490234, 0.642788589000701904, 120, 255, 1, "", 46248, NULL),
(100248, 192827, 571, 0, 0, 1, 1, 5675.63232421875, 737.062744140625, 641.646484375, 6.265733242034912109, 0, 0, -0.00872611999511718, 0.999961912631988525, 120, 255, 1, "", 46158, NULL),
(100249, 192827, 571, 0, 0, 1, 1, 5666.18994140625, 708.8232421875, 641.72613525390625, 4.136432647705078125, 0, 0, -0.87881660461425781, 0.477159708738327026, 120, 255, 1, "", 46248, NULL),
(100411, 192827, 571, 0, 0, 1, 1, 5781.63525390625, 755.59454345703125, 640.60955810546875, 2.478367090225219726, 0, 0, 0.94551849365234375, 0.325568377971649169, 120, 255, 1, "", 45327, NULL),
(100412, 192827, 571, 0, 0, 1, 1, 5852.45068359375, 453.083984375, 657.54180908203125, 4.956737518310546875, 0, 0, -0.61566066741943359, 0.788011372089385986, 120, 255, 1, "", 46158, NULL),
(57471, 192827, 571, 0, 0, 1, 1, 5647.09130859375, 735.65777587890625, 641.70587158203125, 0.349065244197845458, 0, 0, 0.173647880554199218, 0.984807789325714111, 120, 255, 1, "", 46368, NULL),
(57472, 192827, 571, 0, 0, 1, 1, 5638.42333984375, 752.54632568359375, 641.62371826171875, 4.188792228698730468, 0, 0, -0.86602497100830078, 0.50000077486038208, 120, 255, 1, "", 46158, NULL),
(57473, 192827, 571, 0, 0, 1, 1, 5752.2802734375, 780.19390869140625, 640.46044921875, 4.852017402648925781, 0, 0, -0.65605831146240234, 0.754710197448730468, 120, 255, 1, "", 46248, NULL),
(57475, 192827, 571, 0, 0, 1, 1, 5989.67138671875, 648.40582275390625, 642.70916748046875, 5.235987663269042968, 0, 0, -0.5, 0.866025388240814208, 120, 255, 1, "", 46158, NULL),
(57476, 192827, 571, 0, 0, 1, 1, 5756.24072265625, 758.174072265625, 642.0474853515625, 1.884953022003173828, 0, 0, 0.809016227722167968, 0.587786316871643066, 120, 255, 1, "", 46248, NULL),
(57477, 192827, 571, 0, 0, 1, 1, 5865.57666015625, 774.6185302734375, 640.53057861328125, 3.194002151489257812, 0, 0, -0.99965667724609375, 0.026201646775007247, 120, 255, 1, "", 45327, NULL),
(57478, 192827, 571, 0, 0, 1, 1, 5824.08251953125, 493.727813720703125, 656.93402099609375, 4.729844093322753906, 0, 0, -0.70090866088867187, 0.713251054286956787, 120, 255, 1, "", 46158, NULL),
(57479, 192827, 571, 0, 0, 1, 1, 5797.42138671875, 480.68121337890625, 657.57318115234375, 0.453785061836242675, 0, 0, 0.224950790405273437, 0.974370121955871582, 120, 255, 1, "", 46158, NULL),
(57480, 192827, 571, 0, 0, 1, 1, 5826.56494140625, 738.85418701171875, 640.9478759765625, 4.363324165344238281, 0, 0, -0.81915187835693359, 0.573576688766479492, 120, 255, 1, "", 46158, NULL),
(57481, 192827, 571, 0, 0, 1, 1, 5950.203125, 696.5841064453125, 641.10589599609375, 5.166176319122314453, 0, 0, -0.52991867065429687, 0.84804844856262207, 120, 255, 1, "", 45327, NULL),
(57482, 192827, 571, 0, 0, 1, 1, 5810.0791015625, 620.439208984375, 647.71026611328125, 0.034906249493360519, 0, 0, 0.017452239990234375, 0.999847710132598876, 120, 255, 1, "", 45327, NULL),
(57483, 192827, 571, 0, 0, 1, 1, 5804.63623046875, 661.78125, 647.7073974609375, 4.014260292053222656, 0, 0, -0.90630722045898437, 0.422619491815567016, 120, 255, 1, "", 45327, NULL);
-- new spawns
DELETE FROM `gameobject` WHERE (`id` IN (192827)) AND (`guid` BETWEEN 1747 AND 1761);
INSERT INTO `gameobject` (`guid`, `id`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `position_x`, `position_y`, `position_z`, `orientation`, `rotation0`, `rotation1`, `rotation2`, `rotation3`, `spawntimesecs`, `animprogress`, `state`, `ScriptName`, `VerifiedBuild`, `Comment`) VALUES
(1747, 192827, 571, 0, 0, 1, 1, 5629.560546875, 725.41082763671875, 641.70721435546875, 2.356194972991943359, 0, 0, 0.923879623413085937, 0.382683247327804565, 120, 255, 1, "", 46158, NULL),
(1748, 192827, 571, 0, 0, 1, 1, 5657.634765625, 742.97552490234375, 641.5999755859375, 4.9218292236328125, 0, 0, -0.62932014465332031, 0.77714616060256958, 120, 255, 1, "", 46158, NULL),
(1749, 192827, 571, 0, 0, 1, 1, 5731.98681640625, 780.482666015625, 641.66925048828125, 3.926995515823364257, 0, 0, -0.92387866973876953, 0.38268551230430603, 120, 255, 1, "", 46158, NULL),
(1750, 192827, 571, 0, 0, 1, 1, 5742.24658203125, 770.8905029296875, 641.83380126953125, 5.567600727081298828, 0, 0, -0.35020732879638671, 0.936672210693359375, 120, 255, 1, "", 46158, NULL),
(1751, 192827, 571, 0, 0, 1, 1, 5778.017578125, 463.560821533203125, 657.8570556640625, 4.677483558654785156, 0, 0, -0.71933937072753906, 0.694658815860748291, 120, 255, 1, "", 46158, NULL),
(1752, 192827, 571, 0, 0, 1, 1, 5784.9462890625, 631.62530517578125, 647.66748046875, 5.131268978118896484, 0, 0, -0.54463863372802734, 0.838670849800109863, 120, 255, 1, "", 46158, NULL),
(1753, 192827, 571, 0, 0, 1, 1, 5787.90966796875, 646.6329345703125, 647.23504638671875, 4.59021615982055664, 0, 0, -0.74895572662353515, 0.662620067596435546, 120, 255, 1, "", 46158, NULL),
(1754, 192827, 571, 0, 0, 1, 1, 5803.4375, 745.01226806640625, 640.465087890625, 6.248279094696044921, 0, 0, -0.01745223999023437, 0.999847710132598876, 120, 255, 1, "", 45327, NULL),
(1755, 192827, 571, 0, 0, 1, 1, 5822.33203125, 652.23858642578125, 647.3056640625, 4.537858963012695312, 0, 0, -0.76604366302490234, 0.642788589000701904, 120, 255, 1, "", 45327, NULL),
(1756, 192827, 571, 0, 0, 1, 1, 5823.8359375, 637.7987060546875, 647.76348876953125, 3.001946926116943359, 0, 0, 0.997563362121582031, 0.069766148924827575, 120, 255, 1, "", 45327, NULL),
(1757, 192827, 571, 0, 0, 1, 1, 5842.37451171875, 750.66656494140625, 640.692626953125, 1.727874636650085449, 0, 0, 0.760405540466308593, 0.649448513984680175, 120, 255, 1, "", 46158, NULL),
(1758, 192827, 571, 0, 0, 1, 1, 5845.6962890625, 463.094573974609375, 657.62591552734375, 1.623155713081359863, 0, 0, 0.725374221801757812, 0.688354730606079101, 120, 255, 1, "", 46158, NULL),
(1759, 192827, 571, 0, 0, 1, 1, 5847.68603515625, 772.54559326171875, 640.36090087890625, 1.256635904312133789, 0, 0, 0.587784767150878906, 0.809017360210418701, 120, 255, 1, "", 46158, NULL),
(1760, 192827, 571, 0, 0, 1, 1, 5934.53369140625, 682.52099609375, 642.21148681640625, 3.682650327682495117, 0, 0, -0.96362972259521484, 0.26724100112915039, 120, 255, 1, "", 45327, NULL),
(1761, 192827, 571, 0, 0, 1, 1, 5972.26416015625, 648.7425537109375, 642.43182373046875, 1.919861555099487304, 0, 0, 0.819151878356933593, 0.573576688766479492, 120, 255, 1, "", 46158, NULL);

View File

@@ -0,0 +1,21 @@
-- DB update 2025_11_11_02 -> 2025_11_11_03
--
SET @ARGENT_CRUSADE := 1106;
SET @KIRIN_TOR := 1090;
SET @KNIGHTS_OF_THE_EBON_BLADE := 1098;
SET @WYRMREST_ACCORD := 1091;
SET @ALLIANCE_VANGUARD := 1037;
SET @HORDE_EXPEDITION := 1052;
SET @SONS_OF_HODIR := 1119;
UPDATE `quest_template` SET `RewardFactionOverride1`=2200000 WHERE `ID` IN (12915, 12956);
UPDATE `quest_template` SET `RewardFactionOverride1`=0 WHERE `ID` IN (12924, 12975, 12976, 12977, 12981, 12985, 12987, 12994, 13001, 13003, 13010, 13011, 13046, 13108, 13420, 13421, 13559);
UPDATE `quest_template` SET `RewardFactionID1` = 0, `RewardFactionValue1` = 0, `RewardFactionOverride1` = 0 WHERE `ID` IN (12966, 12967);
UPDATE `reputation_reward_rate` SET `quest_rate`=1.3,`quest_daily_rate`=1.3,`quest_weekly_rate`=1.3,`quest_monthly_rate`=1.3,`quest_repeatable_rate`=1.3 WHERE `faction` IN (@ARGENT_CRUSADE, @KNIGHTS_OF_THE_EBON_BLADE, @KIRIN_TOR, @WYRMREST_ACCORD);
DELETE FROM `reputation_reward_rate` WHERE `faction` IN (@SONS_OF_HODIR, @ALLIANCE_VANGUARD, @HORDE_EXPEDITION);
INSERT INTO `reputation_reward_rate` (`faction`, `quest_rate`, `quest_daily_rate`, `quest_weekly_rate`, `quest_monthly_rate`, `quest_repeatable_rate`, `creature_rate`, `spell_rate`) VALUES
(@SONS_OF_HODIR, 1.3, 1.3, 1.3, 1.3, 1.3, 1.3, 1.3),
(@ALLIANCE_VANGUARD, 1.0, 1.0, 1.0, 1.0, 1.0, 1.3, 1.3),
(@HORDE_EXPEDITION, 1.0, 1.0, 1.0, 1.0, 1.0, 1.3, 1.3);

View File

@@ -0,0 +1,4 @@
-- DB update 2025_11_11_03 -> 2025_11_12_00
--
-- remove `DISABLE_MOVE`
UPDATE `creature_template` SET `unit_flags` = `unit_flags` & ~4 WHERE (`entry` = 28998);

View File

@@ -0,0 +1,10 @@
-- DB update 2025_11_12_00 -> 2025_11_12_01
--
-- Unliving Chocker
UPDATE `conditions` SET `ConditionTypeOrReference` = 8, `NegativeCondition` = 1, `Comment` = 'must not have completed quest \'Cleansing Drak\'Tharon\'' WHERE (`SourceTypeOrReferenceId` = 1) AND (`SourceGroup` = 28519) AND (`SourceEntry` = 38660) AND (`SourceId` = 0) AND (`ElseGroup` = 0) AND (`ConditionTypeOrReference` = 14) AND (`ConditionTarget` = 0) AND (`ConditionValue1` = 12238) AND (`ConditionValue2` = 0) AND (`ConditionValue3` = 0);
-- Writhing Choker
DELETE FROM `conditions` WHERE (`SourceTypeOrReferenceId` = 1) AND (`SourceGroup` = 28519) AND (`SourceEntry` = 38673) AND (`SourceId` = 0) AND (`ElseGroup` = 0);
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
(1, 28519, 38673, 0, 0, 8, 0, 12238, 0, 0, 0, 0, 0, '', 'must have completed quest \'Cleansing Drak\'Tharon\''),
(1, 28519, 38673, 0, 0, 2, 0, 38660, 1, 1, 1, 0, 0, '', 'must not have item \'Unliving Chocker\''),
(1, 28519, 38673, 0, 0, 8, 0, 12631, 0, 0, 1, 0, 0, '', 'must not have completed quest \'An Invitation, of Sorts...\'');

View File

@@ -0,0 +1,64 @@
-- DB update 2025_11_12_01 -> 2025_11_12_02
--
SET @PLANE := 28710;
SET @PILOT := 28646;
UPDATE `creature_template` SET `AIName`='SmartAI',`ScriptName`='', `speed_walk`=10, `speed_run`=1 WHERE `entry`=@PLANE;
DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 28710);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(28710, 0, 1, 0, 60, 0, 100, 513, 1000, 1000, 0, 0, 0, 0, 53, 1, 28710, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Vic\'s Flying Machine - On Update - Start Waypoint Path 28710 (No Repeat)'),
(28710, 0, 2, 0, 40, 0, 100, 512, 5, 28710, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 19, 28646, 0, 0, 0, 0, 0, 0, 0, 'Vic\'s Flying Machine - On Point 5 of Path 28710 Reached - Say Line 0'),
(28710, 0, 3, 0, 40, 0, 100, 512, 11, 28710, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 19, 28646, 0, 0, 0, 0, 0, 0, 0, 'Vic\'s Flying Machine - On Point 11 of Path 28710 Reached - Say Line 1'),
(28710, 0, 4, 0, 40, 0, 100, 512, 12, 28710, 0, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0, 19, 28646, 0, 0, 0, 0, 0, 0, 0, 'Vic\'s Flying Machine - On Point 12 of Path 28710 Reached - Say Line 2'),
(28710, 0, 5, 0, 40, 0, 100, 512, 14, 28710, 0, 0, 0, 0, 1, 3, 0, 0, 0, 0, 0, 19, 28646, 0, 0, 0, 0, 0, 0, 0, 'Vic\'s Flying Machine - On Point 14 of Path 28710 Reached - Say Line 3'),
(28710, 0, 6, 0, 40, 0, 100, 512, 15, 28710, 0, 0, 0, 0, 1, 4, 0, 0, 0, 0, 0, 19, 28646, 0, 0, 0, 0, 0, 0, 0, 'Vic\'s Flying Machine - On Point 15 of Path 28710 Reached - Say Line 4'),
(28710, 0, 7, 0, 40, 0, 100, 512, 17, 28710, 0, 0, 0, 0, 1, 5, 0, 0, 0, 0, 0, 19, 28646, 0, 0, 0, 0, 0, 0, 0, 'Vic\'s Flying Machine - On Point 17 of Path 28710 Reached - Say Line 5'),
(28710, 0, 8, 0, 40, 0, 100, 512, 21, 28710, 0, 0, 0, 0, 1, 6, 0, 0, 0, 0, 0, 19, 28646, 0, 0, 0, 0, 0, 0, 0, 'Vic\'s Flying Machine - On Point 21 of Path 28710 Reached - Say Line 6'),
(28710, 0, 9, 10, 40, 0, 100, 512, 25, 28710, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Vic\'s Flying Machine - On Point 25 of Path 28710 Reached - Say Line 0'),
(28710, 0, 10, 0, 61, 0, 100, 512, 0, 0, 0, 0, 0, 0, 11, 52255, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Vic\'s Flying Machine - On Point 25 of Path 28710 Reached - Cast \'Engine on Fire\''),
(28710, 0, 11, 0, 28, 0, 100, 512, 0, 0, 0, 0, 0, 0, 134, 44795, 2, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'Vic\'s Flying Machine - On Passenger Removed - Invoker Cast \'Parachute\''),
(28710, 0, 12, 13, 8, 0, 100, 512, 52226, 0, 0, 0, 0, 0, 22, 2, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 0, 'Vic\'s Flying Machine - On Spellhit \'Land Flying Machine\' - Set Event Phase 2'),
(28710, 0, 13, 0, 61, 0, 100, 512, 0, 0, 0, 0, 0, 0, 11, 50630, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Vic\'s Flying Machine - On Spellhit \'Land Flying Machine\' - Cast \'Eject All Passengers\''),
(28710, 0, 14, 0, 40, 0, 100, 512, 26, 28710, 0, 0, 0, 0, 59, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Vic\'s Flying Machine - On Point 26 of Path 28710 Reached - Set Run On'),
(28710, 0, 15, 0, 28, 2, 100, 512, 0, 0, 0, 0, 0, 0, 134, 53328, 2, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'Vic\'s Flying Machine - On Passenger Removed - Invoker Cast \'Land Flying Machine Credit\' (Phase 2)'),
(28710, 0, 16, 0, 11, 0, 100, 512, 0, 0, 0, 0, 0, 0, 22, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Vic\'s Flying Machine - On Respawn - Set Event Phase 1'),
(28710, 0, 17, 0, 28, 1, 100, 512, 0, 0, 0, 0, 0, 0, 6, 12671, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'Vic\'s Flying Machine - On Passenger Removed - Fail Quest \'Reconnaissance Flight\' (Phase 1)');
DELETE FROM `waypoint_data` WHERE `id`=@PLANE;
DELETE FROM `waypoints` WHERE `entry`=@PLANE;
INSERT INTO `waypoints` (`entry`,`pointid`,`position_x`,`position_y`,`position_z`,`point_comment`) VALUES
(@PLANE,1,5494.87,4747.031,-187.8783, 'Vic''s Flying Machine'),
(@PLANE,2,5485.906,4740.681,-184.5172, 'Vic''s Flying Machine'),
(@PLANE,3,5472.882,4732.441,-172.1562, 'Vic''s Flying Machine'),
(@PLANE,4,5460.913,4712.542,-157.8784, 'Vic''s Flying Machine'),
(@PLANE,5,5452.147,4673.518,-137.8906, 'Vic''s Flying Machine'),
(@PLANE,6,5449.777,4630.711,-126.6684, 'Vic''s Flying Machine'),
(@PLANE,7,5507.432,4506.089,-126.6684, 'Vic''s Flying Machine'),
(@PLANE,8,5586.811,4465.319,-126.6684, 'Vic''s Flying Machine'),
(@PLANE,9,5676.111,4437.874,-126.6684, 'Vic''s Flying Machine'),
(@PLANE,10,5756.449,4391.051,-91.25155, 'Vic''s Flying Machine'),
(@PLANE,11,5817.163,4269.269,-91.25155, 'Vic''s Flying Machine'),
(@PLANE,12,5856.145,4202.824,-68.29334, 'Vic''s Flying Machine'),
(@PLANE,13,5921.523,4105.534,-68.29334, 'Vic''s Flying Machine'),
(@PLANE,14,5995.021,4029.883,-13.97897, 'Vic''s Flying Machine'),
(@PLANE,15,6118.298,3883.733,94.11866, 'Vic''s Flying Machine'),
(@PLANE,16,6132.932,3750.75,176.5123, 'Vic''s Flying Machine'),
(@PLANE,17,6165.863,3748.196,198.9567, 'Vic''s Flying Machine'),
(@PLANE,18,6208.277,3782.189,196.8455, 'Vic''s Flying Machine'),
(@PLANE,19,6227.615,3836.871,191.6234, 'Vic''s Flying Machine'),
(@PLANE,20,6218.483,3885.17,191.6234, 'Vic''s Flying Machine'),
(@PLANE,21,6197.045,3890.053,191.6234, 'Vic''s Flying Machine'),
(@PLANE,22,6168.752,3864.161,191.6234, 'Vic''s Flying Machine'),
(@PLANE,23,6204.037,3807.239,191.6234, 'Vic''s Flying Machine'),
(@PLANE,24,6232.975,3820.852,191.6234, 'Vic''s Flying Machine'),
(@PLANE,25,6219.879,3854.341,166.6234, 'Vic''s Flying Machine'),
(@PLANE,26,6210.428,3855.185,154.4848, 'Vic''s Flying Machine');
UPDATE `creature_template_movement` SET `Swim`=1,`Ground`=1,`Flight`=2 WHERE `CreatureId`=@PLANE;
DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId` =14 AND `SourceGroup`=9750;
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
(14, 9750, 13376, 0, 0, 8, 0, 12671, 0, 0, 0, 0, 0, '', 'Pilot Vic Show different gossip if player has rewarded quest 12671 '),
(14, 9750, 13375, 0, 0, 8, 0, 12671, 0, 0, 1, 0, 0, '', 'Pilot Vic Show different gossip if player is not rewarded quest 12671');
DELETE FROM `vehicle_template_accessory` WHERE `entry` IN (@PLANE);
INSERT INTO `vehicle_template_accessory` (`entry`,`accessory_entry`, `seat_id`, `minion`, `description`) VALUES
(@PLANE, @PILOT, 0, 1, 'Vics Flying Machine');

View File

@@ -0,0 +1,3 @@
-- DB update 2025_11_12_02 -> 2025_11_12_03
--
UPDATE `quest_offer_reward` SET `RewardText` = 'Aw yes, these will do nicely.$b$bJust plop them down anywhere. You can have some of my leftover stew from last night.' WHERE (`ID` = 11564);

View File

@@ -0,0 +1,36 @@
-- DB update 2025_11_12_03 -> 2025_11_12_04
--
DELETE FROM `conditions` WHERE (`SourceTypeOrReferenceId` = 22) AND (`SourceGroup` = 1) AND (`SourceEntry` = 5440) AND (`SourceId` = 2) AND (`ElseGroup` = 0) AND (`ConditionTypeOrReference` = 1) AND (`ConditionTarget` = 0) AND (`ConditionValue1` = 47219) AND (`ConditionValue2` = 0) AND (`ConditionValue3` = 0);
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
(22, 1, 5440, 2, 0, 1, 0, 47219, 0, 0, 0, 0, 0, '', 'Areatrigger 5440 require Cleared for Teleport (47219) ');
UPDATE `creature_template` SET `AIName` = 'SmartAI' WHERE `entry` = 26619;
DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 26619);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(26619, 0, 0, 1, 62, 0, 100, 0, 9415, 0, 0, 0, 0, 0, 11, 47219, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'Fizzcrank Paratrooper - On Gossip Option 0 Selected - Cast \'Cleared for Teleport\''),
(26619, 0, 1, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'Fizzcrank Paratrooper - On Gossip Option 0 Selected - Close Gossip'),
(26619, 0, 2, 0, 64, 0, 100, 0, 0, 0, 0, 0, 0, 0, 98, 9429, 12687, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'Fizzcrank Paratrooper - On Gossip Hello - Send Gossip'),
(26619, 0, 3, 4, 62, 0, 100, 0, 9429, 1, 0, 0, 0, 0, 11, 47326, 2, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'Fizzcrank Paratrooper - On Gossip Option 1 Selected - Cast \'Create Item - Fizzcrank Practice Parachute\''),
(26619, 0, 4, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'Fizzcrank Paratrooper - On Gossip Option 1 Selected - Close Gossip');
DELETE FROM `areatrigger_scripts` WHERE `entry` = 5440;
INSERT INTO `areatrigger_scripts` (`entry`, `ScriptName`) VALUES (5440, 'SmartTrigger');
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 5440) AND (`source_type` = 2) AND (`id` IN (0));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(5440, 2, 0, 0, 46, 0, 100, 0, 5440, 0, 0, 0, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 4240.04, 5259.05, 72.3396, 2.274780035018921, 'Areatrigger - On Trigger - Teleport');
DELETE FROM `gossip_menu` WHERE `MenuID` = 9429;
INSERT INTO `gossip_menu` (`MenuID`, `TextID`) VALUES
(9429, 12687);
DELETE FROM `gossip_menu_option` WHERE (`OptionID`=1 AND `MenuID`=9429);
INSERT INTO `gossip_menu_option` (`MenuID`, `OptionID`, `OptionIcon`, `OptionText`, `OptionBroadcastTextID`, `OptionType`, `OptionNpcFlag`, `ActionMenuID`, `ActionPoiID`, `BoxCoded`, `BoxMoney`, `BoxText`, `BoxBroadcastTextID`, `VerifiedBuild`) VALUES
(9429, 1, 0, 'I\'ll show you! Give me that practice parachute!', 25923, 1, 1, 0, 0, 0, 0, NULL, 0, 64270);
DELETE FROM `conditions` WHERE (`SourceTypeOrReferenceId` = 22) AND (`SourceGroup` = 3) AND (`SourceEntry` = 26619) AND (`SourceId` = 0) AND (`ElseGroup` = 0) AND (`ConditionTypeOrReference` = 30) AND (`ConditionTarget` = 0) AND (`ConditionValue1` = 188420) AND (`ConditionValue2` = 20) AND (`ConditionValue3` = 0);
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
(22, 3, 26619, 0, 0, 30, 0, 188420, 20, 0, 0, 0, 0, '', 'Requires Fizzcrank Parachute spell focus');
UPDATE `gameobject` SET `position_x` = 4227.6616, `position_y` = 5270.674, `position_z` = 71.928215 WHERE `guid` = 99767 AND `id` = 188420;

View File

@@ -0,0 +1,5 @@
-- DB update 2025_11_12_04 -> 2025_11_12_05
--
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 27292) AND (`source_type` = 0) AND (`id` IN (0, 1));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(27292, 0, 1, 2, 62, 0, 100, 512, 0, 0, 0, 0, 0, 0, 11, 48606, 3, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'Flamebringer - On Gossip Option 0 Selected - Cast \'Flamebringer Summon Cue\'');

View File

@@ -0,0 +1,11 @@
-- DB update 2025_11_12_05 -> 2025_11_12_06
-- Update AI
UPDATE `creature_template` SET `AIName` = 'SmartAI' WHERE `entry` = 27254;
DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 27254);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(27254, 0, 0, 0, 25, 0, 100, 0, 0, 0, 0, 0, 0, 0, 90, 9, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Emerald Lasher - On Reset - Set Flag Standstate Submerged'),
(27254, 0, 1, 2, 4, 0, 100, 0, 0, 0, 0, 0, 0, 0, 91, 9, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Emerald Lasher - On Aggro - Remove FlagStandstate Submerged'),
(27254, 0, 2, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 11, 37752, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Emerald Lasher - On Aggro - Cast \'Stand\''),
(27254, 0, 3, 0, 0, 0, 100, 0, 4000, 7000, 9000, 13000, 0, 0, 11, 51901, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 'Emerald Lasher - In Combat - Cast \'Dream Lash\'');

View File

@@ -0,0 +1,8 @@
-- DB update 2025_11_12_06 -> 2025_11_13_00
-- Update SmartAI
UPDATE `creature_template` SET `AIName` = 'SmartAI' WHERE `entry` = 27358;
DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 27358);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(27358, 0, 0, 0, 0, 0, 100, 0, 0, 0, 7000, 10000, 0, 0, 11, 51431, 64, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 'Burning Depths Necromancer - In Combat - Cast \'Power Release\'');

View File

@@ -0,0 +1,5 @@
-- DB update 2025_11_13_00 -> 2025_11_13_01
-- Delete SmartAI
UPDATE `creature_template` SET `AIName` = '' WHERE `entry` = 30066;
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 30066) AND (`source_type` = 0);

View File

@@ -0,0 +1,5 @@
-- DB update 2025_11_13_01 -> 2025_11_13_02
--
DELETE FROM `creature_template_movement` WHERE `CreatureId` = 27821;
INSERT INTO `creature_template_movement` (`CreatureId`, `Ground`, `Flight`) VALUES
(27821, 1, 1);

View File

@@ -0,0 +1,5 @@
-- DB update 2025_11_13_02 -> 2025_11_13_03
--
DELETE FROM `spell_custom_attr` WHERE `spell_id` = 53094;
INSERT INTO `spell_custom_attr` (`spell_id`, `attributes`) VALUES
(53094, 0x00400000);

View File

@@ -0,0 +1,53 @@
-- DB update 2025_11_13_03 -> 2025_11_13_04
-- Set Sniffed Unit_flag (Vrykul Harpoon Gun)
UPDATE `creature_template` SET `unit_flags` = `unit_flags` &~ 4 WHERE (`entry` = 27992);
UPDATE `creature_template` SET `unit_flags` = `unit_flags` |33554432 WHERE (`entry` = 27992);
-- Set Sniffed Movement Flags (Vrykul Harpoon Gun & Dragonflayer Defender)
DELETE FROM `creature_template_movement` WHERE (`CreatureId` IN (24533, 27992));
INSERT INTO `creature_template_movement` (`CreatureId`, `Ground`, `Swim`, `Flight`, `Rooted`, `Chase`, `Random`, `InteractionPauseTimer`) VALUES
(24533, 0, 0, 1, 0, 0, 0, 0),
(27992, 0, 0, 0, 1, 0, 0, 0);
-- Update SmartAI (Vrykul Harpoon Gun)
UPDATE `creature_template` SET `AIName` = 'SmartAI' WHERE `entry` = 27992;
DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 27992);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(27992, 0, 0, 0, 27, 0, 100, 0, 0, 0, 0, 0, 0, 0, 19, 33554432, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Vrykul Harpoon Gun - On Passenger Boarded - Remove Flags Not Selectable'),
(27992, 0, 1, 0, 28, 0, 100, 0, 0, 0, 0, 0, 0, 0, 18, 33554432, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Vrykul Harpoon Gun - On Passenger Removed - Set Flags Not Selectable'),
(27992, 0, 2, 3, 38, 0, 100, 512, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Vrykul Harpoon Gun - On Data Set 1 1 - Say Line 0'),
(27992, 0, 3, 0, 61, 0, 100, 512, 0, 0, 0, 0, 0, 0, 80, 2799200, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Vrykul Harpoon Gun - On Data Set 1 1 - Run Script'),
(27992, 0, 4, 5, 38, 0, 100, 512, 1, 2, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Vrykul Harpoon Gun - On Data Set 1 2 - Say Line 1'),
(27992, 0, 5, 0, 61, 0, 100, 512, 0, 0, 0, 0, 0, 0, 80, 2799201, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Vrykul Harpoon Gun - On Data Set 1 2 - Run Script'),
(27992, 0, 6, 7, 38, 0, 100, 512, 1, 3, 0, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Vrykul Harpoon Gun - On Data Set 1 3 - Say Line 2'),
(27992, 0, 7, 0, 61, 0, 100, 512, 0, 0, 0, 0, 0, 0, 80, 2799202, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Vrykul Harpoon Gun - On Data Set 1 3 - Run Script'),
(27992, 0, 8, 0, 31, 0, 100, 512, 43997, 0, 0, 0, 0, 0, 11, 43998, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Vrykul Harpoon Gun - On Target Spellhit \'Fiery Lance\' - Cast \'Fiery Lance\'');
-- Update Action Lists (sniffed Spawn Points)
DELETE FROM `smart_scripts` WHERE (`source_type` = 9) AND (`entryorguid` IN (2799200, 2799201, 2799202));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(2799200, 9, 0, 0, 0, 0, 100, 512, 3000, 3000, 0, 0, 0, 0, 12, 24533, 4, 60000, 0, 1, 0, 8, 0, 0, 0, 0, 1055.92, -5139.29, 177.646, 4.2569, 'Vrykul Harpoon Gun - Actionlist - Summon Creature \'Dragonflayer Defender\''),
(2799200, 9, 1, 0, 0, 0, 100, 512, 0, 0, 0, 0, 0, 0, 12, 24533, 4, 60000, 0, 1, 0, 8, 0, 0, 0, 0, 1011.96, -5124.65, 185.217, 4.2505, 'Vrykul Harpoon Gun - Actionlist - Summon Creature \'Dragonflayer Defender\''),
(2799200, 9, 2, 0, 0, 0, 100, 512, 0, 0, 0, 0, 0, 0, 12, 24533, 4, 60000, 0, 1, 0, 8, 0, 0, 0, 0, 1073.53, -5130.63, 209.704, 4.0369, 'Vrykul Harpoon Gun - Actionlist - Summon Creature \'Dragonflayer Defender\''),
(2799200, 9, 3, 0, 0, 0, 100, 512, 0, 0, 0, 0, 0, 0, 12, 24533, 4, 60000, 0, 1, 0, 8, 0, 0, 0, 0, 1127.55, -5177.06, 212.394, 4.1176, 'Vrykul Harpoon Gun - Actionlist - Summon Creature \'Dragonflayer Defender\''),
(2799201, 9, 0, 0, 0, 0, 100, 512, 3000, 3000, 0, 0, 0, 0, 12, 24533, 4, 60000, 0, 1, 0, 8, 0, 0, 0, 0, 1091.66, -5150.43, 121.44, 4.0841, 'Vrykul Harpoon Gun - Actionlist - Summon Creature \'Dragonflayer Defender\''),
(2799201, 9, 1, 0, 0, 0, 100, 512, 0, 0, 0, 0, 0, 0, 12, 24533, 4, 60000, 0, 1, 0, 8, 0, 0, 0, 0, 1024.17, -5117.84, 141.756, 4.1904, 'Vrykul Harpoon Gun - Actionlist - Summon Creature \'Dragonflayer Defender\''),
(2799201, 9, 2, 0, 0, 0, 100, 512, 0, 0, 0, 0, 0, 0, 12, 24533, 4, 60000, 0, 1, 0, 8, 0, 0, 0, 0, 964.811, -5123.2, 111.064, 3.997, 'Vrykul Harpoon Gun - Actionlist - Summon Creature \'Dragonflayer Defender\''),
(2799202, 9, 0, 0, 0, 0, 100, 512, 3000, 3000, 0, 0, 0, 0, 12, 24533, 4, 60000, 0, 1, 0, 8, 0, 0, 0, 0, 1132.96, -5170, 261.992, 3.9751, 'Vrykul Harpoon Gun - Actionlist - Summon Creature \'Dragonflayer Defender\''),
(2799202, 9, 1, 0, 0, 0, 100, 512, 0, 0, 0, 0, 0, 0, 12, 24533, 4, 60000, 0, 1, 0, 8, 0, 0, 0, 0, 1115.01, -5161.58, 207.852, 4.3169, 'Vrykul Harpoon Gun - Actionlist - Summon Creature \'Dragonflayer Defender\''),
(2799202, 9, 2, 0, 0, 0, 100, 512, 0, 0, 0, 0, 0, 0, 12, 24533, 4, 60000, 0, 1, 0, 8, 0, 0, 0, 0, 1168.37, -5220.4, 243.869, 3.7683, 'Vrykul Harpoon Gun - Actionlist - Summon Creature \'Dragonflayer Defender\'');
-- Set SmartAI (Dragonflayer Defender)
UPDATE `creature_template` SET `AIName` = 'SmartAI' WHERE `entry` = 24533;
DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 24533);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(24533, 0, 0, 0, 0, 0, 100, 0, 500, 1000, 2000, 2000, 0, 0, 11, 44188, 64, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 'Dragonflayer Defender - In Combat - Cast \'Harpoon Toss\''),
(24533, 0, 1, 0, 8, 0, 100, 0, 43997, 0, 0, 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Dragonflayer Defender - On Spellhit \'Fiery Lance\' - Kill Self'),
(24533, 0, 2, 3, 54, 0, 100, 0, 0, 0, 0, 0, 0, 0, 117, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Dragonflayer Defender - On Just Summoned - Disable Evade'),
(24533, 0, 3, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 69, 25, 0, 1, 0, 1, 0, 23, 0, 0, 0, 0, 0, 0, 0, 0, 'Dragonflayer Defender - On Just Summoned - Move To Owner Or Summoner'),
(24533, 0, 4, 5, 34, 0, 100, 0, 0, 25, 0, 0, 0, 0, 101, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Dragonflayer Defender - On Reached Point 25 - Set Home Position'),
(24533, 0, 5, 6, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 117, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Dragonflayer Defender - On Reached Point 25 - Enable Evade'),
(24533, 0, 6, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 49, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 0, 'Dragonflayer Defender - On Reached Point 25 - Start Attacking');

View File

@@ -0,0 +1,4 @@
-- DB update 2025_11_13_04 -> 2025_11_13_05
-- Makes sure the Shaman player gets the required ritual toch item and that requires the quest to drop
UPDATE `item_loot_template` SET `Chance` = 0, `QuestRequired` = 1, `GroupId` = 1 WHERE `Entry` = 24336 AND `Item` = 23682;
UPDATE `item_loot_template` SET `Chance` = 0, `GroupId` = 2 WHERE `Entry` = 24336 AND `Item` = 24335;

View File

@@ -0,0 +1,9 @@
-- DB update 2025_11_13_05 -> 2025_11_14_00
--
DELETE FROM `spell_script_names` WHERE `spell_id` = 50380;
INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES
(50380, 'spell_bloodspore_haze');
DELETE FROM `spell_custom_attr` WHERE `spell_id` = 50380;
INSERT INTO `spell_custom_attr` (`spell_id`, `attributes`) VALUES
(50380, 0x00400000);

View File

@@ -0,0 +1,6 @@
-- DB update 2025_11_14_00 -> 2025_11_14_01
--
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 29445) AND (`source_type` = 0) AND (`id` IN (0, 1));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(29445, 0, 0, 0, 62, 0, 100, 0, 9926, 0, 0, 0, 0, 0, 134, 56940, 2, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'Thorim - On Gossip Option 0 Selected - Invoker Cast \'Thorim Story Kill Credit\''),
(29445, 0, 1, 0, 19, 0, 100, 0, 12924, 0, 0, 0, 0, 0, 134, 56518, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'Thorim - On Quest \'Forging an Alliance\' Taken - Invoker Cast \'Clearquests\'');

View File

@@ -0,0 +1,5 @@
-- DB update 2025_11_14_01 -> 2025_11_14_02
--
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 2943400) AND (`source_type` = 9) AND (`id` IN (2));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(2943400, 9, 2, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 26, 12832, 0, 0, 0, 0, 0, 12, 1, 0, 0, 0, 0, 0, 0, 0, 'Injured Goblin Miner - On Script - Quest Credit \'Bitter Departure\' (Stored Target)');

View File

@@ -0,0 +1,5 @@
-- DB update 2025_11_14_02 -> 2025_11_14_03
--
DELETE FROM `conditions` WHERE (`SourceTypeOrReferenceId` = 17) AND (`SourceGroup` = 0) AND (`SourceEntry` = 55046) AND (`SourceId` = 0) AND (`ElseGroup` = 0) AND (`ConditionTypeOrReference` = 1) AND (`ConditionTarget` = 1) AND (`ConditionValue1` = 54894) AND (`ConditionValue2` = 0) AND (`ConditionValue3` = 0);
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
(17, 0, 55046, 0, 0, 1, 1, 54894, 0, 0, 0, 0, 0, '', 'Ice Shard require Icy Imprisionment');

View File

@@ -0,0 +1,5 @@
-- DB update 2025_11_14_03 -> 2025_11_15_00
--
DELETE FROM `creature_loot_template` WHERE (`Entry` = 31231) AND (`Item` IN (42108));
INSERT INTO `creature_loot_template` (`Entry`, `Item`, `Reference`, `Chance`, `QuestRequired`, `LootMode`, `GroupId`, `MinCount`, `MaxCount`, `Comment`) VALUES
(31231, 42108, 0, 33, 1, 1, 0, 1, 1, 'Lost Shandaral Spirit - Scourge Curio');

View File

@@ -0,0 +1,3 @@
-- DB update 2025_11_15_00 -> 2025_11_15_01
-- fix spell focus location for quest 'Will of the Titans'
UPDATE `gameobject` SET `position_x` = 5110.11, `position_y` = 5471.22, `position_z` = -91.84 WHERE `id` = 190781 AND `guid` = 99745;

View File

@@ -0,0 +1,6 @@
-- DB update 2025_11_15_01 -> 2025_11_15_02
--
DELETE FROM `creature_template_spell` WHERE (`CreatureID` = 35415);
INSERT INTO `creature_template_spell` (`CreatureID`, `Index`, `Spell`, `VerifiedBuild`) VALUES
(35415, 0, 68068, 0),
(35415, 1, 67442, 0);

View File

@@ -0,0 +1,3 @@
-- DB update 2025_11_15_02 -> 2025_11_15_03
--
UPDATE `creature_template` SET `npcflag` = `npcflag` |65536 WHERE `entry` = 29944;

View File

@@ -0,0 +1,3 @@
-- DB update 2025_11_15_03 -> 2025_11_15_04
--
UPDATE `creature_template` SET `unit_flags` = `unit_flags` &~ 256 WHERE `entry` = 24787;

View File

@@ -0,0 +1,6 @@
-- DB update 2025_11_15_04 -> 2025_11_15_05
--
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 26841) AND (`source_type` = 0) AND (`id` IN (0, 1));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(26841, 0, 0, 0, 0, 0, 100, 0, 0, 0, 5000, 7000, 0, 0, 11, 47425, 64, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 'Reanimated Frost Wyrm - In Combat - Cast \'Frost Breath\''),
(26841, 0, 1, 0, 8, 0, 100, 0, 49587, 0, 0, 0, 0, 0, 49, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'Reanimated Frost Wyrm - On Spellhit \'Seeds of Nature`s Wrath\' - Start Attacking');

View File

@@ -0,0 +1,9 @@
-- DB update 2025_11_15_05 -> 2025_11_15_06
--
DELETE FROM `conditions` WHERE (`SourceTypeOrReferenceId` = 13) AND (`SourceEntry` = 49765);
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
(13, 7, 49765, 0, 0, 31, 0, 3, 27713, 0, 0, 0, 0, '', 'Fordragon Resolve target 7th Legion Elite'),
(13, 7, 49765, 0, 1, 31, 0, 3, 26780, 0, 0, 0, 0, '', 'Fordragon Resolve target 7th Legion Cleric'),
(13, 7, 49765, 0, 2, 31, 0, 3, 27587, 0, 0, 0, 0, '', 'Fordragon Resolve target Legion Commander Yorik'),
(13, 7, 49765, 0, 3, 31, 0, 3, 27858, 0, 0, 0, 0, '', 'Fordragon Resolve target Highlord Bolvar Fordragon'),
(13, 7, 49765, 0, 4, 32, 0, 16, 0, 0, 0, 0, 0, '', 'Fordragon Resolve target players');

View File

@@ -0,0 +1,5 @@
-- DB update 2025_11_15_06 -> 2025_11_15_07
--
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 2583500) AND (`source_type` = 9) AND (`id` IN (19));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(2583500, 9, 19, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 41, 5000, 6, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Nesingwary Trapper - Actionlist - Despawn In 5000 ms');

View File

@@ -0,0 +1,69 @@
-- DB update 2025_11_15_07 -> 2025_11_15_08
-- Set Creature Template Addon (Amberpine Woodsman)
DELETE FROM `creature_template_addon` WHERE (`entry` = 27293);
INSERT INTO `creature_template_addon` (`entry`, `path_id`, `mount`, `bytes1`, `bytes2`, `emote`, `visibilityDistanceType`, `auras`) VALUES
(27293, 0, 0, 0, 1, 0, 0, '');
-- Update Spawn Points (Amberpine Woodsman)
UPDATE `creature` SET `position_x` = 3499.0676, `position_y` = -2838.0798, `position_z` = 202.27922, `orientation` = 2.89724, `Comment` = 'Has Guid SAI' WHERE (`id1` = 27293) AND (`guid` = 110578);
UPDATE `creature` SET `position_x` = 3497.1128, `position_y` = -2836.0088, `position_z` = 202.26859, `orientation` = 4.55530 WHERE (`id1` = 27293) AND (`guid` = 110579);
UPDATE `creature` SET `position_x` = 3474.6736, `position_y` = -2776.7188, `position_z` = 201.02751, `orientation` = 2.56563, `Comment` = 'Has Guid SAI' WHERE (`id1` = 27293) AND (`guid` = 110580);
UPDATE `creature` SET `position_x` = 3475.1519, `position_y` = -2774.3525, `position_z` = 200.75826, `orientation` = 3.59537 WHERE (`id1` = 27293) AND (`guid` = 110581);
UPDATE `creature` SET `position_x` = 3374.5999, `position_y` = -2805.997, `position_z` = 199.0484, `orientation` = 1.34390, `Comment` = 'Has Guid SAI' WHERE (`id1` = 27293) AND (`guid` = 110582);
UPDATE `creature` SET `position_x` = 3375.972, `position_y` = -2803.756, `position_z` = 199.01216, `orientation` = 3.99680 WHERE (`id1` = 27293) AND (`guid` = 110583);
UPDATE `creature` SET `position_x` = 3460.5964, `position_y` = -2902.6494, `position_z` = 201.07785, `orientation` = 5.89921, `Comment` = 'Has Guid SAI' WHERE (`id1` = 27293) AND (`guid` = 110602);
UPDATE `creature` SET `position_x` = 3460.07, `position_y` = -2904.9836, `position_z` = 201.10063, `orientation` = 0.52359 WHERE (`id1` = 27293) AND (`guid` = 110603);
UPDATE `creature` SET `position_x` = 3390.5305, `position_y` = -2862.014, `position_z` = 199.62068, `orientation` = 3.24631 WHERE (`id1` = 27293) AND (`guid` = 110604);
UPDATE `creature` SET `position_x` = 3390.0286, `position_y` = -2864.7012, `position_z` = 200.0756, `orientation` = 2.56563, `Comment` = 'Has Guid SAI' WHERE (`id1` = 27293) AND (`guid` = 110605);
-- Set Creature Addon (Amberpine Woodsman)
DELETE FROM `creature_addon` WHERE (`guid` IN (110578, 110579, 110580, 110581, 110582, 110583, 110602, 110603, 110604, 110605));
INSERT INTO `creature_addon` (`guid`, `path_id`, `mount`, `bytes1`, `bytes2`, `emote`, `visibilityDistanceType`, `auras`) VALUES
(110578, 0, 0, 8, 0, 0, 0, NULL),
(110579, 0, 0, 0, 0, 133, 0, NULL),
(110580, 0, 0, 8, 0, 0, 0, NULL),
(110581, 0, 0, 0, 0, 133, 0, NULL),
(110582, 0, 0, 8, 0, 0, 0, NULL),
(110583, 0, 0, 0, 0, 133, 0, NULL),
(110602, 0, 0, 8, 0, 0, 0, NULL),
(110603, 0, 0, 0, 0, 133, 0, NULL),
(110604, 0, 0, 0, 0, 133, 0, NULL),
(110605, 0, 0, 8, 0, 0, 0, NULL);
-- Remove Script Name and set SmartAI (Amberpine Woodsman)
UPDATE `creature_template` SET `AIName` = 'SmartAI', `ScriptName` = '' WHERE (`entry` = 27293);
-- Set Guid SmartAI
DELETE FROM `smart_scripts` WHERE (`source_type` = 0) AND (`entryorguid` IN (-110578, -110580, -110582, -110602, -110605));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(-110578, 0, 0, 0, 1, 0, 100, 0, 1000, 3000, 500, 3000, 0, 0, 5, 36, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Amberpine Woodsman - Out of Combat - Play Emote 36'),
(-110580, 0, 0, 0, 1, 0, 100, 0, 1000, 3000, 500, 3000, 0, 0, 5, 36, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Amberpine Woodsman - Out of Combat - Play Emote 36'),
(-110582, 0, 0, 0, 1, 0, 100, 0, 1000, 3000, 500, 3000, 0, 0, 5, 36, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Amberpine Woodsman - Out of Combat - Play Emote 36'),
(-110602, 0, 0, 0, 1, 0, 100, 0, 1000, 3000, 500, 3000, 0, 0, 5, 36, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Amberpine Woodsman - Out of Combat - Play Emote 36'),
(-110605, 0, 0, 0, 1, 0, 100, 0, 1000, 3000, 500, 3000, 0, 0, 5, 36, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Amberpine Woodsman - Out of Combat - Play Emote 36');
-- Remove Script Name and set SmartAI (Tallhorn Stag)
UPDATE `creature_template` SET `AIName` = 'SmartAI', `ScriptName` = '' WHERE (`entry` = 26363);
-- Set Comments (Tallhorn Stag)
UPDATE `creature` SET `Comment` = 'Has Personal SAI' WHERE (`id1` = 26363) AND (`guid` IN (119621, 119622, 119642, 119643, 119656));
-- Set Guid Sai (Tallhorn Stag)
DELETE FROM `smart_scripts` WHERE (`source_type` = 0) AND (`entryorguid` IN (-119621, -119622, -119642, -119643, -119656));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(-119621, 0, 0, 1, 11, 0, 100, 0, 0, 0, 0, 0, 0, 0, 18, 537166592, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Tallhorn Stag - On Respawn - Set Flags Immune To Players & Immune To NPC\'s & Stunned & Prevent Emotes From Chat Text'),
(-119621, 0, 1, 2, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 18, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Tallhorn Stag - On Respawn - Set Flags Feign Death'),
(-119621, 0, 2, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 11, 29266, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Tallhorn Stag - On Respawn - Cast \'Permanent Feign Death\''),
(-119622, 0, 0, 1, 11, 0, 100, 0, 0, 0, 0, 0, 0, 0, 18, 537166592, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Tallhorn Stag - On Respawn - Set Flags Immune To Players & Immune To NPC\'s & Stunned & Prevent Emotes From Chat Text'),
(-119622, 0, 1, 2, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 18, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Tallhorn Stag - On Respawn - Set Flags Feign Death'),
(-119622, 0, 2, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 11, 29266, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Tallhorn Stag - On Respawn - Cast \'Permanent Feign Death\''),
(-119642, 0, 0, 1, 11, 0, 100, 0, 0, 0, 0, 0, 0, 0, 18, 537166592, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Tallhorn Stag - On Respawn - Set Flags Immune To Players & Immune To NPC\'s & Stunned & Prevent Emotes From Chat Text'),
(-119642, 0, 1, 2, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 18, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Tallhorn Stag - On Respawn - Set Flags Feign Death'),
(-119642, 0, 2, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 11, 29266, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Tallhorn Stag - On Respawn - Cast \'Permanent Feign Death\''),
(-119643, 0, 0, 1, 11, 0, 100, 0, 0, 0, 0, 0, 0, 0, 18, 537166592, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Tallhorn Stag - On Respawn - Set Flags Immune To Players & Immune To NPC\'s & Stunned & Prevent Emotes From Chat Text'),
(-119643, 0, 1, 2, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 18, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Tallhorn Stag - On Respawn - Set Flags Feign Death'),
(-119643, 0, 2, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 11, 29266, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Tallhorn Stag - On Respawn - Cast \'Permanent Feign Death\''),
(-119656, 0, 0, 1, 11, 0, 100, 0, 0, 0, 0, 0, 0, 0, 18, 537166592, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Tallhorn Stag - On Respawn - Set Flags Immune To Players & Immune To NPC\'s & Stunned & Prevent Emotes From Chat Text'),
(-119656, 0, 1, 2, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 18, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Tallhorn Stag - On Respawn - Set Flags Feign Death'),
(-119656, 0, 2, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 11, 29266, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Tallhorn Stag - On Respawn - Cast \'Permanent Feign Death\'');

View File

@@ -0,0 +1,3 @@
-- DB update 2025_11_15_08 -> 2025_11_15_09
UPDATE `creature_template` SET `flags_extra` = `flags_extra` |128 WHERE (`entry` = 25739);

View File

@@ -0,0 +1,9 @@
-- DB update 2025_11_15_09 -> 2025_11_15_10
--
DELETE FROM `spell_linked_spell` WHERE `spell_trigger` = 54076;
INSERT INTO `spell_linked_spell` (`spell_trigger`, `spell_effect`, `type`, `comment`) VALUES
(54076, 49511, 0, 'Taxi validate - Gryphon to Star Rest');
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 26878) AND (`source_type` = 0) AND (`id` IN (3));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(26878, 0, 3, 0, 19, 0, 100, 0, 12440, 0, 0, 0, 0, 0, 11, 54076, 2, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'Rodney Wells - On Quest \'To Stars\' Rest!\' Taken - Cast \'Taxi to Stars` Rest Validate\'');

View File

@@ -0,0 +1,14 @@
-- DB update 2025_11_15_10 -> 2025_11_15_11
-- Add Immune To PC, Immune To Npc, Stunned, Prevent Emotes, Feign Death and remove All Dynamic Flags (Sniffed)
UPDATE `creature_template` SET `unit_flags` = `unit_flags` |256|512|262144|536870912, `unit_flags2` = `unit_flags2` |1, `dynamicflags` = 0 WHERE (`entry` = 26514);
-- Add Aura (Sniffed)
DELETE FROM `creature_template_addon` WHERE (`entry` = 26514);
INSERT INTO `creature_template_addon` (`entry`, `path_id`, `mount`, `bytes1`, `bytes2`, `emote`, `visibilityDistanceType`, `auras`) VALUES
(26514, 0, 0, 0, 0, 0, 0, '29266');
-- Add Disable Gravity and Rooted (Sniffed)
DELETE FROM `creature_template_movement` WHERE (`CreatureId` = 26514);
INSERT INTO `creature_template_movement` (`CreatureId`, `Ground`, `Swim`, `Flight`, `Rooted`, `Chase`, `Random`, `InteractionPauseTimer`) VALUES
(26514, 0, 0, 1, 1, 0, 0, 0);

View File

@@ -0,0 +1,3 @@
-- DB update 2025_11_15_11 -> 2025_11_15_12
--
UPDATE `creature_loot_template` SET `Chance` = 100 WHERE `item` = 43159 AND `entry` = 30746;

View File

@@ -0,0 +1,5 @@
-- DB update 2025_11_15_12 -> 2025_11_15_13
--
DELETE FROM `spell_proc_event` WHERE `entry`= 45278;
INSERT INTO `spell_proc_event` (`entry`, `procFlags`) VALUES
(45278, 0x00004400|0x00010000);

View File

@@ -0,0 +1,3 @@
-- DB update 2025_11_15_13 -> 2025_11_15_14
DELETE FROM `smart_scripts` WHERE `entryorguid` = 27598 AND `source_type` = 0;
UPDATE `creature_template` SET `AIName` = '' WHERE `entry` = 27598;

View File

@@ -0,0 +1,31 @@
-- DB update 2025_11_15_14 -> 2025_11_15_15
--
SET @MAXSTANDING := 7;
SET @REPSUMMONS := 1;
SET @REPREGULAR := 4;
SET @REPHULK := 10;
SET @REPBOSS := 50;
DELETE FROM `creature_onkill_reputation` WHERE `creature_id` IN (26553, 26554, 26550, 26555, 26668, 26669, 26670, 26672, 26685, 26683, 26684,
26686, 26687, 26692, 26690, 26691, 26693, 28368, 26696, 26694, 26861);
INSERT INTO `creature_onkill_reputation` (`creature_id`, `RewOnKillRepFaction1`, `RewOnKillRepFaction2`, `MaxStanding1`, `RewOnKillRepValue1`, `MaxStanding2`, `RewOnKillRepValue2`, `TeamDependent`) VALUES
(26550, 1037, 1052, @MAXSTANDING, @REPREGULAR, @MAXSTANDING, @REPREGULAR, 1), -- Dragonflayer Deathseeker
(26553, 1037, 1052, @MAXSTANDING, @REPREGULAR, @MAXSTANDING, @REPREGULAR, 1), -- Dragonflayer Fanatic
(26554, 1037, 1052, @MAXSTANDING, @REPREGULAR, @MAXSTANDING, @REPREGULAR, 1), -- Dragonflayer Seer
(26555, 1037, 1052, @MAXSTANDING, @REPHULK, @MAXSTANDING, @REPHULK, 1), -- Scourge Hulk
(26668, 1037, 1052, @MAXSTANDING, @REPBOSS, @MAXSTANDING, @REPBOSS, 1), -- Svala
(26669, 1037, 1052, @MAXSTANDING, @REPREGULAR, @MAXSTANDING, @REPREGULAR, 1), -- Ymirjar Savage
(26670, 1037, 1052, @MAXSTANDING, @REPREGULAR, @MAXSTANDING, @REPREGULAR, 1), -- Ymirjar Flesh Hunter
(26672, 1037, 1052, @MAXSTANDING, @REPREGULAR, @MAXSTANDING, @REPREGULAR, 1), -- Bloodthirsty Tundra Wolf
(26685, 1037, 1052, @MAXSTANDING, @REPREGULAR, @MAXSTANDING, @REPREGULAR, 1), -- Massive Jormungar
(26683, 1037, 1052, @MAXSTANDING, @REPREGULAR, @MAXSTANDING, @REPREGULAR, 1), -- Frenzied Worgen
(26684, 1037, 1052, @MAXSTANDING, @REPREGULAR, @MAXSTANDING, @REPREGULAR, 1), -- Ravenous Furbog
(26686, 1037, 1052, @MAXSTANDING, @REPREGULAR, @MAXSTANDING, @REPREGULAR, 1), -- Ferocious Rhino
(26687, 1037, 1052, @MAXSTANDING, @REPBOSS, @MAXSTANDING, @REPBOSS, 1), -- Gortok
(26692, 1037, 1052, @MAXSTANDING, @REPSUMMONS, @MAXSTANDING, @REPSUMMONS, 1), -- Ymirjar Harpooner (Skadi)
(26690, 1037, 1052, @MAXSTANDING, @REPSUMMONS, @MAXSTANDING, @REPSUMMONS, 1), -- Ymirjar Warrior (Skadi)
(26691, 1037, 1052, @MAXSTANDING, @REPSUMMONS, @MAXSTANDING, @REPSUMMONS, 1), -- Ymirjar Shaman (Skadi)
(26693, 1037, 1052, @MAXSTANDING, @REPBOSS, @MAXSTANDING, @REPBOSS, 1), -- Skadi
(28368, 1037, 1052, @MAXSTANDING, @REPREGULAR, @MAXSTANDING, @REPREGULAR, 1), -- Ymirjar Necromancer
(26696, 1037, 1052, @MAXSTANDING, @REPREGULAR, @MAXSTANDING, @REPREGULAR, 1), -- Ymirjar Berserker
(26694, 1037, 1052, @MAXSTANDING, @REPREGULAR, @MAXSTANDING, @REPREGULAR, 1), -- Ymirjar Dark Shaman
(26861, 1037, 1052, @MAXSTANDING, @REPBOSS, @MAXSTANDING, @REPBOSS, 1); -- Ymiron

View File

@@ -0,0 +1,10 @@
-- DB update 2025_11_15_15 -> 2025_11_16_00
--
SET @REPTRASH := 1;
SET @REPREGULAR := 5;
SET @REPHULK := 10;
SET @REPBOSS := 50;
UPDATE `creature_onkill_reputation` SET `RewOnKillRepValue1` = @REPTRASH, `RewOnKillRepValue2` = @REPTRASH WHERE `creature_id` IN (27636, 27638);
UPDATE `creature_onkill_reputation` SET `RewOnKillRepValue1` = @REPREGULAR, `RewOnKillRepValue2` = @REPREGULAR WHERE `creature_id` IN (26550, 26553, 26554, 26669, 26670, 26672, 26685, 26683, 26684, 26686, 28368, 26696, 26694); -- UP
UPDATE `creature_onkill_reputation` SET `RewOnKillRepValue1` = @REPREGULAR, `RewOnKillRepValue2` = @REPREGULAR WHERE `creature_id` IN (27635, 27633, 27641, 27639, 27640, 27653, 27651, 27650, 27648, 27647, 27649, 27645, 27644, 27642); -- Oculus
UPDATE `creature_onkill_reputation` SET `RewOnKillRepValue1` = @REPBOSS, `RewOnKillRepValue2` = @REPBOSS WHERE `creature_id` IN (27654, 27447, 27655, 27656);

View File

@@ -0,0 +1,3 @@
-- DB update 2025_11_16_00 -> 2025_11_16_01
--
UPDATE `quest_template_addon` SET `PrevQuestID` = 12611 WHERE (`ID` = 12805);

View File

@@ -0,0 +1,3 @@
-- DB update 2025_11_16_01 -> 2025_11_16_02
--
UPDATE `quest_template_addon` SET `PrevQuestID` = 0 WHERE (`ID` = 12827);

View File

@@ -0,0 +1,19 @@
-- DB update 2025_11_16_02 -> 2025_11_17_00
--
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 24825) AND (`source_type` = 0) AND (`id` IN (2, 3, 4, 5, 6, 7));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(24825, 0, 2, 0, 72, 0, 100, 512, 1, 0, 0, 0, 0, 0, 53, 2, 24826, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Iron Rune Construct - On Action 1 Done - Start Waypoint Path 24826'),
(24825, 0, 3, 0, 72, 0, 100, 512, 2, 0, 0, 0, 0, 0, 53, 2, 24827, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Iron Rune Construct - On Action 2 Done - Start Waypoint Path 24827'),
(24825, 0, 4, 0, 72, 0, 100, 512, 3, 0, 0, 0, 0, 0, 53, 2, 24828, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Iron Rune Construct - On Action 3 Done - Start Waypoint Path 24828'),
(24825, 0, 5, 0, 72, 0, 100, 512, 4, 0, 0, 0, 0, 0, 53, 2, 24831, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Iron Rune Construct - On Action 4 Done - Start Waypoint Path 24831'),
(24825, 0, 6, 0, 72, 0, 100, 512, 5, 0, 0, 0, 0, 0, 53, 2, 24829, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Iron Rune Construct - On Action 5 Done - Start Waypoint Path 24829'),
(24825, 0, 7, 0, 72, 0, 100, 512, 6, 0, 0, 0, 0, 0, 53, 2, 24832, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Iron Rune Construct - On Action 6 Done - Start Waypoint Path 24832');
DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` IN (24826, 24827, 24828, 24829, 24831, 24832));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(24826, 0, 0, 0, 8, 0, 100, 0, 44608, 0, 0, 0, 0, 0, 223, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'On Spellhit \'Rocket Jump\' - Do Action 1'),
(24827, 0, 0, 0, 8, 0, 100, 0, 44608, 0, 0, 0, 0, 0, 223, 2, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'On Spellhit \'Rocket Jump\' - Do Action 2'),
(24828, 0, 0, 0, 8, 0, 100, 0, 44608, 0, 0, 0, 0, 0, 223, 3, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'On Spellhit \'Rocket Jump\' - Do Action 3'),
(24831, 0, 0, 0, 8, 0, 100, 0, 44608, 0, 0, 0, 0, 0, 223, 4, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'On Spellhit \'Rocket Jump\' - Do Action 4'),
(24829, 0, 0, 0, 8, 0, 100, 0, 44608, 0, 0, 0, 0, 0, 223, 5, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'On Spellhit \'Rocket Jump\' - Do Action 5'),
(24832, 0, 0, 0, 8, 0, 100, 0, 44608, 0, 0, 0, 0, 0, 223, 6, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'On Spellhit \'Rocket Jump\' - Do Action 6');

View File

@@ -0,0 +1,5 @@
-- DB update 2025_11_17_00 -> 2025_11_17_01
--
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 27292) AND (`source_type` = 0) AND (`id` IN (1));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(27292, 0, 1, 2, 62, 0, 100, 512, 9512, 0, 0, 0, 0, 0, 11, 48606, 3, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'Flamebringer - On Gossip Option 0 Selected - Cast \'Flamebringer Summon Cue\'');

View File

@@ -0,0 +1,22 @@
-- DB update 2025_11_17_01 -> 2025_11_17_02
-- Set Spelldifficulty
DELETE FROM `spelldifficulty_dbc` WHERE (`ID` IN (52534, 52535));
INSERT INTO `spelldifficulty_dbc` (`ID`,`DifficultySpellID_1`,`DifficultySpellID_2`,`DifficultySpellID_3`,`DifficultySpellID_4`) VALUES
(52534, 52534, 59357, 0, 0),
(52535, 52535, 59358, 0, 0);
-- Update SmartAIs (call for help and comments).
UPDATE `creature_template` SET `AIName` = 'SmartAI' WHERE (`entry` IN (28732, 28733, 28734));
DELETE FROM `smart_scripts` WHERE (`source_type` = 0) AND (`entryorguid` IN (28732, 28733, 28734));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(28732, 0, 0, 0, 0, 0, 100, 0, 2000, 5000, 6000, 8000, 0, 0, 11, 52532, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 'Anub\'ar Warrior - In Combat - Cast \'Strike\''),
(28732, 0, 1, 0, 0, 0, 100, 0, 2000, 10000, 15000, 15000, 0, 0, 11, 49806, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 'Anub\'ar Warrior - In Combat - Cast \'Cleave\''),
(28732, 0, 2, 0, 4, 0, 100, 0, 0, 0, 0, 0, 0, 0, 39, 5, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Anub\'ar Warrior - On Aggro - Call For Help'),
(28733, 0, 0, 0, 0, 0, 100, 0, 0, 0, 2000, 2500, 0, 0, 11, 52534, 64, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 'Anub\'ar Shadowcaster - In Combat - Cast \'Shadow Bolt\''),
(28733, 0, 1, 0, 0, 0, 100, 0, 6000, 12000, 12000, 20000, 0, 0, 11, 52535, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Anub\'ar Shadowcaster - In Combat - Cast \'Shadow Nova\''),
(28733, 0, 2, 0, 4, 0, 100, 0, 0, 0, 0, 0, 0, 0, 39, 5, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Anub\'ar Shadowcaster - On Aggro - Call For Help'),
(28734, 0, 0, 0, 67, 0, 100, 0, 7000, 7000, 7000, 7000, 0, 5, 11, 52540, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 'Anub\'ar Skirmisher - On Behind Target - Cast \'Backstab\''),
(28734, 0, 1, 0, 0, 0, 100, 0, 5000, 10000, 15000, 15000, 0, 0, 11, 52536, 0, 0, 0, 0, 0, 5, 40, 0, 0, 0, 0, 0, 0, 0, 'Anub\'ar Skirmisher - In Combat - Cast \'Fixate Trigger\''),
(28734, 0, 2, 0, 4, 0, 100, 0, 0, 0, 0, 0, 0, 0, 39, 5, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Anub\'ar Skirmisher - On Aggro - Call For Help');

View File

@@ -0,0 +1,8 @@
-- DB update 2025_11_17_02 -> 2025_11_17_03
--
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 26814) AND (`source_type` = 0) AND (`id` IN (2, 4, 21, 32));
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(26814, 0, 2, 32, 61, 0, 100, 512, 0, 0, 0, 0, 0, 0, 71, 0, 3, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Harrison Jones - On Respawn - Change Equipment'),
(26814, 0, 4, 21, 61, 0, 100, 512, 0, 0, 0, 0, 0, 0, 64, 1, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 'Harrison Jones - On Quest \'Dun-da-Dun-tah!\' Taken - Store Targetlist'),
(26814, 0, 21, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 83, 2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Harrison Jones - On Quest \'Dun-da-Dun-tah!\' Taken - Remove Npc Flags Questgiver'),
(26814, 0, 32, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 82, 2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Harrison Jones - On Respawn - Add Npc Flags Questgiver');

View File

@@ -0,0 +1,3 @@
-- DB update 2026_01_06_00 -> 2026_01_06_01
-- Bonestripper Vulture, Castflag 0 to 32 "Only casts the spell if the target does not have an aura from the spell"
UPDATE `smart_scripts` SET `action_param2` = `action_param2` | 32 WHERE `entryorguid` = 16973 AND `source_type` = 0 AND `id` = 0;

View File

@@ -0,0 +1,37 @@
-- DB update 2026_01_06_01 -> 2026_01_07_00
--
DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 30134);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(30134, 0, 0, 13, 27, 0, 100, 512, 0, 0, 0, 0, 0, 0, 53, 2, 30134, 0, 0, 500, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'Brann\'s Flying Machine - On Passenger Boarded - Start Waypoint Path 30134'),
(30134, 0, 1, 0, 28, 0, 100, 512, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Brann\'s Flying Machine - On Passenger Removed - Despawn Instant'),
(30134, 0, 2, 0, 40, 0, 100, 512, 2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 19, 30107, 5, 0, 0, 0, 0, 0, 0, 'Brann\'s Flying Machine - On Point 2 of Path Any Reached - Say Line 0'),
(30134, 0, 3, 0, 40, 0, 100, 512, 8, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 19, 30107, 5, 0, 0, 0, 0, 0, 0, 'Brann\'s Flying Machine - On Point 8 of Path Any Reached - Say Line 1'),
(30134, 0, 4, 0, 40, 0, 100, 512, 16, 0, 0, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0, 19, 30107, 5, 0, 0, 0, 0, 0, 0, 'Brann\'s Flying Machine - On Point 16 of Path Any Reached - Say Line 2'),
(30134, 0, 5, 0, 40, 0, 100, 512, 22, 0, 0, 0, 0, 0, 1, 3, 0, 0, 0, 0, 0, 19, 30107, 5, 0, 0, 0, 0, 0, 0, 'Brann\'s Flying Machine - On Point 22 of Path Any Reached - Say Line 3'),
(30134, 0, 6, 0, 40, 0, 100, 512, 37, 0, 0, 0, 0, 0, 1, 4, 0, 0, 0, 0, 0, 19, 30107, 5, 0, 0, 0, 0, 0, 0, 'Brann\'s Flying Machine - On Point 37 of Path Any Reached - Say Line 4'),
(30134, 0, 7, 0, 40, 0, 100, 512, 47, 0, 0, 0, 0, 0, 1, 5, 0, 0, 0, 0, 0, 19, 30107, 5, 0, 0, 0, 0, 0, 0, 'Brann\'s Flying Machine - On Point 47 of Path Any Reached - Say Line 5'),
(30134, 0, 8, 0, 40, 0, 100, 512, 53, 0, 0, 0, 0, 0, 1, 6, 0, 0, 0, 0, 0, 19, 30107, 5, 0, 0, 0, 0, 0, 0, 'Brann\'s Flying Machine - On Point 53 of Path Any Reached - Say Line 6'),
(30134, 0, 9, 0, 40, 0, 100, 512, 57, 0, 0, 0, 0, 0, 1, 7, 0, 0, 0, 0, 0, 19, 30107, 5, 0, 0, 0, 0, 0, 0, 'Brann\'s Flying Machine - On Point 57 of Path Any Reached - Say Line 7'),
(30134, 0, 10, 0, 40, 0, 100, 512, 65, 0, 0, 0, 0, 0, 1, 8, 0, 0, 0, 0, 0, 19, 30107, 5, 0, 0, 0, 0, 0, 0, 'Brann\'s Flying Machine - On Point 65 of Path Any Reached - Say Line 8'),
(30134, 0, 11, 12, 40, 0, 100, 512, 72, 0, 0, 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Brann\'s Flying Machine - On Point 72 of Path Any Reached - Remove Auras'),
(30134, 0, 12, 0, 61, 0, 100, 512, 0, 0, 0, 0, 0, 0, 11, 56675, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Brann\'s Flying Machine - On Point 72 of Path Any Reached - Cast \'Summon Brann Bronzebeard\''),
(30134, 0, 13, 14, 61, 0, 100, 512, 0, 0, 0, 0, 0, 0, 18, 16777216, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Brann\'s Flying Machine - On Passenger Boarded - Set Flags Player Controlled'),
(30134, 0, 14, 15, 61, 0, 100, 512, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Brann\'s Flying Machine - On Passenger Boarded - Stop Attacking'),
(30134, 0, 15, 0, 61, 0, 100, 512, 0, 0, 0, 0, 0, 0, 44, 7, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Brann\'s Flying Machine - On Passenger Boarded - Set PhaseMask 7'),
(30134, 0, 16, 0, 60, 0, 100, 0, 3600, 3600, 3600, 3600, 0, 0, 86, 55089, 1, 19, 30136, 40, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Brann\'s Flying Machine - On Update, Condition: Not Currently Boarded - Cross Cast \'Mount Brann`s Flying Machine\'');
DELETE FROM `conditions` WHERE (`SourceTypeOrReferenceId` = 22) AND (`SourceGroup` = 17) AND (`SourceEntry` = 30134) AND (`SourceId` = 0) AND (`ElseGroup` = 0) AND (`ConditionTypeOrReference` = 29) AND (`ConditionTarget` = 1) AND (`ConditionValue1` = 30136) AND (`ConditionValue2` = 5) AND (`ConditionValue3` = 0);
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
(22, 17, 30134, 0, 0, 29, 1, 30136, 5, 0, 1, 0, 0, '', 'Only allow boarding if there are no current boarders for quest Bronzebeard Brothers');
DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 30136);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(30136, 0, 0, 0, 6, 0, 100, 0, 0, 0, 0, 0, 0, 0, 203, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Stormforged Soldier - On Just Died - Exit Vehicle'),
(30136, 0, 1, 0, 10, 0, 100, 0, 0, 100, 10000, 10000, 0, 0, 49, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'Stormforged Soldier - Within 0-100 Range Out of Combat LoS - Start Attacking'),
(30136, 0, 2, 0, 0, 0, 25, 1, 0, 500, 0, 0, 0, 0, 11, 56621, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Stormforged Soldier - In Combat - Cast \'Thunder Orb\' Hit (No Repeat)'),
(30136, 0, 3, 0, 0, 0, 100, 0, 3000, 5000, 4000, 6000, 0, 0, 11, 56622, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Stormforged Soldier - In Combat - Cast \'Thunder Orb\' Miss');
-- DELETE FROM `npc_spellclick_spells` WHERE `npc_entry` = 30134 AND `spell_id` IN (52391, 55089); -- Breaking Brann, I think
DELETE FROM `conditions` WHERE (`SourceTypeOrReferenceId` = 13) AND (`SourceGroup` = 1) AND (`SourceEntry` = 55089) AND (`SourceId` = 0) AND (`ElseGroup` = 0) AND (`ConditionTypeOrReference` = 31) AND (`ConditionTarget` = 0) AND (`ConditionValue1` = 3) AND (`ConditionValue2` = 30134) AND (`ConditionValue3` = 0);
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
(13, 1, 55089, 0, 0, 31, 0, 3, 30134, 0, 0, 0, 0, '', '55089 \'Mount Brann\'s Flying Machine\' Targets Brann\'s Flying Machine (30134)');

View File

@@ -0,0 +1,3 @@
-- DB update 2026_01_07_00 -> 2026_01_07_01
--
UPDATE `quest_template_addon` SET `SpecialFlags` = `SpecialFlags`|1 WHERE (`ID` = 13845);

View File

@@ -0,0 +1,9 @@
-- DB update 2026_01_07_01 -> 2026_01_07_02
--
DELETE FROM `conditions` WHERE (`SourceTypeOrReferenceId` = 13) AND (`SourceGroup` = 7) AND (`SourceEntry` = 54469) AND (`SourceId` = 0) AND (`ElseGroup` = 0) AND (`ConditionTypeOrReference` = 31) AND (`ConditionTarget` = 0) AND (`ConditionValue1` = 3) AND (`ConditionValue2` = 29333) AND (`ConditionValue3` = 0);
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
(13, 7, 54469, 0, 0, 31, 0, 3, 29333, 0, 0, 0, 0, '', 'Only useful versus Onslaught Gryphon Rider.');
DELETE FROM `conditions` WHERE (`SourceTypeOrReferenceId` = 13) AND (`SourceGroup` = 1) AND (`SourceEntry` = 74541) AND (`SourceId` = 0) AND (`ElseGroup` = 0) AND (`ConditionTypeOrReference` = 31) AND (`ConditionTarget` = 0) AND (`ConditionValue1` = 3) AND (`ConditionValue2` = 29333) AND (`ConditionValue3` = 0);
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
(13, 1, 74541, 0, 0, 31, 0, 3, 29333, 0, 0, 0, 0, '', 'Only useful versus Onslaught Gryphon Rider.');

View File

@@ -0,0 +1,9 @@
-- DB update 2026_01_07_02 -> 2026_01_08_00
--
UPDATE `creature_summon_groups` SET `summonType` = 6, `summonTime` = 60000 WHERE `summonerId` = 32239 AND `summonerType` = 0 AND `groupId` = 1;
DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 32312);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(32312, 0, 0, 0, 0, 0, 100, 0, 3000, 4000, 10000, 10000, 0, 0, 11, 58843, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 'Highlord Darion Mograine - In Combat - Cast \'Plague Strike\''),
(32312, 0, 1, 0, 0, 0, 100, 0, 7000, 8000, 10000, 10000, 0, 0, 11, 59011, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 'Highlord Darion Mograine - In Combat - Cast \'Icy Touch\''),
(32312, 0, 2, 0, 1, 0, 100, 512, 3600, 3600, 3600, 3600, 0, 0, 45, 1, 1, 0, 0, 0, 0, 19, 32239, 20, 0, 0, 0, 0, 0, 0, 'Highlord Darion Mograine - Out of Combat - Set Data 1 1');

View File

@@ -0,0 +1,17 @@
-- DB update 2026_01_08_00 -> 2026_01_09_00
--
DELETE FROM `creature` WHERE `guid` IN (106509, 106879, 106611, 106612, 106613) AND `id1` IN (23666, 23667, 23670);
INSERT INTO `creature` (`guid`, `id1`, `id2`, `id3`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `unit_flags`, `CreateObject`, `VerifiedBuild`) VALUES
(106509, 23666, 23667, 23670, 571, 495, 3980, 1, 1, 1, 1212.23486328125, -5282.193359375, 178.7692413330078125, 6.091198921203613281, 120, 33554432, 1, 53788),
(106879, 23666, 23667, 23670, 571, 495, 3980, 1, 1, 1, 1226.8583984375, -5312.6591796875, 179.46478271484375, 3.96189737319946289, 120, 33554432, 1, 53788),
(106611, 23666, 23667, 23670, 571, 495, 3980, 1, 1, 1, 1247.4696044921875, -5301.1455078125, 178.558868408203125, 2.897246599197387695, 120, 33554432, 1, 53788),
(106612, 23666, 23667, 23670, 571, 495, 3980, 1, 1, 1, 1241.3194580078125, -5319.017578125, 177.4776763916015625, 0.890117883682250976, 120, 33554432, 1, 53788),
(106613, 23666, 23667, 23670, 571, 495, 3980, 1, 1, 1, 1252.26025390625, -5307.59375, 177.487030029296875, 0.837758064270019531, 120, 33554432, 1, 53788);
DELETE FROM `creature_addon` WHERE (`guid` IN (106509, 106879, 106611, 106612, 106613));
INSERT INTO `creature_addon` (`guid`, `bytes2`, `auras`) VALUES
(106509, 1, '29266'),
(106879, 1, '29266'),
(106611, 1, '29266'),
(106612, 1, '29266'),
(106613, 1, '29266');

View File

@@ -0,0 +1,67 @@
-- DB update 2026_01_09_00 -> 2026_01_09_01
--
DELETE FROM `spell_area` WHERE `spell` = 58139 AND `area` = 4588 AND `quest_start` = 13144;
INSERT INTO `spell_area` (`spell`, `area`, `quest_start`, `quest_end`, `aura_spell`, `racemask`, `gender`, `autocast`, `quest_start_status`, `quest_end_status`) VALUES
(58139, 4588, 13144, 13220, 0, 0, 2, 1, 64, 9);
UPDATE `creature` SET `phaseMask` = `phaseMask`|64 WHERE `id1` = 30631 AND `guid` = 123657;
UPDATE `creature_template` SET `AIName` = 'SmartAI' WHERE `entry` = 30631;
DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 30631);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(30631, 0, 0, 0, 20, 0, 100, 0, 13144, 30000, 30000, 0, 0, 0, 80, 3063100, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Darkrider Arly - On Quest \'Killing Two Scourge With One Skeleton\' Finished - Run Script');
DELETE FROM `smart_scripts` WHERE (`source_type` = 9 AND `entryorguid` = 3063100);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(3063100, 9, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 12, 31428, 8, 0, 0, 0, 0, 8, 0, 0, 0, 0, 6648.76, 3217.7263, 810.50073, 1.6057028770446777, 'Darkrider Arly - Actionlist - Summon Creature \'Crusader Olakin Sainrith\''),
(3063100, 9, 1, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 12, 31432, 8, 0, 0, 0, 0, 8, 0, 0, 0, 0, 6588.4272, 3278.2026, 818.2033, 5.044001579284668, 'Darkrider Arly - Actionlist - Summon Creature \'Ghostwing\'');
DELETE FROM `conditions` WHERE (`SourceTypeOrReferenceId` = 22) AND (`SourceGroup` = 1) AND (`SourceEntry` = 31428) AND (`SourceId` = 0) AND (`ElseGroup` = 0) AND (`ConditionTypeOrReference` = 23) AND (`ConditionTarget` = 1) AND (`ConditionValue1` = 4530) AND (`ConditionValue2` = 0) AND (`ConditionValue3` = 0);
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
(22, 1, 31428, 0, 0, 23, 1, 4530, 0, 0, 0, 0, 0, '', 'Only run script if summon occurs in Sanctum of Reanimation (4530)');
DELETE FROM `conditions` WHERE (`SourceTypeOrReferenceId` = 22) AND (`SourceGroup` = 6) AND (`SourceEntry` = 31428) AND (`SourceId` = 0) AND (`ElseGroup` = 0) AND (`ConditionTypeOrReference` = 23) AND (`ConditionTarget` = 1) AND (`ConditionValue1` = 4588) AND (`ConditionValue2` = 0) AND (`ConditionValue3` = 0);
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
(22, 6, 31428, 0, 0, 23, 1, 4588, 0, 0, 0, 0, 0, '', 'Only run script if summon occurs in Blackwatch (4588)');
DELETE FROM `conditions` WHERE (`SourceTypeOrReferenceId` = 13) AND (`SourceGroup` = 1) AND (`SourceEntry` = 59091) AND (`SourceId` = 0) AND (`ElseGroup` = 0) AND (`ConditionTypeOrReference` = 31) AND (`ConditionTarget` = 0) AND (`ConditionValue1` = 3) AND (`ConditionValue2` = 31432) AND (`ConditionValue3` = 0);
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
(13, 1, 59091, 0, 0, 31, 0, 3, 31432, 0, 0, 0, 0, '', 'Ride Ghostwing (59091) Only Targets Ghostwing (31432)');
UPDATE `creature_template_addon` SET `mount` = 0 WHERE (`entry` = 31428);
DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 31428);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(31428, 0, 0, 1, 54, 0, 100, 0, 0, 0, 0, 0, 0, 0, 2, 1770, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Crusader Olakin Sainrith - On Just Summoned, Condition: Only in Sanctum of Reanimation - Set Faction 1770'),
(31428, 0, 1, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 80, 3142800, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Crusader Olakin Sainrith - On Just Summoned - Run Script'),
(31428, 0, 2, 3, 38, 0, 100, 0, 1, 1, 0, 0, 0, 0, 22, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Crusader Olakin Sainrith - On Data Set 1 1 - Set Event Phase 1'),
(31428, 0, 3, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 49, 0, 0, 0, 0, 0, 0, 10, 74956, 30698, 0, 0, 0, 0, 0, 0, 'Crusader Olakin Sainrith - On Data Set 1 1 - Start Attacking'),
(31428, 0, 4, 0, 7, 1, 100, 0, 0, 0, 0, 0, 0, 0, 41, 8000, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Crusader Olakin Sainrith - On Evade - Despawn In 8000 ms (Phase 1)'),
(31428, 0, 5, 0, 54, 0, 100, 0, 0, 0, 0, 0, 0, 0, 80, 3142801, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Crusader Olakin Sainrith - On Just Summoned, Condition: Only in Blackwatch - Run Script');
DELETE FROM `smart_scripts` WHERE (`source_type` = 9 AND `entryorguid` = 3142801);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(3142801, 9, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 44, 64, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Crusader Olakin Sainrith - Actionlist - Set PhaseMask 64'),
(3142801, 9, 1, 0, 0, 0, 100, 0, 1300, 1300, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Crusader Olakin Sainrith - Actionlist - Say Line 1');
UPDATE `creature_template` SET `AIName` = 'SmartAI', `unit_flags` = 768 WHERE `entry` = 31432;
UPDATE `creature_template_movement` SET `Flight` = 2 WHERE (`CreatureId` = 31432);
DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 31432);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(31432, 0, 0, 0, 54, 0, 100, 0, 0, 0, 0, 0, 0, 0, 80, 3143200, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Ghostwing - On Just Summoned - Run Script'),
(31432, 0, 1, 0, 34, 0, 100, 0, 8, 1, 0, 0, 0, 0, 80, 3143201, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Ghostwing - On Reached Point Blackwatch - Run Script'),
(31432, 0, 2, 3, 34, 0, 100, 0, 8, 2, 0, 0, 0, 0, 41, 0, 0, 0, 0, 0, 0, 19, 31428, 40, 0, 0, 0, 0, 0, 0, 'Ghostwing - On Reached Despawn Point - Despawn Olakin'),
(31432, 0, 3, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Ghostwing - On Reached Despawn Point - Despawn Self');
DELETE FROM `smart_scripts` WHERE (`source_type` = 9 AND `entryorguid` = 3143200);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(3143200, 9, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 44, 64, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Ghostwing - Actionlist - Set PhaseMask 64'),
(3143200, 9, 1, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 239, 3, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Ghostwing - Actionlist - Set AnimTier Flying'),
(3143200, 9, 2, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 69, 1, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 6644.4297, 3222.9124, 823.0705, 0, 'Ghostwing - Actionlist - Move To Position');
DELETE FROM `smart_scripts` WHERE (`source_type` = 9 AND `entryorguid` = 3143201);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(3143201, 9, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 5, 460, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Ghostwing - Actionlist - Play Emote 460 (OneShotFlyDragonSpit)'),
(3143201, 9, 1, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Ghostwing - Actionlist - Say Line 0'),
(3143201, 9, 2, 0, 0, 0, 100, 0, 6470, 6470, 0, 0, 0, 0, 5, 452, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Ghostwing - Actionlist - Play Emote 452 (OneShotFlyGrab)'),
(3143201, 9, 3, 0, 0, 0, 100, 0, 400, 400, 0, 0, 0, 0, 86, 59091, 2, 19, 31428, 40, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Ghostwing - Actionlist - Cross Cast \'Ride Ghostwing\''),
(3143201, 9, 4, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 64, 1, 0, 0, 0, 0, 0, 19, 30631, 40, 0, 0, 0, 0, 0, 0, 'Ghostwing - Actionlist - Store Arly as Target'),
(3143201, 9, 5, 0, 0, 0, 100, 0, 2840, 2840, 0, 0, 0, 0, 69, 2, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 6690.6504, 3177.2793, 860.5705, 0, 'Ghostwing - Actionlist - Move To Position'),
(3143201, 9, 6, 0, 0, 0, 100, 0, 1200, 1200, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 12, 1, 0, 0, 0, 0, 0, 0, 0, 'Ghostwing - Actionlist - Arly Say Line 0');

View File

@@ -0,0 +1,5 @@
-- DB update 2026_01_09_01 -> 2026_01_10_00
--
DELETE FROM `conditions` WHERE (`SourceTypeOrReferenceId` = 17) AND (`SourceGroup` = 0) AND (`SourceEntry` = 49266) AND (`SourceId` = 0) AND (`ElseGroup` = 0) AND (`ConditionTypeOrReference` = 1) AND (`ConditionTarget` = 1) AND (`ConditionValue1` = 49282) AND (`ConditionValue2` = 0) AND (`ConditionValue3` = 0);
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
(17, 0, 49266, 0, 0, 1, 1, 49282, 0, 0, 1, 0, 0, '', 'Mounting Up (12414): Dangle Wild Carrot (49266) cannot be cast on a horse that is already mounted with Ride Highland Mustang (49282)');

View File

@@ -0,0 +1,5 @@
-- DB update 2026_01_10_00 -> 2026_01_12_00
-- bb
DELETE FROM `spell_script_names` WHERE `spell_id` = -49182;
INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES
(-49182, 'spell_dk_blade_barrier');

View File

@@ -0,0 +1,9 @@
-- DB update 2026_01_12_00 -> 2026_01_12_01
--
DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 314 AND `id` = 1);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(314, 0, 1, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 11, 20819, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 'Eliza - In Combat - Cast Frostbolt');
DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 5354 AND `id` = 0);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(5354, 0, 0, 0, 4, 0, 100, 0, 0, 0, 0, 0, 0, 0, 11, 11922, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 'Gnarl Leafbrother - On Aggro - Cast Entangling Roots');

View File

@@ -40,39 +40,39 @@ target_include_directories(sfmt
target_compile_definitions(sfmt PUBLIC -DSFMT_MEXP=19937) target_compile_definitions(sfmt PUBLIC -DSFMT_MEXP=19937)
# enable SIMD instructions if available # enable SIMD instructions if available
include(CheckCCompilerFlag) include(CheckCXXCompilerFlag)
if (CMAKE_SYSTEM_PROCESSOR MATCHES "(powerpc|ppc)64|(powerpc|ppc)64le")
check_c_compiler_flag("-maltivec" HAVE_ALTIVEC)
if (HAVE_ALTIVEC)
target_compile_options(sfmt PRIVATE -mabi=altivec -maltivec)
target_compile_definitions(sfmt PUBLIC -DHAVE_ALTIVEC)
else ()
message(WARNING "Altivec not available - performance will be poor!")
endif ()
elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "arm|ARM")
check_c_compiler_flag(-mfpu=neon HAVE_NEON)
if (HAVE_NEON)
target_compile_options(sfmt PRIVATE -mfpu=neon -ftree-vectorize)
target_compile_definitions(sfmt PUBLIC -DHAVE_NEON)
else ()
message(WARNING "Neon not available - performance will be poor!")
endif ()
elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64|AARCH64")
check_c_compiler_flag(-march=armv8-a+simd HAVE_NEON)
if (HAVE_NEON)
target_compile_options(sfmt PRIVATE -ftree-vectorize)
target_compile_definitions(sfmt PUBLIC -DHAVE_NEON)
else ()
message(WARNING "Neon not available - performance will be poor!")
endif ()
elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "i686|amd64|x86_64|AMD64")
#SSE2 is always available
set(HAVE_SSE2 1)
if (NOT CMAKE_C_COMPILER_ID MATCHES "MSVC") # MSVC does not have any flags to check
if (CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
if (ACORE_SYSTEM_PROCESSOR MATCHES "^arm")
set(HAVE_NEON 1)
else ()
set(HAVE_SSE2 1)
endif ()
else ()
if (ACORE_SYSTEM_PROCESSOR STREQUAL "arm")
check_cxx_compiler_flag(-mfpu=neon HAVE_NEON)
if (HAVE_NEON)
target_compile_options(sfmt PRIVATE -mfpu=neon -ftree-vectorize)
endif()
elseif (ACORE_SYSTEM_PROCESSOR STREQUAL "arm64")
check_cxx_compiler_flag(-march=armv8-a+simd HAVE_NEON)
if (HAVE_NEON)
target_compile_options(sfmt PRIVATE -ftree-vectorize)
endif ()
elseif (ACORE_SYSTEM_PROCESSOR MATCHES "x86|amd64")
#SSE2 is always available
set(HAVE_SSE2 1)
target_compile_options(sfmt PRIVATE -msse2) target_compile_options(sfmt PRIVATE -msse2)
endif () endif ()
target_compile_definitions(sfmt PUBLIC -DHAVE_SSE2) endif ()
if (HAVE_NEON)
target_compile_definitions(sfmt PUBLIC HAVE_NEON)
endif ()
if (HAVE_SSE2)
target_compile_definitions(sfmt PUBLIC HAVE_SSE2)
endif () endif ()
set_target_properties(sfmt PROPERTIES LINKER_LANGUAGE CXX) set_target_properties(sfmt PROPERTIES LINKER_LANGUAGE CXX)

View File

@@ -12,12 +12,12 @@
file(GLOB_RECURSE sources *.c) file(GLOB_RECURSE sources *.c)
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64") if(ACORE_SYSTEM_PROCESSOR MATCHES "x86|amd64")
list(REMOVE_ITEM sources
${CMAKE_CURRENT_SOURCE_DIR}/argon2/opt.c)
else()
list(REMOVE_ITEM sources list(REMOVE_ITEM sources
${CMAKE_CURRENT_SOURCE_DIR}/argon2/ref.c) ${CMAKE_CURRENT_SOURCE_DIR}/argon2/ref.c)
else()
list(REMOVE_ITEM sources
${CMAKE_CURRENT_SOURCE_DIR}/argon2/opt.c)
endif() endif()
add_library(argon2 STATIC add_library(argon2 STATIC

View File

@@ -30,7 +30,7 @@ if(CMAKE_SYSTEM_NAME MATCHES "Linux" AND NOT NOJEM)
set(JEM_MADFREE_DEF "#undef") set(JEM_MADFREE_DEF "#undef")
endif() endif()
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64") if(ACORE_SYSTEM_PROCESSOR MATCHES "arm")
set(JEM_CPU_SPINWAIT "") set(JEM_CPU_SPINWAIT "")
set(JEM_HAVE_CPU_SPINWAIT 0) set(JEM_HAVE_CPU_SPINWAIT 0)
else() else()

View File

@@ -1,5 +1,5 @@
# Copyright (C) 2008-2016 TrinityCore <http://www.trinitycore.org/> # Copyright (C) 2008-2016 TrinityCore <http://www.trinitycore.org/>
# Copyright (C) 2016+ AzerothCore <www.azerothcore.org>, released under GNU AGPL v3 license: https://github.com/azerothcore/azerothcore-wotlk/blob/master/LICENSE # Copyright (C) 2016+ AzerothCore <www.azerothcore.org>
# #
# This file is free software; as a special exception the author gives # This file is free software; as a special exception the author gives
# unlimited permission to copy and/or distribute it, with or without # unlimited permission to copy and/or distribute it, with or without

View File

@@ -1,5 +1,5 @@
# Copyright (C) 2008-2016 TrinityCore <http://www.trinitycore.org/> # Copyright (C) 2008-2016 TrinityCore <http://www.trinitycore.org/>
# Copyright (C) 2016+ AzerothCore <www.azerothcore.org>, released under GNU AGPL v3 license: https://github.com/azerothcore/azerothcore-wotlk/blob/master/LICENSE # Copyright (C) 2016+ AzerothCore <www.azerothcore.org>
# #
# This file is free software; as a special exception the author gives # This file is free software; as a special exception the author gives
# unlimited permission to copy and/or distribute it, with or without # unlimited permission to copy and/or distribute it, with or without

View File

@@ -1,7 +0,0 @@
### Added
- New hook for OnQuestComputeXP(). The intended use is to change the XP values for certain quests programmatically. The hook is triggered after XP calculation and before rewarding XP or gold to the player.
### How to upgrade
- No special changes needed. The new hook is available for use and should not interfere with any existing hooks or logic.

View File

@@ -31,11 +31,14 @@ if(PLATFORM EQUAL 32)
-mfpmath=sse) -mfpmath=sse)
endif() endif()
target_compile_definitions(acore-compile-option-interface if(ACORE_SYSTEM_PROCESSOR MATCHES "x86|amd64")
INTERFACE target_compile_definitions(acore-compile-option-interface
-DHAVE_SSE2 INTERFACE
-D__SSE2__) -DHAVE_SSE2
message(STATUS "GCC: SFMT enabled, SSE2 flags forced") -D__SSE2__)
message(STATUS "GCC: SFMT enabled, SSE2 flags forced")
endif()
if( WITH_WARNINGS ) if( WITH_WARNINGS )
target_compile_options(acore-warning-interface target_compile_options(acore-warning-interface

View File

@@ -21,6 +21,30 @@ endif()
include("${CMAKE_SOURCE_DIR}/src/cmake/platform/settings.cmake") include("${CMAKE_SOURCE_DIR}/src/cmake/platform/settings.cmake")
if(CMAKE_SYSTEM_PROCESSOR MATCHES "amd64|x86_64|AMD64")
set(ACORE_SYSTEM_PROCESSOR "amd64")
elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^(arm|ARM|aarch|AARCH)64$")
set(ACORE_SYSTEM_PROCESSOR "arm64")
elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^(arm|ARM|aarch|AARCH)$")
set(ACORE_SYSTEM_PROCESSOR "arm")
else()
set(ACORE_SYSTEM_PROCESSOR "x86")
endif()
# detect MSVC special case of using cmake -A switch (which doesn't set any cross compiling variables)
if(CMAKE_GENERATOR_PLATFORM STREQUAL "Win32")
set(ACORE_SYSTEM_PROCESSOR "x86")
elseif(CMAKE_GENERATOR_PLATFORM STREQUAL "x64")
set(ACORE_SYSTEM_PROCESSOR "amd64")
elseif(CMAKE_GENERATOR_PLATFORM STREQUAL "ARM")
set(ACORE_SYSTEM_PROCESSOR "arm")
elseif(CMAKE_GENERATOR_PLATFORM STREQUAL "ARM64")
set(ACORE_SYSTEM_PROCESSOR "arm64")
endif()
message(STATUS "Detected ${ACORE_SYSTEM_PROCESSOR} processor architecture")
if(WIN32) if(WIN32)
include("${CMAKE_SOURCE_DIR}/src/cmake/platform/win/settings.cmake") include("${CMAKE_SOURCE_DIR}/src/cmake/platform/win/settings.cmake")
elseif(UNIX) elseif(UNIX)

View File

@@ -227,7 +227,7 @@ elseif (MSVC)
set(_OPENSSL_MSI_INSTALL_GUIDS "") set(_OPENSSL_MSI_INSTALL_GUIDS "")
if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "8") if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "8")
if(CMAKE_SYSTEM_PROCESSOR MATCHES "ARM64") if(ACORE_SYSTEM_PROCESSOR STREQUAL "arm64")
set(_arch "Win64-ARM") set(_arch "Win64-ARM")
set(_OPENSSL_MSI_INSTALL_GUIDS "99C28AFA-6419-40B1-B88D-32B810BB4234") set(_OPENSSL_MSI_INSTALL_GUIDS "99C28AFA-6419-40B1-B88D-32B810BB4234")
else() else()
@@ -319,7 +319,7 @@ if(WIN32 AND NOT CYGWIN)
# Since OpenSSL 1.1, lib names are like libcrypto32MTd.lib and libssl32MTd.lib # Since OpenSSL 1.1, lib names are like libcrypto32MTd.lib and libssl32MTd.lib
if( "${CMAKE_SIZEOF_VOID_P}" STREQUAL "8" ) if( "${CMAKE_SIZEOF_VOID_P}" STREQUAL "8" )
set(_OPENSSL_MSVC_ARCH_SUFFIX "64") set(_OPENSSL_MSVC_ARCH_SUFFIX "64")
if(CMAKE_SYSTEM_PROCESSOR MATCHES "ARM64") if(ACORE_SYSTEM_PROCESSOR STREQUAL "arm64")
set(_OPENSSL_MSVC_ARCH_DIRECTORY "arm64") set(_OPENSSL_MSVC_ARCH_DIRECTORY "arm64")
else() else()
set(_OPENSSL_MSVC_ARCH_DIRECTORY "x64") set(_OPENSSL_MSVC_ARCH_DIRECTORY "x64")

View File

@@ -70,6 +70,7 @@ private:
{ {
tree.clear(); tree.clear();
objects.clear(); objects.clear();
bounds = G3D::AABox::empty();
// create space for the first node // create space for the first node
tree.push_back(3u << 30u); // dummy leaf tree.push_back(3u << 30u); // dummy leaf
tree.insert(tree.end(), 2, 0); tree.insert(tree.end(), 2, 0);
@@ -116,6 +117,7 @@ public:
delete[] dat.indices; delete[] dat.indices;
} }
[[nodiscard]] uint32 primCount() const { return objects.size(); } [[nodiscard]] uint32 primCount() const { return objects.size(); }
G3D::AABox const& bound() const { return bounds; }
template<typename RayCallback> template<typename RayCallback>
void intersectRay(const G3D::Ray& r, RayCallback& intersectCallback, float& maxDist, bool stopAtFirstHit) const void intersectRay(const G3D::Ray& r, RayCallback& intersectCallback, float& maxDist, bool stopAtFirstHit) const

View File

@@ -170,25 +170,6 @@ private:
VMAP::ModelIgnoreFlags _ignoreFlags; VMAP::ModelIgnoreFlags _ignoreFlags;
}; };
struct DynamicTreeAreaInfoCallback
{
DynamicTreeAreaInfoCallback(uint32 phaseMask) : _phaseMask(phaseMask) { }
void operator()(G3D::Vector3 const& p, GameObjectModel const& obj)
{
obj.IntersectPoint(p, _areaInfo, _phaseMask);
}
VMAP::AreaInfo const& GetAreaInfo() const
{
return _areaInfo;
}
private:
uint32 _phaseMask;
VMAP::AreaInfo _areaInfo;
};
struct DynamicTreeLocationInfoCallback struct DynamicTreeLocationInfoCallback
{ {
DynamicTreeLocationInfoCallback(uint32 phaseMask) DynamicTreeLocationInfoCallback(uint32 phaseMask)
@@ -308,24 +289,7 @@ float DynamicMapTree::getHeight(float x, float y, float z, float maxSearchDist,
} }
} }
bool DynamicMapTree::GetAreaInfo(float x, float y, float& z, uint32 phasemask, uint32& flags, int32& adtId, int32& rootId, int32& groupId) const bool DynamicMapTree::GetAreaAndLiquidData(float x, float y, float z, uint32 phasemask, Optional<uint8> reqLiquidType, VMAP::AreaAndLiquidData& data) const
{
G3D::Vector3 v(x, y, z + 0.5f);
DynamicTreeAreaInfoCallback intersectionCallBack(phasemask);
impl->intersectPoint(v, intersectionCallBack);
if (intersectionCallBack.GetAreaInfo().result)
{
flags = intersectionCallBack.GetAreaInfo().flags;
adtId = intersectionCallBack.GetAreaInfo().adtId;
rootId = intersectionCallBack.GetAreaInfo().rootId;
groupId = intersectionCallBack.GetAreaInfo().groupId;
z = intersectionCallBack.GetAreaInfo().ground_Z;
return true;
}
return false;
}
void DynamicMapTree::GetAreaAndLiquidData(float x, float y, float z, uint32 phasemask, uint8 reqLiquidType, VMAP::AreaAndLiquidData& data) const
{ {
G3D::Vector3 v(x, y, z + 0.5f); G3D::Vector3 v(x, y, z + 0.5f);
DynamicTreeLocationInfoCallback intersectionCallBack(phasemask); DynamicTreeLocationInfoCallback intersectionCallBack(phasemask);
@@ -335,13 +299,16 @@ void DynamicMapTree::GetAreaAndLiquidData(float x, float y, float z, uint32 phas
data.floorZ = intersectionCallBack.GetLocationInfo().ground_Z; data.floorZ = intersectionCallBack.GetLocationInfo().ground_Z;
uint32 liquidType = intersectionCallBack.GetLocationInfo().hitModel->GetLiquidType(); uint32 liquidType = intersectionCallBack.GetLocationInfo().hitModel->GetLiquidType();
float liquidLevel; float liquidLevel;
if (!reqLiquidType || (dynamic_cast<VMAP::VMapMgr2*>(VMAP::VMapFactory::createOrGetVMapMgr())->GetLiquidFlagsPtr(liquidType) & reqLiquidType)) if (!reqLiquidType || (dynamic_cast<VMAP::VMapMgr2*>(VMAP::VMapFactory::createOrGetVMapMgr())->GetLiquidFlagsPtr(liquidType) & *reqLiquidType))
if (intersectionCallBack.GetHitModel()->GetLiquidLevel(v, intersectionCallBack.GetLocationInfo(), liquidLevel)) if (intersectionCallBack.GetHitModel()->GetLiquidLevel(v, intersectionCallBack.GetLocationInfo(), liquidLevel))
data.liquidInfo.emplace(liquidType, liquidLevel); data.liquidInfo.emplace(liquidType, liquidLevel);
data.areaInfo.emplace(0, data.areaInfo.emplace(intersectionCallBack.GetLocationInfo().hitModel->GetWmoID(),
0,
intersectionCallBack.GetLocationInfo().rootId, intersectionCallBack.GetLocationInfo().rootId,
intersectionCallBack.GetLocationInfo().hitModel->GetWmoID(), intersectionCallBack.GetLocationInfo().hitModel->GetMogpFlags(),
intersectionCallBack.GetLocationInfo().hitModel->GetMogpFlags()); 0);
return true;
} }
return false;
} }

View File

@@ -19,6 +19,7 @@
#define _DYNTREE_H #define _DYNTREE_H
#include "Define.h" #include "Define.h"
#include "Optional.h"
namespace G3D namespace G3D
{ {
@@ -47,8 +48,7 @@ public:
bool GetIntersectionTime(uint32 phasemask, const G3D::Ray& ray, const G3D::Vector3& endPos, float& maxDist) const; bool GetIntersectionTime(uint32 phasemask, const G3D::Ray& ray, const G3D::Vector3& endPos, float& maxDist) const;
bool GetAreaInfo(float x, float y, float& z, uint32 phasemask, uint32& flags, int32& adtId, int32& rootId, int32& groupId) const; bool GetAreaAndLiquidData(float x, float y, float z, uint32 phasemask, Optional<uint8> reqLiquidType, VMAP::AreaAndLiquidData& data) const;
void GetAreaAndLiquidData(float x, float y, float z, uint32 phasemask, uint8 reqLiquidType, VMAP::AreaAndLiquidData& data) const;
bool GetObjectHitPos(uint32 phasemask, const G3D::Vector3& pPos1, bool GetObjectHitPos(uint32 phasemask, const G3D::Vector3& pPos1,
const G3D::Vector3& pPos2, G3D::Vector3& pResultHitPos, const G3D::Vector3& pPos2, G3D::Vector3& pResultHitPos,

View File

@@ -52,20 +52,23 @@ namespace VMAP
{ {
struct AreaInfo struct AreaInfo
{ {
AreaInfo(int32 _adtId, int32 _rootId, int32 _groupId, uint32 _flags) AreaInfo() = default;
: adtId(_adtId), rootId(_rootId), groupId(_groupId), mogpFlags(_flags) { } AreaInfo(int32 _groupId, int32 _adtId, int32 _rootId, uint32 _mogpFlags, uint32 _uniqueId)
int32 const adtId; : groupId(_groupId), adtId(_adtId), rootId(_rootId), mogpFlags(_mogpFlags), uniqueId(_uniqueId) { }
int32 const rootId; int32 groupId = 0;
int32 const groupId; int32 adtId = 0;
uint32 const mogpFlags; int32 rootId = 0;
uint32 mogpFlags = 0;
uint32 uniqueId = 0;
}; };
struct LiquidInfo struct LiquidInfo
{ {
LiquidInfo() = default;
LiquidInfo(uint32 _type, float _level) LiquidInfo(uint32 _type, float _level)
: type(_type), level(_level) {} : type(_type), level(_level) {}
uint32 const type; uint32 type = 0;
float const level; float level = 0.0f;
}; };
float floorZ = VMAP_INVALID_HEIGHT; float floorZ = VMAP_INVALID_HEIGHT;
@@ -120,14 +123,12 @@ namespace VMAP
[[nodiscard]] bool isMapLoadingEnabled() const { return (iEnableLineOfSightCalc || iEnableHeightCalc ); } [[nodiscard]] bool isMapLoadingEnabled() const { return (iEnableLineOfSightCalc || iEnableHeightCalc ); }
[[nodiscard]] virtual std::string getDirFileName(unsigned int pMapId, int x, int y) const = 0; [[nodiscard]] virtual std::string getDirFileName(unsigned int pMapId, int x, int y) const = 0;
/** /**
Query world model area info. Query world model area info.
\param z gets adjusted to the ground height for which this are info is valid \param z gets adjusted to the ground height for which this are info is valid
*/ */
virtual bool GetAreaInfo(uint32 pMapId, float x, float y, float& z, uint32& flags, int32& adtId, int32& rootId, int32& groupId) const = 0; virtual bool GetAreaAndLiquidData(uint32 mapId, float x, float y, float z, Optional<uint8> reqLiquidType, AreaAndLiquidData& data) const = 0;
virtual bool GetLiquidLevel(uint32 pMapId, float x, float y, float z, uint8 ReqLiquidType, float& level, float& floor, uint32& type, uint32& mogpFlags) const = 0;
// get both area + liquid data in a single vmap lookup
virtual void GetAreaAndLiquidData(uint32 mapId, float x, float y, float z, uint8 reqLiquidType, AreaAndLiquidData& data) const = 0;
}; };
} }

View File

@@ -138,8 +138,7 @@ namespace MMAP
uint32 packedGridPos = packTileID(x, y); uint32 packedGridPos = packTileID(x, y);
if (mmap->loadedTileRefs.find(packedGridPos) != mmap->loadedTileRefs.end()) if (mmap->loadedTileRefs.find(packedGridPos) != mmap->loadedTileRefs.end())
{ {
// Peiru: Commented out for now because Playerbots system uses this method to load or check loaded maps and will spam logs LOG_ERROR("maps", "MMAP:loadMap: Asked to load already loaded navmesh tile. {:03}{:02}{:02}.mmtile", mapId, x, y);
// LOG_ERROR("maps", "MMAP:loadMap: Asked to load already loaded navmesh tile. {:03}{:02}{:02}.mmtile", mapId, x, y);
return false; return false;
} }

View File

@@ -253,70 +253,8 @@ namespace VMAP
return VMAP_INVALID_HEIGHT_VALUE; return VMAP_INVALID_HEIGHT_VALUE;
} }
bool VMapMgr2::GetAreaInfo(uint32 mapId, float x, float y, float& z, uint32& flags, int32& adtId, int32& rootId, int32& groupId) const bool VMapMgr2::GetAreaAndLiquidData(uint32 mapId, float x, float y, float z, Optional<uint8> reqLiquidType, AreaAndLiquidData& data) const
{ {
#if defined(ENABLE_VMAP_CHECKS)
if (!IsVMAPDisabledForPtr(mapId, VMAP_DISABLE_AREAFLAG))
#endif
{
InstanceTreeMap::const_iterator instanceTree = GetMapTree(mapId);
if (instanceTree != iInstanceMapTrees.end())
{
Vector3 pos = convertPositionToInternalRep(x, y, z);
bool result = instanceTree->second->GetAreaInfo(pos, flags, adtId, rootId, groupId);
// z is not touched by convertPositionToInternalRep(), so just copy
z = pos.z;
return result;
}
}
return false;
}
bool VMapMgr2::GetLiquidLevel(uint32 mapId, float x, float y, float z, uint8 reqLiquidType, float& level, float& floor, uint32& type, uint32& mogpFlags) const
{
#if defined(ENABLE_VMAP_CHECKS)
if (!IsVMAPDisabledForPtr(mapId, VMAP_DISABLE_LIQUIDSTATUS))
#endif
{
InstanceTreeMap::const_iterator instanceTree = GetMapTree(mapId);
if (instanceTree != iInstanceMapTrees.end())
{
LocationInfo info;
Vector3 pos = convertPositionToInternalRep(x, y, z);
if (instanceTree->second->GetLocationInfo(pos, info))
{
floor = info.ground_Z;
ASSERT(floor < std::numeric_limits<float>::max());
type = info.hitModel->GetLiquidType(); // entry from LiquidType.dbc
mogpFlags = info.hitModel->GetMogpFlags();
if (reqLiquidType && !(GetLiquidFlagsPtr(type) & reqLiquidType))
{
return false;
}
if (info.hitInstance->GetLiquidLevel(pos, info, level))
{
return true;
}
}
}
}
return false;
}
void VMapMgr2::GetAreaAndLiquidData(uint32 mapId, float x, float y, float z, uint8 reqLiquidType, AreaAndLiquidData& data) const
{
if (IsVMAPDisabledForPtr(mapId, VMAP_DISABLE_LIQUIDSTATUS))
{
data.floorZ = z;
int32 adtId, rootId, groupId;
uint32 flags;
if (GetAreaInfo(mapId, x, y, data.floorZ, flags, adtId, rootId, groupId))
data.areaInfo.emplace(adtId, rootId, groupId, flags);
return;
}
InstanceTreeMap::const_iterator instanceTree = GetMapTree(mapId); InstanceTreeMap::const_iterator instanceTree = GetMapTree(mapId);
if (instanceTree != iInstanceMapTrees.end()) if (instanceTree != iInstanceMapTrees.end())
{ {
@@ -325,16 +263,22 @@ namespace VMAP
if (instanceTree->second->GetLocationInfo(pos, info)) if (instanceTree->second->GetLocationInfo(pos, info))
{ {
data.floorZ = info.ground_Z; data.floorZ = info.ground_Z;
uint32 liquidType = info.hitModel->GetLiquidType(); if (!IsVMAPDisabledForPtr(mapId, VMAP_DISABLE_LIQUIDSTATUS))
float liquidLevel; {
if (!reqLiquidType || (GetLiquidFlagsPtr(liquidType) & reqLiquidType)) uint32 liquidType = info.hitModel->GetLiquidType(); // entry from LiquidType.dbc
if (info.hitInstance->GetLiquidLevel(pos, info, liquidLevel)) float liquidLevel;
data.liquidInfo.emplace(liquidType, liquidLevel); if (!reqLiquidType || (GetLiquidFlagsPtr(liquidType) & *reqLiquidType))
if (info.hitInstance->GetLiquidLevel(pos, info, liquidLevel))
data.liquidInfo.emplace(liquidType, liquidLevel);
}
if (!IsVMAPDisabledForPtr(mapId, VMAP_DISABLE_AREAFLAG)) if (!IsVMAPDisabledForPtr(mapId, VMAP_DISABLE_AREAFLAG))
data.areaInfo.emplace(info.hitInstance->adtId, info.rootId, info.hitModel->GetWmoID(), info.hitModel->GetMogpFlags()); data.areaInfo.emplace(info.hitModel->GetWmoID(), info.hitInstance->adtId, info.rootId, info.hitModel->GetMogpFlags(), info.hitInstance->ID);
return true;
} }
} }
return false;
} }
WorldModel* VMapMgr2::acquireModelInstance(const std::string& basepath, const std::string& filename, uint32 flags/* Only used when creating the model */) WorldModel* VMapMgr2::acquireModelInstance(const std::string& basepath, const std::string& filename, uint32 flags/* Only used when creating the model */)

View File

@@ -115,9 +115,7 @@ namespace VMAP
bool processCommand(char* /*command*/) override { return false; } // for debug and extensions bool processCommand(char* /*command*/) override { return false; } // for debug and extensions
bool GetAreaInfo(uint32 pMapId, float x, float y, float& z, uint32& flags, int32& adtId, int32& rootId, int32& groupId) const override; bool GetAreaAndLiquidData(uint32 mapId, float x, float y, float z, Optional<uint8> reqLiquidType, AreaAndLiquidData& data) const override;
bool GetLiquidLevel(uint32 pMapId, float x, float y, float z, uint8 reqLiquidType, float& level, float& floor, uint32& type, uint32& mogpFlags) const override;
void GetAreaAndLiquidData(uint32 mapId, float x, float y, float z, uint8 reqLiquidType, AreaAndLiquidData& data) const override;
WorldModel* acquireModelInstance(const std::string& basepath, const std::string& filename, uint32 flags); WorldModel* acquireModelInstance(const std::string& basepath, const std::string& filename, uint32 flags);
void releaseModelInstance(const std::string& filename); void releaseModelInstance(const std::string& filename);

View File

@@ -51,22 +51,6 @@ namespace VMAP
bool hit; bool hit;
}; };
class AreaInfoCallback
{
public:
AreaInfoCallback(ModelInstance* val): prims(val) {}
void operator()(const Vector3& point, uint32 entry)
{
#if defined(VMAP_DEBUG)
LOG_DEBUG("maps", "AreaInfoCallback: trying to intersect '{}'", prims[entry].name);
#endif
prims[entry].intersectPoint(point, aInfo);
}
ModelInstance* prims;
AreaInfo aInfo;
};
class LocationInfoCallback class LocationInfoCallback
{ {
public: public:
@@ -99,22 +83,6 @@ namespace VMAP
return tilefilename.str(); return tilefilename.str();
} }
bool StaticMapTree::GetAreaInfo(Vector3& pos, uint32& flags, int32& adtId, int32& rootId, int32& groupId) const
{
AreaInfoCallback intersectionCallBack(iTreeValues);
iTree.intersectPoint(pos, intersectionCallBack);
if (intersectionCallBack.aInfo.result)
{
flags = intersectionCallBack.aInfo.flags;
adtId = intersectionCallBack.aInfo.adtId;
rootId = intersectionCallBack.aInfo.rootId;
groupId = intersectionCallBack.aInfo.groupId;
pos.z = intersectionCallBack.aInfo.ground_Z;
return true;
}
return false;
}
bool StaticMapTree::GetLocationInfo(const Vector3& pos, LocationInfo& info) const bool StaticMapTree::GetLocationInfo(const Vector3& pos, LocationInfo& info) const
{ {
LocationInfoCallback intersectionCallBack(iTreeValues, info); LocationInfoCallback intersectionCallBack(iTreeValues, info);

View File

@@ -30,6 +30,12 @@ namespace VMAP
enum class ModelIgnoreFlags : uint32; enum class ModelIgnoreFlags : uint32;
enum class LoadResult : uint8; enum class LoadResult : uint8;
struct GroupLocationInfo
{
const GroupModel* hitModel = nullptr;
int32 rootId = -1;
};
struct LocationInfo struct LocationInfo
{ {
LocationInfo(): ground_Z(-G3D::inf()) { } LocationInfo(): ground_Z(-G3D::inf()) { }
@@ -73,7 +79,6 @@ namespace VMAP
[[nodiscard]] bool isInLineOfSight(const G3D::Vector3& pos1, const G3D::Vector3& pos2, ModelIgnoreFlags ignoreFlags) const; [[nodiscard]] bool isInLineOfSight(const G3D::Vector3& pos1, const G3D::Vector3& pos2, ModelIgnoreFlags ignoreFlags) const;
bool GetObjectHitPos(const G3D::Vector3& pos1, const G3D::Vector3& pos2, G3D::Vector3& pResultHitPos, float pModifyDist) const; bool GetObjectHitPos(const G3D::Vector3& pos1, const G3D::Vector3& pos2, G3D::Vector3& pResultHitPos, float pModifyDist) const;
[[nodiscard]] float getHeight(const G3D::Vector3& pPos, float maxSearchDist) const; [[nodiscard]] float getHeight(const G3D::Vector3& pPos, float maxSearchDist) const;
bool GetAreaInfo(G3D::Vector3& pos, uint32& flags, int32& adtId, int32& rootId, int32& groupId) const;
bool GetLocationInfo(const G3D::Vector3& pos, LocationInfo& info) const; bool GetLocationInfo(const G3D::Vector3& pos, LocationInfo& info) const;
bool InitMap(const std::string& fname, VMapMgr2* vm); bool InitMap(const std::string& fname, VMapMgr2* vm);

View File

@@ -203,27 +203,6 @@ bool GameObjectModel::intersectRay(const G3D::Ray& ray, float& MaxDist, bool Sto
return hit; return hit;
} }
void GameObjectModel::IntersectPoint(G3D::Vector3 const& point, VMAP::AreaInfo& info, uint32 ph_mask) const
{
if (!(phasemask & ph_mask) || !owner->IsSpawned() || !IsMapObject())
return;
if (!iBound.contains(point))
return;
// child bounds are defined in object space:
Vector3 pModel = iInvRot * (point - iPos) * iInvScale;
Vector3 zDirModel = iInvRot * Vector3(0.f, 0.f, -1.f);
float zDist;
if (iModel->IntersectPoint(pModel, zDirModel, zDist, info))
{
Vector3 modelGround = pModel + zDist * zDirModel;
float world_Z = ((modelGround * iInvRot) * iScale + iPos).z;
if (info.ground_Z < world_Z)
info.ground_Z = world_Z;
}
}
bool GameObjectModel::GetLocationInfo(G3D::Vector3 const& point, VMAP::LocationInfo& info, uint32 ph_mask) const bool GameObjectModel::GetLocationInfo(G3D::Vector3 const& point, VMAP::LocationInfo& info, uint32 ph_mask) const
{ {
if (!(phasemask & ph_mask) || !owner->IsSpawned() || !IsMapObject()) if (!(phasemask & ph_mask) || !owner->IsSpawned() || !IsMapObject())
@@ -236,7 +215,9 @@ bool GameObjectModel::GetLocationInfo(G3D::Vector3 const& point, VMAP::LocationI
Vector3 pModel = iInvRot * (point - iPos) * iInvScale; Vector3 pModel = iInvRot * (point - iPos) * iInvScale;
Vector3 zDirModel = iInvRot * Vector3(0.f, 0.f, -1.f); Vector3 zDirModel = iInvRot * Vector3(0.f, 0.f, -1.f);
float zDist; float zDist;
if (iModel->GetLocationInfo(pModel, zDirModel, zDist, info))
VMAP::GroupLocationInfo groupInfo;
if (iModel->GetLocationInfo(pModel, zDirModel, zDist, groupInfo))
{ {
Vector3 modelGround = pModel + zDist * zDirModel; Vector3 modelGround = pModel + zDist * zDirModel;
float world_Z = ((modelGround * iInvRot) * iScale + iPos).z; float world_Z = ((modelGround * iInvRot) * iScale + iPos).z;

View File

@@ -70,7 +70,6 @@ public:
[[nodiscard]] bool IsMapObject() const { return isWmo; } [[nodiscard]] bool IsMapObject() const { return isWmo; }
bool intersectRay(const G3D::Ray& Ray, float& MaxDist, bool StopAtFirstHit, uint32 ph_mask, VMAP::ModelIgnoreFlags ignoreFlags) const; bool intersectRay(const G3D::Ray& Ray, float& MaxDist, bool StopAtFirstHit, uint32 ph_mask, VMAP::ModelIgnoreFlags ignoreFlags) const;
void IntersectPoint(G3D::Vector3 const& point, VMAP::AreaInfo& info, uint32 ph_mask) const;
bool GetLocationInfo(G3D::Vector3 const& point, VMAP::LocationInfo& info, uint32 ph_mask) const; bool GetLocationInfo(G3D::Vector3 const& point, VMAP::LocationInfo& info, uint32 ph_mask) const;
bool GetLiquidLevel(G3D::Vector3 const& point, VMAP::LocationInfo& info, float& liqHeight) const; bool GetLiquidLevel(G3D::Vector3 const& point, VMAP::LocationInfo& info, float& liqHeight) const;

View File

@@ -63,44 +63,6 @@ namespace VMAP
return hit; return hit;
} }
void ModelInstance::intersectPoint(const G3D::Vector3& p, AreaInfo& info) const
{
if (!iModel)
{
#ifdef VMAP_DEBUG
std::cout << "<object not loaded>\n";
#endif
return;
}
// M2 files don't contain area info, only WMO files
if (flags & MOD_M2)
{
return;
}
if (!iBound.contains(p))
{
return;
}
// child bounds are defined in object space:
Vector3 pModel = iInvRot * (p - iPos) * iInvScale;
Vector3 zDirModel = iInvRot * Vector3(0.f, 0.f, -1.f);
float zDist;
if (iModel->IntersectPoint(pModel, zDirModel, zDist, info))
{
Vector3 modelGround = pModel + zDist * zDirModel;
// Transform back to world space. Note that:
// Mat * vec == vec * Mat.transpose()
// and for rotation matrices: Mat.inverse() == Mat.transpose()
float world_Z = ((modelGround * iInvRot) * iScale + iPos).z;
if (info.ground_Z < world_Z)
{
info.ground_Z = world_Z;
info.adtId = adtId;
}
}
}
bool ModelInstance::GetLocationInfo(const G3D::Vector3& p, LocationInfo& info) const bool ModelInstance::GetLocationInfo(const G3D::Vector3& p, LocationInfo& info) const
{ {
if (!iModel) if (!iModel)
@@ -124,7 +86,9 @@ namespace VMAP
Vector3 pModel = iInvRot * (p - iPos) * iInvScale; Vector3 pModel = iInvRot * (p - iPos) * iInvScale;
Vector3 zDirModel = iInvRot * Vector3(0.f, 0.f, -1.f); Vector3 zDirModel = iInvRot * Vector3(0.f, 0.f, -1.f);
float zDist; float zDist;
if (iModel->GetLocationInfo(pModel, zDirModel, zDist, info))
GroupLocationInfo groupInfo;
if (iModel->GetLocationInfo(pModel, zDirModel, zDist, groupInfo))
{ {
Vector3 modelGround = pModel + zDist * zDirModel; Vector3 modelGround = pModel + zDist * zDirModel;
// Transform back to world space. Note that: // Transform back to world space. Note that:
@@ -133,6 +97,8 @@ namespace VMAP
float world_Z = ((modelGround * iInvRot) * iScale + iPos).z; float world_Z = ((modelGround * iInvRot) * iScale + iPos).z;
if (info.ground_Z < world_Z) // hm...could it be handled automatically with zDist at intersection? if (info.ground_Z < world_Z) // hm...could it be handled automatically with zDist at intersection?
{ {
info.rootId = groupInfo.rootId;
info.hitModel = groupInfo.hitModel;
info.ground_Z = world_Z; info.ground_Z = world_Z;
info.hitInstance = this; info.hitInstance = this;
return true; return true;

View File

@@ -66,7 +66,6 @@ namespace VMAP
ModelInstance(const ModelSpawn& spawn, WorldModel* model); ModelInstance(const ModelSpawn& spawn, WorldModel* model);
void setUnloaded() { iModel = nullptr; } void setUnloaded() { iModel = nullptr; }
bool intersectRay(const G3D::Ray& pRay, float& pMaxDist, bool StopAtFirstHit, ModelIgnoreFlags ignoreFlags) const; bool intersectRay(const G3D::Ray& pRay, float& pMaxDist, bool StopAtFirstHit, ModelIgnoreFlags ignoreFlags) const;
void intersectPoint(const G3D::Vector3& p, AreaInfo& info) const;
bool GetLocationInfo(const G3D::Vector3& p, LocationInfo& info) const; bool GetLocationInfo(const G3D::Vector3& p, LocationInfo& info) const;
bool GetLiquidLevel(const G3D::Vector3& p, LocationInfo& info, float& liqHeight) const; bool GetLiquidLevel(const G3D::Vector3& p, LocationInfo& info, float& liqHeight) const;
WorldModel* getWorldModel() { return iModel; } WorldModel* getWorldModel() { return iModel; }

View File

@@ -20,9 +20,9 @@
#include "ModelIgnoreFlags.h" #include "ModelIgnoreFlags.h"
#include "ModelInstance.h" #include "ModelInstance.h"
#include "VMapDefinitions.h" #include "VMapDefinitions.h"
#include <array>
using G3D::Vector3; using G3D::Vector3;
using G3D::Ray;
template<> struct BoundsTrait<VMAP::GroupModel> template<> struct BoundsTrait<VMAP::GroupModel>
{ {
@@ -451,21 +451,46 @@ namespace VMAP
return callback.hit; return callback.hit;
} }
bool GroupModel::IsInsideObject(const Vector3& pos, const Vector3& down, float& z_dist) const inline bool IsInsideOrAboveBound(G3D::AABox const& bounds, const G3D::Point3& point)
{ {
if (triangles.empty() || !iBound.contains(pos)) return point.x >= bounds.low().x
&& point.y >= bounds.low().y
&& point.z >= bounds.low().z
&& point.x <= bounds.high().x
&& point.y <= bounds.high().y;
}
GroupModel::InsideResult GroupModel::IsInsideObject(G3D::Ray const& ray, float& z_dist) const
{
if (triangles.empty() || !IsInsideOrAboveBound(iBound, ray.origin()))
return OUT_OF_BOUNDS;
if (meshTree.bound().high().z >= ray.origin().z)
{ {
return false; float dist = G3D::finf();
if (IntersectRay(ray, dist, false))
{
z_dist = dist - 0.1f;
return INSIDE;
}
if (meshTree.bound().contains(ray.origin()))
return MAYBE_INSIDE;
} }
Vector3 rPos = pos - 0.1f * down; else
float dist = G3D::inf();
G3D::Ray ray(rPos, down);
bool hit = IntersectRay(ray, dist, false);
if (hit)
{ {
z_dist = dist - 0.1f; // some group models don't have any floor to intersect with
// so we should attempt to intersect with a model part below this group
// then find back where we originated from (in WorldModel::GetLocationInfo)
float dist = G3D::finf();
float delta = ray.origin().z - meshTree.bound().high().z;
if (IntersectRay(ray.bumpedRay(delta), dist, false))
{
z_dist = dist - 0.1f + delta;
return ABOVE;
}
} }
return hit;
return OUT_OF_BOUNDS;
} }
bool GroupModel::GetLiquidLevel(const Vector3& pos, float& liqHeight) const bool GroupModel::GetLiquidLevel(const Vector3& pos, float& liqHeight) const
@@ -541,76 +566,58 @@ namespace VMAP
class WModelAreaCallback class WModelAreaCallback
{ {
public: public:
WModelAreaCallback(const std::vector<GroupModel>& vals, const Vector3& down): WModelAreaCallback(std::vector<GroupModel> const& vals) :
prims(vals.begin()), hit(vals.end()), minVol(G3D::inf()), zDist(G3D::inf()), zVec(down) { } prims(vals), hit() { }
std::vector<GroupModel>::const_iterator prims; std::vector<GroupModel> const& prims;
std::vector<GroupModel>::const_iterator hit; std::array<GroupModel const*, 3> hit;
float minVol; bool operator()(G3D::Ray const& ray, uint32 entry, float& distance, bool /*stopAtFirstHit*/)
float zDist;
Vector3 zVec;
void operator()(const Vector3& point, uint32 entry)
{ {
float group_Z; float group_Z;
//float pVol = prims[entry].GetBound().volume(); if (GroupModel::InsideResult result = prims[entry].IsInsideObject(ray, group_Z); result != GroupModel::OUT_OF_BOUNDS)
//if (pVol < minVol)
//{
/* if (prims[entry].iBound.contains(point)) */
if (prims[entry].IsInsideObject(point, zVec, group_Z))
{ {
//minVol = pVol; if (result != GroupModel::MAYBE_INSIDE)
//hit = prims + entry;
if (group_Z < zDist)
{ {
zDist = group_Z; if (group_Z < distance)
hit = prims + entry; {
distance = group_Z;
hit[result] = &prims[entry];
return true;
}
} }
#ifdef VMAP_DEBUG else
const GroupModel& gm = prims[entry]; hit[result] = &prims[entry];
printf("%10u %8X %7.3f, %7.3f, %7.3f | %7.3f, %7.3f, %7.3f | z=%f, p_z=%f\n", gm.GetWmoID(), gm.GetMogpFlags(),
gm.GetBound().low().x, gm.GetBound().low().y, gm.GetBound().low().z,
gm.GetBound().high().x, gm.GetBound().high().y, gm.GetBound().high().z, group_Z, point.z);
#endif
} }
//} return false;
//std::cout << "trying to intersect '" << prims[entry].name << "'\n";
} }
}; };
bool WorldModel::IntersectPoint(const G3D::Vector3& p, const G3D::Vector3& down, float& dist, AreaInfo& info) const bool WorldModel::GetLocationInfo(const G3D::Vector3& p, const G3D::Vector3& down, float& dist, GroupLocationInfo& info) const
{ {
if (groupModels.empty()) if (groupModels.empty())
{ {
return false; return false;
} }
WModelAreaCallback callback(groupModels, down); WModelAreaCallback callback(groupModels);
groupTree.intersectPoint(p, callback); G3D::Ray r(p - down * 0.1f, down);
if (callback.hit != groupModels.end()) float zDist = groupTree.bound().extent().length();
groupTree.intersectRay(r, callback, zDist, false);
if (callback.hit[GroupModel::INSIDE])
{ {
info.rootId = RootWMOID; info.rootId = RootWMOID;
info.groupId = callback.hit->GetWmoID(); info.hitModel = callback.hit[GroupModel::INSIDE];
info.flags = callback.hit->GetMogpFlags(); dist = zDist;
info.result = true;
dist = callback.zDist;
return true; return true;
} }
return false;
}
bool WorldModel::GetLocationInfo(const G3D::Vector3& p, const G3D::Vector3& down, float& dist, LocationInfo& info) const // some group models don't have any floor to intersect with
{ // so we should attempt to intersect with a model part below the group `p` is in (stored in GroupModel::ABOVE)
if (groupModels.empty()) // then find back where we originated from (GroupModel::MAYBE_INSIDE)
{ if (callback.hit[GroupModel::MAYBE_INSIDE] && callback.hit[GroupModel::ABOVE])
return false;
}
WModelAreaCallback callback(groupModels, down);
groupTree.intersectPoint(p, callback);
if (callback.hit != groupModels.end())
{ {
info.rootId = RootWMOID; info.rootId = RootWMOID;
info.hitModel = &(*callback.hit); info.hitModel = callback.hit[GroupModel::MAYBE_INSIDE];
dist = callback.zDist; dist = zDist;
return true; return true;
} }
return false; return false;

View File

@@ -29,6 +29,7 @@ namespace VMAP
class TreeNode; class TreeNode;
struct AreaInfo; struct AreaInfo;
struct LocationInfo; struct LocationInfo;
struct GroupLocationInfo;
enum class ModelIgnoreFlags : uint32; enum class ModelIgnoreFlags : uint32;
class MeshTriangle class MeshTriangle
@@ -81,12 +82,14 @@ namespace VMAP
void setMeshData(std::vector<G3D::Vector3>& vert, std::vector<MeshTriangle>& tri); void setMeshData(std::vector<G3D::Vector3>& vert, std::vector<MeshTriangle>& tri);
void setLiquidData(WmoLiquid*& liquid) { iLiquid = liquid; liquid = nullptr; } void setLiquidData(WmoLiquid*& liquid) { iLiquid = liquid; liquid = nullptr; }
bool IntersectRay(const G3D::Ray& ray, float& distance, bool stopAtFirstHit) const; bool IntersectRay(const G3D::Ray& ray, float& distance, bool stopAtFirstHit) const;
bool IsInsideObject(const G3D::Vector3& pos, const G3D::Vector3& down, float& z_dist) const; enum InsideResult { INSIDE = 0, MAYBE_INSIDE = 1, ABOVE = 2, OUT_OF_BOUNDS = -1 };
InsideResult IsInsideObject(G3D::Ray const& ray, float& z_dist) const;
bool GetLiquidLevel(const G3D::Vector3& pos, float& liqHeight) const; bool GetLiquidLevel(const G3D::Vector3& pos, float& liqHeight) const;
[[nodiscard]] uint32 GetLiquidType() const; [[nodiscard]] uint32 GetLiquidType() const;
bool writeToFile(FILE* wf); bool writeToFile(FILE* wf);
bool readFromFile(FILE* rf); bool readFromFile(FILE* rf);
[[nodiscard]] const G3D::AABox& GetBound() const { return iBound; } [[nodiscard]] G3D::AABox const& GetBound() const { return iBound; }
[[nodiscard]] G3D::AABox const& GetMeshTreeBound() const { return meshTree.bound(); }
[[nodiscard]] uint32 GetMogpFlags() const { return iMogpFlags; } [[nodiscard]] uint32 GetMogpFlags() const { return iMogpFlags; }
[[nodiscard]] uint32 GetWmoID() const { return iGroupWMOID; } [[nodiscard]] uint32 GetWmoID() const { return iGroupWMOID; }
void GetMeshData(std::vector<G3D::Vector3>& outVertices, std::vector<MeshTriangle>& outTriangles, WmoLiquid*& liquid); void GetMeshData(std::vector<G3D::Vector3>& outVertices, std::vector<MeshTriangle>& outTriangles, WmoLiquid*& liquid);
@@ -109,8 +112,7 @@ namespace VMAP
void setGroupModels(std::vector<GroupModel>& models); void setGroupModels(std::vector<GroupModel>& models);
void setRootWmoID(uint32 id) { RootWMOID = id; } void setRootWmoID(uint32 id) { RootWMOID = id; }
bool IntersectRay(const G3D::Ray& ray, float& distance, bool stopAtFirstHit, ModelIgnoreFlags ignoreFlags) const; bool IntersectRay(const G3D::Ray& ray, float& distance, bool stopAtFirstHit, ModelIgnoreFlags ignoreFlags) const;
bool IntersectPoint(const G3D::Vector3& p, const G3D::Vector3& down, float& dist, AreaInfo& info) const; bool GetLocationInfo(const G3D::Vector3& p, const G3D::Vector3& down, float& dist, GroupLocationInfo& info) const;
bool GetLocationInfo(const G3D::Vector3& p, const G3D::Vector3& down, float& dist, LocationInfo& info) const;
bool writeFile(const std::string& filename); bool writeFile(const std::string& filename);
bool readFile(const std::string& filename); bool readFile(const std::string& filename);
void GetGroupModels(std::vector<GroupModel>& outGroupModels); void GetGroupModels(std::vector<GroupModel>& outGroupModels);

View File

@@ -1,5 +1,5 @@
/* /*
* Copyright (C) 2016+ AzerothCore <www.azerothcore.org>, released under GNU AGPL v3 license: https://github.com/azerothcore/azerothcore-wotlk/blob/master/LICENSE # Copyright (C) 2016+ AzerothCore <www.azerothcore.org>
* *
* This file was based on * This file was based on
* https://embeddedartistry.com/blog/2017/05/17/creating-a-circular-buffer-in-c-and-c/ * https://embeddedartistry.com/blog/2017/05/17/creating-a-circular-buffer-in-c-and-c/

View File

@@ -1,5 +1,5 @@
/* /*
* Originally written by Rochet2 - Copyright (C) 2018+ AzerothCore <www.azerothcore.org>, released under GNU AGPL v3 license: http://github.com/azerothcore/azerothcore-wotlk/blob/master/LICENSE * Originally written by Rochet2 - Copyright (C) 2018+ AzerothCore <www.azerothcore.org>
*/ */
#ifndef _DATA_MAP_H_ #ifndef _DATA_MAP_H_

View File

@@ -97,32 +97,6 @@ public:
return _eventMap.empty(); return _eventMap.empty();
} }
/**
* @return Current internal time as uint32 milliseconds
*
* was removed in core https://github.com/azerothcore/azerothcore-wotlk/pull/23121,
* but still required atm for mod-playerbot.
*/
uint32 GetTimer() const
{
return static_cast<uint32>(duration_cast<Milliseconds>(_time.time_since_epoch()).count());
}
/**
* @return Time of found even
*
* was removed in core https://github.com/azerothcore/azerothcore-wotlk/pull/23121,
* but still required atm for mod-playerbot.
*/
uint32 GetNextEventTime(uint16 eventId) const
{
auto timeUntil = GetTimeUntilEvent(eventId);
if (timeUntil == Milliseconds::max())
return 0;
return GetTimer() + static_cast<uint32>(timeUntil.count());
}
/** /**
* @name SetPhase * @name SetPhase
* @brief Sets the phase of the map (absolute). * @brief Sets the phase of the map (absolute).

View File

@@ -120,7 +120,7 @@ class EventProcessor
[[nodiscard]] uint64 CalculateQueueTime(uint64 delay) const; [[nodiscard]] uint64 CalculateQueueTime(uint64 delay) const;
void CancelEventGroup(uint8 group); void CancelEventGroup(uint8 group);
bool HaveEventList() const { return !m_events.empty(); } bool HasEvents() const { return !m_events.empty(); }
protected: protected:
uint64 m_time{0}; uint64 m_time{0};

View File

@@ -347,7 +347,6 @@ inline wchar_t wcharToLower(wchar_t wchar)
void wstrToUpper(std::wstring& str); void wstrToUpper(std::wstring& str);
void wstrToLower(std::wstring& str); void wstrToLower(std::wstring& str);
void strToLower(std::string& str);
std::wstring GetMainPartOfName(std::wstring const& wname, uint32 declension); std::wstring GetMainPartOfName(std::wstring const& wname, uint32 declension);

View File

@@ -718,7 +718,6 @@ Logger.spells.scripts=2,Console Errors
Logger.playerbots=5,Console Playerbots Logger.playerbots=5,Console Playerbots
#Logger.achievement=4,Console Server #Logger.achievement=4,Console Server
#Logger.addon=4,Console Server #Logger.addon=4,Console Server
#Logger.ahbot=4,Console Server
#Logger.auctionHouse=4,Console Server #Logger.auctionHouse=4,Console Server
#Logger.autobroadcast=4, Console Server #Logger.autobroadcast=4, Console Server
#Logger.bg.arena=4,Console Server #Logger.bg.arena=4,Console Server

Some files were not shown because too many files have changed in this diff Show More