Commit Graph

68 Commits

Author SHA1 Message Date
Tayrtahn
7f3b436dc1 Fix prototypes so they pass analyzer checks (#35435)
(cherry picked from commit 6f925dd61083a3fd377e5d12549ac908985e855f)
2025-09-27 13:54:06 +03:00
metalgearsloth
12b19f9b54 Roof data rework (#35388)
(cherry picked from commit a4575511084c1472e677b2dfbd44360de90710ef)
2025-09-27 13:53:04 +03:00
Eris
75a463cf5d Saving changes 1 2025-07-20 14:37:13 +10:00
DEATHB4DEFEAT
7809e1a0e8 Fix Friction without Input (#2289)
Problem I had on Parkstation, ported the fix here.

Co-authored-by: VMSolidus <evilexecutive@gmail.com>
(cherry picked from commit 6061334d37f3bf89522da9703b607d86d7e67a5b)
2025-04-26 11:40:43 +03:00
VMSolidus
313783ce5d Small Atmos Fixes (#1979)
# Description

This fixes a few issues with SWV5, albeit what I can fix for now until I
have completed work on the Matrix Airflow System.

# Changelog

🆑
- fix: Fixed some bugs with Space Wind related to lockers causing
massive air flow spikes,
- fix: Fixed space wind not being calculated correctly for stations
which get gravity from their planet, such as Glacier.
- fix: Fixed an issue where Space Wind wasn't respecting the cosmic
speed limit of 30 meters per second.

(cherry picked from commit e06811b3310e15b8afba9792e36296c6b373a11e)
2025-03-21 16:46:49 +03:00
Spatison
a3a8c195e5 Upstream 09.03-15.03 (#349)
* Trait Cost Balancing (#1906)

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Makes a lot of disabilities give more points (based off community and
personal opinions), and makes some very strong traits cost more points.

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑
- tweak: Narcolepsy gives 6 points instead of 2
- tweak: Pacifist gives 8 points instead of 6
- tweak: Muted gives 6 points instead of 4
- tweak: Sluggish gives 5 points instead of 3
- tweak: Snail Paced gives 8 points instead of 5
- tweak: Blood Deficiency gives 6 points instead of 5
- tweak: Hemophilia gives 4 points instead of 2
- tweak: Clumsy gives 4 points instead of 1
- tweak: Bad knees gives 5 points instead of 3
- tweak: Will to live costs 3 points instead of 1
- tweak: Tenacity costs 4 points instead of 3
- tweak: Steadfast costs 6 points instead of 4
- tweak: Bionic Arm costs 10 points instead of 8
- tweak: Bionic leg costs 8 points instead of 6

---------

Signed-off-by: EctoplasmIsGood <109397347+EctoplasmIsGood@users.noreply.github.com>

(cherry picked from commit d38eb0b536a34475feefa8253b9a3ed128e57f4d)

* Automatic Changelog Update (#1906)

(cherry picked from commit 8a2626ef6b62508a6479525555522b516e090feb)

* Lightbehaviour Bug Fix (#1908)

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Description.

Fix bug affecting torches, flares and glowsticks that made them not emit
light when turned on as described by [this
issue.](https://github.com/Simple-Station/Einstein-Engines/issues/1685)

<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->

<details><summary><h1>Media</h1></summary>
<p>

https://github.com/user-attachments/assets/799631e0-bcf1-4008-9683-3d0ba7c02a24

</p>
</details>

---

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑
- fix: Torches, flares, glowsticks now able to emit light again

(cherry picked from commit b25e3447148948ee658d1b81dac0d1e076641fcc)

* Automatic Changelog Update (#1908)

(cherry picked from commit 83fbb13c3aab8fedb1e56f73b949ac1a458eee41)

* Mining Shuttle & Dignitary Stuff for Arena (#1893)

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

<p>
Adds the mining dock & mining shuttle console for travel to lavaland.
Adds NTR office with the NTR locker mapped. Also adds the BSO locker to
bridge without an office cause BSO is not worthy.
Map render under images. NTR office is south east of brig. Just has a
desk and a bed. No fax as the NTR already has their own fax, I feel like
having a second fax would increase where the NTR would need to look for
faxes.
Referring to the shuttle that takes one to lavaland as mining shuttle,
not the pathfinder.
</p>

<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->

<details><summary><h1>Media</h1></summary>
<p>

![Arena](https://github.com/user-attachments/assets/a9719209-becd-4315-8b57-e0179b8eb8d7)

</p>
</details>

---

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑
no cl no fun

(cherry picked from commit e481e2f182f162b78e22524dfe6988b2135bd32f)

* Automatic Changelog Update (#1893)

(cherry picked from commit f59bd7df32f6942f3b2646c1e3a08ee88343301d)

* Fireplace Construction (#1897)

# Description

Porting - Allow Construction of Fireplaces and Bonfires

Ported from - https://github.com/Goob-Station/Goob-Station/pull/1646

Yeah it's a port of a port. Yes there was sofas, benches and banners,
I've very lazily stolen just the fires. Sofa might be nice but that's
lot more code pinching.

---

# TODO

- [ ] Pray it works

---

# Changelog

🆑
- add: Recipes to build Fireplaces and Bonfires

---------

Signed-off-by: Raikyr0 <Kurohana@hotmail.com.au>
(cherry picked from commit 90485d5a0c49f76950d61e42c3cc596f988dc982)

* Automatic Changelog Update (#1897)

(cherry picked from commit c7327f55f8576267f30a384d4a84fd85f357d52f)

* Terminus (#1881)

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Added a new weapon, the DT-8 "Terminus"
It's a large melee weapon capable of firing a spread of disabler rounds
on alternate fire.
It's an arsenal tech research, and uniquely can only be wielded by onis.

(I'm being bribed to make this)
Also, I had to move the OniComponent.cs file to shared. I'm not sure if
that borked anything but tell me if it does.

(PS. Thank you VMSolidus for helping me make this ten times less
shitcoded.)

---

# TODO

<!--
A list of everything you have to do before this PR is "complete"
You probably won't have to complete everything before merging but it's
good to leave future references
-->

- [x] Textures complete
- [x] Add lathe recipe
- [x] Add to research

---

<details><summary><h1>Media</h1></summary>
<p>

!![image](https://github.com/user-attachments/assets/cf02d64a-53a8-4454-9312-010fa92cf597)

</p>
</details>

---

# Changelog

🆑 SolsticeOfTheWinter, OtherPersonPlaceHolder
- add: Added a new weapon for oni security players, the terminus.

---------

Signed-off-by: Solstice <solsticeofthewinter@gmail.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>

(cherry picked from commit 3fdf1102dc20af7bd724e449808d2d38571e62c2)

* Automatic Changelog Update (#1881)

(cherry picked from commit 9de8ab79e61227620833b88f5c616c63f38c9a86)

* Add RPD and Pipe Stacking (#1857)

# Summary

To add the RPD into the game for both atmos and CE's to use. Introduce
pipe stacking as well since the RPD will introduce better atmos
configuration. Most of the code was ported over from goob LRP. With some
of it being touched up on and adding a bit of quality of life to the
RPD.

This was a PR originally made for goob-mrp but requested to be moved to
EE. Check out the detailed commits here:
https://github.com/Goob-Station/Goob-Station-MRP/pull/96

---

# Description

## RPD
From the original PR made on goob-station the RPD has been ported over.
It is similar to the RCD where you will be able to make
pipes/vents/pumps/mixers quickly. Each dial on the main radial will
bring up specific pipes like ie pipes-> corner, t-shape -cross shape.

The RPD starts out in the CE and Atmos lockers with 50 charges. Each
construction and deconstruction cost 1 charge. There is also one extra
compressed matter in the starting lockers for both CE and Atmos for the
RPD.

You can research the recipe of the RPD with the reverse engineering
machine. The recipe cost of the RPD is a bit more compared to the RCD.

![RPD_UI](https://github.com/user-attachments/assets/ed2fe76b-009a-4081-abe4-7c431f21ab27)

## Pipe Stacking

With the introduction of the RPD, it was fair to check for pipes that
overlapped when making new pipes. But with introducing the code from LRP
goob station it was decided to bring over the pipe stacking feature too.
You can make certain components pipe stackable or allow if you can put
multiple of the same pipe on the same tile. If you want you change a
pipe to be non-stackable by using the component type:
PipeRestrictOverlap

Here's an example of pipe stacking. You can make a simple scrub loob
tighter or keep it normal. The freedom is given.
![pipe-stacking
example](https://github.com/user-attachments/assets/69aa19d4-2ff4-4cee-a2d1-b6709884c6e0)

Here is an extreme example. This compact design creates a ton of frezon.
Obviously, replace the trit miner with an actual burn chamber.

![image](https://github.com/user-attachments/assets/4db7b627-0d3a-4c78-b5a1-8d52551b3127)

## Belt overlay

I decided to add a simple belt overlay sprite to the game for the RPD.

Here's what it looks like outside the belt and inside the belt

![RPD](https://github.com/user-attachments/assets/d599dbed-56d0-42c7-acee-20fa23f04f2c)

## RPD Borg Module

I decided to add experimental RPD that will self-charge. The only way to
get this RPD is through admeme spawn or being a borg. The starting
charge of the Borg module is 25 and will self-charge at the same rate at
10 seconds per charge. I also added an admeme version that charges at 1
second per charge.

Here is what the borg module looks like
![Borg
module](https://github.com/user-attachments/assets/6fd1bcff-fdb7-49ad-a8f5-e4bab86bd8f4)

The borg module can be researched in the t2 industrial branch as the
same research for the RCD module.

![Research-rpd](https://github.com/user-attachments/assets/d325dd3f-eed9-4744-9003-3b7d51387432)

---

# credit
Original RPD PR: https://github.com/Goob-Station/Goob-Station/pull/1203
Original Pipe Stacking PRs:
https://github.com/Goob-Station/Goob-Station/pull/391
https://github.com/Goob-Station/Goob-Station/pull/389
Prevent stacking pipes (#28308) - Original Link is dead.

---

# TODO
- [X] Add RPD
- [X] Add RPD to reverse engineering
- [x] Add toolbelt equipped sprites
- [x] Add Pipe Stacking
- [x] Add an experimental RPD module for engie borgs.

---

# Changelog

🆑
- add: Added RPD, glory to atmosia!
- tweak: RPD now spawns in Atmos and CE lockers
- tweak: Extra compressed matter has been added into both Atmos/CE
lockers for more RPD/RCD uses
- add: You can research RPD with the reverse engineering machine.
- add: A belt overlay sprite to the CE and utility toolbelt.
- add: Pipe Stacking ported over from LRP Goob station. Compress those
frezon factories!
- add: Toolbelt overlay sprite for the RPD.
- add: RPD Borg module researched in t-2 industrial advanced tools.

---------

Co-authored-by: Nathaniel Adams <60526456+Nathaniel-Adams@users.noreply.github.com>

(cherry picked from commit b32710c94628f90e4b2c43796ac3ab81892926f3)

* Automatic Changelog Update (#1857)

(cherry picked from commit 3270ee0327054fd0187cb03756d23a1a84d7916c)

* SS13 Combat Parity Part 0.5: Stun Meta [PREREQUISITE] (#1914)

# Description
Ports Stun Meta from
[/Goob-Station#788](https://github.com/Goob-Station/Goob-Station/pull/788)
Splits stuncrit into knockdown and paralysis, like on 13. knockdown lets
you crawl on the floor, and paralysis is the same as current stamcrit.
The stun baton has been buffed, doing 15 stamina damage per swing, and
40 stamina damage overtime.
This lets you stamcrit someone in two baton swings, but it takes a few
seconds before they actually fall down to the ground. About the same
amount of time as 4 baton swings back to back.

This PR also reverts #809, since I plan on reworking shoving entirely
soon.
(also for my sanity. wouldn't have been able to port stunmeta
otherwise.)

## Condemn Trillions
Required for the rest of the SS13 Combat Parity changes listed
[here](https://discord.com/channels/1218698320155906090/1348171706061033502)

# TODO
* [x] Await merge
* [x] Gaming

# Media

![shitcurity](https://github.com/user-attachments/assets/4f83937f-7eaa-4d6d-a446-4044f9ec0286)

# Changelog
🆑 Eagle

* tweak: Stamina Crit has been split into Knockdown and Paralysis
* tweak: Stun batons now do 15 stamina damage on hit, and 40 over time

(cherry picked from commit b8045750e91b8e43fcf91deaeb49b295a0984cdc)

* Automatic Changelog Update (#1914)

(cherry picked from commit cbadf45b9e1bbb8cbb122a579e9c37a3234d506b)

* Miscellaneous Fixes From White Dream (#1911)

# Description

Ports the following PRs:
https://github.com/WWhiteDreamProject/wwdpublic/pull/271
https://github.com/WWhiteDreamProject/wwdpublic/pull/282
https://github.com/WWhiteDreamProject/wwdpublic/pull/255
https://github.com/WWhiteDreamProject/wwdpublic/pull/254
https://github.com/WWhiteDreamProject/wwdpublic/pull/246
https://github.com/WWhiteDreamProject/wwdpublic/pull/223
https://github.com/WWhiteDreamProject/wwdpublic/pull/220
https://github.com/WWhiteDreamProject/wwdpublic/pull/219
https://github.com/WWhiteDreamProject/wwdpublic/pull/213

This is a rather huge variety of fixes to be honest.

# Changelog

🆑 White Dream
- fix: Fixed airlock opening and closing visuals
- fix: Fixed Weather spamming infinite sounds.
- fix: Cockroaches no longer spam organs when stepped on.
- fix: Fixed the timer on the Return To Round button
- fix: Fixed Return to Round not remembering how long it's been since
you died if you re-enter your body.
- fix: Fixed harpy flight visuals not showing for other people.
- fix: Fixed disabler bolts not going through windows like other kinds
of lasers.
- fix: Fixed Vim Harness being free
- fix: Fixed handcuffs not respecting your arm length.
- fix: Made tending wounds not as message spammy.
- fix: Fixed shuttle windows not preventing you from being electrocuted
by grills under them.

---------

Co-authored-by: vanx <61917534+Vaaankas@users.noreply.github.com>
Co-authored-by: vanx <discord@vanxxxx>
Co-authored-by: Spatison <137375981+Spatison@users.noreply.github.com>
Co-authored-by: Repo <47093363+Titian3@users.noreply.github.com>

(cherry picked from commit ced8a565a32cfa340140674c073d90a2a6002799)

* Automatic Changelog Update (#1911)

(cherry picked from commit 89f27f4b2f3882ba97132d69f9d6477cea3195d1)

* Faction Clothing Bug Fix (#1917)

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Fixed bug that made ClothingAddFactionComponent not add the faction of
the clothing to the mob when the clothing is equipped.

The bug is described in greater detail in [this
issue](https://github.com/Simple-Station/Einstein-Engines/issues/1228).

---

<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->

<details><summary><h1>Media</h1></summary>
<p>

https://github.com/user-attachments/assets/41fe9411-0eac-478d-956c-b094f211f565

</p>
</details>

---

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑
- fix: Fixed bug that made ClothingAddFactionComponent not work.

(cherry picked from commit 639f46a68b84ad6d0655ec318ccc62fa3061c5cd)

* Automatic Changelog Update (#1917)

(cherry picked from commit b4c488af30ad9e21e41b409282aeac1f8ae37c9e)

* Crafting Curtains and Tables No Longer Consumes Entire Stack (#1916)

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Stolen from https://github.com/Fansana/floofstation1/pull/152, courtesy
of cynical24. When you craft a curtain or make a table into a _fancy_
table, it doesn't take the entire stack of carpet. This should hopefully
stop me from having to return to the HoP to ask for another 10 carpet.

---

# TODO

<!--
A list of everything you have to do before this PR is "complete"
You probably won't have to complete everything before merging but it's
good to leave future references
-->

- [x] general thievery of text (with permission)

---

<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->

<details><summary><h1>Media</h1></summary>
<p>

![curtains](https://github.com/user-attachments/assets/0c960653-311a-40e7-bcbe-53e50d771c63)

</p>
</details>

---

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑
- tweak: you don't use the entire stack of carpet now when crafting
colored curtains or fancy tables.

(cherry picked from commit 508dbc35d3576be768122604d39194ee715ab02a)

* Automatic Changelog Update (#1916)

(cherry picked from commit f4641de5073d3cf1ccc54a5599281bb6025149fc)

* Markings From Impstation 2 (#1925)

what the funny title says

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Adds some markings from Impstation (Again, who would have thought it'd
be Impstation again?), ports the merciful IPC wings from Goob LRP, adds
some markings to arachnids, a bunch of markings for Reptilians, and a
new hairstyle.

---

# TODO

<!--
A list of everything you have to do before this PR is "complete"
You probably won't have to complete everything before merging but it's
good to leave future references
-->

- [ ] Task
- [x] Completed Task

---

<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->

<details><summary><h1>Media</h1></summary>
<p>

</p>
</details>

---

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑 Diggy
- add: New markings for arachnids, reptilians.
- tweak: Allows IPCs to pick up overlay markings such as the gauze
stuff, Onis can now have the curved horn marking humans can have.

(cherry picked from commit b955652cf18f1a11e7d48206f32c8d3e24e819bd)

* Automatic Changelog Update (#1925)

(cherry picked from commit 78149f74ac386a81b4ecb46679db29c9e5f1946e)

* Fix Vulpkanin Markings (#1894)

# Description

Vulpkanin no longer wear their undergarments "Superman Style"

# Changelog

🆑
- fix: After lengthy retraining, NanoTrasen has taught Vulpkanin that
underwear is meant to be worn inside pants, not outside them.

(cherry picked from commit 190dddf7c59537ffc2781f3d8f7bcb16e5a449fb)

* Automatic Changelog Update (#1894)

(cherry picked from commit a7138473115dfe767b822eb2b24179a04f6133e5)

* Fairer Turrets (#1923)

# Description

It had basically always bothered me, and evidently a lot of other people
that turrets were previously "Unfair enemies". They had perfect aimbot
accuracy, tracked targets instantly at any angle, and were
nigh-indestructible. It was telling that players were pretty much only
ever killed by turrets once or twice, and then they figure out that the
turrets are outright impossible to beat in a fair fight, so they end up
resorting to underhanded tactics like using an RCD to wall the turret
off. Or use a pickaxe to go around them.

I previously added a new turret for the SAN dropship, and with it had
tried out a very different approach for "Fairer Turret" balancing. A
more reasonable healthbar, no instant tracking, and no perfect accuracy,
The players enjoyed these a lot more than the original turrets. Plus
they were more visually interesting firing an inaccurate spray at their
targets.

<details><summary><h1>Media</h1></summary>
<p>

I'm on my lunch break at college right now, so no media.

</p>
</details>

# Changelog

🆑
- tweak: Adjusted turrets to be a more "Fair" fight. They no longer have
perfect aimbot accuracy, they don't track targets instantly, and they
also have a "More fair" healthbar that can reasonably be shot through by
someone with good enough weapons and armor,

(cherry picked from commit 6bdd73efe210d6e556e6accbc89cb9134f716e2e)

* Automatic Changelog Update (#1923)

(cherry picked from commit bedcd65d4d8324a651101a978ba90d46d4199cfa)

* Fix A Minor Test Fail (#1902)

Just a random event that had a tiny chance to spawn an Abstract entity.

(cherry picked from commit f49712f82569d7e5f0a486d00130216dc73520bd)

* Throw Errant Into The Spider Pit (#1896)

# Description

@Errant-4 by request in your comment.
I had annihilated this before during the NyanoCombat reworks, but during
a recent wizmerge most of said reworks were accidentally reverted. This
is the one that was brought back, comment and all. So this PR fixes for
a second time a problem left by the old combat system.

# Changelog

🆑
- fix: Power attack and light attack damages are no longer swapped.

Signed-off-by: VMSolidus <evilexecutive@gmail.com>

(cherry picked from commit 4b988b2b01e379d5a2c6c8eae72f70c00876d024)

* Automatic Changelog Update (#1896)

(cherry picked from commit 505765017a164ca20582571f92f5ec95ff3e5579)

* Nerf .45 (#1895)

# Description

Somehow I didn't realize that .45 magnum, despite being a common ammo
type available to a lot of people, deals literally double the damage of
all other comparable smallarms. No wonder people were complaining about
the Universals being comically overpowered. This PR normalizes their
damage so that it's still "More than other equivalent small arms
calibers", but not ".45 is more than double the damage of 9mm".

# Changelog

🆑
- tweak: Nerfed universals and other .45 auto guns. I get the meme that
.45 is better than 9mm, but not "More than double" the damage of 9mm.

(cherry picked from commit f7f49f67d69e6a19a3b83eec1d4cb4b0b7ca93a1)

* Automatic Changelog Update (#1895)

(cherry picked from commit cfd95ca7c4237030cebba16cf1d81798a5d801a6)

* More Lavaland Fixes (#1892)

# Description

Apparently the lavaland ore crates are supposed to have an ore magnet,
but this didn't work because they're missing something from the ore
bags. So this fixes that. Also I made sure the lavaland's ores actually
have the same naming conventions as our regular ores.

# Changelog

🆑
- tweak: Ores mined from lavaland now have names matching their
real-world counterparts.
- fix: Fixed the lavaland ore crates not having working ore magnets.

(cherry picked from commit 2f02dd1a0621437587d143641b4a66ef59d87bab)

* R25 Rifle Tweaks (#1869)

# Description

This PR tweaks the stats of the R25 rifle so that it isn't completely
useless. Its accuracy when wielded has been improved so that it can more
consistently hit targets at between half and a full screen length away.
As a tradeoff, its cooldown between bursts has been increased so that
its DPS isn't comically overtuned.

<details><summary><h1>Media</h1></summary>
<p>

https://github.com/user-attachments/assets/7b862f2a-09c3-450b-9482-a6ce69b4c971

</p>
</details>

# Changelog

🆑
- tweak: Increased the accuracy-when-wielded of the BRDI-R25 rifle. As a
tradeoff, it has a longer cooldown between hyperbursts.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **Gameplay Adjustments**
	- Updated the weapon's handling by refining its firing angles.
	- Adjusted the burst cooldown period to alter the firing rhythm.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

(cherry picked from commit be595f4fbe52e612dbaf58363287e9d483442a12)

* Automatic Changelog Update (#1892)

(cherry picked from commit 2cc6e37b996d5074affebd7d8813778b3f9824d2)

* Automatic Changelog Update (#1869)

(cherry picked from commit fd9c5bb1bfddb94e8aa8d4ecfcb4587629110949)

* Footstep Netcode Fixes (#1909)

# Description

Port of https://github.com/WWhiteDreamProject/wwdpublic/pull/298

---------

Co-authored-by: Spatison <137375981+Spatison@users.noreply.github.com>

(cherry picked from commit 36627e2e655471e118867c1ae05870b1cb9c0be4)

* Automatic Changelog Update (#1915)

(cherry picked from commit a8994b38b0ade548152a5868a0ab87fd727da81d)

* Embeddable Projectile Fixes (Courtesy Of White Dream) (#1907)

* embed children

* locale

* fix

* Update Resources/Locale/ru-RU/weapons/throwing/throwing.ftl

* // WWDP MY BELOVED

# Description

This is a port (and general cleanup of)
https://github.com/WWhiteDreamProject/wwdpublic/pull/278
Plus clearing a bunch of compiler warning causing things, and also a fix
for one of our Heisentests. This PR mainly fixes issues with embeddable
projectiles being potentially unintentionally destroyed when the thing
they are embedded in gets destroyed. Which can be disastrous for example
if my energy sword embeds into a wall, and also destroys that wall,
which destroys my precious energy sword...

# Changelog

🆑 Spatison
- fix: Embeddeable projectiles are no longer always destroyed when the
thing they are embedded in gets destroyed. Energy Sword throwing
enthusiasts may rejoice now that their precious sword is safe.

Co-authored-by: vanx <61917534+Vaaankas@users.noreply.github.com>
Co-authored-by: vanx <discord@vanxxxx>
Co-authored-by: Spatison <137375981+Spatison@users.noreply.github.com>

(cherry picked from commit 2c30abbb072238ed7478c9716a66db58f69ddc67)

* Automatic Changelog Update (#1907)

(cherry picked from commit a97ae4aa2fdaf1bf70149fa994682debd2162779)

* Health Analyzer UI Fix (#1928)

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Fix the bug described by [this
issue.](https://github.com/Simple-Station/Einstein-Engines/issues/1820)

---

<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->

<details><summary><h1>Media</h1></summary>
<p>

![image](https://github.com/user-attachments/assets/567f62e6-bdae-4a9b-a4eb-bd8c15fae8c9)

</p>
</details>

---

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑
- fix: Health analyzer's doll is now in the normal size.

(cherry picked from commit ce489662c54195cd3f5865f5003d40fe3ba7c0d3)

* Automatic Changelog Update (#1928)

(cherry picked from commit 0b4b338af37f2222065063364b76db3c63fa8025)

* Magma Hand (#1927)

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Sprited by Greenwall, YML'd by myself. The Magma Hand is a slime-like
creature that you can encounter in Lavaland. It's very hostile, but you
_can_ pet it!

---

# TODO

<!--
A list of everything you have to do before this PR is "complete"
You probably won't have to complete everything before merging but it's
good to leave future references
-->

- [x] Add to Lavaland spawning list

---

<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->

<details><summary><h1>Media</h1></summary>
<p>
Its blood is sulfur!

![image](https://github.com/user-attachments/assets/7008c190-5502-4e7e-800a-a1027e2ef9f8)

Its attacks burn you!

https://github.com/user-attachments/assets/0bf21207-1dc2-4cf5-9b9b-89a558488963

Ice makes it die very quickly!

https://github.com/user-attachments/assets/4c742c6e-ac5e-462f-9f1e-e05ce0fcaa0b

![image](https://github.com/user-attachments/assets/feb78377-179c-47bd-991a-b88e37af7c95)

![image](https://github.com/user-attachments/assets/92a875cd-fdb2-4edf-843b-a26c671fbd99)

</p>
</details>

---

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑 Greenwall
- add: Magma Hand! Sprite by Greenwall, YML by Timfa. Bring a water gun
filled with ice, and you'll be fine!

(cherry picked from commit 545a20fd19a25f833cc32e21c6f0f53f7f872e22)

* Automatic Changelog Update (#1927)

(cherry picked from commit f8c127f1432d24f98e5eeeb4099fa2899db74c15)

* Cyber Eye Changes (#1876)

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Removes the flare shielding trait, instead adding welding arc protection
to the diagnostics hud, and giving the medical hud a built in chem
scanner.

No trait will give you access to immunity to flashes however, and you
will instead be required to have proper eye protection on again to
counteract it. This makes securities lives a lot better, and makes the
flash a viable tool again.

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑
- remove: Removes flare shielding
- tweak: Adds eye protection to diagnostics hud
- tweak: Adds chemical analyser to med hud
- tweak: Increases med hud and diagnostics hud costs to 2

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **Gameplay Balance**
- Reduced the negative impact for the `FlareShielding` trait, offering a
milder penalty.
- Removed the flash immunity effect from the `FlareShielding` trait to
streamline its behavior while retaining it in the
`FlareShieldingModule`.
- Updated requirements for the `Blindness`, `Nearsighted`, and
`Photophobia` traits by removing the dependency on the
`FlareShieldingModule`.
- Adjusted point values for several traits, reflecting a more
significant negative impact for others.
- Introduced new components, enhancing the functionality of various
traits.
- **Feature Enhancements**
- Expanded the description of the `CyberEyesMedical` trait to include a
Chemical Analysis Hud.
- Updated the `CyberEyesDiagnostic` trait description to incorporate
flare shielding for improved eye protection.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Signed-off-by: EctoplasmIsGood <109397347+EctoplasmIsGood@users.noreply.github.com>

(cherry picked from commit 516c53e8ea97680b8029b79dae9fab0a229d0709)

* Automatic Changelog Update (#1876)

(cherry picked from commit 085163904a3bc64c2217553afe5e43a8938cfc8c)

* Space Wind Version 5 (FINAL) (#1765)

# Description

MY ASCENSION IS COMPLETE, I HAVE DEFEATED THE ATMOS SYSTEM. MY POWERS
HAVE GROWN TO NEW AND UNFATHOMABLE HEIGHTS. THE EQUATIONS FOR SPACE WIND
ARE NOW PERFECTED. I HAVE BECOME THE PHYSICS CHAD THAT CAN NOW ACCOUNT
FOR FRICTION AND AIR RESISTANCE.

SPACE WIND HAS BEEN PERFECTED. THERE IS NO MORE WORK FOR ME TO DO ON IT.

# TODO

<details><summary><h1>Media</h1></summary>
<p>

PROOF THAT MY EQUATIONS HAVE BEEN PERFECTED.

https://github.com/user-attachments/assets/b3eb43b2-e8db-4f75-a142-2c86308e8113

</p>
</details>

# Changelog

🆑
- add: Added Space Wind V5. This version of space wind now accounts for
the coefficients of friction and gravity as a calculated way to resist
space wind. There is no more guesswork on if space wind should be able
to throw an object. Additionally, thanks to a standalone module from
Matrix Airflow System, space wind is capable of calculating airflow at
arbitrarily any point in a room, regardless of whatever garbage
Monstermos is saying.

(cherry picked from commit a5151c7622c424af6fd7e4c0b916e8ddda75c3df)

* Automatic Changelog Update (#1765)

(cherry picked from commit ba32a82331ffba42919ff57b48c1d80ba02c1343)

* Fix Oni (#1935)

# Description

I didn't notice during the last PR that someone added an override for
the Tags component of Oni, otherwise I'd have said something about it.
You can't add a tag component to a species because it overrides a
massive shitton of tags that are needed for player characters to be able
to do certain things, such as DoorBumpOpener...

# Changelog

🆑
- fix: Fixed Oni not being able to do a ton of things that required
hardcoded tags. I fucking hate the tag system.

(cherry picked from commit 3950fb0a6c9cbb9febb30b00f183a8d049f0ca0c)

* Automatic Changelog Update (#1935)

(cherry picked from commit 12876a1ce113a68a79d2cae79e99a6748446c13e)

* Rev Manifesto Inhand Use Cooldown (#1936)

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Add a two second cooldown on the Revolutionary Manifesto's secondary use
(the purely cosmetic one) to not make it cause chat spam.
I made this change from web and have NOT tested it yet (unless I checked
the checkbox below in the TODO section!

---

# TODO

<!--
A list of everything you have to do before this PR is "complete"
You probably won't have to complete everything before merging but it's
good to leave future references
-->

- [ ] TEST IF IT WORKS

---

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑
- tweak: Tweaked rev manifesto to not spam chat anymore

(cherry picked from commit 3a6634125445a3a71ab33dae090942ce3216d340)

* Automatic Changelog Update (#1936)

(cherry picked from commit 0ba6aae78f5ee3804f8eaf30afc2e35bafc8e17c)

* More Tolerable Default CVars (#1945)

# Description

I can't believe we never cleaned these up. Yea so our codebase made an
astoundingly fucking poor first impression on BPL during their huge
playtest, and most of these CVars were to blame. In particular is the
godawful Ramping Event Scheduler having "Murder the station with
ventcritters every 10 seconds at the 30 minute mark" as its settings.

# Changelog

🆑
- tweak: Disabled Monstermos Tile Ripping by default.
- tweak: Default settings for Ramping Event Scheduler no longer throws
"Ventcritters every 10 seconds, 30 minutes into the round".

(cherry picked from commit ef5dc3441aa3b7c62d771039c3e1a93ba04a0d32)

* Automatic Changelog Update (#1945)

(cherry picked from commit 0fce50daf5ba999e3bc9b8c97e8e7b8791fb7f7e)

* BRDI Repaints (#1957)

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]? -->

A downstream port of https://github.com/TheDenSS14/TheDen/pull/306
providing Blue and Red paintjobs for the Blueshield and Head of Security
BRDIs respectively.

---

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name This includes
all available types for the changelog -->

🆑
- tweak: Gave the BSO and HoS BRDIs a fancy paintjob.

(cherry picked from commit 4f23e0d40549fc3780d1dd94f7fea2ff83e37c24)

* Automatic Changelog Update (#1957)

(cherry picked from commit 2d7e39eca59cee8c8c883501c8f185bcb8bff4cb)

* ADT Markings Port (#1951)

Truly the PR of all time...

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

The markings by themselves have localization or whatev. When you color
them they will however appear as marking_etc_etc.
Yes, i'm aware it's lazy, but i'm not doing it for over 80 markings,
just not feeling it, this is really just a test to see if it gets
allowed without some locale files setup.

---

# TODO

<!--
A list of everything you have to do before this PR is "complete"
You probably won't have to complete everything before merging but it's
good to leave future references
-->

- [ ] Task
- [x] Completed Task

---

<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it

---

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑 Diggy
- add: Most markings from ADT, along with two new hairstyles, new
markings for Shadowkin (Despite all my hate for them).
- fix: Shadowkin ears are now colorable again, fuck around and find out
if you want your Shadowkin's ears to be pink with red or something.

(cherry picked from commit a36b5dc2404578c64a93a9881714f00180c1da02)

* Automatic Changelog Update (#1951)

(cherry picked from commit cd81f90db975061f9d968b45beab9a461834f4c1)

* Cyberiad 1.0: Service Rework (#1938)

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Changes Box to Cyberiad, with the service area receiving a rework, in
the future there will be more updates in the depts, with the next one
probably being the Sec.
Make some fixes on Gax and Bagel.

I changed the maintainer of some maps from "Estação Pirata" to "Ichai".
I am not part of the Estação Pirata

---

<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->

<details><summary><h1>Media</h1></summary>
<p>

![image](https://github.com/user-attachments/assets/e18d2441-8c01-49b9-9c6a-9d2c2c4672b6)

</p>
</details>

---

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑 Ichai
- add: Cyberiad added to the rotation.
- fix: Gax: Fixed missing window in CE office, Fixed walls in SM to
prevent radiation leaks.
- tweak: Port changes to Bagel from GoobStation
- remove: Box is no more.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>

(cherry picked from commit 3da2771a5509b189b4599a2323e9df5d7b9fb562)

* Automatic Changelog Update (#1938)

(cherry picked from commit 755fc9912d4152dca446477ea2693ed91aac59c1)

* R-25 BRDI Back Slot Sprites (#1962)

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Added back slot and suit storage sprites for the R-25 BRDI.

---

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑
- add: Added back worn sprites for the R-25 BRDI.

(cherry picked from commit 2cf4957ccd3ed2e0a673c7a7c774f4d779428cb5)

* Automatic Changelog Update (#1962)

(cherry picked from commit d6ba9f7c0da450e0b8ae6623b33e6933360ae43c)

* Remove Random Stencil Clear On Left Leg (#1955)

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

I don't know why this was being done, but it didn't seem to do anything
and I know for a fact it was causing issues with shaders that were
applied on all humanoid layers, so... "Imaginary Technique: Shitcode
Removal" go.

If anything breaks, it's this.

---

# TODO

<!--
A list of everything you have to do before this PR is "complete"
You probably won't have to complete everything before merging but it's
good to leave future references
-->

- [X] Check that the game didn't incinerate itself.

---

<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->

<details><summary><h1>Media</h1></summary>
<p>

![image](https://github.com/user-attachments/assets/ff7f41e5-827e-4fdf-98e2-b5885aadf467)

</p>
</details>

---

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

no cl

Signed-off-by: Eris <eris@erisws.com>

(cherry picked from commit e674f782e24da7a7825520ca650473f155e9e4c1)

* fix upstream

---------

Co-authored-by: EctoplasmIsGood <109397347+ectoplasmisgood@users.noreply.github.com>
Co-authored-by: SimpleStation Changelogs <SimpleStation14@users.noreply.github.com>
Co-authored-by: Paulo Artur Pinheiro Viana Villaça <112904295+algumcorrupto@users.noreply.github.com>
Co-authored-by: astriloqua <129308840+astriloqua@users.noreply.github.com>
Co-authored-by: Raikyr0 <Kurohana@hotmail.com.au>
Co-authored-by: Solstice <solsticeofthewinter@gmail.com>
Co-authored-by: Solaris <60526456+solarisbirb@users.noreply.github.com>
Co-authored-by: Eagle-0 <114363363+eagle-0@users.noreply.github.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: Tirochora <leotabletdb@gmail.com>
Co-authored-by: BloodfiendishOperator <141253729+Diggy0@users.noreply.github.com>
Co-authored-by: Timfa <timfalken@hotmail.com>
Co-authored-by: Rosycup <178287475+Rosycup@users.noreply.github.com>
Co-authored-by: Ichaie <167008606+ichaie@users.noreply.github.com>
Co-authored-by: Eris <eris@erisws.com>
2025-03-15 16:05:58 +02:00
sleepyyapril
f7681d4bc3 v246.0.0 + Planet Lighting (#1802)
will do map refactor tomorrow, for now, planet lighting

🆑
* add: Ported planet lighting for indoor / outdoor areas.
* add: Ported day-night cycle functionality.
* add: Ported some Storage UI v2 fixes.

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: DoutorWhite <thedoctorwhite@gmail.com>
Co-authored-by: Janet Blackquill <uhhadd@gmail.com>
(cherry picked from commit 4efb0b3b328dd4eba3095cc3f0a95fad88b49661)
2025-02-28 16:23:01 +03:00
VMSolidus
952953be07 Physics Based Air Throws (#342)
# Description

I've made it so that when a room is explosively depressurized(or when a
body of high pressure air flows into one of lower pressure air), that
entities inside are launched by the air pressure with effects according
to their mass. An entity's mass is now used as an innate resistance to
forced movement by airflow, and more massive entities are both less
likely to be launched, and will launch less far than others. While
lighter entities are launched far more easily, and will shoot off into
space quite quickly! Spacing departments has never been so exciting!
This can be made extraordinarily fun if more objects are given the
ability to injure people when colliding with them at high speeds.

As a note, Humans are very unlikely to be sucked into space at a typical
force generated from a 101kpa room venting into 0kpa, unless they
happened to be standing right next to the opening to space when it was
created. The same cannot be said for "Lighter-Than-Human" species such
as Felinids and Harpies. I guess that's just the price to pay for being
cute. :)

On a plus side, because the math behind this is simplified even further
than it was before, this actually runs more efficiently than the
previous system.

# TODO

Nothing, this is basically done. I've spent a good 6 hours straight
finely tuning the system until I was satisfied that it reflects
something close to reality.

# MEDIA

**Before the Space Wind Rework:**


https://github.com/Simple-Station/Einstein-Engines/assets/16548818/0bf56c50-58e6-4aef-97f8-027fbe62331e

**With this Rework:**


https://github.com/Simple-Station/Einstein-Engines/assets/16548818/6be507a9-e9de-4bb8-9d46-8b7c83ed5f1d

# Changelog

🆑 VMSolidus
- add: Atmospheric "Throws" are now calculated using object mass, and
behave accordingly. Tiny objects will shoot out of rooms quite fast!

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
2024-07-18 01:24:58 -07:00
SimpleStation14
6e0ffe81bc Mirror: Partial atmos refactor (#312)
## Mirror of PR #22521: [Partial atmos
refactor](https://github.com/space-wizards/space-station-14/pull/22521)
from <img src="https://avatars.githubusercontent.com/u/10567778?v=4"
alt="space-wizards" width="22"/>
[space-wizards](https://github.com/space-wizards)/[space-station-14](https://github.com/space-wizards/space-station-14)

###### `18a35e7e83b2b71ee84b054d44d9ed5e595dd618`

PR opened by <img
src="https://avatars.githubusercontent.com/u/60421075?v=4"
width="16"/><a href="https://github.com/ElectroJr"> ElectroJr</a> at
2023-12-15 03:45:42 UTC

---

PR changed 43 files with 891 additions and 635 deletions.

The PR had the following labels:
- Status: Needs Review


---

<details open="true"><summary><h1>Original Body</h1></summary>

> This PR reworks how some parts of atmos code work. Originally it was
just meant to be a performance and bugfix PR, but it has ballooned in
scope. I'm not sure about some of my changes largely because I'm not
sure if some things were an oversight or an intentional decision for
some reason.
> 
> List of changes:
> - The `MolesArchived float[]` field is now read-only
> - It simply gets zeroed whenever the `GasMixture` is set to null
instead of constantly reallocating
> - Airtight query information is now cached in `TileAtmosphere`
> - This means that it should only iterate over anchored entities once
per update.
> - Previously an invalidated atmos tile would cause
`ProcessRevalidate()` to query airtight entities on the same tile six
times by calling a combination of `GridIsTileAirBlocked()`,
`NeedsVacuumFixing()`, and `GridIsTileAirBlocked()`. So this should help
significantly reduce component lookups & entity enumeration.
> - This does change some behaviour. In particular blocked directions
are now only updated if the tile was invalidated prior to the current
atmos-update, and will only ever be updated once per atmos-update.
> - AFAIK this only has an effect if the invalid tile processing is
deferred over multiple ticks, and I don't think it should cause any
issues?
> - Fixes a potential bug, where tiles might not dispose of their
excited group if their direction flags changed.
> - `MapAtmosphereComponent.Mixture` is now always immutable and no
longer nullable
> - I'm not sure why the mixture was nullable before? AFAICT the
component is meaningless if its null?
> - Space "gas" was always immutable, but there was nothing that
required planet atmospheres to be immutable. Requiring that it be
immutable gets rid of the constant gas mixture cloning.
> - I don't know if there was a reason for why they weren't immutable to
begin with.
> - Fixes lungs removing too much air from a gas mixture, resulting in
negative moles.
> - `GasMixture.Moles` is now `[Access]` restricted to the atmosphere
system.
> - This is to prevent people from improperly modifying the gas mixtures
(e.g., lungs), or accidentally modifying immutable mixtures.
> - Fixes an issue where non-grid atmosphere tiles would fail to update
their adjacent tiles, resulting in null reference exception spam
>   - Fixes #21732
>   - Fixes #21210 (probably) 
> - Disconnected atmosphere tiles, i.e., tiles that aren't on or
adjacent to a grid tile, will now get removed from the tile set.
Previously the tile set would just always increase, with tiles never
getting removed.
> - Removes various redundant component and tile-definition queries.
> - Removes some method events in favour of just using methods.
> - Map-exposded tiles now get updated when a map's atmosphere changes
(or the grid moves across maps).
> - Adds a `setmapatmos` command for adding map-wide atmospheres.
> - Fixed (non-planet) map atmospheres rendering over grids.
> 
> ## Media
> 
> This PR also includes changes to the atmos debug overlay, though I've
also split that off into a separate PR to make reviewing easier
(#22520).
> 
> Below is a video showing that atmos still seems to work, and that
trimming of disconnected tiles works:
> 
>
https://github.com/space-wizards/space-station-14/assets/60421075/4da46992-19e6-4354-8ecd-3cd67be4d0ed
> 
> For comparison, here is a video showing how current master works
(disconnected tiles never get removed):
> 
>
https://github.com/space-wizards/space-station-14/assets/60421075/54590777-e11c-41dc-b49d-fd7e53bfeed7
> 
> 🆑
> - fix: Fixed a bug where partially airtight entities (e.g., thin
windows or doors) could let air leak out into space.
> 


</details>

Co-authored-by: SimpleStation14 <Unknown>
2024-05-20 02:33:00 -04:00
Nemanja
3b3e9abb7b Make procgen use weighted variants (#24669)
(cherry picked from commit 2a6705818bf510aee3026c7f3c3a4ed56f188189)
2024-02-08 11:54:39 +01:00
Nemanja
9bb057959b Generalize tile prying to any tool quality (#24432)
* Generalize tile prying to any tool quality

* ballin

(cherry picked from commit 5e2e652165ee7ef3efb0d0f244d665049f5bd1c0)
2024-01-27 23:50:17 +01:00
Ygg01
089398d256 Nyano port of digging (#400)
* Velcroboy changes

* Fix compilation errors

* Fix borked path

* Fix

* Moved to shared, fixed some problems with code

* Cleanup

* Fix paths

* Fix

* Move files around

* Moved DiggingSystem to Server
2023-12-06 16:58:00 +01:00
DrSmugleaf
4257bd2c7e Make all prototype types partial (#21374) 2023-11-12 20:29:57 +01:00
Kara
cd9ceb2378 Ice & snow tile modernization (#19689)
* Add snow tile edges

* Changes for edge tile prio

* Add support for tile weightlessness

* Add weightlessness to ice

* snow duggy moments

* fix ice thing yeah

* actually why even use weightless movement

* upd8 nukieplanet

* i have no idea what im doing

* sprite modifications
2023-08-31 15:31:23 -06:00
DrSmugleaf
a88e747a0b Refactor serialization copying to use source generators (#19412) 2023-08-22 18:14:33 -07:00
Vordenburg
1df650871d Support weighted tile variantize (#18940)
* Support weighted tile variantize

* Remove unused using

* Use an array
2023-08-13 01:25:54 -06:00
Ilya246
9261cef915 fire axe plating (#18087) 2023-07-17 01:47:20 -06:00
deltanedas
5d5151c772 prevent rcd destroying planets (#16120)
Co-authored-by: deltanedas <@deltanedas:kde.org>
2023-07-16 23:46:35 +10:00
Nemanja
ba753d0f17 Pulling fasto (#17696)
* faster pulling + pulling gravity tweaks

* merciful
2023-06-28 14:03:16 -06:00
20kdc
ea64b86331 Remove plural BaseTurfs as a thing in favour of BaseTurf (#16560) 2023-05-19 17:10:56 +10:00
metalgearsloth
ae01618874 Revert "Revert "Replace ResourcePath with ResPath (#15308)" (#155… (#15566) 2023-04-20 20:16:01 +10:00
metalgearsloth
acf79a8209 Revert "Replace ResourcePath with ResPath (#15308)" (#15551) 2023-04-20 11:43:54 +10:00
Ygg01
71f358a027 Replace ResourcePath with ResPath (#15308) 2023-04-19 23:39:17 +10:00
metalgearsloth
0aba0d2ec2 Content tile edge support (#13168) 2023-03-05 12:19:50 +11:00
metalgearsloth
5dd9a3c9e5 Tile fixes (#14388)
- Set some of the defaults in the definition to what we use for most prototypes
- Added planet variant for dirt to avoid black space
- Dirt looks like literal poop but will have another sprite for it soon
2023-03-04 19:11:19 -06:00
metalgearsloth
37f432ca58 Procgen biomes (#13487)
* Planetmap tiles

Biomes etc etc

* a

* oop

* Chunk-based rendering

* funny

* Less allocations

* Fix overdraw

* Content tile edge support

Also updated grass to use it as a POC.

* Kindly revert

* Update for variant edges

* fixes

* Use fastnoise

* Remove redundant group

* a

* refactor a fair bit

* Prototype data instead

* tweaks

* a

* fix maths

* working

* a

* Slightly better empty support

* a

* flowers

* sounds

* lewd

* Networking

* more fixes

* better

* colours

* Some chunk loading

* Proper loading and unloading

* Better loading

* Fix parallax and movement sounds

* Anchoring support + decal setup

* Most of the way to load and unload

* Decal loading kinda werkin

* large trees

* started diffing

* a

* Variant support and deserts

* a

* snow

* agony, even

* working again

* todo

* a

* laba tiles

* aeiou

* a

# Conflicts:
#	Resources/Prototypes/Entities/Tiles/planet.yml
#	Resources/Prototypes/Tiles/planet.yml
#	Resources/Textures/Tiles/Planet/Lava/lava.rsi/meta.json

* laba

* Add lava

* Initial ignition

* triggers

* a

* a

* y

* Add basalt tiles

Did some unconventional things for the animation + rocks.

* fixies

* mergies

* promotion

* lava biome

* Lava planet start

* cleanup and more lava

* laba

* maccas

* biome stuf

* weh

* bongflicts

* aeaeae

* More fixes

* a

* these too
2023-02-12 02:15:09 +00:00
Visne
c6d3e4f3bd Fix warnings and code cleanup/fixes (#13570) 2023-01-19 13:56:45 +11:00
metalgearsloth
81a1c6d7de Weather effects (#12528)
Co-authored-by: metalgearsloth <metalgearsloth@gmail.com>
2023-01-17 20:26:52 +11:00
Pieter-Jan Briers
a323671984 Changes for prototype load parallelization (#13066)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-12-20 14:25:34 -08:00
Morb
ebcce52abe Localize tile names (#11060) 2022-09-14 12:53:37 +10:00
Jacob Tong
61d975644a Implement lattice cutting (#10920)
* Add lattice cutting

* Add delay when spacing the floor.

* Add LatticeCutting to jaws of life

* Add warning

* Minor fixes

* Add atmos decompression delay

* Add CanWirecutter and lattice item drops

* Remove atmos check

* Prevent tile replacement edge case
2022-08-31 03:24:51 -05:00
metalgearsloth
a549a85e81 Update tiles to modern standards (#10436) 2022-08-10 17:05:40 +10:00
Morb
1e6e4a2e34 Add bare footstep sounds (#10272) 2022-08-08 19:03:56 +10:00
Paul Ritter
f77aff7b94 prototype composition (#9979) & updates submodule
* prototype composition

* a

* fixes build

* fixes test

* updates submodule

Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2022-08-01 14:39:37 +02:00
Leon Friedrich
c7ad6b709e Audio System Rejig (#9635) 2022-07-29 12:13:12 +10:00
wrexbe
bc68ac96dd Cleanup the namespaces (#8132) 2022-05-13 17:59:03 +10:00
Paul Ritter
f12b9fd511 abstract prototype id validation (#7519) 2022-04-15 14:34:28 -07:00
Paul Ritter
2ff40d5a1f Serv3 rework content changes (#7145) 2022-04-03 02:01:22 +02:00
Moony
12b682ee4d Tile variants content (#6956) 2022-03-09 20:59:44 +01:00
wrexbe
4571dca1eb Tiles Name->ID, DisplayName->Name (#5991) 2022-01-04 17:26:07 -07:00
Kara D
e7c2131d97 Tile proto parenting 2021-12-02 19:06:48 -07:00
Vera Aguilera Puerto
94fa6efefb Misc Atmos Improvements (#5613)
* Revert "Remove atmos archiving."

This reverts commit 7fa10bd17b.

* Explosive Depressurization now brings tiles down to TCMB.

* Tiles now specify heat capacity.

* Do not serialize archived gas mixture values.

* Remove bad idea

* dumb typo

* Space gas mixtures now have a harcoded heat capacity.
This is a bit of a hack, but rooms exposed to space now cool down properly when monstermos is disabled.
Huge thanks to @LemonInTheDark for helping me with this!

* Clean up heat capacity methods

* Better logging based on the original monstermos' logging

* Comment explosive depressurization hack better
2021-11-30 11:42:48 +01:00
Vera Aguilera Puerto
872bc79cf8 Fixes some YAML linter errors.
The remaining errors are mostly the linter being overzealous.
2021-11-12 11:22:46 +01:00
moonheart08
86e2f2005e Allows placing cables on lattices. (#4984)
Adds a "sturdy" tile flag, that in the future could be used by construction/etc to figure out if it's safe to build on a tile. (For example water isn't space, but it's not a sturdy building surface!)
2021-10-23 17:32:33 -07:00
Galactic Chimp
57016d14b4 removed TryGetSound + made some SoundSpecifier datafields required 2021-07-31 19:52:33 +02:00
Galactic Chimp
f531c65a0b Merge branch 'master' into replace-sounds-with-sound-specifier
# Conflicts:
#	Content.Server/Actions/Actions/DisarmAction.cs
#	Content.Server/Actions/Actions/ScreamAction.cs
#	Content.Server/Arcade/Components/SpaceVillainArcadeComponent.cs
#	Content.Server/Damage/Components/DamageOnHighSpeedImpactComponent.cs
#	Content.Server/Explosion/Components/FlashExplosiveComponent.cs
#	Content.Server/Physics/Controllers/MoverController.cs
#	Content.Server/Portal/Components/PortalComponent.cs
#	Content.Server/Portal/Components/TeleporterComponent.cs
#	Content.Server/Projectiles/Components/ProjectileComponent.cs
#	Content.Server/Singularity/Components/EmitterComponent.cs
#	Content.Server/Sound/EmitSoundSystem.cs
#	Content.Server/Stunnable/Components/StunbatonComponent.cs
#	Content.Server/Tools/Components/MultitoolComponent.cs
#	Content.Server/Weapon/Ranged/Barrels/Components/ServerBatteryBarrelComponent.cs
#	Content.Shared/Gravity/GravityComponent.cs
#	Content.Shared/Light/Component/SharedExpendableLightComponent.cs
#	Content.Shared/Maps/ContentTileDefinition.cs
#	Content.Shared/Slippery/SlipperyComponent.cs
#	Content.Shared/Standing/StandingStateComponent.cs
#	Resources/Prototypes/Entities/Objects/Fun/bike_horn.yml
2021-07-25 14:12:00 +02:00
Visne
b7dc3c81ae Remove redundant #nullable enable (#4275) 2021-07-16 17:37:09 -07:00
Swept
5f9ba812ca Reorganizes Resources/Constructible (#4252) 2021-07-15 18:30:50 +00:00
Vera Aguilera Puerto
46d3a56eff ContentTileDefinition defines the path where tile sprites are. (#4260) 2021-07-12 10:32:23 +02:00
Galactic Chimp
ce3c59e0e6 replacing sound (collection) names with SoundSpecifier - part 1 2021-07-10 17:35:33 +02:00