Envision, Create, Share

Welcome to HBGames, a leading amateur game development forum and Discord server. All are welcome, and amongst our ranks you will find experts in their field from all aspects of video game design and development.

Higher Level Cap [Solved]

JoshC

Member

Alright I think the title says it all. Basicly I want a script that will let me set the level cap (Currently maxed at lvl99) to what ever level I want, between 1 and 999,999,999, or at least 9,999. You get the idea. Also if possible integrate a script to set the max hp, sp, and stat limits to whatever I want (Limit break basicly). Please make this for RPG Maker XP.

Reference: Disgaea: Hour of Darkness for the Playstation 2
 

Atoa

Member

there's an scritp that already do this, the KGC_LimitBreak (no the name has no relation with FF7 Limit Break). That allows you to break the limit for status and level.
But sadly i deleted it after i added this feature into the SBS Tankentai XP.

I making my ow version of it, but it may take some time to have it done.
 

JoshC

Member

I have that SVB system, did you integrate the script into another or did you simple copy and paste it into a particular section? Also if you could try de-integrating it that would be most appreciated.
 

JoshC

Member

Ok, after arguious searching for countless mellinia, I have finally found a script that does this, although I couldn't find the KGC_LimitBreak script, only little details about it, so it's probably so old it's not poping up anymore. Anyway here's the script:

I'd Like to note that I tested the system, and I can say that the max level should not exceed 99,999; Doing so makes the game load so slowly that it pops up an error stated the script is hanging, which means it's taking too long basically. As for stats, I tried it as high as 9,999,999,999 and it all worked good so that shouldn't be much of an issue.

Code:
 

#==============================================================================

#  Unlimit Levels v1                                            by: cybersam

#                                                               date: 14.09.06

#------------------------------------------------------------------------------

#  here is a full working scripts for you to this... (i think there is

#  already one like this somewhere in the in the community...

#  i did one back then when i started in RPG Maker XP

#  some other guys did a few other script like this

#==============================================================================

#----------------------------------------------------------------------------

# here you can set the max hp,sp,,str,dex,agi and int

#----------------------------------------------------------------------------

  $FINAL_LVL  = 100

  $MAX_HP     = 99999

  $MAX_SP     = 99999

  $MAX_STR    = 9999

  $MAX_DEX    = 9999

  $MAX_AGI    = 9999

  $MAX_INT    = 9999

 

class Game_Actor

 

  #--------------------------------------------------------------------------

  # setting the levels...

  #--------------------------------------------------------------------------

  def final_level

   

    # here you can set the max level for your characters based on their ID's...

    # i set it so that 3 characters have different levels and the rest

    # have max lvl of 9999

    #

    # this settings is only to show you how to change the max setting for your

    # characters... same thing is for the parameters -> hp,sp,str,dex.agi,int

   

    case self.id

    when 1

      level = 100

    when 2

      level = 100

    when 8

      level = 100

    else

      level = $FINAL_LVL

    end

    return level

  end

 

 

  #--------------------------------------------------------------------------

  # setting max hp...

  #--------------------------------------------------------------------------

  def max_hp

 

    case self.id

    when 1

      hp = 99999

    when 2

      hp = 99999

    when 8

      hp = 99999

    else

      hp = $MAX_HP

    end

    return hp

  end

  #--------------------------------------------------------------------------

  # setting max sp...

  #--------------------------------------------------------------------------

  def max_sp

 

    case self.id

    when 1

      sp = 99999

    when 2

      sp = 99999

    when 8

      sp = 99999

    else

      sp = $MAX_SP

    end

    return sp

  end

  #--------------------------------------------------------------------------

  # setting max str...

  #--------------------------------------------------------------------------

  def max_str

    case self.id

    when 1

      str = 9999

    when 2

      str = 9999

    when 8

      str = 9999

    else

      str = $MAX_STR

    end

    return str

  end

  #--------------------------------------------------------------------------

  # setting max dex...

  #--------------------------------------------------------------------------

  def max_dex

    case self.id

    when 1

      dex = 9999

    when 2

      dex = 9999

    when 8

      dex = 9999

    else

      dex = $MAX_DEX

    end

    return dex

  end 

  #--------------------------------------------------------------------------

  # setting max agi...

  #--------------------------------------------------------------------------

  def max_agi

    case self.id

    when 1

      agi = 9999

    when 2

      agi = 9999

    when 8

      agi = 9999

    else

      agi = $MAX_AGI

    end

    return agi

  end   

  #--------------------------------------------------------------------------

  # setting max int...

  #--------------------------------------------------------------------------

  def max_int

    case self.id

    when 1

      int = 9999

    when 2

      int = 9999

    when 8

      int = 9999

    else

      int = $MAX_INT

    end

    return int

  end 

 

  #--------------------------------------------------------------------------

  # Creating the new EXP list

  # dont change anything from here on... (only if you know what you're doing)

  #--------------------------------------------------------------------------

  def make_exp_list

    actor = $data_actors[@actor_id]

    @exp_list = Array.new(final_level + 2)

    @exp_list[1] = 0

    pow_i = 2.4 + actor.exp_inflation / 1000.0

    for i in 2..final_level + 1

      if i > final_level

        @exp_list[i] = 0

      else

        n = actor.exp_basis * ((i + 3) ** pow_i) / (5 ** pow_i)

        @exp_list[i] = @exp_list[i-1] + Integer(n)

      end

    end

  end

 

  #--------------------------------------------------------------------------

  # setting parameters like hp, sp, str, dex, agi and int

  #--------------------------------------------------------------------------

  def maxhp

    n = [[base_maxhp + @maxhp_plus, 1].max, $MAX_HP].min

    for i in @states

      n *= $data_states[i].maxhp_rate / 100.0

    end

    n = [[Integer(n), 1].max, $MAX_HP].min

    return n

  end

 

  def base_maxhp

    maxhp = $data_actors[@actor_id].parameters[0, 1]

    maxhp += $data_actors[@actor_id].parameters[0, 2] * @level

    return maxhp

  end

 

  def base_maxsp

    maxsp = $data_actors[@actor_id].parameters[1, 1]

    maxsp += $data_actors[@actor_id].parameters[1, 2] * @level

    return maxsp

  end

 

  def base_str

    n = $data_actors[@actor_id].parameters[2, 1]

    n += $data_actors[@actor_id].parameters[2, 2] * @level

    weapon = $data_weapons[@weapon_id]

    armor1 = $data_armors[@armor1_id]

    armor2 = $data_armors[@armor2_id]

    armor3 = $data_armors[@armor3_id]

    armor4 = $data_armors[@armor4_id]

    n += weapon != nil ? weapon.str_plus : 0

    n += armor1 != nil ? armor1.str_plus : 0

    n += armor2 != nil ? armor2.str_plus : 0

    n += armor3 != nil ? armor3.str_plus : 0

    n += armor4 != nil ? armor4.str_plus : 0

    return [[n, 1].max, $MAX_STR].min

  end

 

  def base_dex

    n = $data_actors[@actor_id].parameters[3, 1]

    n += $data_actors[@actor_id].parameters[3, 2] * @level

    weapon = $data_weapons[@weapon_id]

    armor1 = $data_armors[@armor1_id]

    armor2 = $data_armors[@armor2_id]

    armor3 = $data_armors[@armor3_id]

    armor4 = $data_armors[@armor4_id]

    n += weapon != nil ? weapon.dex_plus : 0

    n += armor1 != nil ? armor1.dex_plus : 0

    n += armor2 != nil ? armor2.dex_plus : 0

    n += armor3 != nil ? armor3.dex_plus : 0

    n += armor4 != nil ? armor4.dex_plus : 0

    return [[n, 1].max, $MAX_DEX].min

  end

 

  def base_agi

    n = $data_actors[@actor_id].parameters[4, 1]

    n += $data_actors[@actor_id].parameters[4, 2] * @level

    weapon = $data_weapons[@weapon_id]

    armor1 = $data_armors[@armor1_id]

    armor2 = $data_armors[@armor2_id]

    armor3 = $data_armors[@armor3_id]

    armor4 = $data_armors[@armor4_id]

    n += weapon != nil ? weapon.agi_plus : 0

    n += armor1 != nil ? armor1.agi_plus : 0

    n += armor2 != nil ? armor2.agi_plus : 0

    n += armor3 != nil ? armor3.agi_plus : 0

    n += armor4 != nil ? armor4.agi_plus : 0

    return [[n, 1].max, $MAX_AGI].min

  end

 

  def base_int

    n = $data_actors[@actor_id].parameters[5, 1]

    n += $data_actors[@actor_id].parameters[5, 2] * @level

    weapon = $data_weapons[@weapon_id]

    armor1 = $data_armors[@armor1_id]

    armor2 = $data_armors[@armor2_id]

    armor3 = $data_armors[@armor3_id]

    armor4 = $data_armors[@armor4_id]

    n += weapon != nil ? weapon.int_plus : 0

    n += armor1 != nil ? armor1.int_plus : 0

    n += armor2 != nil ? armor2.int_plus : 0

    n += armor3 != nil ? armor3.int_plus : 0

    n += armor4 != nil ? armor4.int_plus : 0

    return [[n, 1].max, $MAX_INT].min

  end

 

  def exp=(exp)

    @exp = [exp, 0].max

    while @exp >= @exp_list[@level+1] and @exp_list[@level+1] > 0

      @level += 1

      for j in $data_classes[@class_id].learnings

        if j.level == @level

          learn_skill(j.skill_id)

        end

      end

    end

    while @exp < @exp_list[@level]

      @level -= 1

    end

    @hp = [@hp, self.maxhp].min

    @sp = [@sp, self.maxsp].min

  end

 

  def level=(level)

    level = [[level, final_level].min, 1].max

    self.exp = @exp_list[level]

  end

end

 

 

 

#==============================================================================

# ** Game_Battler

#==============================================================================

 

class Game_Battler

 

  def maxhp

    n = [[base_maxhp + @maxhp_plus, 1].max, $MAX_HP].min

    for i in @states

      n *= $data_states[i].maxhp_rate / 100.0

    end

    n = [[Integer(n), 1].max, $MAX_HP].min

    return n

  end

 

  def maxsp

    n = [[base_maxsp + @maxsp_plus, 0].max, $MAX_SP].min

    for i in @states

      n *= $data_states[i].maxsp_rate / 100.0

    end

    n = [[Integer(n), 0].max, $MAX_SP].min

    return n

  end

 

  def str

    n = [[base_str + @str_plus, 1].max, $MAX_STR].min

    for i in @states

      n *= $data_states[i].str_rate / 100.0

    end

    n = [[Integer(n), 1].max, $MAX_STR].min

    return n

  end

 

  def dex

    n = [[base_dex + @dex_plus, 1].max, $MAX_DEX].min

    for i in @states

      n *= $data_states[i].dex_rate / 100.0

    end

    n = [[Integer(n), 1].max, $MAX_DEX].min

    return n

  end

 

  def agi

    n = [[base_agi + @agi_plus, 1].max, $MAX_AGI].min

    for i in @states

      n *= $data_states[i].agi_rate / 100.0

    end

    n = [[Integer(n), 1].max, $MAX_AGI].min

    return n

  end

 

  def int

    n = [[base_int + @int_plus, 1].max, $MAX_INT].min

    for i in @states

      n *= $data_states[i].int_rate / 100.0

    end

    n = [[Integer(n), 1].max, $MAX_INT].min

    return n

  end

 

  def maxhp=(maxhp)

    @maxhp_plus += maxhp - self.maxhp

    @maxhp_plus = [[@maxhp_plus, -$MAX_HP].max, $MAX_HP].min

    @hp = [@hp, self.maxhp].min

  end

 

  def maxsp=(maxsp)

    @maxsp_plus += maxsp - self.maxsp

    @maxsp_plus = [[@maxsp_plus, -$MAX_SP].max, $MAX_SP].min

    @sp = [@sp, self.maxsp].min

  end

 

  def str=(str)

    @str_plus += str - self.str

    @str_plus = [[@str_plus, -$MAX_STR].max, $MAX_STR].min

  end

 

  def dex=(dex)

    @dex_plus += dex - self.dex

    @dex_plus = [[@dex_plus, -$MAX_DEX].max, $MAX_DEX].min

  end

 

  def agi=(agi)

    @agi_plus += agi - self.agi

    @agi_plus = [[@agi_plus, -$MAX_AGI].max, $MAX_AGI].min

  end

 

  def int=(int)

    @int_plus += int - self.int

    @int_plus = [[@int_plus, -$MAX_INT].max, $MAX_INT].min

  end

end

 
 

Thank you for viewing

HBGames is a leading amateur video game development forum and Discord server open to all ability levels. Feel free to have a nosey around!

Discord

Join our growing and active Discord server to discuss all aspects of game making in a relaxed environment. Join Us

Content

  • Our Games
  • Games in Development
  • Emoji by Twemoji.
    Top