* Updating CppScripts
Rewrote file to use a lambda map rather than the massive if else chain. Kept the original comments alongside each of the different scripts they were by before.
* add script tests
* Update names
* More Changes to Scripts
* Update CppScripts.cpp
* Removing Unneeded Files
* Update CppScripts.cpp
* Delete tests/dGameTests/dScriptsTests/CMakeLists.txt
* Delete tests/dGameTests/dScriptsTests/dScriptsTests.cpp
* Delete tests/dGameTests/dScriptsTests/CppScriptsOld.cpp
* Delete tests/dGameTests/dScriptsTests/CppScriptsOld.h
* Update CMakeLists.txt
* finishing up
---------
Co-authored-by: David Markowitz <EmosewaMC@gmail.com>
fixes an issue where the sirens would not be destroyed correctly
fixes undefined behavior in buff station
ok for real this time
actual fix for mermaids
and for general death_behavior 0 skill stuff
we can't use it currently due to threadsafety issues, so just going to remove it until we actually need it and will re-add it as a vendored file later due to cmake issues pulling in things
fixes an issue where physics entities were not given a chance to be marked as sleeping, causing a initial sleeping calls to be missed and causing objects that collided with one another to not register new collisions since they were sleeping at the time the new collision fired off.
Tested that Brick Fury now corectly aggros the _first_ spawn of enemies near by to him.
Tested that the turrets in crux prime now correctly shoot the _first_ wave of enemies that spawn.
I initially used the bind mount because it's arguably easier to back up and move around than a volume, but turns out with https://github.com/DarkflameUniverse/NexusDashboard/issues/92 it's nothing we can recommend for Docker Desktop on WSL, which unfortunately is the primary setup newcomers will try this with. So changing the default to be a volume should address that (presumably by hosting the volume within the WSL Docker VM, as opposed to the host NTFS filesystem)
* move the pet minigame table loading logic out of petcomponent
* misc fixes
* actually, using paths is dumb here when they're already char strings. why bother? silly me.
* removed unga bunga reference-casting
* add back in puzzle not found error message
* pre-allocate unordered map and make getter const-correct
* Update dDatabase/CDClientDatabase/CDClientTables/CDTamingBuildPuzzleTable.cpp
Co-authored-by: David Markowitz <39972741+EmosewaMC@users.noreply.github.com>
---------
Co-authored-by: David Markowitz <39972741+EmosewaMC@users.noreply.github.com>
* feat: showall, findplayer, get/openhttpmoninfo
http monitor info is planned to be used later, just putting in info that i've since reverse engineered and don't want lost
Additionally add debug world packet for duture dev use
Tested all new commands and variation of command arguments
* fix missing newline at eofs
* address most feedback
* Compormise and use struct with (de)serialize
* remove httpmoninfo commands
* nit
* GeneralUtils const-correctness and minor fixes
* use copy instead of reference for char iteration loops
* fix typo and reorganize some functions
* use string to access field name
* Update DEVGMCommands.cpp
* corrected column name
* constexpr array
include <array>
Revert "constexpr array"
This reverts commit 1492e8b1773ed5fbbe767c74466ca263178ecdd4.
Revert "include <array>"
This reverts commit 2b7a67e89ad673d420f496be97f9bc51fd2d5e59.
include <array>
constexpr array
---------
Co-authored-by: jadebenn <jonahbenn@yahoo.com>
resolves a memory leak in BrickDatabase, adds stability to character save doc.
Tested that saving manually via force-save, logout and /crash all saved my position and my removed banana as expected.
The doc was always deleted on character destruction and on any updates, so this is just a semantic change (and now we no longer have new'd tinyxml2::documents on the heap)
* 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: Remove dpEntity pointers from collision checking
* Update fn documentation in ProximityMonitorComponent.h
* use more idiomatic method to calculate vector index
* feedback
* missed a ranges::find replacement
* adjust for feedback. last changes tonight.
* okay, also remove unneeded include. then sleep.
* for real tho
* update to use unordered_set instead of set
* WIP
* get rid of redundent case and some formatting issues
* move some things around for cleaner diffs
* remove dead code that does nothing and add connection check
* fix whitespace
* address feedback
Should be 100% live accurate as far as logic and bitstream reads goes.
Tested with all valiant weapons and crux prime weapons (drops from dragons) that combat does not desync and that the client reports the same level and amount of skill deserialize issues as before.
fixes an issue when stew blaster would stop for non-players and would stand still permanently due to enemy hitboxes being removed. Tested that stewblaster only stops for players and starts moving when there are no players in the vicinity
* remove goto
* Update MovementAIComponent.cpp
* convert to PathWaypoint
Easier for usage with paths
* add path parsing
* ref removal, simplification of work
* it works
* Update MovementAIComponent.cpp
* disable pathing for combat
we just need it for npcs for now, combat ai can be done later
* fixed stuttery enemies
wow
* start at ramped up speed
* add pausing and resuming
* Update MovementAIComponent.cpp
* Update MovementAIComponent.h
* Update CMakeLists.txt
Prevents a bad actor from possibly spamming the server with sequential IDs and allocating a bunch of memory.
Tested that I can still send and receive friend requests