//===== eAthena Script =======================================
//= New Official Novice Training Grounds
//===== By: ==================================================
//= eAthena Dev Team
//===== Current Version: =====================================
//= 1.1
//===== Compatible With: =====================================
//= eAthena SVN 1695+
//===== Description: =========================================
//= Incomplete
//===== Additional Comments: =================================
//= Taken From MRO. Took Parts from IRO Script, thanks to
//= DracoRPG & Riotblade
//============================================================
////////////////////////////////////////////////////////////////
// Maps These NPCs Are duplicated
////////////////////////////////////////////////////////////////
// new_1-1.gat || new_1-2.gat || new_1-3.gat || new_1-4.gat
// new_2-1.gat || new_2-2.gat || new_2-3.gat || new_2-4.gat
// new_3-1.gat || new_3-2.gat || new_3-3.gat || new_3-4.gat
// new_4-1.gat || new_4-2.gat || new_4-3.gat || new_4-4.gat
// new_5-1.gat || new_5-2.gat || new_5-3.gat || new_5-4.gat
//
////////////////////////////////////////////////////////////////
// Main Variables Involved //
////////////////////////////////////////////////////////////////
// //
// novarea,<Var> = Area Warp Check // Area Warp Check //
// xien_F = Xi En // Quest Complete Variable //
// chris_F = Interface Instructor // Quest Complete Variable //
// saixi_F = Skill instructor // Quest Complete Variable //
// Npc_chris = Chris // NPC Check Variable //
// Npc_alice = Alice // NPC Check Variable //
// Npc_saixi = saixi // NPC Check Variable //
// //
////////////////////////////////////////////////////////////////
//Area 1,2,3,4 or 5
new_1-1.gat,0,0,0 script PCLoginEvent -1,{
//check layer1
if(novicegro == 1)end;
if((getmapusers("new_1-1.gat") + getmapusers("new_1-2.gat") + getmapusers("new_1-3.at") + getmapusers("new_1-4.gat") + getmapusers("new_1-5.gat")) < 1) goto check1;
if((getmapusers("new_2-1.gat") + getmapusers("new_2-2.gat") + getmapusers("new_2-3.at") + getmapusers("new_2-4.gat") + getmapusers("new_2-5.gat")) < 1) goto check2;
if((getmapusers("new_3-1.gat") + getmapusers("new_3-2.gat") + getmapusers("new_3-3.at") + getmapusers("new_3-4.gat") + getmapusers("new_3-5.gat")) < 1) goto check3;
if((getmapusers("new_4-1.gat") + getmapusers("new_4-2.gat") + getmapusers("new_4-3.at") + getmapusers("new_4-4.gat") + getmapusers("new_4-5.gat")) < 1) goto check4;
if((getmapusers("new_5-1.gat") + getmapusers("new_5-2.gat") + getmapusers("new_5-3.at") + getmapusers("new_5-4.gat") + getmapusers("new_5-5.gat")) < 1) goto check5;
//check layer2
if((getmapusers("new_1-1.gat") + getmapusers("new_1-2.gat") + getmapusers("new_1-3.at") + getmapusers("new_1-4.gat") + getmapusers("new_1-5.gat")) < 2) goto check1;
if((getmapusers("new_2-1.gat") + getmapusers("new_2-2.gat") + getmapusers("new_2-3.at") + getmapusers("new_2-4.gat") + getmapusers("new_2-5.gat")) < 2) goto check2;
if((getmapusers("new_3-1.gat") + getmapusers("new_3-2.gat") + getmapusers("new_3-3.at") + getmapusers("new_3-4.gat") + getmapusers("new_3-5.gat")) < 2) goto check3;
if((getmapusers("new_4-1.gat") + getmapusers("new_4-2.gat") + getmapusers("new_4-3.at") + getmapusers("new_4-4.gat") + getmapusers("new_4-5.gat")) < 2) goto check4;
if((getmapusers("new_5-1.gat") + getmapusers("new_5-2.gat") + getmapusers("new_5-3.at") + getmapusers("new_5-4.gat") + getmapusers("new_5-5.gat")) < 2) goto check5;
//check layer3
if((getmapusers("new_1-1.gat") + getmapusers("new_1-2.gat") + getmapusers("new_1-3.at") + getmapusers("new_1-4.gat") + getmapusers("new_1-5.gat")) < 3) goto check1;
if((getmapusers("new_2-1.gat") + getmapusers("new_2-2.gat") + getmapusers("new_2-3.at") + getmapusers("new_2-4.gat") + getmapusers("new_2-5.gat")) < 3) goto check2;
if((getmapusers("new_3-1.gat") + getmapusers("new_3-2.gat") + getmapusers("new_3-3.at") + getmapusers("new_3-4.gat") + getmapusers("new_3-5.gat")) < 3) goto check3;
if((getmapusers("new_4-1.gat") + getmapusers("new_4-2.gat") + getmapusers("new_4-3.at") + getmapusers("new_4-4.gat") + getmapusers("new_4-5.gat")) < 3) goto check4;
if((getmapusers("new_5-1.gat") + getmapusers("new_5-2.gat") + getmapusers("new_5-3.at") + getmapusers("new_5-4.gat") + getmapusers("new_5-5.gat")) < 3) goto check5;
//check layer4
if((getmapusers("new_1-1.gat") + getmapusers("new_1-2.gat") + getmapusers("new_1-3.at") + getmapusers("new_1-4.gat") + getmapusers("new_1-5.gat")) < 4) goto check1;
if((getmapusers("new_2-1.gat") + getmapusers("new_2-2.gat") + getmapusers("new_2-3.at") + getmapusers("new_2-4.gat") + getmapusers("new_2-5.gat")) < 4) goto check2;
if((getmapusers("new_3-1.gat") + getmapusers("new_3-2.gat") + getmapusers("new_3-3.at") + getmapusers("new_3-4.gat") + getmapusers("new_3-5.gat")) < 4) goto check3;
if((getmapusers("new_4-1.gat") + getmapusers("new_4-2.gat") + getmapusers("new_4-3.at") + getmapusers("new_4-4.gat") + getmapusers("new_4-5.gat")) < 4) goto check4;
if((getmapusers("new_5-1.gat") + getmapusers("new_5-2.gat") + getmapusers("new_5-3.at") + getmapusers("new_5-4.gat") + getmapusers("new_5-5.gat")) < 4) goto check5;
//check layet5
if((getmapusers("new_1-1.gat") + getmapusers("new_1-2.gat") + getmapusers("new_1-3.at") + getmapusers("new_1-4.gat") + getmapusers("new_1-5.gat")) < 5) goto check1;
if((getmapusers("new_2-1.gat") + getmapusers("new_2-2.gat") + getmapusers("new_2-3.at") + getmapusers("new_2-4.gat") + getmapusers("new_2-5.gat")) < 5) goto check2;
if((getmapusers("new_3-1.gat") + getmapusers("new_3-2.gat") + getmapusers("new_3-3.at") + getmapusers("new_3-4.gat") + getmapusers("new_3-5.gat")) < 5) goto check3;
if((getmapusers("new_4-1.gat") + getmapusers("new_4-2.gat") + getmapusers("new_4-3.at") + getmapusers("new_4-4.gat") + getmapusers("new_4-5.gat")) < 5) goto check4;
if((getmapusers("new_5-1.gat") + getmapusers("new_5-2.gat") + getmapusers("new_5-3.at") + getmapusers("new_5-4.gat") + getmapusers("new_5-5.gat")) < 5) goto check5;
return;
check1:
savepoint "new_1-1.gat",53,111;
warp "new_1-1.gat",53,111;
set novicegro,1;
set novarea,1;
end;
check2:
savepoint "new_2-1.gat",53,111;
warp "new_2-1.gat",53,111;
set novicegro,1;
set novarea,2;
end;
check3:
savepoint "new_3-1.gat",53,111;
warp "new_3-1.gat",53,111;
set novicegro,1;
set novarea,3;
end;
check4:
savepoint "new_4-1.gat",53,111;
warp "new_4-1.gat",53,111;
set novicegro,1;
set novarea,4;
end;
check5:
savepoint "new_5-1.gat",53,111;
warp "new_5-1.gat",53,111;
set novicegro,1;
set novarea,5;
end;
}
//Xi En, the greeter in the Novice Training Grounds
new_1-1.gat,54,113,5 script Xi En#npc1-1::XiEn 727,{
mes "[Xi En]";
if( xien_F >= 1 )goto Int_talked;
if( Int_1 >= 2 )goto Int_talked2;
if( xi_01 == 1 )goto N_happy;
mes "Uh? Oh! A newbie?";
mes "Wow! Welcome to this world";
mes "Let's see, your name is..";
mes ""+ strcharinfo(0) +" .....";
mes "Nice to meet you,";
mes "Novice.";
next;
mes "[Xi En]";
mes "It's faith that let us meet each other.";
mes "So, what can i do to help you?";
mes "For example, hot to move?";
mes "Or where should you go?";
mes "Do you have anything to ask me?";
next;
menu "Where should I go?", Q_go,"Please teach me the basic operation",T_oper,"Who are you?",Q_who;
Q_go:
mes "[Xi En]";
mes "Go to the right and you will come";
mes "to a river.";
mes "Do you see the bridge on the river?";
mes "It's a wooden bridge,";
mes "and it's very old.";
mes "After you have crossed the bridge,";
mes "you will come to a castle. Enter it.";
next;
mes "[Xi En]";
mes "The entrance of the building is a";
mes "small";
mes "^3300CCSwirling pool of bright light.^000000";
mes "It is a teleporter that links two different space.";
mes "You will need it to go to other places";
next;
mes "[Xi En]";
mes "Oh, do you know how to move around?";
mes "It's just like trying to talk to me";
mes "you just need to left click the mouse";
mes "on the location that you wish to move, isn't that easy?";
next;
mes "[Xi En]";
mes "Hmm, so";
mes "the castle of the right is training ground";
mes "specially made for Novice like you.";
mes "So you better go to that place.";
next;
mes "[Xi En]";
mes "There will be a guide soldier at";
mes "the entrance.";
mes "So, you won't need to worry that you'll get lost.";
mes "Hehe...";
set Int_1,2;
close;
N_happy:
mes "Hey, that boastful one over there,";
mes "do you have anything else to do?";
mes "Hah, don't be too angry.";
mes "You will forget what to do if you get too angry.";
mes "What can i do to help you?";
next;
mes "[Xi En]";
mes "I am not asking you to leave. I";
mes "just want you to go to the Training";
mes "Ground";
mes "and take a look. How about that?";
mes "You just need to cross the bridge at your right,";
mes "and enter that big castle over there.";
mes "There'll be someone explaining the";
mes "situation to you after you've entered the castle";
next;
mes "[Xi En]";
mes "Oh, if you can't see the entrance,";
mes "right click the mouse";
mes "and drag it to the left or right.";
mes "Then, you will be able to see the part covered by it.";
next;
mes "[Xi En]";
mes "Well then, farewell!!";
mes "";
mes "And you should also learn";
mes "how to treat a beautiful lady like me, lad";
mes "This is a present for you.";
atcommand strcharinfo(0) + "@baselvlup 1";
set xien_F,1;
close;
Q_who:
mes "[Xi En]";
mes "Huh? Me? I'm Xi En!";
mes "How rude of you.";
mes "I just work as volunteer here....";
mes "How can you talk like that?";
set xi_01,1;
close;
Int_talked:
mes "The Training Ground for Novice";
mes "can be seen after you have cross";
mes "the bridge at the right.";
mes "Go for your training now!";
mes "Although it might be a little bit";
mes "boring,";
mes "you won't regret that you have";
mes "participated it.";
close;
Int_talked2:
mes "Huh? Why are you still standing there?";
mes "Haha...";
mes "If you go to the Training Ground,";
mes "you'll be able to learn a lot of";
mes "things,";
mes "and on top of that,";
mes "you will be able to obtain a lot of money and items.";
next;
mes "[Xi En]";
mes "Your experience level will also increase as well";
atcommand strcharinfo(0) + "@baselvlup 1";
next;
mes "[Xi En]";
mes "Although it might be boring,";
mes "it's foundation for you to be";
mes "strong in the future.";
mes "So, learn it now!";
mes "And learn to interact with other people well!";
set xien_F,1;
set int_talked,0;
close;
Warped:
mes "[Xi En]";
mes "Hm...?";
mes "What are you";
mes "still doing here?";
mes "Oh, you used a ^000077Butterfly Wing,^000000";
mes "didn't you?";
next;
mes "[Xi En]";
mes "No, no, no~";
mes "You're supposed to use the Butterfly Wing when you want to go back to a town ^777777after^000000 completing your training here, all right?";
next;
mes "[Xi En]";
mes "Now, let me send";
mes "you back to the";
mes "Training Grounds.";
next;
callfunc "warpcheck1";
end;
T_oper:
mes "[Xi En]";
mes "User Interface...";
mes "Do you know the concept of clickm double click and drag?";
mes "Click meaning";
mes "click on the mouse for one time.";
mes "If you click continuously twice, it's known as double click.";
close;
}
//Guards at the start of the grounds
new_1-1.gat,144,116,5 script Guard#npc2-1::Guard 105,{
mes "[Training Grounds Guard]";
mes "Good day! Please come in~ Welcome to the Novice Training Grounds!";
mes "When you enter the castle, you will first come to the Novice Training Grounds.";
close;
}
new_1-1.gat,144,110,5 script Guard#npc3-1::Guard 105,{
mes "[Training Grounds Guard]";
mes "Go! Newbie! Go! I encourage you to take the challenge for a bright future!";
close;
}
//Usher Part Of script
new_1-2.gat,100,29,5 script Registration Staff#npc4-1::regnpc 56,{
mes "[Novice Training Ground Registration Staff]";
mes "Welcome!";
mes "You are at the entrance of the ^000077Training Grounds.^000000";
mes "If you're new in this Ragnarok World, please choose the";
mes "^000077Training Grounds Introduction^000000 menu for more information.";
next;
menu "Apply for training",C_train, "Direct Access to Ragnarok Online", C_direct, "^000077Training Grounds Introduction^000000",C_intro, "Need a moment to think", C_later;
MM_2:
menu "Apply for training",C_train, "Direct Access to Ragnarok Online", C_direct, "^000077Training Grounds Introduction^000000",C_intro, "Need a moment to think", C_later;
C_train:
mes "[Novice Training Ground Staff]";
mes "Your application has been successfully approved.";
mes "For detailed information of each";
mes "training course, please inquire at the guide on the course";
next;
mes "[Novice Training Ground Registration Staff]";
mes "We will be providing you with 50 Zeny as support. When you have some";
set Zeny,Zeny+50;
mes "questions about the process of training course, feel free to ask the guide at the center of the hall";
mes "Now, you will be transferred to the training grounds";
next;
callfunc "warpcheck1";
close;
C_direct:
mes "[Novice Training Ground Registration Staff]";
mes "I understand.";
mes "Please do your";
mes "best, and I wish you";
mes "the best of luck!";
next;
set @TEMP,rand(6);
if (@TEMP == 0) callsub M2_S1;
if (@TEMP == 0) callsub M2_S2;
if (@TEMP == 0) callsub M2_S3;
if (@TEMP == 0) callsub M2_S4;
if (@TEMP == 0) callsub M2_S5;
if (@TEMP == 0) callsub M2_S6;
end;
M2_S1:
savepoint "prontera.gat",273,354;
warp "prontera.gat",273,354;
return;
M2_S2:
savepoint "morocc.gat",160,94;
warp "morocc.gat",160,94;
return;
M2_S3:
savepoint "geffen.gat",120,100;
warp "geffen.gat",120,100;
return;
M2_S4:
savepoint "payon.gat",87,117;
warp "payon.gat",87,117;
return;
M2_S5:
savepoint "alberta.gat",116,57;
warp "alberta.gat",116,57;
return;
M2_S6:
savepoint "izlude.gat",94,103;
warp "izlude.gat",94,103;
return;
C_intro:
mes "[Novice Training Ground Registration Staff]";
mes "This training grounds was established in order to provide useful information to new players in Ragnarok Online by the Rune-Midgarts Kingdom's Board of Education.";
next;
mes "[Novice Training Ground Registration Staff]";
mes "The training course is organized into two parts: the Basic Knowledge classes, and Field Combat training.";
next;
mes "[Novice Training Ground Registration Staff]";
mes "Through the first course, players will learn the necessary knowledge for a smoother gaming experience.";
next;
mes "[Novice Training Ground Registration Staff]";
mes "In Field Combat Training, players will engage in actual battle with weak monsters so they can learn the basics of fighting.";
next;
mes "[Novice Training Ground Registration Staff]";
mes "With this battle practice,";
mes "players will be able to gain more experience before they enter the real world.";
next;
mes "[Novice Training Ground Registration Staff]";
mes "At the end of the training, we will provide an introduction to the 1st Job Classes. This will help players decide which job class is best for them.";
next;
mes "[Novice Training Ground Registration Staff]";
mes "If you wish to participate in the training grounds, please choose '^000077Apply for training^000000' in the";
mes "menu.";
next;
mes "[Novice Training Ground Registration Staff]";
mes "Otherwise, if you want to skip the basic training and immediately enter the world of Ragnarok Online, please choose '^000077Direct access to Ragnarok Online.'^000000";
next;
goto MM_2;
C_later:
mes "[Training Ground Receptionist]";
mes "I understand.";
mes "Please, take your time.";
close;
}
//Inside The Grounds (Area 4)
new_1-2.gat,100,104,5 script Interface Instructor#npc5-1::internpc 751,{
mes "[Instructor Chris]";
if (Chris_1 == 1)goto T_1;
mes "Nice to meet you. Can i see you";
mes "study pass?";
next;
mes "[Instructor Chris]";
mes "Ok, confirmation completed.";
mes "I will introduce you to the basic concepts of";
mes "interface and ways of operating it";
mes "However, this is not an mandatory course. Therefore,";
mes "you can choose to skip this course if you think it is not necessary";
next;
menu "Learn explanation to interface operation",L_interface,"Hate Theory, I want a real battle",G_battle,"Cancel",L_end;
L_interface:
mes "[Instructor Chris]";
mes "Although the location of the window";
mes "can be changed by dragging it,";
mes "we will use the initial location of the window";
mes "for the convenience of explanation.";
next;
mes "[Instructor Chris]";
mes "So, look at the upper part of your screen.";
mes "You'll find your name and level displayed in that window.";
mes "you can also know the amount of your experience.";
mes "This window is known as the basic information window of the character";
next;
mes "[Instructor Chris]";
mes "We are going to increase your experience points now.";
mes "Please pay attention to the changes of experience bar in the";
mes "basic information window.";
mes "Do you see that.?";
atcommand strcharinfo(0) + "@baselvlup 1";
mes "Besides that....";
next;
mes "[Instructor Chris]";
mes "You can use the option of the basic information window";
mes "or form party.";
mes "The second experience bar refers to the job experience.";
mes "000077In order to use a skill, you need to obtain skill points through leveling up your job level.^000000";
next;
mes "[Instructor Chris]";
mes "The window on the lower left is the Chat window.";
mes "Your chat content will be replaced by the new content from time to time.";
mes "You can also use the button at the right to change the chat mode";
mes "to public channel, party channel or guild channel...";
mes "The chat window is always in the";
mes "active mode in order to make chat with other players";
mes "more convenient";
next;
mes "There is a mini map window shown at the upper right";
mes "The mini map window will indicate";
mes "your current location and the location of";
mes "your party member and guild member";
mes "Besides that, when you're in a city or field,";
mes "000077the red point will be the entrance/exit^000000 of the map.";
mes "Please make use of it.";
next;
mes "[Instructor Chris]";
mes "Besides that, please turn on every";
mes "option in the basic information window.";
mes "You will be able to open the item window, Equipment Window and skill window";
next;
atcommand strcharinfo(0) + "@joblvlup 1";
mes "[Instructor Chris]";
mes "I hope that I have made a bried yet clear explanation to you.";
mes "I hope you won't feel bored of it";
mes "Here are some experience for you.";
mes "We will be giving the job experience this time.";
mes "Please open your skill window,";
mes "and try to upgrade your basic skill";
next;
mes "[Instructor Chris]";
mes "The support lecturer Edwin";
mes "will make a more advanced explaination to you.";
mes "If you want to know about the details, talk to him.";
mes "Besides that, this is a gift for you";
getitem 2352,1;
set Chris_1,1;
set chris_F,1;
close;
T_1:
mes "[Instructor Chris]";
mes "Is there anything that i can help you?";
mes "Let us see your study pass.";
if (Npc_saixi < 1) goto C_saixi;
if (Npc_alice < 1) goto C_alice;
mes "Looks like you have finished everything.";
mes "We're sending you to the battleground now.";
mes "If you have anything that you don't understand,";
mes "please come back again.";
next;
callfunc "warpcheck2";
close;
C_saixi:
mes "Hmm?";
mes "You still haven't taken the skill course.";
mes "Please go this way up to find the skill instructor";
next;
menu "Thank You",W_saixi,"I hate Theory Classes",G_battle,"Cancel",C_end;
C_alice:
mes "Hmm?";
mes "You still haven't taken the item course.";
mes "Please go this way up to find the item instructor";
next;
menu "Thank You",W_alice,"I hate Theory Classes",G_battle,"Cancel",C_end;
W_saixi:
mes "[Instructor Chris]";
mes "If you study the use of skill carefully,";
mes "You will be able to learn some useful skills.";
mes "Therefore, it's advised that you take it.";
mes "Ok? Now, find the Skill Instructor.";
mes "I'll send you there with the service";
next;
callfunc "warpcheck5";
close;
W_alice:
mes "[Instructor Chris]";
mes "If you study the use of items carefully,";
mes "You will be able to get some useful items";
mes "Therefore, it's advised that you take it.";
mes "Ok? Now, find the Item Instructor.";
mes "I'll send you there with the service";
next;
callfunc "warpcheck3";
close;
G_battle:
mes "[Instructor Chris]";
mes "We're sending you to the battleground now.";
mes "If you have anything that you don't understand,";
mes "please come back again.";
callfunc "warpcheck4";
close;
}
// Item Instructor
new_1-2.gat,116,110,5 script Item Instructor#npc6-1::itemnpc 726,{
mes "[Instructor Alice]";
if(Alice_F == 1) goto T_2;
mes "Huh? So boring!";
mes "Hmm? Ah? Are you a new comer?";
mes "Do you want to take the item Course?";
next;
menu "Ah, yes, yes. Item Test!",T_1,"No, I want direct access", D_access, "Where is the village?", W_village;
T_1:
mes "[Instructor Alice]";
mes "I will make it quick so you won't be bored.";
mes "Firstly, open the Basic Information Window.";
mes "Choose the item button in the basic information window";
mes "to open the item window.";
mes "There are 3 categories in the window, including item, Equipment and Misc. Items";
next;
getitem 569,1;
mes "[Instructor Alice]";
mes "Try and choose the item category now.";
mes "I have given you a Novice Potion.";
mes "Try abd double click the potion";
mes "with your mouse in order to use it";
next;
mes "[Instructor Alice]";
mes "Try and double click it with your mouse.";
mes "Now, the equipment.";
next;
getitem 5055,1;
getitem 2415,1;
mes "[Instructor Alice]";
mes "Now, change the tab to the Equipment category.";
mes "This category will display";
mes "all the equipment that you can equip";
mes "I'll give you an equipment. Try it out.";
mes "Firstly, let's start from the Novice Boots.";
next;
mes "[Instructor Alice]";
mes "Double click the item and try it out";
mes "This can be implemented on other items too.";
next;
mes "[Instructor Alice]";
mes "Now do you want to try out the F12 button?";
mes "There will be a small window of 9 columns.";
mes "This window is known as the shortcut bar.";
mes "You can drag items such as item, skill and equipment to the shortcut bar.";
next;
mes "[Instructor Alice]";
atcommand strcharinfo(0) + "@joblvlup 1";
mes "Every column has a relevant shortcut key ranging from F1 to F9.";
mes "Use these shortcut bar wisely.";
mes "When you take the skill course,";
mes "you must have learned the First Aid skill, right?";
mes "Put it in the shortcut bar and have a try.";
next;
mes "[Instructor Alice]";
mes "Do you understand?";
mes "You need to possess skill point if";
mes "you wanted to use a skill.";
mes "However, basic skills are passive";
mes "skill and cannot be placed in the";
mes "shortcut bar";
next;
mes "[Instructor Alice]";
mes "A course that is easy and filled with content.";
mes "The class of Items shall end here.";
mes "Finally, let me give you two useful items.";
mes "However, please do not use Wing of Fly and";
mes "Wing of Butterfly here.";
mes "I won't take the responsibility if you get lost here";
next;
mes "[Instructor Alice]";
mes "Finally, this is ...";
mes "some job experience so that you can";
mes "perform job upgrade soon!";
mes "Thank you for taking my class";
set alice_F,1;
next;
menu "What should i do now?",G_check,"Let's Start the battle! The real Battle!",G_battle,"Cancel",G_cancel;
G_cancel:
mes "[Instructor Alice]";
mes "Oh. Ok. If you want anything just ask.";
close;
G_check:
mes "[Instructor Alice]";
mes "If there's anyone that you haven't talk to,";
mes "go and find them. Although they are not as";
mes "good as I am, they still provide some help.";
mes "If you felt bored, you can go around for some exploring.";
next;
mes "[Instructor Alice]";
mes "Maybe, you will come and meet some";
mes "support instructors,";
mes "or find some some hidden items.";
mes "Well then,farewell.";
mes "If you wanted to go to anywhere else,";
mes "find out from the people nearby";
G_battle:
mes "[Instructor Alice]";
mes "We're sending you to the battleground now.";
mes "If you have anything that you don't understand,";
mes "please come back again.";
next;
callfunc "warpcheck2";
close;
T_2:
mes "[Instructor Alice]";
mes "Is there anything that i can help?";
mes "It looks like you haven't taken the";
mes "course of interface.";
mes "Chris must be very sad";
mes "Don't you want to meet instructor Chris?";
next;
mes "[Instructor Alice]";
mes "If you want to go to the village,";
mes "talk to the Kapra Staff over there.";
mes "No matter it's Prontera, Morroc or payon...";
mes "she will send you to wherever you want";
close;
}
//Kafra Service Staff
new_1-2.gat,118,108,5 script Kafra Service Staff#npc7-1::kafnpc 115,{
mes "[Kafra Service Staff]";
mes "Good day!";
mes "I am Kafra Staff who is sent";
mes "by the Kafra Corp. to serve the Novice.";
mes "We, the Kafra Corp. is responsible for the flow of";
mes "items on this continent.";
mes "Therefore, we hope that you will always";
mes "use the the service of Kafra Corp.";
next;
mes "[Kafra Service Staff]";
mes "No matter what time or what place,";
mes "Kapra will always be at your service.";
mes "What can i do fot you?";
next;
mes "[Kapra Service Staff]";
mes "Let me remind you if you want to use the service of Teleport.";
mes "If you want to move to the village, you will not be able to ";
mes "return to the Novice Training Ground.";
mes "Please consider it carefully";
next;
menu "Teleport Service",S_teleport,"Ask about Kafra Service",Q_service;
Q_service:
mes "I will explain to you the services provided by the Kafra Corp.";
mes "Please choose the service that you wish to know about.";
next;
menu "Save",Q_save,"Storage Service",Q_storage, "Teleport Service",Q_teleport, "Cart Service",Q_cart, "Cancel",Q_cancel;
Q_menu2:
menu "Save",Q_save,"Storage Service",Q_storage, "Teleport Service",Q_teleport, "Cart Service",Q_cart, "Cancel",Q_cancel;
Q_save:
mes "[Kapra Service Staff]";
mes "Save is a function that will let you";
mes "return to a location after you are Ko'ed in your adventure.";
mes "If you perform a Save action with the Kafra in the village,";
mes "you will return near the Kafra in the city that you have saved.";
mes "After you have been resurrected, you will be able to return to your Kafra.";
next;
callsub K_lvlcheck;
mes "[Kafra Service Staff]";
mes "The Save Point will be assigned";
mes "according to the final save location";
mes "You can return to the Save Point";
mes "using the Wing of Butterfly.";
mes "This service is free of charge.";
mes "Please make use of it frequently";
goto Q_menu2;
Q_storage:
mes "[Kafra Service Staff]";
mes "We are the Kafra Corp. who is well known";
mes "as the oldest and biggest material control company";
mes "on this continent which provide the service to keep";
mes "the items of adventurers.";
mes "So, as long as there's a Kafra service center in a city";
mes "you will be able to use the storage service we provided.";
next;
mes "[Kafra Service Staff]";
mes "If you found any important items during your journey or from a battle";
mes "and you're not going to use it immediately,";
mes "you can always seek the service of a Kafra and keep it.";
next;
mes "[Kafra Service Staff]";
mes "This storage service is provided to every adventurer,";
mes "and every Kapra Service center will ask for a certain";
mes "a certain amount of zeny for service fee.";
next;
mes "[Kapra Service Staff]";
mes "The store is similar to the item window and it is divided";
mes "to the 3 major categories: Items, Equipment and Misc.";
mes "You can keep at most 300 items in the storage.";
mes "And for every item, you can keep 3000 of it in maximum";
next;
callsub K_lvlcheck;
mes "[Kapra Service Staff]";
mes "A different character of the same account";
mes "will share the same storage.";
mes "The fee for the Kafra Storage Service";
mes "will differ according to the location.";
mes "Please take note of this";
next;
goto Q_menu2;
Q_cart:
mes "[Kafra Service Staff]";
mes "The Kafra Corp. provides Cart rental services to customers engaged in commercial business.";
mes "Original the cart rental service was only provided by the merchant guild in alberta";
mes "However, since we took over this service";
next;
mes "[Kafra Service Staff]";
mes "Our merchant customers has been able to rent";
mes "a cart at ease, everywhere.";
mes "This cart rental service is limited only for";
mes "job classes engaged in commercial business such as";
mes "Merchant,Blacksmith,Alchemist & Super Novice";
callsub K_lvlcheck;
next;
mes "[Kafra Service Staff]";
mes "Of course you should learn the Pushcart skill beforehand.";
mes "Otherwise, you will not be able to rent a cart from us.";
mes "The rental fee varies by town, so please refer to tge information";
next;
goto Q_menu2;
Q_teleport:
mes "[Kafra Service Staff]";
mes "The Kafra Corp. has used our experience to";
mes "provide a service to shorten the distance";
mes "required to travel from place to place.";
mes "This is the teleport service.";
next;
mes "[Kafra Service Staff]";
mes "Through the power of Space magicians,";
mes "we will provide a more convinient and more time saving way of travelling.";
mes "However, the places available for teleport can be varied by towns.";
mes "Please take note of that.";
next;
mes "[Kafra Service Staff]";
callsub K_lvlcheck;
mes "Every service provided by us is a fruit of the hard work through the centuries";
mes "in order to satisfy our customers.";
next;
goto Q_menu2;
Q_cancel:
mes "[Kafra Service Staff]";
mes "Are you satisfied with my explaination";
mes "about the Kafra Corp.?";
close;
//Teleport
S_teleport:
menu "Second stage of battle training ground", tele_01,"Prontera",tele_02,"Morocc",tele_03,"Payon",tele_04,"Alberta",tele_05,"Geffen",tele_06;
tele_01:
mes "[Kapra Service Staff]";
mes "Moving to the 2nd stage of Battle Training Grounds.";
next;
callfunc "warpcheck2";
close;
tele_02:
mes "[Kapra Service Staff]";
mes "Moving to Prontera City.";
next;
savepoint "prontera.gat",273,354;
warp "prontera.gat",273,354;
close;
tele_03:
mes "[Kapra Service Staff]";
mes "Moving to the Morocc City.";
next;
savepoint "morocc.gat",160,94;
warp "morocc.gat",160,94;
close;
tele_04:
mes "[Kapra Service Staff]";
mes "Moving to Payon City.";
next;
savepoint "payon.gat",87,117;
warp "payon.gat",87,117;
close;
tele_05:
mes "[Kapra Service Staff]";
mes "Moving to the Alberta City.";
next;
savepoint "alberta.gat",116,57;
warp "alberta.gat",116,57;
close;
tele_06:
mes "[Kapra Service Staff]";
mes "Moving to the Geffen City.";
next;
savepoint "geffen.gat",120,100;
warp "geffen.gat",120,100;
close;
//Functions
K_lvlcheck:
if(K_lvlup < 1)goto changelvl;
if(K_lvlup >= 1)return;
changelvl:
atcommand strcharinfo(0) + "@joblvlup 1";
set K_lvlup, 1;
return;
}
//Skill Npc
new_1-2.gat,84,110,5 script Skill Instructor#npc8-1::skillnpc 753,{
mes "[Instructor Sai Xi]";
if(saixi_F == 1)goto E_check;
mes ""+ strcharinfo(0) +"!";
mes "What a good name!";
mes "Do you want to start the course now?";
next;
menu "What Course?!",S_course,"Please send me to the battle class!",G_battle,"Cancel",S_end;
S_course:
mes "[Instructor Sai Xi]";
mes "I live by the fist and die by it!";
mes "You have the responsible for preserving the world peace!";
mes "I will teach you the ultimare killing skill!!!!!!!";
mes "Oh,no. It's just the method to use the skill.";
mes "Ok, can you please open the skill window?";
next;
mes "[Instructor Sai Xi]";
mes "Click the skill button in the basic information window,";
mes "and you will be able to open the skill window.";
mes "The shortcut key to open it is Alt + s.";
mes "You can always use alt+s to open the window";
next;
atcommand strcharinfo(0) + "@joblvlup 1";
mes "Have you opened the Skill Window?";
mes "Do you see the category of Basic Skill?";
mes "There is stated the writing of skill:";
mes "Skill Point: 1 below it?";
mes "Click the LvUp button";
mes "beside the Basic Skill and see what happened";
next;
mes "[Instructor Sai Xi]";
mes "How about that? Have your skill been upgraded?";
mes "If you still want to know more detailed information about it,";
mes "go and find Piggy Judas.";
mes "He is a support lecturer.";
mes "Hmmmm, is there any usable skill anymore...";
next;
mes "[Instructor Sai Xi]";
mes "That's it! That's it!";
mes "I'll teach you the First Aid skill.";
mes "This skill is really useful during critical condition";
next;
mes "FF0000You have learned First Aid Skill,^000000";
skill 142,1,0;
next;
mes "FF0000You have Obtained minor Job Skill^000000";
atcommand strcharinfo(0) + "@joblvlup 1";
next;
mes "[Instructor Sai Xi]";
mes "Now, when you open the skill window,";
mes "you will see that the First Aid skill is added.";
mes "Double klick the mouse, and try it out!";
next;
mes "[Instructor Sai Xi]";
mes "Well, a certain amount of SP will be consumed when you use a skill.";
mes "Although you will consume SP when using the First Aid skill,";
mes "it helps to recover the HP and serve as a good skill at the";
mes "beginning stage.";
next;
atcommand strcharinfo(0) + "@baselvlup 1";
mes "[Instructor Sai Xi]";
mes "Thank to me, you understand now!";
mes "Haha, this is my duty.";
mes "Here are some experience points for you!";
mes "I am a great man!";
next;
mes "[Instructor Sai Xi]";
mes "My class ends here.";
mes "Although it is short, i believe you";
mes "have learned a lot in return.";
mes "Isn't that enough? Then, you should";
mes "go and ask other players.";
mes "If you think this is too";
mes "troublesome, you can find the";
mes "support instructors.";
mes "They will explain it you in detail";
set saixi_F,1;
set Npc_saixi,1;
close;
E_check:
mes "Is there anything I can help you?";
if (Npc_saixi < 1) goto C_saixi;
if (Npc_alice < 1) goto C_alice;
if (Npc_chris < 1) goto C_chris;
mes "Looks like you have finished everything.";
mes "We're sending you to the battleground now.";
mes "If you have anything that you don't understand,";
mes "please come back again.";
next;
warp "new_1-2.gat",28,178;
close;
C_saixi:
mes "Oh?Hoho?";
mes "You still haven't taken the skill course.";
mes "Please go this way up to find the skill instructor";
next;
menu "Thank You",W_end,"Skill is boring, send me to battle!",G_battle,"Cancel",C_end;
C_alice:
mes "Oh?Hoho?";
mes "You still haven't taken the item course.";
mes "Please go this way up to find the item instructor";
next;
menu "Thank You",W_end,"items is boring, send me to battle!",G_battle,"Cancel",C_end;
C_chris:
mes "Oh?Hoho?";
mes "You still haven't taken the interface course.";
mes "Please go this way up to find the interface instructor";
next;
menu "Thank You",W_end,"items is boring, send me to battle!",G_battle,"Cancel",C_end;
W_end:
mes "[Instructor Sai Xi]";
mes "Ok, see you around";
close;
}
//Tour guide
new_1-2.gat,122,100,5 script Tour Guide#npc9-1::tournpc 105,{
mes "[Tour Guide]";
mes "I am the Tour Guide at the entrance of the village";
mes "who will give you the explaination about the location.";
mes "If you visited any village that you havn't been to before,";
mes "please find us at the entrance of the village,";
mes "and we will help you to find the location of the particular building";
next;
mes "[Tour Guide]";
mes "However, the custume of tour guide differs";
mes "according to the villages.";
mes "Please take note o this when you are finding our tour guide";
mes "Please find out more about the tour guide from them.";
mes "We will give you the most detailed explaination";
next;
mes "[Tour Guide]";
mes "If you want to go to the village,";
mes "please make use of the Kafra Service Staff";
mes "who will provide the service of teleportation.";
close;
}
///////////////////////////////////////////////
// PART II //
///////////////////////////////////////////////
// Npc_exc = Elmeen //
//
//
//
//
//
//
///////////////////////////////////////////////
//Entrance Guard
new_1-2.gat,37,183,5 script Entrance Guard#npc10-1::entguardnpc 92,{
mes "[Muriel]";
if(Npc_exc == 1)goto T_1;
mes "So, you decided to battle although you don't know how to do it?";
mes "Please proceed to the left and listen to the basic theory of battle before you come again";
close;
T_1:
mes "The second stage of trial is to test whether you are able to use";
mes "the theory that you have learned wisely";
next;
mes "[Muriel]";
mes "We have released the monsters for the 2nd test. We hope that you will be able to defeat all the monsters.";
next;
mes "[Muriel]";
mes "There is no main objective or limitation in this test but it only provide you with the experience of real battle.";
mes "So, please don't worry.";
next;
mes "[Muriel]";
mes "If you wish to leave the 2nd stage of battle, please talk to the staff at the north entrance so that you will be sent to the next trial.";
mes "So, shall we start the test now?";
next;
menu "Yes",B_yes,"I need some time to prepare",B_no;
B_no:
mes "[Muriel]";
mes "If you are not sure whether you can pass the test, listen to the";
mes "left and come again.";
mes "And please come back when you're ready.";
close;
B_yes:
mes "[Muriel]";
getitem 569,300;
getitem 1243,1;
getitem 2112,1;
getitem 2340,1;
getitem 2203,1;
mes "This is a test worth to be taken.";
mes "Here's something for you and we hope that it might help you when you're in trouble.";
mes "Of course, we will provide you with weapons and equipments too.";
next;
callfunc "warpcheck6";
close;
}
//excution staff
new_1-2.gat,16,183,5 script Excution Staff#npc11-1::Exc 84,{
mes "[Elmeen]";
if(Npc_exc == 1)goto T_2;
mes "How is the progress of your first stage course?";
mes "Have you learnt the the basic understanding to the world of Ragnarok?";
next;
mes "[Elmeen]";
mes "Well then, let's learn about the basic of battle in the game.";
mes "Since you have taken the class of theory, you must have obtained the basic equipment too.";
next;
mes "[Elmeen]";
mes "Please check your equipment before you start to engage in battle.";
mes "Have you eqquipped all of your equipments?";
next;
menu "Yes",equip_Y,"Not Yet",equip_N;
equip_N:
mes "[Elmeen]";
mes "Please take care of your equipments you've received through training courses.";
mes "Once you loe the equipments, you can never get them back.";
close;
equip_Y:
mes "[Elmeen]";
mes "First, you bring your cursor of your mouse on a monster.";
mes "And when you left click, it will hit the monster one time.";
next;
mes "[Elmeen]";
mes "If you are too lazy to keek left clicking, left click one time on the monster while holding the CTRL key.";
mes "That will allow you to hit the monster untill it's dead";
next;
mes "[Elmeen]";
mes "If you think that it's too troublesome to click CTRL button everytime, please key in the /ns command in the chat window.";
mes "Then you will be able to do the same thing as rightclick + CTRL";
mes "Key Function";
next;
mes "[Elmeen]";
mes "If the property of a monster is undead, you can use heal skill to attack.";
mes "When you use heal skill while holding shift key, it will damage the monster.";
next;
mes "[Elmeen]";
mes "We do have a very convenient option for lazy people,too. Type a command /ns on your chat window.";
mes "It will allow you to attack monsters by using the heal skill without holding shift key.";
next;
mes "[Elmeen]";
mes "Do you understand about battle commands now?";
mes "From now on, I will be teaching you about the characteristic and the property of monsters, experience points gained through battle and items you can earn from dead monsters.";
next;
mes "[Elmeen]";
mes "Real battle is very dangerous and it suprises me that someone like you wants to win in a battle too....";
mes "In order to help you win, I shall call upon some power for you.";
next;
atcommand strcharinfo(0) + "@baselvlup 1";
mes "[Elmeen]";
mes "Ah Ah---Hehehehehehehehehe!!!";
next;
mes "[Elmeen]";
mes "Hooo...That's really tiring...";
mes "I hope it will do you some help.";
mes "What do you want to know now?";
set Npc_exc,1;
next;
menu "Characteristic and property of monsters",C_1,"Experience points",C_2,"Item",C_3,"Cancel",C_4;
Menu2:
menu "Characteristic and property of monsters",C_1,"Experience points",C_2,"Item",C_3,"Cancel",C_4;
C_1:
mes "[Elmeen]";
mes "There are many aggressive ones among monsters. They'll attack you first before you're even close to them.";
mes "Also there are few monsters who are very cooperative to their tribe. If you attack one of them, other will come after you for revenge.";
next;
mes "[Elmeen]";
mes "Every monster are specified with their types, sizes and properties.";
mes "For instance, monster types are such as demi-human, brute, immortal or devil.";
mes "Once you acknowledge which type a monster it, you will be able to lead a easy battle.";
next;
mes "[Elmeen]";
mes "Also, if you can have some cards slotted in your weapons which increases the damage upon certain monster types or cards for your armours which reduces the damage taken,";
mes "It will be more easier for you to battle against monsters.";
next;
mes "[Elmeen]";
mes "Monsters are separated by their sizes such as small, medium and large. There are few cards that allows you to do more damage followed by the monster size.";
next;
mes "[Elmeen]";
mes "Every weapon also has it's own strength and weaknesses. Size of the weapon affects on the damage of the weapon dealt with monsters.";
mes "For instance, dagger class weapons do 100% more damage of the weapon damage on the small sized monster but they only do 50% on the large monster.";
next;
mes "[Elmeen]";
mes "For the monster property, there are water, wind, earth, fire, shadow, ghost and holy.";
mes "If you attack a monster with the opposite property og it, you can do more damages than the damage you normally do.";
next;
mes "[Elmeen]";
mes "On the contrary, if you attack a monster with the same property of it, not only you cannot deal and damage, there is a possibility that you can heal the monster.";
mes "For instance, in case of a ghost, property monster, normal weaponry cannot do any damage on the monster, but weapons with elements can.";
next;
goto Menu2;
C_2:
mes "[Elmeen]";
mes "Basically, a character who deals the most damage on a monster receives the most experience points from the monster.";
mes "Therefore you receive a certain % of experience points in proportion to the damage you've done on the HP amount of a monster";
goto Menu2;
C_3:
mes "[Elmeen]";
mes "When you kill monsters, you can obtain items by chance.";
mes "Besides, certain characters can use 'Steal' skill in order to steal items from monsters.";
next;
mes "[Elmeen]";
mes "Don't you worry about the steal skill that might cause you not to find any items after you kill them.";
mes "In case you kill a monster with other people, person who did the most damage has prior rights to obtain items";
next;
goto Menu2;
T_2:
mes "[Elmeen]";
mes "Do you want to hear it again?";
mes "How about listening it again?";
next;
menu "Characteristic and property of monsters",C_1_2,"Experience points",C_2_2,"Item",C_3_3,"Basic Knowledge of battle",C_4,"Cancel",C_5;
C_4:
mes "[Elmeen]";
mes "Oh, ok. Come back again if you need to revise anything";
close;
C_5:
mes "[Elmeen]";
mes "First, you bring your cursor of your mouse on a monster.";
mes "And when you left click, it will hit the monster one time.";
next;
mes "[Elmeen]";
mes "If you are too lazy to keek left clicking, left click one time on the monster while holding the CTRL key.";
mes "That will allow you to hit the monster untill it's dead";
next;
mes "[Elmeen]";
mes "If you think that it's too troublesome to click CTRL button everytime, please key in the /ns command in the chat window.";
mes "Then you will be able to do the same thing as rightclick + CTRL";
mes "Key Function";
next;
mes "[Elmeen]";
mes "If the property of a monster is undead, you can use heal skill to attack.";
mes "When you use heal skill while holding shift key, it will damage the monster.";
next;
mes "[Elmeen]";
mes "We do have a very convenient option for lazy people,too. Type a command /ns on your chat window.";
mes "It will allow you to attack monsters by using the heal skill without holding shift key.";
close;
C_1_2:
mes "[Elmeen]";
mes "There are many aggressive ones among monsters. They'll attack you first before you're even close to them.";
mes "Also there are few monsters who are very cooperative to their tribe. If you attack one of them, other will come after you for revenge.";
next;
mes "[Elmeen]";
mes "Every monster are specified with their types, sizes and properties.";
mes "For instance, monster types are such as demi-human, brute, immortal or devil.";
mes "Once you acknowledge which type a monster it, you will be able to lead a easy battle.";
next;
mes "[Elmeen]";
mes "Also, if you can have some cards slotted in your weapons which increases the damage upon certain monster types or cards for your armours which reduces the damage taken,";
mes "It will be more easier for you to battle against monsters.";
next;
mes "[Elmeen]";
mes "Monsters are separated by their sizes such as small, medium and large. There are few cards that allows you to do more damage followed by the monster size.";
next;
mes "[Elmeen]";
mes "Every weapon also has it's own strength and weaknesses. Size of the weapon affects on the damage of the weapon dealt with monsters.";
mes "For instance, dagger class weapons do 100% more damage of the weapon damage on the small sized monster but they only do 50% on the large monster.";
next;
mes "[Elmeen]";
mes "For the monster property, there are water, wind, earth, fire, shadow, ghost and holy.";
mes "If you attack a monster with the opposite property og it, you can do more damages than the damage you normally do.";
next;
mes "[Elmeen]";
mes "On the contrary, if you attack a monster with the same property of it, not only you cannot deal and damage, there is a possibility that you can heal the monster.";
mes "For instance, in case of a ghost, property monster, normal weaponry cannot do any damage on the monster, but weapons with elements can.";
next;
goto Menu2;
C_2_2:
mes "[Elmeen]";
mes "Basically, a character who deals the most damage on a monster receives the most experience points from the monster.";
mes "Therefore you receive a certain % of experience points in proportion to the damage you've done on the HP amount of a monster";
goto Menu2;
C_3_2:
mes "[Elmeen]";
mes "When you kill monsters, you can obtain items by chance.";
mes "Besides, certain characters can use 'Steal' skill in order to steal items from monsters.";
next;
mes "[Elmeen]";
mes "Don't you worry about the steal skill that might cause you not to find any items after you kill them.";
mes "In case you kill a monster with other people, person who did the most damage has prior rights to obtain items";
next;
goto Menu2;
}
// Potato Merchant
new_1-2.gat,29,284,7 shop Potato Merchant 49,516:15
//////////////////////////////////////////////////////
// Area 3
//////////////////////////////////////////////////////
//
//
//
//
//////////////////////////////////////////////////////
//new_1-3.gat,96,29,5 script test#npc12-1::Test Examiner 727,{
//==============================================================================
//Novice
//==============================================================================
//Outer Courtyard <=> Castle Entrance Hall - OK for new Training Grounds
new_1-1.gat,148,112,0 warp new01 2,3,new_1-2.gat,100,9
new_1-2.gat,100,6,0 warp new02 2,3,new_1-1.gat,144,112
//Main Room <=> Left Room - OK for new Training Grounds
new_1-2.gat,73,106,0 warp new05 2,4,new_1-2.gat,41,172
new_1-2.gat,46,172,0 warp new06 2,4,new_1-2.gat,78,106
//Battle Field <=> Last Room - not checked yet on new Training Grounds
new_1-3.gat,96,175,0 warp new07 3,2,new_1-4.gat,100,14
//Outer Courtyard <=> Castle Entrance Hall - OK for new Training Grounds
new_2-1.gat,148,112,0 warp new01 2,3,new_2-2.gat,100,9
new_2-2.gat,100,6,0 warp new02 2,3,new_2-1.gat,144,112
//Main Room <=> Left Room - OK for new Training Grounds
new_2-2.gat,73,106,0 warp new05 2,4,new_2-2.gat,41,172
new_2-2.gat,46,172,0 warp new06 2,4,new_2-2.gat,78,106
//Battle Field <=> Last Room - not checked yet on new Training Grounds
new_2-3.gat,96,175,0 warp new07 3,2,new_2-4.gat,100,14
//Outer Courtyard <=> Castle Entrance Hall - OK for new Training Grounds
new_3-1.gat,148,112,0 warp new01 2,3,new_3-2.gat,100,9
new_3-2.gat,100,6,0 warp new02 2,3,new_3-1.gat,144,112
//Main Room <=> Left Room - OK for new Training Grounds
new_3-2.gat,73,106,0 warp new05 2,4,new_3-2.gat,41,172
new_3-2.gat,46,172,0 warp new06 2,4,new_3-2.gat,78,106
//Battle Field <=> Last Room - not checked yet on new Training Grounds
new_3-3.gat,96,175,0 warp new07 3,2,new_3-4.gat,100,14
//Outer Courtyard <=> Castle Entrance Hall - OK for new Training Grounds
new_4-1.gat,148,112,0 warp new01 2,3,new_4-2.gat,100,9
new_4-2.gat,100,6,0 warp new02 2,3,new_4-1.gat,144,112
//Main Room <=> Left Room - OK for new Training Grounds
new_4-2.gat,73,106,0 warp new05 2,4,new_4-2.gat,41,172
new_4-2.gat,46,172,0 warp new06 2,4,new_4-2.gat,78,106
//Battle Field <=> Last Room - not checked yet on new Training Grounds
new_4-3.gat,96,175,0 warp new07 3,2,new_4-4.gat,100,14
//Outer Courtyard <=> Castle Entrance Hall - OK for new Training Grounds
new_5-1.gat,148,112,0 warp new01 2,3,new_5-2.gat,100,9
new_5-2.gat,100,6,0 warp new02 2,3,new_5-1.gat,144,112
//Main Room <=> Left Room - OK for new Training Grounds
new_5-2.gat,73,106,0 warp new05 2,4,new_5-2.gat,41,172
new_5-2.gat,46,172,0 warp new06 2,4,new_5-2.gat,78,106
//Battle Field <=> Last Room - not checked yet on new Training Grounds
new_5-3.gat,96,175,0 warp new07 3,2,new_5-4.gat,100,14
//////////////////////////////////////////////////////////////////////////////
/// Area Warp Call Function Check
//////////////////////////////////////////////////////////////////////////////
//callfunc "warpcheck1";
function script warpcheck1 {
if(novarea == 1)warp "new_1-2.gat",100,70;
if(novarea == 2)warp "new_2-2.gat",100,70;
if(novarea == 3)warp "new_3-2.gat",100,70;
if(novarea == 4)warp "new_4-2.gat",100,70;
if(novarea == 5)warp "new_5-2.gat",100,70;
return;
}
//callfunc "warpcheck2";
function script warpcheck2 {
if(novarea == 1)warp "new_1-2.gat",28,178;
if(novarea == 2)warp "new_2-2.gat",28,178;
if(novarea == 3)warp "new_3-2.gat",28,178;
if(novarea == 4)warp "new_4-2.gat",28,178;
if(novarea == 5)warp "new_5-2.gat",28,178;
return;
}
//callfunc "warpcheck3";
function script warpcheck3 {
if(novarea == 1)warp "new_1-2.gat",115,110;
if(novarea == 2)warp "new_2-2.gat",115,110;
if(novarea == 3)warp "new_3-2.gat",115,110;
if(novarea == 4)warp "new_4-2.gat",115,110;
if(novarea == 5)warp "new_5-2.gat",115,110;
return;
}
//callfunc "warpcheck4";
function script warpcheck4 {
if(novarea == 1)warp "new_1-2.gat",28,178;
if(novarea == 2)warp "new_2-2.gat",28,178;
if(novarea == 3)warp "new_3-2.gat",28,178;
if(novarea == 4)warp "new_4-2.gat",28,178;
if(novarea == 5)warp "new_5-2.gat",28,178;
return;
}
//callfunc "warpcheck5";
function script warpcheck5 {
if(novarea == 1)warp "new_1-2.gat",83,110;
if(novarea == 2)warp "new_2-2.gat",83,110;
if(novarea == 3)warp "new_3-2.gat",83,110;
if(novarea == 4)warp "new_4-2.gat",83,110;
if(novarea == 5)warp "new_5-2.gat",83,110;
return;
}
//callfunc "warpcheck6";
function script warpcheck6 {
if(novarea == 1)goto A1;
if(novarea == 2)goto A2;
if(novarea == 3)goto A3;
if(novarea == 4)goto A4;
if(novarea == 5)goto A5;
return;
A1:
warp "new_1-3.gat",96,21;
savepoint "new_1-3.gat",96,21;
return;
A2:
warp "new_2-3.gat",96,21;
savepoint "new_1-3.gat",96,21;
return;
A3:
warp "new_3-3.gat",96,21;
savepoint "new_1-3.gat",96,21;
return;
A4:
warp "new_4-3.gat",96,21;
savepoint "new_1-3.gat",96,21;
return;
A5:
warp "new_5-3.gat",96,21;
savepoint "new_1-3.gat",96,21;
return;
}
///////////////////////////////////////////////////////////
// Duplication
///////////////////////////////////////////////////////////
//Xi En
new_2-1.gat,54,113,5 duplicate(XiEn) Xi En#npc1-2 727
new_3-1.gat,54,113,5 duplicate(XiEn) Xi En#npc1-3 727
new_4-1.gat,54,113,5 duplicate(XiEn) Xi En#npc1-4 727
new_5-1.gat,54,113,5 duplicate(XiEn) Xi En#npc1-5 727
//Guard 1
new_2-1.gat,144,116,5 duplicate(Guard) Guard#npc2-2 105
new_3-1.gat,144,116,5 duplicate(Guard) Guard#npc2-3 105
new_4-1.gat,144,116,5 duplicate(Guard) Guard#npc2-4 105
new_5-1.gat,144,116,5 duplicate(Guard) Guard#npc2-5 105
//Guard 2
new_2-1.gat,144,110,5 duplicate(Guard) Guard#npc3-2 105
new_3-1.gat,144,110,5 duplicate(Guard) Guard#npc3-3 105
new_4-1.gat,144,110,5 duplicate(Guard) Guard#npc3-4 105
new_5-1.gat,144,110,5 duplicate(Guard) Guard#npc3-5 105
//Register NPC
new_2-2.gat,100,29,5 duplicate(regnpc) Registration Staff#npc4-2 56
new_3-2.gat,100,29,5 duplicate(regnpc) Registration Staff#npc4-3 56
new_4-2.gat,100,29,5 duplicate(regnpc) Registration Staff#npc4-4 56
new_5-2.gat,100,29,5 duplicate(regnpc) Registration Staff#npc4-5 56
//Interface Instructor
new_2-2.gat,100,104,5 duplicate(internpc) Interface Instructor#npc5-2 751
new_3-2.gat,100,104,5 duplicate(internpc) Interface Instructor#npc5-3 751
new_4-2.gat,100,104,5 duplicate(internpc) Interface Instructor#npc5-4 751
new_5-2.gat,100,104,5 duplicate(internpc) Interface Instructor#npc5-5 751
//Item Instructor
new_2-2.gat,116,110,5 duplicate(itemnpc) Item Instructor#npc6-2 726
new_3-2.gat,116,110,5 duplicate(itemnpc) Item Instructor#npc6-3 726
new_4-2.gat,116,110,5 duplicate(itemnpc) Item Instructor#npc6-4 726
new_5-2.gat,116,110,5 duplicate(itemnpc) Item Instructor#npc6-5 726
//Kafra Service Staff
new_2-2.gat,118,108,5 duplicate(kafnpc) Kafra Service Staff#npc7-2 115
new_3-2.gat,118,108,5 duplicate(kafnpc) Kafra Service Staff#npc7-3 115
new_4-2.gat,118,108,5 duplicate(kafnpc) Kafra Service Staff#npc7-4 115
new_5-2.gat,118,108,5 duplicate(kafnpc) Kafra Service Staff#npc7-5 115
//Skill NPC
new_2-2.gat,84,110,5 duplicate(skillnpc) Skill Instructor#npc8-2 753
new_3-2.gat,84,110,5 duplicate(skillnpc) Skill Instructor#npc8-3 753
new_4-2.gat,84,110,5 duplicate(skillnpc) Skill Instructor#npc8-4 753
new_5-2.gat,84,110,5 duplicate(skillnpc) Skill Instructor#npc8-5 753
//Tour NPC
new_2-2.gat,122,100,5 duplicate(tournpc) Tour Guide#npc9-2 105
new_3-2.gat,122,100,5 duplicate(tournpc) Tour Guide#npc9-3 105
new_4-2.gat,122,100,5 duplicate(tournpc) Tour Guide#npc9-4 105
new_5-2.gat,122,100,5 duplicate(tournpc) Tour Guide#npc9-5 105
//Entrance Guard
new_2-2.gat,37,183,5 duplicate(entguardnpc) Entrance Guard#npc10-2 92
new_3-2.gat,37,183,5 duplicate(entguardnpc) Entrance Guard#npc10-3 92
new_4-2.gat,37,183,5 duplicate(entguardnpc) Entrance Guard#npc10-4 92
new_5-2.gat,37,183,5 duplicate(entguardnpc) Entrance Guard#npc10-5 92
//Excution NPC
new_2-2.gat,16,183,5 duplicate(Exc) Execution Staff#npc11-2 84
new_3-2.gat,16,183,5 duplicate(Exc) Execution Staff#npc11-3 84
new_4-2.gat,16,183,5 duplicate(Exc) Execution Staff#npc11-4 84
new_5-2.gat,16,183,5 duplicate(Exc) Execution Staff#npc11-5 84