Commit graph

396 commits

Author SHA1 Message Date
metalgearsloth
83d9f384f6
Remove re-anchor + anchor API cleanup (#45353) 2026-10-05 17:30:46 +11:00
Whatstone
a023e5784c
Cleanup: Remove byte order markers from most files (#45796) 2026-09-17 23:23:54 +10:00
Princess Cheeseballs
2c6ffecf62
Move GameTicker to Shared (#45834)
* Scope creep my ass

* why was this shit not pushed????

* gone...

* fix that

* review plus buildd

* asfsafsafsafsafas

* grug

* burber

* I'll fix this later

* shrimply die

* also this

* it's snerf or snuthin

* assaads

* round snend

* aaaa

* fix this shit for real

* actually, don't start GameRules until MapInit now that I think aboot it.

* forgot u

* don't actually need this part nullable

* Deffer comp removal

* one liner

* do that too

* chungus

* Honestly makes more sense here, plus WHY are we doing all that shit on "GameRuleAdded" rather than GameRuleStarted(?)

* deferred removal :V

* aaaaaaaaaaaaaaa

* whhop

* Whoop

* better

* landmine that I placed for myself then forgot about lmao

* cleanup

* FUCKING `!`

* gotovo

* amogus

* please don't check by metadata I beg

* waawsasfdfsasfa

* sfafsasfafsas

* fdsaasffsasfa

* code

* fix

* fasasffasfasfsad

* chungaas

* I may be stupid

* gra

* graaaaaaaaaaaaaaaaa

* comment

* gra

* clearing is not predicted and would require major refactors, so don't cache on client.

* lame shit :P

* last holes

* nukeopsfsafsasafsfafsa

* why  was that shit public bruh

* bubrbgwahrghfaka

* dynamic

* revert change that did nothing lmao
2026-09-16 19:34:19 +00:00
Sir Warock
ec63a41842
Cleanup of UseDelay (#45350)
* Moving into Systems & Components Folders

* splitting into API file

* Make Method accept null values

* small fix
2026-09-05 17:10:50 +00:00
Rouden
cc2c14f8e4
Device Network refactor part 1: API improvements (#44346)
* Refactor DeviceNetwork

* Singleton

* NetworkPayloads refactor

* Reorganize DeviceNetworkSystem

* Surveillance cameras

* Fix code

* Fix build

* Fix test fail by rewriting entire singleton logic

* Properly predict examine

* Update DeviceNetworkSystem.API.cs

* Update EntityTest.cs

* Update DeviceNetworkSystem.cs

* Alright I'll do this expensive check fine

* Fix disposals debug assert

* Implement device network static events support

* Use frozen dictionaries for performance

* Update SharedDeviceNetworkSystem.Payloads.cs

* Parallel payload handling support

* Fix some spagetti-code

* Optimize NetworkPayload cancellation

* Parallel payloads are now cancellable

* Fix screens

* Fix robotics console

* Allow new methods for shared

* Mail fix

* Turret fix

* Fix network system method usage + signal and borg fix

* finally fix atmos devices OH MY GOOOD

* Remove stupid parallelism from fax

* Fix surveiollance cameras

* Working on a single thing for 2 days straight award

* Fix the test?

* Update units.yml

* Add IDevice interface because why not

* Add more device network suffixes

* Fix camera router failing test

* yaml linter peak

* Improve docs for DeviceNetworkHandlers

* fix build

* Update CartridgeLoaderSystem.Relay.cs

* Remove parallel system and EntitySystem post init

* Add more docs and also events

* Remove unnecessary caching

* Update DevicePayloadComponentSystem.cs

* Back to entity events

* Implement DeviceData

* Remove serializable from payloads

* Update DeviceData.cs

* Add a prototype for a singleton

* Fix tests

* Fix air alarms

* Update DeviceNetworkSystem.cs

* Fix cameras

* Make camera router event-less

* Fix atmos sync payloads, add more docs

* Remove singleton + instant packets

* oops remove public access

* Fix tests?

* Why the hell overload effect makes puddle sparks

* Apparently it was redundant

* Update gates.yml

* Finish documentation

* Review

* Mark relay properties as obsolete

* Struct payloads support (#blazinglyfastmemorysafe)

* Update DeviceNetworkTest.cs

* Make device structs stuff better

* Move address prefix to DeviceNetworkComponent

* Locale fixes

* Fix tests

* Doesn't know boolean logic award

* Update AtmosAlarmableSystem.cs

* Fix address predicted examine

* Partial fix to air alarmables

* Fix deployable turrets UI

* Fix firelocks, maybe

* Apparently Activatable UI was enough lol

* Fix surveillance cameras

* Rename `QueuePacket` into `SendPacket`

* Simplify DeviceData as much as possible

* Update DeviceData.cs

* Update FaxMachineComponent.cs

* Remove DeviceData because its stupid

* Update ScreenSystem.cs

* Fix build (camera map broken still)

* Fix map

* fix usings

* Review changes

* Build fix
2026-08-31 19:42:56 +00:00
Whatstone
06812eed97
Rate limit emitters, only raise PowerStateChanged on a change in state. (#45514)
* rate limit the emitter

* Reset AlertRadioIfWasWorking to void
2026-08-21 08:20:36 +00:00
Fildrance
1a5e9acb24
Extract notify on non-functioning from emitter (#45346)
* refactor: extracted notify-on-non-functioning feature from emitter component

* refactor: revert server side PowerStateSystem usage of SubscribeLocalEvent - it is not calling base Initialize, skip SetWorkingState raising event on init

* refactor: ensureAPC is now conditional for powerstate

* refactor: fix double notifiation on destruction and on un-powering for emitter

* refactor: added LocTurnedOff for NotifyOnNonFunctioningComponent, fix double alert on destruction, removed emitter-deconstructed-broadcast as it is unused (cannot deconstruct withou unanchor)

* refactor: modernize server PowerStateSystem subscription

* refactor: update and modernize PowerStatePrototypeTest

* refactor: give APE specific radio message upon unlocking

* refactor: extracted PowerStateSystem.SetPowerLoad to split init from triggering is-working change event

* Update Content.Server/Power/EntitySystems/PowerStateSystem.cs

---------

Co-authored-by: AJCM-git <60196617+AJCM-git@users.noreply.github.com>
2026-08-16 23:08:58 +00:00
DrSmugleaf
65f5f67cd5
Make every EntitySystem partial (#45220)
* Make every EntitySystem partial

* Oobs thats for a diff PR

* Also oops on that one

* Test systems

* git are we fr

* Update file templates

* cleanup empty classes while we are here

* forgor

---------

Co-authored-by: AJCM-git <ajcm_mail@disroot.org>
2026-08-14 18:24:47 +00:00
Whatstone
2f3cedbf78
APC: add visual states for breaker trips, power delivery (#44127)
* APC: breaker/channel state

* Remove unfilled param tags

* revert ApcLockState.LogWidth change

* Remove local trigger var (unneeded)

* Fix blue pixel in channel-disconnected.png

* clown ops

* DataField attribute cleanup, 4-space meta.json

* Denser APC meta.json

* APC visuals: lock is kill!

* APCVisuals cleanup & comments

* comment public API

* Fix meta.json

* APC changes suggested by Pok27

Co-authored-by: Pok27 <113675512+Pok27@users.noreply.github.com>

* actually readable ApcVisualLayers comments

* goober

* "ApcVisualsComponent", better null description

* SPACE

* finish incomplete SharedApc comments, inheritdocs

* fix tripped east-facing light

* fix APC screen offsets

* Apply AJCM's suggestions

* SPACE

* MORE SPACE

* a million line constructor

---------

Co-authored-by: Pok27 <113675512+Pok27@users.noreply.github.com>
2026-08-14 15:19:53 +00:00
Samuka
4c65a777a8
Xenoborg crystal (#45105)
* verb category

* voltage toggle comp

* move stuff

* add simple prototype

* implement verb action

* switch expression

* fixed the node not updating

* charge the battery

* fixed battery not charging

* spawn on battery level system

* finally works

* swap commentary position

* can only anchor the extractor on the station

* popup message for trying to anchor outside of station

* default placement for unanchored version

* ops

* fix body type

* commentary

* update visuals of power consumer

* add custom sprite

* fix light layer not changing

* xenoborg circuit

* fix xenoborg circuit

* add tag

* add hand to hold xenoborg circuits

* move to material

* add xenoborg circuit material

* add recipe to mothership core

* add a hand to hold circuits to the mothership core

* to not confuse

* update

* ops

* another ops

* update mothership

* update guidebook

* update values

* more info

* fix stack

* can store xenoborg circuits

* description

* also update description

* circuit -> crytal

* not modified from anything

* update description

* Revert "update mothership"

This reverts commit 84974c56afadac2a99ed2a166244a668d83fff48.

* update empty label

* small update to sprite

* not necessary code

* remove empty line

* color

* make it explode when destroyed

* change values

* update sprite

* update sprite

* make it eletrified

* flavor text

* simplify to only use charge

* subscribe to event

* new line

* remove popup

* no need for the setter

* no longer networked

* feedback popups

* Minor tweaks

* better to understand

* better now?

* double the amount of power per crystal

* ajust power levels

* make modules cost more

* update guidebook with new values

* add popup back

* i love solving merge issues

* remove readonly

* use Transform

* predict verb

* only do stuff if both comps are present

* newline

* fix popup

* remove string.empty

* better voltage comment

* remove indentation from comment

* comment

* break the extractor

* fix comp

* change to protected

* add a client system

* make the component with the biggest name ever

* fix the anchor fail message popup

* kill this thing

* update the proto

* revert changes to PowerNetSystem

* ops

* make it spawn some gas when it explodes

* can't discharge

* comment was wrong

* swap order of components

* set examinable to false

* examine text

* rename AnchorableSystem to SharedAnchorableSystem

* rename file and make it abstract

* server side anchor system

* ops

* client anchor system

* use server anchorable system in server

* use battery visuals

* use a helper method

* revert changes to anchorable system

* new system

* new line

* ops, not used

* ops

* fix battery visuals

* set CableDeviceNode as not enabled

* set setting on map init

* enough feedback for the mothership

* new line

* locale changes

* locale changes to SharedPowerNetworkBatteryChargerVoltageTogglerSystem

* change name (again)

* update comments

* add event

* raise a event

* use events

* use a method instead of just raising the event

* more subscriptions to the voltage change event

* update locale stuff

* upgrade voltage toggler system with stuff from the power switch system

* replace power switch with voltage toggle in generator window

* replace power switch with voltage toggle in SharedPortableGeneratorSystem

* replace power switch with voltage toggle in power sensor

* KILL POWER SWITCHABLE COMPONENT AND SYSTEM

* replace power switch with voltage toggle in PortableGeneratorSystem

* replace all PowerSwitchable for VoltageToggler in the prototypes

* nullable switch text

* not required anymore

* mistake with the yml

* fix some issues with locale

* opposite

* i don't have words

* only use delay if it has the delay comp

* revert this change

* revert this change

* revert this change

* revert this change

* add color

* comment

* use another component

* fix the alert not showing

* generic comp for powernetwork battery and power consumer

* rename events

* fix proto

* make it less efficient

* change how it displays the rogue power thingy

* Comp is evil

* comment

* use resolve

* loc id

* error

* one line

* move this stuff to the voltage toggler system

* revert changes to PowerNetConnector

* revert changes to NodeContainerSystem

* revert changes that mess with PowerSupplierComponent

* revert changes to SharedBatterySystem

* revert changes to server BatterySystem

* revert changes to PowerMonitoringConsoleSystem

* remove whitespace

* guess it was 2 lines

* remove this from PowerNetworkBatteryComponent

* PowerConsumerBatteryCharger

* remove charging behavior from power sink system

* add new component to power sink

* extractor now uses power consumer comp

* update PowerDeviceVisuals.Powered for power consumers that are recieving power

* use PowerDeviceVisuals.Powered instead of BatteryVisuals.Charging

* PowerConsumerBatteryChargerEfficiencyVoltageTogglerComponent

* change values

* Orks micro balance

* me when i forget to change the actual value

* change values in the guidebook

* use a event

* move efficiency to the powerconsumer component

* ops

* revert this random change

* remove mapinit

* move to one line

* remove try comp

* update event

* this is important

* use a entity table

* only one line

* use the entity table

* use the current body crusher proto

* update guidebook

* say that it changes the efficiency

* Improve guidebook wording.xml

Co-authored-by: korczoczek <danielkorczok@gmail.com>

* remove random whitespace

Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>

* style stuff

Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>

* make AnchorOnlyOnStationComponent networked

* better wording

Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>

* Prettier

Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>

* fix stack text

* give option to be anchored on any station member

* use 4 spaces

* use stuff from the other PR

* revert this change

* remove power toggle things

* idk

* use a update loop

* revert locale changes about the voltage toggler

* remove mentions of voltage toggling

* ops

* fix proto

* remove white line

* revert this

* move efficiency to PowerConsumerBatteryCharger

* revert rider suggestion

* custom sprite for extractor flatpack

* use a new enum

* make it destructible

* cleanup

---------

Co-authored-by: beck-thompson <beck314159@hotmail.com>
Co-authored-by: korczoczek <danielkorczok@gmail.com>
Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>
Co-authored-by: ScarKy0 <scarky0@onet.eu>
2026-08-13 00:49:37 +00:00
deltanedas
cf7fde3d62
Big prototype and datafield cleanup (#45202)
* giant protoid cleanup

* yml changes

* !

---------

Co-authored-by: deltanedas <@deltanedas:goida.zip>
2026-08-12 02:07:22 +00:00
w3ryfrate
02e8523f05
BreakerFlipRule tweaks and ApcToggleBreaker cleanup (#45097)
* Logging fixed + minor clean-up of ApcToggleBreaker method

* ATS is no longer targeted by BreakFlipRule

* Fixed typo

* Now uses Uid

* Now uses Uid

* Fixed look-up

* Added blacklist to BreakerFlipComponent to specify which entities shouldn't trigger the game rule

* small fix
2026-08-11 21:33:52 +00:00
Krunklehorn
8d1829335e
Power outages are shorter and only affect the main (largest) grid (#37841)
* Cancel if APC is in unpowered list

* Also prevent re-power via re-construction

* Revert useless dependency

* Reduced event time by 10-20 seconds

* Move to ApcSystem

* Also verify game rule is active

* Empty commit

* Move station and affected checking

* Check for main station grid

* Fix format warnings

* Somehow this got duplicated

* Make GetRuleAffectingEntity() also check for BecomesStationComponent

* Make APCSystem also check for ActivegameRuleComponent

* Removed redundant checks and duplicate logic

* Add GridEventEligibleComponent with flag for PowerGridChecks

* Propagate GridEventEligibleComponent.

* Revert GridEventEligible

* Use GetLargestGrid
2026-08-11 04:55:02 +00:00
Whatstone
56c459e98c
Make more ApcPowerReceiverComponent fields DataFields (#45022)
* Dirty ApcPowerReceiver if state doesn't match defs

* surely this will work and isn't massive hubris

* SPACE

* docs & comments

* voltage, not charge

* no space

* jfc
2026-07-30 05:10:39 +00:00
Stanislav
b22d38f9c0
Yaml audio params are often ignored (#36259)
* Replace WithVolume() with AddVolume(),
Remove AudioHelpers.WithVariation(),
Use specifier options for audio params

* Undo switching to AudioParams.AddVariation()

* Replace AudioHelpers.WithVariation with AudioParams.AddVariation()

* Test AudioParams.AddVariation() and change input parameters to sound like previous AudioHelpers.WithVariation()

* Fix build error

* Fix build error v2

* Remove DoAfter

* fixes

---------

Co-authored-by: AJCM-git <ajcm_mail@disroot.org>
2026-07-25 16:16:23 +00:00
psykana
880536d1b6
Predict stunbatons and add an integration test for them (#43117)
* predict stunbatons and add a test

* update

* formatting

* move explosion to riggable

* cleanup

* fix mousetrap

* fix test

* IOC readonly

* fix obsolete

* refactor test a bit

* fix riggable, add test

* moar tests

* fix proto

* EnterMultipleScope

* owner cleanup

* early return

* onActivate

* Fix GetVerb detonating rigged baton, add docs

* test updates

* docs

* improve riggable test

* TestOf

* predicted popup

* Update Content.IntegrationTests/Tests/Chemistry/RiggableTest.cs

* review

* review 2

* the end times

* review

* nesting

* nesting 2

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: Connor Huffine <chuffine@gmail.com>
2026-07-13 18:24:31 +00:00
B_Kirill
96c11f9fd7
Remove Comp.Owner from CableAnchorStateChangedEvent (#44629)
* Remove Comp.Owner from CableAnchorStateChangedEvent

* actually can be simplified
2026-07-13 06:09:30 +00:00
slarticodefast
0552b28cf5
cleanup all popups on client and server (#44572)
* cleanup popups on client and server

* fix RDC BUI
2026-07-11 14:13:19 +00:00
Chris V.
15d3647a31
Fix powered devices reporting as powered when Load is 0 (#43879)
* fix powered devices reporting as powered when Load is 0

* add small power load and draw to reagent grinder

* add small power load and draw for centrifuge and electro...thingy

* remove unhelpful comment

* clean up to make things more clear

* cleanup code for readability, maintaining current functionality
2026-05-27 05:00:36 +00:00
Eveloop
22a547c7c8
Use dependency injection for EntityQuery<T>s in Content.Server (#43566)
* Replace usages of EntityQuery with dependency injected ones in Content.Server

* Remove unused EntityQuery dependencies

* Restore CheckPressureAndFire override method

* Revert EntityQuery refactor changes to DisposalTubeSystem.cs & DisposableSystem.cs

* Infer Transform/Metadata directly instead of passing (#43479)

* Resolve RA0049, RA0051 errors (#43479)

* Resolve RA0049, RA0051 errors (#43479)

* Apply suggestions from code review

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

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2026-05-17 15:59:37 +00:00
Pieter-Jan Briers
5168b5f3d4
IoC source gen compatibility (#43863)
* IoC source gen compatibility

Can be merged before or after https://github.com/space-wizards/RobustToolbox/pull/6549 doesn't really matter.

* Missed a spot
2026-05-09 03:29:58 +00:00
Samuka
ab96ec8b20
SpawnOnBatteryFull component (#43727)
* code stuff

* fix error

* now its fixed

* use the charge from the arg

* only on battery full

* remove whitespace

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

* use default! instead of null!

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

* use set charge

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2026-04-25 22:32:31 +00:00
Princess Cheeseballs
ef3a0ecc2a
Solutions Refactor Part 1 - Solution Prototypes (#43412)
* Everything except the YAML slop...

* She solution on my manager till I sajfslkahfsjakfhaskjfshajksafhfsakhfasjfas

* another 1000 lines

* fix chem dispenser size

* go my shnelf

* Implicit ass

* rider is being mean for some reason

* dasdas

* borger

* better formatting go!

* clothes/bloodstream

* Cartons

* cups and bottles

* mmm soder

* bar drinks

* Spray bottles and some size tweaks with hindsight

* 99 bottles of beer on the wall I hate YAML

* push that shit

* mmm burger

* Sneed

* sheets

* condiments

* mmm yummy

* fridge yummyfood

* meat...

* sub 300

* burger...

* bready

* let them eat cake

* does she know how to make a grilled cheese?

* pizza pie!

* misc shit

* soup or salad

* Food and drinks, vanquished

* the cubes!!!

* Almost free from YAML...

* fix test fails and some yaml issues

* fix prediction, almost done

* fix all test fails

* remove master merge artifacts and undo autonetworking

* review and compatibility

* graaah

* unfuck master merge I hate github

* merg conflicts

* sfsa

* ehoop

* sadas

* afsafsaasf

* merge conflicts

* fucked up the merge conflicts

* merge conflict is fucked I might need to completely redo this branch

* test fail

* no calcium????

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
2026-04-25 02:00:34 +00:00
Princess Cheeseballs
9b0067eff4
Staging To Master (#43264)
* Revert "Remove salv stuff from mothership (#43007)"

This reverts commit eea773ffee.

* remove changelog

* Fix changelog for #43049 (#43248)

Changelogs gotta go on staging in the changelog thing

* Revert "Xenoborg extractor (#42796)"

This reverts commit 7f15e77954.

* revert CL

* Fix floating point tilefire nonsense (#43263)

* Change method call and epsilon

* holy guacamole

---------

Co-authored-by: ScarKy0 <scarky0@onet.eu>
Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
2026-03-16 19:41:19 -07:00
ScarKy0
f89fdaa935 Revert "Xenoborg extractor (#42796)"
This reverts commit 7f15e77954.
2026-03-17 00:02:36 +01:00
Princess Cheeseballs
a1d7406bf2
Move a metric fuckton of AtmosphereSystem to Shared. (#42989)
* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

* fix the tests I broke

* Remove methods that the client shouldn't be calling. Hamburger.

* light cleanup for now

* review

* whoop

* docs updates and misc changes

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
2026-03-14 08:53:49 +00:00
Tayrtahn
c83077f436
Update NodeHelpers and Node.GetReachableNodes to use Entity<TransformComponent> and Entity<MapGridComponent> (#37734)
* Add overloads for NodeHelpers methods, obsolete old ones

* Pass in SharedMapSystem instead of IEntityManager

* Change GetReachableNodes signature, deal with aftermath

* Allow non-grid nodes

* Change GetReachableNodes to also take Entity<TransformComponent>

* Remove vestigial ReSharper hint

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>

* Formatting

---------

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
2026-03-10 21:25:45 +00:00
Samuka
7f15e77954
Xenoborg extractor (#42796)
* verb category

* voltage toggle comp

* move stuff

* add simple prototype

* implement verb action

* switch expression

* fixed the node not updating

* charge the battery

* fixed battery not charging

* spawn on battery level system

* finally works

* swap commentary position

* can only anchor the extractor on the station

* popup message for trying to anchor outside of station

* default placement for unanchored version

* ops

* fix body type

* commentary

* update visuals of power consumer

* add custom sprite

* fix light layer not changing

* xenoborg circuit

* fix xenoborg circuit

* add tag

* add hand to hold xenoborg circuits

* move to material

* add xenoborg circuit material

* add recipe to mothership core

* add a hand to hold circuits to the mothership core

* to not confuse

* update

* ops

* another ops

* update mothership

* update guidebook

* update values

* more info

* fix stack

* can store xenoborg circuits

* description

* also update description

* circuit -> crytal

* not modified from anything

* update description

* Revert "update mothership"

This reverts commit 84974c56afadac2a99ed2a166244a668d83fff48.

* update empty label

* small update to sprite

* not necessary code

* remove empty line

* color

* make it explode when destroyed

* change values

* update sprite

* update sprite

* make it eletrified

* flavor text

* simplify to only use charge

* subscribe to event

* new line

* remove popup

* no need for the setter

* no longer networked

* feedback popups

* Minor tweaks

* better to understand

* better now?

---------

Co-authored-by: beck-thompson <beck314159@hotmail.com>
2026-02-28 00:55:09 +00:00
MidoriKurage
a01e7dcf40
fix: APC sprites stuck in fully drained states on round start (#42852)
* Fix APC incorrect charge state caused by race condition on map startup

* fix: Defer the update from ChargeChangedEvent to next tick
2026-02-09 12:59:43 +00:00
ArtisticRoomba
1b1cb64d24
Power Consumers Rebalance: Simple Dynamic Power Loading (#41961)
* initial commit

* misc additions and fixes

* final tests and additions

* cleanup 1

* fix tests and add a test

* fix tests AGAIN

* abject horror and misery

* cleanup

* cleanup 2

* address some issues
2026-01-21 04:05:44 +00:00
slarticodefast
3266c94eac
Unify BatteryComponent and PredictedBatteryComponent (#41867)
* unify

* cleanup and merge conflicts

* floating points

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
2025-12-19 18:18:12 +00:00
AshBats
f202880461
Admin log now shows APC power toggle interactions (#41839)
Added logging to the APC's toggle interaction
2025-12-14 03:15:58 +00:00
slarticodefast
86f4795849
Fix rigged power cells exploding early (#41813)
* fix riggable

* fix
2025-12-10 10:28:28 +00:00
slarticodefast
0031beca4b
Reapply "Trip APCs when they exceed a power limit (#41377)" (#41789)
Revert "Merge stable into master"
2025-12-08 10:35:11 +00:00
ArtisticRoomba
c867adb937
Revert "Trip APCs when they exceed a power limit (#41377)" (#41766)
This reverts commit a5c223c0
2025-12-08 04:23:45 +01:00
slarticodefast
e2ff167062
Predict powercells, chargers and PowerCellDraw (#41379)
* cleanup

* fix fixtures

* prediction

* fix test

* review

* fix svalinn visuals

* fix chargers

* fix portable recharger and its unlit visuals

* fix borgs

* oomba review

* fix examination prediction
2025-11-24 16:52:11 +00:00
slarticodefast
a428130d45
Remove blacklist methods in EntityWhitelistSystem (#40932)
* replace blacklist methods

* VS is trolling me
2025-11-24 00:38:08 +00:00
Partmedia
a5c223c0c3
Trip APCs when they exceed a power limit (#41377)
* Implement APC overloading

* Add power test

* Review

* Some more reviews

* Show map coordinates for test failures

* Widen column 2

* Reduce singularity beacon power consumption

* Try to get grid coordinates
2025-11-21 15:01:23 +00:00
slarticodefast
7155d0d291
Cleanup BatterySystem (#41298)
* cleanup

* fix fixtures

* this belongs into the next PR

* review

* misc

---------

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
2025-11-08 20:55:02 +00:00
āda
8d8af1bab7
Stack System Cleanup (#38872)
* eye on the prize

* OnStackInteractUsing, TryMergeStacks, TryMergeToHands, TryMergeToContacts

* namespace

* Use, get count, getMaxCount

* component access

* add regions, mark TODO

* obsolete TryAdd, public TryMergeStacks

* GetMaxCount

* event handlers

* event handlers

* SetCount

* client server event handlers

* move to shared

* Revert "move to shared"

This reverts commit 45540a2d6b8e1e6d2a8f83a584267776c7edcd73.

* misc changes to shared

* split

* spawn and SpawnNextToOrDrop

* SpawnMultipleAtPosition, SpawnMultipleNextToOrDrop, CalculateSpawns, general server cleanup

* Rename Use to TryUse.

* Small misc changes

* Remove obsolete functions

* Remove some SetCount calls

* Partialize

* small misc change

* don't nuke the git dif with the namespace block

* Comments and reordering

* touchup to UpdateLingering

* Summary comment for StackStatusControl

* Last pass

* Actual last pass (for now)

* I know myself too well

* fixup

* goodbye lingering

* fixes

* review

* fix test

* second look

* fix test

* forgot

* remove early comp getting

---------

Co-authored-by: iaada <iaada@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-10-25 14:40:48 +00:00
YotaXP
6f02e6c19c
Decouple power sink from tickrate (#40789)
* Fix typo in `BatterySystem.ChangeCharge`.

* Decouple power sink behavior from tickrate.

* Fix power sink's price per joule
2025-10-10 23:01:33 +00:00
slarticodefast
5227489360
Predict EMPs (#39802)
* predicted emps

* fixes

* fix

* review
2025-10-04 11:24:42 +00:00
IProduceWidgets
80947b128a
Add explosive cord. (#25875) 2025-09-25 23:33:28 +02:00
chromiumboy
499dde1ec1
Bug fix for APCPowerReceiverBattery (#40188)
Initial commit
2025-09-07 16:52:27 +02:00
Winkarst-cpu
1f4dfcdcf9
Predict GetVerbsEvent in PowerSwitchableSystem (#39589)
* Prediction

* Update
2025-08-13 09:54:02 +02:00
metalgearsloth
fd52f698c7
Predict PoweredLights (#36541)
* Move PoweredLight to shared

* Predict the rest of the owl

* reacher

* compinit & anim

* Fix names

* Revert this?

* Fix these

* chicken drummies

* deita

* Fix

* review

* fix

* fixes

* fix PVS weirdness

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-08-11 23:06:28 +02:00
B_Kirill
ff7713ecea
Admin logs for batteries UI (#39208) 2025-07-25 14:01:37 +02:00
UpAndLeaves
229f33f22a
Voltage enum to shared (#38964) 2025-07-13 23:13:01 -07:00
SpaceManiac
8b3232f305
Fix extra dollar sign in admin log for machine toggle (#38961) 2025-07-13 06:57:54 +02:00
Nemanja
ab201b6e82
Stasis bed cleanup and bugfixes. (#38762)
* Stasis bed sent to shed

* Code Review

* Code Review 2
2025-07-06 02:59:31 +02:00