Thread Rating:
  • 1 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[PR] Implements a limit to how much can be eaten at once.
#1
Information 
PULL REQUEST DETAILS




[BALANCE] [CATERING] [INPUT WANTED] [STATUS EFFECT] [EXPERIMENTAL]

About the PR
This pr adds in a system for tracking how much mobs have eaten. in this pr, if a mob takes 11 bites (about the equivalent of 2 hamburgers) of food, they'll become "full", meaning eating any more while full will result in damage to the stomach, eventually killing the stomach. This damage is only applied to the stomach if they aren't a mob critter, so the mobs themselves won't take any direct damage from over-eating, except mob critters, which will take direct damage due to not having a stomach.

They are 2 status effects tied in with this system, a "recently eaten" status effect, and a "over-eaten" status effect. Upon the status effects expiring, the mob's bite count is reset to 0, allowing them to eat more without taking stomach damage. I've made the over-eaten status effect take longer to expire to disincentive over-eating even more. If this is deemed more appropriate for rp, I can change some things to restrict this to rp.


Why's this needed?
Currently, it is possible for a staffie to come to the kitchen and gobble up all of the chef's food in a minute. This will prevent the chef's hard work from being devoured by a single person, and also give more use to the stomach cyber organ, which currently does very little. This also allows for ways to alter the mobs stomach capacity in future prs, such as some antags having higher/lower capacities, or organ types changing capacity


Changelog



Code:
changelog
(u)Wisemonster
(*)There is now a limit on how much a mob can eat at a time, check minor changes for details
(+)You can only eat around 11 bites of food before the next bite will make you "over-eaten", if you eat more while in this state, you will damage your stomach.
(+)Waiting out the "recently eaten" and "over-eaten" status effects will reset you eat count.


PULL REQUEST DETAILS
Reply
#2
This should probably use nutrition value instead of bite value with a max amount on it of like ten (that way you cant eat only 1 goldfish and then no more). I think itd feel weird if low theres a food with like a nutrition value of 1 that you can only eat like 11 of and only half fill your health bar
Reply
#3
I originally designed this pr thinking that the bites it takes to eat something also scaled with it's nutritional value. But there are things like a baked potato that take 6 bites to eat but have a heal_amt of 1. Also, a goldfish cracker only takes 1 bite to eat, so it would barely fill your stomach up in this pr. Also junk food giving little nutrition, but filling your stomach sounds like it'd make sense.
Reply
#4
With bites, this is really bad for chickens. They eat some types of feed with low nutrition value very fast. So that would probaly need adjustments, but that is, like you said on the github, secret module.

To improve responsiveness and visibility, I would personally suggest to add an 0.5 action bar to overeating yourself and make stomach damage begin later. Action barsĀ are VERY visible and gives the chef plenty of time to react to "the one person that eats all the chefs food"...
Reply
#5
I could add an action bar to eating while over-eating, although the last time a delay was added to eating, it was removed due to being incredibly buggy. I'm also not sure what the chef would do in this situation if they saw someone eating all their food.
Reply
#6
(04-01-2023, 01:47 PM)Wisemonster Wrote: I'm also not sure what the chef would do in this situation if they saw someone eating all their food.

They got a knife.
Reply
#7
this would require an entire rework of the food system. 11 bites of like, pop corn, is not equal to 11 bites of hamburger or 11 bites of an apple. This change seems mostly unecessary, if the issue is ghost critters make ghost critters have a timer on eating.
Reply
#8
i do think that there's value to the idea if implemented differently. the number of regulars that play chef often seems really low, so I don't know how many know how depressing it is to have a staffie eat everything you cooked in one go.

TBH i think that the hunger motive swapping from heal_amt to number of bites would make sense if you think of a bite as a mouthful.
yes it would make a few weird exceptions (like being able to eat 13 THE MONSTERs or 2 regular burgers) but there are so many reward systems for visiting chefs right now, dissociating the hunger and heal_amt is probably fine.

also, i might add that having a fun motive/downside to this, rather than just making you physically unable to eat, might make it worse.
Reply
#9
Basicly do the cholerstrol mechanic for all food. You know how you explode when eating too much high cholestrol food.

But insted of cholestrol, add a new chem. "Nutrients"
Something you get from good food.. but not from bad food and fast food has low of it.

Nutrients will fill your hunger bar... but overdosing on it will lead to a certain death.
Also leads to traitor chefs being able to kill by making TOO NUTRIENT FILLED FOOD!

And yes Botany food can also increase it too much on their fruits and vegetables, but cooked food will DRASTICLY increase it's nutrient level.

Also let's add "drowning" to overhydration. Drinking too much any liquid will cause you to "drown"
Reply
#10
I'm going to echo the sentiments of the other commenters here in saying that this is a good idea, but it probably needs different implementation, or a rework of the food system to accommodate it better. Having each bite line up more with the nutritional content/how filling a food is across all food items seems like a must before this goes through.

However, the general idea of limiting how much people can gorge themselves with food is fine by me. Never really made much sense that you could eat 20 high-potency apples, each roughly the size of a basketball, in a row, and preventing one person from gobbling up all of the chef's hard work is good in my book.
Reply
#11
I would just say that giving every food a mechanic that instantly damage people will make even less likely people will interact with the chef at all. That's why it really needs to be very obvious when you damage yourself by overeating. Many already don't simply for the chance of someone poisoning the food.

Besides, that "one staffie that eats all your food" is very simply countered by not having your food lying in the open for the whole time. It's thankless anyway, since people will come in, take it and not even exchange pleasantries with you. The "one staffie" is very often the only one that sticks around and offers some interaction.

This PR will not stop people just taking all your stuff in a satchel and go away, if they want to grief you without RP.
Reply
#12
I am going to be honest, I do not agree with this pr.

it is fundementally flawed to punish people with dmg for what should be a rewarded action (eating and interacting with the chef)
There are two
A: the chef can do that via knifes and with holding food from reach
B: a system can be implimented that bars the consumption of food in general after a certain limit

This pr is a example of B, however, instead of simply stopping or slowing down food consumption, it actively punishes people for eating without a warning or slowdown system. Discounting the adjustable feed limit, seeing as some food items can already have more than 10 bites, if a player wished to grief and remove all the chefs food, the could either eat it all then die, or stuff it into their bag. Ghost critters as well would not be stopped by the current implimentation, so they would still be able to easily eat all of the food in the kitchen.
Reply
#13
Ghost critters very much would be stopped (or at least, slowed) by this, considering they'll take damage after eating too much, and takes 10 minutes to respawn if they die. As a side note, the stomach damage will deal zero damage to the actual player, and only damage the organ (unless they are a critter). Meaning people aren't going to die from over-eating the food.
Reply
#14
if the main beef here is with ghost critters then why not make something that specifically targets them and them alone?
Reply
#15
speaking as a player and not an admin (impossible, i know) being able to spam devour shit with the use button is hilarious. someone tried to remove this before by adding an action bar for eating (!?!?) and opinions of it flew like a brick

the new mob critters in general are extremely active with eating random shit, limiting them (and ghost critters, by extension) would probably be good
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)