# Configuration file

general {

    ##########################################################################################################
    # debug
    #--------------------------------------------------------------------------------------------------------#
    # Debug settings
    ##########################################################################################################

    debug {
        # Debug worldgen (the danger part) This will glass maps at max world height to help debug world gen. THIS WILL MESS UP YOUR WORLD!
        B:debugWorldGenDanger=false

        # Debug worldgen (safe part) This will output map images of world gen steps and print some debug info. This is safe to use.
        B:debugWorldGenSafe=false

        # Various debug options. Activates some extra wand features. Enables extra item tooltips.
        B:enable=false
    }

    ##########################################################################################################
    # overrides
    #--------------------------------------------------------------------------------------------------------#
    # Override settings
    ##########################################################################################################

    overrides {
        # Turn this off to disable TFC's registry replacement of Ice and Snow blocks. This will remove their temperature based behavior.
        B:enableFrozenOverrides=true

        # Enable the creation of grass paths using TFC's shovels.
        B:enableGrassPath=true

        # Enable the creation of farmland on TFC's soil.
        B:enableHoeing=true

        # Enable ingot pile placement in world.
        B:enableIngotPiles=true

        # Overrides lava and water making vanilla stones to TFC variants.
        B:enableLavaWaterPlacesTFCBlocks=true

        # Enable log pile placement in world.
        B:enableLogPiles=true

        # Enable the creation of stone anvils.
        B:enableStoneAnvil=true

        # Enable the creation of thatch beds.
        B:enableThatchBed=true

        # Turn this off to disable TFC's registry replacement of Torches. This will disable them extihguishing over time.
        B:enableTorchOverride=true

        # If true, TFC will override default ore gen file. Pack Makers: Disable this to keep your ore gen file from being reset to default.
        B:forceDefaultOreGenFile=true

        # If true, this will force the gamerule naturalRegeneration to be false. 
        # Note: this DOES NOT AFFECT TFC's natural regeneration.
        # If you set naturalRegeneration to true, then you will have both TFC regeneration and normal vanilla regeneration (which is much faster)
        B:forceNoVanillaNaturalRegeneration=true

        # If true, this will replace vanilla animals with the TFC counterpart under any spawning circumstances (ie: mob spawner, etc).
        B:forceReplaceVanillaAnimals=true

        # If true, TFC will try and force the `level-type` setting to `tfc_classic` during DedicatedServer startup or define it as default world type for clients.
        B:forceTFCWorldType=true

        # Enable/Disable the vanilla loot entries that conflict with TFC (ie: potatoes). False = Those loot entries are left in place.
        B:removeVanillaLoots=true

        # Enable/Disable the vanilla recipe removal spam. False = Those recipes are left in place.
        B:removeVanillaRecipes=true

        # Number of ticks required for a torch to burn out (72000 = 1 in game hour = 50 seconds), default is 72 hours. Set to -1 to disable torch burnout.
        # Min: -1
        # Max: 2147483647
        I:torchTime=72000
    }

    ##########################################################################################################
    # fallable
    #--------------------------------------------------------------------------------------------------------#
    # Fallable settings
    ##########################################################################################################

    fallable {
        # Should chiseling raw stone blocks cause collapses?
        B:chiselCausesCollapse=true

        # Chance that mining raw rocks triggers a collapse.
        # Min: 0.0
        # Max: 1.0
        D:collapseChance=0.1

        # If false, fallable blocks (ie: dirt, stone) will never destroy loose items.
        B:destroyItems=true

        # If false, fallable blocks (ie: dirt, stone) will never destroy ore blocks.
        B:destroyOres=true

        # If false, fallable blocks (ie: dirt, stone) will never fall.
        B:enable=true

        # Should exploding raw stone blocks cause collapses?
        B:explosionCausesCollapse=true

        # If false, fallable blocks (ie: dirt, stone) will never hurt entities.
        B:hurtEntities=true

        # Chance that collapsing blocks propagate the collapse. Influenced by distance from epicenter of collapse.
        # Min: 0.0
        # Max: 1.0
        D:propagateCollapseChance=0.55

        # Downwards support range of support beams.
        # Min: 0
        # Max: 3
        I:supportBeamRangeDown=1

        # Horizontal radius of the support range of support beams.
        # Min: 0
        # Max: 8
        I:supportBeamRangeHor=4

        # Upwards support range of support beams.
        # Min: 0
        # Max: 3
        I:supportBeamRangeUp=1
    }

    ##########################################################################################################
    # difficulty
    #--------------------------------------------------------------------------------------------------------#
    # Difficulty settings
    ##########################################################################################################

    difficulty {
        # Range of pixels on either side of the working target that can be accepted to complete a smithing recipe
        # Min: 0
        # Max: 2147483647
        I:acceptableAnvilRange=0

        # This controls how many animals (any kind) are loaded (spawned) / player. Higher values means more animals near a player, which in turn raises difficulty and meat abundance (caution, a value too high can also negatively impact performance).
        # Min: 0
        # Max: 2147483647
        I:animalSpawnCount=75

        # Give wrought iron weapons to vanilla mobs?
        B:giveVanillaMobsEquipment=true

        # This controls how many mobs are loaded (spawned) / player. Higher values means more mobs near a player, which in turn raises difficulty (caution, a value too high can also negatively impact performance)
        # Min: 0
        # Max: 2147483647
        I:mobSpawnCount=140

        # Prevent mob spawning on surface?
        B:preventMobsOnSurface=true
    }

    ##########################################################################################################
    # tree
    #--------------------------------------------------------------------------------------------------------#
    # Tree settings
    ##########################################################################################################

    tree {
        # Enable trees being fully cut by axes.
        # Disable it if you want other mods to handle tree felling.
        B:enableFelling=true

        # Enable smacking logs with a hammer giving sticks.
        B:enableHammerSticks=true

        # If false, leaves will not drop saplings.
        B:enableSaplings=true

        # Normal leaf drop chance for sticks
        # Min: 0.0
        # Max: 1.0
        D:leafStickDropChance=0.1

        # Chance that leaves will drop more sticks when harvested with configured tool classes.
        # Min: 0.0
        # Max: 1.0
        D:leafStickDropChanceBonus=0.25

        # Tool classes that have the configured bonus to drop more sticks when harvesting leaves.
        S:leafStickDropChanceBonusClasses <
            knife
            scythe
         >

        # Should logs require tools (axes and saws, or hammers for sticks) to be cut? If false, breaking logs with an empty hand will not drop logs.
        B:requiresAxe=true

        # Chance per log for an item to drop when using a stone axe.
        # Min: 0.0
        # Max: 1.0
        D:stoneAxeReturnRate=0.6
    }

    ##########################################################################################################
    # spawn_protection
    #--------------------------------------------------------------------------------------------------------#
    # Spawn protection settings
    ##########################################################################################################

    spawn_protection {
        # The max Y value a spawn has to be for spawn protection to prevent mobs. Anything above it will not be prevented.
        # Min: 1
        # Max: 255
        I:maxYMobs=255

        # The max Y value a spawn has to be for spawn protection to prevent predators. Anything above it will not be prevented.
        # Min: 1
        # Max: 255
        I:maxYPredators=255

        # The min Y value a spawn has to be for spawn protection to prevent mobs. Anything below it will not be prevented.
        # Min: 1
        # Max: 255
        I:minYMobs=100

        # The min Y value a spawn has to be for spawn protection to prevent predators. Anything below it will not be prevented.
        # Min: 1
        # Max: 255
        I:minYPredators=100

        # Should living in a chunk prevent hostile mob spawning over time?
        B:preventMobs=true

        # Should living in a chunk prevent predators spawning over time?
        B:preventPredators=true
    }

    ##########################################################################################################
    # damage
    #--------------------------------------------------------------------------------------------------------#
    # Damage settings
    ##########################################################################################################

    damage {
        # Damage Source Entities that will default to Crushing damage.
        S:crushingEntities <
            minecraft:husk
            minecraft:skeleton_horse
            minecraft:zombie_horse
            minecraft:spider
            minecraft:giant
            minecraft:zombie
            minecraft:slime
            minecraft:cave_spider
            minecraft:silverfish
            minecraft:villager_golem
            minecraft:zombie_villager
         >

        # Damage Source Types that will default to Crushing damage.
        S:crushingSources <
            anvil
            falling_block
         >

        # Damage Source Entities that will default to Piercing damage.
        S:piercingEntities <
            minecraft:stray
            minecraft:skeleton
         >

        # Damage Source Types that will default to Piercing damage.
        S:piercingSources <
            arrow
            cactus
            thorns
         >

        # Damage Source Entities that will default to Slashing damage.
        S:slashingEntities <
            minecraft:wither_skeleton
            minecraft:vex
            minecraft:vindication_illager
            minecraft:zombie_pigman
            minecraft:wolf
            minecraft:polar_bear
         >

        # Damage Source Types that will default to Slashing damage.
        S:slashingSources <
         >
    }

    ##########################################################################################################
    # player
    #--------------------------------------------------------------------------------------------------------#
    # Player settings
    ##########################################################################################################

    player {
        # Chance that a salty drink apply a thirst effect
        # Min: 0.0
        # Max: 1.0
        D:chanceThirstOnSaltyDrink=0.25

        # Delay (in ticks) for drinking water by hand
        # Min: 1
        # Max: 2147483647
        I:drinkDelay=12

        # Enable a 3x3 crafting inventory via key binding.
        # Valid values:
        # DISABLED
        # ENABLED
        # ALWAYS
        S:inventoryCraftingMode=ENABLED

        # Maximum health modifier player can obtain with high nutrition.
        # Example 1(Vanilla): 20 * 3(mod) = 60 (or 30 hearts).
        # Example 2(TFC): 1000 * 3(mod) = 3000.
        # Min: 1.0
        # Max: 5.0
        D:maxHealthModifier=3.0

        # Minimum health modifier player can obtain with low nutrition.
        # Example 1(Vanilla): 20 * 0.2(mod) = 4 (or 2 hearts).
        # Example 2(TFC): 1000 * 0.2(mod) = 200.
        # Min: 0.1
        # Max: 1.0
        D:minHealthModifier=0.2

        # Modifier for how quickly the player will naturally regenerate health.
        # When on full hunger and thirst bars, 1.0 = 3HP / 5 secs.
        # Min: 0.0
        # Max: 100.0
        D:naturalRegenerationModifier=1.0

        # The amount of replenished hunger before the player's nutrition will lose the first food consumed. Most TFC foods have 4 hunger.
        # Example: Multiply Vanilla hunger(20) by 4 to get one food bar worth of food before the first food is lost from the cycle.
        # Min: 4
        # Max: 2147483647
        I:nutritionRotationHungerWindow=80

        # Modifier for passive exhaustion (exhaustion that naturally occurs just by living). 1.0 = full hunger bar once 2.5 minecraft days.
        # Min: 0.0
        # Max: 100.0
        D:passiveExhaustionMultiplier=1.0

        # Should the player receive passive regeneration of health, food, and thirst, while in peaceful mode similar to vanilla?
        B:peacefulDifficultyPassiveRegeneration=false

        # Which inventory slots will ammo refill/pickup search for quivers?
        # Valid values:
        # DISABLED
        # ARMOR
        # HOTBAR
        # INVENTORY
        S:quiverSearch=HOTBAR

        # How quickly the players becomes thirsty when hunger is drained by actions/sprinting? 100 = full thirst bar.
        # Min: 0.0
        # Max: 100.0
        D:thirstModifier=8.0
    }

    ##########################################################################################################
    # world
    #--------------------------------------------------------------------------------------------------------#
    # World generation settings
    ##########################################################################################################

    world {
        # The minimum rainfall in an area required for clay to spawn. By default this is the same threshold as dry grass.
        # Min: 1
        # Max: 500
        I:clayRainfallThreshold=150

        # The rarity for clay pits to occur. On average 1 / N chunks will have a clay deposit, if the chunk in question is valid for clay to spawn.
        # Min: 1
        # Max: 2147483647
        I:clayRarity=30

        # Enable generation of loose ores?
        B:enableLooseOres=true

        # Enable generation of loose rocks (just the rocks)?
        B:enableLooseRocks=true

        # Enable generation of loose rocks (just the rocks)?
        B:enableLooseSticks=true

        # This controls how spread the flora density distribution is. Higher values means the world will be distributed towards the extremes more, making more dense forest pockets.
        # WARNING: This can cause very weird world generation conditions.
        # Min: 0.05
        # Max: 0.4
        D:floraDensitySpreadFactor=0.16

        # This controls how spread the flora diversity distribution is. Higher values means the world will be distributed towards the extremes more, making forests have much more different kinds of trees.
        # WARNING: This can cause very weird world generation conditions.
        # Min: 0.05
        # Max: 0.4
        D:floraDiversitySpreadFactor=0.16

        # Sets temperature in relation to the equator change. North = Cold, South = Hot or North = Hot, South = Cold.
        # Valid values:
        # COLD_NORTH_HOT_SOUTH
        # HOT_NORTH_COLD_SOUTH
        S:hemisphereType=COLD_NORTH_HOT_SOUTH

        # If Cyclic, this controls the length (in blocks) of the temperature regions. The temperature values change in a wave-like pattern (sine wave).
        # Wandering straight in a direction increases or decreases temperature. When you travel this many blocks, the temperature begins changing in the other direction.
        # Min: 1000
        # Max: 1000000
        I:latitudeTemperatureModifier=40000

        # This is how deep (in blocks) from the surface a loose rock will scan for a vein when generating, Higher values = More veins spawn samples thus adding more samples.
        # Min: 1
        # Max: 255
        I:looseRockScan=35

        # The number of attempts per chunk to spawn loose rocks. Includes surface ore samples.
        # Min: 1
        # Max: 2147483647
        I:looseRocksFrequency=18

        # This controls how spread the rainfall distribution is. Higher values means the world will be distributed towards the extremes more, making more deserts and rain forests.
        # WARNING: This can cause very weird world generation conditions.
        # Min: 0.05
        # Max: 0.4
        D:rainfallSpreadFactor=0.13

        # This controls which registered entities can respawn in TFC biomes.
        # You must specify by following the pattern 'modid:entity <rarity> <minGroupSpawn> <maxGroupSpawn>'
        # Invalid entries will be ignored.
        S:respawnableCreatures <
            tfc:blackbeartfc 30 1 2
            tfc:boartfc 30 1 2
            tfc:cougartfc 30 1 2
            tfc:coyotetfc 30 3 6
            tfc:deertfc 70 2 4
            tfc:direwolftfc 30 1 2
            tfc:gazelletfc 70 2 4
            tfc:grizzlybeartfc 30 1 2
            tfc:grousetfc 70 2 3
            tfc:haretfc 70 2 3
            tfc:hyenatfc 30 3 6
            tfc:jackaltfc 30 3 6
            tfc:liontfc 30 1 2
            tfc:mongoosetfc 30 1 2
            tfc:muskoxtfc 70 2 4
            tfc:ocelottfc 70 2 4
            tfc:panthertfc 30 1 2
            tfc:pheasanttfc 70 2 3
            tfc:polarbeartfc 30 1 2
            tfc:quailtfc 70 2 3
            tfc:rabbittfc 70 2 3
            tfc:sabertoothtfc 30 1 2
            tfc:turkeytfc 70 2 3
            tfc:wildebeesttfc 70 2 4
            tfc:wolftfc 70 2 4
            tfc:yaktfc 70 2 4
            tfc:zebutfc 70 2 4
         >

        # This controls the number of sticks generated on chunk generation.
        # The number of trees in the area and flora density is also a factor in this.
        # Min: 0.0
        # Max: 10.0
        D:sticksDensityModifier=1.0

        # This controls how temperature is affected by how far from equator you are.
        # Valid values:
        # CYCLIC
        # ENDLESS
        S:temperatureMode=CYCLIC
    }

    ##########################################################################################################
    # world_regen
    #--------------------------------------------------------------------------------------------------------#
    # World regeneration settings
    ##########################################################################################################

    world_regen {
        # The minimum time for a chunk to be unoccupied for it's resources (berry bushes, debris and crops) to naturally regenerate. (In days). After this amount, regeneration will scale up based on how long since this duration, up to a maximum of 4x.
        # Min: 12
        # Max: 1000
        I:minimumTime=24

        # The weight for loose rocks and sticks regeneration in the world.
        # Min: 0.0
        # Max: 1.0
        D:sticksRocksModifier=0.5
    }

    ##########################################################################################################
    # food
    #--------------------------------------------------------------------------------------------------------#
    # Food settings
    ##########################################################################################################

    food {
        # Modifier for how long berry bushes take to grow fruits.
        # Min: 0.01
        # Max: 100.0
        D:berryBushGrowthTimeModifier=1.0

        # Defines berry bush rarity to generate, in 1 / N chunks. 0 = Disable
        # Min: 0
        # Max: 2147483647
        I:berryBushRarity=80

        # Modifier for how long crops take to grow.
        # Min: 0.01
        # Max: 100.0
        D:cropGrowthTimeModifier=1.0

        # Defines wild crops rarity to generate, in 1 / N chunks. 0 = Disable
        # Min: 0
        # Max: 2147483647
        I:cropRarity=30

        # Modifier for how quickly food will decay. Higher values = faster decay. Set to 0 for infinite expiration time
        # Min: 0.0
        # Max: 10.0
        D:decayModifier=1.0

        # The number of hours to which initial food decay will be synced. When a food item is dropped, it's initial expiration date will be rounded to the closest multiple of this (in hours).
        # Min: 1
        # Max: 48
        I:decayStackTime=6

        # If false, crops will never die under any circumstances. THIS DOES NOT MEAN THEY WILL ALWAYS GROW!
        B:enableCropDeath=true

        # Modifier for how long fruit trees take to grow trunks / leaves / fruits.
        # Min: 0.01
        # Max: 100.0
        D:fruitTreeGrowthTimeModifier=1.0

        # Defines fruit tree rarity to generate, in 1 / N chunks. 0 = Disable
        # Min: 0
        # Max: 2147483647
        I:fruitTreeRarity=80
    }

    ##########################################################################################################
    # misc
    #--------------------------------------------------------------------------------------------------------#
    # Miscelaneous
    ##########################################################################################################

    misc {
        # Berry bush movement modifier. Lower = Slower, Higher = Faster. 1 = No slow down. (Speed * this = slow).
        # Min: 0.0
        # Max: 1.0
        D:berryBushMovementModifier=0.1

        # List of fluids allowed to be picked up by blue steel bucket
        S:blueSteelBucketWhitelist <
            lava
         >

        # Damage dealt to an entity when a feather is harvested.
        # Min: 0.0
        # Max: 1.7976931348623157E308
        D:damagePerFeather=0.6

        # The default length of a month (in days) when a new world is started. This can be changed in existing worlds via the /timetfc command.
        # Min: 1
        # Max: 2147483647
        I:defaultMonthLength=8

        # Add iron ore dictionary (ie: ingotIron, oreIron) to wrought iron items?
        B:dictionaryIron=false

        # Add plate ore dictionary (plateIron, plateBronze) to sheets?
        B:dictionaryPlates=false

        # Chance for the fire starter to be successful
        # Min: 0.0
        # Max: 1.0
        D:fireStarterChance=0.5

        # If true, the player will spawn with the TFC guidebook
        B:giveBook=true

        # Leaf block movement modifier. Lower = Slower, Higher = Faster. 1 = No slow down. (Speed * this = slow).
        # Min: 0.0
        # Max: 1.0
        D:leafMovementModifier=0.1

        # This controls the time it takes to mine log blocks. 1.0 = Like vanilla, 7.5 = Classic TFC
        # Min: 1.0
        # Max: 1000.0
        D:logMiningTimeModifier=7.5

        # Generic movement modifier. Lower = Slower, Higher = Faster. 1 = No slow down. Note: this is a little different than other densities (leaf / berry bush), because this actually functions as a maximum slow down. Actual value is dependent on the plant and it's age.
        # Min: 0.0
        # Max: 1.0
        D:minimumPlantMovementModifier=0.0

        # The amount of metal contained in a normal ore.
        # Min: 1
        # Max: 10000
        I:normalOreMetalAmount=25

        # Chance for a plant to grow each random tick, does not include crops. Lower = slower growth.
        # Min: 0.0
        # Max: 1.0
        D:plantGrowthRate=0.01

        # Entities that can be plucked for feathers.
        S:pluckableEntities <
            tfc:chickentfc
            tfc:pheasanttfc
            tfc:parrottfc
            tfc:ducktfc
            tfc:grousetfc
            tfc:pheasanttfc
            tfc:quailtfc
            tfc:turkeytfc
         >

        # The amount of metal contained in a poor ore.
        # Min: 1
        # Max: 10000
        I:poorOreMetalAmount=15

        # List of fluids allowed to be picked up by red steel bucket
        S:redSteelBucketWhitelist <
            fresh_water
            hot_water
            salt_water
            water
         >

        # The amount of metal contained in a rich ore.
        # Min: 1
        # Max: 10000
        I:richOreMetalAmount=35

        # This controls the time it takes to mine rock blocks. 1.0 = Like vanilla, 10.0 = Classic TFC
        # Min: 1.0
        # Max: 1000.0
        D:rockMiningTimeModifier=10.0

        # The amount of metal contained in a small ore / nugget.
        # Min: 1
        # Max: 10000
        I:smallOreMetalAmount=10

        # Generic snow movement modifier. Lower = Slower, Higher = Faster. 1 = No slow down. (Speed * this = slow).
        # Min: 0.0
        # Max: 1.0
        D:snowMovementModifier=0.85

        # Chance that mining a raw stone will drop a gem.
        # Gem grade is random from: 16/31 Chipped, 8/31 Flawed, 4/31 Normal, 2/31 Flawless and 1/31 Exquisite.
        # Min: 0.0
        # Max: 1.0
        D:stoneGemDropChance=0.003875

        # List of fluids allowed to be picked up by wooden bucket
        S:woodenBucketWhitelist <
            fresh_water
            hot_water
            salt_water
            water
            limewater
            tannin
            olive_oil
            olive_oil_water
            vinegar
            rum
            beer
            whiskey
            rye_whiskey
            corn_whiskey
            sake
            vodka
            cider
            brine
            milk
            milk_curdled
            milk_vinegar
            white_dye
            orange_dye
            magenta_dye
            light_blue_dye
            yellow_dye
            lime_dye
            pink_dye
            gray_dye
            light_gray_dye
            cyan_dye
            purple_dye
            blue_dye
            brown_dye
            green_dye
            red_dye
            black_dye
         >
    }

}


