Commit Graph

438 Commits

Author SHA1 Message Date
Shauren
6be536a73b Core/Network: Refactor local/remote ip address selection code and allow using hostnames in LoginREST bnetserver config options 2023-07-15 00:45:16 +02:00
Shauren
0cea730fa2 Core: Update to 10.1.5 2023-07-12 16:29:00 +02:00
Meji
bb68fd73b4 Core/Creatures: Drop dynamic flags from creature and creature_template (#29041) 2023-06-18 19:18:56 +02:00
Shauren
0fb8765a66 Core/Items: Item bonus generation improvements
* Pass ItemContext to item creation wherever possible
* Support scaling item levels with m+ keystone levels (not used currently)
* Fixed item link validation when client sends it as default uninitialized bonus list with context only
* Support scaling items depending on current active season (seasons not implemented)
* Implemented content tuning redirection
2023-06-17 16:29:59 +02:00
Shauren
09dea76fb5 Core/Misc: Replace std::abort with our ABORT macro
* libmysql is not a well behaved library on windows, it installs its own SIGABRT handler every time a new connection is opened, overriding our own
2023-06-14 20:30:02 +02:00
Jeremy
c1df555e16 Core/Graveyards: Drop Faction column and replace it with conditions (#28965) 2023-06-01 02:33:46 +02:00
Meji
06d0b16f15 Core/Creatures: Move creature difficulty specific data from creature_template table to creature_template_difficulty (#28931) 2023-05-29 00:01:23 +02:00
Shauren
eadafb0347 Core/DBLayer: Relaxed restrictions on which Field class member function can be used to access column value from "strict match" to "must not truncate" 2023-05-14 16:30:05 +02:00
Shauren
3260b94dd6 Core/Misc: Replace string to int conversion functions from Common.h with c++17 std::from_chars based ones Trinity::StringTo 2023-05-13 15:46:27 +02:00
Shauren
16bc74667e Core: Update to 10.1 2023-05-04 17:00:52 +02:00
Shauren
d78f08aa9e Core/Chat: Implemented more chat link types
Closes #28946
2023-04-28 00:11:24 +02:00
Meji
d6133c78de Core/Units: Calculate HoverHeight from model data (#28899) 2023-04-09 18:17:08 +02:00
ModoX
356c98579b Core/SAI: Drop waypoints table and move existing rows to waypoint_data table (#28834) 2023-04-08 01:33:05 +02:00
Shauren
7b31080258 Core/Misc: Modernize code a bit by replacing std::tie with either structured bindings or operator<=> 2023-04-06 17:46:58 +02:00
ModoX
36044a9470 Core/Creature: Added possibility to give creatures multiple gossip menu ids and control them via conditions (#28159) 2023-04-05 23:49:46 +02:00
Meji
562f65f3f8 Core/Creatures: Compute the level from ContentTuning (#28871) 2023-03-31 01:01:35 +02:00
Shauren
922f60fa25 Core: Update to 10.0.7 2023-03-22 00:08:20 +01:00
Смердокрыл
b37333c1d9 Core/Auras: Implemented SPELL_AURA_KEYBOUND_OVERRIDE (#28809)
Co-authored-by: MaxtorCoder <warsongkiller.s8@gmail.com>
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2023-02-10 11:29:43 +01:00
Meji
aaa0db2880 Core/Players: Added support for profession equipment slots (#28799) 2023-02-08 23:35:08 +01:00
Meji
73d00dd411 Core/Logging: Update missing log to fmt::format 2023-02-01 00:16:04 +01:00
Meji
03918978c1 Core/Players: Several currency fixes and improvements (#28676) 2023-01-29 17:42:23 +01:00
Shauren
65e787d18b Core/DBUpdater: Changed autoupdater created databases to use utf8mb4 instead of utf8mb3 2023-01-10 00:49:22 +01:00
Shauren
d791afae1d Core/Logging: Switch from fmt::sprintf to fmt::format (c++20 standard compatible api) 2023-01-08 21:16:53 +01:00
Aqua Deus
09591fbdb0 Core/SAI: Add action param 7 (#28519)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2022-12-30 16:32:37 +01:00
Seyden
61c51b76c0 Core/Creatures: Implement StringId for Creatures, a custom identifier to make finding specific creatures in script easier (#28500)
Allows targeting specific spawns without hardcoding guids or find a bunch of different creatures with a single search

Co-authored-by: Shauren <shauren.trinity@gmail.com>
2022-12-27 16:39:05 +01:00
Shauren
0555ab2f56 Core/Players: Implemented setting tradeskill recipes as favorite 2022-12-17 20:27:13 +01:00
Shauren
0cc5ab8372 Core/Players: Implemented new talent system 2022-12-16 22:44:55 +01:00
Shauren
e98e1283ea Core: Updated to 10.0.2 2022-12-04 15:13:20 +01:00
Shauren
fc37c42e55 Core/Misc: Added noexcept to move constructors and move assignment operators 2022-11-06 01:03:35 +01:00
Aqua Deus
4772c4817f Core/Garrisons: Implement SMSG_GARRISON_OPEN_TALENT_NPC opcode (#28256)
Co-authored-by: ModoX <moardox@gmail.com>
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2022-10-11 22:16:02 +02:00
Shauren
ab12e77cf7 Core/Commands: Restore instance management commands 2022-10-04 00:19:38 +02:00
Shauren
4ce1c6cdf4 Core/Instances: Add prepared statements for InstanceLockMgr 2022-10-04 00:19:38 +02:00
Shauren
1e99011edf Core/Scenarios: Attempt to restore scenario state from completed encounter info 2022-10-04 00:19:38 +02:00
Shauren
461a9c024c Core/Instances: Remove old database statements (WIP) 2022-10-04 00:19:38 +02:00
Shauren
301572212f Core/Misc: Changed string formatting functions to accept std::string_view as format argument instead being templated on it to slightly improve compile times and reduce executable size 2022-09-19 00:33:19 +02:00
Shauren
8a183a6e5e Core/bnetserver: Implemented reconnecting with launcherlogin 2022-09-13 14:27:54 +02:00
daMaex
57dae92ed3 Fixed MariaDB build the easy way for the client version check (#28039)
depending on https://jira.mariadb.org/browse/CONC-509

(cherry picked from commit f922a7dff6)
2022-09-05 19:27:04 +02:00
daMaex
0a07f257f2 MariaDB support for Ubuntu 22.04 (#28031)
(cherry picked from commit bceb5b6060)
2022-09-05 18:34:50 +02:00
Shauren
e487d78ba7 Core/WorldStates: Move custom worldstates to separate table and move saving worldstate values to WorldStateMgr 2022-07-14 22:32:21 +02:00
Shauren
49ad0d2d49 Core/Quests: Reset seasonal quests based on saved completion time and intended holiday start time 2022-07-03 23:44:48 +02:00
fluxurion
125ada42f6 Core/Transmog: Implemented Transmog Illusions + Spelleffect to unlock them 2022-06-09 21:27:02 +02:00
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
Giacomo Pozzoni
b7addbafe8 Core/DB: Improve MySQL version check messages (#26866)
* Core/DB: Improve MySQL version check messages

* Make it more clear that any version above the required one is supported

* Implement feedback

(cherry picked from commit d9a0db79a8)
2022-03-13 22:37:07 +01: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
Aokromes
0a77534245 Core/DB: Updated missing check (#26834)
* Core/DB: Updated missing check

TrinityCore does not support MySQL versions below 5.7, please update your MySQL server

(cherry picked from commit 3c84972a36)
2022-03-13 14:05:23 +01:00
Giacomo Pozzoni
51f0294c18 Core/DBLayer: Add QueueSize() method (#26733)
* Core/DBLayer: Add QueueSize() method

Add QueueSize() method to database objects (Login, Character and World) that returns how many tasks are queued.
Include the queue size of the 3 databases in ".server debug" command

* Make the code less threadsafe

* Send data to InfluxDB

* Update grafana dashboard

(cherry picked from commit 96dc110f4a)
2022-03-11 19:32:22 +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