HELP WITH SCRIPT
Posts
Pages:
1
Hello everyone and merry Christmas!
I need ur help with yanfly's class specifics script pleasssse... https://github.com/Archeia/YEARepo/blob/master/Core/Class_Specifics.rb
In this script, as many of you may know, there is the notetag: <subclass to: x, x> "This makes the class subclass only and only equippable if the primary class is one of the listed x classes."
I want to reverse the function of this notetag to lets say <primary for: x>, so i can put it on a primary class and this primary class to be equippable, only if a subclass is the listed x class.
Can someone help me do that please?
I need ur help with yanfly's class specifics script pleasssse... https://github.com/Archeia/YEARepo/blob/master/Core/Class_Specifics.rb
In this script, as many of you may know, there is the notetag: <subclass to: x, x> "This makes the class subclass only and only equippable if the primary class is one of the listed x classes."
I want to reverse the function of this notetag to lets say <primary for: x>, so i can put it on a primary class and this primary class to be equippable, only if a subclass is the listed x class.
Can someone help me do that please?
I think you may be misunderstanding the intent of the script, why would you want to do that?
The idea at the moment is that it makes it so you can set a class (say ninja) as a subclass to another class (say theif) so that a character has to be a thief before they can become a ninja.
If you need to swap around the requirement order surely you can simply swap which one you label as a subclass?
I could probably edit it for you if I spent half an hour reading how RMMV's function calls work - from giving the script a quick read it mostly makes sense but I think it may be better to check what you actually need first.
The idea at the moment is that it makes it so you can set a class (say ninja) as a subclass to another class (say theif) so that a character has to be a thief before they can become a ninja.
If you need to swap around the requirement order surely you can simply swap which one you label as a subclass?
I could probably edit it for you if I spent half an hour reading how RMMV's function calls work - from giving the script a quick read it mostly makes sense but I think it may be better to check what you actually need first.
Thanks for posting Rhuan!
Ok what I need is this: after the party beats a certain boss, i want the party to obtain it, in a form of subclass, called "affinity". For example, lets say the boss is Shiva from FF series, when the group beats Shiva, i want to unlock the Shiva affinity, which will be a subclass granting some % elemental buffs and resists (in this case Ice) and also will unlock a new main class to the actor that has it currently equipped. Lets say a Swordsman equips shiva affinity, he will gain access to the "Ice Swordsman" class,which will grand him new skills related to ice, as he levels up. Thats my idea.
I tried switching the labels (main and subclasses), but when i did that i had troubles with class names, levels, skill points and learning skills, but everything works perfect as it is, except my request of course and the fact that i will also need the option to lock an affinity for the rest of the actors when someone equips it... (which i also dont know how to do lol).
Also i still use rpg maker vx ace so no need for you to learn how RMMV's function calls work.
I would very much appreciate if u help me and if not, thanks for the time u spent on my post anyway!
Ok what I need is this: after the party beats a certain boss, i want the party to obtain it, in a form of subclass, called "affinity". For example, lets say the boss is Shiva from FF series, when the group beats Shiva, i want to unlock the Shiva affinity, which will be a subclass granting some % elemental buffs and resists (in this case Ice) and also will unlock a new main class to the actor that has it currently equipped. Lets say a Swordsman equips shiva affinity, he will gain access to the "Ice Swordsman" class,which will grand him new skills related to ice, as he levels up. Thats my idea.
I tried switching the labels (main and subclasses), but when i did that i had troubles with class names, levels, skill points and learning skills, but everything works perfect as it is, except my request of course and the fact that i will also need the option to lock an affinity for the rest of the actors when someone equips it... (which i also dont know how to do lol).
Also i still use rpg maker vx ace so no need for you to learn how RMMV's function calls work.
I would very much appreciate if u help me and if not, thanks for the time u spent on my post anyway!
OK It's RMVX Ace I'd have to learn the function calls for...
From having a read of what you want + the script the simplest method I can see wouldn't involve changing the script. Instead you would make:
1. "Affinity" classes - these would be the primary classes and would be set as primary only, note you'd need a "No affinity" class to use prior to earning affinities - it would be important to set everyone to that to begin with.
2. All of your other classes would then be set as subclasses either to the "No affinity" class or to the appropriate affinity class. (Note you may want to change a few of the settings in the first 150 lines of the class system script - e.g. by default it sets skill inheritance rate from a sub-class to 0.2 if your subclasses are going to be your main classes you'd probably want to increase that to 1.
Making it so only one character can use an affinity class at a time would take a script edit, and may be slightly tricky currentlt the class system does not track who can equip each class BUT it does give you:
$game_actors.unlock_class(y)
# This allows actor x to unlock class y, making it available for switching in
# and out in the Class scene.
#$game_actors.remove_class(y)
# This causes actor x to remove class y from being able to switch to and from.
# If the actor is currently class y, the class will not be removed. If the
# actor's current subclass is y, the subclass will be unequipped.
you could effectively apply the second of those two functions to all characters whenever an affinity class is equipped and then apply the first one whenever its unequipped.
Possibly by editing the change class method on rows 578-584 of the class system script - it would be a non-simple edit though - if this was javascript I could write it for you - I don't think i can write it in Ruby without spending a while in the tutorials which you could do.
From having a read of what you want + the script the simplest method I can see wouldn't involve changing the script. Instead you would make:
1. "Affinity" classes - these would be the primary classes and would be set as primary only, note you'd need a "No affinity" class to use prior to earning affinities - it would be important to set everyone to that to begin with.
2. All of your other classes would then be set as subclasses either to the "No affinity" class or to the appropriate affinity class. (Note you may want to change a few of the settings in the first 150 lines of the class system script - e.g. by default it sets skill inheritance rate from a sub-class to 0.2 if your subclasses are going to be your main classes you'd probably want to increase that to 1.
Making it so only one character can use an affinity class at a time would take a script edit, and may be slightly tricky currentlt the class system does not track who can equip each class BUT it does give you:
$game_actors.unlock_class(y)
# This allows actor x to unlock class y, making it available for switching in
# and out in the Class scene.
#$game_actors.remove_class(y)
# This causes actor x to remove class y from being able to switch to and from.
# If the actor is currently class y, the class will not be removed. If the
# actor's current subclass is y, the subclass will be unequipped.
you could effectively apply the second of those two functions to all characters whenever an affinity class is equipped and then apply the first one whenever its unequipped.
Possibly by editing the change class method on rows 578-584 of the class system script - it would be a non-simple edit though - if this was javascript I could write it for you - I don't think i can write it in Ruby without spending a while in the tutorials which you could do.
Thanks for the advice and all the tips Rhuan, but i think that this solution
creates more problems than it solves... for example:
How can I set a default subclass for an actor (to be already equiped at the start of the game) and make it so, that when changing back to "No affinity" option, to set back automaticaly the default subclass?
Also how can I set the labels to show only the subclasses names, unless I want my actor's classes to be named "No Affinity" or "Shiva"?
What about the levels of these classes, the skills they will activate and the jp points that will earn? From what i understand, the options you get for subclasses at this script on the editable region, are very limited.
I don't have the knowledge to change all that, as everything I mentioned, I believe require script changes.
Anyway, you're very kind to take the time and post this solution. I really appreciate it! Thanks again mate!
creates more problems than it solves... for example:
How can I set a default subclass for an actor (to be already equiped at the start of the game) and make it so, that when changing back to "No affinity" option, to set back automaticaly the default subclass?
Also how can I set the labels to show only the subclasses names, unless I want my actor's classes to be named "No Affinity" or "Shiva"?
What about the levels of these classes, the skills they will activate and the jp points that will earn? From what i understand, the options you get for subclasses at this script on the editable region, are very limited.
I don't have the knowledge to change all that, as everything I mentioned, I believe require script changes.
Anyway, you're very kind to take the time and post this solution. I really appreciate it! Thanks again mate!
author=Johan86
Thanks for the advice and all the tips Rhuan, but i think that this solution
creates more problems than it solves... for example:
How can I set a default subclass for an actor (to be already equiped at the start of the game) and make it so, that when changing back to "No affinity" option, to set back automaticaly the default subclass?
Also how can I set the labels to show only the subclasses names, unless I want my actor's classes to be named "No Affinity" or "Shiva"?
What about the levels of these classes, the skills they will activate and the jp points that will earn? From what i understand, the options you get for subclasses at this script on the editable region, are very limited.
I don't have the knowledge to change all that, as everything I mentioned, I believe require script changes.
Anyway, you're very kind to take the time and post this solution. I really appreciate it! Thanks again mate!
1. TO have a default subclass already equipped at the start you would add:
game_actors.change_subclass(class_id) (where x is the id number for the relevant character and class_id is the id number for the subclass) to any script called at the start of the game (e.g. your opening cutscene or something)
2. To set it so that changing to no affinity will take you back to the default no affinity class shouldn't take effort I think the script will already do that as long as all the affinfity classes are set as subclasses to affinities and the non-affinity classes are set as subclasses (but not to the affinities). I haven't tested this but it looks like it will work.
3. within class_system.rb change the bits in speech marks on lines 137 and 138, change "primary" to "Affinity" and "Subclass" to "Class". This will change the titles in the class selection menu there may be something else to change but I can't see it - I could spend a little longer looking later BUT as I don't have RMVX Ace I can never test any of this...
4. You can do anything with a subclass that you could do with a main class it will just take a little fiddling (the key one I can see is changing the 0.2 on line 108 to a 1.
Sorry I can't do it all for you as, as I mentioned above I don't have RMVX ace so can't test anything; if the above isn't enough to get you there maybe someone else could help you more.
1. $game_actors.change_subclass(y) I have already tried this, but it doesnt apply to subclasses for some reason, only to primary.
2. When changing to "No Affinity", it does not automatically equips the default subclass (tethered to "No Affinity"), it only unequips the previous subclass tethered to the previous affinity. As you can imagine, this way, the hall concept looses its purpose.
3. Changing the speech marks on lines 137 and 138, is the easy part, I already changed that, but I was refering to the names of classes and subclasses showing on the status windows of the actors.
4. Line 108: # This adjusts the stat rate inheritance for an actor if an actor has a subclass equipped. If you want to disable this, set the rate to 0.0.
This changes only the stats, nothing else...
Scratch the 1. part, sorry, i was trying change class, not change subclass. Yeah this works that way, you are right, but it does not solve everything else.
2. When changing to "No Affinity", it does not automatically equips the default subclass (tethered to "No Affinity"), it only unequips the previous subclass tethered to the previous affinity. As you can imagine, this way, the hall concept looses its purpose.
3. Changing the speech marks on lines 137 and 138, is the easy part, I already changed that, but I was refering to the names of classes and subclasses showing on the status windows of the actors.
4. Line 108: # This adjusts the stat rate inheritance for an actor if an actor has a subclass equipped. If you want to disable this, set the rate to 0.0.
This changes only the stats, nothing else...
Scratch the 1. part, sorry, i was trying change class, not change subclass. Yeah this works that way, you are right, but it does not solve everything else.
Ok sorry my answers aren't all perfect as mentioned I don't even have RMVX ace so can't test any of what I'm suggesting - normally you do stuff like this by fiddlign and testing lots...
For point 2 I thought you just wanted the unavailable classes to be removed for what you actually want you're going to need to add several ifs to the change class function (lines 578 to 584) basically 1 if for each possible affinity that could be being set and under each one use change_subclass(y) to set the correct starting subclass for the affinity.
For point 3 it sounds like you may need to look in some of the other scripts you're using I assume you're using the whole of yanfly's set which I was just skimming through everything is tweakable and that will be a minor edit just a case of finding the script behind the menu you're looking at and tweaking slightly.
For point 4 I said that was the first bit - note the system you're looking to use requires editing below the "here be dragons" style warning... ;) don't let that message stop you just save first.
For point 2 I thought you just wanted the unavailable classes to be removed for what you actually want you're going to need to add several ifs to the change class function (lines 578 to 584) basically 1 if for each possible affinity that could be being set and under each one use change_subclass(y) to set the correct starting subclass for the affinity.
For point 3 it sounds like you may need to look in some of the other scripts you're using I assume you're using the whole of yanfly's set which I was just skimming through everything is tweakable and that will be a minor edit just a case of finding the script behind the menu you're looking at and tweaking slightly.
For point 4 I said that was the first bit - note the system you're looking to use requires editing below the "here be dragons" style warning... ;) don't let that message stop you just save first.
Pages:
1













