# This is the default data config file for AcademyCraft.
# It is automatically copied to ".minecraft/config" folder for customization reference.

ac.ability {

  # Global ability-related data.
  data {
    cp_recover_cooldown: 15
    cp_recover_speed: 1.0

    overload_recover_cooldown: 32
    overload_recover_speed: 1.0

    maxcp_incr_rate: 0.075 # The max cp increase rate (multiplied by CP consumption)
    maxo_incr_rate: 0.174 # The max overload increase rate (multiplied by Overload consumption)
    prog_incr_rate: 1.0 # The level progress increate rate.

    init_cp: [54000, 54000, 84000, 120000, 174000, 240000]
    add_cp: [0, 27000, 30000, 45000, 51000, 360000] # The additional cp that can be achieved by using skills.
    init_overload: [3000, 3000, 4500, 7200, 10500, 15000]
    add_overload: [0, 1200, 2100, 2400, 3000, 15000] # The additional overload that can be achieved by using skills.
  }

  # Global skill calculation interferers.
  calc_global {
    # Global damage scale.
    damage_scale: 5.4
  }

  category {
    #
    # Skill data explained:
    # Per-skill configuration can be found in <category>.<skill_name> path.
    #  There are some common properties that are shared, listed below:
    #
    # Property                         | Description                                | Default value
    # ---------------------------------|--------------------------------------------|----------------
    #  enabled (boolean)               | Whether the skill can be learned or not.   | true
    #  damage_scale (float)            | A scale of skill-to-entity damage.         | 1.0
    #  cp_consume_speed (float)        | How fast this skill consumes CP.           | 1.0
    #  overload_consume_speed (float)  | How fast this skill overloads.             | 1.0
    #  exp_incr_speed (float)          | How fast this skill's experience increases.| 1.0
    # *destroy_blocks (boolean)        | Whether this skill destroys blocks.        | true
    # -----------------------------------------------------------------------------------------------
    # *: This property is only applicable on skills that have associated effects.
    # There is an example in electromaster/arc_gen skill.
    #

    generic {
      skills {
        brain_course {}
        brain_course_advanced {}
        mind_course {}
      }
    }
    electromaster {
      common {
        prog_incr_rate: 1.0
      }
      skills {
        arc_gen {
          # An example for common properties.
          enabled: true,
          damage_scale: 20.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
        }
        charging {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
        }
        body_intensify {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
        }
        mine_detect {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
        }
        mag_movement {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
        }
        thunder_bolt {
          damage_scale: 20.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
        }
        railgun {
          damage_scale: 20.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
        }
        thunder_clap {
          damage_scale: 20.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
        }
        mag_manip {
          damage_scale: 20.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
        }
      }
    }
    meltdowner {
      common {
        prog_incr_rate: 1.0
      }
      skills {
        electron_bomb {
          damage_scale: 20.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        rad_intensify {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        scatter_bomb {
          damage_scale: 20.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        light_shield {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        meltdowner {
          damage_scale: 20.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        mine_ray_basic {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        ray_barrage {
          damage_scale: 20.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        jet_engine {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        mine_ray_expert {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        mine_ray_luck {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        electron_missile {
          damage_scale: 20.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
      }
    }
    teleporter {
      common {
        prog_incr_rate: 1.0
      }
      skills {
        threatening_teleport {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        dim_folding_theorem {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        penetrate_teleport {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        mark_teleport {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        flesh_ripping {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        location_teleport {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        shift_tp {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        space_fluct {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        flashing {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
      }
    }
    vecmanip {
      common {
        prog_incr_rate: 1.0
        affected_entities { # Configuration for VecManip/VecDeviation affected entities.
          # Assign difficulties to entity names. The difficulty is proportion to cp/overload consumed when an
          # entity is deflected.
          #
          # If not specified here, default difficulty is 1.0.
          difficulties: [
            {
              name: "Arrow",
              difficulty: 1.0
            },
            {
              name: "ThrownPotion",
              difficulty: 1.4
            },
            {
              name: "Snowball",
              difficulty: 0.1
            }
          ]

          # Excluded entity names. Entities with name in this list will not be affected.
          excluded: [
            "Item", "Mob", "Monster", "XPOrb"
          ]
        }
      }
      skills {
        dir_shock {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        ground_shock {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        vec_accel {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        vec_deviation {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        dir_blast {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        storm_wing {
          damage_scale: 6.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        blood_retro {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        vec_reflection {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
        plasma_cannon {
          damage_scale: 10.0,
          cp_consume_speed: 1.0,
          overload_consume_speed: 1.0,
          overload_incr_speed: 1.0
		}
      }
    }
  }
}