Commit Graph

515 Commits

Author SHA1 Message Date
Shauren
5da556b9a4 Core/Database: Added std::span based functions to Field and PreparedStatement
(cherry picked from commit 27860c3316)

# Conflicts:
#	src/server/game/Entities/Player/Player.cpp
2025-01-03 18:05:04 +01:00
Shauren
4220ec8eee Core/Misc: Fixed build with c++23 enabled
Closes #30511
2024-12-16 16:43:42 +01:00
Ovahlord
b72fc58f6b Core/Database: removed more duplicate aliases from prepared statements 2024-12-16 16:43:33 +01:00
Shauren
893f2d4cef Core/Networking: Support IPv6
(cherry picked from commit af4dcc93ed)

# Conflicts:
#	sql/base/auth_database.sql
#	sql/updates/auth/cata_classic/2024_11_12_00_auth.sql
2024-11-12 20:56:47 +01:00
Ovahlord
2d415b4621 Core/DataStores: updated DB2 structures to 4.4.1 2024-11-01 07:56:45 +01:00
Shauren
03312d4aa4 Core/Misc: Replace std::ostringstream based formatting with Trinity::StringFormat where possible in common and database projects
(cherry picked from commit 1a41281e37)
2024-10-17 21:44:13 +02:00
Shauren
01e3220f89 Core/Players: Prevent creation of characters with duplicate names
Closes #30299

(cherry picked from commit 49ab2bbe38)
2024-10-03 15:06:58 +02:00
Shauren
1e7bb72424 Core/Database: Fix database connections failing to open over named pipes for users using caching_sha2_password authentication plugin if this is the first time this user attempts to log in since starting MySQL server
(cherry picked from commit 726412d983)
2024-09-25 20:00:56 +02:00
Shauren
9e661e8e1c Core/Common: Catch and log child process creation errors
(cherry picked from commit fff12eafdf)
2024-09-23 21:18:50 +02:00
Shauren
70d2b3b34d Build: Add WITH_WARNINGS_AS_ERRORS cmake option that turns compile warnings into compile errors
(cherry picked from commit 7ac0c685dd)
2024-09-21 05:50:20 +02:00
Shauren
3cde083745 Core/Database: Change database async thread shutdown to fix some corner cases leading to servers being stuck on shutdown (for example with exit() call)
(cherry picked from commit 11a832fa8b)
2024-09-21 05:50:20 +02:00
Shauren
ec85afdbc7 Core/Common: Output stdout/stderr from child process without waiting for it to finish
(cherry picked from commit f270686201)
2024-09-16 17:32:15 +02:00
Ovahlord
7704c0cc5a Core/Misc: dropped unused Traits implementation 2024-09-01 20:49:45 +02:00
Ovahlord
b5e681e682 Core/Misc: removed most retail specialization code and restored legacy functionality for Classic 2024-09-01 06:52:54 +02:00
Shauren
18ae1540b5 Core/Loot: Implemented currency loot
(cherry picked from commit 3e28ee080a)

# Conflicts:
#	sql/base/characters_database.sql
#	sql/updates/auth/cata_classic/2024_08_26_00_characters.sql
#	sql/updates/world/cata_classic/2024_08_26_00_world.sql
#	src/server/game/Entities/Player/Player.cpp
#	src/server/game/Loot/Loot.cpp
#	src/server/scripts/ExilesReach/zone_exiles_reach.cpp
2024-08-27 17:20:43 +02:00
Shauren
a1b744b786 Core/DBUpdater: Use utf8mb4 in dbupdater --default-character-set
(cherry picked from commit b257b244cb)
2024-08-27 15:45:29 +02:00
Shauren
25ffdbc5ef Core/Realms: Realmlist refactors
* Removed global realm variable from World and use RealmList everywhere
* Match auth build key with client version
* Restored allowedSecurityLevel checks for realmlist packet building
* Restored updating population field, mysteriously removed 15 years ago in f20b25d1c9

(cherry picked from commit c4b710446d)

# Conflicts:
#	sql/base/auth_database.sql
2024-08-18 20:39:21 +02:00
Ovahlord
d8a9f7bd25 Core/Players: updated glyph handling for Cataclysm 2024-07-28 01:32:42 +02:00
Ovahlord
03b6898518 Core/Player: initial work on implementing talents for Cataclysm
- use a new structure to hold talent group data which will eventually replace the old master branch implementation
- added support for unlocking dual talent specialization and switching specs
- added basic support for learning and resetting talents
2024-07-27 11:03:38 +02:00
Shauren
284e782917 Build: Fixed CMake 3.30 FindBoost deprecation warning
(cherry picked from commit ab5fab5ee9)
2024-07-18 22:37:18 +02:00
Shauren
fc27c71dee Core/Logging: Minor internal refactor
* Avoid formatting to output with fprintf
* Use vector instead of unordered_map to store appenders in Logger

(cherry picked from commit 81bec6954f)
2024-07-18 22:34:07 +02:00
Shauren
c12f669fc5 Build: CMake cleanup
* Migrate all add_definitions to target_compile_definitions
* Remove -D from preprocessor definitions added by target_compile_definitions (unneccessary, cmake strips it anyway)
* Fixed NO_BUFFERPOOL not being set on g3d if jemalloc is used
* Moved library/compiler specific compile flag settings spread all over various CMakeLists to their related library/compiler file
* Remove ancient manual link flag settings for worldserver

(cherry picked from commit 77fe2745fe)
2024-07-18 22:34:00 +02:00
Shauren
9fe75d870f Core/DBLayer: Add field metadata getters to query result classes
(cherry picked from commit d4998bd04a)
2024-07-14 19:03:21 +02:00
Shauren
69febfca78 Core/Database: Fixed WITH_COREDEBUG + WITH_DYNAMIC_LINKING incompatibility on windows
(cherry picked from commit f895d04b7d)
2024-07-06 15:35:58 +02:00
Ovahlord
166aec66ba Core/Misc: dropped several db2 storages which are empty/unused in classic and removed many unused opcode handlers and packet classes 2024-06-25 20:20:09 +02:00
Ovahlord
dc67de6b1b Core/Items: dropped artifact weapon implementation 2024-06-25 18:08:28 +02:00
Meji
e3f27a5beb Core/AreaTriggers: Check actionset flags for client areatriggers to allow some areatriggers to trigger while dead (#30042)
(cherry picked from commit d51d6b0abe)
2024-06-24 20:11:30 +02:00
Shauren
6f04a08ed9 Core/Database: Rewrite QueryCallback with std::variant
(cherry picked from commit 2b4c7dec29)
2024-06-20 01:20:05 +02:00
Shauren
296b0c91b3 Core/Database: Remove future/promise typedefs from a public header (these are internal to database project)
(cherry picked from commit 7fcb126fcb)
2024-06-20 01:20:00 +02:00
Antonio Martín Berti
50eb64d331 Core/Misc: Remove separate storage for custom messages in exception types and store it directly in base class from <stdexcept> (#30012)
(cherry picked from commit 15e995b3b3)
2024-06-20 01:13:27 +02:00
Shauren
0608cf31c2 Core/AreaTriggers: Implement height check for polygon db2 areatriggers
(cherry picked from commit 1c3268155d)
2024-06-20 01:07:34 +02:00
Meji
889abca362 Core/AreaTriggers: Fix triggering of client areatriggers for some shapes
(cherry picked from commit b070e63fa8)

# Conflicts:
#	sql/updates/auth/cata_classic/2024_05_27_00_hotfixes.sql
2024-06-20 01:07:04 +02:00
Ovahlord
8a58c75b67 Core/DataStores: named new columns in ChrCustomizationOption which have been added in 11.x 2024-06-18 19:41:09 +02:00
Ovahlord
23135b198c Core/DataStores: update DB2 structures to 55141 2024-06-18 18:11:11 +02:00
Ovahlord
0d9df719ef Core/Player: dropped PvP talent implementation 2024-06-05 22:06:25 +02:00
Ovahlord
ae23dd46b1 Core/Datastores: load new glyph and talent related db2 files 2024-06-02 16:51:26 +02:00
Ovahlord
57c36d758f Core/Items: implement reforging items 2024-06-01 19:32:24 +02:00
Ovahlord
72ef4ccf77 Core/Datastores: named unknown fields for CurrencyTypes 2024-05-28 22:28:22 +02:00
Shauren
d7cb383134 Core/Updater: Fix gcc build (this time for older gcc versions that didn't trigger the warning fixed in previous commit)
(cherry picked from commit 78aef0bd75)
2024-05-28 16:55:05 +02:00
Shauren
97191e2a11 Core/Updater: Fix gcc warning
(cherry picked from commit b288fceb79)
2024-05-28 16:55:01 +02:00
Shauren
78805e49c0 Core/Misc: Support boost 1.85
(cherry picked from commit cfa838df5d)
2024-05-28 16:43:54 +02:00
Shauren
139d80373d Core/Items: Implemented CreateTime item field and changed refund/soulbound trade timers to also count time offline
(cherry picked from commit 69da702b93)

# Conflicts:
#	sql/base/characters_database.sql
2024-05-28 16:41:52 +02:00
Gosha
a1d892195f Core/Items: Fix loading secondaryItemModifiedAppearanceSpec5 (#29917)
(cherry picked from commit 8c274a8e8d)
2024-05-28 16:41:30 +02:00
Meji
2c56ee9ce1 Core/SAI: Added support for StringIds to creature and gameobject targets (#29910)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
(cherry picked from commit 2ce4068459)
2024-05-28 16:40:53 +02:00
Shauren
2d1c2c79ab Core/DBLayer: Support retrieving DATE/DATETIME/TIMESTAMP column values directly without casting in sql
(cherry picked from commit 404bb5b3c2)
2024-05-28 16:40:35 +02:00
Meji
382eb5063f Core/Creatures: Changed the spawn health field in creature table to a percentage (#29801)
(cherry picked from commit def601b4ff)
2024-05-28 16:31:42 +02:00
Ovahlord
9d6e3e54ab Core/Datastores: updated DB2 structures to 4.4.0.54737 2024-05-23 21:18:10 +02:00
Shauren
9a0414c79e Core/Objects: Implemented vignettes
(cherry picked from commit fccf6fb72b)
2024-03-25 20:12:21 +01:00
Ovahlord
c16e24fd7f Core/DataStores: updated DB2 structures to 4.4.0.53750 2024-03-14 03:48:48 +01:00
Ovahlord
4aae7887d0 Core/Creatures: added PetSpellDataId and Civilian fields to creature_template, replaced level delta fields with MinLevel and MaxLevel in creature_template_difficulty and backported creature_classlevel_stats from 4.3.4 2024-03-13 22:34:49 +01:00