* merge ServerType and ServiceID enums
* rename eConnectionType to ServiceType in preparation for enum unification
* unify ServiceID and ServiceType enums
* shrink ServiceType to an 8-bit integer
* fix linux compilation error and update gamemsg test
* return to uint16_t
* Update dNet/AuthPackets.cpp
Use cast instead of padding
Co-authored-by: David Markowitz <39972741+EmosewaMC@users.noreply.github.com>
* Add default case to MasterServer.cpp
* move ref back to type
* Another formatting fix
* Fix comment to be more accurate
---------
Co-authored-by: jadebenn <9892985+jadebenn@users.noreply.github.com>
Co-authored-by: David Markowitz <39972741+EmosewaMC@users.noreply.github.com>
* change behavior id to LWOOBJID
Convert behavior ID to LWOOBJID length
missed header
fix sqlite field names
sqlite brother
* feat: add saving behaviors to the inventory
consolidate copied code
consolidate copied code
Update ModelComponent.cpp
remove ability to save loot behaviors
* Rewrite AMF and behavior logic to use smart pointers, references, and string_views over raw pointers and std::string&
* fix m_BehaviorID initialization
* Fix BlockDefinition member naming
* remove redundant reset()s
* Replace UB forward template declarations with header include
* remove unneeded comment
* remove non-const ref getters
* simplify default behavior id initialization
* Fix invalidated use of Getter to set a value
* Update AddStripMessage.cpp - change push_back to emplace_back
* fix pointer to ref conversion mistake (should not have directly grabbed from the other branch commit)
* deref
* VERY experimental testing of forward declaration of templates - probably will revert
* Revert changes (as expected)
* Update BlockDefinition.h - remove extraneous semicolons
* Update BlockDefinition.h - remove linebreak
* Update Amf3.h member naming scheme
* fix duplicated code
* const iterators
* const pointers
* reviving this branch
* update read switch cases
* Add MSVC optimization flags
* test moving flags to json
* Update CMakePresets.json
* testing
* trying more variations on the flags
* third test
* testing if these even have any effect
* ditto
* final(?) try for now
* ONE MORE TIME
* trying 'init' flags instead
* export the compile commands so I can see if they're having any effect
* move out g++ O2 flag
* add Linux debug preset
* update CMake presets
* edit macos presets
* try adding build types back to mac
* macos refuses to work :(
* try using compiler flags for mac instead
* fix typo in windows preset
* build reorganization and experimental clang support
* temporarily remove macos build for testing purposes
* updated cmake workflows
* unexclude toolchain dir
* update .gitignore
* fix build directory issue
* edit build script
* update cmake configs
* attempted docker fix
* try zero-initializinng this struct to solve docker issue
* try fixing macos build
* one last MacOS try for the night
* try disabling an apple-specific build rule
* more fiddling with mac test builds
* try and narrow down the macos build failure cause
* try stripping out all the custom macos test logic again
* I'm really just throwing everything to the wall and seeing what sticks
* more macos tinkering
* implib
* try manual link directory specification
* save me
* aaaaaaaaa
* paths paths paths
* Revert "paths paths paths"
This reverts commit 9a7d86aa6c.
* Revert "aaaaaaaaa"
This reverts commit 338279c396.
* Revert "save me"
This reverts commit bd73aa21a9.
* Revert "try manual link directory specification"
This reverts commit 0c2d40632e.
* Revert "implib"
This reverts commit d41349d6ed.
* Revert "more macos tinkering"
This reverts commit 829ec35b57.
* Revert "I'm really just throwing everything to the wall and seeing what sticks"
This reverts commit 1a05b027fe.
* Revert "try stripping out all the custom macos test logic again"
This reverts commit cc15a26ce8.
* Revert "try and narrow down the macos build failure cause"
This reverts commit 5fd86833fa.
* Revert "more fiddling with mac test builds"
This reverts commit 0f843c02c9.
* Revert "try disabling an apple-specific build rule"
This reverts commit 45ec66e976.
* back to debug messages
* see if this re-breaks mac
* are these messages actually somehow fixing the issue?
* was not actually fixed
* add debug messages (again)
* debug try 2
* change runtime output dir
* rename gcc to gnu
* expand cmake presets
* fix preset
* change defaults
* altered cmake configuration scripts
* disable /WX on MSVC
* update github actions
* update build presets
* change gnu and clang build directories to enable consistent artifact generation
* add RelWithDebInfo presets and move -Werror flag into presets.json
* use DLU_CONFIG_DIR envvar
* CMakePresets indentation
* temp fix for MSVC debug builds
* saving from a test works
* testing works
* Update SavingTests.cpp
* test dServer stuff
* tests
* use dummy database and add missing pure fns
* add more tests
* add more tests
* add rocket tests
* Update BuffComponent.h
* Update test_xml_data.xml
* Update SavingTests.cpp
* update
* nit
* GeneralUtils const-correctness and minor fixes
* use copy instead of reference for char iteration loops
* fix typo and reorganize some functions
* WIP, but working
* Scaffolding
* testing and making it compile again
* move all commands to functions
* renaming to compile
* fix failing tests
idk how these werent failing before. Seems to have been magic.
* move commandss into their namespace
make help command useful
fix mac error
TODO: remove the multiple not founds/ rework the structure to split into help and handling
* Just need to fill out the fields, but it's all there templated
* Add all aliases, register missing commands
* All help text
* remove test logs
* improvements
pass through added code for optimizations and cleanup as well as reduce the amount of scoping for readability and maintainability
* Update SlashCommandHandler.cpp
* only save command if it is a GM command
* simplify if checks
* remove broken delimiter
* Update SlashCommandHandler.cpp
* Update SlashCommandHandler.cpp
---------
Co-authored-by: David Markowitz <EmosewaMC@gmail.com>
* chore: supress warnings on external library headers and actually get rid of the last old-style casts
* remove commented out section I forgot
* update cmake required version to 3.25 unless we can find another way to do this
* update readme
* Update CMakeLists.txt
* fix: more include changes
* fix: remove dZoneManager from global include
* fix: dDatabase
* fix: dCommon
* fix: object libs
* fix: rebase
* fix: bcrypt
* wip: try simplified connector build
* fix: update dockerfile
* fix: mariadb C/C++ on apple
* feat: Move scripts to CMAKE_MODULE_PATH
* fix: dPropertyBehaviors
* fix: macos?
* fix: Dockerfile
* fix: macos?
* fix: macos?
* fix: macos?
* fix: macos?
* fix: macos?
* try: install_name_tool
* fix not building on unix
* fix include paths
* Remove code changes
Will fix in another PR.
* format pass
remove 2 more included directories.
remove commented out code
add status to messages
* comments and format
surround include directories with quotes
remove commented out code
remove debug messages
* Update CMakeLists.txt
---------
Co-authored-by: David Markowitz <EmosewaMC@gmail.com>
Co-authored-by: David Markowitz <39972741+EmosewaMC@users.noreply.github.com>
* allow usage of NiPoint3 and NiQuaternion in constexpr context
* removed .cpp files entirely
* moving circular dependency circumvention stuff to an .inl file
* real world usage!!!!!
* reverting weird branch cross-pollination
* removing more weird branch cross-pollination
* remove comment
* added inverse header guard to inl file
* Update NiPoint3.inl
* trying different constructor syntax
* reorganize into .inl files for readability
* uncomment include
* moved non-constexpr definitions to cpp file
* moved static definitions back to inl files
* testing fix
* moved constants into seperate namespace
* Undo change in build-and-test.yml
* nodiscard
* Assorted pet improvements
* remove unecessary include
* updates to address some feedback
* fixed database code for testing
* Removed reference member (for now)
* Removed cmake flag
* chore: organize build flags
* Remove ambiguous include path
Don't be default incluyde bcrypt so you need to specify the folder. Allows pre-processor to find the correct file.
* Revert settings
* working
f
* add enum stringification functionality from third party source
* squashed commit
* Macros: Add test and improve speed
Space macros out
utilize cache locality
ensure no lost functionality
* moved stringify code to dCommon
* Rename #defines in stringify enum tests
* Revert "moved stringify code to dCommon"
This reverts commit 33fa5f8d2f.
* improve macro functionality
change function handle
formatting and function definition tweaks
* typo fixes
* moved code to dCommon/dEnums and tests to dCommonTests/dEnumsTests
* initial magic_enums alternate implementation of enum stringification
* deleted unused tests
* reverted compile flag oopsy and fixed output types
* fixed testing suite
* test formatting improvement
* formatting again :(
* added gm string to "aborting gm!" message
* Push my suggestion for CI tests.
* updated magic enum test
* fix test variable type
* added gm test
* making sure magic_enum is on a release branch
* tidying up console outputs
* re-implemented enum array access for performance
* now it is bugged :(
* nvm, working
* helping out the snowflake compilers
* changed return type too
* optimization too
* formatting too I guess because why not
* being even more painfully specific
* Update WorldServer.cpp to match emo's feedback
* Update MagicEnumTests.cpp to use srand(time(NULL))
* Update eGameMessageType.h - formatting
* Trying to fix the crash but can't actually compile the code to check on my own rn
* Update WorldServer.cpp - third try at this
* Update MagicEnumTests.cpp - use better macro definitions
* Update MagicEnumTests.cpp - c string comparison fix
* addressing all but the cmake feedback
* fixed cmake to the best of my very limited ability
* added tests to verify magic enum arrays are pre-sorted
* updated
---------
Co-authored-by: David Markowitz <EmosewaMC@gmail.com>
Co-authored-by: Jettford <mrjettbradford@gmail.com>
* feat: add configurable feature and versions
to allow for easily swithing it out to enable features in the client for funsies
tested that this doesn't break anything and added test
* cleanup
* Added cooldown handling
* Made most of the logs hidden outside of debug mode
* removed weird submodule
* kill this phantom submodule
* updated to reflect reviewed feedback
* Added IsCooldownImmune() method to DestroyableComponent
* friggin typo
* Implemented non-pending changes and added cooldown immunity functions to DestroyableComponentTests
* add trailing linebreak
* another typo :(
* flipped cooldown test order (not leaving immune)
* Clean up comment and add DestroyableComponent test