Joined
Jul 8, 2022
Messages
2
Reaction score
1
First Language
English
Primarily Uses
RMMZ
In the game I'm working on, I wanted to be able to make it so that characters could learn the skills off of equipped weapons/armor and then know them permanently (kind of how Tales of Vesperia's weapon skill system works), but all of plugins I've been able to find that allow this are either for MV or don't cooperate with Visustella.

Current flow I want to implement:
1. Character does not know skill(s)
2. Character equips weapon, accessory, etc.
3. Character now knows skill(s), but does not know it permanently
4. Character performs a certain action, or kills a number of enemies, or participates in a number of battles, or gains some resource (sp, etc.)
5. Character meets the requirements and learns the skill(s) on the equipment
6. Character removes equipment and still knows the skill(s)

Any help is appreciated, thank you in advance.
 

myenemy

Veteran
Veteran
Joined
Jan 17, 2014
Messages
136
Reaction score
64
First Language
Spanish
Primarily Uses
RMMZ
I think you can do this vanilla, just adding the skills to the equipment pieces directly.
 
Last edited:

ATT_Turan

Forewarner of the Black Wind
Veteran
Joined
Jul 2, 2014
Messages
6,171
Reaction score
4,144
First Language
English
Primarily Uses
RMMV
Í think you can do this vanilla, just adding the skills to the equipment pieces directly.
That is the OP's step 3. It does nothing to address the entire rest of the process.

@LurkatonHammer If you have VisuStella plugins, you can do this pretty simply. Give each skill-teaching item its own passive state. In that passive state, put a notetag for...whatever you decide you want your condition to be.

If you want it to be a certain number of actions in battle, use JS Post-End Action. Inside the notetag just increment a variable on the actor. When it hits whatever you want, make it teach them the skill.

For example:
Code:
<JS Post-End Action>
user.learnFireball=user.learnFireball || 0;

user.learnFireball++;

if (user.learnFireball==25)
    user.learnSkill(id_of_fireball_skill_here);
</JS Post-End Action>

If you want to add stuff like a pop up message about learning the skill, do so. You could put it directly in that notetag or you could have an autorun event on your maps that checks for actors to know any different skills after each fight.

The only part of this you might need to consider requesting from anyone is if you want to see a display of the learned progress when you're looking at items - the way Final Fantasy 6/9/etc. have a little gauge attached to equipment.

But there are some generic plugins that allow you to display things like custom variables that might work for that, too.

Edit: Have you already considered this plugin?
 
Last edited:
Joined
Jul 8, 2022
Messages
2
Reaction score
1
First Language
English
Primarily Uses
RMMZ
I took a look at that plugin, but it looks like it's incompatible with Visustella and hasn't been updated in over a year. I tried it anyway and couldn't get it to work at all, which is a shame since it greatly resembles what I'm looking for.
 

pf111

Veteran
Veteran
Joined
Jun 1, 2021
Messages
48
Reaction score
8
First Language
English
Primarily Uses
RMMZ
I wanted to try that visustella code but I'm getting a 'syntax unexpected number' error while using that on a state, I'm gonna trouble shoot that later cause it looks like a pretty straightforward way to implement it.
That is the OP's step 3. It does nothing to address the entire rest of the process.

@LurkatonHammer If you have VisuStella plugins, you can do this pretty simply. Give each skill-teaching item its own passive state. In that passive state, put a notetag for...whatever you decide you want your condition to be.

If you want it to be a certain number of actions in battle, use JS Post-End Action. Inside the notetag just increment a variable on the actor. When it hits whatever you want, make it teach them the skill.

For example:
Code:
<JS Post-End Action>
user.learnFireball=user.learnFireball || 0;

user.learnFireball++;

if (user.learnFireball==25)
    user.learnSkill(id_of_fireball_skill_here);
</JS Post-End Action>

If you want to add stuff like a pop up message about learning the skill, do so. You could put it directly in that notetag or you could have an autorun event on your maps that checks for actors to know any different skills after each fight.

The only part of this you might need to consider requesting from anyone is if you want to see a display of the learned progress when you're looking at items - the way Final Fantasy 6/9/etc. have a little gauge attached to equipment.

But there are some generic plugins that allow you to display things like custom variables that might work for that, too.

Edit: Have you already considered this plugin?
 
Last edited:

ATT_Turan

Forewarner of the Black Wind
Veteran
Joined
Jul 2, 2014
Messages
6,171
Reaction score
4,144
First Language
English
Primarily Uses
RMMV
I wanted to try that visustella code but I'm getting a 'syntax unexpected number' error while using that on a state
When you're reporting errors, please post screenshots of the actual error message. Make sure to press F8 and go to the Console tab to get the full error trace.

Also post a screenshot of how you have the notetag entered - that's a weird error, and usually means you've mistyped something.
 

Latest Threads

Latest Profile Posts

working on an A/V sync system for my game! was NOT expecting the first roadblock to be accessing a variable from a public class!! Computers are so finicky sometimes :kaosigh:
For the first real time since my game's inception I found myself actually having fun playing around with my party's skills while testing out some battles! So much so, that I actually forgot what I was doing for a minute and had to force myself to move on to the next thing! :guffaw:

That's got to be a good sign considering it only has place holder animations, enemy skills, troop comps, etc. right now. Feels good!
Bex
Finally upgraded to RMMZ.
ScreenShot_11_28_2022_7_52_34.png
FINALLY, I figured out how to get the "tail" to appear IN the window and not directly below it lol. now it looks like it's part of the window and not hanging from the bottom of it.
Twitch! Stream is about to go live with some Dark Souls 2! Feel free to drop by!

Forum statistics

Threads
126,925
Messages
1,182,403
Members
166,757
Latest member
helenbish
Top