Commit Graph

7439 Commits

Author SHA1 Message Date
metalgearsloth 4bacc02a0e
Pulling rework v2 (#24936)
* Pulling rework

Fixing up the FOUR systems managing pulling, all the shitcode, and also making it nicer ingame.

* More pulling cleanup

* stats

* More cleanup

* First draft

* More pulling

* weh

* Fix puller

* Pulling working

* Fix merge

* Dunked

* Self-merge time

* Fix hotkey

* Fix container changes

* oop

* Fix multi-pulling

* Move alerts cleanup.

* pulling fixes

(cherry picked from commit c584f6444a85cc53edb060230f7e7b2b76cc87bf)
2024-03-24 00:03:20 +01:00
nikthechampiongr 6d38428b56
Fix SCRAM implant not working while cuffed. Incidentally fix freedom implant working while dead/crit (#25978)
* Fix SCRAM implant not being usable while in cuffs. Also fix freedom implant from working while dead/crit as a side effect

* Move check up to apply to all actions and do thing I forgor to do before

* Change check into an ActionBlocker check that also checks whether the user is sleeping.

* Make checking for Consciousness the default for actions

Went through and chose what I believe to be sensible defaults for actions that had CheckCanInteract.

* Fix typos my beloved

I had an unbelievable skill issue

* Fix major skill issue

(cherry picked from commit 22e9d6562f21bdd4f0962d6e3b6fcdd81bb4c253)
2024-03-24 00:01:51 +01:00
Pieter-Jan Briers 34784fc081
Include bans in adminremarks command (#26240)
Fixes #20645

(cherry picked from commit f55c98ce6d1dfdc14a293f2559647372203938af)
2024-03-23 23:59:24 +01:00
brainfood1183 53b2d209b0
Spray Paint (Review Ready) (#23003)
* Spray Paint (Draft)

* paint colors, paints in maints loot, cargo crate of paints.

* fix

* remove paint (sort of)

* moved paintcleaner into own system

* Moved paint to server (had to unfortunately)

* doafter now breaks when moving away.

* cant paint mobstatecomp

* loads of fixes

* fixes

* fixes

* nopaintshadercomp

* fixes

* fix

* use locale for paint remove string

* remove nopaintshadercomponent and use blacklist

* remove enabled.true from visualizer

* paint doafter event.

* add verbs for paint and remove paint and icon for paint verb.

* fixes

* no longer replaces shader when shader exists.

* replace forloop with foreach, check shader before adding and removing.

* paint doafter now separate so no copy paste code

* Entities in sprayed targets item slots are also now correctly sprayed.

* fix

* fix

* fix airlock psray painter now removes painted before painting door.

* spray paints now use openablecomponent.

* fix

* fix damn accesstypes.

* fix

* fix

(cherry picked from commit e4d5e7f1aebfc37b1bc3453fdb39578f3897b6a1)
2024-03-23 23:59:20 +01:00
Pieter-Jan Briers 45c8c4f0b5
Fix barotrauma pressure protection (#26236)
Oops

In #26217 I re-organized the logic for the calculation. Part of that was moving the logic for GetFeltLowPressure and GetFeltHighPressure to be done before we actually check the hazard thresholds. What I didn't realize is that, with how our pressure protection is set up, these functions can return values so extreme they rebound into the other category.

For example, according to the math, when you're wearing a hardsuit in a low-pressure environment you have "felt" pressure of 1000 kPa. Yeah that's not right.

Now these functions clamp their result to OneAtmosphere, in the appropriate direction (101.3 kPa).

Fixes #26234

(cherry picked from commit db81438d30f83a542abe6c81c2ce4a5040aa3ddb)
2024-03-23 23:58:12 +01:00
Tayrtahn 338034a9e0
Fix borg charger error (#26230)
Fix borg chargers not working

(cherry picked from commit 29887636e5614f4f91b968107875722293f0c8b4)
2024-03-23 23:56:18 +01:00
deltanedas e948115f9f
Move faction exception and everything it needs to shared (#25154)
* move faction prototype to shared

* move faction exception and member stuff to shared

* fix breaking changes for random stuff

* move pettable friend stuff to shared

* mostly fix

* final fixy

* dragonops

* final fixy II

* use querys and fix warpspeed fish (probably)

* fixer

* Rrrr!

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>

(cherry picked from commit 7561bef6a7aee65149381e155da53abc65a6a4e7)
2024-03-23 23:55:48 +01:00
Mr. 27 b2564e7a3b
make romerol work on the dead (#26222)
* a

* review

* g

(cherry picked from commit 87386ca0baa9fc3006b726d26723b345b737943d)
2024-03-23 23:52:03 +01:00
Pieter-Jan Briers 00beb141ca
Fix barotrauma calculations
The math for our pressure damage (barotrauma) system is directly taken from TG. The constants are the same and the math is almost the same. However there are two errors.

1. Pressure damage started being applied within the WARNING bounds, rather than the HAZARD bounds. This means you started taking low pressure damage at 50 kPa instead of the intended 20 kPa, and also the HUD icon didn't show "danger" like it should even if you were already taking damage.

2. The calculations for high pressure damage were wrong. These are supposed to be linearly scaled, but the function was wrong so the scaling didn't actually work properly (especially when considering the fixed bounds above). This appears to be the case because the function was taken from an incorrect comment in the original source, rather than the real math.

Both of these issues are now fixed to match the TG behavior. Note that this somewhat nerfs pressure damage in non-extreme circumstances. e.g. a room at 40 kPa now gives NO pressure damage, whereas previously it would do full space damage.

The description of the pressure alerts is wrong for "low" severity, but I can't be arsed to fix that right now. Alerts don't have a way to change the description depending on severity...

(cherry picked from commit b5138b245e1782cc062b9bdf165600b7974e9ed7)
2024-03-23 23:51:54 +01:00
LordCarve cd0b4082bd
Unify `Content`'s `EntitySystem` logging (#26216)
Use Log with generated sawmill name rather than explicitly named one for all non rule-based Content EntitySystems.

(cherry picked from commit eeaea6c25b496106eb741e93738f2ab8503949ba)
2024-03-23 23:51:39 +01:00
wafehling 14b72975df
Added 18 new bounties to cargo (#26160)
* Added 18 new bounties + tags, couple of balance tweaks

* Oops, 2 corn tags.

* Fixed another duplicate from merge conflict

* Fixed all arbitrage issues

* Removed metamorphic glass/manly dorf bounty

* Removed manly dorf bounty

* Removed manly dorf bounty

* Removed manly dorf bounty

* Changed hiviz tag, removed commented out bounty

* Removed extra line

* Change HiViz tag

* Removed unused tag

* Removed LaceupShoes, changed HiViz

* Changed flavor text for fruit bounty

* Removed live mouse bounty

(cherry picked from commit 4357b9ef08fee0e08c4fdf4eeef714fa8eb38112)
2024-03-23 23:51:36 +01:00
Velcroboy b4fc2e342b
Revert AME buff 2024-03-23 00:16:26 +00:00
Debug 9a07def7bf
Properly fix mail and deepfryer 2024-03-17 17:45:05 +01:00
Debug 0ed510b3ac
Why 2024-03-17 15:43:42 +01:00
Debug 73884994e5
Various fixes I shouldn't need to be doing
I love code!!11!!!1!
2024-03-17 15:33:21 +01:00
LordCarve f8ea31a192
Obsolete `Logger` cleanup for `EntitySystem`s part 2 (#26159)
* Kill the static InRangeUnOccluded

* Adjusted 4 more EntitySystems that were missed.

(cherry picked from commit 7d275a4b5e4188db424cc417c609dced3f9aca89)
2024-03-17 15:11:33 +01:00
Ed 58e6820428
SlowContactsSystem to SpeedModifierContactsSystem mini rework (#26110)
* rework

* update logic

(cherry picked from commit c35ff87e146f0cda7c10782f4ab80b784b51e5fe)
2024-03-17 15:11:29 +01:00
metalgearsloth 2f56de838e
Fix presetidcard extended access throwing (#26195)
(cherry picked from commit 677fd3c6db4550431d8801203c03aa2ab5075c29)
2024-03-17 15:11:22 +01:00
metalgearsloth 1f6b5152b9
Fix store refunds (#26173)
(cherry picked from commit f8d023f286bdf1b38bb69349e1c474792a950f51)
2024-03-17 15:11:07 +01:00
Krunklehorn 116df077f2
Fix StrippableSystem blunders (#26166)
* Fixes target hand check when no hands were needed.

* Adds missing CanStripX checks.

* Whitespace.

* Fixed bad math causing instant strips.

(cherry picked from commit 8ecb78ee5ac879ef0c79e9c35f3d05e72faf72fd)
2024-03-17 15:11:05 +01:00
Nikolai Korolev 8a3b0f6d13
Small performance optimization. Don't do String.Trim() second time (#26161)
Don't do Trim 2 times

(cherry picked from commit 3425444c5383f73c830f6299885e44cb4bcab46a)
2024-03-17 15:10:38 +01:00
lzk 4cb89d0641
Fix light replacer popup (#26136)
(cherry picked from commit 456b2a7b5613fdedc508d930bc7842211664c73f)
2024-03-17 15:10:33 +01:00
Tayrtahn 77577475b1
Fix tranq rounds injecting when reflected (#26141)
* Fix tranq rounds injecting when reflected

* Cleanup using directives

* Remove FixtureId from component

(cherry picked from commit f0dfe3f6fb10e1b1f4e1a4b40c860fc0bac8427b)
2024-03-17 15:10:28 +01:00
Tayrtahn e339c2c50c
Code cleanup: puddles and spreaders (#26102)
* Removed obsolete MapManager calls

* More code cleanup

* EnsureComp

* Rerun tests

(cherry picked from commit cf0da11eb791b78590b5a57b0a9ef8572217b7a6)
2024-03-17 15:08:24 +01:00
Krunklehorn faa39fccf5
StrippableSystem doafter overhaul (#25994)
* Initial commit

* Fixed short circuiting

* Use DebugTools

* Use Entity<TComp> more, and make them nullable

* Bring these two together

(cherry picked from commit 41ca8f3dfcb986432e1e509247bf239cac137836)
2024-03-17 15:08:10 +01:00
nikthechampiongr 554aa0774b
Make radio jammer block suit sensors (#26046)
* Make radio jammer block suit sensors

* Fix stupid

Use CancellableEventArgs instead of doing what the hell I was doing before.

* Address Reviews.

Change the event from a CancellableEntityEventArgs to a ByRefEvent.

(cherry picked from commit dce24dfd03b3ddfe1044297edf9d35bc9f75c523)
2024-03-17 15:07:58 +01:00
Crotalus 38dd9e4955
Sort agents by success rate in end game summary (#26058)
* Sort agents by completed objectives

* Use StringBuilder

(cherry picked from commit d674be697e83b590db5aaec9f4411dd57c131861)
2024-03-17 15:07:57 +01:00
Pieter-Jan Briers 17c1a5a7fa
Throttle people trying to connect to a full server. (#20972)
* Throttle people trying to connect to a full server.

To reduce spam/load on the server and connection logs table.

Players are forced to wait 30 seconds after getting denied for "server full", before they can try connecting again.

This code is an absolute nightmare mess. I tried to re-use the existing code for the redial timer but god everything here sucks so much.

Requires https://github.com/space-wizards/RobustToolbox/pull/4487

* Use new NetDisconnectMessage API instead.

* Add admin.bypass_max_players CVar.

Just something to help with debugging the player cap on dev, I don't expect this to ever be disabled on real servers.

(cherry picked from commit 0ecc5e8c96c235af265ab747d7345b363f94b1e4)
2024-03-17 15:07:14 +01:00
Mr. 27 d7c48b4028
Pipebombs and IED rework (#25705)
* inital

* 2-9

* add crafting function, rename ied to fire bomb

* add firebomb ignition

* fikss

* change damage values

* add note

* fix tests i think

* ok

* good

* Review

* warning

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>

(cherry picked from commit 3cb1c585c53f694f5ceb9720057bb765673970ec)
2024-03-17 15:06:54 +01:00
maylokana 4cba6732b5
Drink from closed container fix (#26103)
(cherry picked from commit 2f2cd4aab70703717541e5db3f46ae4831b4129d)
2024-03-17 15:06:11 +01:00
wafehling 17ca360528
Trading Outpost now has half buy-only and half sell-only pallets (#25955)
* Added new Buy & Sell specific cargo pallets

* Remapped trading outpost with new pallets, tweaked texture

* Removed debug message

* Fixed/Compacted conditional checking to let old pallets still work for backwards compatability

* Update Content.Server/Cargo/Components/CargoPalletComponent.cs

Alright, updating all the references to it.

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

* Changed textures, changed to enum instead of string for pallet type check

* Few minor code tweaks/formatting fixes

* Missed the prototype change

* Update Content.Server/Cargo/Components/CargoPalletComponent.cs

* Update Content.Server/Cargo/Systems/CargoSystem.Shuttle.cs

---------

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit c0bbbc33c19eafcc8defaa7f1ec2df42e485b435)
2024-03-17 15:06:02 +01:00
nikthechampiongr 29582a48dc
Add log when a player starts observing. (#26091)
(cherry picked from commit 85e0a5328a28b02fc29575648cfa7421f5bfb410)
2024-03-17 15:05:58 +01:00
Krunklehorn 1f9fa51a56
Fix Butcherable handling, ItemSlots for clown shoes (#25661)
* Fix butcherable handling

* ItemSlots for clown shoes

* Return if handled

* Handle if popup

* Whitespace, spoons are metal

* Zero damage plastic utensils, blacklist by metal+melee

* Hmmm truthy

* Plastic knives are knives too, just use that

* Delete unused tag

* Always true if doAfter

* Raw rat meat should be sliceable too

(cherry picked from commit 674b42b3a0ab9fa607887c1401f38ca1f8bb3911)
2024-03-17 14:58:56 +01:00
Mr. 27 6af478ae29
Zombie wideswing and misc fix (#26064)
* inital

* b

* Update MeleeWeaponComponent.cs

* Update Content.Shared/Zombies/ZombieComponent.cs

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit 3981173a1546dd1d4a21b1c85451ea7eaf69c6f8)
2024-03-17 14:58:53 +01:00
Plykiya 3c45ff6c32
Syringe doafter based on Syringe contents (#25890)
Syringe delay based on amount in syringe

Co-authored-by: Plykiya <plykiya@protonmail.com>
(cherry picked from commit 37cd12524e85b6a3b31827e4751a94ca51268694)
2024-03-17 14:56:17 +01:00
Deatherd f1bd110a13
More fax logging (#25911)
* More fax logging

* Update Content.Server/Fax/FaxSystem.cs

Also logging if no author for some reason

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>

* Update Content.Server/Fax/FaxSystem.cs

* Update Content.Server/Fax/FaxSystem.cs

* Update Content.Server/Fax/FaxSystem.cs

* Update Content.Server/Fax/FaxSystem.cs

---------

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit c27c7086c0acc41b3f58710811bd9358de94fc8c)
2024-03-17 14:56:07 +01:00
Vyacheslav Kovalevsky 4b446c2e62
Fix cream pie bomb when eaten or sliced (#25928)
* fix bomb activation when eaten

* no swap / no eject

* activate when sliced

(cherry picked from commit 0d0edbba4a1c2af7ecef3318b5f9fe287a63fab5)
2024-03-17 14:55:56 +01:00
Gyrandola 12c14747d6
Remove butchering popup when clicking own sprite with a knife (#26051)
added target!=user check

(cherry picked from commit 4e57f1977e3d3e8a48e0d054bf0043af40abc048)
2024-03-17 14:55:45 +01:00
metalgearsloth 28d2f2375c
Fix rounds restarting in the next round (#25856)
* Fix rounds restarting in the next round

Doesn't fix them restarting in lobby I think but should fix most of it.

* delta india sierra charlie oscar romeo delta

(cherry picked from commit 02cc9c05ddf853b613361690b88ba893ce57bab3)
2024-03-17 14:54:59 +01:00
Errant 73b9c6ae95
Nuke Music start adjusted for duration (#25946)
The exact time when the Nuke Music starts is now derived from the music's duration

(cherry picked from commit 680cf5fec13b92f09355acec9892f2db51f3e80e)
2024-03-17 14:54:56 +01:00
liltenhead ef7438efc9
Buff Zombie Infection (#25954)
* Infection chance

* Infection Damage

(cherry picked from commit 56ac86a5c19182b2216e73787b47525ffe0b1cba)
2024-03-17 14:54:43 +01:00
ShadowCommander b1c86ae0b3
Fix arrivals not docking on spinning stations (#26033)
Fix arrivals not working on spinning stations

Increases the tolerance to .15 instead of .1

(cherry picked from commit 9e2e51431938b2df9391939fe499f8963b297292)
2024-03-17 14:54:33 +01:00
SlamBamActionman 3dda5a6cec
Enable multiple Solution Editor windows (#26005)
* More solution edit windows

* Fix error when closing euis after round restart

---------

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
(cherry picked from commit 0da09db99ac556e0efdce40268e60eb5a06a0694)
2024-03-17 14:54:32 +01:00
nikthechampiongr 92f3c54915
Add logs to recycler gibbing and broadcasting. (#26008)
* Add logs to things

* Make the message log be saved as msg because I forgor before.

* Log fails when getting an entity that doesn't exist

---------

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
(cherry picked from commit 2b8415b378c181fd0222cdf7f4d005a70ebe8044)
2024-03-17 14:54:26 +01:00
Ilya246 5809d981b5
allow biomass reclaimer to reclaim plants (#23731)
(cherry picked from commit ec4e0990e16f70e6e4a2c1461680240f78cccaf3)
2024-03-17 14:53:20 +01:00
Arendian 13c6eeb87a
Criminal record hud icons (#25192)
* Security hud shows icon based on criminal record status

* Criminal status now linked to name instead of identity

* parole loc

* Test fix

* review changes

* Check station records instead of storing names on criminal record consoles.

* cleanup

* more cleanup

* review changes

* change outdated comments

* rename

* review changes

* remove event subscription

* replaced event with trycomp

* default value

(cherry picked from commit 60b9d89e4dbdd8aaad4992a105628297d9480617)
2024-03-17 14:52:22 +01:00
Gyrandola 398f21cbf5
Add admin logs for butchering (#25980)
Update SharpSystem.cs

(cherry picked from commit f9bb70aea170f8f02b5245a256a5136f3da70509)
2024-03-17 14:51:47 +01:00
metalgearsloth 06397da6bd
Fix mice steering (#25965)
Thinks there's obstacles when there isn't.

(cherry picked from commit 819ec6361d0d2792b43357a6c45f8c95cb08d9ed)
2024-03-17 14:51:14 +01:00
LordCarve 60f2c8376d
Obsolete `Logger` cleanup for `EntitySystem`s (#25941)
* Small obsolete Logger cleanup

* Fixed three EntitySystem logs that weren't doing it right.

(cherry picked from commit aafe81512258b5a80776ada1f471b58e7507ca2d)
2024-03-17 14:46:35 +01:00
Menshin 38adf75d3e
Thermomachines now excite the gas mixture they add heat to (#25916)
Atmospherics thermomachines now properly invalidate tiles they add heat to.

(cherry picked from commit 1e62e445f0b5298c50dc0ab7ff20f88563a13d5f)
2024-03-17 14:42:59 +01:00