* Add admin logging, models, migrations
* Add logging damage changes
* Add Log admin flag, LogFilter, Logs admin menu tab, message
Refactor admin logging API
* Change admin log get method names
* Fix the name again
* Minute amount of reorganization
* Reset Postgres db snapshot
* Reset Sqlite db snapshot
* Make AdminLog have a composite primary key of round, id
* Minute cleanup
* Change admin system to do a type check instead of index check
* Make admin logs use C# 10 interpolated string handlers
* Implement UI on its own window
Custom controls
Searching
Add admin log converters
* Implement limits into the query
* Change logs to be put into an OutputPanel instead for text wrapping
* Add log <-> player m2m relationship back
* UI improvements, make text wrap, add separators
* Remove entity prefix from damaged log
* Add explicit m2m model, fix any players filter
* Add debug command to test bulk adding logs
* Admin logs now just kinda go
* Add histogram for database update time
* Make admin log system update run every 5 seconds
* Add a cap to the log queue and a metric for how many times it has been reached
* Add metric for logs sent in a round
* Make cvars out of admin logs queue send delay and cap
* Merge fixes
* Reset some changes
* Add test for adding and getting a single log
* Add tests for bulk adding logs
* Add test for querying logs
* Add CallerArgumentExpression to LogStringHandler methods and test
* Improve UI, fix SQLite, add searching by round
* Add entities to admin logs
* Move distinct after orderby
* Add migrations
* ef core eat my ass
* Add cvar for client logs batch size
* Sort logs from newest to oldest by default
* Merge fixes
* Reorganize tests and add one for date ordering
* Add note to log types to not change their numeric values
* Add impacts to logs, better UI filtering
* Make log add callable from shared for convenience
* Get current round id directly from game ticker
* Revert namespace change for DamageableSystem
* Makes map vote and roundstart smart about player count.
No more Saltern with 30 players, or Knight Ship with 50.
* a typo
* Address reviews.
* Localized.
* Soft player cap that lets in only admins.
* Update Content.Server/Connection/ConnectionManager.cs
Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>
* Update Content.Server/Connection/ConnectionManager.cs
Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>
* XAML verb menu
* fix ghost FOV
* spacing
* rename missed "ContextMenu"->"EntityMenu" instances
* move visibility checks to verb system
* update comment
* Remove CanSeeContainerCheck
* use ScrollContainer measure option
* MaxWidth / texxt line wrapping
* verb category default
Now when you click on a verb category, it should default to running the first member of that category.
This makes it much more convenient to eject/insert when there is only a single option
* only apply style to first verb category entry
* Use new visibility flags
* FoV -> Fov
* Revert "only apply style to first verb category entry"
This reverts commit 9a6a17dba600e3ae0421caed59fcab145c260c99.
* make all entity menu visibility checks clientside
* Fix empty unbuckle category
* fix merge
* Rotate DefaultGrid on round start
Not ideal long-term but good for bugspotting short-term.
* Fix buckle test
Because gridtraversal was being triggered the pos was being fucked when moving back
* Fix buckle
* Buckle offset
* Ambient sound system
Client-side system that plays audio from nearby objects that are randomly sampled.
* Decent
* Tweaks
* Tweaks
* Comment this out for now
* reduce VM sound
* Fix rolloff
* Fixes
* Volume tweak
* Random offset for DefaultGrid every round
This is useful to make coders aware of entitycoordinates and mapcoordinates being different and to help spot problems early. It also puts the onus of fixing positioning bugs back onto the original coder rather than someone else if they happen to spot it.
* Fix clickable test
* Fix entitysystemextensions
Added doc comments to server side voting API.
There is now a 4 minute delay between creating votes of the same type.
Shuffled some code around.
Made a StandardVoteType enum instead of string IDs.
* Broadphase refactor (content)
* Shuttle jank
* Fixes
* Testing jank
* Features and things
* Balance stuffsies
* AHHHHHHHHHHHHHHHH
* Mass and stuff working
* Fix drops
* Another balance pass
* Balance AGEN
* Add in stuff for rotating shuttles for debugging
* Nothing to see here
* Testbed stuffsies
* Fix some tests
* Fixen test
* Try fixing map
* Shuttle movement balance pass
* lasaggne
* Basic Helmsman console working
* Slight docking cleanup
* Helmsman requires power
* Basic shuttle test
* Stuff
* Fix computations
* Add shuttle console to saltern
* Rename helmsman to shuttleconsole
* Final stretch
* More tweaks
* Fix piloting prediction for now.
* Moves all atmos logic from TileAtmosphere to AtmosphereSystem.
* Atmos uses grid anchoring to check for firelocks instead of grid tile lookups.
* CVar for space wind sound
* CVar for explosive depressurization
* GameTicker turned into an EntitySystem
* Turns ClientGameTicker into an EntitySystem, turn NetMessages into events
* Change event names to be more consistent with the rest.
* YAML linter uses the dummy gameticker CVar override.
* Fix game ticker initialization order
* Dummy ticker won't spawn players.
* Fix character creation test