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

[MANUAL MIRROR] Martian Food Oh God The Errors #262

Closed
wants to merge 383 commits into from

Conversation

CliffracerX
Copy link
Contributor

@CliffracerX CliffracerX commented Aug 14, 2023

Manual mirror of tgstation#75988 because the PRbot REALLY goobered it up this time.

Then I goobered it up further trying to make a mirror. Pain

About this PR

Adds a selection of new foods and drinks based around Mars.
More information on Mars can be found here: https://github.com/tgstation/common_core/blob/master/Interesting%20Planets/Human%20Space/The%20Sol%20System.md
To summarise for the general audience, Mars is a vital colony of the Terran Federation, having been primarily settled (at least originally) by Cybersun Industries to harvest its lucrative supplies of plasma, the second largest in human space behind Lavaland. This has given Mars a diverse culture evolving from the mostly East Asian colonists, and their food reflects this.

Thanks to Melbert for their work on the soup portion of this PR.

The food:
Martian cuisine draws upon the culinary traditions of East Asia, and adds in fusion cuisine from the later colonists. Expect classics such as ramen, curry, noodles and donburi, as well as new takes on the formula like the Croque-Martienne, Peanut Butter Ice Cream Mochi, and the Kitzushi- chilli cheese and rice inside a fried tofu casing. Oh, and lots of pineapple. The Martians love pineapple:
image
Also included are some foods for Ethereals, which may or may not be hinting at something I've got planned...

The drinks:
Four new base drinks make their way to the game, bringing with them a host of new cocktails: enjoy new ventures in bartending with Coconut Rum, Shochu/Soju, Yuyake (our favourite legally-distinct melon liqueur), and Mars' favourite alcoholic beverage, rice beer. Each is available in the dispenser, as well as bottles in the booze-o-mat:
image

The recipes:
To make your (and the wiki editors) lives easier, please find below the recipes for both foods and drinks:
Food: https://hackmd.io/@EOBGames/BkVFU0w9Y
Drinks: https://hackmd.io/@EOBGames/rJ1OhnsJ2

Why It's Good For The Game

Another lot of variety for the chef and bartender, as well as continuing the work started with lizard and moth food in getting Common Core into the game in a tangible and fun way.

Changelog

🆑 EOBGames, MrMelbert
add: Mars celebrates the 250th anniversary of the Martian Concession this year, and this has brought Martian cuisine to new heights of popularity. Find a new selection of Martian foods and drinks available in your crafting menu today!
/🆑

actions-user and others added 30 commits August 3, 2023 00:22
## About The Pull Request


![image](https://github.com/tgstation/tgstation/assets/3625094/03813c32-63eb-4882-a5ff-df4ddc51ce7a)

Fixed air alarm being inside a window and replaced light crate with a
box of lights.

## Why It's Good For The Game

Fixed mistake, box with lights is a better version of crate with lights.

## Changelog

:cl:
fix: removed fire alarm that was inside a window on oldstation
/:cl:
## About The Pull Request

Ressurects this old concept from (tgstation#64530), if we're making pAIs conform
to being personal assistants more often then they should be better at
assisting your person.

You can insert a pAI into a MODsuit simply by using the card on a
MODsuit with an open panel. You can eject it again from the MODsuit
control panel UI (though the maintenance panel still needs to be
unscrewed).

Inserted pAIs can:
- Deploy and undeploy suit parts.
- Turn the suit on and off.
- Monitor any stats on the MODsuit panel.
- Activate any of your suit actions.

Inserted pAIs cannot:
- Move the suit.

This does not remove the ability to place AIs into your suit. AIs can do
all of the above but can _also_ move the suit around while you are
critically injured.
You can't have _both_ an AI and a pAI in your suit at the same time.

Additionally I had to mess around with the backend for pinning actions a
little bit.
AIs who tried to pin MODsuit actions to their screen would pin them to
the UI of the person wearing the suit instead, because it passed through
`grant_item_action`. We _want_ to use that interface for the other stuff
it does, but we need to catch and override who is _actually_ being
granted the action so it goes to the person who pinned it rather than
the person wearing the suit.

## Why It's Good For The Game

Gives more things for your pAI to do, now you can delegate manging some
suit functions to your little buddy.

## Changelog

:cl:
add: pAIs can be inserted into MODsuits and can control suit modules
(but are not capable of moving the suit).
fix: AIs/pAIs in MODsuits can properly pin actions
/:cl:
)

## About The Pull Request
Adjusts the placement of basic and upgraded cybernetic ears in the
research tree and adds two new variants: Whisper-sensitive Cybernetic
Ears, which make it slightly easier to hear whispers from a tile away,
at the cost of higher vulnerability to flashbangs and other loud noises;
and Wall-penetrating Cybernetic Ears, which allow you to 'hear through
walls' so to speak, also at the cost of higher vulnerability to loud
noises.

Basic cybernetic ears are now in basic medical tech node, meaning that
medbay can print them roundstart the same as other basic cybernetics.
The upgraded cybernetic ears are now unlocked with the other tier 2
cybernetics. The two new ear variants are unlocked with the other tier 3
cybernetic organs, and the luminiscent and welding shield eyes have also
been moved there from the cybernetic implants node for consistency
reasons.

The whisper ears allow you to clearly hear whispers from up to seven
tiles away, the same range where you can hear normal speech. The
wall-penetrating ears allow you to hear normal speech within seven tiles
even through walls. Due to technical limitations, runechat popups do not
show up for people you can't see, but the messages will still show up in
chat.
## Why It's Good For The Game
Currently, upgraded cybernetic ears are very underwhelming compared to
other high-tier cybernetic organs. All other high tier organs provide
some sort of benefit; even if the benefit is minor like a built-in
flashlight, a slightly higher tolerance to alcohol and toxins, or higher
tolerance to disgusting food. This change is intended to grant similarly
minor but useful benefits to the cybernetic ears.
## Changelog
:cl:
add: Added whisper-sensitive cybernetic ears, which make it much easier
for the user to hear whispers at the cost of being more vulnerable to
loud noises
add: Added wall-penetrating cybernetic ears, which allow you to hear
speech through walls
balance: Basic cybernetic ears and upgraded cybernetic ears are now
unlocked with the other basic/normal cybernetics
balance: The welding shield and luminiscent cybernetic eyes are now
unlocked with the other upgraded cybernetics
/:cl:
…tion#77111)

## About The Pull Request

Fixes a few issues in the retro theme where text blended in with the
background or was otherwise hard to read
This was originally in the improved messenger PR but that got too big,
so I am splitting features from it off into smaller PRs
## Why It's Good For The Game

Fixes tgstation#76968
## Changelog
:cl: distributivgesetz
qol: Made reading text with the PDA retro theme a bit more accessible.
/:cl:
…ually in an MMI (tgstation#77071)

## About The Pull Request

This PR adds a sanity check to /mob/living/brain in the offchance that
the reference to container is no longer valid. This has only happened
once before as far as I know, but it was catastrophical enough to
warrant a failsafe system. I'm not even sure if this is something that's
player-facing because there's no set of circumstances in the game that
would cause this bug to happen, outside of adminbus.
## Why It's Good For The Game

Fixes tgstation#68497
## Changelog
:cl:
fix: Fixes an extremely rare bug where a /mob/living/brain with a client
would not be moved out of nullspace correctly, causing admin log spam.
/:cl:
## About The Pull Request
It was runtiming on map initialize.
## Changelog
:cl:
fix: deleted trash in the walls from whiteship ruin box.
/:cl:
…n#77303)

## About The Pull Request
These were using the generic "ghost role" job names instead of the
defines that it's supposed to. This should fix it.

Note: This touches code I'm not intimately familiar with, but I did test
this and it works fine.

## Why It's Good For The Game
Fixes tgstation#76922

## Changelog
:cl: Vekter
fix: Fixes formatting for derelict and syndicate drone job names. They
should no longer tell you they're "the Ghost Role" when spawning as
them.
/:cl:
…tion#77299)

## About The Pull Request
I gotta wonder how long it's been like that.

## Why It's Good For The Game
Fixes tgstation#77295

## Changelog
:cl: Vekter
spellcheck: Fixed a typo in progressbar.dm and the file name for the
progress bar sprites.
/:cl:
… to use it (tgstation#77304)

## About The Pull Request

I want to add volume sliders, so I made a slider component.

## Why It's Good For The Game

In my opinion, volume sliders should probably be, uh, sliders.

## Changelog
:cl:
qol: TTS volume preference is not actually a volume slider, instead of a
volume number input.
/: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
What a crusty department. These outfits are...
Something.

![image](https://github.com/tgstation/tgstation/assets/76465278/63fe13cf-bcbf-42c2-a22c-c868ae49a72c)

How old are these now? I'm pretty sure they're unchanged since when I
started playing years ago on other servers.... besides the RD Turtleneck
and Roboticist suit of course. But they still did have some touch-ups to
be made...

Regardless, I think this department deserves a little love!
I've tried to stay true as I could to their current designs; this isn't
a re-**_design_**, just a re-sprite. I used the base jumpsuit design
from Medbay for most of these since it's the most modern suit that fit
with the colored-spots style.

![image](https://github.com/tgstation/tgstation/assets/76465278/ef7ff5b0-f0e3-481a-9ed4-ba830e3ee0c3)

All of them have been touched up, and the RD's "alt" is now a subtype of
the buttondown so it can easily inherit any sprite updates in the
future.

<!-- 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
These deserved some touch-ups and modernization, and while I'm not keen
on entirely reworking them I figured I could at the least give them the
update the Science Team deserves.

(The buttondown has an outdated obj sprite in this image! It's since
been made smaller and more folded)
Also labcoats for comparison

![dreamseeker_Ds8gZLKoGE](https://github.com/tgstation/tgstation/assets/76465278/4da60512-b813-4260-b3fe-5c71b60cec81)

![dreamseeker_C9DpFWWOS7](https://github.com/tgstation/tgstation/assets/76465278/1de55f4c-2eaa-480b-811f-aaa5832eeceb)

![dreamseeker_02d3d7b6aj](https://github.com/tgstation/tgstation/assets/76465278/b1f40d03-c9b8-4f6b-bc54-516b11a7bfb3)

![dreamseeker_DwJGDwbUf1](https://github.com/tgstation/tgstation/assets/76465278/20f97a5e-42ab-4fe0-8eae-4ac6ed24ead4)


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

:cl:
image: resprited the entirety of RnD! Genetics, Robotics, the RD, and
the Science Team themselves will enjoy the fresh new looks but same
great taste! No, wait, great STYLE! Don't eat these, they're covered in
chemicals.
/: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. -->
## About The Pull Request

Fixes tgstation#77350 .
## Why It's Good For The Game

Being able to use the radio is good.
## Changelog
:cl:
fix: radio should no longer be broken for everyone
/:cl:
## About The Pull Request
Fixes tgstation#77301 
## Why It's Good For The Game
Fake wizard hat is a subtype of the regular wizard hat, so different
recipes with the same result for fake/real hats are not needed
## Changelog
:cl:
fix: Spell burger now has only one recipe
/:cl:
… CRASHES) (tgstation#77309)

## About The Pull Request

Servers are crashing on every round restart and I have absolutely no
idea where to start, but I noticed this so I figure I'll throw up a PR
to fix it.

This is the runtime (only found in dd.log, sorry non-admin/maintainer
gamers
https://[tgstation13.org/raw-logs/sybil/data/logs/2023/08/01/round-211577/dd.log](https://tgstation13.org/raw-logs/sybil/data/logs/2023/08/01/round-211577/dd.log)
)

```txt
[00:07:07] Runtime in code/modules/logging/log_holder.dm,166: Attempted to call shutdown_logging twice!
  proc name: shutdown logging (/datum/log_holder/proc/shutdown_logging)
  src: /datum/log_holder (/datum/log_holder)
  call stack:
  /datum/log_holder (/datum/log_holder): shutdown logging()
  shutdown logging()
  world: Reboot(0, 0)
  Ticker (/datum/controller/subsystem/ticker): Reboot("Round ended.", "proper completion", 600)
```

This is the full log:


![image](https://github.com/tgstation/tgstation/assets/34697715/af938235-3076-41d5-98b2-02907dedb6d5)

This is the code:


![image](https://github.com/tgstation/tgstation/assets/34697715/371b11cb-3bc9-4a99-a17c-73968ded308d)

For some reason, even though we invoke `TGSEndProcess`, we still
continue on in this `if()` chain. I don't know why we keep executing DM
code after TGS is supposed to be shut down (which may be why no one has
ever included a `return` here, but let's be safe instead of sorry.

If you really want to investigate why TGS is running DM code after we
end the process, I am amenable to including a stack trace or crash of
this phenomenon instead.
## Why It's Good For The Game

Since we aren't invoking `LOG_CLOSE_ALL` to rust-g twice (which seems to
be really unwanted per the code I read), hopefully thing no crash?
Rust-g had two breaking changes (one with logs, and one with SQL), so
I'm presuming that this might be related to the log one (which is why we
didn't see this sorta thing happen pre-tgstation#77307)... Worst case scenario
less runtimes in the funny runtime log.

I hope this wasn't loadbearing either... Likely requires testmerging
since TGS and I don't get along on my machine.
## Changelog
:cl:
server: Added a preventative measure to prevent calling both
TGSHardRestart and TGSReboot, as well as potentially invoking sensitive
procs that are only meant to be called once.
/:cl:

TL;DR- I do not definitively know why servers are crashing but I noticed
this runtime so I'll put out this open flame while I have the time to do
so.
* Fixes some soup related things

* Autowiki tweak

---------

Co-authored-by: EOBGames <eobgames67@gmail.com>
comfyorange and others added 27 commits August 10, 2023 23:42
## About The Pull Request

I added this override because I saw some runtimes related to trying to
randomize into a challenge and that was not good, but I forgot this proc
is determines if it even shows up in the spellbook UI. I blame Arm

## Why It's Good For The Game

Flavor returns

## Changelog

:cl: Melbert
fix: Fix some missing wizard spellbook flavor
/:cl:
## About The Pull Request

I was working on some basic mob stuff and noticed this is a little
messy, so I made these changes separately.
I removed ``dextrous_hud_type`` because ``hud_type`` exists and can just
be used instead.
I also removed the ``healable`` var, because it was incorrectly used
(with the expectation that basic mobs had it too). Instead it will rely
on the mob being Organic, the check right under it, and I gave mob
biotypes to mobs that were not healable and had no biotype already.
I made a new biotype for slimes because I didn't find any other ones
that fit it (and gave it to slimepeople), but it is not used anywhere
other than to prevent them from healing from sutures, as I didn't want
to just set it to NONE. Thought this may be useful for the future.

## Why It's Good For The Game

``healable`` is checked on simple animals and basic mobs, despite basic
mobs not having this var. I do not want to add this var to basic mobs
either, I think checking for them being organic makes much more sense
and avoids having to make basic mobs less basic.

## Changelog

Nothing player-facing.
…gstation#77445)

## About The Pull Request
This PR changes the recipe to use 10 fluorosulfuric acid instead of 5
sulfuric and 5 fluorosulfuric. This doesn't function as a balance change
as sulfuric acid is actually required to craft fluorosulfuric acid, so
this shouldn't impact the difficulty of crafting it, just make it more
consistent.

This also fixes a minor grammar issue with the name of the crafting
recipe that bugged me. Just me being pedantic.

## Why It's Good For The Game
Fixes tgstation#77338.

There's probably something deeper going on with how crafting handles
materials that turn into other materials in crafts, but this is a simple
fix that makes sense in the short term to make them actually craft as
expected instead of leaving byproducts.
## Changelog
:cl: Vekter
fix: FRAG-12 shells no longer require sulfuric acid, instead needing 10
fluorosulfuric acid. This should prevent them from leaving byproducts if
crafted in a specific way.
/:cl:
…gstation#77455)

## About The Pull Request
Look, appears_alive() checks the health variable rather than the state
of the mob, and that's probably reason why it's only used in two places,
because dead mobs do not necessarily have their health at or below zero.

## Why It's Good For The Game
This will fix tgstation#77332.

## Changelog

:cl:
fix: Fixed an oddity with morgue corpses being shakeable like they're
just unconscious.
/:cl:
…ontrol statement. (tgstation#77459)

## About The Pull Request
Exactly what it reads on the title. I shouldn't be bothered
thoroughfully explaining this with several paragraphs when it's only 3
lines of code affected.

## Why It's Good For The Game
I've sadly the dramatic timing of noticing my own slips minutes after
one of my PRs (tgstation#77420 in this case) get merged.

## Changelog
Barely any impact to the game beside perhaps ironically more generous
probability weights for fish without a bait.
…/color is the same. (tgstation#77469)

## About The Pull Request
This will save us a couple unneeded get_gradient_overlay() calls for
most player human mobs.

## Why It's Good For The Game
Player characters have plenty empty overlays.

## Changelog
N/A
…at. (tgstation#77446)

## About The Pull Request
I was thoroughfully worried this would had been a cursed issue until I
figured it out. Mirror reflections now use render targets to copy the
appearance of the reflected movable, not vis overlays, with a couple
caveats.

## Why It's Good For The Game
This will fix tgstation#77431.

## Changelog

:cl:
fix: Mirror reflections no longer display progress bars or runechat.
/:cl:
## About The Pull Request
the ninja energy net uses a projectile instead of being an instant
click, it also has a cooldown of 5 seconds, up from 1.5 seconds
improves some of the energy net code
the net also deletes itself when the suit turns off

## Why It's Good For The Game
This module is not that fun for either of the sides
For people fighting the ninja, getting instantly stuck with no
counterplay isn't that fun.
For the ninja, the cooldown on a missed use is pretty debilitating and
it's annoying to try and snipe someone.
Being a projectile means people can run away from it, and the ninja can
just shoot it, he doesn't have to try clicking 50 times.

## Changelog
:cl:
balance: Space Ninja's energy net uses a projectile to catch people now.
/:cl:
…ation#77450)

## About The Pull Request
So, when I made the `caseless` and `projectile_drop` elements, I failed
to take into account that bullets have an embedding variable sets, which
led to a few projectiles being embeddable when they shouldn't.

Beyond that, I wanted arrows and harpoons to be reusable yet embeddable,
which lead me to change a couple lines on the `embed` element, since
whoever made the element thought it was a good idea to add the
unnecessary step of attaching a copy of it to the `payload_type` of a
fired projectile before trying to embed it. Like, why? All that's going
to do is cause the resulting item to become embeddable, which may be an
issue for anything other than drop-deletable shrapnels. So yea, arrows
and harpoons, and emagged lollipops will now embed properly.

I've also deleted an unused, problematic subtype of quiver and arrow
casing, and made the quiver storage use

## Why It's Good For The Game
This will fix tgstation#77187. Perhaps buff harpoons and arrows a little but meh.

## Changelog

:cl:
fix: Fixed fired foam darts, gumballs and (harmless) lollipops being
embeddable.
fix: Projectiles that should embed while being reusable will now do so
correctly, actually embedding the reusable casing instead of a shrapnel.
balance: Arrows are generally more likely to embed now, except for
blazing ones, that kind of just blaze.
qol: the quiver storage now uses numerical stacking (like botany and ore
bags, or the RPED, for example).
/:cl:
## About The Pull Request

Makes the large glass airlock operate properly on both tiles instead of
being a single tile airlock with a larger icon.

## Why It's Good For The Game

The right side of the current large glass airlock isn't really an
airlock tile, so any procs that check for the airlock's turf don't work
on the right side of the airlock.

<details>
<summary>Video</summary>

After:


https://github.com/tgstation/tgstation/assets/83487515/5bd571b5-fc9c-4135-942b-b712ae9ec960

Before:


https://github.com/tgstation/tgstation/assets/83487515/e752c085-e663-468b-ac21-2ae5d230b4be

</details>

## Changelog

:cl: LT3
fix: Large airlocks are now a subtype and function on both tiles
/:cl:

---------

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Jacquerel <hnevard@gmail.com>
Changes the sounds on password locked doors to not be hardcoded; now
being controlled by variables.
…tation#77488)

Seems this should be associated with the ukraine holiday not indigenous
## About The Pull Request

Looks like the indigenous people's holiday was cloned for the Ukraine
independence day holiday but the station naming proc wasn't properly
renamed, causing it to trigger today (9th aug) for the Ukraine themed
station prefixes rather than on the 24th.

## Why It's Good For The Game
Correct behaviour good, incorrect behaviour bad.

## Changelog
:cl:iain0
fix: A small clerical error fixed which will cause the Ukrainian station
naming prefix to be properly applied to the Independence Day of Ukraine
holiday on 24th August, rather than overwriting the Indigenous People's
Day station prefixes.
/:cl:
## About The Pull Request
fixes a typo in the improvised fire extinguisher....

where the fuck do you even get one and has anyone even used it in the
history of TGstation? probably not, but who cares typo bad

## Why It's Good For The Game
typo bad
## Changelog
:cl:

spellcheck: improvised fire extinguishers aren't full of typoes now

/:cl:
@CliffracerX CliffracerX added Do Not Merge Uh oh. FUCK Only two things are infinite, the universe and human stupidity, and I'm not sure about the former. labels Aug 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Do Not Merge Uh oh. FUCK Only two things are infinite, the universe and human stupidity, and I'm not sure about the former.
Projects
None yet
Development

Successfully merging this pull request may close these issues.