Commit Graph

1062 Commits

Author SHA1 Message Date
Teleqraph
ebf1b6eb5c Core/Creatures: Implemented sending different creature id for summoner (#28066)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2022-07-03 16:00:14 +02:00
Shauren
5d27939667 Core/Conditions: Implemented conditions for spawn groups 2022-06-24 22:20:34 +02:00
Shauren
94d829c84f Core/Pools: Implemented pooling for instances 2022-06-11 14:04:56 +02:00
Shauren
2213d87a45 Core/Gossip: Send broadcast text id in SMSG_GOSSIP_MESSAGE instead of npc_text id 2022-06-02 15:12:24 +02:00
Shauren
d800c87137 Core/Misc: Remove implicit conversions from RaceMask class, fixes racemask check failing during loading from db 2022-05-06 18:45:51 +02:00
Shauren
1d9ed7fb46 Core/Creatures: Refactor ObjectMgr::ChooseCreatureFlags to allow selecting only 1 flag field
(cherry picked from commit e4430cd2be)
2022-03-21 00:07:29 +01:00
offl
47bcacd00a Core/Creature: Disallow nearly all non-static flags on DB side (#27024)
Closes #25764

(cherry picked from commit a88001938e)
2022-03-19 23:30:15 +01:00
Ovah
a5889ba3eb Core/Quests: check PreviousQuestID values as well when trying to make quest groups available to players (#26769)
* Core/Quests: check PreviousQuestID values as well when trying to make a quest available to support quest group requirements for another quest group

* checking for previous quests via NextQuestID only works for single followup quests. However, if we want to make multiple quests available after rewarding all quests of an exclusive group we have to consider PreviousQuestID values as well as every single quest of the next quest group has to check the rewarded exclusive group

* only check for previous quests that must be rewarded instead of being active

(cherry picked from commit a0aa9730e2)
2022-03-13 19:31:14 +01:00
Shauren
db3eb418b8 Core/Creatures: Fixed loading ModExperience from database
Closes #27858
2022-03-09 23:45:53 +01:00
Ovahlord
209b90cfdd Core/DBLayer: escape MySQL keywords in page_text, page_text_locale, broadcast_text and broadcast_text_locale select queries
(cherry picked from commit d4f71131f0)

(cherry picked from commit edcaac6c95)
2022-03-09 15:30:23 +01:00
Giacomo Pozzoni
5180abfb19 Core/Creature: Add new db field InteractionPauseTimer (#25880)
* Core/Creature: Add new db field InteractionPauseTimer

Add new db field InteractionPauseTimer to allow to define different interaction pause timers for each creature (the previous system was a global setting in worldserver.conf Creature.MovingStopTimeForPlayer)

* Set all columns in creature_template_movement as optional (can be NULL, default NULL). Fill only the columns that should override the default C++ value

* Use the InteractionPauseTimer value throughout the code instead of Creature.MovingStopTimeForPlayer

* Handle InteractionPauseTimer set to 0 as "don't stop at all"

* Implement InteractionPauseTimer in creature_movement_override

creature_movement_override allows NULL values, in which case the values from creature_template_movement will be used for those columns that are NULL, falling back to default C++ values if creature_template_movement has NULL values too (or no rows for the creature)

* Read default InteractionPauseTimer from worldserver.conf

* Rename 2021_99_99_99_world.sql to 2021_01_22_00_world.sql

(cherry picked from commit a22bc236eb)
2022-03-06 00:56:46 +01:00
Kargatum
373ed8f46b Core: whitespace cleanup, reduce double blank line to single (#25795)
* Core/Misc: fix double empty line

* worldserver.conf

(cherry picked from commit a32b6b8ac4)
2022-03-05 20:07:57 +01:00
Ovah
203dfec2a1 Core/Maps: add new FLAG_ALLIANCE_ONLY and FLAG_HORDE_ONLY for instance spawn groups (PR #25656)
(cherry picked from commit 4abbeb2a60)
2022-03-01 21:46:43 +01:00
Shauren
9f30afe352 Core/PacketIO: Updated packet structures to 9.2.0 2022-02-24 23:16:55 +01:00
Shauren
ad4f4bfab7 Core/Misc: Minor game include cleanup 2022-02-13 00:49:10 +01:00
Treeston
b6635be041 [3.3.5] Core/Guilds: Guild cleanup (PR #25422)
(cherry picked from commit cd28423a4e)
2022-02-05 19:20:18 +01:00
Treeston
c4b287c7bf Core/Misc: DBC std::array refactors, and |Hachievement unit tests
(cherry picked from commit 3fbbe7cfbe)
2022-02-04 23:37:29 +01:00
Giacomo Pozzoni
99ee958e0a Core/Misc: Fix issues reported by static analysis (#25351)
* Core/Misc: Fix issues reported by static analysis

* Core/Vmaps: Code cleanup after e777161888

(cherry picked from commit cfc8f7b442)
2022-02-04 12:18:15 +01:00
Treeston
9f97fdd31a Core/Common: Tokenizer -> Trinity::Tokenize (PR: #25327)
(cherry picked from commit 534a2388b7)
2022-02-04 00:27:14 +01:00
Shauren
88659dcebf Core/Gossip: Sync naming and db structure with 3.3.5 2022-01-26 23:49:42 +01:00
Shauren
a9b4f9aca0 Core/Mail: Load mails at login instead of on demand when queried by packets (logging in always sends one of the packets that cause mail loading anyway)
(cherry picked from commit 57eaab80d9)
2022-01-24 14:45:54 +01:00
Ovah
9c38dc2367 Core/World: added startup log outputs for query cache initialization for detailed information.
* the console will now throw a log when the feature is disabled
* additionally the console will now print how long it took to initialize

(cherry picked from commit 210f552ac5)
2022-01-24 13:15:42 +01:00
Shauren
596bf2b772 Core/Misc: Replace boost::optional with std::optional part 2 2022-01-23 20:31:52 +01:00
Giacomo Pozzoni
e9cf3828ba Core/Spells: Implement SPELL_EFFECT_ACTIVATE_OBJECT. (#23) (#24997)
* Core/Spells: Implement SPELL_EFFECT_ACTIVATE_OBJECT. (#23)

Original research by @xvwyh.

* Add missing sql update

* Fix some build errors

* Remove unused enum values

* Change artkits from 0-4 to 0-3

* Remove unused code

* Code review feedback

* Fix sql

* Remove artkit4 special case handling

* Default initialize artKits

* Code review feedback

* Split sql into structure and data files

Co-authored-by: Warpten <vertozor@gmail.com>
(cherry picked from commit 203573db83)
2022-01-23 15:17:54 +01:00
jackpoz
68faf5bc4b Core/Common: Replace ASSERT(false, "...") with ABORT_MSG("...")
(cherry picked from commit 54c701cf0d)
2022-01-19 22:17:42 +01:00
Shauren
18cc0b2e4a Core/Quests: Fixed quest select query 2022-01-19 10:40:10 +01:00
ModoX
8a61024cfa Core/Player: Added PlayerCreateMode field to playercreateinfo_cast_spell to only cast spells based on related mode (#27593) 2022-01-14 19:52:56 +01:00
Sorikoff
99d7201112 Core/DB: Add DB error for missing gossip npcflag (#24375)
* Add DB error for missing npcflag

* Improvements

* Update ObjectMgr.cpp

Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
(cherry picked from commit a513922fc1)
2021-12-31 20:00:41 +01:00
Matan Shukry
8fabe5a3aa Core/Phasing: Implemented db spawns in personal phases (#26345)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2021-12-28 13:24:10 +01:00
Shauren
b2b83d49ad Core/ObjectMgr: Replace manually constructed uint32 map key with pair<mapid, difficulty> 2021-12-27 16:16:58 +01:00
ratkosrb
72093e98e1 Core/Creature: Use proper name for wander distance. (#24133)
* Use proper name for wander distance.

* Rename db field.

* Fix query.

* Remove underscore from chat command.

* Rename the handler too.

* Update chat command description.

* Fix remaining issues.

* Rename 2020_99_99_99_world_335.sql to 2020_02_16_01_world.sql

Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
(cherry picked from commit 6176ce92ea)

# Conflicts:
#	sql/updates/world/master/2020_02_16_01_world.sql
#	src/server/database/Database/Implementation/WorldDatabase.cpp
#	src/server/game/Entities/Creature/Creature.cpp
#	src/server/game/Globals/ObjectMgr.cpp
#	src/server/game/Globals/ObjectMgr.h
#	src/server/scripts/Commands/cs_npc.cpp
2021-12-21 19:50:12 +01:00
Shauren
2c78f4dd1f Core/Misc: Resolve c++17 TODOs left in code as comments 2021-12-21 18:29:52 +01:00
Ovah
a91be4995b Core/Vehicles: implement vehicle seat addon table to specify seat ori… (#24112)
* Core/Vehicles: implement vehicle seat addon table to specify seat orientation offsets and exit positions in form of offsets or absolute positions
* converted Traveler's Tundra Mammoth to seat addon table data

* first follow batch

* whoopsie

* Core/Vehicles: go from local copies to pointers

* Update and rename 2020_99_99_99_world.sql to 2020_02_08_01_world.sql

Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
(cherry picked from commit 98d6c501d7)
2021-12-21 15:32:49 +01:00
Treeston
94a79bac7a Core/Misc: Some refactoring, #23603 prep: (#23676)
- Split SpawnMetadata off from SpawnData
- No longer allocate Creature/Gameobject objects in ObjectGridLoader just to check their typeid and delete them afterwards

Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
(cherry picked from commit 9304e496cb)
2021-12-21 15:16:26 +01:00
ForesterDev
9124fd1f1f Core/Items: implement some helper methods for easier readability (#24113)
(cherry picked from commit 573ddf4d22)
2021-12-21 00:46:13 +01:00
Giacomo Pozzoni
64eb65cd45 Core/Creature: Remove empty spell ids from CreatureAddon.auras vector
Close #23969

(cherry picked from commit f20265feaf)
2021-12-19 01:46:07 +01:00
jackpoz
73e7719dbf Core/Creature: Log an error for Creatures spawned with temporary auras
The errors still need to be addressed.
Close #23225

(cherry picked from commit 54f9456764)
2021-12-19 01:44:53 +01:00
Treeston
51fbda4223 Core/Pooling: Quest pooling rewrite: (PR#23627)
- Split quest pooling from PoolMgr (into QuestPoolMgr)
- Proper saving/restoring on server restart
- No more hacking into sObjectMgr to insert/remove available quests

(cherry picked from commit a5e73e41c0)
2021-12-18 15:28:45 +01:00
Treeston
82d62a3d4c This is not the critical chat system bug fix you were looking for. No sir. (Oops.)
(cherry picked from commit 6a330214a1)
2021-12-18 11:27:02 +01:00
Treeston
87c2d247d9 Core/Misc: Rewrite some old name handling functions that use raw buffers to no longer be old name handling functions that use raw buffers.
(cherry picked from commit 309851ea24)
2021-12-18 11:25:59 +01:00
Treeston
8b78f50556 Core/DB: Merge pool_creature, pool_gameobject and pool_pool into a single pool_members table.
(More pooling prep, I really don't want to have any sql update files in that PR if I can help it.)

(cherry picked from commit 45bc91c238)
2021-12-16 21:20:38 +01:00
Wyrserth
755a83f634 Core/Quest: remove arbitrary error logs related to breadcrumb quest chaining.
There are complex cases where breadcrumb quests are mutually exclusive with other breadcrumbs leading to other quests, chaining them shouldn't generate log errors.

(cherry picked from commit e6080116f9)
2021-12-15 00:17:32 +01:00
Aokromes
3ad5bc1e15 Core/Misc: More coding standards (#23519)
* Core/Misc: More coding standards

* revert part

* "void  " or more to "void "

* fix? reject

* remove more double whitespaces

* remove more double whitespaces

* more standards

* more coding standards

* More standards

* more coding

* more coding standards

* more coding standards

* And more standards

(cherry picked from commit 574a7c8d3d)
2021-12-14 23:04:29 +01:00
jackpoz
841630fcc3 Core/Misc: Fix static analysis issues reported by Coverity Scan
(cherry picked from commit de88691e25)
2021-12-13 00:42:18 +01:00
jackpoz
0c1f707ca5 Core/Misc: Change some logs from INFO to ERROR when loading invalid creature template resistances and spells
(cherry picked from commit 078c5a3e18)
2021-12-11 14:12:53 +01:00
Giacomo Pozzoni
7a8d15d63b Core/CreatureTemplate: Outsourced resistances and spells into creatur… (#23343)
* Core/CreatureTemplate: Outsourced resistances and spells into creature_template_spell and creature_template_resistance

* Rename 2019_99_99_00_world.sql to 2019_06_15_01_world.sql

(cherry picked from commit d5fb0a30ec)
2021-12-11 13:06:25 +01:00
funjoker
833e179985 Core/Misc: Add helper table phase_name and improve .npc info and .gps
.gps and .npc info now displays names for known phase names
2021-12-07 20:38:26 +01:00
Giacomo Pozzoni
5f545f5402 3.3.5 gameobject summoner (#23289)
* Scripts/Misc: Change IsSummonedBy(Unit*) to IsSummonedBy(WorldObject*)

* Scripts/Misc: Fix build

* Core/TempSummons: Rename GetSummoner() to GetSummonerUnit()

* Core/TempSummons: Add support to TempSummons::GetSummoner() to return GameObject too

* Fix build

* Core/TempSummons: Allow GameObject to be owner of TempSummon

* Core/TempSummons: Add support to SAI for GameObject owner of TempSummon

* Scripts/Misc: Fix no-pch build

* Core/TempSummons: Implement PR comments

(cherry picked from commit 797fba98e9)
2021-12-07 00:02:03 +01:00
Shauren
9005bdc684 Core/GameObjects: Validate rotation quaternion at startup
Ref #23306

(cherry picked from commit 9dbedb6b64)
2021-12-06 23:27:05 +01:00
Shauren
4978750444 Warning fixes (log format in a809932f50) 2021-11-28 01:11:52 +01:00