Commit Graph

37636 Commits

Author SHA1 Message Date
offl
87b8a9a843 DB/SAI: Fix some wrong values in timed action lists
Closes #24693
Closes #24692

(cherry picked from commit 82dc3a2aef)
2022-01-06 19:10:52 +01:00
Killyana
c253e191ef DB/Creature: Remove Ossirian Crystal Trigger as spawned by script
Closes #24681

(cherry picked from commit 9683ce99eb)
2022-01-06 19:09:58 +01:00
NoName
145756a231 Scripts/RuinsOfAhnQiraj: Crystal handling (#24679)
+ make crystal usable with animation and despawn after use;
+ small code update;
+ spell rearrange;
+ define some magic numbers;
+ update crystal coordinates from sniffed data

(cherry picked from commit 89193c3548)
2022-01-06 19:09:28 +01:00
Gildor
e826909498 Scripts/Icecrown Citadel: Fix Sindragosa movement when Wipe in fly phase (#24665)
(cherry picked from commit dd3fbf426c)
2022-01-06 19:08:14 +01:00
NoName
a4b3e694e8 Entities/Player: Restore old checks for UpdatePvPFlag (#24372)
Partly revert 671052575a
+ implemented timer reset to 300s after relog never worked, therefore removing that part;
+ reverting other parts with 300s timer changes, as not needed;

(cherry picked from commit 2efaf1dda8)
2022-01-06 19:05:04 +01:00
Killyana
ecf0bef111 DB/Quest: Birds of a Feather
Closes #24687

(cherry picked from commit e0b0586afc)
2022-01-06 18:56:26 +01:00
Killyana
8571a22017 DB/Quest: Convert "HELP!" & "Corki's Gone Missing Again!" & "Cho'war the Pillager" to SAI
Closes #24649

(cherry picked from commit fd66e291b5)
2022-01-06 18:55:13 +01:00
Killyana
b7b5122b88 DB/GameObject: Remove Jump-a-tron 4000 from the DB
Ref #24668

(cherry picked from commit 5ba021844d)
2022-01-06 18:54:35 +01:00
offl
164dcc4deb DB/Quest: Convert & update support for 'Prisoners of Wyrmskull' to SAI
Closes #24650

(cherry picked from commit 2008cb7dd3)
2022-01-06 18:53:52 +01:00
offl
f3e262a056 DB/GameObject: Convert & update support for Shrine of the Eagle / Falcon / Hawk to SAI
Closes #24647

(cherry picked from commit 0cfd63fd26)
2022-01-06 18:53:11 +01:00
offl
fbcfb505f4 DB/Creature: Convert Sayge to SAI
Closes #24663

(cherry picked from commit 626aeb5817)
2022-01-06 18:52:14 +01:00
jackpoz
9e0e52f023 Scripts/Misc: Fix issues reported by ASan
(cherry picked from commit 013301088d)
2022-01-06 16:22:58 +01:00
offl
3f8b488071 DB/GameObject: Convert & update support for Tablet of Madness
Closes #24670

(cherry picked from commit 9c1c34a794)
2022-01-06 16:22:42 +01:00
Giacomo Pozzoni
07863a7a68 Core/Creature: Allow to disable HP regen in Raids even if the target is unreachable (#24646)
(cherry picked from commit 247564a7ab)
2022-01-06 16:12:51 +01:00
Killyana
876d9f52ec DB/GameObject: Convert & update support for Jump-a-tron 4000 to DB script
Closes #24668

(cherry picked from commit 6b9a14ca94)
2022-01-06 16:06:40 +01:00
offl
a4016b9767 DB/Loot: Remove loot from creature Water Terror
Closes #24671

(cherry picked from commit abd8140681)
2022-01-06 16:05:56 +01:00
offl
070da4f711 DB/Quest: Convert Escape from Umbrafen to SAI
Closes #24648

(cherry picked from commit cfe6b651bc)
2022-01-06 16:05:08 +01:00
offl
88b6ed2992 DB/Quest: Convert & update support for 'Hypercapacitor Gizmo' to SAI
Closes #24640

(cherry picked from commit cc5bea023a)
2022-01-06 16:01:38 +01:00
offl
cb0c4ff01e DB/Creature: Remove static spawns of Arcane Fiend & Amani Bear Mount
Closes #24662

(cherry picked from commit 97319c7c19)
2022-01-06 16:00:27 +01:00
offl
6eb7ed4490 DB/GameObject: Convert & update support for Fel & Bash'ir crystalforges
Closes #24643

(cherry picked from commit c3e4420a2b)
2022-01-06 15:59:18 +01:00
offl
aea428cd51 DB/Quest: Convert support for 'Strength of One' to SAI
Closes #24641

(cherry picked from commit 44aba5dcdf)
2022-01-06 15:57:22 +01:00
offl
6fc2c62883 DB/Creature: Bogblossom Bunny
Closes #24623

(cherry picked from commit ea05844c59)
2022-01-06 15:56:35 +01:00
Shauren
0e586bb476 Core/Quests: Add missing GO_DYNFLAG_LO_ACTIVATE to lootable chests related to quests but not having quest loot
Closes #24474

(cherry picked from commit a26304478d)
2022-01-06 00:31:29 +01:00
Shauren
b1a1e552d2 Core/Quests: Fixed gameobject sparkle state for lootable quest items by moving ItemAddedQuestCheck/ItemRemovedQuestCheck after item is added/removed
This is neccessary so that GameObject::BuildValuesUpdate from BuildValuesUpdateBlockForPlayer picks up correct inventory state and sets GO_DYNFLAG_LO_ACTIVATE

(cherry picked from commit 449bd9058b)
2022-01-06 00:30:02 +01:00
Keader
192cd48b21 Scripts/ICC: Fixed duplicated call of reputation spell
(cherry picked from commit 99c457c270)
2022-01-06 00:23:58 +01:00
Keader
26844d32c3 Scripts/ICC: Fixed Deathbringer/Valithria reputation handler + codestyle fixes
* Added correct reputation spell for both bosses
* Fixed debuffs remove when deathbringer dies (it also fix recount)
* Changed all DoCast(me, xxx) -> DoCastSelf(xx)
* Removed old reputation hack in DB
* Fixed my OCD with spells enum :)

(cherry picked from commit d1e1b8753c)
2022-01-06 00:23:47 +01:00
NoName
860e489c4f Scripts/RazorfenDowns: quest "Extinguishing the Idol" (#24658)
(cherry picked from commit 868748007d)
2022-01-06 00:23:11 +01:00
NoName
7facbec01e Core/Objects: Add GOSummonType argument to SummonGameObject accepting XYZ arguments instead of Position (#24655)
(cherry picked from commit d2b88fbd50)
2022-01-06 00:22:44 +01:00
offl
28bc3a68fd DB/Quest: Finding the Survivors
Update the los event
Ref #24636

(cherry picked from commit 2152293d88)
2022-01-06 00:22:29 +01:00
Killyana
17bc169e95 DB/SAI: Fel Guard Hound
Ref #24638

(cherry picked from commit 2665fd5ab5)
2022-01-06 00:21:43 +01:00
offl
a0bee07b0c DB/Quest: Convert & update support for 'Shizz Work' to SAI
Closes #24638

(cherry picked from commit 049cba3ace)
2022-01-06 00:21:07 +01:00
offl
b217e5842f DB/Quest: Convert & update support for 'Finding the Survivors' to SAI
Closes #24636

(cherry picked from commit 2815db52a6)
2022-01-06 00:20:41 +01:00
offl
692163493c DB/Creature: Convert & update support for Ashyen & Keleth to SAI
Closes #24635

(cherry picked from commit a2068cade5)
2022-01-06 00:20:02 +01:00
offl
2071de8fad DB/Loot: Remove item Carved Ivory Bone from creatures loot
Closes #24624

(cherry picked from commit 7b4b04653b)
2022-01-05 22:42:17 +01:00
offl
4e625bcde7 DB/SAI: Fix event flags for "Discovering Your Roots" script
Closes #24622

(cherry picked from commit 73f7a78a33)
2022-01-05 22:41:42 +01:00
killerwife
c9b13f1897 MMAP: Build ADT floor just like WMO floor below liquid (#27503)
Fixes ocean floor pathfinding

(cherry picked from commit 8a779268b6)
2022-01-04 20:44:26 +01:00
Giacomo Pozzoni
feb36f3f7d Tools/MMAPs: Show an error when running mmaps_generator built in Debug mode (#27412)
* Tools/MMAPs: Show an error when running mmaps_generator built in Debug mode

* Fix GCC build

(cherry picked from commit 8c80f28581)
2022-01-04 20:44:26 +01:00
jackpoz
071a8b5b7d Core/Misc: Remove whitespace
(cherry picked from commit 869fb748cd)
2022-01-04 20:44:26 +01:00
jackpoz
be7acb2527 Core/MMAPs: Reduce chances of breaking tile connections
Reduce chances of breaking tile connections caused by floating point rounding issues.

(cherry picked from commit e615e2ddef)
2022-01-04 20:44:26 +01:00
killerwife
dbb7f65723 Vmap: Introduce skipping of antiportals and unreachable mogp (#26331)
* Vmap: Introduce skipping of antiportals and unreachable mogp

* Reduce differences with master branch

* Update VMAP and MMAP versions

* Update MMAPs version

Co-authored-by: jackpoz <giacomopoz@gmail.com>
(cherry picked from commit d5f1fefe7f)
2022-01-04 20:44:25 +01:00
killerwife
2467f799bb MapExtraction: Fix water height redundancy algorithm ignoring "no water" (#26324)
* MapExtraction: Fix water height redundancy algorithm ignoring "no water"

* Update MMAP_VERSION

* Change map version

Co-authored-by: jackpoz <giacomopoz@gmail.com>
(cherry picked from commit 00da074109)
2022-01-04 20:44:25 +01:00
Giacomo Pozzoni
1ba940b17a Core/Maps: Change .map file version from FourCC to uint32 (#26326)
(cherry picked from commit 42877e75e2)
2022-01-04 20:44:25 +01:00
Giacomo Pozzoni
89e183704c Improve multithreading of mmaps_generator (#25625)
* Build/Misc: Add a few *San CMake flags

Add the following flags for the related tools:
- MSAN for Memory Sanitizer
- UBSAN for Undefined Behavior Sanitizer
- TSAN for Thread Sanitizer

* Remove unused parameter

* Fix UBSan reported issue

* Disable G3D buffer pools when using Thread Sanitizer as it has its custom locking mechanisms

* Code cleanup

* Move threads from maps to tiles

* Move tile building logic to TileBuilder class

* Fix memory leak in TileBuilder

* Fix build

* Store TileBuilder as raw pointer for now, it will be changed later on to use modern C++ constructs

* Fix crash on shutdown

* Revert pvs-studio change

* Fix generating 1 single tile not closing the program

(cherry picked from commit a4e93d779c)
2022-01-04 20:44:25 +01:00
Shauren
1d0ca1106f Tools/mmaps_generator: Made loading vmaps by mmaps_generator threadsafe 2022-01-04 20:44:22 +01:00
jackpoz
3820aabcd8 Core/MMAPs: Restore single slope angle of 55°
Re-generating MMAPs IS required.
Partially reverts 995a443da2 .

Having 2 different slope angles of 55° and 85° created too many polygons to fit in the current mmtile structure. This caused some polygons to become disconnected from each other, creating the old "invisible walls" effect. Because of this and because of the performance hit when loading a mmtile caused by the increase of polygon numbers, this commit reverts the recent changes and sets by default the slope angle to 55°.
Feel free to restore the previous behaviour by running .\mmaps_generator --maxAngle 85 --maxAngleNotSteep 55 , specifying the map id as number if a single map should have different slope values.
This is the last commit that will change MMAPs version to force re-generating them. Any future change that will affect only the generation settings will be optional (but recommended).

(cherry picked from commit 3947e4cb57)
2022-01-04 20:44:02 +01:00
jackpoz
ddcbc01a65 Core/MMAPs: Fix small steps being considered as NAV_AREA_GROUND_STEEP
(cherry picked from commit 3ac1992afb)
2022-01-04 20:44:02 +01:00
Giacomo Pozzoni
782a943b38 Tools/MMapsGenerator: Add some more input parameters to improve mmaps load performances (#25520)
* Some research about mmaps load performances

* Tools/MMapsGenerator: Add some more input parameters

Add some more input parameters which affect the resulting mmaps:
- --smallOutputSize: sets both walkableSlopeAngle and walkableSlopeAngleNotSteep to 55°, reducing by a lot the .mmtile size and the number of polys. A rcFilterLedgeSpans() call is included too to filter out some polys. Default to false.
- --maxAngle: Restore this parameter removed some commits ago. Specifies the max walkable angle of a Creature when in combat. Default to 85
- --maxAngleNotSteep: Max walkable angle of a Player and of a Creature out of combat. Must be less or equal than --maxAngle. Default to 55.

A performance profiling comparison highlighted that .mmtile load grows exponential with the number of polys. A small server with GridUnload enabled and without preloading all grids on startup will be more affected than a big server with GridUnload disabled and preloading grids on startup.

(cherry picked from commit b6e205f7ef)
2022-01-04 20:44:02 +01:00
Giacomo Pozzoni
d58d0e895c Handle different slopes in mmaps (#24765)
* Tools/MMAPs: Remove input argument --maxAngle

Remove input argument --maxAngle . This should be just hardcoded in MapBuilder::GetMapSpecificConfig() so all settings are easily found in the same place instead of being spread around.

* Tools/MMAPs: Add new area type NAV_AREA_GROUND_STEEP

Add new area type NAV_AREA_GROUND_STEEP for ground with slope in the range (55, 70] .
NAV_AREA_GROUND is used for ground with range [0, 55] .
NAV_AREA_GROUND_STEEP takes priority over NAV_AREA_GROUND.

* Tools/MMAPs: Fix NAV_GROUND_STEEP flag not being saved in the mmtile

* Core/PathFinding: Implement NAV_GROUND_STEEP flag

Implement NAV_GROUND_STEEP flag, used only by Creatures that are in combat or evading.

* Distinguish between RC_WALKABLE_AREA and NAV_AREA_GROUND.

* Allow mobs in combat to walk on steeps up to 80°

* Allow mobs in combat to walk on steeps up to 85°.
Disable rcFilterLedgeSpans() filter as it removed long steep spans.

* Increase cost of steep spans to try making creatures walk around obstacles instead of walking on them

* Revert last commit

(cherry picked from commit 995a443da2)
2022-01-04 20:44:02 +01:00
jackpoz
bafd22104c Tools/MMAPs: Output the time spent in a human readable format
(cherry picked from commit 6e34e07c48)
2022-01-04 20:44:00 +01:00
Ovahlord
0ff1dd577e DB/Creatures: corrected several movement template flight values for creatures all accross Northrend. No more raining Gargoyles, Frost Wyrms, Birds and other flying things
(cherry picked from commit 8a9f809093)
2022-01-04 15:33:04 +01:00