Commit Graph

1571 Commits

Author SHA1 Message Date
0a616f891f Change File Finder (#873) 2022-12-05 09:04:59 -06:00
2ba3103a0c Implement FDB to SQLite (#872) 2022-12-05 00:57:58 -08:00
e8ba3357e8 Add support to reload the config (#868) 2022-12-04 16:25:58 -06:00
de3e53de6c Fix Model Vault (#870)
Allow pets, rockets and racecars to be stored in vault
2022-12-04 16:25:25 -06:00
ab5adea24c Move CDServer migration history table (#867) 2022-12-03 13:17:13 +01:00
e1af528d9b Add SlashCommand for spawngroup (#858) 2022-12-02 03:47:27 -08:00
d8945e9067 Add migration to make play_key_id nullable (#857)
since there is an option not to use play_keys
2022-12-02 03:46:54 -08:00
2b9c014b86 Quiet activity manager timer logs (#861) 2022-12-02 00:44:20 -08:00
63460ea00d Fix bricks not creating new stacks (#860)
Unintentionally, bricks were not creating new stacks if you tried to get another stack.  This prevents some missions from being completed.  This issue is now fixed
2022-11-30 01:04:46 -08:00
09dfb6df3a Address news feed showing up on every world transfer (#855)
Addresses the news feed showing up on every world transfer
2022-11-27 22:19:15 -08:00
56da3f8543 Remove Locale (#808)
* Remove Locale (finally)
2022-11-27 16:56:55 -08:00
3222e78815 Implement undo action for pre-built models (#830)
Brick building as of right now does not implement the undo action properly.  This commit addresses the issue with undoing button being non-functional server side and implements the GM needed for addressing further issues.

Implement GameMessage UnUseModel which is called when a model in BrickBuilding is UnUsed.  Important for UGC content down the line.  Final code has been tested as follows:
1. Placed a model in brick build
2. saved placed a brick
3. repeat 2 and 3 twice more for 6 total models
4. Place a new model in brick mode and then edit all 7 models into one brick model instance
5. Pressing undo returns the converted model to the inventory and properly discards the other 6 without crashing.  Intended live behavior is to store this in the inventory instead however behind the scenes work is needed to implement UGC models properly.

Implement enum

Implement the BlueprintSaveResponseType enum so there are less magic numbers sent via packets.
Correct int sizes from unsigned int to uint32_t

Add deserialize test

Add a test for de-serializing a GM that is sent to the client.  Assertions verify the data is in the correct order and has no extra information.
2022-11-27 16:48:46 -08:00
3939f19b08 Add Remove Buff Behavior and patch infinite use Imagination Backpack(#845)
Testing does not reveal any issues with existing buff removals sending this GM as well and may fix more bugs that were unknown, or cause more.
2022-11-27 16:40:14 -08:00
1556f580d6 Improve Diagnostics logging (#841)
Improve diagnostics to write the file name and signal to the log file should there be a crash.
2022-11-27 13:47:14 -08:00
d382eb3bc2 Fix Boogie Down (#854)
- Give entities that have a script component ID of zero a script component still
- Progress scripted entity missions within the for loop as we do for script calls

Tested that Boogie Down is (finally) completable.
Tested that Mission 737 is still completable
Checked that missions progressed inside OnEmoteReceived scripts to not double trigger progression
2022-11-27 04:03:30 -08:00
f8f5b731f1 Allow servers to be run from directories other than build. Read/write files relative to binary instead of cwd (#834)
Allows the server to be run from a non-build directory.  Also only read or write files relative to the build directory, regardless of where the server is run from
2022-11-27 03:59:59 -08:00
e40a597f18 Property Behavior deserialize definitions (#812)
* Implement basic functionality

Implements the basic functionality and parsing of property behaviors.

Unhandled messages and logged and discarded for the time being.  The only implemented message is a basic one that sends the needed info the the client side User Interface to pop up.
2022-11-27 01:24:35 -08:00
af28d170fb Fix chat whitelist path in UserManager error log (#853) 2022-11-27 01:06:17 -08:00
e2616c5f11 Move enums to a single directory
A technical change to move all emum files to a single directory
2022-11-26 14:22:00 -08:00
36eecd693d Brick stack sizes are now unlimited
Make brick stacks unlimited as they were in live.  If you have more than uint32_max bricks, the extra bricks are trashed.
2022-11-26 02:30:53 -08:00
4569f62100 Fix three-part names coming across as INVALID with custom client path 2022-11-26 02:29:53 -08:00
afb97a81b5 Address Mac CI using specific versions of OpenSSL
Corrected CI to use the version brew links in opt rather than the specific version in Cellar
2022-11-25 17:28:20 -08:00
b17ba56af1 Update workflow actions (#844) 2022-11-23 12:50:45 -06:00
9d62a8cd0b Add backwards compatibility with servers using previous setup method
* MasterServer will nolonger require cdclient.fdb

* Added support for packed/unpacked clients not requiring .fdb file if .sqlite exsits
2022-11-21 14:19:37 -08:00
416021c208 Remove need for Avant Gardens Survival Client Fix
This addresses the Avant Gardens Survival bug
Does not conflict with clients that have the fix.
2022-11-21 14:18:01 -08:00
3fa6ea4cea Fix ninjago crashes (#837)
Fixed reading speed from rail paths
Made the config of rail paths be read in sanely due to not having a type
Fixes #835
2022-11-14 13:57:49 -06:00
37524af549 fix trigger loading (#838)
Fixes #836
2022-11-14 12:55:40 -06:00
53b559bef3 Make build script fail if any command fails (#832) 2022-11-14 08:08:49 -06:00
848c066924 Not every scene has triggers, that is normal (#831)
Quell the onslaught of meaningless logs
2022-11-12 08:44:37 -06:00
7429902a64 Prevent adding movingplatform components to all entites with an attached_path (#829)
* Stop adding movingpla comps where they aren't needed

* move stuff around to make it more congruent

* invert if else block logic patter
Since setting up the comp will be longer han just adding the path
will make the readability flow better

* address feedback
2022-11-12 08:44:27 -06:00
22e5d02400 Use Property path name and desc when claiming (#827) 2022-11-12 08:44:13 -06:00
cf7fa8e52d cleanup and define all unknowns in zone reading (#826)
* cleanup and define all unknowns in zone reading
fix for movement path config reading

* simplify reading and don't use intermediates

* fix spelling

* remove dup variable in struct
read to the proper name that relates to the enum
2022-11-12 08:44:03 -06:00
1eff3ae454 Add checks to AssetBuffers before they are used (#820)
* add checks to buffers before they are used
to avoid crashing

* address feedback
2022-11-10 12:59:31 -06:00
7c2437173b Fixed docker installation (#823) 2022-11-07 17:04:20 -06:00
2570c74b71 Remove hardcoded port number in AuthPackets
Removes the hard coded port numbers in AuthPackets
2022-11-07 01:27:48 -08:00
2f48981801 Address socket issues with MariaDB
Use a new method of determining how to send the connection information to the database
2022-11-07 01:26:15 -08:00
1464762bcd Implement GTest and change windows output path
Implement GTest as a testing infrastructure.
Make windows output binaries to the build folder instead of the release type folder (potentially issue further down the line)
Add a simple unit test for DestroyableComponent
2022-11-07 00:12:35 -08:00
9c58ea5c41 add 1261 to the disable landing animation switch case (#819) 2022-11-05 19:09:39 -05:00
1d5c71eb9b Fix Pet Taming causing seg fault (#818)
* Fix Pet Taming

* Fix Pet Taming

* fix pet taming path loading
just make it go to build file since the asset managet handles intermediate steps
there is never res in the path in the live db, so no need to check

* special case BrickModels to uppercase if unpacked
remove redundent variable

Co-authored-by: Aaron Kimbrell <aronwk.aaron@gmail.com>
2022-11-05 19:09:26 -05:00
162f84e285 simplify path fixing for packed vs unpacked (#816)
fix slashes for hasfile for unpacked client checking
2022-11-04 19:45:04 -05:00
8880486c8b Fix chat message reads (#817)
* Fix chat message reads

* Fix teams
2022-11-04 12:28:19 -07:00
8d37d9b681 Organize dScripts (#814)
* Organize dScripts

whitespace

Remove parent scope

Remove parent scope from initial setter

Remove debug

Remove helper programs

* Fix NtImagimeterVisibility script

Co-authored-by: aronwk-aaron <aronwk.aaron@gmail.com>
2022-11-03 12:57:54 -05:00
b974eed8f5 Make changes to certain database functions and a debug assert (#804)
- Replace all interaction of std::string and sqlString.
- Add a return before a debug assertion can be triggered by lvl chunks being loaded on server start.
2022-11-02 22:53:45 -05:00
8edade5f98 Fix client paths (#811) 2022-11-02 20:30:35 -07:00
353c328485 compile fixes and default client_location (#809)
* support for gcc9 on ubuntu 18.04
This is needed to make filesystem work

* fix default for client location
2022-11-02 22:05:52 -05:00
4a6f3e44ee Add support for packed clients (#802)
* First iteration of pack reader and interface

* Fix memory leak and remove logs

* Complete packed asset interface and begin on file loading replacement

* Implement proper BinaryIO error

* Improve AssetMemoryBuffer for reading and implement more reading

* Repair more file loading code and improve how navmeshes are loaded

* Missing checks implementation

* Revert addition of Manifest class and migration changes

* Resolved all feedback.
2022-11-01 13:21:26 -05:00
971e0fb3b6 Modularize gargantuan objects (#797) 2022-10-31 17:32:17 -05:00
62213cd701 Implement basic functionality (#794)
Implements the basic functionality and parsing of property behaviors.

Unhandled messages and logged and discarded for the time being.  The only implemented message is a basic one that sends the needed info the the client side User Interface to pop up.

Tested that the User Interface properly shows up with zero behaviors on it.  No other functionality is changed.
2022-10-31 17:32:07 -05:00
d4af7d76a2 Add property behaviors migration (#790)
* Add behaviors migration

Add migration for behaviors.  Tested that the tables get altered correctly, names are set correctly.

Tested that I can place models, both regular and Brick-by-Brick ones and that they get deleted properly.  Tested that picking up models and re-placing them down properly updates them in the tables.

* Only update when empty
2022-10-31 17:31:49 -05:00
89fb66c4a9 Change AMFArray getters to use Templates and fix CI halting when one matrix fails (#796)
* Change AMFArray getters to use Templates

Move Template definition to header

* Add more tests

Add tests for casting to wrong template type
Add tests for going out of bounds in the array.

* Try continue-on-error

* Update build-and-test.yml

* Try continue-on-error

Update build-and-test.yml

* change version

* Update CMakeMariaDBLists.txt

Update CMakeMariaDBLists.txt
2022-10-30 13:06:05 -07:00