Commit Graph

286 Commits

Author SHA1 Message Date
Shauren
6c8ef045a5 Core/DataStores: Updated structures to 9.2.5 2022-06-02 00:48:57 +02:00
Shauren
d3c4216de8 Core/PacketIO: Updated packet structures to 9.2.5 2022-06-01 23:13:29 +02:00
Kelno
6b8d03d71e Don't count character pending deletion towards character per account limit (#26837)
* Don't count character pending deletion towards character per account limit

* Never show more than 10 characters char enum

* Use constants

(cherry picked from commit e2f20aff8a)
2022-03-13 14:27:10 +01:00
robinsch
0910bca34c [Exploit/Dupe] Container item (#26689)
* Core/Item: Fixed possible dupe with container items containing non unique non stackable items

* Fixed build

* Update sql script and related base structure

Co-authored-by: jackpoz <giacomopoz@gmail.com>
(cherry picked from commit d1e913162e)
2022-03-11 19:03:12 +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
Shauren
081fa7cfc4 Core/Mail: Replaced blocking db query in mail sending with async version
(cherry picked from commit 0a9e239c12)
2022-02-28 13:56:45 +01:00
Shauren
569b5d6f04 Core/Auction House: Eliminate blocking db queries for account permissions when expiring auctions that have offline bidders
(cherry picked from commit d0d0f51f32)
2022-02-28 12:45:06 +01:00
Treeston
46d4e2fa83 1eca51b follow-up, nuke command.permission from orbit; it was only duplicating data already stored in the core.
(cherry picked from commit 991dc8e050)
2022-02-27 20:59:19 +01:00
Giacomo Pozzoni
a65b3493a7 Core/SAI: Add orientation and delay columns to waypoints table (#25472)
* Core/SAI: Add orientation and delay columns to waypoints table

* Rename 2020_99_99_99_world.sql to 2020_09_19_00_world.sql

(cherry picked from commit 4b7d19c91b)
2022-02-27 20:08:41 +01:00
Shauren
7fbdd6473e Core/DataStores: Updated db2 structures to 9.2.0 2022-02-25 11:40:20 +01:00
Meji
fa3cba3a00 Core/BattlePets: Delete declined names of non-account battle pets when deleting character permanently (#27706) 2022-02-06 21:46:28 +01:00
jackpoz
8cbc21120f Core/Characters: Replace 2 database statements with 1
Replace DELETE + INSERT with REPLACE when updating realmcharacters table

(cherry picked from commit a33ff74d92)
2022-02-06 00:15:31 +01:00
Treeston
e0e3bae82c Core/Authserver: Removal of sha_pass_hash, compatibility fields, and everything that uses them (PR #25156)
(cherry picked from commit bcdbdd6f23)
2022-02-05 13:29:21 +01:00
jackpoz
341ef2c0dd Core/Arena: Fix Arena.ArenaStartPersonalRating setting not having effect if the player didn't do any arena match before next server restart
Ref #16609

(cherry picked from commit cc64762f06)
2022-02-05 13:08:08 +01:00
Shauren
950db60435 Core/Pets: Updated pet summoning for latest client version (5 Call Pet spells and stable size 200) 2022-02-02 00:08:37 +01:00
Shauren
fd9eb28322 Core/Pets: Adjust pet slot saving logic after constant changes in 22e823b5f9 2022-01-31 23:30:00 +01:00
Shauren
8349444749 Core/Pets: Save last summoned pet number in characters table 2022-01-31 21:34:48 +01:00
Shauren
e458144442 Core/Pets: Removed storing stable slot count in db 2022-01-31 14:34:05 +01:00
Shauren
ca92686b44 Core/Pets: Pet management refactoring (#25191)
* Core/Pets: Pet management refactoring

* Preload basic pet data on character login with async query
* Load additional pet data (declined names/auras/spells/cooldowns) using async query after we are sure pet loading will succeed
* Remove all select queries related to pet stable/unstable
* Remove all silent pet deletions except explicit UI-triggered abandons
* Fixed displaying stable master content when current pet is not summoned
* Allow to stable/swap unsummoned current pet

Closes #3610
Closes #21266

(cherry picked from commit 5c1fc5e387)
2022-01-31 00:17:21 +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
Shauren
54a6e603ff Core/Misc: Replace database query in WorldSession::HandleAddFriendOpcode with async version
(cherry picked from commit 2f0893d279)
2022-01-24 13:38:40 +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
Shauren
f2bde40922 Core/DataStores: Load UnitCondition.db2 2022-01-14 20:10:16 +01:00
Shauren
0d3235f569 Core/Guilds: Separate guild rank id from guild rank order
Co-authored-by: aquadeus <efectokoleos13@gmail.com>
2022-01-09 23:12:00 +01:00
ForesterDev
69cadae38a DB/Account: update account_access table cherry-pick take 2 (with refactors)
(cherry picked from commit 8e0365d8a6)
2022-01-06 23:28:52 +01:00
ForesterDev
6bddc8ff5e Core/Database: fix wrong password logging (#24487)
(cherry picked from commit 48c700347c)
2022-01-01 20:13:25 +01:00
zartech22
c57c26d7fb Add realm ID for actions based ip logging (#24453)
* Update SQL queries to insert realm id

* Insert the realm id when logging actions based on IP

* Adding the SQL update file

* Update 9999_99_99_99_auth.sql

* Update auth structure

Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
(cherry picked from commit 56f20d69a6)
2022-01-01 19:38:40 +01:00
Shauren
1aad7f8ddd Core/DB: Add missing prepared statement parameters to CHAR_SEL_WAR_MODE_TUNING 2021-12-27 20:42:03 +01:00
Matan Shukry
b821a72973 Core/Player: Initial War Mode support (#25926)
* Enable PvP talents
* War Mode buff aura
* Forced PvP flagging

Co-authored-by: Shauren <shauren.trinity@gmail.com>
2021-12-26 19:14:46 +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
Treeston
0b61c3b7b1 [3.3.5] Core/Authserver: TOTP rewrite: (PR #23633)
- Proper management commands (.account 2fa)
- Secrets can now be encrypted (set TOTPTokenSecret in .conf)
- Secret now stored in binary
- Argon2 and AES primitives
- Base32/64 support

(cherry picked from commit 4211645834)
2021-12-18 20:24:50 +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
8839fa3fe2 Core/Chat: Custom channel preservation rewrite. Channel data is now loaded at startup, and written to the DB periodically, instead of both things happening in real time.
(cherry picked from commit fedf1f557b)
2021-12-17 23:22:13 +01:00
Treeston
be05590a12 Core/DB: Unify creature_respawn and gameobject_respawn into a single respawn table
(cherry picked from commit 374597c8e9)
2021-12-16 01:10:06 +01:00
Treeston
b4b581de1b Scripts/Commands: .account ban no longer fails if an account containing the specified account name is already banned (f.ex. attempting to ban 'test' if 'test2' is already banned) - closes #22990
(cherry picked from commit daf423a6c3)
2021-12-15 22:48:03 +01:00
ForesterDev
61cc88731c Scripts/Commands: update .wp commands to use orientation field from DB (PR #23566)
Closes #23330

(cherry picked from commit e71773140c)
2021-12-15 00:17:13 +01:00
zartech22
1c3c59d7fa Core/Instance : Fix instance resetting exploit (#23263)
* Push offline players out of instance

Push offline players out of instance when reseting dungeon with a raid mode group

* Add SQL request to character

Add a SQL request to update the position of a player in a specified map

* Teleport to graveyard instead

(cherry picked from commit 678e0e606a)
2021-12-11 23:12:27 +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
jackpoz
b02143118f Core/Database: Delete gameobject_addon data when deleting a GameObject from the database
Close #23076

(cherry picked from commit f88a5b12bd)
2021-11-30 23:05:27 +01:00
Meji
93c668ac50 Core/BattlePets: Implemented BattlePetSpeciesFlags::NotAccountWide (#27303)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2021-11-25 20:55:12 +01:00
Sorikoff
a57ca5cea2 Core/Movement: Allow using run when moving randomly (#23081)
* Allow run when moving randomly

(cherry picked from commit 34cfa69efd)
2021-11-24 20:35:15 +01:00
Sorikoff
956158d299 Core/Movement: Allow using walk when chasing v2 (#23073)
* Allow walk when chasing

(cherry picked from commit dbadb6369c)
2021-11-24 20:34:54 +01:00
TheWinchesters
47adf2e4c8 [3.3.5] Commands: lookup player shows which character is online (#23039)
* Show 'online' for every online player in lookup player commands

(cherry picked from commit a0056951f7)
2021-11-23 22:52:53 +01:00
Meji
8614690e27 Core/BattlePets: Implemented battle pet name query packet (#27294)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2021-11-20 19:06:14 +01:00
Shauren
ce794f3978 Core/Spells: Fixed ErrorCube spell missiles
(cherry picked from commit 3b5014fdae)
2021-11-18 01:10:19 +01:00
Shauren
14b8d7d839 Core/PacketIO: Implemented splash screen opcodes 2021-11-12 21:53:40 +01:00
jackpoz
4fabfa0903 Core/SAI: Add a 4th target parameter to SAI
(cherry picked from commit 7634a57f64)
2021-11-10 00:11:52 +01:00
Shauren
4c2313a44b Core/Misc: Re-generate HotfixDatabase.cpp 2021-11-08 23:08:33 +01:00
funjoker
3ce041e541 Misc: Update chr_races_locale field names too 2021-11-08 19:20:07 +01:00