Fire Emblem-Style Class System Plugin?

Discussion in 'JS Plugin Requests' started by JtheDuelist, May 16, 2018.

  1. JtheDuelist

    JtheDuelist Just a dev who actually got a game finished Veteran

    Messages:
    1,131
    Likes Received:
    1,402
    Location:
    RMW Forums, Granvia, or Askr
    First Language:
    English
    Primarily Uses:
    RMMV
    I am needing a plugin that enables a class change system like Fire Emblem's, where when you use a certain item on a character at a certain level which also resets said character to level 1, but also using a different item to turn them into their old class also resets the character to level 1. Before you ask, yes, I did try Yanfly's Class Change Core and did what I wanted it to, but it had a BIG bug (even with no other plugins) where it read every character in the party as Harold, making it where that only Harold's class could change. I either need a new plugin or an edit of Yanfly's Class Change Core that fixes the aforementioned bug. And no, eventing the system is completely out of the question for what this is going to be used for- "Fire Emblem Essentials MV".

    This is an example of how FE's class system works.
    FEClassSystem.png
     
    #1
  2. DianteC

    DianteC Veteran Veteran

    Messages:
    205
    Likes Received:
    289
    Location:
    Missouri
    First Language:
    English
    Primarily Uses:
    RMMV
    This sounds awesome as I am in the works of an SRPG
     
    #2
    JtheDuelist likes this.
  3. JtheDuelist

    JtheDuelist Just a dev who actually got a game finished Veteran

    Messages:
    1,131
    Likes Received:
    1,402
    Location:
    RMW Forums, Granvia, or Askr
    First Language:
    English
    Primarily Uses:
    RMMV
    @DianteC I've got a link to the project page in my signature.
     
    #3
  4. Jeremiah Eastman

    Jeremiah Eastman Gladiator Veteran

    Messages:
    426
    Likes Received:
    199
    First Language:
    English
    Primarily Uses:
    RMMV
    I know you don't want to hear this but Yanfly's class change core should be able to do what you want, it just sounds like it needed more work on it to make it act how you want. I use the plugin and I could easily add the seals to my existing system to work just like the Fire Emblem system. I am a little unsure what you mean by it reading every character as harold, is that a class? In any case that just sounds like you need to adjust the parameters some.

    It sounds like maybe you just want someone to make a plugin that can easily do what you want but that is a big undertaking from someone, and I would plan on it not happening if it was me. If it does great but I wouldn't let my game get hung up on that personally. If you want to try and figure out how to get the yanfly plugin working though I would be willing to help you get it sorted out. I'll keep an eye on this post just in case. In any event, I hope ya get it all figured out and the game turns out great, best of luck to you.:smile:
     
    #4
    JtheDuelist likes this.
  5. JtheDuelist

    JtheDuelist Just a dev who actually got a game finished Veteran

    Messages:
    1,131
    Likes Received:
    1,402
    Location:
    RMW Forums, Granvia, or Askr
    First Language:
    English
    Primarily Uses:
    RMMV
    @Jeremiah Eastman What I mean by the whole Harold thing is this: I used a class change item on Lucius, but the menu instead thinks I chose Harold as the character I wanted to change the class of instead of Lucius.

    EDIT: If I enabled it as a menu option, it works like it should. It seems it doesn't want to play nice as a item.
     
    Last edited: May 16, 2018
    #5
    Jeremiah Eastman likes this.
  6. Jeremiah Eastman

    Jeremiah Eastman Gladiator Veteran

    Messages:
    426
    Likes Received:
    199
    First Language:
    English
    Primarily Uses:
    RMMV
    There are a few ways you could get it to read the right person. For something like this, and because my game has a ton of playable characters, I like to use a hidden state. So say you have a master seal. When you use it have it place a hidden state on whoever you use it one.

    Then, in the master seals effects, also add a common event. The common event would run down a list, using condition branches, to find anyone with the state, so you would need a section for each person. When it see's Lucius has the state I would then have it run a plugin command, UnlockClass 2 3. This would unlock class 3, for actror 2, which I am saying is Lucius. This is just one way to get it to find the right person, there are other ways to achieve this but that's a good one. From that basic structure you could add whatever flavor and options you need to get it dialed how you want it.

    Let me know what you think, I am happy to keep working with you on this is you want.
     
    #6
  7. JtheDuelist

    JtheDuelist Just a dev who actually got a game finished Veteran

    Messages:
    1,131
    Likes Received:
    1,402
    Location:
    RMW Forums, Granvia, or Askr
    First Language:
    English
    Primarily Uses:
    RMMV
    @Jeremiah Eastman Just got back from lunch and tried it and it still does the same thing... (since I have class unlocks based on prerequisite class levels, I didn't include UnlockClass to the common event).
    Am I doing something wrong here?
    Class Seal Event.png
     
    #7
    Jeremiah Eastman likes this.
  8. JtheDuelist

    JtheDuelist Just a dev who actually got a game finished Veteran

    Messages:
    1,131
    Likes Received:
    1,402
    Location:
    RMW Forums, Granvia, or Askr
    First Language:
    English
    Primarily Uses:
    RMMV
    @Jeremiah Eastman Still trying to get this to work- I may just have to make a key item that enables the option to appear on the main menu instead.
     
    #8
    Jeremiah Eastman likes this.
  9. Jeremiah Eastman

    Jeremiah Eastman Gladiator Veteran

    Messages:
    426
    Likes Received:
    199
    First Language:
    English
    Primarily Uses:
    RMMV
    Hey there sorry I didn't see your previous reply. But where you have plugin command openclass I think you should use UnlockClass 1 2, then UnlockClass 2 2 for the next person. The first one would unlock class 2 for actor 1, who I believe is harold. Then the 2nd one goes in Therese's state check opening class 2 for actor 2.

    You can use RemoveClass 1 2 to remove those classes if you don't want them carrying over, sort of like how fire emblem does it.
     
    #9
  10. JtheDuelist

    JtheDuelist Just a dev who actually got a game finished Veteran

    Messages:
    1,131
    Likes Received:
    1,402
    Location:
    RMW Forums, Granvia, or Askr
    First Language:
    English
    Primarily Uses:
    RMMV
    @Jeremiah Eastman It is just whenever the event reaches OpenClass, it begins doing the "everyone is considered Harold" thing, completely ignoring the states and all.
     
    #10
    Jeremiah Eastman likes this.
  11. Jeremiah Eastman

    Jeremiah Eastman Gladiator Veteran

    Messages:
    426
    Likes Received:
    199
    First Language:
    English
    Primarily Uses:
    RMMV
    #11
  12. Zarsla

    Zarsla Veteran Veteran

    Messages:
    677
    Likes Received:
    194
    First Language:
    English
    Here's a list of plugins you need:

    Yanfly Core Engine (Required for Skill Core & Item Core)
    Yanfly Item Core (Required for Item Requirements)
    Yanfly Item Requirements
    Yanfly Skill Core
    Himeworks Hide Choices
    (This is how the plugins should be listed in the plugin manager)

    You need to this for every item that changes the class:
    On the actual item make it where the skill target is the user and it works in
    the menu only.

    Just follow the imgur images, here.
    Also everything in red in the first image are things that must be set for this to
    work.
    The other image is that of the common event.


    If you want more choices then use this plugin. (In the plugin manager place it above Hide Choices and Under Skill Core).
     
    #12
  13. JtheDuelist

    JtheDuelist Just a dev who actually got a game finished Veteran

    Messages:
    1,131
    Likes Received:
    1,402
    Location:
    RMW Forums, Granvia, or Askr
    First Language:
    English
    Primarily Uses:
    RMMV
    @Zarsla So if I am understanding this right, I use Large Choices to set every possible class that can class change as options and use JS script calls to block off and hide certain choices based on a actor's current class?

    EDIT: I got everything working, but I keep getting "actorIds is not defined" and "script call error" (because I had to set that common event's script call into 3 calls because of the sheer number of classes it had to hold [29 to be exact] was more than a single call could hold) in the developer log.
     
    Last edited: May 24, 2018
    #13
  14. Zarsla

    Zarsla Veteran Veteran

    Messages:
    677
    Likes Received:
    194
    First Language:
    English
    #14
  15. JtheDuelist

    JtheDuelist Just a dev who actually got a game finished Veteran

    Messages:
    1,131
    Likes Received:
    1,402
    Location:
    RMW Forums, Granvia, or Askr
    First Language:
    English
    Primarily Uses:
    RMMV
    @Zarsla I had a few users trying to help me on another post while you were gone and said the the hide_choices command ignores the var line before it. After trying their fixes, the only errors I seem to get now are "Cannot read property 'isClass' of null".
     
    #15
  16. Zarsla

    Zarsla Veteran Veteran

    Messages:
    677
    Likes Received:
    194
    First Language:
    English
    Does the code look like this:
    $gameActors.actor(actorIds).isClass($dataClasses[15])
    replace 15 with the class id of your choice.

    Also could you post a screenshoot of the event, the way you have it set up?
     
    #16
  17. JtheDuelist

    JtheDuelist Just a dev who actually got a game finished Veteran

    Messages:
    1,131
    Likes Received:
    1,402
    Location:
    RMW Forums, Granvia, or Askr
    First Language:
    English
    Primarily Uses:
    RMMV

Share This Page