From 350bbd50a3b41879c141638375751190491f6eac Mon Sep 17 00:00:00 2001 From: UndeadZeratul Date: Mon, 25 Jul 2016 19:53:45 -0500 Subject: [PATCH] Tweak Spice of Life Formula (#154) * Tweak SoL Configurations Set a max eating duration (2x the default so that food doesn't take obscenely long to consume). Tweaked food formula, again. It takes into account most of the same things as before, but now it also takes into account the food groups the food is a part of, as well as how varied the player's diet is. Lowered food history length down to 64 from 256, as the new formula isn't reliant on it and it just got a bit silly to be so long. * Change Rounding Mod to Ceiling That way food will always give at least a half a haunch of hunger. I know TWBB is supposed to be difficult, but eating something that gives absolutely no benefit isn't hard, it's annoying. --- common/base/config/SpiceOfLife.cfg | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/common/base/config/SpiceOfLife.cfg b/common/base/config/SpiceOfLife.cfg index 55187b2..4f23a6d 100644 --- a/common/base/config/SpiceOfLife.cfg +++ b/common/base/config/SpiceOfLife.cfg @@ -76,7 +76,7 @@ server { # The maximum time it takes to eat a food after being modified by food.eating.speed.modifier # The default eating duration is 32. Set this to 0 to remove the limit on eating speed. # Note: If this is set to 0 and food.eating.speed.modifier is > 0, a food with 0% nutrtional value will take nearly infinite time to eat - I:food.eating.duration.max=0 + I:food.eating.duration.max=64 # If set to greater than zero, food eating speed will be affected by nutritional value # (meaning the lower the nutrtional value, the longer it will take to eat it) @@ -84,14 +84,14 @@ server { D:food.eating.speed.modifier=1.0 # The maximum amount of eaten foods stored in the history at a time - I:food.history.length=256 + I:food.history.length=64 # If true, food history will not get reset after every death B:food.history.persists.through.death=false # Rounding mode used on the hunger value of foods # Valid options: 'round', 'floor', 'ceiling' - S:food.hunger.rounding.mode=round + S:food.hunger.rounding.mode=ceiling # Uses the EvalEx expression parser # See: https://github.com/uklimaschewski/EvalEx for syntax/function documentation @@ -111,7 +111,7 @@ server { # distinct_food_groups_eaten : The number of distinct food groups in the player's current food history # total_food_groups : The total number of enabled food groups # - S:food.modifier.formula=min(1, ((max_history_length - ((cur_hunger + cur_saturation)/2)/((food_hunger_value + food_saturation_mod)/2))/(count + max_history_length))) + S:food.modifier.formula=min(1, ((((food_hunger_value + food_saturation_mod + food_group_count) / 2) / (((cur_hunger + cur_saturation) / 2) + 1)) / (sqrt(count * (total_food_groups / (distinct_food_groups_eaten + 1)))))) # If true, a food journal will be given to each player as a starting item B:give.food.journal.as.starting.item=false