Commit Graph

5833 Commits

Author SHA1 Message Date
Nemanja
66daa1e6db Fix showvalue Ui for melee weapons (#38703)
Co-authored-by: Perry Fraser <perryprog@users.noreply.github.com>
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
2025-08-06 15:01:49 -07:00
slarticodefast
6b6bb2e319 Fix inventory flickering and missing InventoryTemplateUpdated event (#39379)
* fix flickering

* move InitClothing

* fix this
2025-08-06 22:14:28 +02:00
poklj
f76e3b63b7 Changeling devour and transform (#34002)
* 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>
2025-08-06 21:55:49 +02:00
slarticodefast
534553dddf Turn some implants into triggers (#39364)
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
2025-08-06 12:52:11 -07:00
Nemanja
9872a28d7f Miscellaneous Body Decoupling (#38958) 2025-08-06 15:01:20 -04:00
slarticodefast
2e0b11ea51 fix repeated scale visuals removal/ensuring (#39432) 2025-08-06 20:54:50 +02:00
Tao
4821bff941 Fun with cardboard! (#37363)
* learning???

* made card walls work, then made game unlaunchable (:

* Still broken, added notes that I thought of while in bed

* wall, door, table and chair are now bare min functional, yay

* learnt why not to web edit...

* added floors, walls and floors fully complete

* added swords, shields, armour, helmets and arrows

* added funny sound and cleanup small issues

* cleanup

* cleanup

* credited myself

* card to cardboard

* fixed licence issue and meta thingy

* adjusted arrow stam-damage

* made card carpets more regular

* simplified sprite, reduced stam damage

* formatting fixes

---------

Co-authored-by: beck-thompson <beck314159@hotmail.com>
2025-08-06 12:58:07 -04:00
Princess Cheeseballs
91854e0776 Debody Food and Drink Systems, Combine Food and Drink into One System. (#39031)
* Shelve

* 22 file diff

* What if it was just better

* Hold that thought

* Near final Commit, then YAML hell

* 95% done with cs

* Working Commit

* Final Commit (Before reviews tear it apart and kill me)

* Add a really stupid comment.

* KILL

* EXPLODE TEST FAILS WITH MY MIND

* I hate it here

* TACTICAL NUCLEAR STRIKE

* Wait what the fuck was I doing?

* Comments

* Me when I'm stupid

* Food doesn't need solutions

* API improvements with some API weirdness

* Move non-API out of API

* Better comment

* Fixes and spelling mistakes

* Final fixes

* Final fixes for real...

* Kill food and drink localization files because I hate them.

* Water droplet fix

* Utensil fixes

* Fix verb priority (It should've been 2)

* A few minor localization fixes

* merge conflict and stuff

* MERGE CONFLICT NUCLEAR WAR!!!

* Cleanup

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
2025-08-06 12:53:38 -04:00
āda
49c4aab489 Move solution examine subscription from DrinkComponent to ExaminableSolutionComponent (#39362)
* initial it works

* clean it up

* yml

* datafield the LocIds

* move from the other branch

* no max vol on puddles and anoms

* closed

* Changes inspired by #39008

* small bug and more color range

* puddle changes and more examinable solutions

* lint

* small change

* requested changes

* un-delete

* tiny comment

* 1 less loc id in this world

* request and last second change

---------

Co-authored-by: iaada <iaada@users.noreply.github.com>
2025-08-06 09:11:19 -07:00
Myra
8c181eb51a Update RT to 266.0.0 (#39421) 2025-08-06 17:09:51 +02:00
slarticodefast
c4016b97c5 fix DoAfter DistanceThreshold (#39276) 2025-08-06 16:35:31 +02:00
Kyle Tyo
ca18576625 Predict base and damage examines of cartridge ammo. (#39401)
* commit

* requested changes +
2025-08-06 16:29:57 +02:00
Kyle Tyo
3996b35606 Predict EMP Examine (#39419)
* another one bites the dust

* Update Content.Shared/Emp/SharedEmpSystem.cs

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-08-06 16:25:24 +02:00
slarticodefast
71f21d96f7 Move scale command to content and turn it into a toolshed command (#39349)
* scale command

* fix namespaces
2025-08-06 14:33:21 +02:00
Red
5181219f89 Status effects disable light occluding (1-line PR) (#39418)
Update StatusEffectsSystem.cs
2025-08-06 13:02:14 +02:00
slarticodefast
99336a33fb Predict PickRandom verb (#39326)
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
2025-08-05 19:29:13 -07:00
Perry Fraser
053c5f64a0 feat: properly perform predicted porta pottys (fix toilet prediction) (#39394) 2025-08-05 18:34:41 -07:00
slarticodefast
63b2979e73 Predict cryopods (#39385)
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
2025-08-05 17:09:50 -07:00
Perry Fraser
2a4f36422b fix: properly respect AllowRepeatedMorphs (#39411)
* fix: properly respect AllowRepeatedMorphs

* feat: add IgnoreAllowRepeatedMorphs
2025-08-06 02:02:52 +02:00
Luxeator
4a466c5dbe Add guard to unbuckling to help it to not act upon terminating entities (#39410)
* Add guard to unbuckling to help it to not act upon terminating entities

* Refactor guard for unbuckling

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Revert "Refactor guard for unbuckling"

This reverts commit bf975fbd6f5cfac45324a3d5d74e592ad17ad291.

---------

Co-authored-by: Luxeator <Luxeator>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-08-06 01:15:16 +02:00
Kyle Tyo
7de5002123 Predict Nav Beacon Examine (#39408)
* commit

* Update Content.Shared/Pinpointer/SharedNavMapSystem.cs

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-08-05 23:20:43 +02:00
Kyle Tyo
d4c025567a Predict warp point location examines. (#39402)
commit
2025-08-05 20:26:41 +02:00
Ser11y
d7f8614c35 localization support to air alarms, wire panels and more (#39307)
* Add localization to the air alarms, wire panels, network configurator list menu and loadout window

* delete unused

* redo gas localization, delete unused

* removed the extra key

* Moved and renamed air-alarm-ui-thresholds-gas-name

* Moved localization to the XAML

* Use existing strings for gas names

* it just works

* Rename _atmosphereSystem in ScrubberControl.xaml.cs

_atmosphereSystem -> atmosphereSystem

* Rename _atmosphereSystem in SensorInfo.xaml.cs

_atmosphereSystem -> atmosphereSystem
2025-08-05 17:13:04 +02:00
Perry Fraser
96d25402c7 fix: hide timer trigger's cycle time verb if DelayOptions is empty (#39388)
fix: hide cycle time verb if DelayOptions is empty
2025-08-05 05:26:02 +02:00
Tayrtahn
312f81d58a Move HeadstandComponent to Shared (#39377)
Move HeadstandComponent to Shared
2025-08-04 23:00:19 +02:00
ArtisticRoomba
e996fb62f1 Revert "Fix bug with pipe color" (#39135) 2025-08-04 13:10:54 -07:00
Perry Fraser
6d50fb03d6 fix: auto-update mailing unit + gas canister UIs on state (#39289)
* fix: auto-update mailing unit + gas canister UIs

* fix: make FollowerComponent auto handle state

* refactor: kill AfterAutoHandleState for Follower

* flakeops
2025-08-04 18:26:52 +02:00
slarticodefast
61d13ce40d Stable to master (#39352) 2025-08-03 23:55:31 +02:00
Vasilis The Pikachu
2a72e30e0e Revert "Added Kill Tome (Death Note). (#39011)"
This reverts commit d0c104e4b0.

Revert suggested due to code issues and passed the voting.

@ScarKy0 has interest in fixing it

@xsainteer

<https://youtu.be/8RmeZKz-i_w?t=2151>
2025-08-03 22:03:43 +02:00
slarticodefast
2c40a950f7 Trigger Refactor (#39034) 2025-08-03 21:20:37 +02:00
DrSmugleaf
06581a0045 Fix rotate verbs not being predicted (#38165)
* Fix rotate verbs not being predicted

* fixes

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-08-02 17:34:36 -07:00
Token
9d3edeb641 parrotMemory is onGetVerbs now in shared (#39341)
* parrotMemory is onGetVerbs now in shared

* code review

* code review popup on client rename parrotMemoryComponent

* code rev create client system

* forgot usings

* is server now
2025-08-03 02:27:49 +02:00
slarticodefast
c538d7fb2b Predict anomaly synchronizer (#39321)
* predict anomaly synchronizer

* pvs

* lambda

* Update Resources/Locale/en-US/anomaly/anomaly.ftl

---------

Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2025-08-03 01:07:32 +02:00
DrSmugleaf
21eb662377 Fix ActionsSystem.IsCooldownActive always returning false if curTime is null (#39329) 2025-08-03 00:59:48 +02:00
Krosus777
e307fd69b0 HumanoidCharacterProfileFix (#39333) 2025-08-02 17:14:16 +02:00
Kyle Tyo
a99615992a Predict ExamineEvent for CryoPodSystem. (#39322)
commit
2025-08-01 21:38:39 +02:00
Kyle Tyo
d805704a1f Predict EmitterSystem ExamineEvent and GetVerbsEvent (#39318)
* ididathing.exe

* commit

* cleanup

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-08-01 19:40:15 +02:00
Perry Fraser
623ea3dd63 Make VendingMachineInventoryEntry a data definition for post-init savegrid (#38406)
fix: make VendingMachineInventoryEntry a data definition
2025-07-31 20:34:29 +02:00
Mr. 27
66f64bc952 Allow EmoteSoundsPrototype to have parents (#38890)
* inital

* Update Content.Shared/Chat/Prototypes/EmoteSoundsPrototype.cs

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>

* ProtoId

* Unneeded

* Update Content.Shared/Chat/Prototypes/EmoteSoundsPrototype.cs

* Update Content.Shared/Chat/Prototypes/EmoteSoundsPrototype.cs

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
2025-07-31 15:22:33 +02:00
slarticodefast
271e271cc9 Predict passive welding fuel consumption (#38876)
* predict welding fuel consumption

* autopaused

* review

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>

---------

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
2025-07-31 00:38:38 +02:00
Kyle Tyo
68ba22548d Predict GlueSystem (#39079)
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
2025-07-30 12:57:50 -07:00
āda
f6475bd264 EntityEffectConditions changed to be inclusive of min/max (#36289)
* soo hungry going back for more lipolicide

* too much lipolicide.....

* fixes

* it moved

* typo

---------

Co-authored-by: iaada <iaada@users.noreply.github.com>
2025-07-29 23:44:46 -07:00
slarticodefast
d4e77423ca Make RemoveReagent return a FixedPoint2 (#39266)
change return
2025-07-29 10:39:48 -04:00
Alkheemist
9be68a6846 Fix a logic error in Protectedgridsystem (#39271)
fix a logic error in Protectedgridsystem
2025-07-29 14:01:40 +02:00
kosticia
4c24db9d9c Predict mimepowers (#38859)
* predict

* fix

* fix

* aa

* oops

* TOTALFIX

* some more cleanup

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-07-28 20:53:07 +02:00
Nemanja
fedc355f20 fix foldable clothes not working while worn (#39257) 2025-07-28 12:19:17 +02:00
Pieter-Jan Briers
5f52a3ae17 [Mald PR] Plushie sound 1984 (#39250)
* Make melee sounds respect their audio params

* Make food sounds respect audio params

* Plushie sound 1984

Most plushies have been made quieter (by varying degrees depending on how obnoxious the original sound was)

Made plushies 3x slower to use (squeak every 3 seconds / hit somebody every 3 seconds)
2025-07-28 03:11:21 -04:00
slarticodefast
2ac9948ba0 Handle inventory template updating V2 (#39246) 2025-07-27 23:05:58 +02:00
Pok
688c91b597 Add scaling filter option (Nearest/Bilinear) (#39111) 2025-07-27 20:26:17 +03:00
Pieter-Jan Briers
444180c20d Optimizations from server profile (#38290)
* 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.
2025-07-26 11:44:34 +02:00