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

[Feature][Refactor][Review Requested] Nutrient Changes and Dietary Concerns #1112

Merged
merged 3 commits into from
May 21, 2015
Merged

Conversation

FalseIncarnate
Copy link
Contributor

Nutrient Changes and Dietary Concerns
Splits nutriment into 3 reagents: Protein, Nutriment, and Plant-matter. Every race now has a defined diet (except Diona and IPCs who don't get nutrition from food) which dictates what types of nutrient reagents that benefit them. Nutriment is considered a neutral type, and thus can be digested by carnivores, herbivores, and omnivores alike, while protein cannot be digested by herbivores and carnivores cannot digest plant-matter.

Regardless of diet, all three nutrients will metabolize out of the body safely, meaning you cannot become fat off of a steak if you are an herbivore. You only will gain the benefits of nutrition and slight healing from the nutrient types your species can digest.

Most of the kitchen-produced foods have been largely untouched, as have most vending machine foods. Vending machine jerky and the Admiral Yamato Carp have had their reagents adjusted to include protein, and 4noraisins have had their reagents switched to plant-matter to ensure that a dietary-friendly option will be available without botany or a chef. Since kitchen-produced foods inherit the reagents of their ingredients, few higher-level foods have been adjusted, while most ingredients such as botany produce and monkey meat have been updated to properly list plant-matter or protein as appropriate. Chef food will typically include at least 2 nutrient types.

Breakdown of additions, changes, etc:

  • Adds Protein and Plant-matter reagents, nutritional values of 15
  • Reduces nutritional value of Nutriment to 12, down from 15
  • Adds new flag defines for racial diets, and new dietflags var to species
    (must be set manually in the species definition, otherwise it will be
    null)
  • Assigns each species their respective diet's flag:
    • Carnivores: Unathi, Slime People
    • Omnivores: Human, Tajaran, Vox, Shadowpeople, Golems,
      Plasmaman, Nucleation, Vox Armalis
    • Herbivores: Skrell, Kidan, Grey, Wryn
    • No Diet (null dietflag): Diona, IPC
  • Adds checks to all nutrient on_mob_life procs to handle simple_animals
    versus carbon/human mobs
    • Simple animals will heal from any nutrient source, but don't gain
      nutritional value since they don't appear to deplete it
  • Adds check to Nutriment on_mob_life proc to ensure that the diet for a
    species has been set
    • Failure to set a diet flag will prevent the species from benefitting
      from ANY nutrients, while metabolizing the reagents normally
    • This is largely for ensuring the species is properly defined
  • Adds checks to Protein and Plant-matter on_mob_life procs to handle
    incompatible diets
    • Ingesting Protein does not benefit Herbivores, but will metabolize out
      of the body normally
      -Ingesting Plant-matter does not benefit Carnivores, but will metabolize
      out of the body normally
  • Initial update of food reagents to utilize new nutrient reagents
    • Food inherits the reagents of it's ingredients in almost every case, and then adds some additional nutriment to the product
  • Fixes the blood tomato mutant list to actually allow mutation into
    killer tomato.

I would like to request at least one other person look through this and ensure I have not missed anything important and that it is largely bug-free before it is merged. I have done testing, but given the scope of the reagent changes, I would rather it be delayed slightly than merged feature-incomplete.

Adds Protein and Plant-matter reagents, nutritional values of 15

Reduces nutritional value of Nutriment to 12, down from 15

Adds new flag defines for racial diets, and new dietflags var to species
(must be set manually in the species definition, otherwise it will be
null)

Assigns each species their respective diet's flag:
- Carnivores: Unathi, Slime People
- Omnivores: Human, Tajaran, Kidan, Vox, IPC, Shadowpeople, Golems,
Plasmaman, Nucleation, Vox Armalis
- Herbivores: Skrell, Diona, Grey, Wryn

Adds checks to all nutrient on_mob_life procs to handle simple_animals
versus carbon/human mobs
- Simple animals will heal from any nutrient source, but don't gain
nutritional value since they don't appear to deplete it

Adds check to Nutriment on_mob_life proc to ensure that the diet for a
species has been set
- Failure to set a diet flag will prevent the species from benefitting
from ANY nutrients, while metabolizing the reagents normally
- This is largely for ensuring the species is properly defined

Adds checks to Protein and Plant-matter on_mob_life procs to handle
incompatible diets
- Ingesting Protein does not benefit Herbivores, but will metabolize out
of the body normally
-Ingesting Plant-matter does not benefit Carnivores, but will metabolize
out of the body normally
Changes the Kidan racial diet to DIET_HERB, from DIET_OMNI, to maintain
consistency with Paradise Lore.

Removes diet flags from Diona and IPCs since they utilize alternate
nutrition sources. This prevents them from benefiting from any
nutriment, protein, or plant-matter they metabolize.

Adjusted comments in the on_mob_life procs for Protein and Plant-matter
to better explain the diet flag checks and correct a copy-paste mistake
on the comments.
Initial update of food reagents to utilize new nutrient reagents

Fixes the blood tomato mutant list to actually allow mutation into
killer tomato.
@Keilden
Copy link

Keilden commented May 20, 2015

As cat people I would say that tajaran should be carnivores.

@ZomgPonies ZomgPonies added Feature This PR is a new addition to the game Refactor This PR will clean up the code but have the same ingame outcome labels May 20, 2015
@ZomgPonies
Copy link
Contributor

👍

@Fox-McCloud
Copy link
Member

I like this; if you integrate it with TG's overhauled nutritional system (which has satiety and fullness both), it'll be a pretty mechanically deep system that will really encourage players to utilize the chef over vending machines and to eat "good" food over junk.

@KasparoVy
Copy link
Contributor

Awesome seeing this lined up to be implemented

@TheDZD
Copy link
Contributor

TheDZD commented May 20, 2015

It'd probably be best to just have both DIET_HERB and DIET_CARN given to omnivorous races, rather than creating a specific flag for them.

@FalseIncarnate
Copy link
Contributor Author

@TheDZD As I explained in the coder chat, the DIET_OMNI is so that we can potentially tweak things balance-wise (like nutritional value) for just carnivores or just herbivores without affecting omnivores.

Should we port TG's system like fox suggested, one potential use would to be making it so protein-heavy foods offer better satiety to only carnivores or plant-matter for herbivores, without affecting omnivores. Using both DIET_CARN and DIET_HERB for omnivores would over-complicate such adjustments.

Fox-McCloud added a commit that referenced this pull request May 21, 2015
[Feature][Refactor][Review Requested] Nutrient Changes and Dietary Concerns
@Fox-McCloud Fox-McCloud merged commit 22180af into ParadiseSS13:master May 21, 2015
@FalseIncarnate FalseIncarnate mentioned this pull request Jul 5, 2017
Zigamus pushed a commit to Zigamus/Paradise that referenced this pull request Aug 9, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature This PR is a new addition to the game Refactor This PR will clean up the code but have the same ingame outcome
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants