Jump to content
Sign in to follow this  
Tsukihime

FP: Equip Levels

Recommended Posts

FP: Equip Levels

Author: Tsukihime

 

Overview

 

Equips get stronger the more you use it in battle and provide more stat bonuses.

The value of the equip increases when its stats go up.

 

This script requires FP: Inventory System

 

Screenshots

 

Stronger equips have better stats

f6Ssy.jpg

 

Not every equip type can be leveled

 

 

UiBJV.jpg

 

 

 

Usage

 

Some configuration at the top: exp per equip level, default max level, and exp rate (for the exp).

 

You can specify which type of equips will use levels by typing the corresponding entries into the Etypes table. If you are using FP: Equip Slots, you can ignore this table.

 

For example, maybe the amount of exp you receive from monsters shouldn't be the same that your equips receive.

 

You can customize each individual equip using notetags.

To specify the exp curve,

 

<exp: level * 1000> #exp required is equip level * 1000

 

Exp rate is the amount of exp that the equip will receive. 1 means 100%, 0.5 is 50%, etc.

If you're using exp from monsters/events to level your equips, you may want to scale it down.

 

<exprate: 0.5>

 

You can specify the max level for an equip

 

<maxlv: 5>

 

You can specify stat increase per level for the 8 basic parameters. Currently it's a flat rate (eg: 10 per level).

 

<mhp_up: 20>
<atk_up: 30>
<def_up: 40>

 

The parameters are "mhp", "mmp", "atk", "def", "mat", "mdf", "agi", "luk"

 

The default price formula is

 

Base Price + Equip_Level * Level_Modifier + stats

 

I might make it more customizable.

 

Feature Plus extensions have not been added to this system (for example, extending param bonuses to all 28 parameters, elemental bonuses, etc)

 

Download

 

Script: http://db.tt/9jXAXcgu

FP Inventory System: http://db.tt/X2LDkUdy

 

Notes

 

The idea is the same as Fomar's equip level. Unfortunately his script is not compatible with my implementation of inventory system so I wrote this script.

 

"exp" is just a generic unit of measure that's used to level up the equip.

 

By default it is the amount of exp received in battle, but in theory be replaced with any quantity, but I haven't added support for that. If you want support for a specific system just request it.

Edited by Tsukihime

Share this post


Link to post
Share on other sites

Hi,

 

I tested it and I didn't get any compatibilty problem with Yanfly shop option or Yanfly equip script ;)

By the way can you tell in your script what Etype si corresponding to please ?

Sorry if that's a noob a question.

 

Etypes = {0 => true,

1 => true,

2 => false,

3 => false,

4 => false

}

I didn't understand why you put a numbre or why you written true or false.

 

Thank you for this script, I am happy.

Edited by Chaos17

Share this post


Link to post
Share on other sites

etype_id refers to the equip type defined in the database

 

etype_id 
The type of weapon or armor.

0: Weapon 
1: Shield 
2: Head 
3: Body 
4: Accessory 

 

I've added comments to that table because it might be confusing.

Edited by Tsukihime

Share this post


Link to post
Share on other sites

Could you provide an example of how to raise the level of weapons manually through events?

 

Like a specific weapon that's currently on you?

Or any weapon that's in your inventory?

 

It can get complicated if you want to be able to select any arbitrary weapon to level.

I can add a method that will allow you to directly give equips exp, but it will be equips that you currently have equipped.

Edited by Tsukihime

Share this post


Link to post
Share on other sites

I've found something strange, when you let by default" 0=> true" and choose to optimize your equipement, I got this bug with the weapon (don't look at epaulette nothing is wrong with it) :

a4433bcc8e1d4a04a2a23fecb05f8.gif

I've pushed the buttom 5 times at least to get this result.

I didn't set any max level.

 

Sorry for my bad english.

Edited by Chaos17

Share this post


Link to post
Share on other sites

Could you provide an example of how to raise the level of weapons manually through events?

 

Like a specific weapon that's currently on you?

Or any weapon that's in your inventory?

 

It can get complicated if you want to be able to select any arbitrary weapon to level.

I can add a method that will allow you to directly give equips exp, but it will be equips that you currently have equipped.

 

Well, for my specific case it would be for a weapon that's currently equipped on someone.

Share this post


Link to post
Share on other sites

I've got this error now after I updated the Inventory script.

a340bf41c8532b259d62faa8394d1t.jpg

 

Hmm, slot_id might be the problem.

I've updated the inventory script to do some more checks with the slot_id.

 

Well, for my specific case it would be for a weapon that's currently equipped on someone.

 

I've updated both the inventory script as well as this script to allow you to say

 

$game_party.gain_equip_exp(member, slot, 200)

 

Where member is the number of the actor that is currently in your party. 1 is the first person, 2 is the second person, ...

 

Slot is the specific equip slot. Weapon by default is the first one, Shield is the second, etc.

 

And the last number is how much exp you want to receive.

 

So if I want to give the weapon in the first slot some more exp for the first actor in my party, I would write

 

$game_party.gain_equip_exp(1, 1, 1000)

Share this post


Link to post
Share on other sites

Does the issue still occur when you take out equip levels?

I have a bunch of FP scripts (like, 15) in my dev project and can't seem to reproduce the error.

 

EDIT: lol wait I didn't update the version numbers (forgot I had to do them manually).

Try replacing the inventory script with the new one.

Edited by Tsukihime

Share this post


Link to post
Share on other sites

It seems that's the same error I got after I updated your script to ver 1.1

The error happen directly after I enter the game.

That's strange because your old version was working fine (ref the screeshot of my menu).

 

efec9e44cbf9d2431d02876e3cd66tt.jpg

 

 

EDIT : I've found the problem, seems your script doesn't work with Yanfly Equip script, that's strange because I didn't get any error like this before I updated your script. Could it be because Yanfly script also have a slot option for equip ?

Edited by Chaos17

Share this post


Link to post
Share on other sites

Ya ace equip engine rewrites the slots as well.

I've tried to make my equip-slots script more compatible with that script, but in the end I can't do much about the slot rewrites.

 

I can post a compatibility version of ace equip engine that uses my custom slots (although I haven't added the slot options for actors/classes)

Edited by Tsukihime

Share this post


Link to post
Share on other sites

I have tried your script, hoping I could get around a slight poblem that all the scripts that allow equipment to level up, but unforutnately your script stil does the same thing all the others do.

When I get a weapon through the command "change weapons" the weapons goes into the inventory, but when I try to remove the weapon via the command, the weapons STAYS there in the inventory... How could I remove the weapon from the inventory without selling the item?

(I have not tried the armor but I believe it will do the same thing.)

 

Edit: It's all fixed now. Thanks again.

Edited by Shadow Fox

Share this post


Link to post
Share on other sites

Hey Tsukihime,

I'm having a problem with the armors leveling up...

When one armor levels up and the stats are increased, if i get another armor of the same name, that armor (level 1) has the same stats as the armor level whatever (i just leveled up)

This is a problem that I believe caused fomar to make individual equipment....

I think the item gets changed in the database...

Share this post


Link to post
Share on other sites

Hey Tsukihime:

I found the solution for the armor parameters problem:

it is in line 300 of Game_Armor < RPG::Armor

 

replace this:

 

  def setup(item, index)
@class = Game_Armor
@name = item.name
 end

 

with this:

alias :th_inventory_setup :setup
 def setup(item, index)
@class = Game_Armor
@params = item.params.clone #we must clone this
@name = item.name
th_inventory_setup(item, index)
 end

 

Just as I thought, the parameters in the database were being affected rather than the item being targeted

(i found this in the Game_Weapon section, which is why the weapons were fine...)

 

(The fomar part was just an example) lol

Share this post


Link to post
Share on other sites

Hello everyone,

could u explain these to me because it is in ur script and cant follow ur first post descriptions, thx! I want to know how much gain there is but i simply dont undstand this :D

 

 

 

Exp_Curve = /<exp:?\s*(.*)\s*>/i
   Level_Max = /<maxlv:?\s*(\d+)\s*>/i
   Mhp_Up = /<mhp_up:?\s*(\d+)\s*>/i
   Mmp_Up = /<mmp_up:?\s*(\d+)\s*>/i
   Atk_Up = /<atk_up:?\s*(\d+)\s*>/i
   Def_Up = /<def_up:?\s*(\d+)\s*>/i
   Mat_Up = /<mat_up:?\s*(\d+)\s*>/i
   Mdf_Up = /<mdf_up:?\s*(\d+)\s*>/i
   Agi_Up = /<agi_up:?\s*(\d+)\s*>/i
   Luk_Up = /<luk_up:?\s*(\d+)\s*>/i
   Exp_Rate = /<exprate:?\s*(.+)\s*>/i

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×