Commit Graph
224 Commits
Author SHA1 Message Date
Daniel S. Reichenbach a7527a8698 Core/Misc: added support for OpenSSL 3, dropped support for OpenSSL 1.0 and fixed build for Fixed build for MariaDB 2023-07-07 21:01:49 +02:00
Ovahlord f34534465a Build: enable C++20 and updated all compiler requirements
* ported some header and cmake updates from master branch
2023-07-04 23:49:57 +02:00
ipriver 408c386830 fixed indentation for cmake files
(cherry picked from commit a46d047f9466c6f16597755bb7c771a9d1a147f2)
(cherry picked from commit bde36062b7a0bf621086e73a5d419cd8637e9e96)
2023-05-19 22:26:00 +02:00
Shauren 89b019ffeb Core/WorldStates: Move custom worldstates to separate table and move saving worldstate values to WorldStateMgr 2022-12-26 10:53:47 +01:00
Shauren 3ae02de71b Core/Quests: Reset seasonal quests based on saved completion time and intended holiday start time 2022-12-24 23:56:06 +01:00
ratkosrb 122b52b079 Core/Creature: Use proper name for wander distance 2022-12-20 15:48:37 +01:00
Shauren dc8bf301bb Core/Auras: Fixed saving auras with same spell id but different item source 2022-09-12 09:15:21 +02:00
Ovahlord 1c09965c0f fixed another cherrypick typo 2022-09-12 09:15:07 +02:00
ariel- 1d3fbff332 Core/Auras: removed caster dependency from core
- Decoupled Unit logic: split of spell critical chance into done (caster bonuses) and taken (target bonuses), this allows to precalculate caster bonuses on aura apply and then check victim's auras on damage/healing calc
- Made static a bunch of methods (they no longer have this pointer because they are now called from periodic handlers which may or may not have an active caster in world)
- Simplified all AuraEffect bonuses into AuraEffect::_amount, no more duplicated code
- Critical chance and whether or not caster is player owned unit (for resilience calcs) is now saved one level upper, on Aura itself (it's impossible as of 3.3.5 to have different effects with different critical chances)
- Minor cleanup of SPELL_DAMAGE_CLASS_NONE and Arcane Potency (#18813) crit handling
2022-09-12 09:15:04 +02:00
Ovahlord 6e9ec1a4bf Core/Transports: undo all custom transport changes as preparation for cherry picks 2022-06-18 18:37:14 +02:00
Shauren 30d6f97567 Core/DBLayer: Fixed false positive msvc analysis warning 2022-06-15 14:03:21 +02:00
jackpoz 35d79f54e5 Shared/Database: Improve dead-lock error handling
Improve dead-lock error handling in async transactions by retrying the transaction for up to 60 seconds instead of just 5 times

(cherry picked from commit 54b0b8f5ead41f936b12e97d1b4fbacd9b89ab53)

# Conflicts:
#	src/server/database/Database/Transaction.cpp
2022-06-15 14:03:01 +02:00
Ovahlord e03b2f41bf Core/Guilds: implement weekly bonus money packet field in guild bank queries 2021-07-29 18:45:49 +02:00
Ovahlord b236bd39df Core/Movement: updated smartAI waypoint support to use the new smooth transition field as well 2021-07-16 16:56:47 +02:00
Ovahlord 1d41988cbe Core/Guilds: implement cleanup routine for guild news that cleans up news that are older than a week 2021-04-29 15:56:25 +02:00
Roc13x d27eef16df Core/Datastore: fix structure of ItemExtendedCost hotfix table (#255) 2021-04-20 16:00:47 +02:00
Ovahlord 3cb0a99019 Core/Movement: expose orientation, velocity and delay members to SmartAI waypoints as well
superceeds #200
2021-02-24 16:22:36 +01:00
Giacomo Pozzoni 48a0dde345 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
2021-02-21 16:50:55 +01:00
Shauren fbffbbbe14 Dep: Switch to boost process instead of old standalone version 2021-02-19 15:21:15 +01:00
Ovahlord 928aeccd59 Core/Items: ported random enchantment updates from master branch 2021-01-24 14:36:07 +01:00
Phil c8d37293e8 Core/DBLayer: fixed debug build (#195) 2020-12-05 18:27:35 +01:00
Shauren d6aa5e333e Core/DBLayer: Fixed memory leaks with existing SQLQueryHolder uses and eliminated the possibilty of adding more in future (replaced manual memory management with smart pointers) 2020-10-26 18:03:54 +01:00
Ovahlord 361ac2292b Core/Movement: add velocity field to waypoint_data to allow specifying custom speed value for waypoints and cyclic splines
* standartized member naming in WaypointNode and WaypointPath struct
2020-09-24 14:30:48 +02:00
funjoker 6e77dc8f78 DB/Core: Converted hotfix database charset to utf8mb4
Update DBUpdater to create databases with utf8mb4
2020-09-22 01:22:59 +02:00
Ovahlord 27c1fd6aee Core/Movement: implement cyclic spline database support 2020-09-21 00:32:55 +02:00
Ovahlord 9d345f0d87 Core/Creatures: creature groups no longer unnecessarily throw their data on the heap and formations now support inversing angles when waypoint Ids are 0 2020-08-28 23:02:05 +02:00
Roc13x ac6604fba7 Core/Creature: Refactor vendor item code (#167)
* Fix loading referenced vendor items
* Refactored vendor item storage
2020-08-06 01:43:39 +02:00
Roc13x 31b6b77200 Core/Players: Several gold handling improvements (#155)
* Updated the following systems to support large (64bit) gold numbers:
- Auction House
- Mail
- Commands
- Guild bank withdraw limits
- Guild Bank eventlog
- Vendor

* Fixed some vendor checks for when BuyCount > 1
* Tweaked some checks for available gold space
2020-08-03 17:24:32 +02:00
Ovahlord 360651f76f Core/DB: use correct field names in LOGIN_GET_GMLEVEL_BY_REALMID 2020-08-01 15:48:29 +02:00
Shauren 6d4b396f7b Core/DBLayer: Add nicer api for SQLQueryHolders 2020-08-01 15:37:20 +02:00
Shauren 80e4effba5 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) 2020-08-01 15:21:13 +02:00
Shauren adb7e4dba8 Refactor mail loading to execute 2 database queries instead of 1+mails.size() 2020-08-01 15:15:07 +02:00
Shauren 1c1c62d108 Core/Misc: Replace database query in WorldSession::HandleAddFriendOpcode with async version 2020-08-01 15:09:05 +02:00
Peter Keresztes Schmidt a06e5d7d40 Misc: Use [[fallthrough]] attribute instead of comment to mark intentional fallthroughs 2020-07-18 22:43:24 +02:00
Ovahlord d46fb93657 Core/Pools: ported pooling updates from 335 branch 2020-07-13 11:17:19 +02:00
Shauren c51bd68b91 Core/DBLayer: Optimize string based query results by eliminating unneeded buffer copies
# Conflicts:
#	src/server/database/Database/Field.cpp
#	src/server/database/Database/Field.h
#	src/server/database/Database/QueryResult.cpp
2020-07-05 20:53:10 +02:00
Ovahlord 062667df95 Database: fixed prepared statement fields for reloading creature_template 2020-06-02 20:00:03 +02:00
Ovahlord db8e0cf13a Database: updated DB updater database download link to spare Aokromes from madness 2020-06-01 16:06:47 +02:00
Giacomo Pozzoni 08fbf3974e Core/Database: Fix build with Maria DB on some distros (#24248) 2020-05-05 16:27:07 +02:00
r00ty-tc b9b21188ac Core/Database: Correction for later MariaDB version
- Removed unused define CR_INVALID_CONN_HANDLE which was removed entirely in more modern MariaDB versions
2020-05-05 16:27:07 +02:00
Ovahlord 6aa8e4389c Core/Texts: allow creature texts to play sounds via different opcodes (Direct Sound, Object Sound and Music) 2020-05-01 20:16:27 +02:00
Shauren ca881f7e3f Core/DBLayer: Implement async transaction completion callbacks 2020-04-15 21:41:14 +02:00
Shauren 40c3c785a2 Core/DBLayer: Prevent mixing databases with query holders
# Conflicts:
#	src/server/game/Entities/Player/Player.cpp
#	src/server/game/Entities/Player/Player.h
#	src/server/game/Server/WorldSession.cpp
#	src/server/game/Server/WorldSession.h
2020-04-15 21:30:10 +02:00
Shauren 47acc59f49 Core/DBLayer: Prevent committing transactions started on a different database 2020-04-15 21:02:26 +02:00
Shauren d003ebd8e4 Core/DBLayer: Prevent using prepared statements on wrong database 2020-04-15 19:18:58 +02:00
Ovahlord eaee7b3cfa Core/DBLayer: minor spacing fixups 2020-04-15 11:25:34 +02:00
Giacomo Pozzoni dd6498b8f9 Core/Database: Close the MySQL connection only after getting the last error code 2020-04-15 11:06:18 +02:00
Ovahlord 8819428919 Core/DBLayer: fixed no pch build 2020-04-15 10:46:37 +02:00
Shauren 5653d4e2de Core/DBLayer: Support using mysql 8 2020-04-15 10:19:24 +02:00
Ovahlord 9bfe43a88a Core/Entities: remove PhaseMask
* database fields and values will remain until they have been converted to their according phase IDs
2020-03-29 04:05:43 +02:00