Commit Graph

17 Commits

Author SHA1 Message Date
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
Nemanja e3c3f4898f
Fix NPCs stalling when too many exist (#37056)
Fix NPC stalling when too many exist
2025-04-30 10:51:41 +10:00
Vasilis b860774d7c
Do not wake up NPC if there is still a mind attached. (#27651)
* Do not wake up NPC if there is still a mind attached.

This became apparent with diona nymphs (?) and slime gyras (?). This caused players that disconnected while a nymph, gyras or other npc to resume their NPC behavior. Which I would call unwanted. This fixes that.

* Zombies become AI anyway

* Update Content.Server/NPC/Systems/NPCSystem.cs

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
2024-05-11 11:01:28 -04:00
Ed f3a97fc0c5
Killer tomatoes (#26053)
* make tomatoes

* many friends! many mommies

* finish

* renaming system

* fix

* Update miscellaneous.yml

* Update Content.Server/NPC/Systems/NPCImpritingBehaviourSystem.cs

Co-authored-by: faint <46868845+ficcialfaint@users.noreply.github.com>

* N

* deleete exception?

* merge conflict fix

* fix?

* fuck you

* sloth fixes

* fixess?

* fix

---------

Co-authored-by: faint <46868845+ficcialfaint@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-04-18 21:21:56 +10:00
Pieter-Jan Briers 68ce53ae17
Random spontaneous cleanup PR (#25131)
* Use new Subs.CVar helper

Removes manual config OnValueChanged calls, removes need to remember to manually unsubscribe.

This both reduces boilerplate and fixes many issues where subscriptions weren't removed on entity system shutdown.

* Fix a bunch of warnings

* More warning fixes

* Use new DateTime serializer to get rid of ISerializationHooks in changelog code.

* Get rid of some more ISerializationHooks for enums

* And a little more

* Apply suggestions from code review

Co-authored-by: 0x6273 <0x40@keemail.me>

---------

Co-authored-by: 0x6273 <0x40@keemail.me>
2024-02-13 16:48:39 -05:00
Leon Friedrich f308adffaf
Move ActorComponent to shared (#21293) 2023-10-29 04:21:02 +11:00
Morb 8bcab77bc4
Disable SSD indicator for NPC (#20027)
* Make ActiveNPCComponent shared

* Check if entity have ActiveNPC component

* Make networked

* Fix path

* fix
2023-09-14 22:15:26 -04:00
metalgearsloth 7dbd8f8b7a
Add TryGetNpc (#19553) 2023-08-26 13:45:29 +10:00
DrSmugleaf 321986d5cc
Fixed trying to resolve unregistered NPCComponent type, fix NPCs (#19547) 2023-08-25 14:52:23 -07:00
metalgearsloth b5afb96bbd
Remove HTN ComponentReference (#19480) 2023-08-25 17:05:21 +10:00
metalgearsloth c31c848afd
Shooting NPCs and more (#18042)
* Add pirate shooting

* Shooting working

* Basics working

* Refactor time

* More conversion

* Update primitives

* Update yml

* weh

* Building again

* Draft

* weh

* b

* Start shutdown

* Starting to take form

* Code side done

* is it worky

* Fix prototypes

* stuff

* Shitty working

* Juke events working

* Even more cleanup

* RTX

* Fix interaction combat mode and compquery

* GetAmmoCount relays

* Fix rotation speed

* Juke fixes

* fixes

* weh

* The collision avoidance never ends

* Fixes

* Pause support

* framework

* lazy

* Fix idling

* Fix drip

* goobed

* Fix takeover shutdown bug

* Merge fixes

* shitter

* Fix carpos
2023-08-01 19:48:56 -05:00
deltanedas 5c98b350a2
megafauna elimination mission and fish salv faction (#16720)
Co-authored-by: deltanedas <@deltanedas:kde.org>
2023-05-25 22:23:20 +10:00
metalgearsloth fda607b2f6
Fix NPC awake assert (#15783) 2023-04-25 22:33:13 +10:00
Jezithyr eeb5b17b34
Mobstate Refactor (#13389)
Refactors mobstate and moves mob health thresholds to their own component

Co-authored-by: DrSmugleaf <drsmugleaf@gmail.com>
2023-01-13 16:57:10 -08:00
Pieter-Jan Briers 55c61b9c35
Config presets system. (#12824) 2022-12-16 23:26:24 +01:00
metalgearsloth 4db3b30dc1
Sleep NPCs on attach (#12014) 2022-10-19 10:07:44 +11:00
metalgearsloth 0286b88388
NPC refactor (#10122)
Co-authored-by: metalgearsloth <metalgearsloth@gmail.com>
2022-09-06 00:28:23 +10:00