Topic: Conditional Skill Effect Help

These forums are closing and migrating to a new location! Please go to forums.darkestdungeon.com and create your account. Feel free to bring your posts over to this new forum.

This topic contains 0 replies, has 1 voice, and was last updated by  Kinnex 2 years, 9 months ago.

  • Author
    Posts
  • #324936

    Kinnex
    Participant

    I’ve seen some skills that cure / heal, and wanted to make a custom skill for my class that is unique. What doesn’t kill me, makes me stronger! The initial idea being to cure poison / bleeding, apply buffs (armor if bleeding, +dmg if poisoned), and a heal (increased if bleeding, increased if poisoned).

    I’m fairly certain Darkest Dungeon does not have an initial condition option. Where you can apply a buff if they have a condition initially, and keep the buff if the condition is removed. So I changed up the initial idea to not cure the conditions, but apply buffs while afflicted with them. As far as I know, there is also no way to apply a heal through a “buff” (class.buffs.json) file.

    So I came up with an idea to work around the healing/buff issue. Apply a .dotHpHeal 0! And then buff “hp_heal_amount” while “actorStatus” is “bleeding” and/or “poisoned”. Theoretically, that should do exactly what I want. Healing, scaled with the bleed / poison, as long as they have the condition applied.

    (Bug?) Unfortunately, the .dotHpHeal does not work with 0. I had to use 1 at minimum for the buff to get applied.
    (Bug?) Also, .dotHpHeal does not work with ” .duration 1 .buff_duration_type combat_end”. I had to used a number of rounds.
    (Bug?) .dotHpHeal does not seem to be accepting the “hp_heal_amount” when bleeding / poisoned.

    The in game tool tips are a little confusing. I am wondering if the effects are the opposite of what I thought they would be?
    “+26% Prot vs. Bleeding” = +26% prot if attacked by a bleeding enemy? (Rather than +26% prot while bleeding)
    “+19% DMG vs. Poisoned” = +19% dmg when attacking an poisoned enemy? (Rather than +19% dmg while poisoned)
    “+3 Additional HP Healed vs. Bleeding” = +3 healing received by a bleeding / poioned ally/enemy? (Rather than +3 healing while bleeding / poisoned)
    “+3 Additional HP Healed vs. Poisoned”

    I include the below entries from the .json and .darkest files in case I missed something obvious in them that someone can spot.

    Sample parts of class.buffs.json file:

          {
            "id" : "ck_bleeding_armor_1",
            "stat_type" : "combat_stat_add",
            "stat_sub_type" : "protection_rating",
            "amount" : 0.22,
            "duration_type" : "combat_end",
            "duration" : 1,
            "remove_if_not_active" : false,
            "rule_type" : "actorStatus",
            "is_false_rule" : false,
            "rule_data" : {
               "float" : 0,
               "string" : "bleeding"
            }
          },
          {
            "id" : "ck_poisoned_ldmg_1",
            "stat_type" : "combat_stat_multiply",
            "stat_sub_type" : "damage_low",
            "amount" : 0.17,
            "duration_type" : "combat_end",
            "duration" : 1,
            "remove_if_not_active" : false,
            "rule_type" : "actorStatus",
            "is_false_rule" : false,
            "rule_data" : {
               "float" : 0,
               "string" : "poisoned"
            }
          },
          {
            "id" : "ck_poisoned_hdmg_1",
            "stat_type" : "combat_stat_multiply",
            "stat_sub_type" : "damage_high",
            "amount" : 0.17,
            "duration_type" : "combat_end",
            "duration" : 1,
            "remove_if_not_active" : false,
            "rule_type" : "actorStatus",
            "is_false_rule" : false,
            "rule_data" : {
               "float" : 0,
               "string" : "poisoned"
            }
          },
          {
             "id" : "ck_bleeding_hot_1",
             "stat_type" : "hp_heal_amount",
             "stat_sub_type" : "",
             "amount" : 3.0,
             "duration_type" : "combat_end",
             "duration" : 1,
             "remove_if_not_active" : false,
             "rule_type" : "actorStatus",
             "is_false_rule" : false,
             "rule_data" : {
                "float" : 0,
                "string" : "bleeding"
             }
          },
          {
             "id" : "ck_poisoned_hot_1",
             "stat_type" : "hp_heal_amount",
             "stat_sub_type" : "",
             "amount" : 3.0,
             "duration_type" : "combat_end",
             "duration" : 1,
             "remove_if_not_active" : false,
             "rule_type" : "actorStatus",
             "is_false_rule" : false,
             "rule_data" : {
                "float" : 0,
                "string" : "poisoned"
             }
          },

    Sample from class.effects.darkest:

    effect: .name "CK BC 1" .target "performer" .curio_result_type "positive" .chance 100% .buff_ids "ck_bleeding_armor_1" "ck_poisoned_ldmg_1" "ck_poisoned_hdmg_1" .on_hit true .on_miss true
    effect: .name "CK BC HOT 1" .target "performer" .curio_result_type "positive" .chance 100% .buff_ids "ck_bleeding_hot_1" "ck_poisoned_hot_1" .on_hit true .on_miss true
    effect: .name "CK BC HOT" .target "performer" .curio_result_type "positive" .chance 100% .duration 15 .dotHpHeal 1 .on_hit true .on_miss true

    Sample from class.info.darkest:
    combat_skill: .id "blood_of_chaos" .level 0 .type "melee" .atk 0% .dmg 0% .crit 0% .per_battle_limit 1 .launch 4321 .target .is_crit_valid True .effect "CK BC 1" "CK BC HOT 1" "CK BC HOT"

Viewing 1 post (of 1 total)

The forum ‘Modding’ is closed to new topics and replies.