Would you also want a feature like this?


  • Total voters
    9

atoms

Veteran
Veteran
Joined
May 31, 2013
Messages
555
Reaction score
345
First Language
English
Primarily Uses
RMMV
Alright!

For those who don't know what Octopath Traveler is, it's a game that game out fairly recently (July 13, 2018). I liked how it handled the subclasses and was wondering if I could get a similar affect in RPG Maker MV.

You can read about the game here.
https://en.wikipedia.org/wiki/Octopath_Traveler

The feature allowed any of the party members to equip a subclass, but limited it so only one party member could use the subclass at one time.

I would like this, but with a twist. Where 2 party members can either equip a class as either a main class or a subclass or both.

I was wondering if it's possible to limit the classes and subclasses using Yanfly's scripts.

The scripts I'm on about are
Class Change Core
http://yanfly.moe/2015/11/27/yep-32-class-change-core/
Subclass
http://yanfly.moe/2015/11/29/yep-34-subclass/

In-case that's not clear, as an example. Let's say Actor 1 and Actor 2 can switch between the same classes and subclasses. So maybe the classes are Fighter, Knight, Warrior, Magician.

I would like to limit it so while both actors have access to four classes & subclasses only two of those actors can use it as either a main class, a subclass or both at a time.

So Actor 1 main class can be a Fighter, and Actor 2 main class can be a Fighter, but then no other actor in the party can use the Fighter class as either a main class or subclass until either Actor 1 or Actor 2 changes there class.

Yet Actor 2 can still use Fighter as there subclass instead while Actor 1 uses Fighter as there main class.

As another example with subclasses instead, Actor 1 can be a Fighter as there main class and a Knight as there subclass and then Actor 2 can be a Warrior as there main class, Knight as there subclass. Now Actor 3 can not use Knight as either a main class or a subclass untill either Actor 1 or Actor 2 swaps out the Knight class.

I'm not sure if it requires a simple edit, or a add-on, or if it's really complex, or somewhere between the two, but if someone could put limits on the classes and subclasses per party members that'd be great.

I know it can be done through common events, states and items BUT with Yanfly's class and subclass system your actors can see there stats increase/decrease when changing classes. If I did this with common events, states and items I don't know how the player could still see those stats.

If possible, I would like the player to still be able to visually see the stats increase and decrease by changing classes for both main classes and subclasses.

If anyone can also think of an alternative way to display stats and limit the classes or subclasses through events or a simpler way with javascript or another plugin, and if it's easier, please let me know you suggestions.

Many thanks!

:)
 
Last edited:

atoms

Veteran
Veteran
Joined
May 31, 2013
Messages
555
Reaction score
345
First Language
English
Primarily Uses
RMMV
Bump. Been way over 72 hours so I rewrote the entire thread title and message to be a lot clearer.

Thanks for reading and listening! :)
 

Lionheart_84

Veteran
Veteran
Joined
Oct 27, 2015
Messages
631
Reaction score
58
First Language
Italian
Primarily Uses
Alright!

For those who don't know what Octopath Traveler is, it's a game that game out fairly recently (July 13, 2018). I liked how it handled the subclasses and was wondering if I could get a similar affect in RPG Maker MV.

You can read about the game here.
https://en.wikipedia.org/wiki/Octopath_Traveler

The feature allowed any of the party members to equip a subclass, but limited it so only one party member could use the subclass at one time.

I would like this, but with a twist. Where 2 party members can either equip a class as either a main class or a subclass or both.

I was wondering if it's possible to limit the classes and subclasses using Yanfly's scripts.

The scripts I'm on about are
Class Change Core
http://yanfly.moe/2015/11/27/yep-32-class-change-core/
Subclass
http://yanfly.moe/2015/11/29/yep-34-subclass/

In-case that's not clear, as an example. Let's say Actor 1 and Actor 2 can switch between the same classes and subclasses. So maybe the classes are Fighter, Knight, Warrior, Magician.

I would like to limit it so while both actors have access to four classes & subclasses only two of those actors can use it as either a main class, a subclass or both at a time.

So Actor 1 main class can be a Fighter, and Actor 2 main class can be a Fighter, but then no other actor in the party can use the Fighter class as either a main class or subclass until either Actor 1 or Actor 2 changes there class.

Yet Actor 2 can still use Fighter as there subclass instead while Actor 1 uses Fighter as there main class.

As another example with subclasses instead, Actor 1 can be a Fighter as there main class and a Knight as there subclass and then Actor 2 can be a Warrior as there main class, Knight as there subclass. Now Actor 3 can not use Knight as either a main class or a subclass untill either Actor 1 or Actor 2 swaps out the Knight class.

I'm not sure if it requires a simple edit, or a add-on, or if it's really complex, or somewhere between the two, but if someone could put limits on the classes and subclasses per party members that'd be great.

I know it can be done through common events, states and items BUT with Yanfly's class and subclass system your actors can see there stats increase/decrease when changing classes. If I did this with common events, states and items I don't know how the player could still see those stats.

If possible, I would like the player to still be able to visually see the stats increase and decrease by changing classes for both main classes and subclasses.

If anyone can also think of an alternative way to display stats and limit the classes or subclasses through events or a simpler way with javascript or another plugin, and if it's easier, please let me know you suggestions.

Many thanks!

:)


It's also very interesting to me. I also take this opportunity to revive the topic.
 

ATT_Turan

Forewarner of the Black Wind
Veteran
Joined
Jul 2, 2014
Messages
5,579
Reaction score
3,640
First Language
English
Primarily Uses
RMMV
The answer is no, it's not possible using those Yanfly plugins. Neither the Class Change nor the Subclass plugin allow for any custom evaluation of whether an actor has access to a given class - it's either locked or unlocked.

It would be possible to write a plugin extension that's compatible with those to give this functionality, but after 4 years of this thread getting no responses, and most new work being done for MZ, you'll get more luck requesting it in the commissions forum.
 

eomereolsson

Veteran
Veteran
Joined
Sep 29, 2021
Messages
452
Reaction score
370
First Language
German
Primarily Uses
RMMV
@atoms , @Lionheart_84 slap the following plugin between the class change core and the subclass extension. I know it could be prettier with parameters and stuff, but I ain't got time for that at the moment :rswt

JavaScript:
var Eomereolsson = Eomereolsson || {};
Eomereolsson.Window_ClassList_isEnabled = Window_ClassList.prototype.isEnabled;

Window_ClassList.prototype.isEnabled = function(item) {
    let amountOfClass = 0;
    $gameParty.members().forEach(m => {if(m._classId == item || m._subclassId == item)amountOfClass++;});
    if (amountOfClass >= 2) return false;
    return Eomereolsson.Window_ClassList_isEnabled.call(this, item);
};
 

Lionheart_84

Veteran
Veteran
Joined
Oct 27, 2015
Messages
631
Reaction score
58
First Language
Italian
Primarily Uses
@atoms , @Lionheart_84 slap the following plugin between the class change core and the subclass extension. I know it could be prettier with parameters and stuff, but I ain't got time for that at the moment :rswt

JavaScript:
var Eomereolsson = Eomereolsson || {};
Eomereolsson.Window_ClassList_isEnabled = Window_ClassList.prototype.isEnabled;

Window_ClassList.prototype.isEnabled = function(item) {
    let amountOfClass = 0;
    $gameParty.members().forEach(m => {if(m._classId == item || m._subclassId == item)amountOfClass++;});
    if (amountOfClass >= 2) return false;
    return Eomereolsson.Window_ClassList_isEnabled.call(this, item);
};


Thanks, does that suggestion also apply to the SUBCLASS plugin ?!
Also, a program to open and fix plugins?
 

ATT_Turan

Forewarner of the Black Wind
Veteran
Joined
Jul 2, 2014
Messages
5,579
Reaction score
3,640
First Language
English
Primarily Uses
RMMV
Thanks, does that suggestion also apply to the SUBCLASS plugin ?!
eomere's instructions referenced the Subclass plugin, and you can see the word subclass in the code, so yes.

Also, a program to open and fix plugins?
What does this mean? Plugins are just files with code, you open them with any text editor - what does "fix" mean?

You would copy the code above, paste it into Notepad or any text editor, and save it as a .js file just like any other plugin.
 

Lionheart_84

Veteran
Veteran
Joined
Oct 27, 2015
Messages
631
Reaction score
58
First Language
Italian
Primarily Uses
eomere's instructions referenced the Subclass plugin, and you can see the word subclass in the code, so yes.


What does this mean? Plugins are just files with code, you open them with any text editor - what does "fix" mean?

You would copy the code above, paste it into Notepad or any text editor, and save it as a .js file just like any other plugin.

Ok ... Where did I go wrong?!?
 

Attachments

  • blocco.png
    blocco.png
    60 KB · Views: 5

ATT_Turan

Forewarner of the Black Wind
Veteran
Joined
Jul 2, 2014
Messages
5,579
Reaction score
3,640
First Language
English
Primarily Uses
RMMV
Ok ... Where did I go wrong?!?
In step 1 when you apparently opened one of Yanfly's plugins in Notepad. No one told you to do that.

eomere told you to save the code he gave you as a new plugin and place it between the two Yanfly plugins in your plugin manager.
 

eomereolsson

Veteran
Veteran
Joined
Sep 29, 2021
Messages
452
Reaction score
370
First Language
German
Primarily Uses
RMMV
Do not open any of Yanfly's plugins at all.
1. Make a new, empty file (for example with notepad).
2. Paste the code I provided above into the new file.
3. Save this file as a .js file. Name it EOM_ClassPartyMax.js for example.
4. Put this file into your plugin folder, like you did with Yanfly's plugins.
5. Use the plugin manager to activate this new plugin. Like you did with Yanfly's plugins.
6. Move the plugin in the order of the plugins in your plugin manager in such a way that it will both be
- below Yanfly's Class Change Core plugin
- above Yanfly's Subclass Extension plugin

I don't know how I can be any more explicit.
 

Lionheart_84

Veteran
Veteran
Joined
Oct 27, 2015
Messages
631
Reaction score
58
First Language
Italian
Primarily Uses
Do not open any of Yanfly's plugins at all.
1. Make a new, empty file (for example with notepad).
2. Paste the code I provided above into the new file.
3. Save this file as a .js file. Name it EOM_ClassPartyMax.js for example.
4. Put this file into your plugin folder, like you did with Yanfly's plugins.
5. Use the plugin manager to activate this new plugin. Like you did with Yanfly's plugins.
6. Move the plugin in the order of the plugins in your plugin manager in such a way that it will both be
- below Yanfly's Class Change Core plugin
- above Yanfly's Subclass Extension plugin

I don't know how I can be any more explicit.
It doesn't let me save it as .js.
 

eomereolsson

Veteran
Veteran
Joined
Sep 29, 2021
Messages
452
Reaction score
370
First Language
German
Primarily Uses
RMMV
Here you go. The above code neatly packaged in on .js-file ready for you to download.
Though I recommend looking at why you can't save something as a .js-file. Somewhere there is something wonky going on.
 

Attachments

  • EOM_ClassPartyMax.js
    424 bytes · Views: 2

Lionheart_84

Veteran
Veteran
Joined
Oct 27, 2015
Messages
631
Reaction score
58
First Language
Italian
Primarily Uses
Error:
 

Attachments

  • Errore.png
    Errore.png
    232.3 KB · Views: 2

eomereolsson

Veteran
Veteran
Joined
Sep 29, 2021
Messages
452
Reaction score
370
First Language
German
Primarily Uses
RMMV
I erroneously uploaded an older (faulty) version of my plugin. I will update it as soon as I am back home. In the meantime you could just open it in a text editor and remove the lines that read console.log(...);
 

Lionheart_84

Veteran
Veteran
Joined
Oct 27, 2015
Messages
631
Reaction score
58
First Language
Italian
Primarily Uses
Ok, I'll wait for your improved and corrected version.
 

Lionheart_84

Veteran
Veteran
Joined
Oct 27, 2015
Messages
631
Reaction score
58
First Language
Italian
Primarily Uses
It doesn't work, it still makes me equip the same class for all the members of the party.
 

Latest Threads

Latest Posts

Latest Profile Posts

By far, the weirdest flex I've ever seen on the internet is "I don't have the attention span to read what you wrote, but I REALLY want the world to know I don't have that attention span!".
Why... the FACK... do I work in customer service?!?!
Excuse me while I go question allllll my life choices.
DamageEvil_6.png added!
index.php

Sometimes I wonder why I still try and recruit others to help with my games. It never works.

Forum statistics

Threads
125,777
Messages
1,173,418
Members
164,930
Latest member
alantangyl
Top