Jump to content
  • 0

Third Job Changer Quest template


MelMel

Question


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  114
  • Reputation:   1
  • Joined:  01/22/12
  • Last Seen:  

Hello Member of Rathena,

i wonder if anyone can help me modified this scripts of mine to detect when the player already trans job or baby advance job max lvl 255 and job lvl 50 or above the npc will point them to a chain quest npc for them to do their job change quest to be third jobs.

prontera,153,193,6 script Job Master 808,{
mes "^ff0000[Job Master]^000000";
if(Upper == 1 && Class >= Job_Lord_Knight) goto L_noReq;
if(SkillPoint != 0){
 mes "I'm sorry, please use up all your skill points before changing jobs";
 mes "Please come again soon!";
 close;
}
if(JobLevel < 10) goto L_LvError;
switch(Class){
 case Job_Novice_High:
 case Job_Baby:
 case Job_Novice:
  skill 142,1,0;
  skill 143,1,0;
  mes "Welcome, please select the job you wish to change into";
  if(lastJob != 0 && Class == Job_Novice_High){
switch(lastJob){
 case Job_Knight:
 case Job_Crusader:
  set @target_job, Job_Swordman_High;
  break;
 case Job_Monk:
 case Job_Priest:
  set @target_job, Job_Acolyte_High;
  break;
 case Job_Alchemist:
 case Job_Blacksmith:
  set @target_job, Job_Merchant_High;
  break;
 case Job_Rogue:
 case Job_Assassin:
  set @target_job, Job_Thief_High;
  break;
 case Job_Wizard:
 case Job_Sage:
  set @target_job, Job_Mage_High;
  break;
 case Job_Hunter:
 case Job_Bard:
 case Job_Dancer:
  set @target_job, Job_Archer_High;
  break;
   }
  } else {
switch(select("Swordsman","Mage","Archer","Acolyte","Merchant","Thief",
 "Super Novice","Taekwon","Gunslinger","Ninja")){
  case 7:
   if(Class == Job_Novice_High) goto L_noReq;
   if($@JC_SupNovM > BaseLevel) goto L_BvError;
   if(Upper == 2)
	set @target_job, Job_Super_Baby;
   else
	set @target_job, Job_SuperNovice;
   break;
  case 8:
   if(Class == Job_Novice_High) goto L_noReq;
   if(Upper == 2) goto L_noReq;
   set @target_job, Job_Taekwon;
   break;
  case 9:
  case 10:
   if(Class == Job_Novice_High || Upper == 2) goto L_noReq;
   set @target_job, @menu + 15;
   break;
  default:
   set @target_job, @menu;
   if(Class == Job_Novice_High) set @target_job, @target_job + 4001;
   break;
 }
  }
  mes "Are you sure you want to change to " + JobName(@target_job) + "?";
  if(select("No","Yes") == 2){
callfunc "Job_Change", @target_job;
if(@target_job == Job_Gunslinger || @target_job == Job_Ninja || @target_job == Job_Taekwon) {
 callfunc "F_ClearJobVar";
} else {
 if($@JC_Plat) goto L_GivePlat;
}
  }
  close;
  break;
 default:
  if(JobLevel < $@JC_MinimumJB) goto L_LvError;
  deletearray @job_opt, getarraysize(@job_opt);
  if(Class < Job_Knight || Class == Job_Taekwon || (Class > Job_Baby && Class < Job_Baby_Knight) || (Class > Job_Novice_High && Class < Job_Lord_Knight)){
if(lastJob != 0){
 set @target_job, lastJob + 4001;
} else {
 switch(Class){
  case Job_Swordman_High:
  case Job_Baby_Swordman:
  case Job_Swordman:
   set @job_opt[0], Job_Knight;
   set @job_opt[1], Job_Crusader;
   break;
  case Job_Mage_High:
  case Job_Baby_Mage:
  case Job_Mage:
   set @job_opt[0], Job_Wizard;
   set @job_opt[1], Job_Sage;
   break;
  case Job_Archer_High:
  case Job_Baby_Archer:
  case Job_Archer:
   set @job_opt[0], Job_Hunter;
   if(Sex == 0)
	set @job_opt[1], Job_Dancer;
   else
	set @job_opt[1], Job_Bard;
   break;
  case Job_Acolyte_High:
  case Job_Baby_Acolyte:
  case Job_Acolyte:
   set @job_opt[0], Job_Priest;
   set @job_opt[1], Job_Monk;
   break;
  case Job_Merchant_High:
  case Job_Baby_Merchant:
  case Job_Merchant:
   set @job_opt[0], Job_Blacksmith;
   set @job_opt[1], Job_Alchemist;
   break;
  case Job_Thief_High:
  case Job_Baby_Thief:
  case Job_Thief:
   set @job_opt[0], Job_Assassin;
   set @job_opt[1], Job_Rogue;
   break;	
  default:
   set @job_opt[0], Job_Star_Gladiator;
   set @job_opt[1], Job_Soul_Linker;
   break;
 }
 mes "Welcome, please select the job you wish to change into";
 set @target_job, @job_opt[select(JobName(@job_opt[0]), JobName(@job_opt[1]))-1];
 if(Class > Job_Novice_High && Class < Job_Lord_Knight) set @target_job, @target_job + 4001;
}
mes "Are you sure you want to change to " + JobName(@target_job) + "?";
if(select("No","Yes")==2){
 callfunc "Job_Change", @target_job;
 if(@target_job == Job_Star_Gladiator || @target_job == Job_Soul_Linker) {
  callfunc "F_ClearJobVar";
 } else {
  if($@JC_Plat) goto L_GivePlat;
 }
}
close;
  }
  if(checkfalcon() || checkcart() || checkriding()) goto L_remove;
  if((Class >=Job_Knight) && (Class <=Job_Crusader2)){
mes "Do you want to be reborn?";
mes "But it will cost you 250,000 Zeny.";
if(select("Yes","No")==1){
 if(BaseLevel < 99 || JobLevel < 50) goto L_cantCh;
 if(Zeny < 250000) {
  next;
  mes "^ff0000[Job Master]^000000";
  mes "You don't have enouch Zeny.";
  close;
 }
 set lastJob, Class;
 if(Class == Job_Knight2){
   set lastJob, Job_Knight;
 } else {
  if(Class == Job_Crusader2){
   set lastJob, Job_Crusader;
  }
 }
 set Zeny,Zeny - 250000;
 jobchange Job_Novice_High;
 resetlvl(1);
 skill 142,1,0;
 skill 143,1,0;
}
close;
  }
}
mes "I'm sorry, there are no further classes for your job.";
close;
L_GivePlat:
if (BaseClass==Job_SuperNovice) goto L_sSuperN;
if (BaseClass==Job_Swordman) goto L_sSword;
if (BaseClass==Job_Mage) goto L_sMage;
if (BaseClass==Job_Archer) goto L_sArcher;
if (BaseClass==Job_Acolyte) goto L_sAcolyte;
if (BaseClass==Job_Merchant) goto L_sMerchant;
if (BaseClass==Job_Thief) goto L_sThief;
close;
L_sSuperN:
skill 142,1,0;
close;
L_sSword:
skill 142,1,0;
skill 144,1,0;
skill 145,1,0;
skill 146,1,0;
close;
L_sMage:
skill 142,1,0;
skill 157,1,0;
close;
L_sArcher:
skill 142,1,0;
skill 147,1,0;
skill 148,1,0;
close;
L_sAcolyte:
skill 142,1,0;
skill 156,1,0;
close;
L_sMerchant:
skill 142,1,0;
skill 153,1,0;
skill 154,1,0;
skill 155,1,0;
close;
L_sThief:
skill 142,1,0;
skill 149,1,0;
skill 150,1,0;
skill 151,1,0;
skill 152,1,0;
close;
L_cantCh:
mes "I'm sorry, you do not meet the requirements to change";
mes "Please come again soon!";
close;
L_LvError:
mes "I'm sorry, you do not seem to have enough Job Levels";
mes "Please come again soon!";
close;
L_BvError:
mes "I'm sorry, you do not seem to have enough Base Levels";
mes "Please come again soon!";
close;
L_noReq:
mes "I'm sorry, you do not meet the requirements to change";
mes "Please come again soon!";
close;
L_remove:
mes "Please remove your cart,falcon or peco";
mes "Please come again soon!";
close;
OnInit:
// Variable Setup
set $@JC_MinimumJB, 40; //Minimum job level for changing between 2nd and advance Class (Default : 40)
set $@JC_Plat, 1; //Give Platinum skills on Jobchange (Default : 1-yes)
set $@JC_SupNovM, 45; //Base Level to change into Super Novice (Default : 45)
end;
}

As for the chain quest can i please have a template like below info:

The job master the above script will point them for example a high priest lvl 99 above and job lvl 50 above to the job chain quest npc to do job change quest to be archbishop.

The above npc will say you can become third job and as for your job please proceed to find "NPC name" at "MAP name""coordinate"

and he will give you chain quest to do your job change to be archbishop.

As for the chain quest npc i would like it to be 3 steps.

1steps) The npc will ask the player to gather items for the npc.

2steps) Once the npc got the item the npc will then again direct the player by telling the player to warp to "NPC name" at "MAP name"&"coordinate" and there the player will talk to a npc that will direct the player to be in waiting room for their turn to be called inside a test their strength room and they have to kill all the monster to pass the test.

3steps) Once they have done the above they will be able to be job change.

Also, Please include cutins for me in the chain quest script, so that i will be able to add cutins from the data.grf regarding the third job cutins >.<.

Note: Sorry i am a very bad scripter that's why i ask for something simple like that...

I'm sorry if i explain it not too clear

Sorry for my bad english..

Looking forwards for the help...

Thanks in Advance

Edited by MelMel
Please use [CODEBOX] or Attachment for long contents.
Link to comment
Share on other sites

9 answers to this question

Recommended Posts


  • Group:  Members
  • Topic Count:  14
  • Topics Per Day:  0.00
  • Content Count:  51
  • Reputation:   2
  • Joined:  07/31/12
  • Last Seen:  

Its pretty easy, this should help you....

if(job >= 4008 && job <= 4021){

//I am a transcendent 2nd class!

}else if(job >= 7 && job <= 20){

//I am a normal 2nd class!

}

You can do the same thing for every other Class.

EDIT: Oh, its a Script Request but maybe this could help you, if you dont find someone for the complete Script.

Edited by Achhandrian
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  114
  • Reputation:   1
  • Joined:  01/22/12
  • Last Seen:  

Thank you for the reply.

Really hope some one can help me with the script.

But worst come to worst if no one help then i guess i will just wait awhile more >.<.

Surely some one will appear to help^^

Thanks in advance

Edited by MelMel
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  219
  • Topics Per Day:  0.05
  • Content Count:  1181
  • Reputation:   141
  • Joined:  01/27/12
  • Last Seen:  

I'm not agreeing to do this for you now because I currently have another project I started for somebody and it will probably take me a while! However, I will get additional information just in case I have some free time. Are you wanting one quest for every class or a specific quest for each class. How many chains do you want it to have?

I generally don't work from nothing! I like to force people to put some effort in to there own projects (unless its a paid job)! For example the project I am working on now, I made them make me the script as best as they could and then I fix/modify it for them. Actually am basically rewriting it! It's one thing to do all the work, but another to allow people to get something back from there work! I tought my self to script and you will never learn by having somebody else do it for you!!! So what I want from you before I will work on it. Bad scriptor not I would want the basic script wrote, if its wrong that is fine as long as I see real effort! I know I can script, now it's your turn! That includes where you want each chain NPC, their names, which npc sprites you want to use, maps for your waiting room, etc...

Peopleperson49

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  114
  • Reputation:   1
  • Joined:  01/22/12
  • Last Seen:  

I'm not agreeing to do this for you now because I currently have another project I started for somebody and it will probably take me a while! However, I will get additional information just in case I have some free time. Are you wanting one quest for every class or a specific quest for each class. How many chains do you want it to have?

I generally don't work from nothing! I like to force people to put some effort in to there own projects (unless its a paid job)! For example the project I am working on now, I made them make me the script as best as they could and then I fix/modify it for them. Actually am basically rewriting it! It's one thing to do all the work, but another to allow people to get something back from there work! I tought my self to script and you will never learn by having somebody else do it for you!!! So what I want from you before I will work on it. Bad scriptor not I would want the basic script wrote, if its wrong that is fine as long as I see real effort! I know I can script, now it's your turn! That includes where you want each chain NPC, their names, which npc sprites you want to use, maps for your waiting room, etc...

Peopleperson49

Thanks for the respond.

here are the info:

i really need 1 sample of template and i will do the other classes.

the chain quest will first ask the player to bring them example jelopy amount 50 once the npc get the item the npc ask the player to find another npc example located in izlude name "Beta" and once the player talk to this npc name "Beta" they will be send to a map which got a waiting room and when player click the waiting room they will be warp inside a room and monster will be spawn and they have to kill them all and once it's done the player will be warp back to the Beta npc in izlude and receive a job change.

I really hope you don't mind giving me a template for that/one example for the above script so that i will be able to edit them.

also "cutin" during conversation.

Thanks in advance

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  219
  • Topics Per Day:  0.05
  • Content Count:  1181
  • Reputation:   141
  • Joined:  01/27/12
  • Last Seen:  

I have a script for you now that I'm pretty sure you will like, however, you have to to go the doc/script_commands.txt and copy and paste the information for cutins and waiting rooms here in a post. Both cutins and waiting rooms are super easy to do, just as long as you follow those guidelines! The hardest thing about cutins is finding the correct cutin! As you requested I made it for just one class and then you can take it and modify it as you need.

Peopleperson49

Edited by peopleperson49
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  114
  • Reputation:   1
  • Joined:  01/22/12
  • Last Seen:  

thank you so much.

But how do i get the script from you >.<.

Thanks agains

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  219
  • Topics Per Day:  0.05
  • Content Count:  1181
  • Reputation:   141
  • Joined:  01/27/12
  • Last Seen:  

I will put it in a post the next time I get on as soon as you copy and paste the curtin and waiting room info from the doc/script_commands.txt.

Peopleperson49

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  114
  • Reputation:   1
  • Joined:  01/22/12
  • Last Seen:  

i am sure for cutin is this one:

cutin "kafra_07",2; i will replace all of those later.

and this is the one for closing.

cutin "",255;

end;

and for the waiting room this is the command that i use as example and if i am not wrong:

OnInit:

disablenpc "Drawing Room";

waitingroom "Drawing Room",20,"Drawing Room::OnStartArena",1;

enablewaitingroomevent;

end;

OnStartArena:

warpwaitingpc "sword_2-1",223,205;

donpcevent "Buddy#Sura_Salon::OnEnable";

disablewaitingroomevent;

end;

OnEnable:

enablewaitingroomevent;

end;

OnDisable:

disablewaitingroomevent;

end;

}

so that when they click on the waiting room they will be teleported to the next room?

correct me if i am wrong

Thanks in advance

looking forwards to your reply.

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  219
  • Topics Per Day:  0.05
  • Content Count:  1181
  • Reputation:   141
  • Joined:  01/27/12
  • Last Seen:  

Sorry, but I think you misunderstrand what I'm asking for. I want you to go to your game files and find trunkdoc/script_commands.txt and then copy the information there for cutin/waiting room and paste it here.

For example if I was trying to find out how to get the time of day I would look up gettime() and copy that info in a post like this:

*gettime(<type>)
This function will return specified information about the current system time.
1 - Seconds (of a minute)
2 - Minutes (of an hour)
3 - Hour (of a day)
4 - Week day (0 for Sunday, 6 is Saturday)
5 - Day of the month.
6 - Number of the month.
7 - Year.
8 - Day of the year.
It will only return numbers.
if (gettime(4)==6) mes "It's a Saturday. I don't work on Saturdays.";

Peopleperson49

I made this script for you based on what you asked for. It is a compltely new version of the third job change quest for an Arch Bishop. I did not use any other scripts as a base. It allows a Priest/High Priest to gather items and then change jobs to an Arch Bishop. The Sub-scripts can be completed in any order and all work off of each other. I did not include a waiting room because I didn't feel it needed one. As requested it is just for one class and you can modify it for all the other classes as you wish. It's called Arch Bishop Job Quest. Let me know what you think and if you have any issues with it. Thanks.

Peopleperson49

P.S. I have been getting a lot of PM messages lately asking for me to make entire scripts for people for free which is a bit annoying. Post in the request section and maybe I will work on it for you.

http://rathena.org/b...son49s-scripts/

Edited by peopleperson49
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...