Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

3rd and 4th Auto Job Change!![and All Skill Master]

Newbie Spellweaver
Joined
Apr 13, 2008
Messages
16
Reaction score
0
Hi~ Ragezone users~
I don't speak English very well..
This is if your level 70, 2th job -> 3rd job auto change ^^
and your level 120, 3rd job -> 4th job autochange ^^

open your MapleCharacter.Java File
and Find It
public void levelUp() {
ISkill improvingMaxHP = SkillFactory.getSkill(1000001);
ISkill improvingMaxMP = SkillFactory.getSkill(2000001);
int improvingMaxHPLevel = getSkillLevel(improvingMaxHP);
int improvingMaxMPLevel = getSkillLevel(improvingMaxMP);
remainingAp += 5;
if (job == MapleJob.BEGINNER) {
// info from the odin what's working thread, thanks
maxhp += rand(14, 16);
maxmp += rand(10, 12);
} else if (job.isA(MapleJob.BOWMAN) || job.isA(MapleJob.THIEF) || job.isA(MapleJob.GM)) {
// info from bowman forum at sleepywood, thanks guys
maxhp += rand(20, 24);
maxmp += rand(14, 16);
} else if (job.isA(MapleJob.MAGICIAN)) {
// made up
maxhp += rand(10, 14);
maxmp += rand(20, 24);
} else if (job.isA(MapleJob.WARRIOR)) {
// made up
maxhp += rand(22, 26);
maxmp += rand(4, 7);
}
if (improvingMaxHPLevel > 0) {
maxhp += improvingMaxHP.getEffect(improvingMaxHPLevel).getX();
}
if (improvingMaxMPLevel > 0) {
maxmp += improvingMaxMP.getEffect(improvingMaxMPLevel).getX();
}
maxmp += getTotalInt() / 10;
exp.addAndGet(-ExpTable.getExpNeededForLevel(level + 1));
if (level == 200) {
exp.set(0);
}
maxhp = Math.min(30000, maxhp);
maxmp = Math.min(30000, maxmp);
level += 1;
List<Pair<MapleStat, Integer>> statup = new ArrayList<Pair<MapleStat, Integer>>(8);
statup.add(new Pair<MapleStat, Integer>(MapleStat.AVAILABLEAP, Integer.valueOf(remainingAp)));
statup.add(new Pair<MapleStat, Integer>(MapleStat.MAXHP, Integer.valueOf(maxhp)));
statup.add(new Pair<MapleStat, Integer>(MapleStat.MAXMP, Integer.valueOf(maxmp)));
statup.add(new Pair<MapleStat, Integer>(MapleStat.HP, Integer.valueOf(maxhp)));
statup.add(new Pair<MapleStat, Integer>(MapleStat.MP, Integer.valueOf(maxmp)));
statup.add(new Pair<MapleStat, Integer>(MapleStat.EXP, Integer.valueOf(exp.get())));
statup.add(new Pair<MapleStat, Integer>(MapleStat.LEVEL, Integer.valueOf(level)));
if (job != MapleJob.BEGINNER) {
remainingSp += 3;
statup.add(new Pair<MapleStat, Integer>(MapleStat.AVAILABLESP, Integer.valueOf(remainingSp)));
}
setHp(maxhp);
setMp(maxmp);
getClient().getSession().write(MaplePacketCreator.updatePlayerStats(statup));
getMap().broadcastMessage(this, MaplePacketCreator.showLevelup(getId()), false);
recalcLocalStats();
silentPartyUpdate();
guildUpdate();

amm. this my Java File .. your java file is not equal any..

and guildUpdate(); line blow you insert it
if(getLevel() >= 70) {
if (getJob().equals(MapleJob.getById(110))) {
changeJob(MapleJob.getById(111));
teachSkill(1111007,20,0);; //Armor Crash
teachSkill(1111006,30,0);; //Coma: Axe
teachSkill(1111005,30,0);; //Coma: Sword
teachSkill(1111002,30,0);; //Combo Attack
teachSkill(1110000,20,0);; //Improving MP recovery
teachSkill(1111004,30,0);; //Panic: Axe
teachSkill(1111003,30,0);; //Panic: Sword
teachSkill(1110001,20,0);; //Shield Mastery
teachSkill(1111008,30,0);; //Shout
}
else if (getJob().equals(MapleJob.getById(120))) {
changeJob(MapleJob.getById(121));
teachSkill(1211006,30,0);; // Blizzard Charge: BW
teachSkill(1211002,30,0);; // Charged Blow
teachSkill(1211004,30,0);; // Fire Charge: BW
teachSkill(1211003,30,0);; // Fire Charge: Sword
teachSkill(1211005,30,0);; // Ice Charge: Sword
teachSkill(1210000,20,0);; // Improving MP recovery
teachSkill(1211008,30,0);; // Lightning Charge: BW
teachSkill(1211009,20,0);; // Magic Crash
teachSkill(1210001,20,0);; // Shield Mastery
teachSkill(1211007,30,0);; // Thunder Charge: Sword
}
else if (getJob().equals(MapleJob.getById(130))) {
changeJob(MapleJob.getById(131));
teachSkill(1311008,20,0);; //Dragon Blood
teachSkill(1311004,30,0);; //Dragon Fury: Pole Arm
teachSkill(1311003,30,0);; //Dragon Fury: Spear
teachSkill(1311006,30,0);; //Dragon Roar
teachSkill(1310000,20,0);; //Elemental Resistance
teachSkill(1311002,30,0);; //Pole Arm Crusher
teachSkill(1311007,20,0);; //Power Crash
teachSkill(1311005,30,0);; //Sacrifice
teachSkill(1311001,30,0);; //Spear Crusher
}
else if (getJob().equals(MapleJob.getById(210))) {
changeJob(MapleJob.getById(211));
teachSkill(2110001,0,0);; //Element Amplification
teachSkill(2111006,30,0);; //Element Composition
teachSkill(2111002,30,0);; //Explosion
teachSkill(2110000,20,0);; //Partial Resistance
teachSkill(2111003,30,0);; //Poison Mist
teachSkill(2111004,20,0);; //Seal
teachSkill(2111005,20,0);; //Spell Booster
}
else if(getJob().equals(MapleJob.getById(220))){
changeJob(MapleJob.getById(221));
teachSkill(2210001,0,0);; //Element Amplification
teachSkill(2211006,30,0);; //Element Composition
teachSkill(2211002,30,0);; //Ice Strike
teachSkill(2210000,20,0);; //Partial Resistance
teachSkill(2211004,20,0);; //Seal
teachSkill(2211005,20,0);; //Spell Booster
teachSkill(2211003,30,0);; //Thunder Spear
}
else if(getJob().equals(MapleJob.getById(230))){
changeJob(MapleJob.getById(231));
teachSkill(2311001,20,0);; //Dispel
teachSkill(2311005,30,0);; //Doom
teachSkill(2310000,20,0);; //Elemental Resistance
teachSkill(2311003,30,0);; //Holy Symbol
teachSkill(2311002,20,0);; //Mystic Door
teachSkill(2311004,30,0);; //Shining Ray
teachSkill(2311006,30,0);; //Summon Dragon
}
else if(getJob().equals(MapleJob.getById(310))){
changeJob(MapleJob.getById(311));
teachSkill(3111004,30,0);; //Arrow Rain
teachSkill(3111003,30,0);; //Inferno
teachSkill(3110001,20,0);; //Mortal Blow
teachSkill(3111002,20,0);; //Puppet
teachSkill(3111005,30,0);; //Silver Hawk
teachSkill(3111006,30,0);; //Strafe
teachSkill(3110000,20,0);; //Thrust
}
else if(getJob().equals(MapleJob.getById(320))){
changeJob(MapleJob.getById(321));
teachSkill(3211004,30,0);; //Arrow Eruption
teachSkill(3211003,30,0);; //Blizzard
teachSkill(3211005,30,0);; //Golden Eagle
teachSkill(3210001,20,0);; //Mortal Blow
teachSkill(3211002,20,0);; //Puppet
teachSkill(3211006,30,0);; //Strafe
teachSkill(3210000,20,0);; //Thrust
}
else if(getJob().equals(MapleJob.getById(410))){
changeJob(MapleJob.getById(411));
teachSkill(4110000,20,0);; //Alchemist
teachSkill(4111005,30,0);; //Avenger
teachSkill(4111006,20,0);; //Flash Jump
teachSkill(4111001,20,0);; //Meso Up
teachSkill(4111004,30,0);; //Shadow Meso
teachSkill(4111002,30,0);; //Shadow Partner
teachSkill(4111003,20,0);; //Shadow Web
}
else if(getJob().equals(MapleJob.getById(420))){
changeJob(MapleJob.getById(421));
teachSkill(4211002,30,0);; //Assaulter
teachSkill(4211004,30,0);; //Band of Thieves
teachSkill(4211001,30,0);; //Chakra
teachSkill(4211006,30,0);; //Meso Explosion
teachSkill(4211005,20,0);; //Meso Guard
teachSkill(4211003,20,0);; //Pickpocket
teachSkill(4210000,20,0);; //Shield Mastery
}
}
if(getLevel() >= 120) {
if (getJob().equals(MapleJob.getById(111))) {
changeJob(MapleJob.getById(112));
teachSkill(1121000,20,20);
teachSkill(1121008,30,30);
teachSkill(1120003,30,30);
teachSkill(1120004,30,30);
teachSkill(1120003,30,30);
teachSkill(1121001,30,30);
teachSkill(1121002,30,30);
teachSkill(1121006,30,30);
teachSkill(1121010,30,30);
teachSkill(1121011,1,1);
}
else if (getJob().equals(MapleJob.getById(121))) {
changeJob(MapleJob.getById(122));
teachSkill(1220010,30,30);
teachSkill(1220005,30,30);
teachSkill(1220006,30,30);
teachSkill(1221009,30,30);
teachSkill(1221004,30,30);
teachSkill(1221003,30,30);
teachSkill(1221000,20,20);
teachSkill(1221001,20,20);
teachSkill(1221002,20,20);
teachSkill(1221007,30,30);
teachSkill(1221011,30,30);
teachSkill(1221012,1,1);
}
else if (getJob().equals(MapleJob.getById(131))) {
changeJob(MapleJob.getById(132));
teachSkill(1320005,30,30);
teachSkill(1321007,10,10);
teachSkill(1320008,25,25);
teachSkill(1320009,25,25);
teachSkill(1320006,30,30);
teachSkill(1321000,20,20);
teachSkill(1321010,1,1);
teachSkill(1321001,30,30);
teachSkill(1321003,30,30);
teachSkill(1321002,30,30);
}
else if (getJob().equals(MapleJob.getById(211))) {
changeJob(MapleJob.getById(212));
teachSkill(2121001,30,30);
teachSkill(2121003,30,30);
teachSkill(2121004,20,20);
teachSkill(2121000,20,20);
teachSkill(2121005,30,30);
teachSkill(2121008,1,1);
teachSkill(2121002,30,30);
teachSkill(2121001,30,30);
teachSkill(2121007,30,30);
teachSkill(2121006,30,30);
}
else if(getJob().equals(MapleJob.getById(221))){
changeJob(MapleJob.getById(222));
teachSkill(2221001,30,30);
teachSkill(2221007,30,30);
teachSkill(2221006,30,30);
teachSkill(2221003,30,30);
teachSkill(2221005,30,30);
teachSkill(2221002,30,30);
teachSkill(2221008,1,1);
teachSkill(2221004,20,20);
teachSkill(2221000,20,20);
}
else if(getJob().equals(MapleJob.getById(231))){
changeJob(MapleJob.getById(232));
teachSkill(2321007,30,30);
teachSkill(2321001,30,30);
teachSkill(2321003,30,30);
teachSkill(2321005,30,30);
teachSkill(2321006,10,10);
teachSkill(2321002,30,30);
teachSkill(2321008,30,30);
teachSkill(2321009,1,1);
teachSkill(2321004,30,30);
teachSkill(2321000,20,20);
}
else if(getJob().equals(MapleJob.getById(311))){
changeJob(MapleJob.getById(312));
teachSkill(3120005,30,30);
teachSkill(3121006,30,30);
teachSkill(3121008,20,20);
teachSkill(3121003,30,30);
teachSkill(3121009,1,1);
teachSkill(3121007,30,30);
teachSkill(3121000,20,20);
teachSkill(3121002,30,30);
teachSkill(3121004,30,30);
}
else if(getJob().equals(MapleJob.getById(321))){
changeJob(MapleJob.getById(322));
teachSkill(3221006,20,20);
teachSkill(3220004,30,30);
teachSkill(3221001,30,30);
teachSkill(3221003,30,30);
teachSkill(3221000,20,20);
teachSkill(3221008,1,1);
teachSkill(3221002,30,30);
teachSkill(3221005,30,30);
teachSkill(3221007,0,0);
}
else if(getJob().equals(MapleJob.getById(411))){
changeJob(MapleJob.getById(412));
teachSkill(4120002,0,0);
teachSkill(4121000,20,20);
teachSkill(4121006,30,30);
teachSkill(4121007,20,20);
teachSkill(4120005,30,30);
teachSkill(4121009,1,1);
teachSkill(4121004,1,1);
teachSkill(4121008,30,30);
}
else if(getJob().equals(MapleJob.getById(421))){
changeJob(MapleJob.getById(422));
teachSkill(4221001,30,30);
teachSkill(4221007,30,30);
teachSkill(4220002,20,20);
teachSkill(4221000,20,20);
teachSkill(4220005,30,30);
teachSkill(4221003,30,30);
teachSkill(4221004,30,30);
teachSkill(4221006,30,30);
teachSkill(4221008,30,30);
}
}



and you Find it
public void saveToDB(boolean update) {
line up insert it
public void teachSkill(int id, int level, int masterlevel) {
getClient().getPlayer().changeSkillLevel(SkillFactory.getSkill(id), level, masterlevel);
}

ex)
ret.keymap.put(Integer.valueOf(37), new MapleKeyBinding(4, 3));
ret.keymap.put(Integer.valueOf(38), new MapleKeyBinding(4, 20));
ret.keymap.put(Integer.valueOf(40), new MapleKeyBinding(4, 16));
ret.keymap.put(Integer.valueOf(43), new MapleKeyBinding(4, 9));
ret.keymap.put(Integer.valueOf(44), new MapleKeyBinding(5, 50));
ret.keymap.put(Integer.valueOf(45), new MapleKeyBinding(5, 51));
ret.keymap.put(Integer.valueOf(46), new MapleKeyBinding(4, 6));
ret.keymap.put(Integer.valueOf(50), new MapleKeyBinding(4, 7));
ret.keymap.put(Integer.valueOf(56), new MapleKeyBinding(5, 53));
ret.keymap.put(Integer.valueOf(59), new MapleKeyBinding(6, 100));
ret.keymap.put(Integer.valueOf(60), new MapleKeyBinding(6, 101));
ret.keymap.put(Integer.valueOf(61), new MapleKeyBinding(6, 102));
ret.keymap.put(Integer.valueOf(62), new MapleKeyBinding(6, 103));
ret.keymap.put(Integer.valueOf(63), new MapleKeyBinding(6, 104));
ret.keymap.put(Integer.valueOf(64), new MapleKeyBinding(6, 105));

ret.recalcLocalStats();

return ret;
}

public void teachSkill(int id, int level, int masterlevel) {
getClient().getPlayer().changeSkillLevel(SkillFactory.getSkill(id), level, masterlevel);
}

public void saveToDB(boolean update) {
Connection con = DatabaseConnection.getConnection();
try {
// clients should not be able to log back before their old state is saved (see MapleClient#getLoginState) so we are save to switch to a very low isolation level here
con.setTransactionIsolation(Connection.TRANSACTION_READ_UNCOMMITTED);
// connections are thread local now, no need to
// synchronize anymore =)
con.setAutoCommit(false);
PreparedStatement ps;
if (update) {

Sorry.... I don't speak English very well..
 
Skilled Illusionist
Joined
Apr 17, 2008
Messages
316
Reaction score
1
Re: [Release] 3rd and 4th Auto Job!!

Looks useful thanks!
 
Legendary Battlemage
Joined
May 23, 2008
Messages
628
Reaction score
4
Re: [Release] 3rd and 4th Auto Job Change!![and All Skill Master]

This is awesome for donator commands
 
Junior Spellweaver
Joined
Jul 26, 2008
Messages
128
Reaction score
0
Re: [Release] 3rd and 4th Auto Job Change!![and All Skill Master]

Wow this is awesome... i it works... o.o
 
Newbie Spellweaver
Joined
Feb 4, 2008
Messages
30
Reaction score
0
Re: [Release] 3rd and 4th Auto Job Change!![and All Skill Master]

ugh... odinms as usual
 
Junior Spellweaver
Joined
May 26, 2008
Messages
195
Reaction score
0
Re: [Release] 3rd and 4th Auto Job Change!![and All Skill Master]

Can someone like....
fix this into an actual release format =\
I don't like the idea of
here mine
you look
you change
be good friend har har smiley cup cakes fart
 
Newbie Spellweaver
Joined
Jul 13, 2008
Messages
18
Reaction score
0
Re: [Release] 3rd and 4th Auto Job Change!![and All Skill Master]

Can someone like....
fix this into an actual release format =\
I don't like the idea of
here mine
you look
you change
be good friend har har smiley cup cakes fart

This is in a release format lol. You just gotta be smart enough to put them in yourself ^_^". I mean, you gotta do things yourself someday. xD
 
Newbie Spellweaver
Joined
Jun 16, 2008
Messages
19
Reaction score
0
Re: [Release] 3rd and 4th Auto Job Change!![and All Skill Master]

It's better than nothing is release? Since he's trying to help, and it's useful?
 
Junior Spellweaver
Joined
May 26, 2008
Messages
195
Reaction score
0
Re: [Release] 3rd and 4th Auto Job Change!![and All Skill Master]

*sigh >_>*
Fine ill be a non noob and sit there with 2 notepads open :(
...
for future, anyone know a text program that can compare and highlight differences?
 
Isenheart .
Loyal Member
Joined
Jul 26, 2008
Messages
476
Reaction score
0
Re: [Release] 3rd and 4th Auto Job Change!![and All Skill Master]

I don't get it what it does, is it like when you reach lv 70 you get 3th job automaticly?
 
Junior Spellweaver
Joined
May 26, 2008
Messages
195
Reaction score
0
Re: [Release] 3rd and 4th Auto Job Change!![and All Skill Master]

I don't get it what it does, is it like when you reach lv 70 you get 3th job automaticly?

Think thats the gist of it.
Reason its not applied to 2nd / 1st is obvious :p
"Because hows it supposed to know what you wanna be"
On a future changes / additions kinda thought.
Would it be possible to make the lvl 10,30 proccess open a npc chat?

For example:
Player hits level 10.
level+1
ap+5
sp+3
open npc script "1st job"

Would be usefull :p
 
Master Summoner
Joined
Apr 29, 2008
Messages
534
Reaction score
3
Re: [Release] 3rd and 4th Auto Job Change!![and All Skill Master]

I think this is useful even his English is not that good. Nice release!
 
Newbie Spellweaver
Joined
Jun 24, 2008
Messages
63
Reaction score
7
Re: [Release] 3rd and 4th Auto Job Change!![and All Skill Master]

Nice!!!! I'll try it!
 
Skilled Illusionist
Joined
Apr 29, 2008
Messages
310
Reaction score
1
Re: [Release] 3rd and 4th Auto Job Change!![and All Skill Master]

may i ask fi this works cause im have a ahrd time to complie this
 
Experienced Elementalist
Joined
May 29, 2008
Messages
241
Reaction score
0
Re: [Release] 3rd and 4th Auto Job Change!![and All Skill Master]

Code:
change : public void teachSkill(int id, int level, int masterlevel) {
getClient().getPlayer().changeSkillLevel(SkillFact ory.getSkill(id), level, masterlevel);
}

. Remove the SPACE in SkillFact ory. if you have compile errors.
 
Experienced Elementalist
Joined
May 29, 2008
Messages
241
Reaction score
0
Re: [Release] 3rd and 4th Auto Job Change!![and All Skill Master]

sorry double post..
 
Skilled Illusionist
Joined
Apr 29, 2008
Messages
310
Reaction score
1
Re: [Release] 3rd and 4th Auto Job Change!![and All Skill Master]

but does it work for for somone
 
Experienced Elementalist
Joined
May 29, 2008
Messages
241
Reaction score
0
Re: [Release] 3rd and 4th Auto Job Change!![and All Skill Master]

works perfectly fine.
 
Skilled Illusionist
Joined
Apr 29, 2008
Messages
310
Reaction score
1
Re: [Release] 3rd and 4th Auto Job Change!![and All Skill Master]

can i have your maplechar.java
cause mine not working
 
Back
Top