Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rebases to TG #11

Closed
wants to merge 10,000 commits into from
Closed

Rebases to TG #11

wants to merge 10,000 commits into from

Conversation

1393F
Copy link
Contributor

@1393F 1393F commented Feb 17, 2024

About The Pull Request

rebases to TG

Why It's Good For The Game

less broken things

Changelog

🆑
add: TGstation
/:cl:

MrMelbert and others added 30 commits February 8, 2024 08:43
## About The Pull Request

`/obj/item/circuit_component/object_overlay` handled the wrong
references when implementing `Destroy`.

## Changelog

:cl: Melbert
fix: The object overlay circuit component will no longer take things
with it.
/:cl:
## About The Pull Request

Apparently, ash mark is supposed to replenish mansus grasp cooldown by
75% when triggered, but this is neither reflected by the research
description, nor functional ingame. This edit makes it work, and adds
the effect to the description.

Additionally, that same block of code was present in moon mark research
also. I removed that because I assume it is intended to be an ash-only
feature, and moon only had it because of copy-pasting.

And since we're at it, I also reworded the mark description to be more
clear about the mark only transferring to a single heathen at a time.
## Why It's Good For The Game

I don't think we should have code which does not work. The options are
to either remove it, or make it work, and the latter is more fun.
## Changelog
:cl:
fix: ash mark now properly lowers the cooldown of mansus grasp when
triggered
/:cl:
## About The Pull Request

Currently on live, if you throw a bola at a xenomorph or use a beartrap
on them, the legcuff will successfully attach itself to the xenomorph
but nothing will happen. It will not be present visually nor apply
slowdown to the xenomorph at all, and it also gives the xenomorph no
indication that it is attached to them or option to remove it. This PR
fixes that problem by moving some human-specific code downwards,
allowing xenomorphs to visually have legcuffs applied to them, be slowed
down by them and to take them off by themselves.

Note that as with all cuff-related items, xenomorphs will break the item
immediately upon attempting to resist it at all. Therefore, this PR
doesn't really do anything balance-related, although maybe you can buy
yourself a half-second while the xenomorph you just bola'd realizes they
need to take it off before chasing you down again.

Another thing to note is that queens and praetorians don't look right
with these overlays applied (they float to the left of their sprite),
but that's a bigger issue with a lot of the overlays in general (fire
being a big one), to be fixed in another PR.

## Why It's Good For The Game

This has bothered me for a while now, so its about time I do something
about it. Even if using bolas or beartraps on xenomorphs is practically
useless, if we're gonna let players do it then we're going to let them
do it right.

## Changelog
:cl:
fix: Xenomorphs now have legcuffs applied to them properly.
/:cl:
## About The Pull Request

Currently on live, when an alien hunter goes for a pounce, once the
pounce is completed the hunter will rise quite a distance slowly from
the floor as setting body_position_pixel_y_offset now is done with
animation as opposed to being instant. This looked extremely stupid, so
I went and fixed it. Initially, I was going to add some form of trait to
cancel out the smoothing effect from a shifting y offset, until I looked
at the sprite for alien pouncing and realized it was 96x96 for no
reason. For reference, 96x96 is the size of Bubblegum's sprites.

So, I just made the sprites 48x32, got rid of the unused sprites
(sentinel and drone both had pounce sprites but neither ever had that
ability iirc) and adjusted some of the pounce ability's internal offset
stuff to compensate and it looks perfectly fine now. Somehow made the
image file larger by 243 bytes according to Github but I guess it is
what it is.

## Why It's Good For The Game

The alien hunter ascending from 2 tiles below where it actually was
whenever it pounced was incredibly jarring. This fixes the problem.

## Changelog
:cl:
fix: Alien Hunter's pounce ability no longer has any weird offset issues
once the pounce is completed.
/:cl:
<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may
not be viewable. -->
<!-- You can view Contributing.MD for a detailed description of the pull
request process. -->

## About The Pull Request

We need the last of the signs added to the game so everyone can see and
use them.
Adds the Red Mons, The Rune, The Wizard and MOTHS-MOTHS-MOTHS bar signs
that were created during the bar sign contest.

<!-- Describe The Pull Request. Please be sure every change is
documented or this can delay review and even discourage maintainers from
merging your PR! -->

## Why It's Good For The Game

More options for the bar name is a good thing for player choice and
diverse player stories.
Giving our bartenders more options helps player agency.

<!-- Argue for the merits of your changes and how they benefit the game,
especially if they are controversial and/or far reaching. If you can't
actually explain WHY what you are doing will improve the game, then it
probably isn't good for the game in the first place. -->

## Changelog

<!-- 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. -->


![the-red-mons](https://github.com/tgstation/tgstation/assets/38709973/c614f3d1-a7e0-4de2-8e17-95481aeb1313)


![the-rune](https://github.com/tgstation/tgstation/assets/38709973/2628475f-f30c-4f4d-805c-257a8eb3d22f)


![the-wizard](https://github.com/tgstation/tgstation/assets/38709973/c000ae05-5762-4c41-b1d8-3d832bea46b0)


![moths-moths-moths](https://github.com/tgstation/tgstation/assets/38709973/6f74df0b-3344-4c30-b233-7191230145fb)


:cl:
add: Adds in the Red Mons, The Wizard, The Rune and MOTHS-MOTHS-MOTHS
bar signs from the bar sign contest.
Congratulations to the winners!
image: Adds in the Red Mons, The Wizard, The Rune and MOTHS-MOTHS-MOTHS
bar signs from the bar sign contest.
/:cl:

<!-- Both :cl:'s are required for the changelog to work! You can put
your name to the right of the first :cl: 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. -->

---------

Co-authored-by: Ghom <[email protected]>
🆑 optimumtact, whomst didn't write this CL entry.
fix: Fixed the colorful lights of the ethereal disco ball.
/🆑
## About The Pull Request

One day we will have opendream lint to catch this. (WYCI I guess)
## About The Pull Request
This stuff has been cramping 100% heavy roleplay style for too long.

Somehow, the way maptext is formatted* seems to break tag ends found
around a line break. This usually happens when a space with width is
found by the end of the line, and I don't recall ever encountering the
issue otherwise.
Apparently, I've also found out that concatenating two spaces,
regardless of width, seems to fix the issue just fine, and that brings
in the solution to this whole pedantic problem: a <b>zero-width
space</b> at the end of the closing tag.

*That's handled behind the curtains by the engine, so I can only throw
wild guesses to why it happens.

Oh, by the by, I've also changed the tip about text modifiers I've made
over a year ago. It was too confusing to read.
## About The Pull Request
Fixes some things(check mapdiff2 for them)
mainly the double terminal that probably was giving the ruin 0 power
consumption i think
removes the double invisible tiny fans and replaces them with double
vents
fixes the areas a bit
removes some modifiers on the APC 
## Why It's Good For The Game
Fixes are good for the game
## Changelog
:cl:
fix: Fixed some things in Ice Box's gas station ruin
add: Adds some things in Ice Box's gas station ruin
/:cl:
…d windoors (#81272)

## About The Pull Request
Title.

Another big updatepaths PR thats been on my radar for awhile.

The dir banned var edit is self explanatory. However, I banned
icon_state from them as well as there are a big handful of windoors that
are either regular, and look like security doors, OR are their mirrored
counter part (a south right door var edited to look like a south left
door).

## Why It's Good For The Game

Avoid mapping sins like this


![image](https://github.com/tgstation/tgstation/assets/70232195/e672f64f-5bba-46f2-9043-c702497d08b2)

## Changelog

N/A to players
## About The Pull Request
What it says on the tin
## Why It's Good For The Game

https://youtu.be/cvfLHTyDv9o?t=4
## Changelog
:cl: Wallem
add: Adds a new suicide_act() to the smite spell
/:cl:
## About The Pull Request
1. **Qol Stuff**
- Screentips & examines for screwdriver, crowbar acts, multiool &
wirecutter Also for Alt click
- Techfabs can now also use the Mouse drag functionality to set drop
target for items
- Lathe printing animation now plays on loop instead of just flicking
once till printing is finished for more visual feedback

2. **Code Improvements**
- Merged `start_making()` with `do_make_item()`. That proc was like only
3 lines long and used only in 1 place so let's just move that code to
`ui_act()`
- Merged `user_print_item_id()` with `ui_act()`. Again was used only in
1 place so let's just move that code in to save some proc overhead
- Sets `processing_flags` for autolathe to `NONE` cause we don't use
`process()`
    - Autodocs vars such as `hacked` , `shocked` etc & procs
- `maxmult` is now computed client side saving backend bandwidth,
`construction_time` is removed from lathes which did not use it
- Removed all usages of lathe taxes and their related vars, removed
engineering lathe no tax from ice moon, replaced with normal engineering
lathe

3. **Fixes**
- Lathe sheet insertion animations are now linked & work again for all
material types inserted via remote silo/local storage,
silver/titanium/plastic all play the same animation(that is
`protolathe_shiny` overlay). Other materials have their own respective
overlays
- Fixes #81243. Calling `update_static_data_for_all_viewers()` is too
expensive for the UI. We should instead use `SStgui.update_uis(src)`
which will report the `busy` status to the UI more immediatly
- Fixes #81236. Some problems with the params passed to the timer
callback. It should now print the correct number of requested items
- Fixes #81192. `design.materials` would runtime for custom material
items as they were list of texts not materials. We have to pass our
manually parsed list of materials for an specific item to ensure they
are set & used correctly. Same fixes apply for techfabs as well


## Changelog
:cl:
qol: adds screentips & examines for screwdriver & crowbar acts & alt
click.
qol: techfabs can now use the mouse drop functionality to set drop
target.
qol: lathe printing animation plays on loop while printing rather than
flicking once for more visual feedback
fix: lathe sheet insertion animations are now linked & work again for
all material types inserted via remote silo/local storage
fix: printing custom materials items from autolathe works again.
fix: printing multiple items from lathes will actually print that
correct quantity of items requested.
fix: printing items the 2nd time around from lathes won't cause the UI
to reload each time.
code: autodoc for some vars & procs, merges procs.
refactor: Optimized code for autolathe & techfabs in general. Report
bugs on github
/:cl:

---------

Co-authored-by: MrMelbert <[email protected]>
Co-authored-by: Ghom <[email protected]>
… open, fixes some surgeries missing sounds (#81307)

## About The Pull Request

Fixes #79318 

- See the issue for more information. I fixed the runtimes as expected,
and then removed `SURGERY_REQUIRE_LIMB` from some surgeries which don't
actually require a limb, such as implant removal, dissection, and living
revival. I could've easily missed some, and as a result some surgeries
are lost to the void and unselectable, but from what I could tell in
testing it seems... fine.

- Adds `SHOULD_CALL_PARENT` to surgery `can_start`. Cleans up some
surgery `can_start` overrides.

- Adds missing sounds to puncture repair surgery. 

## Changelog

:cl: Melbert
fix: Fixed Puncture Repair surgery not having surgical sounds
fix: Fixed Surgery Initiator potentially showing invalid surgeries 
/:cl:
Updates tgs/precompile.sh hook to match what is deployed on campbell.

rust-lang/cargo#12654 has set a policy of setting this to be the latest
version-2, which kills any kind of signal this could have ever had.

cargo's subcrates like `home` are used in almost any complex rust
package, so this basically sets the tone for all packages and all crates
published after October 8th.

A min compiler version should be based on an actual need to use a
specific compiler version because of specific features that version has
or bugs that version doesn't have. This is signal. Setting to some
evergreen value as a matter of course is not signal, its noise.

I will not subject myself nor our downstreams to such nonsense.
## About The Pull Request

Currently the only way to get a barcode scanner is by spawning as a
Curator, this is lame and prevents people to job change into a
librarian, so now it can be printed like basically all other service
job's tools.

Part of computer tech

![image](https://github.com/tgstation/tgstation/assets/53777086/26254e14-b957-41e4-9349-bd4bf848c18c)

## Why It's Good For The Game

You no longer have to spawn as a Curator to be able to work in the
Library, and Curators can now replace their otherwise completely
irreplaceable equipment.

## Changelog

:cl:
qol: The barcode scanner is now part of computer tech and can be printed
at the service techfab.
/:cl:

---------

Co-authored-by: Ghom <[email protected]>
## About The Pull Request

I recently played a game where I rotated my skeleton model while
rotating my own character at the same time and it being in sync gave me
the realization on how cool it would be if the Coroner was able to
simply control the skeleton body.

I find skeleton displays very funny and I want to see more funny things
happen with them, so I thought this would be a good place to start, with
the benefits that it also works on mannequins and statues too so they
aren't left out.

Basically, while it is unanchored, if you have a statue/mannequin
grabbed, it will change its direction as you do, and speak the same
words you do. Your own messages can only be heard if the person is
directly next to you, revealing that it was you talking through it all
along.

I was originally gonna add this to the simple rotation component but
moved off when I decided to add talking through it, I left in the code
improvements I made to the component though since it is one of the
oldest components and hasn't been touched in a while.

Video demonstration (before I added the person also talking, just ignore
that missing)

https://github.com/tgstation/tgstation/assets/53777086/27242fc3-9649-418d-95cb-b31619319e97

While fixing the Toilet bong's rotation stuff I noticed a lot of it
wasn't up to proper code standards so I went over it and fixed issues I
had with it. It now doesn't give text saying you found something nasty
to species that still likes mice (like flypeople), and fixed its update
appearance to match the codebase standard set by the introduction of
``update_appearance`` many years ago.

## Why It's Good For The Game

It's a funny small idea I had and got inspired to add, it's a niche
mechanic that I think fits the aesthetic I am going for with Coroner and
also give a funny interaction with the human-like inanimate objects.

## Changelog

:cl:
fix: Species that can eat mice don't get disgusted from seeing one in
the toilet bong.
add: Grabbing an unwrenched statue/mannequin/skeleton model will now
move its direction as you move yours, and you can talk through it.
/:cl:
mogeoko and others added 27 commits February 16, 2024 20:03
## About The Pull Request

Finally made things works way they had to. No more pain in changing
layers/colors for thermomachine and multiz side connections with huge
list of deleted objects.

Thermomachines now actually reconnect if they're anchored. Additionally
their pipe icon now changes it's color.
Multideck connectors are now trinary devices. nodes[1] - front node on
same z level; nodes[2] - top node on upper z level; nodes[3] - bottom
node on lower z level;

## Why It's Good For The Game

Makes things much more easier for atmos techs in thermomachines.
Clears huge list of useless deleted objects in multideck connector's
nodes list.

## Changelog
:cl: mogeoko
fix: Thermomachines now reconnect to pipes on multitool's act.
fix: Multi-deck connectors won't connect pipes not located in
front/top/bottom of it.
/:cl:
## About The Pull Request

You can now carry combat or survival knife in your mouth, to look like a
pirate or a comando or a moron

![image](https://github.com/tgstation/tgstation/assets/104280915/54ce4243-1e65-489d-99f5-7db8e62f6cee)
It has 20% chance of cutting you when you pull them out, and clumsy
people have 20% chance to accidently swallow the knife and choke when
putting it in a mask slot

## Why It's Good For The Game
Upgrades the coolness of the game


## Changelog
:cl:
add: Your mouth now fits combat or survival knives(it's totally safe)
/:cl:

---------

Co-authored-by: Ghom <[email protected]>
## About The Pull Request
assembly bombs are bulky
(the like ones you make with a tank and an igniter and some other thing)

## Why It's Good For The Game

these things can (and usually do) gib people, are REALLY easy to
massproduce and you can also fit several in a bag
while still easier to use to gib people than TTVs

at best i think making them bulky should prevent some dude from carrying
like 8 bombs in his backpack and whipping them out and throwing without
any warning because they would have to carry it (or invest in BoH but
thats sci anyway so)

## Changelog
:cl:
balance: assemblybombs are bulky
/:cl:

---------

Co-authored-by: tattle <[email protected]>
## About The Pull Request
Just makes salicylic acid and oxandrolone scale with purity (so they're
consistent with libital & aiuri scaling)
## Why It's Good For The Game
Now mass producing good salicylic acid / oxandrolone with a chem factory
takes some effort.

## Changelog

:cl:
balance: Oxandrolone now scales with purity. Its default purity is 100%
balance: Salicylic acid now scales with purity. Its default purity is
100%
/:cl:
## About The Pull Request

Makes it so that regenerative nanites no longer harm slimepeople and in
fact heal them. This was originally PRed downstream by myself in
[Bubberstation](Bubberstation/Bubberstation#1143)
and i've thought to PR it upstream as well to avoid conflicts in the
future, i do think it's a ok change for upstream as well, whilst Nukies
cannot be slimepeople on TG similar to Bubber, they can (in theory)
induct a traitor slimeperson into the team who wouldn't be able to get
healed from the nukie borg. The traitor could also emag the nukie borg
to flip them from working for the nukies. Odds of either of those
happening? Very implausible. However, i still i don't see how it would
negatively affect nukies either.
## Why It's Good For The Game

It's kind of dumb that these magical syndicate nanites that are meant to
be able to heal virtually any wound flounder in the face of slimepeople.
## Changelog
:cl:
fix: Restorative Nanites now heal Slimepeople just as well as they do
other people.
/:cl:
## About The Pull Request
### work started 12/12/2023


you may alt-click action buttons to bind them to a key
these are subject to click cooldown and if an action successfully
triggers click cooldown is triggered so you cant instantly do multiple
alt-click again to unbind
## Why It's Good For The Game

moving your mouse to the top left corner to do combat is not good
gameplay

## Changelog
:cl:
qol: you may altclick action buttons to bind them to a key
/:cl:

---------

Co-authored-by: MrMelbert <[email protected]>
## About The Pull Request

I was failing to clear the input removal if we had no movement So you'd
step, stop moving, and retain it

Then whenever we rotate, we continue to hold onto that removal forever.
Weird.

Handles... part of? #81501

## Changelog
:cl:
fix:Blocking movement works properly again
/:cl:
…496)

## About The Pull Request
Prior to this PR, if an individual spawner allowed more than one uses,
it would still display as one use in the menu. Not only that, but
infinite spawners would also show as having just one use. Both of these
behaviors have been fixed, resulting in a much more accurate depiction
of how many uses are left on each spawner.


![image](https://github.com/tgstation/tgstation/assets/58045821/77508cdd-66bf-4d85-9dd7-c25f8ccd41b6)
(The first spawner isn't normally infinite, I just used VV to edit its
`infinite_uses` to `1` for the sake of proving that the display worked).


## Why It's Good For The Game
Being able to know that a spawner is infinite is a good thing for
players, just like being able to know how many uses are left if an
individual spawner can be used by more than one player.

## Changelog

:cl: GoldenAlpharex
fix: The Spawners menu now accurately displays the amount of uses left
in each spawner option, taking into account individual spawners that
either allow more than one use, or an infinite amount of uses.
/:cl:
…machines. (#81467)

## About The Pull Request
This is something I've discovered while working on the previous PR.

## Why It's Good For The Game
Prevents future issues with non-constructable vending machines that use
categories, since we don't have any such thing rn.

## Changelog
N/A
A maintainer on the discord told me it looked like I could fix it
myself, so I gave it a shot.
## About The Pull Request

Fixes #81503.

All I did was swap out the name "bibimbap" with "bulgogi_noodles" in the
"result" field in the file
"code/modules/food_and_drinks/recipes/tablecraft/recipes_martian.dm".
Now it should call the right food, since the icon and stats and stuff
are all stored under that name!
The stats are in code/game/objects/items/food/martian.dm
The icon is in icons/obj/food/martian.dm
## Why It's Good For The Game

Well, I like to cook stuff, and it peeved me that when I tried to make
bulgogi, it made bibimbap instead. I was excited for the little pixely
food with the little pixely stats that I wanted, and got one slightly
different! Imagine my horror! My fix will solve this problem.
## Changelog
:cl:
fix: Crafting Bulgogi no longer makes Bibimbap. It instead makes
Bulgogi.
/:cl:
## About The Pull Request

1. paper's examine was defined twice, which made spacemandmm throw a
minor notice about
2. paper's altclick had a second arg for some item, which would never be
the case because that's not a real arg
3. there was a check for src's type, now just removed to the type's
altclick
4. some papercode was sitting in paper plane code file, now moved

the rest is misc changes such as replacing camelCase and using SECONDS.

## Why It's Good For The Game

None of this is player-facing but it's updating some rather old code to
more modern code standards.

## Changelog

Nothing player-facing.

---------

Co-authored-by: Ghom <[email protected]>
## About The Pull Request

This is mapped in a few places and I thought it would be better to have
a subtype of rack to use rather than varediting the icon and state.

## Why It's Good For The Game

The less varedited icons the better imo, it's way easier to ensure icons
aren't fucked up this way and easier to fix too.

## Changelog

No player-facing changes.
## About The Pull Request
Basically, this means players holding cardboard cutouts will now assume
their appearance, just like for potted plants. Good for pranking.

I've had to tweak the tactical component and the waddling element a bit
to get them to work as intended while dealing with the multiple sources
of the waddling element.

## Why It's Good For The Game
![](https://media1.tenor.com/m/X1GimXmuByYAAAAd/tom-cruise-doorbell.gif)

## Changelog

:cl:
add: Players holding cardboard cutouts will now assume their appearance,
just like for potted plants.
/:cl:
Copy link
Contributor

This PR has been inactive for long enough to be automatically marked as stale. This means it is at risk of being auto closed in ~ 7 days, please address any outstanding review items and ensure your PR is finished, if these are all true and you are auto-staled anyway, you need to actively ask maintainers if your PR will be merged. Once you have done any of the previous actions then you should request a maintainer remove the stale label on your PR, to reset the stale timer. If you feel no maintainer will respond in that time, you may wish to close this PR youself, while you seek maintainer comment, as you will then be able to reopen the PR yourself

@github-actions github-actions bot added the Stale label Feb 25, 2024
@github-actions github-actions bot closed this Mar 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.