# Configuration file

general {
    # If true, max health will be capped at 6 hearts and absorption at 2 hearts per limb. If false, the health cap will be much higher (64 hearts normal and 16 absorption)
    B:capMaxHealth=false

    # Enabled additional debug logs - May slow down the game and will increase log file size
    # Only enable for special purposes
    B:debug=false

    # Set to true to enable the debuff sounds. Requieres enableDebuffs to be true
    B:enableSoundSystem=true

    # If true, many damage distributions will be more realistic, but this will also cause them to be harder
    # If enabled, e.g. drowing will only damage your body instead of your body and head last
    B:hardMode=true

    # If true, max health is scaled to your hearts, and the config entries get multiplier to match the max health
    B:scaleMaxHealth=true

    # If true, all usages of setHealth from other mods will be captured. Should not cause any problems, but allow mods like scaling health bandages to apply
    B:watchSetHealth=false

    ##########################################################################################################
    # damagesystem
    #--------------------------------------------------------------------------------------------------------#
    # Settings regarding the max health of the body's parts. 2 = 1 heart
    ##########################################################################################################

    damagesystem {
        B:causeDeathBody=true
        B:causeDeathHead=true

        # Min: 2
        # Max: 12
        I:maxHealthBody=6

        # Min: 2
        # Max: 12
        I:maxHealthHead=6

        # Min: 2
        # Max: 12
        I:maxHealthLeftArm=6

        # Min: 2
        # Max: 12
        I:maxHealthLeftFoot=6

        # Min: 2
        # Max: 12
        I:maxHealthLeftLeg=6

        # Min: 2
        # Max: 12
        I:maxHealthRightArm=6

        # Min: 2
        # Max: 12
        I:maxHealthRightFoot=6

        # Min: 2
        # Max: 12
        I:maxHealthRightLeg=6
    }

    ##########################################################################################################
    # overlay
    #--------------------------------------------------------------------------------------------------------#
    # Settings regarding the health overlay when ingame
    ##########################################################################################################

    overlay {
        # Determines the transparency of the overlay. 200 = Maximum transparency, 0 = Fully opaque
        # Min: 0
        # Max: 200
        I:alpha=50

        # If true the overlay will automatically be hidden while health isn't changing. It will be shown when connecting and any health changes
        B:hideOnNoChange=true

        # Valid values:
        # OFF
        # NUMBERS
        # HEARTS
        # PLAYER_MODEL
        S:overlayMode=PLAYER_MODEL

        # The relative point of the overlay
        # Valid values:
        # TOP_LEFT
        # TOP_RIGHT
        # BOTTOM_RIGHT
        # BOTTOM_LEFT
        S:pos=BOTTOM_RIGHT

        # True if the main health bar should be rendered (Will be average health)
        B:showVanillaHealthBar=true

        # The offset on the x axis
        I:xOffset=0

        # The offset on the y axis
        I:yOffset=0
    }

    ##########################################################################################################
    # externalhealing
    #--------------------------------------------------------------------------------------------------------#
    # Settings regarding external healing system(like vanilla potions or natural regeneration
    ##########################################################################################################

    externalhealing {
        # Allow vanilla's natural regeneration. Requires "allowOtherHealingItems" to be true
        # **WARNING** This sets the gamerule "naturalRegeneration" for all of your worlds internally, so it persists even if you remove the mod
        B:allowNaturalRegeneration=false

        # If false, healing potions and other healing items will have no effect
        B:allowOtherHealingItems=true

        # The value vanilla's natural regeneration will be multiplied with. Has no effect if "allowNaturalRegeneration" is disabled
        # Min: 0.0
        # Max: 20.0
        D:naturalRegenMultiplier=1.0

        # The value external regen will be multiplied with. Has no effect if "allowOtherHealingItems" is disabled
        # Min: 0.0
        # Max: 20.0
        D:otherRegenMultiplier=1.0

        # Specifies how much percent of the max health should be restored when sleeping
        # Min: 0.0
        # Max: 1.0
        D:sleepHealPercentage=0.50
    }

    ##########################################################################################################
    # debuffs
    #--------------------------------------------------------------------------------------------------------#
    # Enable/Disable specify debuffs on specific body parts
    ##########################################################################################################

    debuffs {

        head {
            B:blindness=true
            B:nausea=false

            ##########################################################################################################
            # blindnessconditions
            #--------------------------------------------------------------------------------------------------------#
            # Holds the information how the debuff should be applied at different damage taken. Only use this if you know what you are doing.
            ##########################################################################################################

            blindnessconditions {
                # How much damage the user must have taken for the debuff to apply at the mapped length. Must be sorted so the **highest** value comes first. 2 = 1 heart
                # Min: 0.0
                # Max: 10.0
                D:damageTaken <
                    6.0
                    3.0
                 >

                # How long the debuff should stay. If the first condition from the damageTaken config is met, the first value in this list will be taken
                # Min: 0
                # Max: 32767
                I:debuffLength <
                    50
                    30
                 >
            }

            ##########################################################################################################
            # nauseaconditions
            #--------------------------------------------------------------------------------------------------------#
            # Holds the information how the debuff should be applied at different damage taken. Only use this if you know what you are doing.
            ##########################################################################################################

            nauseaconditions {
                # How much damage the user must have taken for the debuff to apply at the mapped length. Must be sorted so the **highest** value comes first. 2 = 1 heart
                # Min: 0.0
                # Max: 10.0
                D:damageTaken <
                    6.0
                    3.0
                 >

                # How long the debuff should stay. If the first condition from the damageTaken config is met, the first value in this list will be taken
                # Min: 0
                # Max: 32767
                I:debuffLength <
                    150
                    100
                 >
            }

        }

        body {
            B:nausea=true
            B:weakness=true

            ##########################################################################################################
            # nauseaconditions
            #--------------------------------------------------------------------------------------------------------#
            # Holds the information how the debuff should be applied at different damage taken. Only use this if you know what you are doing.
            ##########################################################################################################

            nauseaconditions {
                # How much damage the user must have taken for the debuff to apply at the mapped length. Must be sorted so the **highest** value comes first. 2 = 1 heart
                # Min: 0.0
                # Max: 10.0
                D:damageTaken <
                    6.0
                    3.0
                 >

                # How long the debuff should stay. If the first condition from the damageTaken config is met, the first value in this list will be taken
                # Min: 0
                # Max: 32767
                I:debuffLength <
                    100
                    50
                 >
            }

            ##########################################################################################################
            # weaknessconditions
            #--------------------------------------------------------------------------------------------------------#
            # Holds the information how the debuff should be applied at different health left. Only use this if you know what you are doing.
            ##########################################################################################################

            weaknessconditions {
                # How strong the potion effect should stay. If the first condition from the healthPercentageLeft config is met, the first value in this list will be taken
                # Min: 0
                # Max: 127
                I:debuffStrength <
                    2
                    1
                 >

                # How much health the user must have left for the debuff to apply at the mapped length. Must be sorted so the **lowest** value comes first
                # Min: 0.0
                # Max: 1.0
                D:healthPercentageLeft <
                    0.10999999940395355
                    0.20999999344348907
                 >
            }

        }

        arms {
            B:mining_fatigue=true

            ##########################################################################################################
            # miningfatigueconditions
            #--------------------------------------------------------------------------------------------------------#
            # Holds the information how the debuff should be applied at different health left. Only use this if you know what you are doing.
            ##########################################################################################################

            miningfatigueconditions {
                # How strong the potion effect should stay. If the first condition from the healthPercentageLeft config is met, the first value in this list will be taken
                # Min: 0
                # Max: 127
                I:debuffStrength <
                    2
                    1
                 >

                # How much health the user must have left for the debuff to apply at the mapped length. Must be sorted so the **lowest** value comes first
                # Min: 0.0
                # Max: 1.0
                D:healthPercentageLeft <
                    0.009999999776482582
                    0.20999999344348907
                 >
            }

        }

        legsandfeet {
            B:slowness=true

            ##########################################################################################################
            # slownessconditions
            #--------------------------------------------------------------------------------------------------------#
            # Holds the information how the debuff should be applied at different health left. Only use this if you know what you are doing.
            ##########################################################################################################

            slownessconditions {
                # How strong the potion effect should stay. If the first condition from the healthPercentageLeft config is met, the first value in this list will be taken
                # Min: 0
                # Max: 127
                I:debuffStrength <
                    4
                    2
                    1
                 >

                # How much health the user must have left for the debuff to apply at the mapped length. Must be sorted so the **lowest** value comes first
                # Min: 0.0
                # Max: 1.0
                D:healthPercentageLeft <
                    0.009999999776482582
                    0.20999999344348907
                    0.4099999964237213
                 >
            }

        }

    }

    ##########################################################################################################
    # internalhealing
    #--------------------------------------------------------------------------------------------------------#
    # Settings regarding the internal healing system
    ##########################################################################################################

    internalhealing {

        ##########################################################################################################
        # bandage
        #--------------------------------------------------------------------------------------------------------#
        # Settings for the bandage item
        ##########################################################################################################

        bandage {
            # The time it takes in the GUI to apply the item in milliseconds
            # Min: 0
            # Max: 16000
            I:applyTime=3000

            # The time it takes for a single heal to trigger. Total time this item is active = this * totalHeals
            # Min: 1
            # Max: 32767
            I:secondsPerHeal=4

            # The total heals this item does when applied. 1 heal = half a heart
            # Min: 1
            # Max: 127
            I:totalHeals=6
        }

        ##########################################################################################################
        # plaster
        #--------------------------------------------------------------------------------------------------------#
        # Settings for the plaster item
        ##########################################################################################################

        plaster {
            # The time it takes in the GUI to apply the item in milliseconds
            # Min: 0
            # Max: 16000
            I:applyTime=2000

            # The time it takes for a single heal to trigger. Total time this item is active = this * totalHeals
            # Min: 1
            # Max: 32767
            I:secondsPerHeal=2

            # The total heals this item does when applied. 1 heal = half a heart
            # Min: 1
            # Max: 127
            I:totalHeals=3
        }

    }

}


