* Initial:
Create Devour componentry, preliminary identity storage and the systems
for Devouring
* I have genuinely no idea what i'm doing
- added the radial menu, it has nothing in it.
- trying to get it to populate. the event under the event is broken,
i don't know why, but apparently it's not typed right
- Added a placeholder transform
- oh also fixed up some devour stuff and moved some things around.
* Holey moley, Transform, better devour, oh my!
- Move DnaComponent into Shared because we need it for the DNA cloning
- Make Transform MOSTLY work on the LAST identity devoured.
- Fix some issues on devour that involved prediction, canceling and
Damage exeucting (Thanks Plykiya for pointing out AttemptFrequency!)
* Proper tail stealing and Damage modifier attempt
Add check to add a wagging component on the Changeling if the victim's
species Prototype had one.
attempt to add the Damage mitigation check
* MAJOR CLEANUP AND FIXES AUGH 3 DAYS!!!
- Nullspaced a clone of a victim
- fix audio using server virtualized Pvs (i hate this)
- fix the mispredicted doafters
- Clean up a wholelotta code
- utilize clone systems to clone appearances
- Move CloneAppearance from server to shared So we can actually access
it
* Examine stuff, more cleanup, Jumpsuit ripping
- make rotting prevent the action
- Add ripping of clothing (guh why is it also server)
- add some System stuff for pushing husked corpse inspection
- clean up more badcode
* Doing things properly, UI sorta kinda works.
- Utilize Relayed events for Devour checking
- Get a UI that partially works, Says the name of identities, doesn't
show their looks
- Make use of the New Dynamic BUI assignment
- commit the sin of no client prediction cause nullspace entities aren't
networked
* Got an entity for the Frontend transform
Issue with the looks
* Stick a camera into a fake mobs forehead
- Get the UI to see the net entity in pause space by using a
ViewSubscriber to get the Pvs from the initially stored identity entity
- Remove all the other parts used to try to get this to work before hand
* Raaaaadiallllllls also fix protection coefficents
- Change FancyWindow to Radial
- Fix Issue where coeffeient checking was the wrong way round
* absolutely massive cleanup, no more camera in mobs
- cleaned up event variables that are not needed
- Removed the use of a Pause space and go back to Nullspace usage
- use a PvsOverride rather than ViewSharing
- Remove old commented out code and Lots of unused code
* Fix "Ui elements" dying on the screen
- some minor cleanup
- don't start the entities that get cloned
* ftl, cleanup, and fixing missing transform details
- add replace functionality to TypingIndicatorSystem and
BodyEmotesSystem
- add placeholder sounds and functions to TransformBodyEmotes
- add extra Pvs handling for later use
- attributions for the funny straw sound
- Sound collections for all of the sounds
- various cleanups
* Some extra cleanup
* Fix some false assumptions about TypingIndicator
- Bubbles now transfer on spawned humans rather than used humans
- Clean up YET MORE CODE
- make it so you can't eat yourself
* Oooprs, forgot to add a Husked Corpse Loc
* Missing period in the husked corpse loc
* bad devour windup placeholder
* Husking and WIP Lungs
- Husking now will be prevented from Revival fully and will change
the appearance of players
* Add finalized Sprites for actions and final meta
- add devour on and off sprites
- add transform action sprite
- Add Armblade sprite for future use
- Credit obscenelytinyshark for the sprites <3
* Remove ling lungs, Entity<> everything
- Remove the ling lungs stuff for now... body system is overly
complicated, makes my head hurt
- Switch every method to use Entity<> from Uid, Comp format
* cleanup, admin logging, WIP Roles
* Admin verb, Roundstart, gamerule stuff
- add a Admin verb to make Changelingification easy!
- Add game rule stuff for admin verb and to tell the hapless
goober how to be a changeling... sorta
- clean up parts to make VV easy... USE THE VERB!!
* Armor Coefficent Check
- Remove bespoke changeling armor check and replace it
with a generic armor coefficient query.
* move to UnrevivableComponent instead of husked
- Move UnrevivableComponent to shared
- add Analyzable and ReasonMessage to UnrevivableComponent
to give granular control of the message and whether or not it shows up
in the analyzer
- remove the check for HuskedComponent in DefibrillatorSystem
* aaaaaaa CopyComp
- Some cleanup
- make Vocal system shared
- make VocalSystem Not make more Actions than it needs
- Use some code from ChameleonProjector so we can copy components
- partially ungod method the Transform system
* Cleanup, Moving more things to CopyComp
- TransformBodyEmotes now uses CopyComp (it's a server component so i
need to tell the server to deal with it
- TypingIndicatorComponent also now uses CopyComp
- cleaned up old, now unused "replace" methods in favor of CopyComp
- BodyEmotesSystem now has a publically accessable LoadSounds to deal
with the same problem Screaming had
* WIP
* Devour Windup noise, ForensicsSystem cleanup
* Revert VocalSystem Changes
- Reverted Moving VocalSystem to shared, copy comp acomplishes it
- added component.ScreamActionEntity = null; for copy comp
* cleanup unneeded comments
* revert an accidental line removal
* Remove duplicate SharedHumanoidAppearanceSystem
* Cleanup Typo's and import Forensics components for Dna
* Some more forensics calls
* cleanup use CopyComp for now until CopyComps
* CR cleanup
* Undo some SharedHumanoidAppearanceSystem changes
* Confound these spaces
* Some Copycomp stuff and fixing some PVS override
* use the proper TryCopyComps that are merged
* Change TransformMenu with RadialWithSector
* All sounds done, Fix lack of typing indicator issue
* Updated attributions to include used sound authors
* some ftl typos and mind_role text issue
* DNA, Screaming, appearance, grammar, wagging
- reduced all of the above using ApplyComponentChanges
- Issue still remains with bodyEmotes sticking around in the UI
* Fix UI stuff, partials, entprotoid, good practices
- bunch of partials added
- UI now has a predicted message
- EntProtoID in the admin verb
- RipClothing now uses Entity<ButcherableComponent>
- husking is now optional (off by default) for testing/till we have
hivemind/when we figure out what were doing with devour
- remove TransformGrammarSet
* More CR stuff and documentation
- Make TargetIsProtected less of a meme, with a prototype
set of DamageTypes to check
- Documenation everywhere
- Move DevourEvents into its own file
* Predicted sounds and fix the comp clone list
- Made all start and stop sounds shared
- Split out the rest of the events and UI stuff into subfiles
- Fixed some Clone comp list issues where comments had -'s causing them
to be read incorrectly
* Damage cap check, Identity Shutdown cleanup, cleanup
* Sound stuff (but actually this time)
* Missed documentation
* Missed Documentation and a EntProtoId
* Remove unused dependency
* Remove a nullcheck
* Some dummy minplayers
* CR - Husked now uses a rem/ensure
* Update Actions in the Prototype
* Fixup mindswap handover
- cleanup and handover PVS on mindswap
* Fixup Missing meta from accidental "Take-theirs"
* Add the Armblade to the roundstart-role
* Cleanup, CR (everything but the UI and renames)
* missed a spot
* missed some more whitespace
* Renames
* Primary constructor and a space in these trying times
* User interface stuff for Slime transformation
* popup prediction
* Ling devour no longer makes duplicate identities
- added a key to identities to the original victim
- Add some extra clone settings
* add guard statements to OnClones
* SentOnlyToOwner additions
* fix for sound stoppage error
* Move Organ deleter into soon to be atomized husk
* clone event inventory
* mono sounds
* lower sound volume
* Fix networked sound warning
* Clone comps thing
* review
* attributions
* Fix clobbered changes
* I'm gonna weh out
- whole bunch of CR changes
* fix some very buggy git
* okay its fixed
* address most review points
* fix inventory
* we hate entityuids
* fix test and more cleanup
* move this
* fix more stuff
* fix validation and rootable
* Remove Quickswitch due to some UI quirks
* oops left out some better explanation
* remove dangling LastConsumed component fields
* fix test fail
* try this
* cleanup cloning subscriptions, add movement speed modifier
* fix slime storage
* fix cloning setting inheritance
* Add session information to transform admin logs
* slay the integration test hydra
* dwarf size
* more volume tweaks
* comments
* improve comments and unpredict deletion due to errors when shutting down the server
* fix displancement cloning
---------
Co-authored-by: ScarKy0 <scarky0@onet.eu>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Properly cache regexes in chat sanitization/accents
Wow I wonder if `new Regex()` has a cost to it *looks at server profile*.
* Avoid lag caused by Tippy command completions
CompletionHelper.PrototypeIDs explicitly says *not* to use it with EntityPrototype. Unsurprisingly, reporting a completion result for every entity prototype in the game is a *bad idea*.
* Add active count metrics to some high-load systems
Mover & NPCs
I suspect the thing that caused the Leviathan round to shit itself on performance is NPC spam in space or something. So let's verify that.
* Enable parallel processing on pow3r again
Originally disabled due to a theory of it causing bugs, it was re-enabled on Vulture, and I'm not aware of it having caused any issues there.
* Replace hashset with bitflags for AtmosMonitor alert types.
Allocating these hashsets was like 20% of the CPU of atmos, somehow.
* Cache HashSet used for space movement collider checks
Turns out this was a ton of server allocations. Huh.
* checkpoint
* pt 2
* pt... i forgot
* pt 4
* patch
* More test fixes
* optimization!!!
* the REAL hand system
* fix RetractableItemActionSystem.cs oversight
* the review
* test
* remove test usage of body prototype
* Update Content.IntegrationTests/Tests/Interaction/InteractionTest.cs
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
* hellcode
* hellcode 2
* Minor cleanup
* test
* Chasing the last of the bugs
* changes
---------
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
* Shuttles now use their proper friction values
* Documentation
* Shuttles now use their proper friction values
* Documentation
* What the instrumentsystem doin
* what the instrumentsystem doing 2
* Conveyor optimisations
- Optimise movement for moving stuff. Better flags + less resolves + slapped parallelrobustjob on it.
- Sleeping for entities getting conveyed into walls.
* Blocker version
* Finish
* Final
* Fix conveyor power mispredict
* Bagel save
* Revert "Bagel save"
This reverts commit 1b93fda81fb852d89b89b0beae0b80f8a61165f2.
* Conveyor resave
* Init Commit
* windows yelling at me to update commit
* working commit, need prediciton and more dehardcoding
* Project 0 warnings
* Working Commit (Near Final)
* ryder got confused commit
* I love Merge Conflicts :)
* Working commit, no prediction
* Forgot the yaml changes
* Comments and typos
* Apparently while the reduced launch mult of lube was initialized it was never used so I revered back to default
* Fixed an incorrect divisor
* bit of cleanup
* Prediciton fixed, and puddles now affect all entities
* FORGOT TO RENAME A VERY IMPORTANT VARIABLE OOPS
* Really big I forgor moment
* Even bigger I forgor moment
* four more merge conflicts to fix four more oopsies
* fixed actual divide by zero moment and also im very dumb
* Even bigger I forgor moment
* four more merge conflicts to fix four more oopsies
* fixed actual divide by zero moment and also im very dumb
* Fix all test fails
* code cleanup
* Webedit whitespace
* Code cleaup
* whitespace webedit
* whitespace webedit
* whitespace webedit
* whitespace removal
* Comments and cleanup
* Re-Added 20 warnings as per Ork's request
* Cleanups
* Spacing fix
* bugfixes and cleanup
* Small bugfix
* Fix prediction
* Mob movement rewrite
* Bandaid
* Working version
* Tentatively working
* Friction to fix cornering
* More fixes
* Refactor mob movement
Trying to cleanup relay ordering / tryupdaterelative being cooked, purge ToParent, and fix all the eye rotation shenanigans.
* Building
* Re-implement jetpacks
* Reorganise weightless movement
* More work
* Fix camera
* reh
* Revert bagel
* Revert this
* Revert held move buttons
* Puddles work but are unpredicted and unoptimized
* Fixes
* Puddle code...
* Actually dirty the slipComp for real
* Sliding component done plus an extra suggestion from ArtisticRoomba
* Atomized Commit
* Added Friction field to Reagent Prototype per design discussion
* Cleaned up Working Commit
* a
* Delete stinkers
* Fix this code smell
* Reviewed
* Funky re-save
* Our conveyance
* Better conveyor sleeping
* Remove this
* Revert "Better conveyor sleeping"
This reverts commit f5281f64bbae95b7b9feb56295c5cf931f9fb2e1.
* Revert that
Way too janky
* Also this
* a
* Working Commit - Still a lot to do
* Acceleration refactor
* Minor jetpack cleanup
* frictionnomovement no longer nullable
* Shared Mover Feels 99% done
* OffGrid/Weightless/Throwing Friction saved
* Fix merge conflicts
* Fix a debug assert
* Final Commit for today
* Some fixes
* Actually use those CCVars Properly
* Need to fix throwing
* Second to last Commit for real
* Jetpack bug fixed
* Jetpack bug fixed
* Test fail patch
* Small patch
* Skates Component cleanup + Bring Accel back to 5 (oops)
* Fix test fail oops
* yaml cleanup make dragons not fat
---------
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* removed contact slowdowns from entities that are weightless or in the air
* fixed kudzu not applying contact slowdown to airbone entities
* revert kudzu fix
* reimplemented kudzu fix with bool datafield
* update variable serialization format
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
* empty commit
* cleaned up and added documentation
* cached airborne check
* rerun tests
* minor review
---------
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: Milon <milonpl.git@proton.me>
* Extracts magic strings from Tag calls
When #36281 gets merged, the `TagSystem` methods will all give warnings. Let's fix those warnings before they even happen!
* Adds missing libraries
* Remove not yet implemented TagSystem changes
* Fix tag spelling error
Genuinely surprised there was only 1!
* Styling and proper type changes
* Styling
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
---------
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
* Conveyor optimisations
- Optimise movement for moving stuff. Better flags + less resolves + slapped parallelrobustjob on it.
- Sleeping for entities getting conveyed into walls.
* Blocker version
* Finish
* Final
* Mob collisions
* impulses
* Collision smoothing
* Locked in
* 30tps working
* r
* fixes
* Best
* Fixes + CVars
* CVars in place
* Pushies
* Opt attempt 1
* Revert "Opt attempt 1"
This reverts commit 5ccd72dcbea09261a992aa1f7f05df169a1ce676.
* Fix mispredicts
* Ready-ish
* better
* Cleanup
* Fix conveyor power mispredict
* Forgetting to actually do deltas
* Fix buckle pushes
* Bagel save
* Revert "Bagel save"
This reverts commit 1b93fda81fb852d89b89b0beae0b80f8a61165f2.
* Conveyor resave
* Fix prediction
* Mob movement rewrite
* Bandaid
* Working version
* Tentatively working
* Friction to fix cornering
* More fixes
* Revert bagel
* Revert this
* Bad parity
* Working
* Fixes
* Woops
* Doc comments
* Pen cap cvar
* StandingState cleanup and sub
* Fix downed mobs
* fish
* client
* Disable pushing on tests
* More variables
* Movement mods
* Mass diff
* 1 more tweak
* Cvar
* Conveyor optimisations
- Optimise movement for moving stuff. Better flags + less resolves + slapped parallelrobustjob on it.
- Sleeping for entities getting conveyed into walls.
* Blocker version
* Finish
* Final
* Fix conveyor power mispredict
* Bagel save
* Revert "Bagel save"
This reverts commit 1b93fda81fb852d89b89b0beae0b80f8a61165f2.
* Conveyor resave
* Fix prediction
* Mob movement rewrite
* Bandaid
* Working version
* Tentatively working
* Friction to fix cornering
* More fixes
* Revert bagel
* Revert this
* a
* Reviewed
* Funky re-save
* Fix velocity
* Table fix
* Review
* a
Mainly useful for medicalborg so you can get a looping sound and not footsteps playing over and over.
Didn't actually update medborg because footsteps need updating.
Not needed for AI.
Joints were created with pivots at object origin, causing unintuitive behaviour when an object was not centered on the origin. Now puts the pivots at the COM.
Joint limits were set based on fractions of the union of the AABB of objects, which did not make geometric sense. Now uses the pivot length with an additional [arbitrary] length.
Joints were created with a very low spring stiffness, which had a negligible effect most of the time but caused very unintuitive behaviour when the pulled object had a low mass (#28028) - disable the spring limit, and just use the hard min/max limits.
Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>