Equip Skill System

● ARCHIVED · READ-ONLY
Started by Moogle_X 198 posts Page 7 of 10 View original ↗
  1. @Corvin


    Try using this notetag instead:

    <EQL Skill: 9, 11, 12, 13>
  2. hey its a great plugin!! i like this kind of stuff, i have a question, how i can make a skill poll with all the skill learned by the party, in other words share all the skills.


    something like this game:


    64-052.png


    so only one member can use one kind of skill and cant be use by any other member until its on no use. sorry for bother you
  3. @exel.exe


    Yes, I can add the option for "shared skill pool" style. The menu layout is still the same though.


    But, the window will list all of available skills from all party members combined.


    I will add it in the next update. :D
  4. Hey,


    i use this code in note to show dynamic damage value for skills from Yanfly Skill Core script:


    <Custom Show Eval>


    item.description = '\\fbDmg:\\fr ' + Math.floor(user.mat * 0.8) + '-' + Math.floor(user.mat * 1.2) + ' Hp\\i[64]';


    </Custom Show Eval>


    But in yours equip skill window skill description does not change.


    It is possible to fix that?
  5. @exel.exe


    The plugin is updated to v1.44!


    It now supports "Party Based Skill Pool". :D


    To enable it, you must turn on the plugin parameter first.

    Spoiler
    EQS_PartyBasedSkillPool_zpsg21tncmp.png



    Get the updated plugin in the first post. :)
  6. Give that guy a beer, because he´s awesome!!


    thanks man its a great plugin XD
  7. Hey Moogle, very great plugin indeed!


    Was hoping to know if their is a script call that forces the action of an equipped skill? 


    To complete my button input battle system. I wanted to display the freewill of changing the skill attached to a button by equipping and unequipping different 


    skills to a skill slot. 


    Be very great to know if their is a script call to force an equip skill action! Thanks! Hope to hear soon,
  8. @DoocSenpai


    Hmm... Interesting...


    Yes, I'm pretty sure the script call exist. But, I still have no clue about what you really mean by "to force an equip skill action".


    Would you like to explain your battle system in more details? As in, extremely delicate details. B)
  9. https://www.youtube.com/watch?v=8hVSN7a_OQo&feature=youtu.be


    For a better visual, I provided a vid. 


    To force an equip skill action as in use the force action script call upon the skill which is inserting into


    a specific skill slot. I provided a visual pic for that too just in case, its an attach file.


    I want to solve this issue before I tweak my battle system more to make it more likable an enjoyable. 

    ice_screenshot_20160201-174833.png
  10. @DoocSenpai


    Okay, the actor's equip slot data is located inside "_eqsSlots" property.


    "_eqsSlots" is an object that contains 31 other objects (which represent 31 different slot types available).


    Each of those slot type objects then contains the data for currently equipped skills. (0 = empty slot; non-0 = skill id)


    To equip a skill to a specific slot, you will need to use this method.

     


    Game_Actor.prototype.eqsEquipSkill = function(skill, typeId, slotId) {


         if (!this.canEquipSkill(skill)) return;


         if (this._eqsSlots[typeId][slotId] !== undefined) {


              if (skill === null) {


                   this._eqsSlots[typeId][slotId] = 0;


              } else {


                   this._eqsSlots[typeId][slotId] = skill.id;


              }


         }


         this.refresh();


    };



    To access the skill id inside particular slot, you simply play around with this._eqsSlots['slot type']['slot id'].


    And then just use the returned skill id for force action script call.
  11. I love your script, but I have a question. I have 32 classes and each class has four skill types. Thus I would need, 128 skill types, or an ability to restrict equitable skills by class.


    could you help? Thank you
  12. Hey, I'm new to this engine, and I found this script to be almost perfect for what I'm looking for.


    I was wondering though, if in the future it could be possible to make it so that specific skills may not be equipped if you belong to a specific class. And if they are already equipped when you change classes, these incompatible skills are unequipped.


    Example:


    I have a class that will learn a passive skill to allow dual wielding. I have another class that exclusively uses a two handed weapon type. If the actor who already knows dual wielding switches to that class, I do not want him to be able to equip the dual wield skill, because it will allow him to dual wield two two-handed weapons. It will not work to make the new class not have a skill slot for that type of skill, as there will be other skills that fit into that type that are not for dual wielding.


    Additionally, I was wondering if it could be made possible to prevent the equipping of a specific skill if you are under a specific state. The documentation mentions that this plugin is compatible with Yanfly's AutoPassive States plugin, but makes no mention of how you might use a passive state as a trigger to prevent the equipping of certain skills.


    Example: I am trying to set dual wielding up as a passive skill, and also not restrict the use of two-handed weapons. I want classes where one could freely choose to wield a two-handed sword or a sword/shield. To accomplish this, I have the two-handed weapon set a passive state that disables the offhand slot, but if that character also has the dual-wield skill equipped and equips a two-handed weapon, the offhand weapon slot is not disabled. If the skill equip system could check for the "two-hand" state and prevent the equipping of the dual wield skill, it would prevent this from happening. If I don't use a state for the two-hander, and instead put the effects of the passive state on the weapon itself, the same thing also happens, allowing the actor to dual wield two-handed weapons.


    So, to recap:


    Make skills unavailable to equip based on class: Yay/Nay?


    Make skills unavailable to equip based on passive states: Yay/Nay?


    Thanks in advance.


    Edit:


    In case it isn't clear enough, I came up with another example.


    I have an Archer class, which on its own, has two different weapon styles.


    2H Bow. The shield slot is disabled when the bow is equipped. The bow is two-handed. This could be done from the weapon itself, or by a state attached to it using the auto-passive states plugin.


    1H Crossbow/Shield: The archer can also equip a crossbow in the main hand and a shield in the off hand for extra defense.


    If the archer also takes the dual wield skill mentioned above (learned from another class), in its current state, he is then able to equip a 2h bow in each hand, or a 1h crossbow in each hand. If the dual wield skill would be removed, or not-equippable when a Bow is equipped (through the passive state, most likely) this would prevent the problem from happening.
  13. Hello,


    How do I proceed to be allowed to equip a skill that is being learned thanks to your Equipment Skill plugin ? In the Equipment Skill plugin, you put an option to let the maker chose if he let the player use the equipment's skill instantly when equipped, even if not mastered. Why wouldn't you implement this functionnality aswell in this plugin ? I would appreciate :)


    Thanks !


    PS : I know I can put an exception on a skill, to be allowed to use it even if not equipped ; though, I want it to be on a passive skill : I consider its effect too strong to be on permanently, so I'd like the player to chose to activate it, even if not fully learned.
  14. ramza said:
    Edit:


    In case it isn't clear enough, I came up with another example.


    I have an Archer class, which on its own, has two different weapon styles.


    2H Bow. The shield slot is disabled when the bow is equipped. The bow is two-handed. This could be done from the weapon itself, or by a state attached to it using the auto-passive states plugin.


    1H Crossbow/Shield: The archer can also equip a crossbow in the main hand and a shield in the off hand for extra defense.


    If the archer also takes the dual wield skill mentioned above (learned from another class), in its current state, he is then able to equip a 2h bow in each hand, or a 1h crossbow in each hand. If the dual wield skill would be removed, or not-equippable when a Bow is equipped (through the passive state, most likely) this would prevent the problem from happening.

    There is a feature: "- Prevent some skills to be equipped when certain skill is already equipped."


    Either way, if you are using Yanfly Auto Passive State you can add this to the dual wield state

    Spoiler
    <Custom Passive Condition>


    if (user.isStateAffected(x)) {


    condition = false;


    } else {


    condition = true;


    }


    </Custom Passive Condition>


    x being the "equip 2H" state, so when the actor has this state the other will not work. But this don't prevent the actor from equipping the skill. I think it's better for you to use the feature moogle has already implemented.

    Luth said:
    Hello,


    How do I proceed to be allowed to equip a skill that is being learned thanks to your Equipment Skill plugin ? In the Equipment Skill plugin, you put an option to let the maker chose if he let the player use the equipment's skill instantly when equipped, even if not mastered. Why wouldn't you implement this functionnality aswell in this plugin ? I would appreciate :)


    Thanks !


    PS : I know I can put an exception on a skill, to be allowed to use it even if not equipped ; though, I want it to be on a passive skill : I consider its effect too strong to be on permanently, so I'd like the player to chose to activate it, even if not fully learned.

    I don't fully understand what you meant. You have a equipment that teaches skill x but you want to be able to use said skill only when you equip it right? Even if you haven't learned it yet. Doesn't the tag <EQS type: x> already do that?
  15. killerfer said:
    There is a feature: "- Prevent some skills to be equipped when certain skill is already equipped."


    Either way, if you are using Yanfly Auto Passive State you can add this to the dual wield state


    Hidden Content


    x being the "equip 2H" state, so when the actor has this state the other will not work. But this don't prevent the actor from equipping the skill. I think it's better for you to use the feature moogle has already implemented.



    I was hopeful that your custom condition would work, but after trying it, realize that it doesn't. This is because it won't accept a passive state as a custom state condition to prevent an infinite loop.


    I would like to use the built in functionality mentioned, but the given class doesn't equip a 'use bow' skill, he simply knows the skill for being that class. The only workaround for this is to increase the number of slots an actor has and auto-equip a list of skills when they change class. This obviously isn't ideal.
  16. @ramza


    Okay, I think I can add the first request (class restriction part) without too much trouble. But, I'm still confused regarding your second request.


    Maybe... if it's not too much trouble.... can you add a third example? :p


    @Luth


    I might misunderstand your post. But, I'm pretty sure you can equip the currently "being learned" skill from equipment by default.


    Even if the said skill is not yet mastered. I already tested it so many times before. Just make sure to put "Equipment Learning" plugin below "Equip Skill System".
  17. @Moogle_X


    I can't come up with another usage example, so I'll try to explain better instead.


    Using Yanfly's class change system in tandem with your skill equip system, I have created a pretty robust way for players to customize the actors in the game. Using Yanfly's auto-passive states plugin, I can make passive skills that can be learned using the JP system, and then subsequently equipped using the skill equip system. Most of the classes will have a passive skill that can be equipped on other classes to provide certain support abilities to other classes.


    For example, I have the rogue class, which has a skill called 'Dual Wield' that grants a passive state to cause the actor to switch equip-type to dual wield. This skill can be learned using the JP system, and then equipped using the skill equip system to provide this passive state to all other classes. However, Yanfly's passive states plugin cannot use another passive state as an argument for determining if a passive state activates or not, so I need to find other ways to prevent the player from using the dual wield skill while having a two-handed weapon equipped, because the two states are incompatible.


    If the player equips the dual-wield skill while wielding a two-handed weapon, he's allowed to equip a second weapon in his offhand, increasing damage further than should be allowed, breaking game balance, because one passive state cannot overwrite the other.


    The simplest way to prevent this is to prevent the player from equipping the dual-wield skill if he is already under the effect of the two-handed weapon state. I can prevent the reverse from happening by disabling two-handed weapon type in the dual-wield state, which would prevent the player from being able to equip a two-handed weapon at all if under the effects of it. You plugin could perform this check in the same way it checks if a skill is already equipped that blocks the skill, only instead of looking at equipped skills it could check active states on the user, using the argument in the code snippet that Killerfer posted above (if (user.isStateAffected(x)))


    I hope this is a little less confusing. This plugin is already quite amazing as is. Good work so far :)
  18. @ramza


    Oh I tottaly forgot about the infinite loop thing, sorry about that. Try to do this instead then:


    <Custom Passive Condition>


    if (user.eqsSkillEquipped($dataSkills[x])) {


    condition = false;


    } else {


    condition = true;


    }


    </Custom Passive Condition>


    This checks if the actor has skill X equipped. It works in the skill core, I think it should work in the auto passive states too.
  19. Moogle_X said:
    @Luth


    I might misunderstand your post. But, I'm pretty sure you can equip the currently "being learned" skill from equipment by default.


    Even if the said skill is not yet mastered. I already tested it so many times before. Just make sure to put "Equipment Learning" plugin below "Equip Skill System".



    Well it worked. Yaay ! Thanks :
  20. The plugin is updated to v1.45! :D


    Change Log:


    - Added optional "EQS Class Restriction" feature.


    Now, you can add extra layer of restriction on skill equip based on actor's class/subclass.


    You need to enable the parameter first, though.

    Spoiler
    EQS_ClassRestrict_zpsfszrnrhd.png



    For more detailed information about the setup, please read the help file. ;)


    @ramza


    How about adding this custom passive condition on your dual wield state.

    <Custom Passive Condition>


    if (user.isEquipTypeSealed(2)) {


      condition = false;


      user.releaseUnequippableItems();


    } else {


      condition = true;


    }


    </Custom Passive Condition>



    So, basically the passive state will check if actor's shield slot is sealed or not. If true, the dual wield state will disappear.


    If false, dual wield state will persist. There is some minor visual weirdness though in the Scene Equip.


    If the player equip the 2-handed weapon on the second weapon slot when the dual wield state still active, the second weapon slot will be emptied immediately, and the slot will be renamed to shield.


    Everything is working perfectly if the player try to equip the 2-handed weapon on the first weapon slot.