mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-09 16:05:07 +00:00
master
246 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
b308ee9d78 | Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-sync | ||
|
|
7601d66a96 |
Refactors immerse element to use alpha filters instead of static overlays (#93038)
## About The Pull Request Immerse element now uses an alpha filter rather than a vis_contents object, which allows them to be much more smooth and seamless. There's no longer a visible contour on fully opaque liquids, nor a janky effect when you move in a liquid. This also fixes the broken fluid animation, so now it actually has a bit of a wave to it. <img width="179" height="183" alt="dreamseeker_PDjP1zyMRl" src="https://github.com/user-attachments/assets/7c1bbefe-0e97-456e-a303-c34e6a1a238a" /> <img width="177" height="180" alt="dreamseeker_hGjKOyBL8f" src="https://github.com/user-attachments/assets/6c3bc33f-a22c-452a-beb0-9dd44b080a7c" /> <img width="152" height="162" alt="dreamseeker_Et3eRd3NF6" src="https://github.com/user-attachments/assets/1478aaba-d345-44de-8baa-9d0da0bc9d1c" /> <img width="185" height="182" alt="dreamseeker_5Iok1lUni2" src="https://github.com/user-attachments/assets/4ac5fea4-24a7-46c2-b475-4445a43493b4" /> The code is immensely cursed in some places, ideally this should not have to use vis_contents whatsoever but BYOND seems to be intent on causing memory leaks whenever you try to set mutable's render_target to an interpolated string, so I'm using a VIS_HIDE object as a relay for the filter for the time being. I've ended up changing some mob pixel_y offsets to pixel_z (as they should've been from the start) to account for this (the logic is being that pixel_y is "physical" position on the turf, while pixel_z is how high above the turf something is) ## Why It's Good For The Game The effect is less jank and looks cool. ## Changelog 🆑 refactor: Refactors immerse element to use alpha filters instead of static overlays. It should look much prettier now. /🆑 |
||
|
|
53f198a61d |
Implements (a poor imitation of) speculars, improves/fixes unrestricted access overlay lights (#92272)
## About The Pull Request
Implements a poor imitation of specular surfaces by encoding "shinyness"
into blue channel of emissive overlays, which allows some pixels to be
more illuminated than others (by applying lighting multiplied by
specular mask onto them a second time)
This means that hazard vests, engineering coats, security jackets and
firefighter suits no longer outright glow in the dark, but instead
amplify light so even the tiniest amounts make them highly visible. I
made a pass through all of our emissive overlays and converted ones that
made sense into bloom-less/specular ones.
https://github.com/user-attachments/assets/2167e26e-f8b8-42d7-a67c-dfc643e1df29
I've also converted unrestricted access airlock overlays into overlay
lights instead of ABOVE_LIGHTING overlays, so they should no longer look
jank or catch people's clicks.
<img width="297" height="262" alt="dreamseeker_LovPHZ7xHQ"
src="https://github.com/user-attachments/assets/1bf4d7b8-219a-41ed-aee9-6cdc41803e21"
/>
Turns out that windoors had incorrect icon states assigned to theirs, so
I fixed that too - they should show up again after god knows how many
years.
## Why It's Good For The Game
~~Shiny lights make my moth brain go happy~~
Neat visual effects that look more believable than neon glowing stripes,
and airlocks no longer have inflated hitboxes with extremely weird
visuals.
## Changelog
🆑
add: Added specular overlays - some items like hazard vests or
firefighter suits no longer outright glow in the dark, but instead
amplify existing light to shine brighter than their surroundings.
add: Redid unrestricted access airlock overlays to look less bad
fix: Fixed unrestricted access overlays not showing up on windoors.
/🆑
(cherry picked from commit
|
||
|
|
1db39e2a64 |
Fixes topdown emissives/emissive blockers and blood trail rendering (#92430)
## About The Pull Request
Fixes this
<img width="983" height="591" alt="zen_Mhqh2OqiU4"
src="https://github.com/user-attachments/assets/b3275052-1b24-404b-82bc-a4c8e88bdbcf"
/>
This code is mildly bad, but this is the best way we can fix FLOAT_LAYER
topdown emissives/blockers rendering ontop of everything else.
Also added logging/unit testing for blood trails spawned outside of
holders, mappers can use holders to spawn trails (which is the right way
to add them to your maps)
## Changelog
🆑
fix: Fixed blood/glass floor glow going over objects
/🆑
(cherry picked from commit
|
||
|
|
3d730689f4 |
Implements (a poor imitation of) speculars, improves/fixes unrestricted access overlay lights (#92272)
## About The Pull Request Implements a poor imitation of specular surfaces by encoding "shinyness" into blue channel of emissive overlays, which allows some pixels to be more illuminated than others (by applying lighting multiplied by specular mask onto them a second time) This means that hazard vests, engineering coats, security jackets and firefighter suits no longer outright glow in the dark, but instead amplify light so even the tiniest amounts make them highly visible. I made a pass through all of our emissive overlays and converted ones that made sense into bloom-less/specular ones. https://github.com/user-attachments/assets/2167e26e-f8b8-42d7-a67c-dfc643e1df29 I've also converted unrestricted access airlock overlays into overlay lights instead of ABOVE_LIGHTING overlays, so they should no longer look jank or catch people's clicks. <img width="297" height="262" alt="dreamseeker_LovPHZ7xHQ" src="https://github.com/user-attachments/assets/1bf4d7b8-219a-41ed-aee9-6cdc41803e21" /> Turns out that windoors had incorrect icon states assigned to theirs, so I fixed that too - they should show up again after god knows how many years. ## Why It's Good For The Game ~~Shiny lights make my moth brain go happy~~ Neat visual effects that look more believable than neon glowing stripes, and airlocks no longer have inflated hitboxes with extremely weird visuals. ## Changelog 🆑 add: Added specular overlays - some items like hazard vests or firefighter suits no longer outright glow in the dark, but instead amplify existing light to shine brighter than their surroundings. add: Redid unrestricted access airlock overlays to look less bad fix: Fixed unrestricted access overlays not showing up on windoors. /🆑 |
||
|
|
ea0fa299c4 |
Fixes topdown emissives/emissive blockers and blood trail rendering (#92430)
## About The Pull Request Fixes this <img width="983" height="591" alt="zen_Mhqh2OqiU4" src="https://github.com/user-attachments/assets/b3275052-1b24-404b-82bc-a4c8e88bdbcf" /> This code is mildly bad, but this is the best way we can fix FLOAT_LAYER topdown emissives/blockers rendering ontop of everything else. Also added logging/unit testing for blood trails spawned outside of holders, mappers can use holders to spawn trails (which is the right way to add them to your maps) ## Changelog 🆑 fix: Fixed blood/glass floor glow going over objects /🆑 |
||
|
|
a2989f29fb |
Makes monster cores display above lying mobs (#92306)
## About The Pull Request Monster cores now render above lying mobs and corpses, making them easier to grab during fights. They reset to object layer once moved or picked up to avoid visual issues. ## Why It's Good For The Game During vent defenses when you encounter legions while low on heals you may be tempted to grab a core to buff and regen, but as they're rendered below mobs you either have to pixel hunt through a skeleton's ribs, or use right click to pick it up via the context menu. Both of these options make for a rather unpleasant experience, this should make it less painful to do. Technically applies to other mobs as well, but I doubt that anyone is butchering monsters mid-fight for lobstrocity or brimdemon cores. ## Changelog 🆑 qol: Monster cores now display above corpses when dropped /🆑 |
||
|
|
15317c3c2c |
Fixes emissive bloom being all white (#92376)
## About The Pull Request #92357 moved base unlit game below emissives which broke bloom. It should always be directly below RENDER_PLANE_LIGHTING ## Changelog 🆑 fix: Fixed emissive bloom being all white /🆑 |
||
|
|
38f927b658 | Render plate code cleanup, moves game effects up to the lit game plate (#92357) | ||
|
|
fa4b8f7b38 |
Makes monster cores display above lying mobs (#92306)
## About The Pull Request Monster cores now render above lying mobs and corpses, making them easier to grab during fights. They reset to object layer once moved or picked up to avoid visual issues. ## Why It's Good For The Game During vent defenses when you encounter legions while low on heals you may be tempted to grab a core to buff and regen, but as they're rendered below mobs you either have to pixel hunt through a skeleton's ribs, or use right click to pick it up via the context menu. Both of these options make for a rather unpleasant experience, this should make it less painful to do. Technically applies to other mobs as well, but I doubt that anyone is butchering monsters mid-fight for lobstrocity or brimdemon cores. ## Changelog 🆑 qol: Monster cores now display above corpses when dropped /🆑 |
||
|
|
8b965c9127 |
Fixes emissive bloom being all white (#92376)
## About The Pull Request #92357 moved base unlit game below emissives which broke bloom. It should always be directly below RENDER_PLANE_LIGHTING ## Changelog 🆑 fix: Fixed emissive bloom being all white /🆑 |
||
|
|
488986d7be | Render plate code cleanup, moves game effects up to the lit game plate (#92357) | ||
|
|
31c34ed5c6 | [NO GBP] Fixes black character previews (#91616) | ||
|
|
856a5f89b9 |
Implements colored bloom for emissives (#91456)
## About The Pull Request Emissive sprites now bloom out a bit (3 pixels, to be specific)   This is done by rendering emissives onto a plate, multiplying them by unlit game rendering plate to color them, then blooming all non-black pixels (1 offset, 2 size, so 100/66/33% brightness) on it and rendering it onto the overlay lighting plane. We use overlay lighting because it slightly detracts from the static lighting plane, so our emissives color their surroundings a bit even in fully lit rooms.  You can make emissives not emit light by setting ``apply_bloom`` to FALSE in ``emissive_appearance()``. This is done by storing bloom in the red color channel and converting bloomless emissives to green, then having both render targets have color matrixes which convert them back to white. ## Why It's Good For The Game Fancy visuals, goes hard. ## Changelog 🆑 add: Emissive objects now have a bit of a colored bloom around them. /🆑 |
||
|
|
0b7099d916 | [NO GBP] Fixes black character previews (#91616) | ||
|
|
e82f4c375c |
Implements colored bloom for emissives (#91456)
## About The Pull Request Emissive sprites now bloom out a bit (3 pixels, to be specific)   This is done by rendering emissives onto a plate, multiplying them by unlit game rendering plate to color them, then blooming all non-black pixels (1 offset, 2 size, so 100/66/33% brightness) on it and rendering it onto the overlay lighting plane. We use overlay lighting because it slightly detracts from the static lighting plane, so our emissives color their surroundings a bit even in fully lit rooms.  You can make emissives not emit light by setting ``apply_bloom`` to FALSE in ``emissive_appearance()``. This is done by storing bloom in the red color channel and converting bloomless emissives to green, then having both render targets have color matrixes which convert them back to white. ## Why It's Good For The Game Fancy visuals, goes hard. ## Changelog 🆑 add: Emissive objects now have a bit of a colored bloom around them. /🆑 |
||
|
|
eb512a1b9b |
Explicitly set lobby background layer (#91160)
Right now this is based on insertion order which is a bit gross and breaks event-base. No difference for us though |
||
|
|
f340c5a62f |
Explicitly set lobby background layer (#91160)
Right now this is based on insertion order which is a bit gross and breaks event-base. No difference for us though |
||
|
|
753d8e5ba4 | Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-25-04a | ||
|
|
77823ad210 |
Pathfinding Visualization, JPS fixes, Misc Improvement (#90233)
## About The Pull Request [cleans up poor namespacing on light debugging tools]( |
||
|
|
0b2279d696 |
Obliterating Obscure Overlay Opalescence: Overlay Lighting Rework (#89868)
## About The Pull Request Turns overlay lighting into fake-weighted additive lighting, making it look similar to our current tile lighting.  <details> <summary>More pictures</summary>  This also allows overlay light colors to blend together nicely   </details> Additionally, flashlights can now be spray-painted as blobs of darkness will no longer be a major issue. Non-overlay sources of blobby darkness haven't been affected. ## Why It's Good For The Game Our current overlay lights kinda suck, and there's no way to control how much color they contribute to total lighting.  Also, when two light overlays meet, whichever one is positioned higher on the y axis (due to sidemap), or has been dropped last if they're positioned equally, would completely remove the other one, which looks really bad. ## Changelog 🆑 refactor: Refactored how overlay lights work - having one in your pocket will no longer color air around you into piss qol: Painted flashlights once again emit colored light. /🆑 |
||
|
|
0ac282f03f |
Fixes spiderwebs, alien weeds, kudzu, and other stuff layering below catwalks and glass floors (#89893)
## About The Pull Request Vents/scrubbers look a bit weird as their pipes still go above catwalks/glass floors but I need my stuff from #89702 and it should be atomized from this PR. Closes #87022 Closes #88823 ## Changelog 🆑 fix: Fixed spiderwebs, alien weeds, kudzu, and other stuff layering below catwalks and glass floors /🆑 |
||
|
|
b6b8306fda | Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-25-02a | ||
|
|
4b77c6f7c0 |
Decouples "Is this affected by a mop" from layer var (#88465)
## About The Pull Request Rather than checking for object layer if we can clean something, has a trait which accomplishes this This better allows us to pick and choose what objects we want to clean when mopping Note: I didn't apply the trait to everything it previously affected Currently, it cleans stuff like pipes and plumbing, which I deemed not necessary to carry over since they can't get dirty anyways I can re-add this if desired though Fixes #88445 Fixes #88150 ## Changelog 🆑 Melbert fix: Gibs get bulk cleaned if you clean the turf again refactor: Changed how things determine "I can be bulk cleaned if I clean the turf underneath me", let me know if you notice anything not getting bulk cleaned or weird things getting bulk cleaned /🆑 |
||
|
|
ad74da5cd2 |
Fixing a couple issues with pipes rendering and the immerse element. (#87635)
## About The Pull Request Atomizing changes from an upcoming PR. Basically the immerse element didn't work for things on the floor plane ever since the TOPDOWN_LAYER was introduced to the code (eg disposal pipes don't appear underwater), and the type checks for atmos pipe caps are deprecated by the underfloor_accessibility var. ## Why It's Good For The Game Fixing a couple visual nits. ## Changelog 🆑 fix: Fixed a couple nits with the water visuals not appearing on objects with a very low layer (rendered just above the floor), as well as atmos pipes looking a bit funky on untiled turfs beside catwalks and platings when beside connected, under-floored pipes. /🆑 |
||
|
|
8277a444bc | bubber edits | ||
|
|
3c5b1d8b68 |
Puts blood back on floor plane, puts runes on floor plane (removes shadows from blood and runes) (#87013)
## About The Pull Request Basically goes through and puts some flat objects onto the floor plane. Also puts blood back on the floor plane, since it seems like it used to be but may have been moved mistakenly questionmark. This means they will not be affected by Ambient Occlusion:  ## Why It's Good For The Game A lot of these "flat" things look really out of place because they're secretly "floating" due to being on the wrong plane ## Changelog 🆑 Melbert qol: Runes, crayons, and similar decals no longer have shadows fix: Blood and similar "mess" decals no longer have shadows (again) /🆑 |
||
|
|
eb3a0d4777 |
Weather planes from The Wallening to fix multi-z weather overlays (#86733)
## About The Pull Request I started doing this for Yogstation, but ended up doing all my testing on TG code since there's more debug tools to use, and @LemonInTheDark said I should upstream it when I was done. So I'm just gonna start here. The whole point of this is to stop multi-z maps from stacking weather overlay effects like  Old pic I know, but you get the point Now it behaves as expected https://github.com/user-attachments/assets/6d737eae-2493-4b48-8870-e4ac73dcbbeb https://github.com/user-attachments/assets/b253aa97-c90d-4049-a97d-940b0ec386d0 <details> <summary>Note: this does not fix the issue of areas out of your view not updating their appearance. 90% sure that's a Byond™️ issue</summary> https://github.com/user-attachments/assets/3db5ce28-2623-4d3e-a5f4-bd561d96010a </details> ## Why It's Good For The Game Isolating weather to its own planes is good for having better control over how it behaves. Since weather overlays are tied to areas it makes them kinda hacky to begin with, but this is a step in reigning them in. ## Changelog 🆑 fix: fixed multi-z weather overlays stacking and not hiding overlays above you /🆑 |
||
|
|
e5472d9be4 |
Fishing bluespace capsules (#87639)
## About The Pull Request With this PR, I'm introducing fishing bluespace capsules to the game. They can be found on the black market, but I'll get a couple more ways to get them before it's ready. Anyway, they're special bluespace capsules that spawn a fishing spot of your choice. The fishing spot can be changed by alt-clicking the capsule, and so far it has 5 choices, plus 2 locked behind emagging for obvious reasons: - Freshwater: pretty basic, you get freshwater fish from this. - Saltwater: mainly saltwater fish. - Tiziran: You get tiziran fish here, like the gunner jellyfish, armorfish, needlefish, dwarves moonfish and the new, bigger zagoskian moonfish. By the by, moonfish now periodically lay moonfish eggs, a staple of lizardfolk cuisine. - Ice fishing spot: A small ice turf with a hole dug in it; salmon, arctic char, arctic chrabs and the bonemass (skeleton fish). - Hot Spring: Somehow the new home to the ought-to-be-extinct sacabambaspis. It also doubles as a better shower overall, with mild healing on top of stamina recovery. Felinids still hate it though, and won't benefit from the healing. - Lava: A 2x2 square of pure lava. Requires an emag for obvious reasons. - Plasma: Ditto, but it's plasma instead of lava. As a sidenote, unlike standard shelter capsules, these require their area to be clear of pipes and cables on top of the other requirements, unless emagged. Obviously, I've done some changes to allow pipes and cables to not be hidden by water turfs, though I'm still keeping these reqs because I don't think these fishing spots would look great if riddled with cables and pipes. I may remove this extra req later if it proves to be a tad too tedious. Also they don't knock you back when expanding. Screenshot from a recent test (fixed the misplaced decal and tweaked a few things since then):  ## Why It's Good For The Game The idea stems from how not all fishing spots aren't designed to be accessible every round, which is fine, because we have the fish-porter for that. However, even the fish-porter should have its limits in terms of what it can provide by itself (linking is all fair and game), so I've thought having something of a middle point would been neat, also as a way to mess around with the station layout a bit, to empower the player with a little extra "terraforming". ## Changelog 🆑 add: Added fishing bluespace capsules to the game, which can be used to spawn a variety of fishing spots, from freshwater to tiziran sea to hot springs, and also lava and plasma if emagged. add: Added two new fish: the zagoskian moonfish and the sacabambaspis. Moonfish will now periodically lay moonfish eggs. map: The 'crashed pod' lavaland ruin now has a hot spring, and the cursed hotspring on icemoon now has a plastic chair and a fishing toolbox. /🆑 |
||
|
|
f8faccd70a | Merge branch 'master' of https://github.com/Skyrat-SS13/Skyrat-tg into upstream-24-10a | ||
|
|
bb70889f6e |
TG Upstream Part 1
3591 individual conflicts Update build.js Update install_node.sh Update byond.js oh my fucking god hat slow huh holy shit we all fall down 2 more I missed 2900 individual conflicts 2700 Individual conflicts replaces yarn file with tg version, bumping us down to 2200-ish Down to 2000 individual conflicts 140 down mmm aaaaaaaaaaaaaaaaaaa not yt 575 soon 900 individual conflicts 600 individual conflicts, 121 file conflicts im not okay 160 across 19 files 29 in 4 files 0 conflicts, compiletime fix time some minor incap stuff missed ticks weird dupe definition stuff missed ticks 2 incap fixes undefs and pie fix Radio update and some extra minor stuff returns a single override no more dupe definitions, 175 compiletime errors Unticked file fix sound and emote stuff honk and more radio stuff |
||
|
|
b3245078c8 |
Puts blood back on floor plane, puts runes on floor plane (removes shadows from blood and runes) (#87013)
## About The Pull Request Basically goes through and puts some flat objects onto the floor plane. Also puts blood back on the floor plane, since it seems like it used to be but may have been moved mistakenly questionmark. This means they will not be affected by Ambient Occlusion:  ## Why It's Good For The Game A lot of these "flat" things look really out of place because they're secretly "floating" due to being on the wrong plane ## Changelog 🆑 Melbert qol: Runes, crayons, and similar decals no longer have shadows fix: Blood and similar "mess" decals no longer have shadows (again) /🆑 |
||
|
|
22d319fa86 |
Weather planes from The Wallening to fix multi-z weather overlays (#86733)
## About The Pull Request I started doing this for Yogstation, but ended up doing all my testing on TG code since there's more debug tools to use, and @LemonInTheDark said I should upstream it when I was done. So I'm just gonna start here. The whole point of this is to stop multi-z maps from stacking weather overlay effects like  Old pic I know, but you get the point Now it behaves as expected https://github.com/user-attachments/assets/6d737eae-2493-4b48-8870-e4ac73dcbbeb https://github.com/user-attachments/assets/b253aa97-c90d-4049-a97d-940b0ec386d0 <details> <summary>Note: this does not fix the issue of areas out of your view not updating their appearance. 90% sure that's a Byond™️ issue</summary> https://github.com/user-attachments/assets/3db5ce28-2623-4d3e-a5f4-bd561d96010a </details> ## Why It's Good For The Game Isolating weather to its own planes is good for having better control over how it behaves. Since weather overlays are tied to areas it makes them kinda hacky to begin with, but this is a step in reigning them in. ## Changelog 🆑 fix: fixed multi-z weather overlays stacking and not hiding overlays above you /🆑 |
||
|
|
4c4930c71d | Merge branch 'master' of https://github.com/tgstation/tgstation into pulls-tg-to-fix-shit | ||
|
|
9a9b428b61 |
Wallening Revert [MDB Ignore][IDB Ignore] (#86161)
This PR is reverting the wallening by reverting everything up to
|
||
|
|
0f637c8360 | Merge branch 'master' of https://github.com/Skyrat-SS13/Skyrat-tg into upstream-24-08d | ||
|
|
6a418150e8 |
[MIRROR] Spelling and Grammar Fixes (#29499)
* Spelling and Grammar Fixes * they dont understand --------- Co-authored-by: klorpa <30924131+klorpa@users.noreply.github.com> Co-authored-by: projectkepler-RU <99981766+projectkepler-ru@users.noreply.github.com> |
||
|
|
d2c7806047 |
Spelling and Grammar Fixes (#85992)
## About The Pull Request Fixes several errors to spelling, grammar, and punctuation. ## Why It's Good For The Game ## Changelog 🆑 spellcheck: fixed a few typos /🆑 |
||
|
|
e47ba6480f |
[NO GBP] Fixes examine balloons not being click transparent even while inactive (#85969)
## About The Pull Request This solution sucks, but byond is after our mortal souls and I wasn't able to find anything better. Something is very wrong with mouse_opacity and the only working solution was making the plane master invisible while its inactive. Closes #85968 ## Why It's Good For The Game They no longer eat your clicks while invisible ## Changelog 🆑 fix: Fixed examine balloons not being click transparent even while inactive /🆑 --------- Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com> |
||
|
|
f212981ec1 | Merge branch 'master' of https://github.com/Bubberstation/Bubberstation into upstream-24-08c | ||
|
|
cb9535e7bb |
[Bounty] Vore 4.0 (#1808)
## About The Pull Request A ground-up rewrite of Vore 3.0 (Virgo's current system) as a /datum/component. Resolves #464 Resolves #845 Remaining work: - [ ] Fix any bugs found in testing ## Why It's Good For The Game See bounty. People want this to enjoy themselves. ## Proof Of Testing            ## Changelog 🆑 add: Mechanical Vore /🆑 <!-- If your PR modifies aspects of the game that can be concretely observed by players or admins you should add a changelog. If your change does NOT meet this description, remove this section. Be sure to properly mark your PRs to prevent unnecessary GBP loss. You can read up on GBP and it's effects on PRs in the tgstation guides for contributors. Please note that maintainers freely reserve the right to remove and add tags should they deem it appropriate. You can attempt to finagle the system all you want, but it's best to shoot for clear communication right off the bat. --> <!-- 🆑 add: Added new mechanics or gameplay changes add: Added more things del: Removed old things qol: made something easier to use balance: rebalanced something fix: fixed a few things sound: added/modified/removed audio or sound effects image: added/modified/removed some icons or images spellcheck: fixed a few typos code: changed some code refactor: refactored some code config: changed some config setting admin: messed with admin stuff server: something server ops should know /🆑 --> <!-- Both 🆑's are required for the changelog to work! You can put your name to the right of the first 🆑 if you want to overwrite your GitHub username as author ingame. --> <!-- You can use multiple of the same prefix (they're only used for the icon ingame) and delete the unneeded ones. Despite some of the tags, changelogs should generally represent how a player might be affected by the changes rather than a summary of the PR's contents. --> <!-- By opening a pull request. You have read and understood the repository rules located on the main README.md on this project. --> --------- Co-authored-by: The Sharkening <95130227+StrangeWeirdKitten@users.noreply.github.com> |
||
|
|
6f0dd84a3d |
Splits wall layer into three (#85901)
## About The Pull Request Turns `ON_WALL_LAYER` into `FLAT_ON_WALL_LAYER` `ON_WALL_LAYER` `HIGH_ON_WALL_LAYER` Where `FLAT_ON_WALL_LAYER` is meant for lower-priority wall mounts like signs and posters `ON_WALL_LAYER` is default and `HIGH_ON_WALL_LAYER` is for stuff that "hang over" the wall Also makes the incident display actually wall mounted ## Why It's Good For The Game I noticed this while doing mapping and I thought it was a really cool effect  Unfortunately this effect was a coinflip because all wall mounts were on the same layer. Sometimes it'd look like this  So this allows us to do this kinda stuff consistently. Also has the added effect of letting us "de-prioritize" stuff like posters, so we can hang stuff *over* posters and signs, which could be useful. ## Changelog 🆑 Melbert qol: Some wall mounts will now consistently layer over others (light switches and cameras, notably, should always layer above other mounts like signs and status displays) /🆑 |
||
|
|
4337997c5c |
[MIRROR] Fixes catwalk rendering layering and catwalk pipe cap issues (#29307)
* Fixes catwalk rendering layering and catwalk pipe cap issues (#85236) ## About The Pull Request Sooooooo this one's a mess. First off, layering issues. Pipes, cables, and disposals currently render over catwalks!  That's not great. Looking into it, it seems we've moved the `CATWALK_LAYER` below the `ABOVE_OPEN_TURF_LAYER`, where the catwalk layer is used for closed catwalks. |
||
|
|
2ce8063930 |
Fixes catwalk rendering layering and catwalk pipe cap issues (#85236)
## About The Pull Request Sooooooo this one's a mess. First off, layering issues. Pipes, cables, and disposals currently render over catwalks!  That's not great. Looking into it, it seems we've moved the `CATWALK_LAYER` below the `ABOVE_OPEN_TURF_LAYER`, where the catwalk layer is used for closed catwalks. |
||
|
|
4b4e9dff1d |
Wallening [IDB IGNORE] [MDB IGNORE] (#85491)
## What's going on here Kept you waitin huh! This pr resprites most all walls, windows and other "wall adjacent" things to a 3/4th perspective, technical term is "tall" walls (we are very smart). If you're trying to understand the technical details here, much of the "rendering tech" is built off the idea of split-vis. Basically, split a sprite up and render it on adjacent turfs, to prevent seeing "through" walls/doors, and to support seeing "edges" without actually seeing the atom itself. Most of the rest of it is pipelining done to accommodate how icons are cut. ## Path To Merge Almost* all sprites and code is done at this point. There are some things missing both on and off the bounty list, but that will be the case forever unless we force upstream (you guys) to stop adding new shit that doesn't fit the style. I plan on accepting and integrating prs to the current working repo <https://github.com/wall-nerds/wallening> up until a merge, to make contribution simpler and allow things like bounties to close out more easily This pr is quite bulky, even stripping away map changes it's maybe 7000 LOC (We have a few maps that were modified with UpdatePaths, I am also tentatively pring our test map, for future use.) This may inhibit proper review, although that is part of why I am willing to make it despite my perfectionism. Apologies in advance. Due to the perspective shift, a lot of mapping work is going to need to be done at some point. This comes in varying levels of priority. Many wallmounts are offset by hand, some are stuck in the wall/basically cannot be placed on the east/west/north edges of walls (posters), some just don't look great good in their current position. Tests are currently a minor bit yorked, I thought it was more important to get this up then to clean them fully. ## What does it look like?       ## Credits <details> <summary>Historical Mumbojumbo</summary> I am gonna do my best to document how this project came to be. I am operating off third party info and half remembered details, so if I'm wrong please yell at me. This project started sometime in late 2020, as a product of Rohesie trying to integrate and make easier work from Mojave Sun (A recently defunct fallout server) with /tg/. Mojave Sun (Apparently this was LITERALLY JUST infrared baron, that man is insane) was working with tall walls, IE walls that are 48px tall instead of the normal 32. This was I THINK done based off a technical prototype from aao7 proving A it was possible and B it didn't look like dogwater. This alongside oranges begging the art team for 3/4th walls (he meant TGMC style) lead to Rohesie bringing on contributors from general /tg/, including actionninja who would eventually take over as technical lead and Kryson, who would define /tg/'s version of the artstyle. Much of the formative aspects of this project are their work. The project was coming along pretty well for a few months, but ran into serious technical issues with `SIDE_MAP`, a byond map_format that allows for simpler 3/4th rendering. Due to BULLSHIT I will not detail here, the map format caused issues both at random with flickering and heavily with multiz. Concurrent with this, action stepped down after hacking out the rendering tech and starting work on an icon cutter that would allow for simpler icon generation, leaving ninjanomnom to manage the project. Some time passed, and the project stalled out due to the technical issues. Eventually I built a test case for the issues we had with `SIDE_MAP` and convinced lummox jr (byond's developer) to explain how the fuckin thing actually worked. This understanding made the project theoretically possible, but did not resolve the problems with multi-z. Resolving those required a full rework of how rendering like, worked. I (alongside tattle) took over project development from ninjanomnom at this time, and started work on Plane Cube (#69115), which when finished would finally make the project technically feasible. The time between then and now has been slow, progressive work. Many many artists and technical folks have dumped their time into this (as you can see from the credits). I will get into this more below but I would like to explicitly thank (in no particular order) tattle, draco, arcanemusic, actionninja, imaginos, viro and kylerace for keeping the project alive in this time period. I would have curled up into a ball and died if I had to do this all myself, your help has been indispensable. </details> <details> <summary>Detailed Credits</summary> Deep apologies if I have forgotten someone (I am sure I have, if someone is you please contact me). I've done my best to collate from the git log/my memory. Thanks to (In no particular order): Raccoff: Being funny to bully, creating threshold decals for airlocks aa07: (I think) inspiring the project ActionNinja: Laying the technical rock we build off, supporting me despite byond trying to kill him, building the icon cutter that makes this possible ArcaneMusic: Artistic and technical work spanning from the project's start to literally today, being a constant of motivation and positivity. I can't list all the stuff he's done Armhulen: Key rendering work (he's the reason thindows render right), an upbeat personality and a kick in the ass. Love you arm Azlan: Damn cool sprites, consistently Ben10Omintrix: You know ben showed up just to make basic mobs work, he's just fuckin like that man BigBimmer: A large amount of bounty work, alongside just like, throwing shit around. An absolute joy to work with Capsandi: Plaques, blastdoors, artistic work early on CapybaraExtravagante: Rendering work on wall frames Draco: SO MUCH STUFF. Much of the spritework done over the past two years is his, constantly engaged and will take on anything. I would have given up if not for you Floyd: Early rendering work, so early I don't even know the details. Enjoy freedom brother Imaginos16: A guiding hand through the middle years, handled much of the sprite review and contribution for a good bit there Iamgoofball: A dedication to detail and aesthetic goals, spends a lot of effort dissecting feedback with a focus on making things as good as they can be at the jump Infrared: Part of the impetus for the project, made all the xenomorph stuff in the MS style Jacquerel: A bunch of little upkeep/technical things, has done so much sprite gruntwork (WHY ARE THERE SO MANY PAINTING TYPES) Justice12354: Solved a bunch of error sprites (and worked out how to actually make prs to the project) Thanks bro! Kryson: Built the artstyle of the project, carrying on for years even when it was technically dying, only stopping to casually beat cancer. So much of our style and art is Kryson KylerAce: Handled annoying technical stuff for me, built window frame logic and fully got rid of grilles. LemonInTheDark: Rendering dirtywork, project management and just so much fucking time in dreammaker editing sprites Meyhazah: Table buttons, brass windows and alll the old style doors Mothblocks: Has provided constant support, gave me a deadline and motivation, erased worries about "it not being done", gave just SO much money to fill in the critical holes in sprites. Thanks moth MTandi: Contributed art despite his own blackjack and hookers club opening right down the road, I'm sorry I rolled over some of your sprites man I wish we had finished earlier Ninjanomnomnom: Consulted on gags issues, kept things alive through some truly shit times oranges: This is his fault Rohesie: Organized the effort, did much of the initial like, proof of concept stuff. I hope you're doin well whatever you're up to. san7890: Consulting on mapper UX/design problems, being my pet mapper Senefi: Offsetting items with a focus on detail/the more unused canidates SimplyLogan: Detailed map work and mapper feedback, personally very kind even if we end up talking past each other sometimes. Thank you! SpaceSmithers: Just like, random mapping support out of nowhere, and bein a straight up cool dude Tattle: A bunch of misc project management stuff, organizing the discord, managing the test server, dealing with all the mapping bullshit for me, being my backup in case of bus. I know you think you didn't do much but your presence and work have been a great help Thunder12345: Came out of nowhere and just so much of the random bounties, I'm kind of upset about how much we paid him Time-Green: I hooked him in by fucking with stuff he made and now he's just doin shit, thanks for helping out man! Twaticus: Provided artistic feedback and authority for my poor feeble coder brain, believed in the project for YEARS, was a constant source of ❤️ and affirmation unit0016: I have no god damn idea who she is, popped out of nowhere on the github one day and dealt with a bunch of annoying rendering/refactoring. Godspeed random furry thank you for all your effort and issue reports Viro: A bunch of detailed spriting moving towards 3/4ths, both on and off the wallening fork. If anyone believed this project would be done, it was viro Wallem: Artistic review and consultation, was my go-to guy for a long time when the other two spritetainers were inactive Waltermeldon: Cracked out a bunch of rendering work, he's the reason windows look like not dogwater. Alongside floyd and action spent a TON of time speaking to lummox/unearthing how byond rendering worked trying to make this thing happen ZephyrTFA: Added directional airlock helpers, dealt with a big fuckin bugaboo that was living in my brain like it was nothing. Love you brother And finally: The Mojave Sun development team. They provided a testbed for the idea, committed hundreds and hundreds of hours to the artstyle, and were a large reason we caught issues early enough to meaningfully deal with them. Your work is a testament to what longterm effort and deep detailed care produce. I hope you're doing well whatever you're up to. Go out with a bang! </details> ## Changelog 🆑 Raccoff, aa07, ActionNinja, ArcaneMusic, Armhulen, Azlan, Ben10Omintrix, BigBimmer, Capsandi, CapybaraExtravagante, Draco, Floyd, Iamgoofball, Imaginos16, Infrared, Jacquerel, Justice12354, Kryson, KylerAce, LemonInTheDark, Meyhazah, Mothblocks, MTandi, Ninjanomnom, oranges, Rohesie, Runi-c, san7890, Senefi, SimplyLogan, SomeAngryMiner, SpaceSmithers, Tattle, Thunder12345, Time-Green, Twaticus, unit0016, Viro, Waltermeldon, ZephyrTFA with thanks to the Mojave Sun team! add: Resprites or offsets almost all "tall" objects in the game to match a 3/4ths perspective add: Bunch of rendering mumbo jumbo to make said 3/4ths perspective work /🆑 --------- Co-authored-by: Jacquerel <hnevard@gmail.com> Co-authored-by: san7890 <the@san7890.com> Co-authored-by: = <stewartareid@outlook.com> Co-authored-by: Capsandi <dansullycc@gmail.com> Co-authored-by: ArcaneMusic <hero12290@aol.com> Co-authored-by: tattle <66640614+dragomagol@users.noreply.github.com> Co-authored-by: SomeAngryMiner <53237389+SomeAngryMiner@users.noreply.github.com> Co-authored-by: KylerAce <kylerlumpkin1@gmail.com> Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com> Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com> Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com> Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com> Co-authored-by: Runi-c <5150427+Runi-c@users.noreply.github.com> Co-authored-by: Roryl-c <5150427+Roryl-c@users.noreply.github.com> Co-authored-by: tattle <article.disaster@gmail.com> Co-authored-by: Senefi <20830349+Peliex@users.noreply.github.com> Co-authored-by: Justice <42555530+Justice12354@users.noreply.github.com> Co-authored-by: BluBerry016 <50649185+unit0016@users.noreply.github.com> Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com> Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Co-authored-by: SimplyLogan <47579821+loganuk@users.noreply.github.com> Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com> Co-authored-by: Rob Bailey <github@criticalaction.net> Co-authored-by: MMMiracles <lolaccount1@hotmail.com> |
||
|
|
fa2ab65f07 |
Missed mirrors (#28919)
Handful of missed mirrors (#3739) * fix duplicate traits * Adds a Contraband trait, and implements contraband as a mechanic to security bounties. (#84003) This PR does a few things but centrally it's all centered around mechanically enforcing what items are and are-not considered contraband in-game. Contraband items are visually indistinguishable from non-contraband. If an item is Contraband, it can only be detected in two ways: * After being scanned by an N-Spect scanner, which is a standard item security item, assuming it still has a charge to do so. * Via a scanner gate, which can now be upgraded with an N-spect scanner to allow for it to scan a person and all their contents for contraband. Contraband items are intended to be determined both logically and through other relevant examine text. However, here's the short list of items that are considered contraband, reserving the right to expand the list. <details> <summary>In hindsight it's kind of a long list.</summary> * Items that have "contraband" or "illegal" in the name or description. * Items that allow for the player to obtain other illegal items, that are NOT particularly stealthy. * This means that a syndicate uplink is NOT considered contraband, as they're typically hidden on your person as something else. * Stealth items under the syndicate uplink, the revolutionary flash, and some mapped in dangerous items that can come from both syndicate and company-aligned resources are not considered dangerous. * Items that are purchased from cargo after emagging or switching to extended cargo range. * Items purchased FROM syndicate uplinks, the wizard knowledge scroll, or other antagonist shops. * Cursed artifacts/tools magically produced by cultists or heretics. * Items purchased from the blackmarket. * Items purchased from the contraband section of vending machines. * Some drugs and overtly dangerous or criminal byproducts. </details> Well, primarily, this is an aid for in-game enforcement of space law. Based on the length of the above list, we have a LONG, LONG list of items in-game that are technically considered, in one way or another, illegal to have on the station, and yet without either metaknowledge of what those items are, or how they're used, security officers lack some of the certainty of how to deal with these kinds of encounters. Additionally to the knowledge aspect of this trait, security officers may now receive a new civilian bounty to collect items that are considered contraband, also giving them an incentive to look for and confiscate contraband that's been found across the station while upholding space law. Security has a bounty for 3 different rechargers, and considering access limitations, most security players aren't going to make this exchange, so I've lowered the required amount down to 1. Adjusted the N-spect scanner's description to match it's new functionality. The Civilian bounty TGUI now has an additional 1 point of padding to make it feel less cramped. https://github.com/tgstation/tgstation/assets/41715314/c3cd4752-b03a-4e0b-959e-1252fcc2369d **Updated as of 6/19/2024:** Additionally, some storage items will block the presence of contraband when going through a contraband aligned scanning gate. These items include the infiltrator modsuit core, storage implant, void cloak, the aptly named smuggler's satchel, and the chameleon kit's backpack. **Updated as of 6/23/2024:** N-spect scanner now has contextual screentips. **Updated as of 6/29/2024:** Scanner gates are now available in all lathes that have a feature specific to how scanner gates function. So, includes cargo (contraband), security (weapons), and medbay (diseases). Originally, this started out as a way to be able to provide more in-character and in-flavor bounties for security officers, because they suck! Most security bounties as they exist right now do the worst possible things from all respective bounties: * They detract away from a job's actual responsibilities as opposed to working with them. * They're best completed while sitting next to your lathe and running items back to the bounty pad. * They exist with such esoteric rarity of high quantity of items that it's miserable to fulfil. As a result, I started work on this as a framework to allow security officers to be further incentivized to collect contraband across the station, either as a result of the gamemode or just through routine patrols across the station. Implementing it as a learning tool for security as well just happened to work out as an additional bonus, and having a function in-game allowing newer or less experienced players to know if an item is considered dangerous or conspicuous also works as a particularly good way to provide information where a player may not know what they're up against. If nothing else, this might be interesting to try, and if not, I'll just snip out the QOL changes from it and we'll see how it goes. Going forward, I am a bit hesitant about the contraband scanner gate mode, and as such, will try working with the admin team to determine if that's a good feature to keep around for game health, while hoping to give it a chance in the fullness of time. 🆑 add: Items spawned via traitor uplinks or are known illegal contraband on the station can now be scanned and identified as such by the N-spect scanners in security. These only applies to overt traitor or antagonist items, and "stealth" items will not be seen as such. add: Scanner gates can now be upgraded by using an N-spect scanner on it to unlock "contraband scanning" mode. add: Security officers can now be offered a bounty to turn in pieces of contraband. add: Some stealthy storage items like storage implants, smuggler's satchels, void cloaks, the infiltrator modsuit, and the chameleon backpack will block the presence of contraband on your person when placed inside. qol: N-spect scanner contextual screentips. balance: Recharger security bounties ask for a quantity of 1, down from 3. qol: security, cargo, and medbay have access to scanner gate boards. /🆑 --------- * Adds six new strange object powers! (#84775) DESIGN CONCEPT: Strange Devices are at their best when they're odd tools which can help a department out, with some strange drawbacks that make them interesting and unique. Foam for the Janitor, Flashbang for Security, Teleporter for tiders, Corgimaker for the chef. They're also ambiguous enough that they can really be used by anyone for silly hijinks. Drink Dispenser: Creates a glass, then fills it up with a random drink. Bioscrambler: After a noticeable warning, bioscrambles people nearby. 33% chance to be used up on use. Recharger: Shocks you, but recharges one random item to max battery. Hugger: Hugs everyone in range as if you had the friendly trait. DImensional: Converts the surroundings to a random material-theme. Each use increases cooldown by two seconds. Disguiser: Drops your clothing to the ground and replaces it with a delete-on-drop costume and a randomly assigned cardboard ID. Removed an unused and unusable shock flag. Removed an unused dumb ghost item. Added a proc that returns a hex color with the # attached. > DESIGN CONCEPT: Strange Devices are at their best when they're odd tools which can help a department out, with some strange drawbacks that make them interesting and unique. Foam for the Janitor, Flashbang for Security, Teleporter for tiders, Corgimaker for the chef. They're also ambiguous enough that they can really be used by anyone for silly hijinks. Request by ArcaneMusic! He wanted new abilities to go along with the new sprites, and approved these. > Removed an unused dumb ghost item. please stop using costume subtypes for OP items. whats the damn point of the subtype if youre just going to screw with it > Added a proc that returns a hex color with the # attached. idk why it didnt have this tbh 🆑 add: Adds six new strange object powers! Drink dispenser, bioscrambler, recharger, hugger, dimensional, disguiser. code: Removed some unused code and items, and added a proc that returns a random #colorstring. /🆑 * [NO GBP] the random spawner loot weight config is not an integer (#84814) Sets `integer` to false. Also a tidbit about the `skew_loot_weight` proc, though loot lists with uneven weights all tend to add a value to all entries so it isn't an issue. The config isn't an integer. N/A * The techweb no longer erroneously refers to MODsuits as exosuits (#84800) At some point, some of the techweb node descriptions were changed, so that it referred to certain modsuits as exosuits. This just changes it back. The term "exosuit" is generally used for mechs, not modsuits. The techweb descriptions should refer to modsuits as modsuits. 🆑 spellcheck: The techweb no longer erroneously refers to MODsuits as exosuits. /🆑 * Adds new hairstyle - Short Bangs 2 (#84804) Adds a new hairstyle called Short Bangs 2. The hairstyle is basically an edit of the existing double buns, except the hair buns themselves are removed. https://github.com/tgstation/tgstation/assets/66234359/38fe3b09-c42b-43e6-9e30-949428aab506 More customization, variety and character flavor is great. Double buns itself is a good hairstyle but some may not like the hair buns out of personal preference or that it can look weird on non-human species like felinids. 🆑 Hardly3D add: Added new hairstyle: Short Bangs 2 /🆑 * Offset render relays for non-offsetting planes to match highest matching render plane (#84184) **Alternate title: "Fix blind people getting so blind they become deaf when going down a flight of stairs"** So 'bout half a week to a week ago I overheard a friend complaining about blind people not seeing runechat on lower multi-z levels. Asked a bit, apparently they'd reported this about half a year ago, and it's still an issue. So in my never-ending hubris I decided to just go and fix it! Now, admittedly? I really _really_ do not get the rendering system we use. The simple options were right out: we can't allow the fullscreens plane to be offset, as this causes issues with looking up/down, or disallow runechat from being offset, which causes issues with runechat from other levels. After poking our very cool and smart rendering guy several times over the course of the last week, this is what we got to: We simply make the rendering relays for non-offsetting plane masters point to the highest rendering plane that matches the target. We do this by offsetting the rendering relays in place, by adjusting their plane and layer values to match the new offset, with a new `offset_relays_in_place(new_offset)` proc called in `/datum/plane_master_group/proc/transform_lower_turfs(...)`. Importantly, we compare the current layer values to what they should've been, so we don't accidentally override relays with custom-set layers. This fixes our issue (as tested on wawastation): <details> <summary>Images</summary>    </details> Fixes #80376. 🆑 fix: You can see runechat above fullscreen overlays on lower multi-z levels again. Rejoice, blind players. Please report any weird rendering layering issues. /🆑 * illegal tech flag got changed * Automatic changelog for PR #84003 [ci skip] * Automatic changelog for PR #84775 [ci skip] * Automatic changelog for PR #84800 [ci skip] * Automatic changelog for PR #84804 [ci skip] * Automatic changelog for PR #84184 [ci skip] * Makes the smoking pipe sprite not give you a phantom stache. (#84898) The smoking pipe currently gives you a phantom stache. Observe, note the black background and know this character has no facial hair.  I basically adjusted the pixels so it'd look better from different directions. This is the new look - approximately.  Smoking pipe is cool for RP but the sprite's fucked. 🆑 image: the smoking pipe's directional looks have been altered to make it less ugly /🆑 (cherry picked from commit |
||
|
|
474ffe50ef |
[MIRROR] Flattens The Floor Plane (Camera Update Too) (#28632)
* Flattens The Floor Plane (Camera Update Too) (#84350) ## About The Pull Request Ok so like, side map right? It makes things higher up in the world render above things lower down in the world. Most of the time this is what we want, but it is NOT what we want for floors. Floors are allowed to be larger then 32x32, and if they are we want them to render based off JUST their layer. If we don't allow this grass turfs and others get cut off on their bottom edge, which looks WEIRD. In order to make this happen, we can add TOPDOWN_LAYER to every layer on the floor plane and disable sidemap. I've added documentation for this to VISUALS.md, and have also implemented unit test errors to prevent mixing TOPDOWN layers with non topdown planes (or vis versa). This new test adds ~1 second to tests, which is I think a perfectly scrumpulent number. EDIT: I nerd sniped myself and implemented sidemap layering and lighting for cameras (also larger then 32x32 icon support for getflat) The lighting isn't perfect, we don't handle things displaying in the void all that well (I am convinced getflat blending is broken but I have no debugger so I can't fix it properly), but it'll do. This came up cause I had to fix another layering issue in cameras and thought I might as well go all in.  ## Why It's Good For The Game Old:  New:  ## Changelog 🆑 fix: Grass turfs will render properly now. Reworked how floors render, please report any bugs! fix: Cameras now properly capture lighting fix: The layering seen in photos should better match the actual game /🆑 * Flattens The Floor Plane (Camera Update Too) * modular things * Update fluff.dm --------- Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com> Co-authored-by: SpaceLoveSs13 <68121607+SpaceLoveSs13@users.noreply.github.com> |
||
|
|
5e753b6788 |
Offset render relays for non-offsetting planes to match highest matching render plane (#84184)
## About The Pull Request **Alternate title: "Fix blind people getting so blind they become deaf when going down a flight of stairs"** So 'bout half a week to a week ago I overheard a friend complaining about blind people not seeing runechat on lower multi-z levels. Asked a bit, apparently they'd reported this about half a year ago, and it's still an issue. So in my never-ending hubris I decided to just go and fix it! Now, admittedly? I really _really_ do not get the rendering system we use. The simple options were right out: we can't allow the fullscreens plane to be offset, as this causes issues with looking up/down, or disallow runechat from being offset, which causes issues with runechat from other levels. After poking our very cool and smart rendering guy several times over the course of the last week, this is what we got to: ### The technical bits We simply make the rendering relays for non-offsetting plane masters point to the highest rendering plane that matches the target. We do this by offsetting the rendering relays in place, by adjusting their plane and layer values to match the new offset, with a new `offset_relays_in_place(new_offset)` proc called in `/datum/plane_master_group/proc/transform_lower_turfs(...)`. Importantly, we compare the current layer values to what they should've been, so we don't accidentally override relays with custom-set layers. This fixes our issue (as tested on wawastation): <details> <summary>Images</summary>    </details> ## Why It's Good For The Game Fixes #80376. ## Changelog 🆑 fix: You can see runechat above fullscreen overlays on lower multi-z levels again. Rejoice, blind players. Please report any weird rendering layering issues. /🆑 |
||
|
|
d2bc92a88e |
Reverts Strongdmm Visual Patch (#84705)
## About The Pull Request I got a fix merged to the tool (and _spair cut a new release), so there's no reason to shim around it not working anymore. In context of #84659 reverts #84659 |
||
|
|
a132aa92e1 |
Fixes fucked rendering in StrongDMM (#84659)
## About The Pull Request StrongDMM seemingly does not support plane as a layering aspect at ALL. This means we cannot rely on it to segment the floor plane from everything else. Fun bonus, StrongDMM ALSO doesn't know about TOPDOWN_LAYER, so rather then treating it as a rendering instruction it treats it literally. SOOO for the sake of mappers, we have to normalize our layering from `1 + TOPDOWN_LAYER -> 13 + TOPDOWN_LAYER` to `1.8 -> 2` See https://www.desmos.com/calculator/4wbxbctzsm We accomplish this using MAP_SWITCH. Life is pain. Before (Normal)  Before (Removing turfs)  After  |