Commit Graph

212 Commits

Author SHA1 Message Date
tralezab
0bb22f59b5 Baguette swords make proper sounds and are toggled from left clicking the baguette, not right click (#69769)
Baguette swords make proper sounds and are toggled from left clicking the baguette, not right click
2022-09-29 10:32:55 -07:00
John Willard
243231eb48 Properly checks flags with & instead of == (#70130)
* Makes flags properly check themselves

Byond ref: https://www.byond.com/docs/ref/#/operator/&
Basically, flags should use & instead of ==
We can have more than 1 slot on any item, so it's preferred that we do this instead. Even if it doesn't immediately fix any problems, it's something that should be the standard anyways to prevent it from ever being a problem.

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2022-09-27 21:51:45 +00:00
LemonInTheDark
23bfdec8f4 Multiz Rework: Human Suffering Edition (Contains PLANE CUBE) (#69115)
About The Pull Request

I've reworked multiz. This was done because our current implementation of multiz flattens planes down into just the openspace plane. This breaks any effects we attach to plane masters (including lighting), but it also totally kills the SIDE_MAP map format, which we NEED for wallening (A major 3/4ths resprite of all wall and wall adjacent things, making them more then one tile high. Without sidemap we would be unable to display things both in from of and behind objects on map. Stupid.)

This required MASSIVE changes. Both to all uses of the plane var for reasons I'll discuss later, and to a ton of different systems that interact with rendering.

I'll do my best to keep this compact, but there's only so much I can do. Sorry brother.
Core idea

OK: first thing.
vis_contents as it works now squishes the planes of everything inside it down into the plane of the vis_loc.
This is bad. But how to do better?

It's trivially easy to make copies of our existing plane masters but offset, and relay them to the bottom of the plane above. Not a problem. The issue is how to get the actual atoms on the map to "land" on them properly.

We could use FLOAT_PLANE to offset planes based off how they're being seen, in theory this would allow us to create lens for how objects are viewed.
But that's not a stable thing to do, because properly "landing" a plane on a desired plane master would require taking into account every bit of how it's being seen, would inherently break this effect.

Ok so we need to manually edit planes based off "z layer" (IE: what layer of a z stack are you on).

That's the key conceit of this pr. Implementing the plane cube, and ensuring planes are always offset properly.
Everything else is just gravy.
About the Plane Cube

Each plane master (except ones that opt out) is copied down by some constant value equal to the max absolute change between the first and the last plane.
We do this based off the max z stack size detected by SSmapping. This is also where updates come from, and where all our updating logic will live.

As mentioned, plane masters can choose to opt out of being mirrored down. In this case, anything that interacts with them assuming that they'll be offset will instead just get back the valid plane value. This works for render targets too, since I had to work them into the system as well.

Plane masters can also be temporarily hidden from the client's screen. This is done as an attempt at optimization, and applies to anything used in niche cases, or planes only used if there's a z layer below you.
About Plane Master Groups

BYOND supports having different "maps" on screen at once (IE: groups of items/turfs/etc)
Plane masters cannot cover 2 maps at once, since their location is determined by their screen_loc.
So we need to maintain a mirror of each plane for every map we have open.

This was quite messy, so I've refactored it (and maps too) to be a bit more modular.

Rather then storing a list of plane masters, we store a list of plane master group datums.
Each datum is in charge of the plane masters for its particular map, both creating them, and managing them.

Like I mentioned, I also refactored map views. Adding a new mapview is now as simple as newing a /atom/movable/screen/map_view, calling generate_view with the appropriate map id, setting things you want to display in its vis_contents, and then calling display_to on it, passing in the mob to show ourselves to.

Much better then the hardcoded pattern we used to use. So much duplicated code man.

Oh and plane master controllers, that system we have that allows for applying filters to sets of plane masters? I've made it use lookups on plane master groups now, rather then hanging references to all impacted planes. This makes logic easier, and prevents the need to manage references and update the controllers.

image

In addition, I've added a debug ui for plane masters.
It allows you to view all of your own plane masters and short descriptions of what they do, alongside tools for editing them and their relays.

It ALSO supports editing someone elses plane masters, AND it supports (in a very fragile and incomplete manner) viewing literally through someone else's eyes, including their plane masters. This is very useful, because it means you can debug "hey my X is yorked" issues yourself, on live.

In order to accomplish this I have needed to add setters for an ungodly amount of visual impacting vars. Sight flags, eye, see_invis, see_in_dark, etc.

It also comes with an info dump about the ui, and plane masters/relays in general.

Sort of on that note. I've documented everything I know that's niche/useful about our visual effects and rendering system. My hope is this will serve to bring people up to speed on what can be done more quickly, alongside making my sin here less horrible.
See https://github.com/LemonInTheDark/tgstation/blob/multiz-hell/.github/guides/VISUALS.md.
"Landing" planes

Ok so I've explained the backend, but how do we actually land planes properly?
Most of the time this is really simple. When a plane var is set, we need to provide some spokesperson for the appearance's z level. We can use this to derive their z layer, and thus what offset to use.

This is just a lot of gruntwork, but it's occasionally more complex.
Sometimes we need to cache a list of z layer -> effect, and then use that.
Also a LOT of updating on z move. So much z move shit.

Oh. and in order to make byond darkness work properly, I needed to add SEE_BLACKNESS to all sight flags.
This draws darkness to plane 0, which means I'm able to relay it around and draw it on different z layers as is possible. fun darkness ripple effects incoming someday

I also need to update mob overlays on move.
I do this by realiizing their appearances, mutating their plane, and then readding the overlay in the correct order.

The cost of this is currently 3N. I'm convinced this could be improved, but I've not got to it yet.
It can also occasionally cause overlays to corrupt. This is fixed by laying a protective ward of overlays.Copy in the sand, but that spell makes the compiler confused, so I'll have to bully lummy about fixing it at some point.
Behavior changes

We've had to give up on the already broken gateway "see through" effect. Won't work without managing gateway plane masters or something stupid. Not worth it.
So instead we display the other side as a ui element. It's worse, but not that bad.

Because vis_contents no longer flattens planes (most of the time), some uses of it now have interesting behavior.
The main thing that comes to mind is alert popups that display mobs. They can impact the lighting plane.
I don't really care, but it should be fixable, I think, given elbow grease.

Ah and I've cleaned up layers and plane defines to make them a bit easier to read/reason about, at least I think.
Why It's Good For The Game
<visual candy>

Fixes #65800
Fixes #68461
Changelog

cl
refactor: Refactored... well a lot really. Map views, anything to do with planes, multiz, a shit ton of rendering stuff. Basically if you see anything off visually report it
admin: VV a mob, and hit View/Edit Planes in the dropdown to steal their view, and modify it as you like. You can do the same to yourself using the Edit/Debug Planes verb
/cl
2022-09-27 20:11:04 +13:00
SomethingFish
632dc6549f Adds springrolls (#70119)
The chefs have come up with a new use for rice and made these delicious vegetarian spring rolls to add to their menu.
2022-09-26 11:20:49 -07:00
MrMelbert
6baebf47a1 Completely refactors hallucinations, and also adds a few (#69706)
* Refactors hallucinations slightly, organizes them

* Refactors hallucination into a status effect

* Further hallucination proper refactoring

* Refactors battle hallucinations

* Refactors "fake item other" hallucination

* Gets it a bit closer to working state

* Refactors screwydoll and fake alerts

* Refactors fake inhand items

* Refactors a few more.
- Fake death
- Fake messages
- Fake sounds
- Projectiles

* Refactoring delusions, hallucination effects

* Furthering the hallucination status effect
- removes copypaste of hallucination pulses

* Almost finalizes the changeover to status effect

* Last staus effect stuff

* Delusion business

* Airlocks, fire, and more delusion stuff

* Finishes screwyhud. It compiles now!

* Swaps screwyhud over to a grouped status effect

* Removes hal_screwyhud

* Comment

* Bugfixing

* image cleaning

* Get rid of this it came back

* What if I finished this branch?

* Oops

* Messing with the randomness

* Mass hallucination tweaks

* +

* Some more mass tweaks

* Review

* Updates

* Unit tests hallucination icons

* More tweaks

* Move folder

* Another re-name

* Minor tweaks

* Anomaly unity

* Mass hallucination buffs

* t

* Sig

* Merge

* Lints

* Unit test already coming in clutch

* Another failure

* Use named args for cause_hallucination via some define trickery

* Some cleanup

* This is better

* adds some hallucinations

* Oops

* More sounds

* Tweaks

* Some additional documentation

* Flash

* Fixes mass hallucination

* Json changes

* Updates documentation

* Json conflicts

* Makes it work

* Missed that one too

* Helpers

* More signalization (WIP)

* Fixes bump

* Missed a helper use

* Dumb
2022-09-21 01:30:04 -04:00
dopamiin0
e6cd5ce676 The Tastening (makes multiple adjustments to taste text, not very exciting) (#69900) 2022-09-15 22:33:24 -04:00
san7890
b6900a6d27 Fixes Bread Smite Causing Some Fucked Up Shit (#69853)
* Fixes Bread Smite Causing Some Fucked Up Shit

Hey there,

So basically, when you had the bread smite done on you, you were _just_ added to the contents of the bread. Nothing more. That means that you could pick it up. You couldn't add it to your bag (it would always return back into your hand(?)), but it would create some weird oddities that was just cursed in general. Let's make it so you can't hold the container that you are contained within by giving you HANDS_BLOCKED.

* actually we don't need the named arg

lets get rid of the cursed thing entirely

* removes sanity check

* we do a bit of component trolling

THIS TOOK ME TWO HOURS FUCK YOU

* removes cruft comment

* cleans up code a teeny bit, upgrades to incapacitated

* wait that named arg is still there wtf

* Review Time

Co-authored-by: Seth Scherer <supernovaa41@gmx.com>

* wrong operator and wrong order of operations

* null out the container

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>

* checks to see if container is qdeld

* weakref time

Co-authored-by: Seth Scherer <supernovaa41@gmx.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2022-09-15 08:12:31 -04:00
tralezab
e09071858c Mimes can now hold a baguette like a sword by right clicking it (#69592)
* hon hon on your guard hon hon

* Update bread.dm

* yaey

* didn't annotate lints....
2022-09-07 17:24:03 -04:00
Yaroslav Nurkov
670aa7c4a0 Cucumber Fever (#69639)
About The Pull Request

Not without the help of my friend spriter, I added cucumbers, their seeds, the cultivation itself, so that they could be pickled and washed with a brine jar. I also added a Danish hot dog because it required cucumbers (perhaps that was the end goal), changed a couple of recipes to include cucumbers or pickles. Cucumbers have been added to both cargo orders and bounty cubes, as well as for the food order console

I think the Cucumber Update deserves its plush toy.

gg18b4b2cab0
Why It's Good For The Game

I think more food and drink... would add quite a nice role playing experience, and additional gameplay for hydroponics.
Changelog

cl Vishenka0704 and Ying-The-Pando
add: Cucumbers and pickles
add: Danish hot dog
balance: add cucumbers in dishes where they need
qol: add to bounty cubes, orders - new vegetables
/cl
2022-09-04 09:10:48 +12:00
ShizCalev
431b0d72e2 Headless humans can no longer recieve facial creampies. (#69547)
your headless ass can no longer get creampied.
2022-09-02 10:05:18 +12:00
tattle
2a39b94c65 More food icon fixes (#69523)
More icon_state fixes that I caused, and accidentally duplicated icons.
Also documents the debug hotdog.
2022-09-01 14:02:25 -05:00
tattle
fd9f50c552 [IDB IGNORE] Renames the inhand/misc folder to inhand/items (#69573)
Also adds balloons to inhand/items
2022-09-01 03:29:10 +02:00
tattle
16c0d47c99 Fixes chocolate and scotch eggs showing error sprites (#69463)
Fixes chocolate and scotch eggs showing errors

Co-authored-by: tattle <article.disaster@gmail.com>
2022-08-27 22:27:31 -04:00
tattle
73613b84cf Splits pizzaspaghetti.dmi into pizza.dmi and spaghetti.dmi (#69439)
Begone pizzaspaghetti

Co-authored-by: tattle <article.disaster@gmail.com>
2022-08-25 19:53:31 -04:00
MidoriWroth
7354466b42 Food Expansion 4! The great salad update and more (#69355)
About The Pull Request

This is my fourth food expansion PR, adding and changing quite a few things.
This PR will:

    Add 7 different types of salads
    Add a new ingredient supply beacon box called 'Salads', which includes ingredients used for the salad recipes
    Give cherry jelly its own container, and allow jelly to be ordered from the produce console
    Make cherry jelly actually nourish you when consumed
    Add paçoca, a Brazilian peanut candy requested by @GuillaumePrata
    Add mashed potatoes
    Add shepherds pie
    Add Cullen skink
2022-08-24 21:16:12 -07:00
tattle
d91390a447 [IDB IGNORE] The Great Sweep: Moving dmis into subfolders (part 1) (#69416)
Moves singulo and supermatter dmis into obj/engine, renamed from obj/tesla_engine
Moves Halloween, Christmas, and misc holiday items to obj/holiday
Moves lollipops to obj/food
Moves crates, closets, and storage to obj/storage
Moves assemblies to obj/assemblies
Renames decals.dmi to signs.dmi ...because they're signs and not decals
Moves statues, cutouts, instruments, art supplies, and crayons to obj/art
Moves balloons, plushes, toys, cards, dice, the hourglass, and TCG to obj/toys
Moves guns, swords, shields to obj/weapons
2022-08-24 20:49:35 -03:00
tattle
b83c7deee4 Splitting some meat files (+ bonus fixes) (#69386)
* split up meat.dm

* minor coffeemaker fixes

* putting pig meat in its place

Co-authored-by: tattle <article.disaster@gmail.com>
2022-08-24 17:45:22 -04:00
Yaroslav Nurkov
4bb7bd834f Adds a few types of asian dishes (#69299)
add: Added a meat and fish poke
2022-08-22 19:44:50 -04:00
LukasBeedellCodestuff
714a1cfd77 Ports rideable pigs from Aether (With changes to make them basic mobs) (#69248)
Adds rideable pigs from aether(With changes to make them basic mobs)
Pigs now drop pork, and you can cook it into pork chops.
2022-08-21 22:36:17 -07:00
Tim
2d5bbd96de Add wisdom text to fortune cookies (#69235) 2022-08-20 14:23:52 -04:00
tattle
264f6657fe Minor tempeh fixes (#69268)
minor tempeh fixes

Co-authored-by: tattle <article.disaster@gmail.com>
2022-08-19 23:51:02 -04:00
ahmadsan
02f921da1d Adding tempeh (tem · pay) (#68359)
* Added tempeh

* added tempeh block, tempeh block is processable to tempeh slices, added processor recipe

* added tempeh sprite

* add missing =

* Added tempeh blend for making tempeh

* fixed a variable

* added a temp food_mixture recipe for tempehblend

* fixed a reference

* commenting something

* fixing tempeh slices

* added dots

* added sprite for all the other instances of tempeh

* added 'proper' recipe and revises description

* added actual recipe. (wip)

* finalized recipe, modified icon state name

* icon update

* merged icon

* fixing icon

* resolve conflict... i hope

* removed a file
2022-08-17 13:14:45 -04:00
John Willard
4a274a6e4b [MDB IGNORE] Refactors drinks and fixes a lot of food problems (#69081)
* Makes condiments their own subtype, fixes geese, prepares for merging

* Fixes geese checking drink type instead of edible foodtype to eat gross food.
* Renames foodtype var on drinks to drink_types to prevent above from happening again because it KEEPS HAPPENING. DRINKS AREN'T FOOD!
* Makes Condiments their own subtype of reagent_containers because they don't make any use of being a subtype of food, at all.
* Starts moving things from food to /food/drink subtype in preparation for merging /food/drink with /drink

* fully removes Food subtype

* /reagent_containers/drinks are now /reagent_containers/cup - This is so it's no longer confused with eachother.
* /food/drinks is now /reagent_containers/cup/drinks, so we can keep their special abilities.
* Fixes a LOT of errors with food, which are STILL checking the reagent_containers, despite ACTUAL food being refactored away from it a long time ago.

This doesn't compile yet, but I do want to make sure my progress is well tracked.

* remove copypaste code, changes soda cans

* Removes most copy paste code between the two drinks, moving most stuff to parent whenever needed.
* Made soda cans their own subtype since they didn't share anything with glass bottles anyways.
* Fixes more problems with food/drinks, especially with geese. Geese really were just broken this whole time and no one said a word...
* Removes a snowflake signal, now that both drink types share a common one.
* Adds everything to the .dme

Currently my goal is to get this all compiling, then remove isGlass var by making glass be all glass ones only.

* Moves all icons into a single drinks dmi

I'm not that great at icon stuff, hopefully I didn't forget/break anything.

* Turns juices into their own subtype

This allows us to let them check for type in molotov, to both get rid of a use of isGlass, and so non-glass non-cartons don't show up as 'carton'.

* fixes compile issues, adds updatepaths

* a better updatepaths

* updates the damn maps now

* properly names the updatepath

* how did that get there

* i suck at handling merge conflicts

* how am i this bad

* code improvement and soda fix

* more fixes

* Don't be a timer

Ports from old food bottles to trans the reagents, rather than add a timer to.

* Merge conflicts and fixes bottle smashing

* Bottle smashing is now consistently functional regardless of how much liquid they have in them, when before it would spill first, then smash on the second hit.

* runs updatepaths again
2022-08-12 15:24:14 -04:00
John Willard
952c3ee0d3 Removes ComponentInitialize() (#69118)
* Removes ComponentInitialize()

Completely removes ComponentInitialize() as a proc, which was called on every single atom in the game, twice in some instances (like new players), over something that can already be done with Initialize().
This is the second attempt at doing this, after the first attempt fell apart for some reason. This time it was way easier though, since storages are no longer a Component.

* update icon blocker added before calling parent

* Update code/game/machinery/porta_turret/portable_turret.dm

Co-authored-by: san7890 <the@san7890.com>

* adds a mapload while I'm here

* moves human mood

* Does some UNRELATED thing to the PR

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
2022-08-11 19:01:32 -04:00
Jacquerel
2f492bd88a Splits up 'Gross' food from 'Gore' and reshuffles taste preferences accordingly (#68899)
* Splits up 'gross' food from 'carrion'

* Adds a couple of missed burgers.
Moths dislike Carrion rather than it being poison to them.

* BEES is now BUGS

* It's always safe and a good idea to use find/replace
2022-08-10 04:33:42 +02:00
tralezab
0728fb3840 New Lavaland Monster: Bileworms (#68967)
Bileworms are a new lavaland monster, that has unique AI that should prove them.

Instead of moving normally, it periodically burrows underground and resurfaces nearby.
Its attack is an AOE acid spit.
2022-08-05 11:07:34 +02:00
Justice
4ca2a57ae7 Adds the Mothroach (#68763)
About The Pull Request

Yup. That's pretty much it. This PR adds the Mothroach to the game, described as "An ancient ancestor of the moth that surprisingly looks like the crossbreed of a moth and a cockroach."

Do you love the Mothroach? Then you can cuddle with it and pat it, as well as place it on your head for extra cuteness.
What if you hate it, though? You can always kill and butcher Mothroaches in order to mass produce moth plushes for your own profit... How fun!

Either way, you win!

The Mothroach can be picked up and has a special on-head sprite (which looks really cute). It is able to vent-crawl and you may get one by randomly summoning a friendly mob through the gold slime extracts, or by ordering one through the Cargo Requests. After butchered, you may use its hide, a heart, and some cloth to craft a moth plushie, the most devilish of Devil's designs.

Full Preview of all the Sprites (NEW): https://www.youtube.com/watch?v=pdg8FTNEYjI
Preview of some of the Sprites (OLD): https://www.youtube.com/watch?v=9A-8hGCiW0s
In-hand, on-head, and grounded Mothroach sprite credits go to ValuedEmployee.
I did the Mothroach hide sprite though!
Why It's Good For The Game

The Mothroach is incredibly cute and a neat, fresh, new piece of content. Although it could use some future repurposing, right now it's simply a cute exotic pet with a few interactions.

These cute sprites are just too good to go to waste...

I keep seeing people complain about the lack of new content. Well, here's something niche that won't break the whole balance of the game and that will be cute. I seriously cannot see a motive not to add this to the game. Just because it isn't a powergaming tool or something that is seen every shift, that doesn't mean that it won't have a positive influence on the game. As I have stated, right now the Mothroaches are underperforming in terms of interactions and ways of getting them, but adding them is the first step to later improve them.
Changelog

cl
add: The Mothroach, your new local exotic pet
add: Mothroach Hide and Mothroach Meat
add: New crafting recipe for the Moth Plush: 1 Mothroach Hide; 1 heart; 3 cloth
fix: Fixes dead mobs on-head not having sprites
/cl
2022-08-05 09:37:36 +12:00
Mooshimi
b09f3868f8 individual LOG_GAME (#68683)
About The Pull Request

    replaces a ton of log_game with user.log_message so the log is added to individual and global logs.
    adds a few logs for individual LOG_VICTIM, LOG_ATTACK etc logging.
    adds logging for bluespace launchpad's tele coords being changed.
    took the word "has" out of log_combat, as it's extra and just lengthens the log.

Why It's Good For The Admins

It's extremely laggy to open game.txt so an alternative is individual game logs
Changelog

cl
admin: A lot of game logs will now also be in individual game logs, for convenience in log diving.
admin: Added logging for bluespace launchpad x and y offset changes, which go to individual game logs.
admin: Attack logs will now be slightly shorter, one useless word was removed.
/cl
2022-08-05 09:32:02 +12:00
Tim
02e415bb82 Add when bubblegum megafauna devours corpses it now spawns demonic bubblegum candy (#68701)
* Add bubblegum corpse devour spawns bubblegum candy

* Change spawn location for bubblegum candy

* Change bubblegum taste description

* Fix bubblegum gum to spawn on ground
2022-07-30 05:06:33 -04:00
MidoriWroth
2e4aeff51a [NO GBP] Fixes new food syntax errors (#68595) 2022-07-21 21:30:59 -07:00
MidoriWroth
37db4a3e85 Peanuts! + Other various foods/changes (#68390) 2022-07-17 19:04:38 -07:00
LordVollkorn
641aa16bae The Toiletbong and other poetical additions (*click* Noice) (#68193)
* Main

* Added deconstruction and better rotation

* Open flame during usage, emagging

* Wording fix, sound fix

* Extra-indestructable check

* Storage is now a normal datum instead of a component? Noice

* Updated harvest.dmi after bell pepper resprite

* The new atom storage broke the emag capability, added a small fix
2022-07-15 11:35:19 -04:00
Salex08
2e0ac49ff9 Makes silver spawned food actually disgusting (#68319)
Fixes silver spawned food not tasting disgusting by sending a signal to the Edible component to make it disgusting.
2022-07-11 19:38:24 -04:00
Toto5561
3225f47ebd The Bacon Has Been Improved (#68255)
Updated "baconb" and "baconcookedb" sprites. Changed code to reflect the sprite changes.
2022-07-08 14:30:46 -04:00
Paxilmaniac
b4eab1c357 Converts all* of the times in the food files into SECONDS (#67984)
drink your processable component copy-paste
2022-06-25 22:25:19 -04:00
MidoriWroth
27dc5f2aa3 Olives! + Custom sushi/Pierogi changes (#67239)
About The Pull Request

This is a continuation of #66946 since I have enough points to finally do so.

This PR will:

    Expand upon my previous sushi PR, allowing people to use an ingredient on a sushi sheet to start creating custom sushi.
    Add olives! A new type of fruit that can be grown in hydroponics. When ground, it becomes olive paste which when mixed with water in a 4-1 reaction turns into 2 units of quality oil.
    Make pierogis require a dough slice to craft instead of a bun.
    Make quality oil cost 50 credits to order instead of 120

Why It's Good For The Game

Since my sushi PR merged, many people have asked me to add custom sushi, so here it is. This will allow chefs to make more interesting menus with added customization.

Quality oil is an extremely expensive commodity (120 credits for one 50 unit bottle, 240 if you expedite it!!!) and can only be acquired from cargo. I feel because of this, many chefs do not make lizard or mothic foods because simply acquiring the ingredients to do so is either very time consuming, expensive, or both. This will encourage people to make those foods more often since one of the key ingredients in many lizard or mothic dishes can be made by them, too. Olives themselves can be eaten as a snack and open up opportunities for new foods in the future, and it makes sense for you to make your own oil since the process is simple yet highly inefficient in real life.

This PR originally had a way to craft cornmeal as well, but that idea was adopted yesterday in #67227 which they can keep.

Lastly, it seems more reasonable for pierogis to require a dough slice instead of a burger bun. Don't think that requires more explanation.

I believe my gbp score is at -3, but I have three PRs waiting to merge currently which will boost me way above that.
Changelog

cl
add: Botany can now grow olives, which can be ground into a paste and mixed with water to make quality oil.
add: You can now make custom sushi by using an ingredient on a seaweed sheet. The sushi will be named after the first ingredient you use.
balance: Pierogis now need a dough slice instead of a bun
balance: Quality oil costs 50 credits to order instead of 120
/cl
2022-06-22 15:04:17 +12:00
Andrew
074f27ae3c Food types visible on food examine (#67635)
Now you can tell whether the thing you're about to eat is a breakfast, whether the fried egg has meat in it, and which soda is NOT a junk food.
2022-06-19 12:12:16 -07:00
AnturK
fddb6ea124 Fishing, Version 1 (#67691)
Adds fishing and fishing minigame.
You use fishing rod to fish.
Equipping specific bait/hook/reels will affect your success chances.
You can fish out fish,items and other things.

Fishing Equipment
Fishing rods have three slots: Bait, Reel and Hook.
Any food can be used as bait but dedicated bait makes fishing easier.
You can buy hook and line sets
New bait types:

Worms : Buy can of them at cargo (alternative acquirement method pending)
Doughballs : Use knife on flat piece of dough to get five of them.
Fishing rod types:

Basic : Print these at the lathe, nothing fancy here.
Tech: Experimental tech. Provides infinite bait
Fishing rods can also hook and reel normal items.

Equipment screen and reeling video
Fishing spots
Keep in mind this PR is meant to add the basic systems and i intend to fill these with more fish in future PR's so wait with suggestions until then.

Lavaland lava (no fish here right now, just other stuff), requires reinforced line to fish in.
Maintenance moisture traps.
Beach away mission water.
Fishing portal available for purchase from cargo - This is stopgap until we fill more spots.
Difficulty depends on fishing spot, fish type, and the fish traits and rod setup combinations.
All fish types can have specific traits, most common ones being favourite and disliked bait types/categories.

Other
Fishing catalog now lists fishing related info
New admin debug verb, fishing calculator that show probabilities with different setups so it's easier to balance this.
Fish now have average weight and size. Make sure to boast if you catch a big one.
Adds tgui mouse passthrough
Screens
Sprites:

Fishing portal sprite by @ArcaneMusic
Other sprites by @Mey-Ha-Zah
Bad ones by me. (Could still use better fishing minigame backgrounds)
Sounds:

https://freesound.org/people/soundscalpel.com/sounds/110393/
https://freesound.org/people/soundslikewillem/sounds/343748/
2022-06-16 22:36:10 +01:00
SomethingFish
97fc8b0428 Fixes mothic garlic pizza not producing the correct slice on slicing (#67773)
produces correct slice on slicing
2022-06-16 00:41:36 -04:00
Iamgoofball
f6d54cb8f2 Covers our ass with the ToS by renaming the licorice creamsicle from being a specific product reference to generic creamsicles. (#67585) 2022-06-14 02:08:03 -07:00
robbertapir
ff2b244c78 Allows regal rats to heal by eating all types of cheese (#67680)
Co-authored-by: robbertapir <robbertapir@airmail.cc>
2022-06-12 17:31:18 -07:00
Iatots
2f365c2478 replaces putting bread slices on your face (head) with putting toast in your mouth (#67579)
e
2022-06-07 22:01:11 -04:00
TemporalOroboros
2683ec04b0 Improves logging for smoke clouds. (#67206)
About The Pull Request

Makes smoke propagate the fingerprints of the last person to touch the source of the smoke.
This makes gunpowder smoke actually log the person responsible for the explosions.
Why It's Good For The Game

As of right now gunpowder smoke (and similar) doesn't actually have very good logging as as far as the smoke is concerned it's never been touched and so the resulting explosions are blameless. Obviously, scrolling up for a good minute looking for who has just obliterated the escape shuttle is slightly annoying for the admins. Ergo, making the explosions log who actually is responsible for making the smoke they originate from should reduce admin annoyance.
Changelog

cl
admin: Smoke now logs the last person to touch the source of the smoke as the last person to touch the smoke itself. Gunpowder smoke should be less annoying to log dive as a result as every explosion will log that person.
/cl
2022-06-07 15:45:20 +12:00
Wallem
29149157e9 Removes Ant Party Pizza's full pie, makes it so you just pour ants on a single slice. (#67399)
* removes the full pie, edits the recipe

* 6 slices per pie, 20 / 6, rounded up
2022-06-06 00:02:15 -04:00
EOBGames
ad07e02316 The Great Species Food Rebalance, Part One: Nutriment, Chemical Recipes, Cargo Orders, Baking Times, Oh My! (#67227)
the great rebalance, part one

A comprehensive rebalance of food, including cooking times, nutriment values, crafting recipes, and cargo orders
2022-06-05 20:17:07 +02:00
Wallem
b290e90bd0 Adds BUG food types (eating ants) (#67202)
* Adds BUG food types, liked by Flypeople, Felinids, Jellypeople, Monkeys and Lizardpeople, while Moths and Podpeople hate it.

* BUG foods include moth meat, ants, ant pizza, spider eggs, canned larvae, and a few others.
2022-05-27 10:00:39 -04:00
Iamgoofball
b4a9738741 Corrects the price on the South Bronx Paradise bars. Again. (#67211)
Eight dollars a bar, fry-man. So, uh, you look.
2022-05-23 18:27:35 -04:00
robbertapir
34f0ac5928 removed some oddly placed empty lines from pasta.dm and misc.dm (#67212)
removed some newlines

Co-authored-by: robbertapir <robbertapir@airmail.cc>
2022-05-23 17:40:29 -04:00
Dorsisdwarf
49ce69df47 Egg Frying Overhaul (#66137)
- Removes friedegg recipie
- Adds a new rawegg grillable into friedegg, obtained by breaking an egg onto a griddle (right-click).
- Changes the double-egg friedeggs sprite to a single-egg. No more eggmancy!
- While we're at it, replaces the raw egg in the fried-egg-and-sausage recipe with a fried egg.
2022-05-16 12:31:58 -05:00
YakumoChen
fa271795da Gives boritos more flavour (#66958)
About The Pull Request

Rewrites the descriptions for Boritos flavours
Also makes them taste better too like the code comment implied
Why It's Good For The Game

All the descriptions were bland, like plain Boritos
Changelog

cl
spellcheck: Boritos flavours have more flavour!
/cl
2022-05-15 09:27:58 +12:00