Commit Graph

160 Commits

Author SHA1 Message Date
Menshin 9884351101
Add space heaters (#25250) 2024-02-28 10:27:29 -08:00
Pieter-Jan Briers e00f74505c
Use new ComponentPauseGenerator (#25183)
Also includes some (non critical) changes to the solution file to re-organize the Roslyn components.
2024-02-26 14:36:19 +11:00
MilenVolf c7870882f6
LockVisualizer (#25224)
* LockVisualizer

* Fix state

* Clean some code

* Make it component, fix tests fail

* Fix for StateUnlocked

Now it is possible to manually set the unlocked state and it will work!

* Optimize LockVisualizer, add check for unlocked state

* No todo I guess
2024-02-16 16:52:31 -07:00
metalgearsloth a6ea8b210d
Firestarter fixes (#24647)
* Firestarter fixes

- Actually networks the action.
- Namespace fixes.

* No networky for you
2024-02-01 00:01:52 +11:00
Kara 1a74311c9f
Improve rotting examine text (#24689) 2024-01-28 23:50:17 -08:00
router 4bb670a59c
Change Tmax for fixed floating point epsilon limit (#24370)
This is the largest number that an epsilon of 1/64 = 0.015625K supports
2024-01-21 16:33:06 -06:00
DrSmugleaf 8902701271
Move rotting stages and examine to shared (#24183) 2024-01-17 01:49:21 -08:00
themias fd7ff690b1
Grave digging and decomposition (#23646)
* Grave digging and decomposition

* fix

* update based on review comments

* code review

* remove unused field
2024-01-14 11:47:31 -05:00
Pieter-Jan Briers fa56750d30
Fix exception with gas overlay rendering (#24001)
I had to rewrite this code for #23745 and forgot to test it. Damnit.
2024-01-13 00:22:10 +01:00
Pieter-Jan Briers a6c9c36b68
Dependency update / fixes / skrungle bungle (#23745)
* Give .props files 2-space indents.

* Move to Central Package Management.

Allows us to store NuGet package versions all in one place. Yay!

* Update NuGet packages and fix code for changes.

Notable:

Changes to ILVerify.
Npgsql doesn't need hacks for inet anymore, now we need hacks to make the old code work with this new reality.
NUnit's analyzers are already complaining and I didn't even update it to 4.x yet.
TerraFX changed to GetLastSystemError so error handling had to be changed.
Buncha APIs have more NRT annotations.

* Remove dotnet-eng NuGet package source.

I genuinely don't know what this was for, and Central Package Management starts throwing warnings about it, so YEET.

* Remove Robust.Physics project.

Never used.

* Remove erroneous NVorbis reference.

Should be VorbisPizza and otherwise wasn't used.

* Sandbox fixes

* Remove unused unit test package references.

Castle.Core and NUnit.ConsoleRunner.

* Update NUnit to 4.0.1

This requires replacing all the old assertion methods because they removed them 🥲

* Oh so that's what dotnet-eng was used for. Yeah ok that makes sense.

* Add Robust.Analyzers.Test

* Update submodule

* commit to re-run CI
2024-01-12 23:22:01 +01:00
Kot e97fd47a87
Powered stasis bed prevents body decay (#23520)
* Powered stasis bed prevents body decay

* Update following CR comments

* Remove unused import

* Simplify if-statements

* Change implementation following CR suggestions

* Add comment & remove explicit get/set
2024-01-09 01:40:52 -05:00
metalgearsloth 8659a21916
Use IComponentState for compstates (#21905) 2024-01-04 13:50:48 +11:00
Kara ba88a9a022
Revert "Add YAML gas reactions (#22803)" (#22939)
This reverts commit 054321d2c2.

Co-authored-by: Kevin Zheng <kevinz5000@gmail.com>
2023-12-24 23:50:42 -07:00
Kevin Zheng 2c3f3e5686
Add maximum atmos temperature limit (#22882)
* Add Tmax

* Increase Tmax
2023-12-24 10:05:42 -05:00
router f2cb05bc61
Fix accidental plasma burn nerf (#22894) 2023-12-23 11:35:22 -08:00
Kevin Zheng 054321d2c2
Add YAML gas reactions (#22803)
* Add YAML gas reactions

* Convert more reactions

* Use enum names

* Convert more names

* Add migration for MiasmaCanister

* Prevent reactants from going negative

* Fix energy conservation, lift energy calculation

* Fix comment

* Comment

* Add rate multiplier
2023-12-22 00:30:56 -07:00
Kara ad97580727
Rename Miasma to Ammonia (#22791)
* Rename Miasma to Ammonia

* Namespace changes

* Map change????? why
2023-12-20 21:19:50 -07:00
username c514af0366
Add nitrous oxide decomposition reaction (#22738)
Co-authored-by: whateverusername0 <whateveremail>
Co-authored-by: Kevin Zheng <kevinz5000@gmail.com>
2023-12-20 17:33:08 -08:00
username 5a4e04ea14
Add nitrous oxide synthesis reaction (#22774)
Co-authored-by: whateverusername0 <whateveremail>
Co-authored-by: Kevin Zheng <kevinz5000@gmail.com>
2023-12-20 16:14:59 -08:00
Kevin Zheng 76aae115a9
Reduce absolute temperature tolerance (#22782)
MinimumTemperatureDeltaToConsider sets the minimum temperature
difference for a heat capacity calculation to be run. The problem is
that when heating up large quantities of gas (e.g. with a heater), a
small dT becomes an even smaller dT when running DivideInto(). This
means that small changes in temperature are completely ignored.
2023-12-20 16:42:23 -07:00
Leon Friedrich 68765a4753
Improve atmos debug overlay (#22520) 2023-12-15 14:18:00 -08:00
Kevin Zheng f1665ee5b0
Better plasma and tritium fires (#22468) 2023-12-13 21:39:38 -05:00
Ed aa713ea7e6
Candles (#21087)
Co-authored-by: faint <46868845+ficcialfaint@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
2023-11-03 22:53:51 -07:00
DrSmugleaf 2d58d19b07
Make all prototype types partial (#21374) 2023-11-01 19:56:23 -07:00
daerSeebaer 0bb8c222bd
Added blocked visuals to volumetric pump (#20610) 2023-09-29 19:35:23 -08:00
deltanedas dfc2d8a80b
Change min temp delta to 0.1 (#20512)
Co-authored-by: deltanedas <@deltanedas:kde.org>
2023-09-26 09:41:34 -08:00
Kevin Zheng a622844a5f
Make slow spacing variables CCVars (#19862) 2023-09-13 19:38:56 -08:00
metalgearsloth d5bd1c6f86
Predict StorageComponent (#19682) 2023-09-11 21:20:46 +10:00
metalgearsloth 5a0fc68be2
Content update for NetEntities (#18935) 2023-09-11 09:42:41 +10:00
DrSmugleaf a88e747a0b
Refactor serialization copying to use source generators (#19412) 2023-08-22 18:14:33 -07:00
Kevin Zheng bb7a19d32e
Make thermomachines more thermodynamically sound (#18984)
Co-authored-by: Ilya246 <ilyukarno@gmail.com>
2023-08-22 00:34:45 -07:00
Pieter-Jan Briers a242af506e
Adds the thermo-electric generator (#18840)
* Basic TEG start.

Connects via node group.

* Basic TEG test map

* Sensor monitoring basics, TEG circulator flow

* Basic power generation (it doesn't work)

* More sensor monitoring work

* Battery (SMES) monitoring system.

* Sensor monitoring fixes

Make it work properly when mapped.

* Test map improvements

* Revise TEG power output mechanism.

Now uses a fixed supplier with a custom ramping system.

* TEG test map fixes

* Make air alarms and pumps open UI on activate.

* Clean up thermo machines power switch.

Removed separate Enabled bool from the component that always matched the power receiver's state.

This enables adding a PowerSwitch component to give us alt click/verb menu.

* TEG but now fancy

* Make sensor monitoring console obviously WiP to mappers.

* Vending machine sound, because of course.

* Terrible, terrible graph background color

* Examine improvements for the TEG.

* Account for electrical power when equalizing gas mixtures.

* Get rid of the TegCirculatorArrow logic.

Use TimedDespawn instead. The "no show in right-click menuu" goes into a new general-purpose component.

Thanks Julian.

* Put big notice of "not ready, here's why" on the sensor monitoring console.

* TryGetComponent -> TryComp

* Lol there's a HideContextMenu tag

* Test fixes

* Guidebook for TEG

Fixed rotation on GuideEntityEmbed not working correctly.

Added Margin property to GuideEntityEmbed

* Make TEG power bar default to invisible.

So it doesn't appear in the guidebook and spawn menu.
2023-08-12 15:41:55 -05:00
Ilya246 d3244b6049
copy-settings-to-all-similar for scrubbers and vents in air alarms (#18363) 2023-08-09 14:20:19 -04:00
Leon Friedrich 6982f238e8
Add SaveLoadSavePrototype test (#18859) 2023-08-08 17:27:16 +10:00
Leon Friedrich 5cc5a8c82e
Validate that client prototypes are serializable (#18780) 2023-08-07 13:44:53 +10:00
deltanedas 37b02466ff
rotting meat (#18515)
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2023-08-06 13:05:43 +10:00
Errant 02b06cce39
Reduce gas and jetpack capacity (#18288)
Emergency tank: 4 minutes (down from 12)
Extended Etank: 9 minutes (down from 37)
Double Etank : 15 minutes (down from 62)
Full tank : 31 minutes (down from 94)

This will make it so EVA crews actually need to watch their pressure if they spend significant time outside the station, and/or have a canister in their general vicinity.

Emergency tanks can no longer be used on timescales that far exceed escaping an emergency situation, but will probably be insufficient in extended emergencies, where access to canisters will now be much more important. How well this works in practice will have to be carefully watched.
2023-08-04 14:40:41 -08:00
Nemanja 37e6d99e49
Gas analyzer compref removal (#17992)
* Gas analyzer compref removal

* don't question it
2023-07-12 13:47:45 -06:00
c4llv07e 6e66866567
Add 'auto mode' button to the air alarm ui (#17874)
Signed-off-by: c4llv07e <kseandi@gmail.com>
2023-07-09 13:22:41 -06:00
metalgearsloth 44a3db398b
Draw MapAtmosphere gasses (#17688) 2023-06-28 21:22:03 +10:00
Ilya246 c1644ccd48
Update Atmospherics.cs (#17125) 2023-06-04 18:57:45 -06:00
Tom Leys 28bec85d86
Space sections substantially slower (5-15 sec, exponential) with cooling (#16115)
* Space sections fractionally slower (1 sec, exponential)

- ExplosivelyDepressurize reduces air pressure by about 20% each pass, sets to vacuum below 20 kPa
- Causes some issues with AdjacentBits on airlock close

* Introduced constants for Spacing in atmospherics

* Limit space wind allowed during spacing to 1000 kPa per tile/sec

- Less tile ripping per tick
- Tiles rip based on wind
- Robustness checks

* Slowed down the spacing a bit

* Slowed down the spacing a bit more

* Better dynamics about high pressure air escaping,

- Reduce air temperature (due to decompression) during spacing
- Make some water vapor for flavor

* Limit temperature loss to >8 Deg.C. No Water vapor
2023-05-20 13:53:04 -06:00
Tom Leys e4ccd13845
Plasma still creates tritium down to 1 to 32 concentration (#16517)
- But it's less efficient
2023-05-17 13:22:56 -06:00
Sir Winters 68305ec5fb
5min to 10m (#16457)
Co-authored-by: Owai-Seek <>
2023-05-15 10:52:31 -05:00
Tom Leys d24e4a6631
Frezon reaction requires 50:1 Oxy:Trit ratio (#16295) 2023-05-09 20:27:23 -07:00
metalgearsloth 0e81cb4319
Remove diseases (#15684) 2023-05-07 17:50:37 +10:00
Nemanja b16eba534a
[fix] Fix rotting (#16039)
* Fix rotting

* empty
2023-05-02 22:57:47 -06:00
Menshin fd973be10c
Thermomachines code cleaning + some QoL (#14772) 2023-04-23 13:05:32 +10:00
Leon Friedrich a36a64e6c5
Implicit gas tile & decal states (#15146) 2023-04-05 17:43:12 -06:00
Visne c6d3e4f3bd
Fix warnings and code cleanup/fixes (#13570) 2023-01-19 13:56:45 +11:00