Introduction This script makes it so that equipment (weapons and armors) can gain levels. Equips are basically set up like actors in that they gain experience in battle, level up, gain stat bonuses, etc... This is a rather large script and is still incomplete, however complete enough post for feedback, feature requests, and such. I don't know if I can test all features of the script myself, do please post report any bugs.
Features - Experience System - Leveling System with stat bonuses - Script calls and note tags for customization - Equip Status Scene accessible from Scene Item - All Equips are unique, i.e., only the ones equipped gained experience, ex: you can have a lvl 1 short sword, a lvl 2, etc... - Ability to randomize Experience earned - Ability to randomize Experience needed for Equips to level up - Progress Bars for EXP and Levels - Equip Skill System based on EXP gained, Battles and Enemies Killed ** Skills learned either by Weapon EXP, Armor EXP, Total Battles, Enemies Killed or any combination of the FOUR - Color Coded Equips ** Different colors based on whether level is max, cannot level, or level disabled ----------------------------------------------- Planned: - Equip Skill System (in progress) ** Based on either level or EXP (maybe stats) << Will probably scrap level as that method is broken, same for stats... ** Based on Battles and Kills (completed) - Percent Based Equips ** Equips can raise stats by set number, percent or both - Equip Price based on Level/Stats ----------------------------------------------- Please suggest additional features
module RPG class Armor < BaseItem #------------------------------------------------------------------------ # gain experience #------------------------------------------------------------------------ def gain_exp(amount) return if $BTEST return if @no_level return unless @can_level or LEVEL_ARMORS return if @level >= @max_level mx = (@exp_list[@max_level] - 1) - @exp amount = amount >= mx ? [mx - 1, 0].max : amount @exp += amount while @exp >= @exp_list[@level] and @exp_list[@level] > 0 level_up end end #------------------------------------------------------------------------ # level up #------------------------------------------------------------------------ def level_up return if @no_level return unless @can_level or LEVEL_ARMORS if @level >= @max_level else @level = [@level + 1, @max_level].min if $game_switches[LEVEL_UP_SWITCH] @exp += @exp_list[@level-1] - @exp_list[@level-2] end $game_switches[LEVEL_UP_SWITCH] = false @maxhp = [@maxhp + @hp_gain, @max_hp].min unless @max_hp == @maxhp @maxmp = [@maxmp + @mp_gain, @max_mp].min unless @max_mp == @maxmp @atk = [@atk + @atk_gain, @max_atk].min unless @max_atk == @atk @def = [@def + @def_gain, @max_def].min unless @max_def == @def @spi = [@spi + @spi_gain, @max_spi].min unless @max_spi == @spi @agi = [@agi + @agi_gain, @max_agi].min unless @max_agi == @agi @eva = [@eva + @eva_gain, @max_eva].min unless @max_eva == @eva if $imported["DEX Stat"] @dex = [@dex + @dex_gain, @max_dex].min unless @max_dex == @dex end if $imported["RES Stat"] @res = [@res + @spi_gain, @max_res].min unless @max_res == @res end end end end end
Customization READ THE INSTRUCTIONS!!! - Global Customization within script - Per item customization with note tags - Script calls in events can alter some attributes of equips - New stats for Weapons ** HP, MP, CRI - New stats for Armors ** HP, MP
Compatibility - Compatible with Default System - Compatible with YEM New Battle Stats - New command in YEM Item Overhaul to access Equip Scene - YEM Equipment Overhaul patch within script ** Fix for purge_equipment issue now included - Likely needs patches to work with New equip Scenes - Must be placed below YEM Item Overhaul and YEM Equip Overhaul, if used ** Rewrites portions of those YEM Scripts - Place above YEM Item Overhaul Patch if used ** The YEM Item Overhaul Patch rewrites a portion of this script