GAX Request: Maximum HP Increase, Damage Cap, and more

Started by GAX, June 23, 2010, 04:06:04 am

Previous topic - Next topic

GAX

June 23, 2010, 04:06:04 am Last Edit: June 28, 2010, 05:53:37 am by GuardianAngelX72
Okay, I need the following ASAP, this should be incredibly easy for someone to pull off.


First:  Holy shit high Maximum HP for bosses
-The idea:  Trying to give a boss 950,000,000,000,000 HP (for those of you who can't tell just by looking, that's 950 TRILLION).
-The Problem:  Yeah, even when using a little snippet I've had laying around, it still likes to cap out at about 9999999 HP (Nine Million, ton of 9s after)
Completed by Game_guy.

Second:  Damage Cap Enforcement
-The idea:  Okay, one character doing over a million damage per hit is ridiculous, nuff said
-The problem:  No way to really set an adjustable damage cap.
--What I'd like:  Put simply, just a way to set a "hard cap" (a damage cap that cannot be broken no matter what) and a "soft cap" (a damage cap that creatures are not limited by, and can be bypassed via equipment/status effects/etc.)

Third:  Infusion Skill
-The Idea:  A skill that adds an element or chance of inflicting a state with the next attack, but with a limitation on the number of Infusions that can be active at a time (default 4)
-Example:  Blade Infusion:  Fire makes the next attack have the Fire Element added.  If BI: Fire is used and the next ATTACK (skill targeting an enemy) chosen is Lightning, the attack will have both the Fire and Electric elements.  This can be boosted to an effect such as Lightning doing Fire, Electric, Ice, and Earth damage AND giving the capability to inflict Poison (Poison Blade being used, which would give the next attack the capability of poisoning the target).

Fourth:  Stacking States
-The Idea:  ANYONE who has played WoW knows this one, states (buffs and debuffs) whose effects are additive for the number of "stacks" of the particular state exist on a character, each state having a limited number of stacks.
-Example:  Attack Up would give a 10% increase to the Attack Power stat, with a maximum stack of 4.  So casting Attack Up on a target 4 times would give them a bonus of +40% Attack Power.  Casting the buff while at maximum stacks would just reset the expiration timer for the buff/debuff.

more to come eventually, gonna use this to display current requests.

Rule 2: ShowHide
Quote from: Rule No.2Keep your signatures at reasonable size. The pictures in your signature may altogether be no more than 200kB and take up an area of 1600px2. That means 2 pictures of 400x200 are fine, one picture of 800x200 is fine and so on. Also your pictures height must not exceed 200 pixels, width can be as big as you want as long as your pictures match the other criteria. Every signature not matching this criteria is a subject of the moderator team to remove and leave this rule as message in your signature.

G_G

June 23, 2010, 03:30:59 pm #1 Last Edit: June 24, 2010, 05:15:22 pm by game_guy
Here's the hp thingy
HP_CAP_LIMIT   = 1000000000
class RPG::Enemy
  def maxhp
    case @id
    # when enemy_id then return hp_amount
    # note: only add enemy id's that require over 999999
    when 1 then return 1000000
    end
    return @maxhp
  end
end
class Game_Battler
  def maxhp
    n = [[base_maxhp + @maxhp_plus, 1].max, HP_CAP_LIMIT].min
    for i in @states
      n *= $data_states[i].maxhp_rate / 100.0
    end
    n = [[Integer(n), 1].max, HP_CAP_LIMIT].min
    return n
  end
end


Only add enemy id's that you need to add a high hp. Its not needed to add every single enemy

GAX


Rule 2: ShowHide
Quote from: Rule No.2Keep your signatures at reasonable size. The pictures in your signature may altogether be no more than 200kB and take up an area of 1600px2. That means 2 pictures of 400x200 are fine, one picture of 800x200 is fine and so on. Also your pictures height must not exceed 200 pixels, width can be as big as you want as long as your pictures match the other criteria. Every signature not matching this criteria is a subject of the moderator team to remove and leave this rule as message in your signature.

G_G

June 24, 2010, 05:07:51 pm #3 Last Edit: June 24, 2010, 05:08:57 pm by game_guy
Here's the Hard Damage Cap.
DAMAGE_CAP = 999999
class Game_Battler
 alias gg_dmg_cap_atk_effect_lat attack_effect
 def attack_effect(attacker)
   last_hp = self.hp
   result = gg_dmg_cap_atk_effect_lat(attacker)
   if result && self.damage.is_a?(Integer)
     self.hp = last_hp
     self.hp = self.hp
     self.damage = [self.damage, DAMAGE_CAP].min
     self.hp -= Integer(self.damage)
   end
   return result
 end
end

GAX

June 28, 2010, 05:54:09 am #4 Last Edit: June 28, 2010, 05:56:37 am by GuardianAngelX72
Updated status on first request being completed.

Added two new requests.

Edit:  Regarding the Damage Cap posted by G_g, there is a precaution needed regarding usage of Blizz's ToA Revenge Skill.  Just need a little something extra so that this skill is restricted by the Damage Cap so it's not doing 949999999999999 damage on a fucking super boss.

Rule 2: ShowHide
Quote from: Rule No.2Keep your signatures at reasonable size. The pictures in your signature may altogether be no more than 200kB and take up an area of 1600px2. That means 2 pictures of 400x200 are fine, one picture of 800x200 is fine and so on. Also your pictures height must not exceed 200 pixels, width can be as big as you want as long as your pictures match the other criteria. Every signature not matching this criteria is a subject of the moderator team to remove and leave this rule as message in your signature.

G_G

Here's a demi skill modification. Did not test it so let me know if it works. This still requires tons to work.
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
# Demi Skill by Blizzard
# Version: 1.02b
# Type: Enhanced Skill
# Date: 5.9.2008
# Date v1.02b: 19.10.2008
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
#
# Explanation:
#
#   This skill deals damage equal to a percentage of the remaining HP.
#
#
# Configuration:
#
#   Scroll down to START Demi Database and create Demi skills. This system work
#   on both sides, both enemies and actors can use it.
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=

#==============================================================================
# module BlizzCFG
#==============================================================================
IMMUNE_DEMI_ENEMIES = [1] # immune enemy id's
IMMUNE_TEXT = "Immune" # text displayed when enemy is immune to skill
module BlizzCFG
 
  def self.demi_database(id)
    case id
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
# START Demi Database
#
#   Use following template to create Demi skills:
#
#     when ID then return RATE
#
#   ID   - ID of the skill in the database
#   RATE - percentage of how much of the remaining HP should be taken away
#
#   Example:
#
#     when 88 then return 25
#   
#   Skill with ID 88 will do damage equal to 25% of the enemies' remaining HP.
#
#   Note that using values equal to or greater than 100 will kill instantly.
#   Negative values will heal instead.
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    when 88 then return 25
    when 89 then return 50
    when 58 then return 50
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
# END Demi Database
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    end
    return 0
  end
 
end

#==============================================================================
# Game_Battler
#==============================================================================

class Game_Battler
 
  alias skill_effect_demi_skill_later skill_effect
  def skill_effect(user, skill)
    last_hp = self.hp
    last_sr = self.sr if $crls && self.is_a?(Game_Actor)
    result = skill_effect_demi_skill_later(user, skill)
    if $game_system.DEMI_SKILL
      rate = BlizzCFG.demi_database(skill.id)
      if rate != 0
        self.hp = last_hp
        self.hp = self.hp
        self.sr = last_sr if $crls && self.is_a?(Game_Actor)
        if result || self.damage.is_a?(Numeric)
  if IMMUNE_DEMI_ENEMIES.include?(self.id)
    self.damage = IMMUNE_TEXT
return result
  end
          self.damage = last_hp * rate / 100
          self.hp -= self.damage
        end
      end
    end
    return result
  end
 
end

GAX

Replaced the Demi Skill in my Tons with that and it works, thanks G_g.

Rule 2: ShowHide
Quote from: Rule No.2Keep your signatures at reasonable size. The pictures in your signature may altogether be no more than 200kB and take up an area of 1600px2. That means 2 pictures of 400x200 are fine, one picture of 800x200 is fine and so on. Also your pictures height must not exceed 200 pixels, width can be as big as you want as long as your pictures match the other criteria. Every signature not matching this criteria is a subject of the moderator team to remove and leave this rule as message in your signature.

Silentknight72

State stacking is a good idea, I think i saw that script somewhere.....
Sigs: ShowHide






G_G

Gax, here's a much better Damage Cap script. http://forum.chaos-project.com/index.php/topic,7218.msg118549.html#new It now adds a cap to skills, and items, and enemies. And you can also make it not apply to certain weapons, skills, items, enemies