Commit Graph

597 Commits

Author SHA1 Message Date
Shauren
fdd44f70dd Core/Misc: CompilerDefs/GitRevision improvements
* Removed INTEL as a separate platform (it does not belong there)
* Removed BORLAND from known compilers list (it was never supported)
* Simplified TRINITY_PLATFORM_WINDOWS detection (_WIN32 is always defined)
* Rename revision_data.h macros that begin with a underscore
* Added processor architecture to --version string
* Added Linux distribution name to .server debug
* Fixed some revision_data.h macros missing/wrong values when regenerated during compilation
* Removed manual adding of _WIN64 macro from cmake (it is predefined internally by compiler)

(cherry picked from commit e8740fb2e1)

# Conflicts:
#	revision_data.h.in.cmake
2024-09-03 19:56:38 +02:00
Shauren
6051a553eb Core/Utils: Unwrap non-copyable pointers (unique_ptr) from Trinity::Containers::MapGetValuePtr
(cherry picked from commit edb20999a3)
2024-08-17 14:05:57 +02:00
Ovahlord
8c6b9186ca Core/Logging: fixed nopch build for msvc compilers (#30126)
(cherry picked from commit bebd02925d)
2024-07-31 16:38:26 +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
f9451f1cf5 Added missing GameObjectModel::iLosBlockingDisabled initialization in constructor
(cherry picked from commit b3763c338d)
2024-07-18 22:37:14 +02:00
Shauren
d7a26b3897 Core/GameObject: Implemented NotLOSBlocking door property
(cherry picked from commit 2756ca1c35)
2024-07-18 22:37:10 +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
d0927c1094 Core/Utils: Transform char toUpper/toLower functions into callable function objects to better integrate with std algorithms (not calling through a function pointer allows inlining)
(cherry picked from commit 054dd3596f)
2024-07-14 19:03:07 +02:00
Shauren
4c4f5f0ae4 Core/Logging: Removed one layer of allocations from log message writes (async doesn't wrap in shared_ptr anymore and sync creates LogMessage on the stack)
(cherry picked from commit 1cd7898c01)
2024-07-11 19:06:51 +02:00
Shauren
120bea629d Core/Vmaps: Fixed use after free and deadlocks when loading a model file fails
(cherry picked from commit d05dbaaecb)
2024-07-06 22:59:34 +02:00
Shauren
1a3ad52a0b Tools/vmap_assembler: Organize vmap files into directory-per-map
(cherry picked from commit 518fe1fd1e)
2024-07-06 15:36:52 +02:00
Shauren
f40c4e3218 Tools/vmap_assembler: Multithread building vmaps
(cherry picked from commit 11a252e601)
2024-07-06 15:36:43 +02:00
Shauren
e46cad36d2 Tools/vmap_extractor: Split temporary dir_bin into multiple files (one per map) to significantly reduce peak memory usage by vmap_assembler
(cherry picked from commit a0f13391a0)

# Conflicts:
#	src/tools/vmap4_extractor/vmapexport.cpp
2024-07-06 15:36:37 +02:00
Shauren
caf4c02da8 Core/Vmaps: Optimize loading vmaps
* Changed spawn id to BIH tree index mapping from generated on load to baked in tile files
* Remove map holding model load counts and moved that to ModelInstance instead

(cherry picked from commit 35a2d49971)
2024-07-06 15:36:10 +02:00
Shauren
5acd308550 Core/Vmaps: Minor cleanup in MapTree - use unique_ptr to manage file handles
(cherry picked from commit 5dbb6b043f)
2024-07-06 15:36:06 +02:00
Shauren
5ed6b5e53a Core/Vmaps: Minor cleanup in vmap4assembler - use unique_ptr to manage file handles
(cherry picked from commit c8a55f4a18)
2024-07-06 15:35:54 +02:00
Shauren
b62b0e9317 Core/Vmaps: Replace floatToRawIntBits/intBitsToFloat with standard bit_cast utilities
(cherry picked from commit 76a3611317)
2024-07-06 15:35:42 +02:00
Shauren
0a1d2c7813 Core/Vmaps: Replace manual reference counting with shared_ptr and slightly reduce memory use by deduplicating model name strings
(cherry picked from commit ff4fc1ad4e)
2024-07-05 04:43:39 +02:00
Shauren
de5215b3bc Core/Spells: Implemented SPELL_ATTR9_ITEM_PASSIVE_ON_CLIENT
(cherry picked from commit 321161230f)
2024-07-05 04:43:01 +02:00
Shauren
f8b21add51 Build fix
(cherry picked from commit 2f15a815b5)
2024-06-20 01:15:39 +02:00
Shauren
970ca6093c Core/Misc: Fixed windows _UNICODE incompatibilities
(cherry picked from commit fd4ffc81b2)
2024-06-20 01:15:34 +02:00
Shauren
b6714f5746 Core/Crypto: Rename our Argon2 to avoid possible conflict with library file on some configurations
(cherry picked from commit 4f6b49cccf)
2024-06-20 01:15:30 +02:00
Ovahlord
333d5751a9 Core/Cryptography: dropped support for OpenSSL 1.1
OpenSSL 1.1 has been deprecated for quite some time now so it is time to put it to rest. Please upgrade to OpenSSL 3.x

(cherry picked from commit 728e7c7fcf)
2024-05-28 16:59:07 +02:00
Shauren
249eb19fe1 Core/Misc: Minor change to make_unique_ptr_with_deleter to make it accept only pointers
(cherry picked from commit 83f4763b25)
2024-05-28 16:55:30 +02:00
Shauren
814c5c3a4b Dep/fmt: Upgrade to 10.2.1
(cherry picked from commit 2aedd8ecdb)
2024-05-28 16:49:58 +02:00
Shauren
2ceae541cc Core/Misc: Minor fixes in preparation to support fmt v10
(cherry picked from commit 39fc9f8000)
2024-05-28 16:49:12 +02:00
Shauren
78805e49c0 Core/Misc: Support boost 1.85
(cherry picked from commit cfa838df5d)
2024-05-28 16:43:54 +02:00
lee
a9813ee6bb Build: Fix Linux aarch64 GCC build (#29831)
(cherry picked from commit 370685457e)
(cherry picked from commit 5c4b1ace41)
2024-03-28 20:27:25 +01:00
Shauren
04e7c62341 Core/vmaps: Improved WMO detection for group models that don't have floor
(cherry picked from commit 28c9474337)
2024-03-28 20:24:09 +01:00
funjoker
e769af1044 Core: port sneaky fixes from "Core: Updated to 10.2.6.53840" 2024-03-28 20:20:04 +01:00
Shauren
b8bdce306a Core/Logging: Fix intellisense errors - people don't like it when code glows red without a reason
(cherry picked from commit e99482ce9b)
2024-03-25 20:37:05 +01:00
Shauren
c6cff20258 Core/Logging: Improved generated code for log statements (length of text is computed at compile time)
(cherry picked from commit e121ed81d1)
2024-03-25 20:22:58 +01:00
Shauren
382d67622f Core/vmaps: Reset BIH::bounds on tree rebuilds
(cherry picked from commit 18200e1b88)
2024-03-25 20:18:58 +01:00
Shauren
fe9c30f404 Core/Utils: unique_trackable_ptr improvements
* Added comparison operators
* Added type casting helper functions

(cherry picked from commit f690b69338)
2024-03-25 20:18:39 +01:00
Shauren
22bf2daaf7 Core/Utils: Added missing member access in unique_trackable_ptr move assignment operator
(cherry picked from commit 6b255efb2d)
2024-03-25 20:18:23 +01:00
Shauren
b45f7583c7 Fix tests build
(cherry picked from commit 1f3ebbb23c)
2024-03-25 20:16:47 +01:00
Shauren
ed11978fb8 Core/Misc: Fixed windows nopch build
(cherry picked from commit 261a237cfa)
2024-03-25 20:16:37 +01:00
Shauren
8acf79193f Core/Utils: Added a custom smart pointer type unique_trackable_ptr - a specialized variant of std::shared_ptr that enforces unique ownership
* This is intended to be used by external code unable to track object lifetime such as custom scripting engines

(cherry picked from commit 32e54b6bd1)
2024-03-25 20:16:28 +01:00
Shauren
45ee989c70 Core/vmaps: Removed vmap lookup functions duplicating functionality of each other 2024-03-07 00:23:52 +01:00
Shauren
0697cf8c94 Core/vmaps: Increment vmap format version number 2024-03-06 00:04:19 +01:00
Shauren
a70e758ba5 Tools/vmap_extractor: Move information about model type from spawns in vmap tiles to model file itself 2024-03-06 00:04:19 +01:00
Shauren
1aa04cabe1 Tools/mmaps_generator: Added const on some functions interfacing with vmaps 2024-03-06 00:04:19 +01:00
Shauren
67244a1f70 Core/Misc: Replace sprintf with safer alternatives (Trinity::StringFormat or snprintf) 2024-03-01 16:05:34 +01:00
Shauren
20b29c5ff5 Core/Misc: Allow formatting optionals with Trinity::StringFormat 2024-02-28 20:42:20 +01:00
Shauren
1572b8acab Core/Logging: Call Log::instance() only once in each log statement 2024-02-26 22:55:27 +01:00
Shauren
0743a2f7bb Core/CrashHandler: Support dumping variables stored in cpu registers (not accurate for all variables) 2024-02-17 13:15:49 +01:00
Shauren
2441ddbea6 Core/CrashHandler: Support ARM64 2024-02-17 12:03:57 +01:00
Shauren
b9c2dca59f Core/Random: Use correct headers to obtain _mm_malloc definitions 2024-02-17 12:03:06 +01:00
Shauren
a4a4d010a0 Core: Updated to 10.2.5 2024-01-21 22:25:10 +01:00