Author Topic: [XP] Legacy Class Change  (Read 47925 times)

Offline legacyblade

  • Pretzel Man
  • Moderator
  • Chaos User
  • ***
  • Posts: 1838
  • LV: 84
  • Gender: Male
  • There is a fate worse than hell
    • View Profile
    • SpencerConrad.com
[XP] Legacy Class Change
« on: August 27, 2008, 12:23:45 AM »
Legacy Class Change
Authors: legacyblade
Version: 1.68
Type: Class Change Script
Key Term: Misc System

Introduction

After awhile of searching through script databases, I was unsuccessful at finding a class changing script that did what I wanted it to do. I found one that was sort of close, but didn't work with BlizzABS, or any other ABS for that matter, and that just didn't work for me. So, I decided to make one, and I think it turned out quite well. The system is reminiscent of Final Fantasy Tactics Advanced.

Features

  • Actor Specific Classes
    Define Special Classes that are unlocked for an actor only by a script call (in case the player needs to pay for special training to unlock said class)
  • Class Level Requirements
    Define how many times an actor must level up while using a certain class/classes to unlock another class. (you can make the “Alchemist” class require 3 levels as a mage, and 3 levels as a cleric). The system is so versatile, that you can even require levels in Special Classes!
  • Multiline class descriptions
    Define descriptions for each class that will be displayed in the class change window. (supports multiple lines of description!)
  • Class Specific Skills
    Class Specific Skills. This allows you to set skills as class specific. Class specific skills are only availible when an actor is a class that the skill is specific to. You can even set a skill specific to multiple classes (so the Paladin can use heal if he learned it as a cleric, so the Gladiator can use "tackle" if he learned it as a lancer, etc.)
  • Linked Actor System
    Linked Actor system. This allows you to define actors that, when they change their class, change the class of actors that are "linked" to them.
  • Class Graphic system
    You have the ability to cause both an actor's charset AND their battler to change based on their current class. (compatible with ALL battle systems)
  • Simple configuration
  • Completely Lag-free!
  • Compatible with any CMS (provided, of course, you do a one line edit of that CMS so that it has an option for "Class Change"



Screenshots(outdated)

  
(click to show/hide)

Demo
http://legacyblade.com/downloads/scripts/LSC/LegacyClassChangev1_68.zip

Script
In the Demo

Instructions

Instructions are in the script


Compatibility

100% compatible with the SDK (or so it seems)

100% compatible with Ccoa's UMS

100% compatible with the BlizzABS

Should be 100% compatible with most scripts.

Credits and Thanks

  • Blizzard for all his help. Without him, I couldn't have made it. Not
    only did he help me fix the errors, he also gave me lectures on various
    aspects of programming. This caused me to make LESS errors, and grow
    in my programming skill. Thanks blizz, this script wouldn't be here
    today if you hadn't been there in that MIRC room, XD
  • GubiD for when blizzard wasn't around in MIRC to answer my questions.
    he helped me with a few errors that I had no idea how to fix (many of
    them were some of the most n00bish errors too -_-). Thanks GubiD
    couldn't have done it without ya!
  • Sephirothtds for making TDS Class Change System incompatible with the Blizz-ABS. If it'd been compatible, I would have gone with your script, and never figured out how to make one myself . Your script's incompatibility with Blizz-ABS sparked my urge to learn to script.Thanks!
  • Juan, who offered a few pointers.
  • To all those who put up with me in the CP chat room when I'm ranting
    about my newest error.
  • To all the members of eminweb.com for nagging me enough to do my
    administrative duty, which eventually cured me of my infamous laziness
  • StarrodKirby86 for requesting the class graphic system, it made this
    script have a feature not many class changing systems have.
  • To the members of Chaos Project who offered feedback, and requested features. Without your ideas, this would be a much simpler, more boring system.



Author's Notes

I'm working on adding a few more features. Please give me some suggestions!
« Last Edit: April 27, 2010, 03:34:26 AM by legacyblade »

Offline Starrodkirby86

  • Kirby de Varita Estelar
  • Guardian of Chaos
  • ********
  • Posts: 3281
  • LV: 194
  • Gender: Male
  • ~!
    • View Profile
    • The Archive of Starrodkirby86
Re: [XP]Legacy Class Change
« Reply #1 on: August 27, 2008, 12:27:20 AM »
What!? You posted it even though the script still contains the scrolling error!? You're a madman! A MADMAN! Anyway, I'm really appreciative of this, and I love how the Credits mention my name. :3

Good job with having the Type and Key Term, but it seems very unprofessional...*Cough* *cough*

Quote
Type: Type: class change script

:P

What's osu!? It's a rhythm game. Thought I should have a signature with a working rank. ;P It's now clickable!
Still Aqua's biggest fan (Or am I?).



Offline DeathLock

  • Astral Trancist
  • *****
  • Posts: 586
  • LV: 53
  • Gender: Male
    • View Profile
Re: [XP]Legacy Class Change
« Reply #2 on: August 27, 2008, 12:50:43 AM »
Quote from: legacyblade
To all the members of eminweb.com for nagging me enough to do my
administrative duty, which eventually cured me of my infamous laziness
:^_^':


Offline legacyblade

  • Pretzel Man
  • Moderator
  • Chaos User
  • ***
  • Posts: 1838
  • LV: 84
  • Gender: Male
  • There is a fate worse than hell
    • View Profile
    • SpencerConrad.com
Re: [XP]Legacy Class Change
« Reply #3 on: August 27, 2008, 12:54:03 AM »
I'm glad you guys like it. And btw, I was incorrect about that blizzABS incompatibility, ignore that, XD

and kirby, lol, I'll fix that now.

@deathlock, yes, your nagging is appreciated XD
« Last Edit: August 27, 2008, 01:02:45 AM by legacyblade »

Offline Valcos

  • Chaos User
  • ******
  • Posts: 1318
  • LV: 47
  • Gender: Female
  • Posts: 1337
    • View Profile
Re: [XP]Legacy Class Change
« Reply #4 on: August 27, 2008, 08:51:42 PM »
Nice work LB :haha:. This actually gave me an idea for something else :???: Which really doesnt have anything to do with class change. But thank you for the help :o.
"We are all in the gutter, but some of us are looking at the stars."
-Oscar De La Hoya

Offline Blizzard

  • This sexy
  • Administrator
  • has over 9000 posts
  • *****
  • Posts: 20013
  • LV: 651
  • Gender: Male
  • Magic midgets.
    • View Profile
    • You're already on it. (-_-')
Re: [XP]Legacy Class Change
« Reply #5 on: September 01, 2008, 12:36:20 AM »
WHY IS THIS NOT IN DATABASE?! >8U I'm gone for a week and everything gets messed up. xD *moves*
Check out Daygames and our games:

King of Booze      King of Booze: Never Ever      Pet Bots
Drinking Game for Android      Never have I ever for Android      Pet Bots for Android
Drinking Game for iOS      Never have I ever for iOS      Pet Bots for iOS
Drinking Game on Steam


Quote from: winkio
I do not speak to bricks, either as individuals or in wall form.

Quote from: Barney Stinson
When I get sad, I stop being sad and be awesome instead. True story.

Offline shdwlink1993

  • Ethereal Devastator
  • ****
  • Posts: 435
  • LV: 63
  • Gender: Male
    • View Profile
    • YouTube Profile
Re: [XP] Legacy Class Change
« Reply #6 on: September 01, 2008, 08:04:09 AM »
WHY IS THIS NOT IN DATABASE?! >8U I'm gone for a week and everything gets messed up. xD *moves*
That's my way of telling you not to leave! xD

No, it's not that. I'm just never 100% sure what justifies a script being "Databased" as opposed to being not, so I lean naturally on the "not databased" side of things.
Stuff I've made:

(click to show/hide)

"Never think you're perfect or else you'll stop improving yourself."

"Some people say the glass is half full... some half empty... I just wanna know who's been drinking my beer."

Offline Blizzard

  • This sexy
  • Administrator
  • has over 9000 posts
  • *****
  • Posts: 20013
  • LV: 651
  • Gender: Male
  • Magic midgets.
    • View Profile
    • You're already on it. (-_-')
Re: [XP] Legacy Class Change
« Reply #7 on: September 01, 2008, 11:00:07 AM »
1. Follows the template.
2. Useful script.
3. Finished script, not stuff like v0.4 or beta 3 or stuff like that.
Check out Daygames and our games:

King of Booze      King of Booze: Never Ever      Pet Bots
Drinking Game for Android      Never have I ever for Android      Pet Bots for Android
Drinking Game for iOS      Never have I ever for iOS      Pet Bots for iOS
Drinking Game on Steam


Quote from: winkio
I do not speak to bricks, either as individuals or in wall form.

Quote from: Barney Stinson
When I get sad, I stop being sad and be awesome instead. True story.

Offline legacyblade

  • Pretzel Man
  • Moderator
  • Chaos User
  • ***
  • Posts: 1838
  • LV: 84
  • Gender: Male
  • There is a fate worse than hell
    • View Profile
    • SpencerConrad.com
Re: [XP] Legacy Class Change
« Reply #8 on: September 01, 2008, 06:23:11 PM »
Whooo, I'm in the database. Now i just need to wait for blizz to be in the chat so I can ask a question!

Offline legacyblade

  • Pretzel Man
  • Moderator
  • Chaos User
  • ***
  • Posts: 1838
  • LV: 84
  • Gender: Male
  • There is a fate worse than hell
    • View Profile
    • SpencerConrad.com
Re: [XP] Legacy Class Change
« Reply #9 on: November 26, 2008, 08:55:57 PM »
new version. all the old bugs are fixed, and now it gives skills based on your class level, rather than the actor's overall level.

Offline Diokatsu

  • Wind God
  • Lexima Warrior
  • *******
  • Posts: 2805
  • LV: 52
  • Gender: Male
  • Fuck yes.
    • View Profile
Re: [XP] Legacy Class Change
« Reply #10 on: November 26, 2008, 09:01:17 PM »
Wow LB! this is really neat! I love it and it seems so efficient at that!

Offline Punn

  • Ethereal Devastator
  • ****
  • Posts: 493
  • LV: 9
    • View Profile
Re: [XP] Legacy Class Change
« Reply #11 on: November 28, 2008, 03:55:55 PM »
Me has question.
I tried the demo, and I want to know how to make a conditional and requirements, and make it NOT GO BACK to the previous class.
The requirement I mean is like a switch or a variable to be active or off. And possibly an item.

EDIT: And is it possible that if one actor is effected, the other one is effect also? Like if one turns into Warrior, the other actor will also be a warrior?
« Last Edit: November 28, 2008, 04:02:19 PM by Punn »

Offline legacyblade

  • Pretzel Man
  • Moderator
  • Chaos User
  • ***
  • Posts: 1838
  • LV: 84
  • Gender: Male
  • There is a fate worse than hell
    • View Profile
    • SpencerConrad.com
Re: [XP] Legacy Class Change
« Reply #12 on: November 28, 2008, 09:51:37 PM »
@punn, so you want a certain class to only be active when a specified switch is active? that should be an easy feature to add. and do you want the item to be in the inventory, and be consumed? It sounds like a good feature, but could you describe it more in depth? and with that last bit, u want two actors classes to be linked? Is there some valid use for this, or you just think it'd be cool?

@Dio, thanks dio. It is my first script too ^_^

Offline Punn

  • Ethereal Devastator
  • ****
  • Posts: 493
  • LV: 9
    • View Profile
Re: [XP] Legacy Class Change
« Reply #13 on: November 28, 2008, 10:24:23 PM »
If you look at the Warzone Battlercry topic, you can play as the robot or the Pilot or 'Runner' (Majority will be the robot) so the class will show the rank. I want those both the robot and the runner to link their classes together.

And um... I'm trying to explain this more in depth. But like, if you get a quest, you have to do something, like maybe collect a special item, like in RO, but this can be done in conditional branch. But the thing I want is, when you a rookie and become a private, you cannot go back to rookie anymore, you can keep everything your currently equipping and skills, but you be level 1 again, so you need to raise your level again to raise up to another rank. I think the switch feature is better ^_^;;

Offline legacyblade

  • Pretzel Man
  • Moderator
  • Chaos User
  • ***
  • Posts: 1838
  • LV: 84
  • Gender: Male
  • There is a fate worse than hell
    • View Profile
    • SpencerConrad.com
Re: [XP] Legacy Class Change
« Reply #14 on: November 28, 2008, 11:36:46 PM »
Oh ok. that makes sense. and the functionality sounds useful too. I'll include something along those lines in the next version. let me see if I have it straight.

1. Ability to link actor's classes (if one actor becomes a warrior, all actors linked to said actor will become a warrior as well)
2. The ability to set up class hierarchy with the inability to degrade classes (if warlord is upgraded warrior, you can't change from warlord to warrior)
3. Classes can be granted with variables. (you can unlock a class based on a variable)

Anything else?

Offline Punn

  • Ethereal Devastator
  • ****
  • Posts: 493
  • LV: 9
    • View Profile
Re: [XP] Legacy Class Change
« Reply #15 on: November 30, 2008, 04:50:49 PM »
Possible to leave the skillset the same instead of starting from scratch?

Offline legacyblade

  • Pretzel Man
  • Moderator
  • Chaos User
  • ***
  • Posts: 1838
  • LV: 84
  • Gender: Male
  • There is a fate worse than hell
    • View Profile
    • SpencerConrad.com
Re: [XP] Legacy Class Change
« Reply #16 on: December 01, 2008, 02:08:58 AM »
leave the skillset the same? You mean keep your skills? It's always done that.

Offline Punn

  • Ethereal Devastator
  • ****
  • Posts: 493
  • LV: 9
    • View Profile
Re: [XP] Legacy Class Change
« Reply #17 on: December 02, 2008, 10:33:40 PM »
*uses the atomic bomb on rmxp.org*
I talked to this idiot back then in the old rmxp.org before something crazy went up, told me it might be impossible, fucking twats with their pea-sized heads.


Anyways, that's about it.
« Last Edit: December 02, 2008, 10:34:42 PM by Punn »

Offline Colinoliver

  • Trained Member
  • *
  • Posts: 20
  • LV: 0
  • Gender: Male
    • View Profile
Re: [XP] Legacy Class Change
« Reply #18 on: December 08, 2008, 04:23:56 PM »
Awesome script. I'm totally using it for my game. Credits to you galore!
BUT unfortunately I may have found an incompatibility error with Blizzard's Tons of Add-ons script.
Here is what happens: Upon reaching level up durring a battle the game crashes with this error message:

Script "Tons of add-ons part 2" line 2647 NoMethodError occured.
undefined method `+' for nil:NilClass

Here is line 2647 of Add-ons part 2:
      @skills.each {|id| result += BlizzCFG.passkl_database(id)[0]}
    end

This error only occurs if the character reaches level up durring battle. Out of battle and level is increased there is no problem. It seems it has to do with the passive skills add-on portion. I have a few passive skills but even with the function disabled I still get the error. I've tried moving your script before and after Tons of add-ons but still the same result. Obviously it works without Legacy Class change that's how I found what script was incompatible. But your class change is too perfect to just remove! ;)
For now I have deleted the Passive skill portion of the script and it works fine. Class changing is more important than the few passive skills I have. But someone else might absolutely need both.
Anything that can be altered to make them compatible?

Offline legacyblade

  • Pretzel Man
  • Moderator
  • Chaos User
  • ***
  • Posts: 1838
  • LV: 84
  • Gender: Male
  • There is a fate worse than hell
    • View Profile
    • SpencerConrad.com
Re: [XP] Legacy Class Change
« Reply #19 on: December 09, 2008, 03:38:28 AM »
You know, I think just about everyone who has used this script has gotten that error. However, it is not a script error, it’s just an error in your configuration. I should probably add a note in the script’s comments, as well as in the post. You will get that error due to a mistake you made in configuring the class requirement section.
You see, how the configuration works is this.
when CLASS_ID then return [0,1,2,3,4,5,6,7,8…]
Each entry in that array corresponds to how many levels a specified class in the database needs (except the first one, which is a dummy element that the script needs). So, if you have [0,0,0,0,0,0,5] in the array, then you would need 5 level ups with class number 6. In the script’s default configuration, there are a total of 19 classes. But a default RMXP project only has 8 classes. Due to how the script checks class levels, you will get an error if there are more entries in the array than you have classes. So, to avoid this error, just make sure you have the configuration set right. You need one more element in the array than you have total number of classes. The first element in the array is a dummy 0, but everything after that corresponds to the class in the database (the 2nd entry is ID number 1, which is fighter in the default configuration, 3rd entry is ID number 2, which is the lance, etc.)

Sorry for the inconvenience, I should probably mention this in the script’s configuration section. (sorry if this was confusing)

I’m glad you like the script, BTW.