Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Xelias

21
RMXP Script Database / Re: [XP] Blizz-ABS
October 28, 2009, 11:18:06 am
Quote from: Blizzard on October 28, 2009, 06:05:01 am
By observed DPS (Damage Per Second). i.e. If an enemy sees you do 10000 damage to an ally and he was tracking you for 10 seconds (which is 1000 DPS) and if he has 100 HP, he'll realize that you can kill him in 0.1 seconds and start running for his life. xD

Yeah, but aren't healers more dangerous ? They sure aren't that threatening, but they can be annoying as hell...
22
RMXP Script Database / Re: [XP] Blizz-ABS
October 28, 2009, 04:10:38 am
Here is a question... Observing enemies can attack the "most dangerous" actor, did you say. How is danger calculated ? Isn't there a Threat System that could be compatible with / integrated in BABS ?
23
Bump... again...

EDIT : Well, I guess I managed to do it by myself... I think.
24
RMXP Script Database / Re: [XP] Blizz-ABS
October 22, 2009, 11:35:43 pm
Thanks

Worst part is, I actually searched in this category. :haha:
25
RMXP Script Database / Re: [XP] Blizz-ABS
October 22, 2009, 03:25:52 pm
Question : What is the corresponding time between Status effect duration and real time duration ?
26
Up please.
27
I would like to use the "License" skill system used in this demo. Unfortunately, I don't know which scripts to move, which scripts to modify...
http://rpgcreative.net/rpgmaker/script/demo/ADB.rar
The License Scene should be accessible through the Menu, also.

Thanks
28
Script Requests / Re: Equipment with Levels
October 03, 2009, 01:21:56 am
Great ! (Goes to prepare the game's Equipment List and the corresponding levels)
29
Script Requests / Equipment with Levels
October 02, 2009, 12:39:27 pm
I would like a script that allows a class to gain the power to equip new equipment with levels

Example : Warrior can equip at :
LV1 = Bronze Sword, Bronze Shield (...)
LV10 = Mithril Sword, Sbield (...)

It would entirely be customizable

Compatible with
Blizz-ABS
Class Changing scripts
30
RPG Maker Scripts / Re: Attack without weapons
September 27, 2009, 11:40:54 am
Spoiler: ShowHide
#==============================================================================
# ■ Game_Battler (分割定義 3)
#------------------------------------------------------------------------------
#  バトラーを扱うクラスです。このクラスは Game_Actor クラスと Game_Enemy クラ
# スのスーパークラスとして使用されます。
# Modified by Xelias
#==============================================================================

class Game_Battler
  #--------------------------------------------------------------------------
  # ● スキルの使用可能判定
  #     skill_id : スキル ID
  #--------------------------------------------------------------------------
  def skill_can_use?(skill_id)
    # SP が足りない場合は使用不可
    if $data_skills[skill_id].sp_cost > self.sp
      return false
    end
    # 戦闘不能の場合は使用不可
    if dead?
      return false
    end
    # 沈黙状態の場合、物理スキル以外は使用不可
    if $data_skills[skill_id].atk_f == 0 and self.restriction == 1
      return false
    end
    # 使用可能時を取得
    occasion = $data_skills[skill_id].occasion
    # 戦闘中の場合
    if $game_temp.in_battle
      # [常時] または [バトルのみ] なら使用可
      return (occasion == 0 or occasion == 1)
    # 戦闘中ではない場合
    else
      # [常時] または [メニューのみ] なら使用可
      return (occasion == 0 or occasion == 2)
    end
  end
  #--------------------------------------------------------------------------
  # ● 通常攻撃の効果適用
  #     attacker : 攻撃者 (バトラー)
  #--------------------------------------------------------------------------
  def attack_effect(attacker)
    # クリティカルフラグをクリア
    self.critical = false
    # 第一命中判定
    hit_result = (rand(100) < attacker.hit)
    # 命中の場合
    if hit_result == true
      # 基本ダメージを計算
      atk = [attacker.atk - self.pdef / 2, 0].max
      if atk > 0 #Here
      self.damage = atk * (20 + attacker.str) / 20
      else self.damage =  attacker.str * (20 + attacker.str) / 2 #Here
      # 属性修正
      if atk > 0 #Here
      self.damage *= elements_correct(attacker.element_set)
      end #Here
      self.damage /= 100
      # ダメージの符号が正の場合
      if self.damage > 0
        # クリティカル修正
        if rand(100) < 4 * attacker.dex / self.agi
          self.damage *= 2
          self.critical = true
        end
        # 防御修正
        if self.guarding?
          self.damage /= 2
        end
      end
      # 分散
      if self.damage.abs > 0
        amp = [self.damage.abs * 15 / 100, 1].max
        self.damage += rand(amp+1) + rand(amp+1) - amp
      end
      # 第二命中判定
      eva = 8 * self.agi / attacker.dex + self.eva
      hit = self.damage < 0 ? 100 : 100 - eva
      hit = self.cant_evade? ? 100 : hit
      hit_result = (rand(100) < hit)
    end
    # 命中の場合
    if hit_result == true
      # ステート衝撃解除
      remove_states_shock
      # HP からダメージを減算
      self.hp -= self.damage
      # ステート変化
      @state_changed = false
      states_plus(attacker.plus_state_set)
      states_minus(attacker.minus_state_set)
    # ミスの場合
    else
      # ダメージに "Miss" を設定
      self.damage = "Manqué!"
      # クリティカルフラグをクリア
      self.critical = false
    end
    # メソッド終了
    return true
  end
  #--------------------------------------------------------------------------
  # ● スキルの効果適用
  #     user  : スキルの使用者 (バトラー)
  #     skill : スキル
  #--------------------------------------------------------------------------
  def skill_effect(user, skill)
    # クリティカルフラグをクリア
    self.critical = false
    # スキルの効果範囲が HP 1 以上の味方で、自分の HP が 0、
    # またはスキルの効果範囲が HP 0 の味方で、自分の HP が 1 以上の場合
    if ((skill.scope == 3 or skill.scope == 4) and self.hp == 0) or
       ((skill.scope == 5 or skill.scope == 6) and self.hp >= 1)
      # メソッド終了
      return false
    end
    # 有効フラグをクリア
    effective = false
    # コモンイベント ID が有効の場合は有効フラグをセット
    effective |= skill.common_event_id > 0
    # 第一命中判定
    hit = skill.hit
    if skill.atk_f > 0
      hit *= user.hit / 100
    end
    hit_result = (rand(100) < hit)
    # 不確実なスキルの場合は有効フラグをセット
    effective |= hit < 100
    # 命中の場合
    if hit_result == true
      # 威力を計算
      power = skill.power + user.atk * skill.atk_f / 100
      if power > 0
        power -= self.pdef * skill.pdef_f / 200
        power -= self.mdef * skill.mdef_f / 200
        power = [power, 0].max
      end
      # 倍率を計算
      rate = 20
      rate += (user.str * skill.str_f / 100)
      rate += (user.dex * skill.dex_f / 100)
      rate += (user.agi * skill.agi_f / 100)
      rate += (user.int * skill.int_f / 100)
      # 基本ダメージを計算
      self.damage = power * rate / 20
      # 属性修正
      self.damage *= elements_correct(skill.element_set)
      self.damage /= 100
      # ダメージの符号が正の場合
      if self.damage > 0
        # 防御修正
        if self.guarding?
          self.damage /= 2
        end
      end
      # 分散
      if skill.variance > 0 and self.damage.abs > 0
        amp = [self.damage.abs * skill.variance / 100, 1].max
        self.damage += rand(amp+1) + rand(amp+1) - amp
      end
      # 第二命中判定
      eva = 8 * self.agi / user.dex + self.eva
      hit = self.damage < 0 ? 100 : 100 - eva * skill.eva_f / 100
      hit = self.cant_evade? ? 100 : hit
      hit_result = (rand(100) < hit)
      # 不確実なスキルの場合は有効フラグをセット
      effective |= hit < 100
    end
    # 命中の場合
    if hit_result == true
      # 威力 0 以外の物理攻撃の場合
      if skill.power != 0 and skill.atk_f > 0
        # ステート衝撃解除
        remove_states_shock
        # 有効フラグをセット
        effective = true
      end
      # HP からダメージを減算
      last_hp = self.hp
      self.hp -= self.damage
      effective |= self.hp != last_hp
      # ステート変化
      @state_changed = false
      effective |= states_plus(skill.plus_state_set)
      effective |= states_minus(skill.minus_state_set)
      # 威力が 0 の場合
      if skill.power == 0
        # ダメージに空文字列を設定
        self.damage = ""
        # ステートに変化がない場合
        unless @state_changed
          # ダメージに "Miss" を設定
          self.damage = "Manqué!"
        end
      end
    # ミスの場合
    else
      # ダメージに "Miss" を設定
      self.damage = "Manqué!"
    end
    # 戦闘中でない場合
    unless $game_temp.in_battle
      # ダメージに nil を設定
      self.damage = nil
    end
    # メソッド終了
    return effective
  end
  #--------------------------------------------------------------------------
  # ● アイテムの効果適用
  #     item : アイテム
  #--------------------------------------------------------------------------
  def item_effect(item)
    # クリティカルフラグをクリア
    self.critical = false
    # アイテムの効果範囲が HP 1 以上の味方で、自分の HP が 0、
    # またはアイテムの効果範囲が HP 0 の味方で、自分の HP が 1 以上の場合
    if ((item.scope == 3 or item.scope == 4) and self.hp == 0) or
       ((item.scope == 5 or item.scope == 6) and self.hp >= 1)
      # メソッド終了
      return false
    end
    # 有効フラグをクリア
    effective = false
    # コモンイベント ID が有効の場合は有効フラグをセット
    effective |= item.common_event_id > 0
    # 命中判定
    hit_result = (rand(100) < item.hit)
    # 不確実なスキルの場合は有効フラグをセット
    effective |= item.hit < 100
    # 命中の場合
    if hit_result == true
      # 回復量を計算
      recover_hp = maxhp * item.recover_hp_rate / 100 + item.recover_hp
      recover_sp = maxsp * item.recover_sp_rate / 100 + item.recover_sp
      if recover_hp < 0
        recover_hp += self.pdef * item.pdef_f / 20
        recover_hp += self.mdef * item.mdef_f / 20
        recover_hp = [recover_hp, 0].min
      end
      # 属性修正
      recover_hp *= elements_correct(item.element_set)
      recover_hp /= 100
      recover_sp *= elements_correct(item.element_set)
      recover_sp /= 100
      # 分散
      if item.variance > 0 and recover_hp.abs > 0
        amp = [recover_hp.abs * item.variance / 100, 1].max
        recover_hp += rand(amp+1) + rand(amp+1) - amp
      end
      if item.variance > 0 and recover_sp.abs > 0
        amp = [recover_sp.abs * item.variance / 100, 1].max
        recover_sp += rand(amp+1) + rand(amp+1) - amp
      end
      # 回復量の符号が負の場合
      if recover_hp < 0
        # 防御修正
        if self.guarding?
          recover_hp /= 2
        end
      end
      # HP 回復量の符号を反転し、ダメージの値に設定
      self.damage = -recover_hp
      # HP および SP を回復
      last_hp = self.hp
      last_sp = self.sp
      self.hp += recover_hp
      self.sp += recover_sp
      effective |= self.hp != last_hp
      effective |= self.sp != last_sp
      # ステート変化
      @state_changed = false
      effective |= states_plus(item.plus_state_set)
      effective |= states_minus(item.minus_state_set)
      # パラメータ上昇値が有効の場合
      if item.parameter_type > 0 and item.parameter_points != 0
        # パラメータで分岐
        case item.parameter_type
        when 1  # MaxHP
          @maxhp_plus += item.parameter_points
        when 2  # MaxSP
          @maxsp_plus += item.parameter_points
        when 3  # 腕力
          @str_plus += item.parameter_points
        when 4  # 器用さ
          @dex_plus += item.parameter_points
        when 5  # 素早さ
          @agi_plus += item.parameter_points
        when 6  # 魔力
          @int_plus += item.parameter_points
        end
        # 有効フラグをセット
        effective = true
      end
      # HP 回復率と回復量が 0 の場合
      if item.recover_hp_rate == 0 and item.recover_hp == 0
        # ダメージに空文字列を設定
        self.damage = ""
        # SP 回復率と回復量が 0、パラメータ上昇値が無効の場合
        if item.recover_sp_rate == 0 and item.recover_sp == 0 and
           (item.parameter_type == 0 or item.parameter_points == 0)
          # ステートに変化がない場合
          unless @state_changed
            # ダメージに "Miss" を設定
            self.damage = "Manqué!"
          end
        end
      end
    # ミスの場合
    else
      # ダメージに "Miss" を設定
      self.damage = "Manqué!"
    end
    # 戦闘中でない場合
    unless $game_temp.in_battle
      # ダメージに nil を設定
      self.damage = nil
    end
    # メソッド終了
    return effective
  end
  #--------------------------------------------------------------------------
  # ● スリップダメージの効果適用
  #--------------------------------------------------------------------------
  def slip_damage_effect
    # ダメージを設定
    self.damage = self.maxhp / 10
    # 分散
    if self.damage.abs > 0
      amp = [self.damage.abs * 15 / 100, 1].max
      self.damage += rand(amp+1) + rand(amp+1) - amp
    end
    # HP からダメージを減算
    self.hp -= self.damage
    # メソッド終了
    return true
  end
  #--------------------------------------------------------------------------
  # ● 属性修正の計算
  #     element_set : 属性
  #--------------------------------------------------------------------------
  def elements_correct(element_set)
    # 無属性の場合
    if element_set == []
      # 100 を返す
      return 100
    end
    # 与えられた属性の中で最も弱いものを返す
    # ※メソッド element_rate は、このクラスから継承される Game_Actor
    #   および Game_Enemy クラスで定義される
    weakest = -100
    for i in element_set
      weakest = [weakest, self.element_rate(i)].max
    end
    return weakest
  end
end
end #Here

The lines are indicated by a "#Here".
Thanks
31
RPG Maker Scripts / Re: Attack without weapons
September 27, 2009, 11:29:41 am
I feel quite ridiculous...  :^_^':
Feel free to delete this topic. I wanted someone's sincere opinion about it, and...
At least I tried...  :haha:
The worst part is, I hate caps lock. I just looked at the template, and... I guess I was disturbed by the template's <MESSAGES>  :)
I feel kind of concerned by your 3rd comment, the one about compatibility.
Whatever...
32
RPG Maker Scripts / Attack without weapons
September 27, 2009, 01:38:12 am
    Xeliass Barehanded Script Modification
    Authors: Xelias
    Version: 1.0
    Type: Battle Add-on
    Key Term: Battle Add-on



    Introduction

    This script allows a character to inflect damage without any weapons. Damage is calculated as :
    self.damage =  attacker.str * (20 + attacker.str) / 2



    Features


      *Allows barehanded fight
      *What else ?



    Screenshots

    I can't.



    Demo

    No demo required.



    Script

    Spoiler: ShowHide
    [/list]

    #==============================================================================
    # ■ Game_Battler (分割定義 3)
    #------------------------------------------------------------------------------
    #  バトラーを扱うクラスです。このクラスは Game_Actor クラスと Game_Enemy クラ
    # スのスーパークラスとして使用されます。
    # Modified by Xelias
    #==============================================================================

    class Game_Battler
     #--------------------------------------------------------------------------
     # ● スキルの使用可能判定
     #     skill_id : スキル ID
     #--------------------------------------------------------------------------
     def skill_can_use?(skill_id)
       # SP が足りない場合は使用不可
       if $data_skills[skill_id].sp_cost > self.sp
         return false
       end
       # 戦闘不能の場合は使用不可
       if dead?
         return false
       end
       # 沈黙状態の場合、物理スキル以外は使用不可
       if $data_skills[skill_id].atk_f == 0 and self.restriction == 1
         return false
       end
       # 使用可能時を取得
       occasion = $data_skills[skill_id].occasion
       # 戦闘中の場合
       if $game_temp.in_battle
         # [常時] または [バトルのみ] なら使用可
         return (occasion == 0 or occasion == 1)
       # 戦闘中ではない場合
       else
         # [常時] または [メニューのみ] なら使用可
         return (occasion == 0 or occasion == 2)
       end
     end
     #--------------------------------------------------------------------------
     # ● 通常攻撃の効果適用
     #     attacker : 攻撃者 (バトラー)
     #--------------------------------------------------------------------------
     def attack_effect(attacker)
       # クリティカルフラグをクリア
       self.critical = false
       # 第一命中判定
       hit_result = (rand(100) < attacker.hit)
       # 命中の場合
       if hit_result == true
         # 基本ダメージを計算
         atk = [attacker.atk - self.pdef / 2, 0].max
         if atk > 0
         self.damage = atk * (20 + attacker.str) / 20
         else self.damage =  attacker.str * (20 + attacker.str) / 2
         # 属性修正
         if atk > 0
         self.damage *= elements_correct(attacker.element_set)
         end
         self.damage /= 100
         # ダメージの符号が正の場合
         if self.damage > 0
           # クリティカル修正
           if rand(100) < 4 * attacker.dex / self.agi
             self.damage *= 2
             self.critical = true
           end
           # 防御修正
           if self.guarding?
             self.damage /= 2
           end
         end
         # 分散
         if self.damage.abs > 0
           amp = [self.damage.abs * 15 / 100, 1].max
           self.damage += rand(amp+1) + rand(amp+1) - amp
         end
         # 第二命中判定
         eva = 8 * self.agi / attacker.dex + self.eva
         hit = self.damage < 0 ? 100 : 100 - eva
         hit = self.cant_evade? ? 100 : hit
         hit_result = (rand(100) < hit)
       end
       # 命中の場合
       if hit_result == true
         # ステート衝撃解除
         remove_states_shock
         # HP からダメージを減算
         self.hp -= self.damage
         # ステート変化
         @state_changed = false
         states_plus(attacker.plus_state_set)
         states_minus(attacker.minus_state_set)
       # ミスの場合
       else
         # ダメージに "Miss" を設定
         self.damage = "Manqué!"
         # クリティカルフラグをクリア
         self.critical = false
       end
       # メソッド終了
       return true
     end
     #--------------------------------------------------------------------------
     # ● スキルの効果適用
     #     user  : スキルの使用者 (バトラー)
     #     skill : スキル
     #--------------------------------------------------------------------------
     def skill_effect(user, skill)
       # クリティカルフラグをクリア
       self.critical = false
       # スキルの効果範囲が HP 1 以上の味方で、自分の HP が 0、
       # またはスキルの効果範囲が HP 0 の味方で、自分の HP が 1 以上の場合
       if ((skill.scope == 3 or skill.scope == 4) and self.hp == 0) or
          ((skill.scope == 5 or skill.scope == 6) and self.hp >= 1)
         # メソッド終了
         return false
       end
       # 有効フラグをクリア
       effective = false
       # コモンイベント ID が有効の場合は有効フラグをセット
       effective |= skill.common_event_id > 0
       # 第一命中判定
       hit = skill.hit
       if skill.atk_f > 0
         hit *= user.hit / 100
       end
       hit_result = (rand(100) < hit)
       # 不確実なスキルの場合は有効フラグをセット
       effective |= hit < 100
       # 命中の場合
       if hit_result == true
         # 威力を計算
         power = skill.power + user.atk * skill.atk_f / 100
         if power > 0
           power -= self.pdef * skill.pdef_f / 200
           power -= self.mdef * skill.mdef_f / 200
           power = [power, 0].max
         end
         # 倍率を計算
         rate = 20
         rate += (user.str * skill.str_f / 100)
         rate += (user.dex * skill.dex_f / 100)
         rate += (user.agi * skill.agi_f / 100)
         rate += (user.int * skill.int_f / 100)
         # 基本ダメージを計算
         self.damage = power * rate / 20
         # 属性修正
         self.damage *= elements_correct(skill.element_set)
         self.damage /= 100
         # ダメージの符号が正の場合
         if self.damage > 0
           # 防御修正
           if self.guarding?
             self.damage /= 2
           end
         end
         # 分散
         if skill.variance > 0 and self.damage.abs > 0
           amp = [self.damage.abs * skill.variance / 100, 1].max
           self.damage += rand(amp+1) + rand(amp+1) - amp
         end
         # 第二命中判定
         eva = 8 * self.agi / user.dex + self.eva
         hit = self.damage < 0 ? 100 : 100 - eva * skill.eva_f / 100
         hit = self.cant_evade? ? 100 : hit
         hit_result = (rand(100) < hit)
         # 不確実なスキルの場合は有効フラグをセット
         effective |= hit < 100
       end
       # 命中の場合
       if hit_result == true
         # 威力 0 以外の物理攻撃の場合
         if skill.power != 0 and skill.atk_f > 0
           # ステート衝撃解除
           remove_states_shock
           # 有効フラグをセット
           effective = true
         end
         # HP からダメージを減算
         last_hp = self.hp
         self.hp -= self.damage
         effective |= self.hp != last_hp
         # ステート変化
         @state_changed = false
         effective |= states_plus(skill.plus_state_set)
         effective |= states_minus(skill.minus_state_set)
         # 威力が 0 の場合
         if skill.power == 0
           # ダメージに空文字列を設定
           self.damage = ""
           # ステートに変化がない場合
           unless @state_changed
             # ダメージに "Miss" を設定
             self.damage = "Manqué!"
           end
         end
       # ミスの場合
       else
         # ダメージに "Miss" を設定
         self.damage = "Manqué!"
       end
       # 戦闘中でない場合
       unless $game_temp.in_battle
         # ダメージに nil を設定
         self.damage = nil
       end
       # メソッド終了
       return effective
     end
     #--------------------------------------------------------------------------
     # ● アイテムの効果適用
     #     item : アイテム
     #--------------------------------------------------------------------------
     def item_effect(item)
       # クリティカルフラグをクリア
       self.critical = false
       # アイテムの効果範囲が HP 1 以上の味方で、自分の HP が 0、
       # またはアイテムの効果範囲が HP 0 の味方で、自分の HP が 1 以上の場合
       if ((item.scope == 3 or item.scope == 4) and self.hp == 0) or
          ((item.scope == 5 or item.scope == 6) and self.hp >= 1)
         # メソッド終了
         return false
       end
       # 有効フラグをクリア
       effective = false
       # コモンイベント ID が有効の場合は有効フラグをセット
       effective |= item.common_event_id > 0
       # 命中判定
       hit_result = (rand(100) < item.hit)
       # 不確実なスキルの場合は有効フラグをセット
       effective |= item.hit < 100
       # 命中の場合
       if hit_result == true
         # 回復量を計算
         recover_hp = maxhp * item.recover_hp_rate / 100 + item.recover_hp
         recover_sp = maxsp * item.recover_sp_rate / 100 + item.recover_sp
         if recover_hp < 0
           recover_hp += self.pdef * item.pdef_f / 20
           recover_hp += self.mdef * item.mdef_f / 20
           recover_hp = [recover_hp, 0].min
         end
         # 属性修正
         recover_hp *= elements_correct(item.element_set)
         recover_hp /= 100
         recover_sp *= elements_correct(item.element_set)
         recover_sp /= 100
         # 分散
         if item.variance > 0 and recover_hp.abs > 0
           amp = [recover_hp.abs * item.variance / 100, 1].max
           recover_hp += rand(amp+1) + rand(amp+1) - amp
         end
         if item.variance > 0 and recover_sp.abs > 0
           amp = [recover_sp.abs * item.variance / 100, 1].max
           recover_sp += rand(amp+1) + rand(amp+1) - amp
         end
         # 回復量の符号が負の場合
         if recover_hp < 0
           # 防御修正
           if self.guarding?
             recover_hp /= 2
           end
         end
         # HP 回復量の符号を反転し、ダメージの値に設定
         self.damage = -recover_hp
         # HP および SP を回復
         last_hp = self.hp
         last_sp = self.sp
         self.hp += recover_hp
         self.sp += recover_sp
         effective |= self.hp != last_hp
         effective |= self.sp != last_sp
         # ステート変化
         @state_changed = false
         effective |= states_plus(item.plus_state_set)
         effective |= states_minus(item.minus_state_set)
         # パラメータ上昇値が有効の場合
         if item.parameter_type > 0 and item.parameter_points != 0
           # パラメータで分岐
           case item.parameter_type
           when 1  # MaxHP
             @maxhp_plus += item.parameter_points
           when 2  # MaxSP
             @maxsp_plus += item.parameter_points
           when 3  # 腕力
             @str_plus += item.parameter_points
           when 4  # 器用さ
             @dex_plus += item.parameter_points
           when 5  # 素早さ
             @agi_plus += item.parameter_points
           when 6  # 魔力
             @int_plus += item.parameter_points
           end
           # 有効フラグをセット
           effective = true
         end
         # HP 回復率と回復量が 0 の場合
         if item.recover_hp_rate == 0 and item.recover_hp == 0
           # ダメージに空文字列を設定
           self.damage = ""
           # SP 回復率と回復量が 0、パラメータ上昇値が無効の場合
           if item.recover_sp_rate == 0 and item.recover_sp == 0 and
              (item.parameter_type == 0 or item.parameter_points == 0)
             # ステートに変化がない場合
             unless @state_changed
               # ダメージに "Miss" を設定
               self.damage = "Manqué!"
             end
           end
         end
       # ミスの場合
       else
         # ダメージに "Miss" を設定
         self.damage = "Manqué!"
       end
       # 戦闘中でない場合
       unless $game_temp.in_battle
         # ダメージに nil を設定
         self.damage = nil
       end
       # メソッド終了
       return effective
     end
     #--------------------------------------------------------------------------
     # ● スリップダメージの効果適用
     #--------------------------------------------------------------------------
     def slip_damage_effect
       # ダメージを設定
       self.damage = self.maxhp / 10
       # 分散
       if self.damage.abs > 0
         amp = [self.damage.abs * 15 / 100, 1].max
         self.damage += rand(amp+1) + rand(amp+1) - amp
       end
       # HP からダメージを減算
       self.hp -= self.damage
       # メソッド終了
       return true
     end
     #--------------------------------------------------------------------------
     # ● 属性修正の計算
     #     element_set : 属性
     #--------------------------------------------------------------------------
     def elements_correct(element_set)
       # 無属性の場合
       if element_set == []
         # 100 を返す
         return 100
       end
       # 与えられた属性の中で最も弱いものを返す
       # ※メソッド element_rate は、このクラスから継承される Game_Actor
       #   および Game_Enemy クラスで定義される
       weakest = -100
       for i in element_set
         weakest = [weakest, self.element_rate(i)].max
       end
       return weakest
     end
    end
    end




    Instructions

    Replace Game_Battler 3 with this script.



    Compatibility

    I don't know. I really don't know.



    Credits and Thanks


      *The RMXP developement team
      *Blizzard, for tormenting me with his Battle Formulas
      *Xelias



    Author's Notes
    I'M NOT A SCRIPTER ! It's more mathematics than scripting.
    33
    Level Up, Thanks and Resolved !
    34
    I thought about what you said... The answer was quite evident...
    Just replace any "skill_effect(user, skill)" in the add-on by "skill_effect(user, skill, affected_count)" !
    Thanks
    Level Up and Resolved.

    EDIT : Hey ! You're Level 99 now !
    35
    Yes, Seph's Scripts, GTBS and Tons of Add-Ons are SDK Compatible.
    36
    I already tried this and it failed...
    Let's try it again...

    ...

    ...Not really. The same error. And yesterday I tried to put it just below the SDK and at the bottom of the list as well...

    I'll try with Tons of Add-ons then...

    ...

    ...Not a single error message... but did I mention the Add-On script just doesn't work ??? The Add-On I tried (SP damage) just damaged my HP...

    I don't understand !!!

    37
    Basically, it's a compatibility problem with Tons of Add-Ons and GTBS (GubiD's Tactical Battle System) V 1.4. I'd say it does the same thing with any battle add-on, not only Blizz's (SephirothSpawn's Scripts have the same problem...)

    Anytime I use a skill connected to an add-on...

    Spoiler: ShowHide


    4759 ??? Let's go here...

    Spoiler: ShowHide


    Could you help me please ?
    38
    Script Requests / Passive Skills Upgrade please ?
    August 29, 2009, 02:25:17 am
    I think that would be a nice addition to Blizz-ABS...
    Compatibility : Blizz-ABS, Full Reflection System, RO Class Changes and Tons of Add-Ons.

    If you know Kingdom Hearts II's Ability System, it's just like that ! If you don't...

    Description : While leveling up, you gain passive skills. They have an Ability Point (AP) Cost. While leveling up, you also gain AP. Then you will have a special option menu that will allow you to activate the passive skills at the cost of some AP

    Exemple
    Skill A : 2 AP
    Skill B : 3 AP
    You have 3 AP.

    You activate Skill A
    Skill A : 2 AP
    Skill B = 3 AP
    You have 1 AP

    You can also desactivate Skill A to take your AP back.
    Skill A : 2 AP
    Skill B : 3 AP
    You have 3 AP.

    Now the hard part...
    I want 31 (!!!) special effects listed below as passive skills. They will be indicated as "Name (AP Cost) : Description". The names will be in french. Just write them like that.

    Spoiler: ShowHide
    Booster Soin (3) : Increase the power of healing spells cast by the user.
    SOS Booster Exp (2) : Double the obtained Exp when in critical life (25% and less)
    Turbo MP (2) : Double the power of spells cast by the user but also their SP cost.
    Booster Objets (1) : Increase the power of items used by the user.
    Demi MP (4) : Halve the user's SP cost.
    SOS 1 MP (3) : Reduce the user's SP cost to 1 when in critical life.
    Booster Projectile (4) : Increase the range of spells cast by the user.
    SOS Defense (1) : Double the user's Defense when in critical life.
    Vaillance (3) : 1/10 of the HP lost by the user is converted into SP
    SOS Attaque (2) : Double the user's Attack when in critical life.
    Concentration (4) : Progressively (and slowly) restores SP to the user
    Pharmacologie (3) : Double all healings used on the user.
    Ruban (5) : Halves the possibility of being hit by status effects (except unblockable ones)
    Miroir (5) : The opponent looses 1/50 of his max HP when attacking the user
    Perfection (3) : Doubles Attack when the user has MaxHP
    Assurance (3) : Doubles Intelligence when the user has MaxHP
    Derniere Chance (4) : If the user has more than 1 HP and he is supposed to die because of an enemy attack, his HP becomes 1.
    Securite (3) : The user is immune to trap effects.
    Jackpot (4) : Increases received money by 1,5 (Cumulable)
    Percee (3) : Ignores Full Reflection
    Booster Feu (2) : Increase the user's Fire Spells' power
    Booster Glace (3) : Increase the user's Ice Spells' power
    Booster Foudre (4) : Increase the user's Thunder Spells' power.
    Sprint (3) Increase all speeds (Sneak, Walk, Run) by 1
    Booster Mana (3) : Absorb 1/10 of the damage inflected by the user as SP.
    Invincible (3) : The user's states cannot be lowered
    Coup Critique (5) : The user has ???% chances to kill 1 ennemy with a standard weapon hit.
    Chance (2) : Doubles the items obtained by killing enemies.
    Vampire (3) : Increases the user's Absorb Spells' power.
    Paradoxe (4) : Instant Death Spells fully heal the user.
    Combattant (2) : Allows to fight barehanded (using STR instead of ATK)


    I'm not a scripter but I think it would be like that for easier configuration :

    INVINCIBLE_STATUS_IDS = [...] #For status lowering stats.

    FIRE_ELEMENT_ID = ? #For Fire Spells

    HEALING_ITEM_ELEMENT_ID = ? #Healing items will be tagged with this element.

    #Coup Critique : When ENEMY_ID then return CHANCES_OF_DYING_%.
    When 1 then return 0
    When 2 then return 50
    ...

    EDIT : I forgot... All classes must learn different passive abilities at different rates...
    39
    How can I make my physical skills inflect the same damages as a normal attack would ?
    Sword A : X attack.

    Could you make a battle formula to make it work ?
    40
    @Game-Guy : I've got 2  weapon enhacement systems (1 XRXS and 1 by Charlie Lee), but none of them has an Armor Enhacement System. Could you do your script for both ?
    @Guardian Angel : As I told, I've got some weapon enhacement systems, but they don't have the "Armor Enhacement" feature. Do you still want one of them ?