Author Topic: [XP] RO Job/Skill System  (Read 60079 times)

Offline Blizzard

  • This sexy
  • Administrator
  • has over 9000 posts
  • *****
  • Posts: 19906
  • LV: 642
  • Gender: Male
  • Magic midgets.
    • View Profile
    • You're already on it. (-_-')
[XP] RO Job/Skill System
« on: January 09, 2008, 11:24:13 PM »
RO Job/Skill System
Authors: Blizzard
Version: 2.2b
Type: Ragnarok Online Job/Skill System Clone
Key Term: Custom Skill System

Introduction

This script allows you to use a skill system that is very similar to the skill system of the MMORPG Ragnarok Online. By gaining jobs and job levels the characters get points which they can use to learn and make skills stronger. Stronger skills have a higher numerical effect and lower SP cost. This script also allows the usage of a job change system.

This work is protected by the following license:
Quote
Creative Commons - Attribution-NonCommercial-ShareAlike 3.0 Unported
( http://creativecommons.org/licenses/by-nc-sa/3.0/ )

You are free:

to Share - to copy, distribute and transmit the work
to Remix - to adapt the work

Under the following conditions:

Attribution. You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work).

Noncommercial. You may not use this work for commercial purposes.

Share alike. If you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.

- For any reuse or distribution, you must make clear to others the license terms of this work. The best way to do this is with a link to this web page.

- Any of the above conditions can be waived if you get permission from the copyright holder.

- Nothing in this license impairs or restricts the author's moral rights.

Features

  • job/class level and and change system
  • skill level system that can be turned off as well
  • gain Job Points for each Job Level and use them to power up your skills or learn new ones
  • increased SP cost and decreased skill power for skills that have not been improved to the maximum level
  • two fully functional scenes for class changing and skill learning/improving
  • easy setup and use
  • compatible with Blizz-ABS and RTAB
  • wide range of possible uses
v1.0b
  • fixed font problem
  • now beta
v1.01b
  • fixed a crash problem where enemies would be tested on skill levels
v1.2b
  • actors can now learn Chaos Drive transformation skills through this system (REQUIRES CRLS 5.0 OR HIGHER)
  • classes/jobs now can have stat modifiers
v1.3b
  • skills can now have other skills as requirements
v1.4b
  • added option to hide skills that haven't met the prerequisites yet
  • improved coding and the way data display is being refreshed
v1.5b
  • fixed bug with forgetting skills
  • added option to forget all skills from other classes when changing the class
v1.6b
  • now more compatible with Blizz-ABS 2.57
v2.0b
  • fixed bug where HP/SP wouldn't apply when the max HP/SP were decreased
  • fixed bug with skill usage when JOB_ONLY was not active
  • now more compatible with Blizz-ABS 2.7
  • improved coding
v2.01b
  • fixed bug when activating JOB_ONLY
v2.1b
  • fixed a few small problems with Blizz-ABS
v2.2b
  • fixed a the bug where during actor parameter testing the class of the dummy actor would change and unequip equipment
  • fixed crash bug that could occur when trying to change the class again

Screenshots



Demo

RO Job/Skill System

Script

Just make a new script above main and paste this code into it.
Script Download

Instructions

Inside the script in the first comment.

Compatibility

95% compatible with SDK v1.x, 60% compatible with SDK v2.x. Can cause incompatibility issues with other exotic Skill Systems, CMS-es and CBS-es. Fully compatible with Blizz-ABS, not compatible with Mr. Mo's ABS. WILL corrupt old savegames.

Credits and Thanks

  • Blizzard
  • Nightfox for requesting this

Author's Notes

If you use this system to learn CD skills, it is recommended that you leave the skills' maximum level at only 1 as the consumption cost of the stats cannot change in CRLS. CD skills also don't appear in the improvement screen. Don't forget that you need to let the class be able to learn the CD skills just like a normal skill. If you don't have CRLS installed, the skill will be learned as if it was a normal skill.

If you find any bugs, please report them here:
http://forum.chaos-project.com

That's it! N-Joy! =D
« Last Edit: June 22, 2012, 09:45:42 PM by Blizzard »
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 Spoofus

  • CP's Lovable Turtle
  • Astral Trancist
  • *****
  • Posts: 804
  • LV: 19
  • Gender: Male
    • View Profile
Re: RO Job/Skill System
« Reply #1 on: January 12, 2008, 03:55:38 AM »
hey Blizz is there a way to have like a base stat bounus depending on the job of the character like if it a melle job it has a slight STR boost but if you change to a mage class you loose the STR boost and gain a INT boost instead


My Blog site I am working on: http://spoofus.weebly.com/

Offline Blizzard

  • This sexy
  • Administrator
  • has over 9000 posts
  • *****
  • Posts: 19906
  • LV: 642
  • Gender: Male
  • Magic midgets.
    • View Profile
    • You're already on it. (-_-')
Re: RO Job/Skill System
« Reply #2 on: January 12, 2008, 05:38:02 PM »
Sure. I'll see if I can add that in the next version.
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 Spoofus

  • CP's Lovable Turtle
  • Astral Trancist
  • *****
  • Posts: 804
  • LV: 19
  • Gender: Male
    • View Profile
Re: RO Job/Skill System
« Reply #3 on: January 12, 2008, 06:36:48 PM »
awsome that idea just hit hit me and thought that would be a cool feature  :D


My Blog site I am working on: http://spoofus.weebly.com/

Offline Phasedscar

  • Ethereal Devastator
  • ****
  • Posts: 303
  • LV: 21
  • Gender: Male
  • Oh god not monday again!
    • View Profile
Re: [XP] RO Job/Skill System
« Reply #4 on: January 24, 2008, 12:43:50 AM »
I just want to say that you've done a great job with all these codes Blizzard.  I'm currently making a game with your Blizz-ABS, Custom Stat Improvement, and RO Job skills.

I did notice something strange though.  When using Blizz-ABS with RO Job skills the changes to a skill's performance wasn't changing at all.  I placed the code above the main originally, when that didn't work I placed it over Blizz-ABS, though I'm not
getting any error messages whatsoever, it isn't scaling the skill strengths at all.

I'll give you a little more detail in what I have done with the customization if that
may have caused it.

  INIT_JP = 1
  LVL1_POWER = 50
  LVL1_COST = 100
  LVLUP_RATE = 20
  EXP_RATIO = 20
  RESET_LVLS = false
  JOB_ONLY = false
  USE_LEVEL = true
  USE_ALL = true
  RO_RIGHT = true
  EVASION = 'EVA'

I have each skill in my database set to a maximum of 10
   
when 1 then return 10
   when 2 then return 10
   when 3 then return 10
   when 4 then return 10
    etc.

And a branching job increase system, starting with a dummy class. ( ClassName(minimum level required))

                                                 _ Berserker(lv40)
                 __________Warrior(lv19)
               /                                 - Gladiator(lv40)
       Squire(lv1)
     /         \                                        _ Assassin(lv40)
   /             -----------------Rogue(lv19)
  /                                                     - Duelist(lv40)
???(starting)
  \                             _ Archmage(lv40)
   \             Mage(lv19)
     \         /               - Necromancer(lv40)
      Acolyte(lv1)
               \                                     _ Witchdoctor(lv40)
                 \__________Shaman(lv19)
                                                     - Priest(lv40)

The code for that looks like:

    when 1 then return [[19, 3], [19, 4]]
    when 2 then return [[19, 5], [19, 6]]
    when 3 then return [[40, 11], [40, 12]]
    when 4 then return [[40, 13], [40, 14]]
    when 5 then return [[40, 7], [40, 8]]
    when 6 then return [[40, 9], [40, 10]]
    when 15 then return [[1, 1], [1, 2]]


I had double checked all of that but I'm not sure if it has anything to do with it.  Anyway, I'm only mentioning a minor glitch that seems to be taking part of the code.  If there's any suggestions it would be greatly appreciated.
(click to show/hide)
The pictures in your signature may altogether be no more than 200kB. The height must not exceed 200 px and the width must not exceed 800 px. Altogether they may take up an area of 160000 px2. Every signature not matching this criteria is a subject of the moderator team to remove and leave this rule as message in your signature.

Offline Blizzard

  • This sexy
  • Administrator
  • has over 9000 posts
  • *****
  • Posts: 19906
  • LV: 642
  • Gender: Male
  • Magic midgets.
    • View Profile
    • You're already on it. (-_-')
Re: [XP] RO Job/Skill System
« Reply #5 on: January 24, 2008, 01:00:13 AM »
Hm, according to the script order list I put together here the ROSYS should go below Blizz-ABS. Could you check on this? If it doesn't work, I'll fix it right away.
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 Phasedscar

  • Ethereal Devastator
  • ****
  • Posts: 303
  • LV: 21
  • Gender: Male
  • Oh god not monday again!
    • View Profile
Re: [XP] RO Job/Skill System
« Reply #6 on: January 24, 2008, 01:14:25 AM »
I had actually set it back to the script order you had posted before (I've been reading pretty diligently on your forums and just now decided to speak up).

I did notice that I had taken you Equap script out of tons of addons and placed it in there, I'm thinking I might be getting a reset on the skill values from there, so I'm going to remove it and see what happens.

Edit1: In case you're wondering I had taken apart much of the tons of addons to clean up the script order a little and make it easier to modify the databases.  In other words I didn't want to look through thousands of lines of code to fine exactly what I'm looking for.

Edit2: Ok, I changed the script order to:
SDK 1.5
STCMS Hybrid
Tons of Addons
Blizz-ABS 1.8
Stat Distribution System
RO Jobskills
Main

I actually encountered another error with this... "Script Blizz-ABS line 6595: NoMethodError occurred, Undefined Method 'draw_text_shaded_later' for #<bitmap:0x3ab68f0>".  It might be 1.8 since you have been heavily modifying it for the Party AI lately, I'm not sure.
« Last Edit: January 24, 2008, 01:30:56 AM by Phasedscar »
(click to show/hide)
The pictures in your signature may altogether be no more than 200kB. The height must not exceed 200 px and the width must not exceed 800 px. Altogether they may take up an area of 160000 px2. Every signature not matching this criteria is a subject of the moderator team to remove and leave this rule as message in your signature.

Offline Blizzard

  • This sexy
  • Administrator
  • has over 9000 posts
  • *****
  • Posts: 19906
  • LV: 642
  • Gender: Male
  • Magic midgets.
    • View Profile
    • You're already on it. (-_-')
Re: [XP] RO Job/Skill System
« Reply #7 on: January 24, 2008, 01:24:43 AM »
Sure, no problem. That's why I made every add-on separate, you can easily delete the ones you don't need for whatever reason. Yeah, EQUAP could be causing problems.
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 Phasedscar

  • Ethereal Devastator
  • ****
  • Posts: 303
  • LV: 21
  • Gender: Male
  • Oh god not monday again!
    • View Profile
Re: [XP] RO Job/Skill System
« Reply #8 on: January 24, 2008, 01:34:30 AM »
Ok, I changed the order I mentioned above slightly so that Tons of Addons is below Blizz-ABS and it removed that one error.  I had modified Tons to contain Multi_Drop, HPSPPLUS and Multi_Hit.  Didn't alter the code on any of the lines of actual code in those addons, just a little bit of the databases.
(click to show/hide)
The pictures in your signature may altogether be no more than 200kB. The height must not exceed 200 px and the width must not exceed 800 px. Altogether they may take up an area of 160000 px2. Every signature not matching this criteria is a subject of the moderator team to remove and leave this rule as message in your signature.

Offline Blizzard

  • This sexy
  • Administrator
  • has over 9000 posts
  • *****
  • Posts: 19906
  • LV: 642
  • Gender: Male
  • Magic midgets.
    • View Profile
    • You're already on it. (-_-')
Re: [XP] RO Job/Skill System
« Reply #9 on: January 24, 2008, 01:37:32 AM »
Alright then. :) That deserves a power up, don't you think? ^_^
« Last Edit: January 24, 2008, 01:40:08 AM by Blizzard »
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 Phasedscar

  • Ethereal Devastator
  • ****
  • Posts: 303
  • LV: 21
  • Gender: Male
  • Oh god not monday again!
    • View Profile
Re: [XP] RO Job/Skill System
« Reply #10 on: January 24, 2008, 01:39:03 AM »
Haha, now I just need the sound from Soldiers of Fortune..  "FOOD!"
(click to show/hide)
The pictures in your signature may altogether be no more than 200kB. The height must not exceed 200 px and the width must not exceed 800 px. Altogether they may take up an area of 160000 px2. Every signature not matching this criteria is a subject of the moderator team to remove and leave this rule as message in your signature.

Offline Blizzard

  • This sexy
  • Administrator
  • has over 9000 posts
  • *****
  • Posts: 19906
  • LV: 642
  • Gender: Male
  • Magic midgets.
    • View Profile
    • You're already on it. (-_-')
Re: [XP] RO Job/Skill System
« Reply #11 on: January 26, 2008, 07:19:25 PM »
BTW, you should get 1.89. And the problem with the font was the shaded text add-on which Blizz-ABS had to test if it's there. Best you add the add-on above Blizz-ABS.

EDIT:

Updated to v1.2b.
« Last Edit: January 26, 2008, 07:20:05 PM by Blizzard »
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 Spoofus

  • CP's Lovable Turtle
  • Astral Trancist
  • *****
  • Posts: 804
  • LV: 19
  • Gender: Male
    • View Profile
Re: [XP] RO Job/Skill System
« Reply #12 on: February 01, 2008, 03:06:21 AM »
woot....  ;D you added the stat bonuses yay!! i guess asking does help out lol


My Blog site I am working on: http://spoofus.weebly.com/

Offline Phasedscar

  • Ethereal Devastator
  • ****
  • Posts: 303
  • LV: 21
  • Gender: Male
  • Oh god not monday again!
    • View Profile
Re: [XP] RO Job/Skill System
« Reply #13 on: February 01, 2008, 04:21:29 AM »
It is awesome, I would have mentioned it myself except you already had lol.

Good Job btw Blizz, it's working great for me now.
(click to show/hide)
The pictures in your signature may altogether be no more than 200kB. The height must not exceed 200 px and the width must not exceed 800 px. Altogether they may take up an area of 160000 px2. Every signature not matching this criteria is a subject of the moderator team to remove and leave this rule as message in your signature.

Offline Caro Ru Lushe

  • Blizzard's Slave Fairy
  • Ethereal Devastator
  • ****
  • Posts: 339
  • LV: 15
  • Gender: Female
  • The right to become a god is mine alone
    • View Profile
Re: [XP] RO Job/Skill System
« Reply #14 on: February 14, 2008, 08:02:46 AM »
 :D Finally, it is able to make Chaos Drives be learned! <3

*Power Up*

Offline Spoofus

  • CP's Lovable Turtle
  • Astral Trancist
  • *****
  • Posts: 804
  • LV: 19
  • Gender: Male
    • View Profile
Re: [XP] RO Job/Skill System
« Reply #15 on: February 20, 2008, 06:33:59 PM »
hmmm i was wondering if it would be possible to have it to where you can learn passive skills that raise your stats permanently
example:
thew player is a theif class and learns
a skill named Hawk's Grace( adds +5 AGL) and changes his class to
warrior, and he looses that skills stat raise until he changes back and then he would get the skill bounus again


My Blog site I am working on: http://spoofus.weebly.com/

Offline Blizzard

  • This sexy
  • Administrator
  • has over 9000 posts
  • *****
  • Posts: 19906
  • LV: 642
  • Gender: Male
  • Magic midgets.
    • View Profile
    • You're already on it. (-_-')
Re: [XP] RO Job/Skill System
« Reply #16 on: February 21, 2008, 05:14:52 PM »
You mean like specific skills that additionally increase the stats when in the right class?
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 Spoofus

  • CP's Lovable Turtle
  • Astral Trancist
  • *****
  • Posts: 804
  • LV: 19
  • Gender: Male
    • View Profile
Re: [XP] RO Job/Skill System
« Reply #17 on: February 22, 2008, 10:08:13 PM »
yeah exactly..you right on te mooney


My Blog site I am working on: http://spoofus.weebly.com/

Offline Phasedscar

  • Ethereal Devastator
  • ****
  • Posts: 303
  • LV: 21
  • Gender: Male
  • Oh god not monday again!
    • View Profile
Re: [XP] RO Job/Skill System
« Reply #18 on: February 23, 2008, 02:25:28 AM »
I decided to make a common event for custom class stat increases.  Basically it's just a series of variables that I'm using to increase the stats based on the character level.
 Works like this:

Control Variables: [001: current_level] = [Character]'s Level
Conditional Branch: Variable [001: current_level] == [002: next_level]
    Control Variables: [002: next_level] = Variable [001: Current_level]
    Control Variables: [002: next_level] += 1
     Condition Branch: [003: class] == ?? (a constant variable to determine your class, should be done when you use an activation event) 
         HP +10
         STR +10
    End
etc.
   Wait 1
Else
   Wait 1
End

This wont work unless I make an event where 002: next_level will have the same or higher requirement then the character's current level.  It's pretty simple and straight forward but it will allow for a linear increase in stats.  I would however like to also have learned abilities to increase stats that can be learned.

You can do it through a simple condition branch in a common event, the harder part is making sure that you do not have it repeat the increase.

Conditional Branch: [Character] is [Skill1] learned.
   Conditional Branch: Variable [004: HP_increase] == 0
      HP + 10
      Control Variable: [004: HP_increase] == 1
End
Conditional Branch: [Character] is [Skill2] learned.
   Conditional Branch: Variable [005: SP_increase] == 0
      SP + 10
      Control Variable: [005: SP_increase == 1]
End

Comment: You can also use these as a linear learning path, so you can reuse the same variable to say, make a skill better.


Conditional Branch: [Character] is [Skill1rank2] learned.
 Conditional Branch: Variable [003: HP_increase] == 1
   HP + 10
   Control Variable: [003: HP_increase] == 2
End

Not that for each unique skill not associated to the stat increase skill, you should add a new variable.  You should also make a unique skill for each rank to keep it from going further down your tree when you do not wish it too.  You can also remove the skill from your skill list on your character, but be careful in how the Control Variable works so that if you want it to repeatedly increase your stats it wont stop on the Conditional Branch: Variable [001: ??] == ?

You will also have to make a new set of conditional branches for each character, but if you plan on having unique skills to each character that wont take long.

Also, be sure to put in a wait command at the very bottom of the common event script to keep it from looping too bast and stalling your game.  Generally speaking a Wait 1 or Wait 2 is the best choice since it's still fast but throttles the scripts run speed down to a finite amount
« Last Edit: February 23, 2008, 02:27:24 AM by Phasedscar »
(click to show/hide)
The pictures in your signature may altogether be no more than 200kB. The height must not exceed 200 px and the width must not exceed 800 px. Altogether they may take up an area of 160000 px2. Every signature not matching this criteria is a subject of the moderator team to remove and leave this rule as message in your signature.

Offline Blizzard

  • This sexy
  • Administrator
  • has over 9000 posts
  • *****
  • Posts: 19906
  • LV: 642
  • Gender: Male
  • Magic midgets.
    • View Profile
    • You're already on it. (-_-')
Re: [XP] RO Job/Skill System
« Reply #19 on: February 23, 2008, 04:00:40 PM »
This looks nice. Why don't you post it in the Event Systems section? :)
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.