//===== rAthena Script ======================================= //= Renewal Novice Training Grounds //===== By: ================================================== //= Kisuka //===== Current Version: ===================================== //= 1.6 //===== Compatible With: ===================================== //= rAthena Project //===== Description: ========================================= //= [Official Conversion] //= A tutorial for new players starting at new_1-1 (53,111). //= //= This script was replaced by the Izlude Academy in 2012. //===== Additional Comments: ================================= //= 1.0 First version, hand scripted from iRO. [Kisuka] //= 1.1 Updated warps, savepoints, NPC locations. [Kisuka] //= 1.2 Cleaning. [Euphy] //= 1.3 Fixed Eden Group Officer's level requirement. [Joseph] //= 1.4 Fixed checkquest to check quest accordingly. [Joseph] //= 1.4a Added 'npcskill' command. [Euphy] //= 1.5 Replaced with the official kRO scripts. [Euphy] //= 1.6 Added VIP features. [Euphy] //============================================================ // Main NPCs //============================================================ - script Sprakki#newbe01::NvSprakkiA -1,{ if (job_novice_q == 0) { mes "[Sprakki]"; mes "Hello there! Welcome to the World of Ragnarok Online. My name is Sprakki and I'm in charge of giving you basic gameplay tips."; mes "Click on the [Next] button or press [Enter] to continue."; next; mes "[Sprakki]"; mes "First you need to learn the very basics of controlling your character."; mes "All the basic ^4d4dffmoves, selection of items, and attacks^000000 use the ^4d4dff left click of the mouse^000000."; next; cutin "tutorial01",3; mes "-! Info !-"; mes "Click on the ground to move the character."; mes "Attacking monsters and conversations with the people of this world can be done by simply clicking on them."; next; cutin "",255; mes "[Sprakki]"; mes "First off, try moving around."; mes "Do you see that wooden bridge to the right?"; next; mes "[Sprakki]"; mes "Walk over that bridge and there's a castle used as the Training Center."; mes "I will be waiting for you inside of that Castle. Please come to the castle by yourself."; set job_novice_q,1; setquest 7117; next; cutin "tutorial02",3; mes "-! Info !-"; mes "You've received a quest from Sprakki."; mes "You can check the contents of the quest in the Quest Info Window."; next; mes "[Sprakki]"; mes "I will wait inside the Training Center across the bridge."; next; mes "-! Info !-"; mes "You can open the Quest Info Window by pressing the ^4d4dffAlt + U^000000 keys at the same time."; next; cutin "",255; mes "[Sprakki]"; mes "Have you checked the Quest Info Window?"; mes "I'll be waiting in the castle across the bridge."; close2; cutin "",255; end; } else if (job_novice_q == 1) { mes "[Sprakki]"; mes "I will be waiting for you across the Bridge to the east."; close; } else { mes "[Sprakki]"; mes "Are you lost?"; mes "Have you gone beyond the bridge to the east?"; mes "I will guide you further after we meet in the Training Center."; close; } } new_1-1,53,114,3 duplicate(NvSprakkiA) Sprakki#nv1a 90 new_2-1,53,114,3 duplicate(NvSprakkiA) Sprakki#nv2a 90 new_3-1,53,114,3 duplicate(NvSprakkiA) Sprakki#nv3a 90 new_4-1,53,114,3 duplicate(NvSprakkiA) Sprakki#nv4a 90 new_5-1,53,114,3 duplicate(NvSprakkiA) Sprakki#nv5a 90 - script Sprakki#newbe05::NvSprakkiB -1,{ if (job_novice_q == 0) { mes "[Sprakki]"; mes "Hello there! Welcome to the World of Ragnarok Online."; mes "My name is Sprakki and I'm in charge of giving you basic gameplay tips."; mes "Click on the [Next] button or press [Enter] key to continue."; next; mes "[Sprakki]"; mes "First you need to learn the very basics of controlling your character."; mes "All the basic ^4d4dffmoves, selection of items, and attacks^000000 use the ^4d4dff left click of the mouse^000000."; next; cutin "tutorial01",3; mes "-! Info !-"; mes "Click on the ground to move the character."; mes "Attacking monsters and conversations with the people of this world can be done by simply clicking on them."; next; cutin "",255; mes "[Sprakki]"; mes "Well then, I will give you a quest to talk to me."; mes "After the conversation is over, talk to me again by left-clicking on me."; set job_novice_q,1; setquest 7117; next; cutin "tutorial02",3; mes "-! Info !-"; mes "You've received a quest from Sprakki."; mes "You can check the contents of the quest in the Quest Info Window by pressing the ^4d4dffAlt + U^000000 keys at the same time."; next; cutin "",255; mes "[Sprakki]"; mes "Have you checked the Quest Info Window?"; mes "Well, talk to me again."; close; } else if (job_novice_q < 3) { if (job_novice_q == 1) { mes "[Sprakki]"; mes "Great!"; mes "Now you know how to move and talk to others, right?"; set job_novice_q,2; getexp 600,5; completequest 7117; next; } mes "[Sprakki]"; mes "The Training Center is prepared for novices just like you."; mes "You are going to be trained to get used to the basics of the Game."; next; mes "[Sprakki]"; mes "Of course, this Training Process is optional, if you want to go straight to town, that's also fine."; mes "But, you will miss all the advantages you can get in the Training Center."; next; switch(select("Begin Training.:Start the game right away.")) { case 1: mes "[Sprakki]"; mes "I will guide you to the Novice Training Center."; mes "Inside, Instructor 'Brade' will be waiting to speak to you."; next; mes "[Sprakki]"; mes "Instructor 'Brade' will help you afterwards."; mes "Please, Go see him."; setquest 7118; next; mes "^4d4dff- You received a quest 'Novice Training Ground -1' from Sprakki."; mes "Please check the Quest Info Window. -^000000"; close2; savepoint strnpcinfo(4),100,100,1,1; warp strnpcinfo(4),100,100; end; case 2: set nov_1st_cos,0; set nov_2nd_cos,0; set nov_3_swordman,0; set nov_3_archer,0; set nov_3_thief,0; set nov_3_magician,0; set nov_3_acolyte,0; set nov_3_merchant,0; mes "[Sprakki]"; mes "Ok, You want to start right away."; mes "Which Town do you want to start at?"; next; set .@select, select("Prontera:Morocc:Geffen:Payon:Alberta:Izlude"); mes "[Sprakki]"; mes "I see."; mes "Go ahead and grow stronger! Look toward a brighter future ahead of you."; callfunc "F_NvErase"; close2; switch(.@select) { case 1: savepoint "prontera",273,354,1,1; warp "prontera",273,354; break; case 2: savepoint "morocc",160,94,1,1; warp "morocc",160,94; break; case 3: savepoint "geffen",120,100,1,1; warp "geffen",120,100; break; case 4: savepoint "payon",70,100,1,1; warp "payon",70,100; break; case 5: savepoint "alberta",116,57,1,1; warp "alberta",116,57; break; case 6: // Old coordinates: (94,103) savepoint "izlude",128,98,1,1; warp "izlude",128,98; break; } end; } } else { mes "[Sprakki]"; mes "These are the Novice Training Grounds."; mes "I will guide you to the Novice Training Center."; close2; savepoint strnpcinfo(4),100,100,1,1; warp strnpcinfo(4),100,100; end; } } new_1-2,100,29,4 duplicate(NvSprakkiB) Sprakki#nv1b 90 new_2-2,100,29,4 duplicate(NvSprakkiB) Sprakki#nv2b 90 new_3-2,100,29,4 duplicate(NvSprakkiB) Sprakki#nv3b 90 new_4-2,100,29,4 duplicate(NvSprakkiB) Sprakki#nv4b 90 new_5-2,100,29,4 duplicate(NvSprakkiB) Sprakki#nv5b 90 - script Brade#newbe02::NvBradeA -1,{ if (job_novice_q < 2) { mes "[Instructor Brade]"; mes "Hello there! Welcome to the World of Ragnarok Online."; mes "You have participated on the previous Training Grounds."; mes "The Training Grounds have now come under new management."; next; mes "[Instructor Brade]"; mes "I guess we will just have to start your training all over again."; next; mes "[Instructor Brade]"; mes "My name is Instructor Brade and I'm in charge of giving you basic gameplay tips."; mes "Click on the [Next] button or press [Enter] to continue."; next; mes "[Instructor Brade]"; mes "First you need to learn the very basics of controlling your character."; mes "All the basic ^4d4dff moves, selection of items, and attacks^000000 use the ^4d4dff left click of the mouse^000000."; next; cutin "tutorial01",3; mes "-! Info !-"; mes "Click on the ground to move the character."; mes "Attacking monsters and conversations with the people of this world can be done by simply clicking on them."; next; cutin "",255; next; mes "[Instructor Brade]"; mes "First off, try moving around."; mes "After moving around, talk to me again."; set nov_1st_cos,0; set nov_2nd_cos,0; set nov_3_swordman,0; set nov_3_archer,0; set nov_3_thief,0; set nov_3_magician,0; set nov_3_acolyte,0; set nov_3_merchant,0; set treasure_alb,0; set job_novice_q,2; setquest 7118; next; cutin "tutorial02",3; mes "-! Info !-"; mes "You've received a quest from Instructor Brade."; mes "You can check the contents of the quest in the Quest Info Window."; next; mes "-! Info !-"; mes "You can open the Quest Info Window by pressing the ^4d4dffAlt + U^000000keys at the same time."; next; cutin "",255; mes "[Instructor Brade]"; mes "Have you checked the Quest Info Window?"; mes "Well, talk to me again."; close; } else if (job_novice_q < 4) { if (job_novice_q == 2) { mes "[Instructor Brade]"; mes "Great."; mes "You've completed the given quest successfully, so I will reward you with experience points."; set job_novice_q,3; getexp 900,10; completequest 7118; next; mes "[Instructor Brade]"; mes "Experience Points you've earned from hunting or finishing quests can be checked by tracking the EXP Bar, located at upper-left side of the display."; next; mes "[Instructor Brade]"; mes "Sigh... I will just talk roughly."; mes "...I just can't get used to 'politeness' you know."; mes "Don't look at me like that!"; next; mes "[Instructor Brade]"; mes "Ok look alive you maggot."; mes "Next up is items and equipment."; next; mes "[Instructor Brade]"; mes "First, take these."; mes "These are very basic equipments and recovery potions."; } else { mes "[Instructor Brade]"; mes "Uh... Where were we? Oh right, let's continue."; mes "It's about items and equipments."; next; mes "[Instructor Brade]"; mes "Take these."; mes "Basic equipments and recovery potions."; } set job_novice_q,4; getitem 2352,1; //Novice_Plate getitem 2510,1; //Novice_Hood getitem 2414,1; //Novice_Boots getitem 5055,1; //Novice_Egg_Cap getitem 1243,1; //Novice_Knife getitem 2112,1; //Novice_Guard getitem 569,300; //Novice_Potion setquest 7119; next; mes "[Instructor Brade]"; mes "In the upper left Basic Info. Window, press the 'Item' icon to open the Item Window."; mes "The item window is divided into..."; next; mes "[Instructor Brade]"; mes "3 sections: consumable items, equipment and other items."; mes "If you want to use or equip items, just double-click on the item or drag them into the Equipment Window."; next; mes "[Instructor Brade]"; mes "You can see detailed info. of each item by right-clicking on the item."; mes "Detailed information of the item will pop up."; next; cutin "tutorial04",3; mes "!- Info -!"; mes "Right-click on an item to see detailed information about it."; next; mes "!- Info -!"; mes "Right-click on other players to show the Community Menu and you can join a party, or request trade with a player etc."; next; cutin "",255; mes "[Instructor Brade]"; mes "Why don't you equip the items I gave you earlier?"; mes "^4d4dffDouble-Click^000000 on the item you want to equip. Let us continue after you are done gearing up."; next; cutin "tutorial03",3; mes "!- Info -!"; mes "Items can be easily equipped or used by simply double-clicking on them."; mes "The Hot Key to open the Inventory Window is ALT + E."; next; mes "!- Info -!"; mes "To check on the items that are currently equipped, use the Hot Key ALT + Q."; mes "Or, drag the item on to the item slot you want the item to be equipped."; next; mes "!- Info -!"; mes "Equip all of the equipment given by Instructor Brade."; close2; cutin "",255; end; } else if (job_novice_q == 4) { if (isequipped(2414) + isequipped(2352) + isequipped(2510) + isequipped(2112) + isequipped(1243) < 4) { mes "[Instructor Brade]"; mes "Try to put on at least 4 of the equipments I gave you."; mes "Put those shoes on, wear those clothes, and arm yourself with that weapon you maggot."; close; } mes "[Instructor Brade]"; mes "You are all set."; mes "You are coming along just fine."; set job_novice_q,5; getexp 1200,15; getitem 12323,50; //N_Fly_Wing getitem 12324,20; //N_Butterfly_Wing completequest 7119; next; mes "[Instructor Brade]"; mes "Here's some Fly Wings and Butterfly Wings as a reward."; mes "You don't need these in the Training Ground, but they will come in handy later."; next; mes "[Instructor Brade]"; mes "Next, are Hot Keys."; mes "Press the ^4d4dffF12 key^000000 on your keyboard."; mes "A box with 9 slots will pop up."; next; mes "[Instructor Brade]"; mes "Drag on the right corner of the Hot Key Window and you will be able to see the other pages of the Hot Key."; next; mes "[Instructor Brade]"; mes "The F1 to F9 keys are the designated hotkeys."; mes "Just drag a skill or an item onto the Hot Key Window and press a corresponding key to use them right away."; next; cutin "tutorial05",3; mes "!- Info -!"; mes "You can register a skill or an item to the Hot Key Window by just dragging them onto the Hot Key Slot."; next; mes "!- Info -!"; mes "Registered Skills or Items can be used/equipped by just pressing the corresponding key."; next; mes "!- Info -!"; mes "You can customize the Hot Key to use any keys you please as the Hot Key by changing the Shortcut configuration in the options menu."; next; mes "!- Info -!"; mes "Register skills and items that you use often so that you can use them easily."; next; cutin "",255; mes "[Instructor Brade]"; mes "The last part is how to use Skills."; mes "But before that, you need to learn something first."; next; mes "[Instructor Brade]"; mes "Somewhere in this room, there's someone named ^4d4dffJinha^000000."; mes "Find Jinha and learn the ^4d4dff[First Aid]^000000 skill from him."; setquest 7120; next; mes "[Instructor Brade]"; mes "Your lesson is after that."; mes "Go find Jinha and learn the [First Aid] Skill. Then come back to me."; close; } else if (job_novice_q == 5) { mes "[Instructor Brade]"; mes "Somewhere in this room, there's someone named ^4d4dffJinha^000000."; mes "Find Jinha and learn the ^4d4dff[First Aid]^000000 skill from him."; close; } else if (job_novice_q == 6) { mes "[Instructor Brade]"; mes "Now you've learned the [First Aid] Skill."; mes "Just as I told you before, by registering the First Aid Skill onto the Hot Key Window, you can use the skill fast and easy."; next; mes "[Instructor Brade]"; mes "And that's it, that's all I can teach you."; mes "You see that exit to the west?"; mes "Move on to the next room and there will be another instructor waiting for you."; next; mes "[Instructor Brade]"; mes "We will be seeing each other soon enough."; mes "But for now, go to the room to the west and get more information."; next; mes "[Instructor Brade]"; mes "You've come along fine this far."; mes "This is not much, but take this as a reward."; set job_novice_q,7; getitem 2393,1; //N_Adventurer's_Suit completequest 7120; close; } else if (job_novice_q == 7) { mes "[Instructor Brade]"; mes "Next step of the Training is done in the room west of here."; mes "If you are lost, I can send you there."; next; switch(select("I can get there by myself.:Please, send me to the next room.")) { case 1: mes "[Instructor Brade]"; mes "Good. That's the attitude you must have."; mes "You can't just lean on others to help you."; mes "Now, go ahead."; close; case 2: mes "[Instructor Brade]"; mes "Oh well."; mes "I think it's better than seeing you lost and wandering about."; mes "Hahahaha..."; close2; warp strnpcinfo(4),41,172; end; } } else { mes "[Instructor Brade]"; mes "Aren't you done with the courses here?"; mes "Or are you just lost?"; next; switch(select("Send me to the Combat Training Ground.:I want to go to town.")) { case 1: mes "[Instructor Brade]"; mes "Sure."; mes "Be careful not to be lost again."; close2; warp "new_"+charat(strnpcinfo(4),4)+"-3",96,21; end; case 2: mes "[Instructor Brade]"; mes "Town... Eh?"; mes "In that case, I will send you to where the Kafra Employee is at."; mes "Use ^4d4dffKafra's Warp Service^000000 to go to town."; close2; warp strnpcinfo(4),41,172; end; } } } new_1-2,100,105,3 duplicate(NvBradeA) Brade#nv1a 733 new_2-2,100,105,3 duplicate(NvBradeA) Brade#nv2a 733 new_3-2,100,105,3 duplicate(NvBradeA) Brade#nv3a 733 new_4-2,100,105,3 duplicate(NvBradeA) Brade#nv4a 733 new_5-2,100,105,3 duplicate(NvBradeA) Brade#nv5a 733 - script Jinha#newbe03::NvJinha -1,{ if (job_novice_q < 5) { mes "[Jinha]"; mes "What can I help you with?"; mes "Hmm? You haven't followed the curriculum correctly."; next; mes "[Jinha]"; mes "You have to see Instructor Brade first before me. I will send you to Instructor Brade."; close2; warp strnpcinfo(4),100,100; end; } else if (job_novice_q == 5) { if (getskilllv("NV_FIRSTAID") > 0) { mes "[Jinha]"; mes "Hello!"; mes "I am responsible for teaching you the [First Aid] skill."; mes "Instructor Brade asked you to learn it right?."; next; mes "[Jinha]"; mes "Wow... ...it's amazing!"; mes "You already know the First Aid Skill."; mes "There doesn't seem to be anything for me to teach you."; next; mes "[Jinha]"; mes "Great. Was your instructor from the previous management Cecil?"; mes "Well, you have learned First Aid, I can confirm that."; next; mes "[Jinha]"; mes "Well, you can directly go to the next step of the course."; mes "Go back to Instructor Brade."; set job_novice_q,6; close; } else { mes "[Jinha]"; mes "Hello!"; mes "How can I help you?"; next; select("I want to learn to use the [First Aid] Skill."); mes "[Jinha]"; mes "That's right."; mes "First Aid is the skill used to convert SP into HP when you are in danger."; next; mes "[Jinha]"; mes "It's recovery amount is small."; mes "Still, it will help you not to faint from a critical hit."; specialeffect2 EF_BEGINSPELL6; specialeffect2 EF_SPELLBREAKER; next; mes "[Jinha]"; mes "You can open the Skill Window by pressing the ^4d4dffskill^000000 button in the Basic Window."; mes "Hot Key is ^4d4dffALT + S^000000."; mes "Why don't you try the skill?"; skill "NV_FIRSTAID",1,SKILL_PERM; set skill_nov,3; // Has future uses - do not remove! [Euphy] set job_novice_q,6; next; mes "[Jinha]"; mes "Good, now you know how to use the First Aid Skill, you have to move on to the next step."; mes "Go back to Instructor Brade and show him what you've learned here."; close; } } else if (job_novice_q == 6) { mes "[Jinha]"; mes "Didn't you learn the First Aid Skill already?"; mes "Have it checked by Instructor Brade."; mes "If you don't know how to get to him, I will send you to him."; next; switch(select("I'm good by myself.:Please, send me to him.")) { case 1: mes "[Jinha]"; mes "Very Good!"; mes "That's the right attitude!"; mes "You will be a great adventurer in the future."; close; case 2: mes "[Jinha]"; mes "I will send you to Instructor Brade."; close2; warp strnpcinfo(4),100,100; end; } } else { mes "[Jinha]"; mes "What can I do for you?"; mes "Next course will be continued in the West Room."; mes "Go on into the west room."; close; } } new_1-2,115,120,3 duplicate(NvJinha) Jinha#nv1 59 new_2-2,115,120,3 duplicate(NvJinha) Jinha#nv2 59 new_3-2,115,120,3 duplicate(NvJinha) Jinha#nv3 59 new_4-2,115,120,3 duplicate(NvJinha) Jinha#nv4 59 new_5-2,115,120,3 duplicate(NvJinha) Jinha#nv5 59 // People/Services in Ragnarok //============================================================ - script Chocolat#newbe06::NvChocolat -1,{ if (job_novice_q < 7) { mes "[Chocolat]"; mes "Hmm? Strange."; mes "Let me see that Trainee ID for a sec."; next; if (job_novice_q < 2) { mes "[Chocolat]"; mes "Oh, really..."; mes "You have participated on the previous Training Grounds."; mes "The Training Grounds have now come under new management."; next; mes "[Chocolat]"; mes "If you want to do the basic course,"; mes "you should go back to Instructor Brade."; next; mes "[Chocolat]"; mes "Or you can go ahead and start with theory training."; mes "What would you like to do?"; next; switch(select("Send me to Basic Training.:Start Theory Training.")) { case 1: mes "[Chocolat]"; mes "Sure."; mes "I will send you to Instructor Brade."; mes "Instructor Brade will start your basic training."; close2; warp strnpcinfo(4),100,100; end; case 2: mes "[Chocolat]"; mes "I will tell you about the people you will be seeing in Town."; mes "There are many kinds of people in town and some of them will be helpful to know."; next; mes "[Chocolat]"; mes "There are a lot of people in town, but among them, these people are the most important to know."; next; mes "[Chocolat]"; mes "They are [Kafra] Employee's standing right behind me and their rival company the [Cool Event Corp]."; mes "When you visit a town for the first time, you should talk to the Information [Guide]"; next; mes "[Chocolat]"; mes "Well then, let's hear from each of them."; mes "Start by talking to the [Kafra] Employee."; set job_novice_q,8; setquest 7121; next; mes "^4d4dff- You've received a quest from Chocolat."; mes "Please check the quest information window. -^000000"; close; } } else { mes "[Chocolat]"; mes "You were still on the basic course."; mes "You should go back to Instructor Brade or Jinha."; next; mes "[Chocolat]"; mes "If you don't know how to find them, I can send you to Instructor Brade, How about it?"; next; switch(select("I will go myself.:Will you do that for me?")) { case 1: mes "[Chocolat]"; mes "Sure. Go out to the door to the right."; close; case 2: mes "[Chocolat]"; mes "Sure."; mes "I will see you later."; close2; warp strnpcinfo(4),100,100; end; } } } else if (job_novice_q == 7) { mes "[Chocolat]"; mes "I will tell you about the people you will be seeing in Town."; mes "There are many kinds of people in town and some of them will be helpful to know."; next; mes "[Chocolat]"; mes "There are a lot of people in town, but among them, these people are the most important to know."; next; mes "[Chocolat]"; mes "They are [Kafra] Employee's standing right behind me and their rival company the [Cool Event Corp]."; mes "When you visit a town for the first time, you should talk to Information [Guide]"; next; mes "[Chocolat]"; mes "Well then, let's hear from each of them."; mes "Start by talking to the [Kafra] Employee."; set job_novice_q,8; setquest 7121; close; } else if (job_novice_q == 8) { mes "[Chocolat]"; mes "Here, talk to these guys standing behind me."; mes "Start with the [Kafra] Employee behind me."; close; } else if (job_novice_q == 9) { mes "[Chocolat]"; mes "You've learned a lot about Kafra service huh?"; mes "From now on, you can use the Kafra Service."; next; mes "[Chocolat]"; mes "During the Training Process, if you want to go straight to the town, you can use the Kafra Service to go there."; mes "But, once you leave the Training Center, you can never come back here."; next; mes "[Chocolat]"; mes "Next is the Kafra's rival, [Cool Event Corp.] Staff!"; mes "[Cool Event Corp.] Staff specialize in events."; mes "Well, why don't you talk to him yourself?"; close; } else if (job_novice_q == 10) { mes "[Chocolat]"; mes "After [Kafra] and [Cool Event Corp.], are the Information [Guide]'s."; mes "They can seem insignificant but they can help you greatly when the time comes."; next; mes "[Chocolat]"; mes "I've brought the Information Guide from the City of Prontera."; mes "Ask him what he actually does in town."; close; } else if (job_novice_q == 11) { mes "[Chocolat]"; mes "How was the explanation of the Information [Guide]?"; mes "Last is about using [Inn]s."; mes "There's an Inn located in each town."; next; mes "[Chocolat]"; mes "You can rest at Inns or Hotels for a small fee."; mes "Your HP and SP will be recovered completely by resting there."; mes "Can't hurt to use one, eh?"; next; mes "[Chocolat]"; mes "Besides these guys, there's many merchants selling various kind of items, so go check them out."; set job_novice_q,12; completequest 7121; getexp 1800,20; getitem 7059,20; //Cargo_Free_Ticket getitem 7060,30; //Warp_Free_Ticket next; mes "[Chocolat]"; mes "You've completed all the quests I gave you."; mes "As the reward, I will give you Free Tickets for Kafra Storage and Teleport Service."; mes "They will come in handy."; next; mes "[Chocolat]"; mes "That's all for me."; mes "Now, it's time for real combat!"; next; mes "[Chocolat]"; mes "Real Combat Training will be given by Instructor Brade. You met him earlier."; mes "I will send you to the Real Combat Training Field."; close2; set .@map$, "new_"+charat(strnpcinfo(4),4)+"-3"; savepoint .@map$,96,21,1,1; warp .@map$,96,21; end; } else { mes "[Chocolat]"; mes "Are you lost?"; next; switch(select("No, just looking around:Yes, send me to the Combat Training Field")) { case 1: mes "[Chocolat]"; mes "Okay, come back to me if"; mes "you need me to redirect you."; close; case 2: mes "[Chocolat]"; mes "I will send you to the Real Combat Training Field."; close2; set .@map$, "new_"+charat(strnpcinfo(4),4)+"-3"; savepoint .@map$,96,21,1,1; warp .@map$,96,21; end; } } } new_1-2,33,172,4 duplicate(NvChocolat) Chocolat#nv1 96 new_2-2,33,172,4 duplicate(NvChocolat) Chocolat#nv2 96 new_3-2,33,172,4 duplicate(NvChocolat) Chocolat#nv3 96 new_4-2,33,172,4 duplicate(NvChocolat) Chocolat#nv4 96 new_5-2,33,172,4 duplicate(NvChocolat) Chocolat#nv5 96 - script Kafra Employee#newbe07::NvKafra -1,{ if (job_novice_q < 8) { mes "[Kafra Employee]"; mes "Hello."; mes "I don't think it's my turn yet."; mes "Please talk to 'Chocolat' first."; close; } else if (job_novice_q == 8) { mes "[Kafra Employee]"; mes "Hello."; mes "I've been dispatched by the Kafra Head Office to help trainees."; mes "The Kafra Corporation is the world's largest company with a long and distinguished history on the Midgard continent."; mes "It's important for you adventurers to be close with us."; next; mes "[Kafra Employee]"; mes "I will inform you about the Kafra Services which you will be using most frequently, [Save], [Storage] and [Teleport] Services."; next; mes "[Kafra Employee]"; mes "When you talk to a Kafra Employee and ask for the Save Service,"; mes "the location of where you will revive, after being defeated in battle, will be changed."; next; mes "[Kafra Employee]"; mes "Your Respawn Point is always the last place where you have saved. Using a Butterfly Wing will return you to the place where you last saved."; mes "This service is free to use, so feel free to use the Save Service anytime you like."; next; callsub L_Services,2; //Storage next; callsub L_Services,3; //Teleport set job_novice_q,9; next; mes "[Kafra Employee]"; mes "Do you want to hear another explanation?"; next; while(1) { set .@select, select("About Save:About Storage:About Teleport:About Cart:No More."); if (.@select == 5) { mes "[Kafra Employee]"; mes "I hope you are satisfied with my explanation"; mes "about the Kafra Service."; close; } callsub L_Services, .@select; next; } } else { mes "[Kafra Employee]"; mes "Kafra Service at your service."; mes "What can I do for you?"; next; mes "[Kafra Employee]"; mes "Let me inform you before you use the Teleport Service."; mes "If you teleport to the village,"; mes "^4d4dffyou can NEVER come back to the Novice Training Field.^000000"; mes "So keep that in mind."; next; switch(select("Teleport Service:About Kafra Service")) { case 1: mes "[Kafra Employee]"; mes "So, you are going straight to town."; mes "Let me give you a brief introduction."; mes "^4d4dffProntera is the Capital City of the Rune-Midgarts Kingdom, and right next to it is Izlude^000000."; next; mes "[Kafra Employee]"; mes "^4d4dffMorocc is the Desert City, you can change your job to Thief and Assassin^000000 here."; mes "^4d4dffPayon is the Village in the Mountains, and it is close to the Archer Village^000000."; mes "^4d4dffGeffen is the City of Magic. Go there if you want to become a Mage.^000000"; next; mes "[Kafra Employee]"; mes "^4d4dffAlberta is the Port City and there you can find the Merchant Guild^000000."; mes "Also, if you are trying to take a boat to go somewhere, you have to go through Alberta first."; mes "Select the town you want to teleport to."; next; switch(select("Prontera:Morocc:Payon:Alberta:Geffen")) { case 1: mes "[Kafra Employee]"; mes "Rune-Midgarts' Capital, Prontera."; mes "I will send you to Prontera."; mes "May Freya bless you upon your journey."; callfunc "F_NvErase"; close2; savepoint "prontera",117,72,1,1; warp "prontera",150,50; end; case 2: mes "[Kafra Employee]"; mes "The Desert City, Morocc..."; mes "It has lost it's former glory..."; mes "Do not lose the dream in your heart right now."; callfunc "F_NvErase"; close2; savepoint "morocc",150,99,1,1; warp "morocc",155,110; end; case 3: mes "[Kafra Employee]"; mes "Hmm, you want to be an Archer?."; mes "Let's go to Payon."; mes "Let Freya bless you."; callfunc "F_NvErase"; close2; savepoint "payon",70,100,1,1; warp "payon",166,67; end; case 4: mes "[Kafra Employee]"; mes "The Port City, Alberta."; mes "Main city for all trades on the Midgard continent."; mes "If you want to experience other civilizations, you have to visit Alberta first."; callfunc "F_NvErase"; close2; savepoint "alberta",30,232,1,1; warp "alberta",114,58; end; case 5: mes "[Kafra Employee]"; mes "The City of Magic!"; mes "Geffen Tower is looking nice standing in the middle of Geffen City."; mes "I will send you close to the Geffen fountain."; mes "May Goddess Freya bless you!."; callfunc "F_NvErase"; close2; savepoint "geffen",119,37,1,1; warp "geffen",122,65; end; } case 2: mes "[Kafra Employee]"; mes "I will explain about the Kafra Service."; mes "Which Service do you want to be"; mes "informed about?"; next; while(1) { set .@select, select("About Save:About Storage:About Teleport:About Cart:No More."); if (.@select == 5) { mes "[Kafra Employee]"; mes "I hope you are satisfied with my explanation"; mes "about the Kafra Service."; close; } callsub L_Services, .@select; next; } } } end; L_Services: switch(getarg(0)) { case 1: mes "[Kafra Employee]"; mes "When you are killed in a battle,"; mes "you can revive in the location you saved with this service."; mes "If you save at a Kafra in each village"; mes "You can revive in the village you saved."; next; mes "[Kafra Employee]"; mes "Saved location is always where"; mes "you saved last, and by using a Butterfly Wing,"; mes "you can teleport directly to your saved point."; mes "So feel free to use this service."; break; case 2: mes "[Kafra Employee]"; mes "Next is about using the Storage Service."; mes "You can store and retrieve your items in any town at your convenience."; next; mes "[Kafra Employee]"; mes "It's unreasonable to carry all of your items with you when you don't need them right away."; mes "Please use our Storage and keep your items safe and secure."; next; mes "[Kafra Employee]"; mes "Our convenient Storage Service"; mes "is provided to our customers for a small fee which is different from town to town."; mes "However, you must be"; mes "at least ^3355FFBasic Skill Level 6^000000"; mes "to use the Storage."; next; mes "[Kafra Employee]"; //mes "There are 3 different item sections of the Storage into which items are organized: Consumable, Equipment and Etc."; mes "There are 7 different item sections of the Storage into which items are organized: Consumable, Kafra (Item Mall), Armor, Weapons, Ammo, Cards, and Etc items."; next; // VIP System messages. if (MIN_STORAGE != MAX_STORAGE) { mes "[Kafra Employee]"; mes "There are a maximum of "+MIN_STORAGE+" Inventory Slots in Kafra Storage, meaning you can have up to "+MIN_STORAGE+" different kinds of items in Storage."; next; mes "[Kafra Employee]"; mes "If you have a Premium Subscription, the maximum Inventory Slots in Kafra Storage is "+MAX_STORAGE+"!"; mes "Remember though, that in the case of Equipment, each item takes up one Inventory Slot."; mes "The maximum number of items that can be placed in Kafra Storage is 30,000."; next; } else { mes "[Kafra Employee]"; mes "There are a maximum of "+MAX_STORAGE+" Inventory Slots in Kafra Storage, meaning you can have up to "+MAX_STORAGE+" different kinds of items in Storage."; next; } mes "[Kafra Employee]"; mes "This Storage is shared by every character on one account."; mes "Storage Fees can be vary for each Town."; mes "So please keep that in mind when you are using our storage service."; break; case 3: mes "[Kafra Employee]"; mes "We also provide you with a Teleport Service to make your trips easier when you are trying to move a long distance."; next; mes "[Kafra Employee]"; mes "With our veteran teleporter's skill,"; mes "your trip will be safer and more comfortable."; mes "Oh and remember that the places you can teleport to vary from town to town."; next; mes "[Kafra Employee]"; mes "This is all for your never ending"; mes "support. We are working hard to"; mes "repay our dept to our customers."; break; case 4: mes "[Kafra Employee]"; mes "The Kafra corporation provides Cart rental services"; mes "to customers engaged in commercial business."; mes "Originally this cart rental service had been only provided"; mes "by the merchant guild in Alberta"; next; mes "[Kafra Employee]"; mes "However, since we took over this service"; mes "our merchant customers have been able to rent carts from almost anywhere."; mes "The cart rental service is available only for job classes engaged in commercial business"; mes "such as ^4d4dffMerchants, Blacksmiths, Alchemists, and Super Novices^000000."; next; mes "[Kafra Employee]"; 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,"; mes "please keep that in mind."; break; } return; } new_1-2,30,176,4 duplicate(NvKafra) Kafra Employee#nv1 117 new_2-2,30,176,4 duplicate(NvKafra) Kafra Employee#nv2 117 new_3-2,30,176,4 duplicate(NvKafra) Kafra Employee#nv3 117 new_4-2,30,176,4 duplicate(NvKafra) Kafra Employee#nv4 117 new_5-2,30,176,4 duplicate(NvKafra) Kafra Employee#nv5 117 - script Cool Event Corp. Staff::NvCool -1,{ if (job_novice_q < 9) { mes "[Cool Event Corp. Staff]"; mes "This is not my turn."; mes "have you finished talking to the Kafra Employee yet?"; close; } else if (job_novice_q == 9) { mes "[Cool Event Corp. Staff]"; mes "Hello."; mes "We are working hard to provide events on Midgard similar to the Kafra services."; next; mes "[Cool Event Corp. Staff]"; mes "Our staff is here to support you with [storage], [save] and [teleport service]."; next; mes "[Cool Event Corp. Staff]"; mes "If there's no Kafra around you, we're around to help you."; next; mes "[Cool Event Corp. Staff]"; mes "We are working hard on a network of Events to make your life better."; mes "I hope that you can meet our staff in Alberta."; next; mes "[Cool Event Corp. Staff]"; mes "Who knows, we might meet outside of this academy."; next; mes "[Cool Event Corp. Staff]"; mes "Mostly all of us wear red coats in the places that the Kafra Employee's don't work in."; set job_novice_q,10; close; } else { mes "[Cool Event Corp. Staff]"; mes "Most of our services are similar to those of the Kafra Corporation."; close; } } new_1-2,33,176,4 duplicate(NvCool) Cool Event Corp. Staff::NvCool1 874 new_2-2,33,176,4 duplicate(NvCool) Cool Event Corp. Staff::NvCool2 874 new_3-2,33,176,4 duplicate(NvCool) Cool Event Corp. Staff::NvCool3 874 new_4-2,33,176,4 duplicate(NvCool) Cool Event Corp. Staff::NvCool4 874 new_5-2,33,176,4 duplicate(NvCool) Cool Event Corp. Staff::NvCool5 874 - script Guide::NvGuide -1,{ if (job_novice_q < 10) { mes "[Guide]"; mes "It ain't my turn yet."; mes "Listen to Chocolat."; close; } else if (job_novice_q == 10) { mes "[Guide]"; mes "Guides are in each town to guide you to useful places."; mes "Ask us where you want to go and we'll mark your mini maps with a ^4d4dff+^000000."; mes "Don't hesitate to ask us questions."; next; mes "[Guide]"; mes "We all don't look the same in every town but our roles are the same."; mes "Take note of this whenever you go to a new town."; next; mes "[Guide]"; mes "If you want to go to your first town, you can ask the Kafra Employee to the left."; mes "You can move there with the Teleport Service."; set job_novice_q,11; close; } else { mes "[Guide]"; mes "What can I help you with?"; mes "Need me to explain what I do again?"; next; switch(select("Yes, I need an explanation.:Nope.")) { case 1: mes "[Guide]"; mes "Guides are in each town to guide you to useful places in each town."; mes "Ask us where you want to go and we'll mark your mini maps with a ^4d4dff+^000000."; mes "Don't hesitate to ask us questions."; next; mes "[Guide]"; mes "We all don't look the same in every town but our roles are the same."; mes "Take note of this whenever you go to a new town."; next; mes "[Guide]"; mes "If you want to go to your first town, you can ask the Kafra Employee to the left."; mes "You can move there with the Teleport Service."; close; case 2: mes "[Guide]"; mes "Ok well talk to Chocolat if you're done talking with us."; close; } } } new_1-2,36,176,4 duplicate(NvGuide) Guide#nv1 105 new_2-2,36,176,4 duplicate(NvGuide) Guide#nv2 105 new_3-2,36,176,4 duplicate(NvGuide) Guide#nv3 105 new_4-2,36,176,4 duplicate(NvGuide) Guide#nv4 105 new_5-2,36,176,4 duplicate(NvGuide) Guide#nv5 105 // Real Combat Training //============================================================ - script Brade#newbe04::NvBradeB -1,{ if (job_novice_q < 12) { if (job_novice_q < 2) { mes "[Brade]"; mes "You have participated on the previous Training Grounds."; mes "The Training Grounds have now come under new management."; next; mes "[Brade]"; mes "Do you want to do the basic course,"; mes "or do you just want to go through from here?"; next; switch(select("Send me to Basic Training.:I'll start from here.")) { case 1: mes "[Brade]"; mes "Ok. I'll send you to the basic course."; close2; warp "new_"+charat(strnpcinfo(4),4)+"-2",100,100; end; case 2: mes "[Brade]"; mes "Then we will start your training."; mes "I'll write down the registration form."; set job_novice_q,12; close; } } else { mes "[Brade]"; mes "I think you came back from theory training course,"; mes "can I send you back to there or do you just want to go through from here?"; next; switch(select("Send me back to Chocolat.:I'll start from here.")) { case 1: mes "[Brade]"; mes "Ok. I'll send you to Chocolat."; close2; warp "new_"+charat(strnpcinfo(4),4)+"-2",41,172; end; case 2: mes "[Brade]"; mes "Then we will start your training."; mes "I'll write down the registration form."; set job_novice_q,12; close; } } } else if (job_novice_q == 12) { mes "[Brade]"; mes "Welcome."; mes "Now this is real practice."; mes "We can practice real battle here."; next; mes "[Brade]"; mes "As I explained the first time, we can click on the monsters."; mes "One attack per click."; next; mes "[Brade]"; mes "For convenience,"; mes "^4d4dffIf you hold down the Ctrl key,^000000 while attacking, you will automatically attack."; next; mes "[Brade]"; mes "You can also set this mode before battle by typing ^4d4dff[ /nc ]^000000."; next; mes "[Brade]"; mes "Then, let's go Poring hunting."; mes "Please hunt 'Poring's on Level 1 of the training grounds."; set job_novice_q,13; setquest 7122; getitem 569,100; //Novice_Potion savepoint strnpcinfo(4),96,21,1,1; next; mes "^4d4dff- You've received a quest from Instructor Brade."; mes "Please check the quest information window. -^000000"; close2; } else if (job_novice_q < 15) { if (job_novice_q == 13) { if (checkquest(7122,HUNTING) == 2) { mes "[Brade]"; mes "You can see it is not so hard, huh?"; mes "Nice job."; set job_novice_q,14; getitem 13040,1; //N_Cutter getexp 3000,30; completequest 7122; next; } else { mes "[Brade]"; mes "Kill enough Porings."; mes "Porings are easy to deal with, so cheer up."; mes "Try again."; npcskill "AL_HEAL",11,99,60; close; } } mes "[Brade]"; mes "Now all of the courses are almost done."; mes "You are a Novice, and you can't get any jobs yet."; next; mes "[Brade]"; mes "If you acquire all of basic skills with JOB Level 10, you can change your job."; next; mes "[Brade]"; mes "The first Job classes are defined into 6 classes."; next; mes "[Brade]"; mes "The 6 basic jobs are"; mes "Swordman, Thief,"; mes "Acolyte, Mage,"; mes "Archer and Merchant."; next; mes "[Brade]"; mes "Let's experience the basic 6 jobs, Swordman, Thief, Acolyte, Mage, Archer and Merchant and see what those jobs can do."; next; mes "[Brade]"; mes "Behind me, there are people dispatched from each of the basic Job Guilds."; mes "These people will give you instruction manuals that allow you to experience some limited skills of each job."; next; mes "[Brade]"; mes "Equip a manual of the job which you want to experience, and you will be able to use some basic skills of that corresponding job."; mes "Try those skills and decide which job to choose."; set job_novice_q,15; close; } else { mes "[Brade]"; mes "Have you tried the skills in the Manuals?"; mes "If you want to hear information about each job, talk to the people dispatched by the Job Guilds."; next; mes "[Brade]"; mes "I think you've learned enough, do you want to quit and go to your first town?"; next; switch(select("I will stay little longer.:I want to quit and go to the town.")) { case 1: mes "[Brade]"; mes "It's ok to stay here and practice until you think you are ready."; next; mes "[Brade]"; mes "Try using the job manuals to find out the characteristics of each job's skills."; mes "I will restore your HP and SP... Keep it up."; npcskill "AL_HEAL",11,99,60; percentheal 0,100; close; case 2: mes "[Brade]"; mes "Looks like you are ready."; mes "I guess you have made up your mind, huh?"; mes "Well, where do you want to go?"; next; switch(select("Prontera:Morocc:Payon:Alberta:Geffen:Cancel")) { case 1: mes "[Brade]"; mes "Prontera, the Capital city of the Rune-Midgarts Kingdom."; mes "Take care and god bless you on your journey."; callfunc "F_NvErase"; close2; savepoint "prontera",117,72,1,1; warp "prontera",150,50; end; case 2: mes "[Brade]"; mes "The Desert Town, Morocc..."; mes "There's lots of hidden stories within that town."; mes "Take care."; callfunc "F_NvErase"; close2; savepoint "morocc",150,99,1,1; warp "morocc",155,110; end; case 3: mes "[Brade]"; mes "You've selected Payon."; mes "God bless you."; callfunc "F_NvErase"; close2; savepoint "payon",70,100,1,1; warp "payon",166,67; end; case 4: mes "[Brade]"; mes "Alberta, the Port City."; mes "It's the main hub of all trades."; mes "If you want to meet with other civilizations, you have to go to Alberta first."; mes "Well then, god bless you on your soul."; callfunc "F_NvErase"; close2; savepoint "alberta",30,232,1,1; warp "alberta",114,58; end; case 5: mes "[Brade]"; mes "Geffen, the City of Magic."; mes "Geffen Tower in the middle of the city is nice."; mes "I will send you near the Geffen fountain."; mes "May Goddess Freya bless you."; callfunc "F_NvErase"; close2; savepoint "geffen",119,37,1,1; warp "geffen",122,65; end; case 6: mes "[Brade]"; mes "Yeah... Think with prudence."; mes "...Meet up with the people from each guild."; close; } } } } new_1-3,96,30,4 duplicate(NvBradeB) Brade#nv1b 733 new_2-3,96,30,4 duplicate(NvBradeB) Brade#nv2b 733 new_3-3,96,30,4 duplicate(NvBradeB) Brade#nv3b 733 new_4-3,96,30,4 duplicate(NvBradeB) Brade#nv4b 733 new_5-3,96,30,4 duplicate(NvBradeB) Brade#nv5b 733 - script Swordman Guide#newbe10::NvSwordman -1,{ if (job_novice_q < 15) { mes "[Swordman Guildsman]"; mes "I won't help you until you finish Brade's instructions."; close; } mes "[Swordman Guildsman]"; mes "Can I help you?"; next; switch(select("About Swordman Class.:Job change to Swordman.:Got any quests?:Cancel.")) { case 1: mes "[Swordman Guildsman]"; mes "Literally, Swordman means one, who"; mes "is specialized in wielding swords."; mes "But they can also choose to use spears if they so choose."; next; mes "[Swordman Guildsman]"; mes "We possesses strong physical strength."; mes "So naturally we can equip heavy armors and weapons."; mes "Most weapon classes, except for bows and rods,"; mes "are equippable by our class."; next; mes "[Swordman Guildsman]"; mes "The only weakness of the Swordman class is that they cannot use magic spells."; mes "But we've compensated for that by using elemental weapons."; next; mes "[Swordman Guildsman]"; mes "The merits of being a Swordman is the enormous amount of HP we have."; mes "Most of us can bear the grunt of our enemies' attacks with relative ease."; next; mes "[Swordman Guildsman]"; mes "And we are unrivaled when it comes to one-on-one melee combat."; next; mes "[Swordman Guildsman]"; mes "Anyone who chooses to be a Swordman will likely play the role of the tank. It is our duty to protect the weak."; next; mes "[Swordman Guildsman]"; mes "As a Swordman you can advance to a ^8E2323Knight^000000 or ^8E2323Crusader^000000 class as your 2nd class profession."; mes "And just recently third professions have been discovered."; next; if (isequipped(2819) || countitem(2819)) { mes "[Swordman Guildsman]"; mes "Try the Swordman skills listed in the manual."; mes "Open your skill menu by pressing Alt + S"; mes "Make sure it is in list mode by clicking the minimize button on the top right corner of the Skill Menu."; close; } mes "[Swordman Guildsman]"; mes "If you're interested in being a Swordman, I'll offer you this manual."; mes "Do you want to try the skills of a Swordman?"; next; switch(select("I'll try the Swordman skills.:No thanks.")) { case 1: mes "[Swordman Guildsman]"; mes "Here is the Swordman manual."; mes "I'll just take any manuals from any other classes you have."; next; callfunc "F_NvErase"; getitem 2819,1; //Swordman_Manual next; mes "[Swordman Guildsman]"; mes "After equipping the Manual, open your Skill menu by pressing ALT+S."; mes "Make sure to minimize your Skill tree by clicking the '-' button on the top right corner of the Skill Tree Window."; close; case 2: mes "[Swordman Guildsman]"; mes "Hum. Do you think so?"; mes "Ok, I agree with you. Choosing a job is very important in our lives."; mes "Just talk to me whenever you want to experience Swordman skills."; close; } case 2: mes "[Swordman Guildsman]"; mes "Do you really want to change your job to Swordman?"; mes "If you want to be a Swordman, I'll send you to the Swordman Association immediately."; next; mes "[Swordman Guildsman]"; mes "I think you have enough job levels, of course, right?"; mes "Do you want to stop your training now and go to the Swordman Association?"; next; switch(select("I'll consider it again.:I'll go to the Swordman Association.")) { case 1: mes "[Swordman Guildsman]"; mes "Please try enough instruction manuals from each job class and consider it carefully."; mes "Of course, you're always welcomed."; close; case 2: mes "[Swordman Guildsman]"; mes "I see."; mes "Then I'll end your training process and send you to the Swordman Guild."; callfunc "F_NvErase",1; close2; savepoint "izlude",128,98,1,1; // Old coordinates: (95,104) warp "izlude_in",74,167; end; } case 3: set .@quest, checkquest(7123); if (.@quest == -1) { mes "[Swordman Guildsman]"; mes "You want me to give you a quest?"; mes "Umm. Let me see."; mes "Ok! Hunt a couple of Picky monsters around here?"; next; mes "^4d4dffYou received a hunting request from a staff of the Swordman Guild."; mes "You can check the contents of the quest from the quest information window.^000000"; setquest 7123; next; mes "[Swordman Guildsman]"; mes "Use the 'Bash' skill in the Swordman manual."; mes "Open your Skill Tree by pressing ^4d4dffAlt + S^000000 and minimize the window by pressing the ^4d4dff'-'^000000 button on the top right corner of the window to see the available Swordman skills."; next; mes "[Swordman Guildsman]"; mes "Talk to Trainer Brutus if you want to fight stronger monsters."; mes "I'll wait for you here."; mes "Wish you a good luck."; close; } else if (.@quest == 0 || .@quest == 1) { if (checkquest(7123,HUNTING) == 2) { mes "[Swordman Guildsman]"; mes "Great."; mes "I think that you're good enough to be a Swordman."; mes "I'll give you some potions as a reward."; completequest 7123; getitem 569,200; //Novice_Potion getexp 5000,100; close; } else { mes "[Swordman Guildsman]"; mes "Hunt two Picky monsters."; mes "You can find them in the more difficult training grounds by talking to Trainer Brutus."; close; } } else if (.@quest == 2) { mes "[Swordman Guildsman]"; mes "I think you finished that quest already, right?"; mes "You'll experience more of these quests as you grow as an adventurer in the world."; next; mes "[Swordman Guildsman]"; mes "Your training is now complete."; mes "If you choose to become a Swordman I wish you good luck."; close; } else { mes "[Swordman Guildsman]"; mes "I'm sorry but I don't have any quests to give you right now."; close; } case 4: mes "[Swordman Guildsman]"; mes "If you have any questions about the Swordman class, please ask me."; mes "The Swordman Guild is waiting for novices like you."; close; } } new_1-3,97,41,3 duplicate(NvSwordman) Swordman Guide#nv1 728 new_2-3,97,41,3 duplicate(NvSwordman) Swordman Guide#nv2 728 new_3-3,97,41,3 duplicate(NvSwordman) Swordman Guide#nv3 728 new_4-3,97,41,3 duplicate(NvSwordman) Swordman Guide#nv4 728 new_5-3,97,41,3 duplicate(NvSwordman) Swordman Guide#nv5 728 - script Acolyte Guide#newbe10::NvAcolyte -1,{ if (job_novice_q < 15) { mes "[Prontera Acolyte]"; mes "You look like you are not done with Instructor Brade's lessons."; close; } mes "[Prontera Acolyte]"; mes "What can I do for you?"; next; switch(select("What is an Acolyte?:Job change to Acolyte.:Cancel")) { case 1: mes "[Prontera Acolyte]"; mes "An Acolyte is someone who worships the goddess Freya sacrificing themselves to help others."; next; mes "[Prontera Acolyte]"; mes "Acolytes use supportive skills to make combat easier."; mes "It is essential to have an Acolyte in any successful party."; next; mes "[Prontera Acolyte]"; mes "^8E2323As an Acolyte, you can upgrade your future job to Priest or Monk^8E2323."; next; if (isequipped(2821) || countitem(2821)) { mes "[Prontera Acolyte]"; mes "Try the Acolyte Skills with the manual you have. It will help you understand the job easier."; mes "Open your Skill Tree by pressing ^4d4dffAlt + S^000000 and minimize the window by pressing the ^4d4dff'-'^000000 button on the top right corner of the window to see the available skills."; close; } mes "[Prontera Acolyte]"; mes "If you want, I can give you a skill manual to experience what it is like to be an Acolyte."; mes "Would you like to experience the skills of an Acolyte?"; next; switch(select("Yes, please.:No, I'm not interested.")) { case 1: mes "[Prontera Acolyte]"; mes "Here you go, the instruction manual of an Acolyte."; mes "I will take away those other job's manuals while you study this one."; next; callfunc "F_NvErase"; getitem 2821,1; //Acolyte_Manual next; mes "[Prontera Acolyte]"; mes "Make sure to equip the Skill Manual by double-clicking it in the Inventory Window."; mes "Open your Skill Tree by pressing ^4d4dffAlt + S^000000 and minimize the window by pressing the ^4d4dff'-'^000000 button on the top right corner of the window to see the available skills."; close; case 2: mes "[Prontera Acolyte]"; mes "Hum. Do you think so."; mes "Ok, I agree with you. Choosing a job is very important in our life."; mes "Just talk to me whenever you want to know about Acolytes."; close; } case 2: mes "[Prontera Acolyte]"; mes "Do you really want to become an Acolyte?"; mes "If you do, I will send you to Prontera's Sanctuary."; next; mes "[Prontera Acolyte]"; mes "Of course, I assume you have enough job levels to become an Acolyte right?"; mes "Would you like to quit the Training Process and go to the Prontera's Sanctuary?"; next; switch(select("Let me reconsider.:I will go to the Sanctuary.")) { case 1: mes "[Prontera Acolyte]"; mes "You should try out each job's manuals."; mes "Go through them thoroughly and decide carefully."; mes "Of course, I will welcome you anytime."; close; case 2: mes "[Prontera Acolyte]"; mes "That's great."; mes "Then I will completely end the Training Process and send you to Prontera's Sanctuary."; callfunc "F_NvErase",1; close2; savepoint "prontera",117,72,1,1; warp "prt_church",172,19; end; } case 3: mes "[Prontera Acolyte]"; mes "If you have any questions about Acolytes, please ask me anytime."; mes "Our God, Odin awaits adventurers like you."; close; } } new_1-3,101,41,3 duplicate(NvAcolyte) Acolyte Guide#nv1 95 new_2-3,101,41,3 duplicate(NvAcolyte) Acolyte Guide#nv2 95 new_3-3,101,41,3 duplicate(NvAcolyte) Acolyte Guide#nv3 95 new_4-3,101,41,3 duplicate(NvAcolyte) Acolyte Guide#nv4 95 new_5-3,101,41,3 duplicate(NvAcolyte) Acolyte Guide#nv5 95 - script Thief Guide#newbe10::NvThief -1,{ if (job_novice_q < 15) { mes "[Thief Guild Member]"; mes "You look like you are not done with Instructor Brade's lessons."; close; } mes "[Thief Guild Member]"; mes "How can I help you?"; next; switch(select("About the Thief Class.:I want to be a Thief.:Got any Quests?:Cancel.")) { case 1: mes "[Thief Guild Member]"; mes "Thieves are experts at using Dagger class weapons."; mes "They strike quickly and easily evade attacks from their enemies."; next; mes "[Thief Guild Member]"; mes "Thieves can learn skills that allow them to hide from their enemies or steal items from monsters."; mes "They are also feared for their use of poison, which slowly weakens their enemies."; next; mes "[Thief Guild Member]"; mes "In jeopardy, or in the case that thieves do not want to reveal themselves,"; mes "they can even use their skill to hide themselves easily."; next; mes "[Thief Guild Member]"; mes "Thieves can change their jobs to ^8E2323Assassins^000000 or ^8E2323Rogues^000000."; next; if (isequipped(2820) || countitem(2820)) { mes "[Thief Guild Member]"; mes "The class manual can help you understand what it is to be a Thief by using the skills that are essential to all Thieves."; close; } mes "[Thief Guild Member]"; mes "If you want, I'll give you a Thief skill manual."; mes "Would you like to experience the skills of a Thief?"; next; switch(select("Yes, I would.:No, I don't.")) { case 1: mes "[Thief Guild Member]"; mes "Here, please take the Thief manual."; mes "I'll just take the other class manuals while I'm at it."; next; callfunc "F_NvErase"; getitem 2820,1; //Thief_Manual next; mes "[Thief Guild Member]"; mes "Make sure to equip the Skill Manual by double-clicking it in the Inventory Window."; mes "Open your Skill Tree by pressing ^4d4dffAlt + S^000000 and minimize the window by pressing the ^4d4dff'-'^000000 button on the top right corner of the window to see the available skills."; close; case 2: mes "[Thief Guild Member]"; mes "Oh, are you sure?"; mes "Class selection is very important so please consider it carefully."; mes "If you want to ask about Thieves, please talk to me any time."; close; } case 2: mes "[Thief Guild Member]"; mes "Do you really want to be a Thief?"; mes "If so, I will send you to the Thief Guild immediately."; next; mes "[Thief Guild Member]"; mes "You already reached the required job level, didn't you?"; mes "Do you want to finish the Novice training and go to the Thief Guild?"; next; switch(select("Let me consider it again.:Yes, I do.")) { case 1: mes "[Thief Guild Member]"; mes "Have you tried all of the class manuals yet?"; mes "If you're undecided what job to take on I suggest you try talking to all the Guides first."; close; case 2: mes "[Thief Guild Member]"; mes "Ok, I see."; mes "Welcome. Then your Novice training is totally complete and you will be sent to the Thief Guild immediately."; callfunc "F_NvErase",1; close2; savepoint "morocc",150,99,1,1; warp "moc_prydb1",99,185; end; } case 3: set .@quest, checkquest(7127); if (.@quest == -1) { mes "[Thief Guild Member]"; mes "Quests?"; mes "Hmm, what will be good for you?"; mes "How about hunting some Willows."; next; mes "[Thief Guild Member]"; mes "You can't cheat this so make sure to kill 5 Willows. When you're done come and talk to me again."; mes "If you talk to Trainer Brutus, he can send you to a more difficult training ground where there are Willows to hunt."; setquest 7127; next; mes "[Thief Guild Member]"; mes "If you equip the Thief manual, you can have the effect of the skill, Double Attack."; mes "Double Attack and Hide are the main skills of the Thief."; close; } else if (.@quest == 0 || .@quest == 1) { if (checkquest(7127,HUNTING) == 2) { mes "[Thief Guild Member]"; mes "You are very strong."; mes "These are not many but let me give you a reward for your effort."; completequest 7127; getitem 12323,50; //N_Fly_Wing getexp 5000,100; close; } else { mes "[Thief Guild Member]"; mes "Hunt 5 Willows and then come talk to me to finish your quest."; close; } } else if (.@quest == 2) { mes "[Thief Guild Member]"; mes "I think you finished that quest already, right?"; mes "You'll experience more of these quests as you grow as an adventurer in the world."; next; mes "[Thief Guild Member]"; mes "Your training is now complete."; mes "If you choose to become a Thief I wish you good luck."; close; } else { mes "[Thief Guild Member]"; mes "I'm sorry but I don't have any quests to give you right now."; close; } case 4: mes "[Thief Guild Member]"; mes "If you have something to ask about the Thief job, feel free to ask me."; close; } } new_1-3,105,41,3 duplicate(NvThief) Thief Guide#nv1 118 new_2-3,105,41,3 duplicate(NvThief) Thief Guide#nv2 118 new_3-3,105,41,3 duplicate(NvThief) Thief Guide#nv3 118 new_4-3,105,41,3 duplicate(NvThief) Thief Guide#nv4 118 new_5-3,105,41,3 duplicate(NvThief) Thief Guide#nv5 118 - script Merchant Guide#newbe10::NvMerchant -1,{ if (job_novice_q < 15) { mes "[Merchant Guildsman]"; mes "You are still in the process of training with sir Brad."; close; } mes "[Merchant Guildsman]"; mes "What can I help you with?"; next; switch(select("Tell me about Merchants:I want to be a Merchant.:Give me a Quest.:Cancel")) { case 1: mes "[Merchant Guildsman]"; mes "Merchant? Simply put, he sells goods and makes money."; mes "That's the main focus for any Merchant."; next; mes "[Merchant Guildsman]"; mes "We have special skills for making money."; mes "We can buy goods at a lower price"; mes "and sell them at a higher price."; next; mes "[Merchant Guildsman]"; mes "Also Merchants can have Carts"; mes "that we can store lots of items in."; next; mes "[Merchant Guildsman]"; mes "^8E2323Merchants can transform to a Blacksmith"; mes "^8E2323or an Alchemist^000000 as their second job."; next; if (isequipped(2823) || countitem(2823)) { mes "[Merchant Guildsman]"; mes "I think you should test Merchant skills before you decide what to do."; close; } mes "[Merchant Guildsman]"; mes "Do you want to see what it's like to be a Merchant?"; next; switch(select("I want to test Merchant skills.:I don't want to test it.")) { case 1: mes "[Merchant Guildsman]"; mes "Here is the Merchant skill manual."; mes "I will take other job manuals from you while I'm at it."; next; callfunc "F_NvErase"; getitem 2823,1; //Merchant_Manual next; mes "[Merchant Guildsman]"; mes "Make sure to equip the Skill Manual by double-clicking it in the Inventory Window."; mes "Open your Skill Tree by pressing ^4d4dffAlt + S^000000 and minimize the window by pressing the ^4d4dff'-'^000000 button on the top right corner of the window to see the available skills."; close; case 2: mes "[Merchant Guildsman]"; mes "Hum. Do you think so."; mes "Ok, I agree with you. Choosing job is very important in our life."; mes "Just talk to me whenever you want to experience Merchant skills."; close; } case 2: mes "[Merchant Guildsman]"; mes "You want to be a Merchant?"; mes "Ok, then, I will send you to the Merchant Guild's union right away."; next; mes "[Merchant Guildsman]"; mes "Wait, have you checked your Job level?"; mes "Do you want to complete your Novice training and go straight to the Merchant Guild's union?"; next; switch(select("I will think about it again.:Yes, I want to go to the Merchant Guild's union")) { case 1: mes "[Merchant Guildsman]"; mes "Ok, I hope you consider being a Merchant."; mes "We are always welcome to have you!"; close; case 2: mes "[Merchant Guildsman]"; mes "That's great."; mes "Then I will end the Training Process and send you to the Merchant Guild's union immediately."; callfunc "F_NvErase",1; close2; savepoint "alberta",30,232,1,1; warp "alberta_in",62,44; end; } case 3: set .@quest, checkquest(7126); if (.@quest == -1) { mes "[Merchant Guildsman]"; mes "Huh? Quest??"; mes "Humm... What would be suited for you...?"; mes "Ok, then bring me ^5d5dff300 zeny^000000 by selling some of your items to the Potato Merchant."; next; mes "[Merchant Guildsman]"; mes "If you equipped the Merchant manual you have the ability to use the 'Overcharge' and 'Discount' skills."; setquest 7126; next; mes "[Merchant Guildsman]"; mes "I will wait for you here."; mes "Good luck!"; close; } else if (.@quest == 0 || .@quest == 1) { if (Zeny >= 300) { mes "[Merchant Guildsman]"; mes "Excellent!"; mes "Zeny is the currency of Midgard."; mes "You can make zeny by selling loot as well as through making smart business decisions."; next; mes "[Merchant Guildsman]"; mes "We can use extremely powerful skills with zeny!"; mes "Mammonite! That is our ultimate attack skill!!"; mes "We basically paste money on the weapon and then strike the enemy. Death by Zeny! Nyahahahaha!"; next; mes "[Merchant Guildsman]"; mes "By the way, you have done an excellent job. So, I should give you something... What would be good?"; mes "Alright! What about Phracon?"; mes "Phracon is a metallic element which you can use for refining weapons."; completequest 7126; getitem 1010,7; //Phracon getexp 5000,100; close; } else { mes "[Merchant Guildsman]"; mes "Zeny is the currency of Midgard."; mes "You can make zeny by selling loot as well as through making smart business decisions."; next; mes "[Merchant Guildsman]"; mes "You can get loot by killing monsters. After hunting monsters, you can sell those loot to make a profit!"; mes "What a valuable job it is! Isn't it?"; next; mes "[Merchant Guildsman]"; mes "Why don't you try to be a Merchant? Making money is not easy but it will be a great experience!"; close; } } else if (.@quest == 2) { mes "[Merchant Guildsman]"; mes "You have already completed the quest."; mes "Once you enter the main world, you can get various exciting quests there!"; next; mes "[Merchant Guildsman]"; mes "I think you're strong enough now to change your job right? Hahahaha don't waste too much time here Novice."; close; } else { mes "[Merchant Guildsman]"; mes "I'm sorry but I don't have any quests to give you right now."; close; } case 4: mes "[Merchant Guildsman]"; mes "If you have any questions about Merchants, feel free to ask me."; mes "I think you could be a rich Merchant. AhHahaha."; close; } } new_1-3,109,41,3 duplicate(NvMerchant) Merchant Guide#nv1 97 new_2-3,109,41,3 duplicate(NvMerchant) Merchant Guide#nv2 97 new_3-3,109,41,3 duplicate(NvMerchant) Merchant Guide#nv3 97 new_4-3,109,41,3 duplicate(NvMerchant) Merchant Guide#nv4 97 new_5-3,109,41,3 duplicate(NvMerchant) Merchant Guide#nv5 97 - script Archer Guide#newbe10::NvArcher -1,{ if (job_novice_q < 15) { mes "[Archer Guildsman]"; mes "You are still in the process of training with sir Brade."; close; } mes "[Archer Guildsman]"; mes "What can I help you with?"; next; switch(select("Tell me about Archers:I want to be an Archer:Cancel")) { case 1: mes "[Archer Guildsman]"; mes "Archers have specialized skills by using a Bow and have a variety of powerful skills."; mes "Archers are good at staying back and picking off their targets."; next; mes "[Archer Guildsman]"; mes "Archers don't have great"; mes "vitality so they have to keep"; mes "their distance from enemies."; next; mes "[Archer Guildsman]"; mes "On the other hand, Archers are attentive and have incredibly accurate eyes."; mes "So once they are ready to attack, they can kill enemies before they're even aware of their presence."; next; mes "[Archer Guildsman]"; mes "^8E2323Archers can transform to many second jobs like a Hunter."; mes "Besides Hunters, Archers can transform to a Bard, if they are male."; mes "They can transform to a Dancer, if they are female^000000."; next; if (isequipped(2822) || countitem(2822)) { mes "[Archer Guildsman]"; mes "I think you should test Archer skills before you decide what to do."; mes "I can provide you our test skill manual."; close; } mes "[Archer Guildsman]"; mes "Do you want to register to test skill experience?"; mes "Would like to test Archer skills?"; next; switch(select("I want to test Archer skills.:I don't want to test it.")) { case 1: mes "[Archer Guildsman]"; mes "Here is the Archer manual."; mes "I will take the other job manuals from you while you test the Archer manual out."; next; callfunc "F_NvErase"; getitem 2822,1; //Archer_Manual next; mes "[Archer Guildsman]"; mes "Make sure to equip the Skill Manual by double-clicking it in the Inventory Window."; mes "Open your Skill Tree by pressing ^4d4dffAlt + S^000000 and minimize the window by pressing the ^4d4dff'-'^000000 button on the top right corner of the window to see the available skills."; close; case 2: mes "[Archer Guildsman]"; mes "Hum. Do you think so."; mes "Ok, I agree with you. Choosing a job is very important in our life."; mes "Just talk to me whenever you want to experience Archer skills."; close; } case 2: mes "[Archer Guildsman]"; mes "You want to be an Archer?"; mes "Ok, then, I will send you to the Archer Guild right away."; next; mes "[Archer Guildsman]"; mes "Wait, have you checked your Job level?"; mes "Do you want to complete the Novice training arena and go to the Archer Guild right now?"; next; switch(select("I will think about it again.:Yes, I want to go to the Archer Guilds union")) { case 1: mes "[Archer Guildsman]"; mes "Test out all the jobs if you have to but choose Archer because we're the best."; mes "We are always welcome to have you!"; close; case 2: mes "[Archer Guildsman]"; mes "That's great."; mes "Then I will completely end the Training Process and send you to the Archer Guild."; callfunc "F_NvErase",1; close2; savepoint "payon",256,242,1,1; warp "payon_in02",64,65; end; } case 3: mes "[Archer Guildsman]"; mes "If you have any questions about Archers, feel free to ask me."; mes "I think you could be a strong Archer young Novice."; close; } } new_1-3,113,41,3 duplicate(NvArcher) Archer Guide#nv1 727 new_2-3,113,41,3 duplicate(NvArcher) Archer Guide#nv2 727 new_3-3,113,41,3 duplicate(NvArcher) Archer Guide#nv3 727 new_4-3,113,41,3 duplicate(NvArcher) Archer Guide#nv4 727 new_5-3,113,41,3 duplicate(NvArcher) Archer Guide#nv5 727 - script Mage Guide#newbe10::NvMage -1,{ if (job_novice_q < 15) { mes "[Mage Guild Member]"; mes "You are still in the process of training with Instructor Brade."; close; } mes "[Mage Guild Member]"; mes "What can I help you with?"; next; switch(select("Tell me about Mages:I want to be a Mage:Give me a Quest:Cancel")) { case 1: mes "[Mage Guild Member]"; mes "Mages are those who can use magic when they need to protect their friends."; mes "Mages can curse enemies using the elements of fire, water, earth and thunder magic."; next; mes "[Mage Guild Member]"; mes "However they cannot equip other weapons but staffs and books."; mes "Because they are too delicate"; mes "to carry heavy weapons."; next; mes "[Mage Guild Member]"; mes "But they can cover this weakness"; mes "by their remarkable magic skills."; mes "That is why many people want"; mes "to become a Mage!"; next; mes "[Mage Guild Member]"; mes "Mages have to be in their guild for guild's power and honor."; mes "This is one of reasons why Mages are popular in any parties and guilds."; mes "Why don't you become a Mage?"; next; mes "[Mage Guild Member]"; mes "^8E2323Mages can transform to Wizards"; mes "^8E2323or Sages as their second job^000000."; next; if (isequipped(2824) || countitem(2824)) { mes "[Mage Guild Member]"; mes "I think you should test Mage skills before you decide what to do."; mes "I can provide you with our test skill registration form."; close; } mes "[Mage Guild Member]"; mes "Do you want to register to experience how it is to be a Mage?"; mes "Would you like to test Mage skills?"; next; switch(select("I want to test Mage skills.:I don't want to test it.")) { case 1: mes "[Mage Guild Member]"; mes "Here is the Mage Manual."; mes "I will take the other job registration forms and manuals from you."; next; callfunc "F_NvErase"; getitem 2824,1; //Mage_Manual next; mes "[Mage Guild Member]"; mes "After equipping the Manual, open your Skill menu by pressing ALT+S."; mes "Make sure to minimize your Skill tree by clicking the '-' button on the top right corner of the Skill Tree Window."; close; case 2: mes "[Mage Guild Member]"; mes "Hum. Do you think so."; mes "Ok, I agree with you. Choosing a job is very important in our life."; mes "Just talk to me whenever you want to experience Mage skills."; close; } case 2: mes "[Mage Guild Member]"; mes "You want to be a Mage?"; mes "Ok, then, I will send you to the Mage Guild union in Geffen right away."; next; mes "[Mage Guild Member]"; mes "Wait, have you checked your Job level?"; mes "Do you want to complete your Novice training and go straight to the Mage Guild's union?"; next; switch(select("I will think about it again.:Yes, complete my training.")) { case 1: mes "[Mage Guild Member]"; mes "Please test what Mage skills are all about before you decide."; mes "We are always welcome to have you!"; close; case 2: mes "[Mage Guild Member]"; mes "That's great."; mes "Then I will end the Training Process and send you to the Mage Guild union in Geffen right away."; callfunc "F_NvErase",1; close2; savepoint "geffen",119,37,1,1; warp "geffen_in",163,98; end; } case 3: set .@quest, checkquest(7124); if (.@quest == -1) { mes "[Mage Guild Member]"; mes "Huh? Quest?"; mes "Hmm... What would be suited for you...?"; mes "Would you like to hunt Lunatics by using Bolt skills?"; next; mes "^4d4dffYou have received a Hunting quest from the Mage Guide."; mes "You can get more information about the quest from the quest window.^000000"; setquest 7124; next; mes "[Mage Guild Member]"; mes "You are able to use 'Fire Bolt' skill that is shown on the Mage manual."; mes "I will wait for you here."; mes "Good luck!"; close; } else if (.@quest == 0 || .@quest == 1) { if (checkquest(7124,HUNTING) == 2) { mes "[Mage Guild Member]"; mes "You have done an excellent job."; mes "So, did you find any interests about Mages?"; mes "Alright. I will give something..."; mes "Here are Novice Butterfly Wings, please take them."; completequest 7124; getitem 12324,30; //N_Butterfly_Wing getexp 5000,100; close; } else { mes "[Mage Guild Member]"; mes "The quest is that you have to"; mes "hunt Lunatics and bring 5 clovers."; close; } } else if (.@quest == 2) { mes "[Mage Guild Member]"; mes "You have already completed the quest."; mes "Once you enter the main world, you can get various exciting quests there!"; next; mes "[Mage Guild Member]"; mes "This should be enough for your training."; close; } else { mes "[Mage Guild Member]"; mes "I'm sorry but I don't have any quests to give you right now."; close; } case 4: mes "[Mage Guild Member]"; mes "If you have any questions about Mages, feel free to ask me."; mes "I think you could be a intelligent Mage..."; close; } } new_1-3,117,41,3 duplicate(NvMage) Mage Guide#nv1 123 new_2-3,117,41,3 duplicate(NvMage) Mage Guide#nv2 123 new_3-3,117,41,3 duplicate(NvMage) Mage Guide#nv3 123 new_4-3,117,41,3 duplicate(NvMage) Mage Guide#nv4 123 new_5-3,117,41,3 duplicate(NvMage) Mage Guide#nv5 123 - script Bruce#nv::NvBruce -1,{ mes "[Bruce]"; mes "Hello?"; mes "I'm here to guide you about extra jobs and special classes."; next; mes "[Bruce]"; mes "For special classes, there are Taekwon Boy, Taekwon Girl, Ninja, Supernovice, Gunslinger."; mes "Which job description do you want to hear?"; next; while(1) { switch(select("Taekwon:Ninja:Super Novice:Gunslinger:End the conversation.")) { case 1: mes "[Bruce]"; mes "It's a job that usually uses a lot of kicking skills."; mes "It belongs to special class and later you can change your job into Taekwon Master which has much stronger attack skills."; next; mes "[Bruce]"; mes "There is a secondary class to choose from called Soul Linker which also has strong attacks."; mes "You can decide that later when you get stronger."; next; break; case 2: mes "[Bruce]"; mes "Ninja's specialty is rapid movement."; mes "They specialize in using throwing weapons."; next; mes "[Bruce]"; mes "Ninjas are kind of a hybrid class that can use various dodge skills with the capability of both physical and magical attacks depending on their preference."; next; break; case 3: mes "[Bruce]"; mes "The biggest attraction of the stronger Novice, called Super Novice, is their pull to mediocrity."; mes "They are the proverbial Jack-of-all-Trades but Master of none."; next; mes "[Bruce]"; mes "Super Novices can learn most of the 1st job class skills."; mes "If you become a Super Novice, you cannot change your job, which is too bad, but you can grow as a very individual character."; next; break; case 4: mes "[Bruce]"; mes "You can job change directly from Novice to a special class which is optimized for a long-distance attack with guns."; next; mes "[Bruce]"; mes "Gunslingers use all kinds of guns made in 'Einbroch', the city of steel."; mes "I recommend this for those who want to become powerful sharpshooters."; next; break; case 5: mes "[Bruce]"; mes "If you need more information,"; mes "you can always go to ^2F4F4F'www.ragnarok.co.kr'^000000"; close; } } } new_1-3,121,41,3 duplicate(NvBruce) Bruce#nv1 57 new_2-3,121,41,3 duplicate(NvBruce) Bruce#nv2 57 new_3-3,121,41,3 duplicate(NvBruce) Bruce#nv3 57 new_4-3,121,41,3 duplicate(NvBruce) Bruce#nv4 57 new_5-3,121,41,3 duplicate(NvBruce) Bruce#nv5 57 // Eden Group Officer (iRO only) //============================================================ /* - script Eden Group Officer::NvEden -1,{ if (BaseLevel < 10) { mes "[Eden Group Officer]"; mes "Hello, I am a representative of the Eden Group."; mes "We are here to assist adventurers in Midgard."; next; mes "[Eden Group Officer]"; mes "We have agents all over the world waiting to send you to our secret headquarters where you can get some useful quests."; next; mes "[Eden Group Officer]"; mes "If you take our quests we even give you weapons and equipment so be sure to visit us once you are done with your training."; next; mes "[Eden Group Officer]"; mes "Speak to me again once you have reached Base Level 10 and I will send you out of the training grounds."; mes "Have you taken the quests from all of the Guides yet?"; close; } mes "[Eden Group Officer]"; mes "Great! You are ready to take on the challenges of the world."; mes "What would you like to do?"; next; switch(select("I want to leave the training grounds:Tell me about the towns.:Cancel")) { case 1: mes "[Eden Group Officer]"; mes "Looks like you are ready."; mes "I guess you have made up your mind, huh?"; next; mes "[Eden Group Officer]"; mes "If you know what job you want to change to, you should ask the ^4A4AFFJob Guides^000000 to send you out of the training grounds."; mes "What town would you like to go to?"; next; switch(select("Prontera:Morocc:Payon:Alberta:Geffen:Cancel")) { case 1: mes "[Eden Group Officer]"; mes "Prontera, the Capital city of the Rune-Midgarts Kingdom."; mes "Take care and may Freya bless you on your journey."; callsub S_Warp,"prontera",121,77,121,76; case 2: mes "[Eden Group Officer]"; mes "The desert city of Morocc was recently destroyed."; mes "I will send you to the camp where the survivors are."; callsub S_Warp,"moc_ruins",71,157,70,158; case 3: mes "[Eden Group Officer]"; mes "Just north of Payon you'll find the Archer Village."; mes "Good luck on your journeys."; callsub S_Warp,"payon",167,68,172,111; case 4: mes "[Eden Group Officer]"; mes "Alberta, the Port City."; mes "It's the main hub of all trades."; mes "If you want to travel to other civilizations, Alberta is the only outlet."; callsub S_Warp,"alberta",115,57,116,58; case 5: mes "[Eden Group Officer]"; mes "Geffen, is known as the Magical City of Rune-Midgarts."; mes "I will send you near the Fountains."; mes "Goddess Freya bless you."; callsub S_Warp,"geffen",118,36,128,66; case 6: mes "[Eden Group Officer]"; mes "If you're still not sure what job you want, talk to the Job Guides for more help."; close; } case 2: mes "[Eden Group Officer]"; mes "Prontera is the main capital of the Rune-Midgarts Kingdom. Here you will find Merchants selling their items and is a favorite gathering point of adventurers."; next; mes "[Eden Group Officer]"; mes "The Acolyte Guild is here at the Prontera Church located to the northwest. The Swordman Guild can be found at Izlude, a town just southeast of Prontera."; next; mes "[Eden Group Officer]"; mes "Morocc is a city located in the desert that was recently destroyed due to an evil monster named Satan Morocc. The Thief Guild has been working to restore it to it's former glory."; next; mes "[Eden Group Officer]"; mes "Payon is where the Archer Guild has made it's home. You can also find the Kafra Shop Employees selling their Item Mall items near the center of this city."; next; mes "[Eden Group Officer]"; mes "Alberta is the trading hub of Rune-Midgarts. The Merchant Guild is located here and the docks have ships that will take you to different island cities."; next; mes "[Eden Group Officer]"; mes "Geffen is known as the magical city of Rune-Midgarts. The Mage Guild is located here and research for new magic is always being conducted at their headquarters."; next; mes "[Eden Group Officer]"; mes "If you wish to be sent directly to the Job Guilds, then speak to the Job Guides and tell them that you want to change your job."; close; case 3: close; } S_Warp: close2; callfunc "F_NvErase",1; savepoint getarg(0),getarg(1),getarg(2),1,1; warp getarg(0),getarg(3),getarg(4); end; OnTouch: emotion ET_SURPRISE; end; } new_1-3,97,50,4 duplicate(NvEden) Eden Group Officer#nv1 729,5,5 new_2-3,97,50,4 duplicate(NvEden) Eden Group Officer#nv2 729,5,5 new_3-3,97,50,4 duplicate(NvEden) Eden Group Officer#nv3 729,5,5 new_4-3,97,50,4 duplicate(NvEden) Eden Group Officer#nv4 729,5,5 new_5-3,97,50,4 duplicate(NvEden) Eden Group Officer#nv5 729,5,5 */ // Trainer //============================================================ - script ::NvBrutus -1,{ mes "[Trainer Brutus]"; mes "These monsters are all weak and easy to kill. But be careful, a lot of them are aggressive and out for blood!"; next; mes "[Trainer Brutus]"; mes "If you think monsters here are too weak for you, I can send you to another training ground where the monsters are stronger than the ones over here."; next; mes "[Trainer Brutus]"; mes "So would you like to try?"; next; switch(select("Send me to another Level:What monsters are there?:Cancel")) { case 1: mes "[Trainer Brutus]"; mes "I see, then let me guide you to another level. Which level do you want to go to?"; next; for(set .@i,1; .@i<6; set .@i,.@i+1) { if (!compare(strnpcinfo(2),"nv"+.@i)) set .@menu$, .@menu$+"Send me to Level "+.@i; set .@menu$, .@menu$+":"; } set .@i, select(.@menu$+"Cancel"); if (.@i < 7) warp "new_"+.@i+"-3",96,21; close; case 2: mes "[Trainer Brutus]"; mes "You seem eager to fight."; mes "The monster levels increase with each level of the training grounds."; next; mes "[Trainer Brutus]"; mes "Level 1 has the weakest monsters."; mes "There you'll find Porings, Drops, and Lunatics."; next; mes "[Trainer Brutus]"; mes "Level 2 is more challenging."; mes "There you'll find Porings, Lunatics, Willows, and Chonchons."; next; mes "[Trainer Brutus]"; mes "Level 3 is the same as Level 2."; mes "There you'll find Porings, Lunatics, Willows, and Chonchons."; next; mes "[Trainer Brutus]"; mes "Level 4 has stronger monsters."; mes "There you'll find Willows, Hornets, Pickys, and Fabres."; next; mes "[Trainer Brutus]"; mes "Level 5 is the same as Level 4."; mes "There you'll find Willows, Hornets, Pickys, and Fabres."; close; case 3: mes "[Trainer Brutus]"; mes "Hmm...?"; mes "Are you worried about going to more challenging places? That's understandable, since you're still a new adventurer. Good luck~"; close; } } new_1-3,103,50,4 duplicate(NvBrutus) Level 1 Trainer#nv1 84 new_2-3,103,50,4 duplicate(NvBrutus) Level 2 Trainer#nv2 84 new_3-3,103,50,4 duplicate(NvBrutus) Level 3 Trainer#nv3 84 new_4-3,103,50,4 duplicate(NvBrutus) Level 4 Trainer#nv4 84 new_5-3,103,50,4 duplicate(NvBrutus) Level 5 Trainer#nv5 84 // Monster Spawns //============================================================ new_1-3,0,0 monster Poring 1002,20 new_1-3,0,0 monster Drops 1113,10 new_1-3,0,0 monster Lunatic 1063,20 new_2-3,0,0 monster Chonchon 1011,10 new_2-3,0,0 monster Lunatic 1063,15 new_2-3,0,0 monster Willow 1010,10 new_2-3,0,0 monster Poring 1002,15 new_3-3,0,0 monster Chonchon 1011,10 new_3-3,0,0 monster Lunatic 1063,15 new_3-3,0,0 monster Willow 1010,10 new_3-3,0,0 monster Poring 1002,5 new_4-3,0,0 monster Hornet 1004,5 new_4-3,0,0 monster Willow 1010,15 new_4-3,0,0 monster Fabre 1184,5 new_4-3,0,0 monster Picky 1049,15 new_5-3,0,0 monster Hornet 1004,5 new_5-3,0,0 monster Willow 1010,15 new_5-3,0,0 monster Fabre 1184,5 new_5-3,0,0 monster Picky 1049,15 // Potato Merchant //============================================================ - shop Potato Merchant#newbe09::NvPotato 93,516:-1 new_1-3,100,50,3 duplicate(NvPotato) Potato Merchant#nv1 93 new_2-3,100,50,3 duplicate(NvPotato) Potato Merchant#nv2 93 new_3-3,100,50,3 duplicate(NvPotato) Potato Merchant#nv3 93 new_4-3,100,50,3 duplicate(NvPotato) Potato Merchant#nv4 93 new_5-3,100,50,3 duplicate(NvPotato) Potato Merchant#nv5 93 // Random Stuff //============================================================ - script Bulletin Board::NvBulletin -1,{ mes "^FF0000================================="; mes " ^E40CAA[Welcome] ^CC0000to^FF9000Novice^7FFF00 Training^00FF00 Grounds^E40CAA [Welcome] "; mes "^FF0000=================================^000000"; close; } new_1-1,66,114,4 duplicate(NvBulletin) Bulletin Board#nv1 111 new_2-1,66,114,4 duplicate(NvBulletin) Bulletin Board#nv2 111 new_3-1,66,114,4 duplicate(NvBulletin) Bulletin Board#nv3 111 new_4-1,66,114,4 duplicate(NvBulletin) Bulletin Board#nv4 111 new_5-1,66,114,4 duplicate(NvBulletin) Bulletin Board#nv5 111 - script Guard::NvGuardA -1,{ mes "[Training Grounds Guard]"; mes "Welcome to the Training Grounds."; mes "You are now in the outer court yard. Please go inside the castle to begin your training."; close; } new_1-1,144,116,2 duplicate(NvGuardA) Guard#nv1a 105 new_2-1,144,116,2 duplicate(NvGuardA) Guard#nv2a 105 new_3-1,144,116,2 duplicate(NvGuardA) Guard#nv3a 105 new_4-1,144,116,2 duplicate(NvGuardA) Guard#nv4a 105 new_5-1,144,116,2 duplicate(NvGuardA) Guard#nv5a 105 - script Guard::NvGuardB -1,{ mes "[Training Grounds Guard]"; if (rand(2)) { mes "Come in! I would like to welcome you to the Training Grounds!"; mes "In here, you can prepare yourself for your future adventures throughout the Ragnarok world!"; } else { mes "Go, Novice, go!"; mes "Fight, and grow stronger! Look towards a brighter tomorrow!"; } close; } new_1-1,144,107,2 duplicate(NvGuardB) Guard#nv1b 105 new_2-1,144,107,2 duplicate(NvGuardB) Guard#nv2b 105 new_3-1,144,107,2 duplicate(NvGuardB) Guard#nv3b 105 new_4-1,144,107,2 duplicate(NvGuardB) Guard#nv4b 105 new_5-1,144,107,2 duplicate(NvGuardB) Guard#nv5b 105 - script Instructor#Edwin::NvEdwin -1,{ mes "[Edwin]"; mes "Eh? Why are you still here?"; mes "There are no more courses that you need to take."; next; mes "[Edwin]"; mes "Well, I will let you out of here."; mes "Go find the instructor, Brade."; close2; savepoint strnpcinfo(4),100,100,1,1; warp strnpcinfo(4),100,100; end; } new_1-2,161,182,5 duplicate(NvEdwin) Instructor#nv1 92 new_2-2,161,182,5 duplicate(NvEdwin) Instructor#nv2 92 new_3-2,161,182,5 duplicate(NvEdwin) Instructor#nv3 92 new_4-2,161,182,5 duplicate(NvEdwin) Instructor#nv4 92 new_5-2,161,182,5 duplicate(NvEdwin) Instructor#nv5 92 function script F_NvErase { if (getarg(0,0)) { if (checkquest(7123) > -1) erasequest 7123; if (checkquest(7124) > -1) erasequest 7124; if (checkquest(7126) > -1) erasequest 7126; if (checkquest(7127) > -1) erasequest 7127; } nude; setarray .@manuals[0],countitem(2819),countitem(2820),countitem(2821),countitem(2822),countitem(2823),countitem(2824); if (.@manuals[0]) delitem 2819,.@manuals[0]; //Swordman_Manual if (.@manuals[1]) delitem 2820,.@manuals[1]; //Thief_Manual if (.@manuals[2]) delitem 2821,.@manuals[2]; //Acolyte_Manual if (.@manuals[3]) delitem 2822,.@manuals[3]; //Archer_Manual if (.@manuals[4]) delitem 2823,.@manuals[4]; //Merchant_Manual if (.@manuals[5]) delitem 2824,.@manuals[5]; //Mage_Manual return; } // Pre-Renewal Backwards Compatibility //============================================================ - script Final Tester::NvHanson -1,{ if (nov_3_swordman < 40) { mes "[Hanson]"; mes "Eh? Weird?"; next; mes "[Hanson]"; mes "The Training Grounds have come under new management..."; mes "You seem to have come from the previous management."; next; mes "[Hanson]"; mes "You may continue, you should have enough experience if you made it here."; next; mes "[Hanson]"; mes "I will send you to any town that you'd like to go to."; mes "Or do you have a favourite profession?"; next; switch(select("Choose Profession.:Go to Towns.")) { case 1: mes "[Hanson]"; mes "What profession would you like to perform?"; next; switch(select("Swordman:Acolyte:Thief:Merchant:Archer:Mage")) { case 1: mes "[Hanson]"; mes "That's a great choice!"; mes "After you receive all the supplies, I will teleport you to the Swordman Association."; next; mes "[Hanson]"; mes "The town you will be sent to is called Izlude which is a satellite of Prontera. The Swordman Association is located in the West of town. Please remember this."; next; callsub L_Supplies; savepoint "izlude",128,98,1,1; // Old coordinates: (95,104) warp "izlude_in",74,167; end; case 2: mes "[Hanson]"; mes "You have chosen"; mes "to become an Acolyte."; mes "You will be sent to"; mes "the town of Prontera."; next; mes "[Hanson]"; mes "The Prontera Sanctuary is located to the North-East in Prontera. Please remember this."; next; callsub L_Supplies; savepoint "prontera",117,72,1,1; warp "prt_church",172,19; end; case 3: mes "[Hanson]"; mes "You have chosen"; mes "to become a Thief."; mes "You will be sent to"; mes "the town of Morocc."; next; mes "[Hanson]"; mes "The Thief guild is in the underground 1st floor of a pyramid which is North-West of town. Please remember this."; next; callsub L_Supplies; savepoint "morocc",150,99,1,1; warp "moc_ruins",155,44; end; case 4: mes "[Hanson]"; mes "You have chosen"; mes "to become a Merchant."; mes "You will be sent to"; mes "the town of Alberta."; next; callsub L_Supplies; savepoint "alberta",30,232,1,1; warp "alberta_in",62,44; end; case 5: mes "[Hanson]"; mes "You have chosen"; mes "to become an Archer."; mes "You will be sent to"; mes "the town of Payon."; next; mes "[Hanson]"; mes "The Archer Guild is located to the North-West in Payon. Please remember this."; next; callsub L_Supplies; savepoint "payon",256,242,1,1; warp "payon_in02",64,65; end; case 6: mes "[Hanson]"; mes "You have chosen"; mes "to become a Mage."; mes "You will be sent to"; mes "the town of Geffen."; next; mes "[Hanson]"; mes "The Mage Academy is located in the North-West in town. Please remember this."; next; callsub L_Supplies; savepoint "geffen",119,37,1,1; warp "geffen_in",163,98; end; } case 2: mes "[Hanson]"; mes "To what town do you want to go?"; next; callsub L_Warp, select("Prontera:Geffen:Morocc:Payon:Alberta:Never mind"); end; } } else { mes "[Hanson]"; mes "You have received all the supplies."; mes "To what town do you want to go?"; next; callsub L_Warp, select("Prontera:Geffen:Morocc:Payon:Alberta"); end; } end; L_Supplies: mes "[Hanson]"; mes "Let me give you"; mes "some supplies. Then"; mes "you will transported"; mes "to the chosen town."; next; mes "^660000List of Supplies^000000"; mes "^00003320 Free Tickets for Kafra Storage^000000"; mes "^00003330 Free Tickets for Kafra Transportation^000000"; mes "^0000331 Novice Cutter^000000"; mes "^0000331 Novice Adventurer's Suit^000000"; next; mes "[Hanson]"; mes "Please check your inventory"; mes "to see if you have received all the supplies listed. Let me briefly inform you about the items you've received."; next; mes "[Hanson]"; mes "Free tickets for Kafra storage and transportation can be used for Kafra storage and teleport services."; set nov_3_swordman,40; getitem 7059,20; //Cargo_Free_Ticket getitem 7060,30; //Warp_Free_Ticket getitem 2393,1; //N_Adventurer's_Suit getitem 13040,1; //N_Cutter next; mes "[Hanson]"; mes "You will now"; mes "be teleported."; mes "Good luck,"; mes "^A62A2A"+strcharinfo(0)+"^000000"; mes "and farewell."; close2; return; L_Warp: mes "[Hanson]"; switch(getarg(0)) { case 1: mes "I will send you to Prontera, the Capital City."; close2; savepoint "prontera",117,72,1,1; warp "prontera",150,50; end; case 2: mes "I will send you to Geffen, the City of Magic."; close2; savepoint "geffen",119,37,1,1; warp "geffen",122,65; end; case 3: mes "I will send you to Morocc, the Desert Town."; close2; savepoint "morocc",150,99,1,1; warp "morocc",155,110; end; case 4: mes "I will send you to Payon, the Mountain Village."; close2; savepoint "payon",70,100,1,1; warp "payon",166,67; end; case 5: mes "I will send you to Alberta, the Port City."; close2; savepoint "alberta",30,232,1,1; warp "alberta",114,58; end; case 6: mes "[Hanson]"; mes "Come back when you've made up your mind."; close; } } new_1-4,100,29,1 duplicate(NvHanson) Final Tester#nv1 46 new_2-4,100,29,1 duplicate(NvHanson) Final Tester#nv2 46 new_3-4,100,29,1 duplicate(NvHanson) Final Tester#nv3 46 new_4-4,100,29,1 duplicate(NvHanson) Final Tester#nv4 46 new_5-4,100,29,1 duplicate(NvHanson) Final Tester#nv5 46 // Job Test //============================================================ - script Job Guide Lark::NvLark -1,{ mes "[Lark]"; mes "Have you decided what job you're going to choose?"; next; mes "[Lark]"; mes "I've prepared a test to see what's the best job for you, according to your answers."; next; mes "[Lark]"; mes "How about it?"; mes "Would you like to take the test?"; next; set .@loop,1; while(.@loop) { switch(select("Take the test.:What's the test for?:No, thank you.")) { case 1: mes "[Lark]"; mes "Great!"; mes "Let's start the test~"; next; set .@loop,0; break; case 2: mes "[Lark]"; mes "I will ask you a few simple questions."; mes "Through this test, we will check "+strcharinfo(0)+"'s personality and propensity so that we can find the most appropriate job for you."; next; mes "[Lark]"; mes "There are 3 different types of tests and a total of 30 questions."; next; mes "[Lark]"; mes "What do you think? Will you take the test?"; next; break; case 3: mes "[Lark]"; mes "If you haven't decided what job you want yet,"; mes "I suggest that you take the test."; close; } } mes "[Lark]"; mes "Let's start the first test."; mes "Choose the answer that you like the most."; mes "^FF0000There are 5 questions.^000000"; next; mes "[Lark]"; mes "In the middle of the dark, you're walking on the streets of Prontera when you suddenly hear someone scream."; next; mes "'Aaaahh!! Don't hurt me ~'"; next; mes "You run to the place and see someone surrounded by punks. Because of your sudden appearance, the punks are surprised."; mes "What would be your reaction in this situation?"; next; switch(select("Fight against the punks:Cast Magic.:Call for Guards.:Throw rocks at them.")) { case 1: set .@question_01$, "You subdue them easily."; set .@swordman_p, .@swordman_p+1; set .@taekwon_p, .@taekwon_p+1; set .@ninja_p, .@ninja_p+1; break; case 2: set .@question_01$, "You cast a spell on them."; set .@magician_p, .@magician_p+1; break; case 3: set .@question_01$, "You call for help and Guards come to your aid."; set .@acolyte_p, .@acolyte_p+1; break; case 4: set .@question_01$, "You skillfully throw rocks at the punks."; set .@archer_p, .@archer_p+1; set .@gunslinger_p, .@gunslinger_p+1; break; } mes "[Lark]"; mes .@question_01$+" You have destroyed the street punks."; mes "After clearing up the mess, you approach the person who was being attacked."; mes "Do you think the person who was surrounded by punks is a man or a woman?"; next; switch(select("Man:Woman")) { case 1: set .@question_02_01$, "he"; set .@question_02_02$, "son"; break; case 2: set .@question_02_01$, "she"; set .@question_02_02$, "daughter"; break; } mes "[Lark]"; mes "You find out that "+.@question_02_01$+" is the "+.@question_02_02$+" of a very rich family in Alberta and Punks attacked while "+.@question_02_01$+" was on an errand for the family."; mes "What kind of errand was "+.@question_02_01$+" doing?"; next; switch(select("Delivering an important object:Delivering a small souvenir:Delivering a message")) { case 1: set .@swordman_p, .@swordman_p+1; set .@archer_p, .@archer_p+1; set .@magician_p, .@magician_p+1; break; case 2: set .@thief_p, .@thief_p+1; set .@taekwon_p, .@taekwon_p+1; break; case 3: set .@acolyte_p, .@acolyte_p+1; break; } mes "[Lark]"; mes "Thanks to your bravery, "+.@question_02_01$+" becomes your friend and decides to go on a trip."; mes "Where are you going?"; next; switch(select("Capital city, Prontera:Mountain city, Payon:Port city, Alberta:Magic city, Geffen:Satelite city, Izlude:Desert city, Morocc:Industrial city, Einbroch:World of natural life, Amatsu:Garden city, Hugel")) { case 1: set .@acolyte_p, .@acolyte_p+1; break; case 2: set .@taekwon_p, .@taekwon_p+1; break; case 3: set .@merchant_p, .@merchant_p+1; break; case 4: set .@magician_p, .@magician_p+1; break; case 5: set .@swordman_p, .@swordman_p+1; break; case 6: set .@thief_p, .@thief_p+1; break; case 7: set .@gunslinger_p, .@gunslinger_p+1; break; case 8: set .@ninja_p, .@ninja_p+1; break; case 9: set .@archer_p, .@archer_p+1; break; } mes "[Lark]"; mes "You're having a great time. Do you feel like something will be happening or not?"; next; switch(select("Happening:Not happening.")) { case 1: set .@thief_p, .@thief_p+1; set .@swordman_p, .@swordman_p+1; set .@ninja_p, .@ninja_p+1; set .@taekwon_p, .@taekwon_p+1; set .@magician_p, .@magician_p+1; set .@thief_p, .@thief_p+1; break; case 2: set .@acolyte_p, .@acolyte_p+1; set .@merchant_p, .@merchant_p+1; set .@gunslinger_p, .@gunslinger_p+1; break; } mes "[Lark]"; mes "Let's go now for the second test. Choose the best answer in your own opinion."; mes "^FF0000There are 5 questions.^000000"; next; switch(select("Study:Exercise:Service:Violence")) { case 1: set .@magician_p, .@magician_p+1; break; case 2: set .@thief_p, .@thief_p+1; set .@swordman_p, .@swordman_p+1; set .@taekwon_p, .@taekwon_p+1; break; case 3: set .@acolyte_p, .@acolyte_p+1; break; case 4: set .@thief_p, .@thief_p+1; set .@ninja_p, .@ninja_p+1; break; } switch(select("Change:Preservation")) { case 1: set .@magician_p, .@magician_p+1; break; case 2: set .@acolyte_p, .@acolyte_p+1; break; } switch(select("Consumer:Seller:Producer")) { case 1: set .@swordman_p, .@swordman_p+1; set .@thief_p, .@thief_p+1; set .@acolyte_p, .@acolyte_p+1; set .@archer_p, .@archer_p+1; set .@gunslinger_p, .@gunslinger_p+1; break; case 2: set .@merchant_p, .@merchant_p+1; break; case 3: set .@magician_p, .@magician_p+1; break; } switch(select("Speed:Caution")) { case 1: set .@thief_p, .@thief_p+1; set .@ninja_p, .@ninja_p+1; break; case 2: set .@archer_p, .@archer_p+1; set .@gunslinger_p, .@gunslinger_p+1; break; } switch(select("Theory:Experience")) { case 1: set .@magician_p, .@magician_p+1; break; case 2: set .@swordman_p, .@swordman_p+1; set .@taekwon_p, .@taekwon_p+1; break; } mes "[Lark]"; mes "Let's go now for the third test. Please answer (Yes) or (No) to each question."; mes "^FF0000There are 20 questions.^000000"; next; mes "[Lark]"; mes "Do you always pick up the money that you find on the ground?"; next; switch(select("Yes:No")) { case 1: set .@merchant_p, .@merchant_p+1; set .@ninja_p, .@ninja_p+1; break; case 2: set .@acolyte_p, .@acolyte_p+1; break; } mes "[Lark]"; mes "If you had the same name as someone of the opposite sex, would that make you less attracted to them?"; next; switch(select("Yes:No")) { case 1: set .@ninja_p, .@ninja_p+1; set .@archer_p, .@archer_p+1; break; case 2: set .@acolyte_p, .@acolyte_p+1; set .@gunslinger_p, .@gunslinger_p+1; break; } mes "[Lark]"; mes "Do you like being able to carry a lot of items at once?"; next; switch(select("Yes:No")) { case 1: set .@swordman_p, .@swordman_p+1; set .@merchant_p, .@merchant_p+1; break; case 2: set .@magician_p, .@magician_p+1; set .@taekwon_p, .@taekwon_p+1; break; } mes "[Lark]"; mes "Do you like reading books?"; next; switch(select("Yes:No")) { case 1: set .@taekwon_p, .@taekwon_p+1; set .@gunslinger_p, .@gunslinger_p+1; break; case 2: set .@ninja_p, .@ninja_p+1; set .@merchant_p, .@merchant_p+1; break; } mes "[Lark]"; mes "Do you read everything in a magazine?"; next; switch(select("Yes:No")) { case 1: set .@magician_p, .@magician_p+1; break; case 2: set .@archer_p, .@archer_p+1; set .@gunslinger_p, .@gunslinger_p+1; break; } mes "[Lark]"; mes "Do you take the time to worry about what you are wearing?"; next; switch(select("Yes:No")) { case 1: set .@merchant_p, .@merchant_p+1; set .@ninja_p, .@ninja_p+1; break; case 2: set .@swordman_p, .@swordman_p+1; set .@thief_p, .@thief_p+1; break; } mes "[Lark]"; mes "Do you tell others what kind of fancy foods you've eaten recently?"; next; switch(select("Yes:No")) { case 1: set .@thief_p, .@thief_p+1; set .@swordman_p, .@swordman_p+1; break; case 2: set .@acolyte_p, .@acolyte_p+1; set .@taekwon_p, .@taekwon_p+1; break; } mes "[Lark]"; mes "Do you write things down in a notebook often?"; next; switch(select("Yes:No")) { case 1: set .@magician_p, .@magician_p+1; set .@merchant_p, .@merchant_p+1; break; case 2: set .@thief_p, .@thief_p+1; set .@archer_p, .@archer_p+1; break; } mes "[Lark]"; mes "Do you consider yourself attractive?"; next; switch(select("Yes:No")) { case 1: set .@ninja_p, .@ninja_p+1; set .@gunslinger_p, .@gunslinger_p+1; break; case 2: set .@acolyte_p, .@acolyte_p+1; set .@swordman_p, .@swordman_p+1; break; } mes "[Lark]"; mes "Do you like being in areas where a lot of people gather?"; next; switch(select("Yes:No")) { case 1: set .@acolyte_p, .@acolyte_p+1; set .@swordman_p, .@swordman_p+1; break; case 2: set .@archer_p, .@archer_p+1; set .@ninja_p, .@ninja_p+1; break; } mes "[Lark]"; mes "Do you like the idea of living a single life?"; next; switch(select("Yes:No")) { case 1: set .@thief_p, .@thief_p+1; set .@ninja_p, .@ninja_p+1; break; case 2: set .@acolyte_p, .@acolyte_p+1; break; } mes "[Lark]"; mes "Do you like keeping your distance from others?"; next; switch(select("Yes:No")) { case 1: set .@gunslinger_p, .@gunslinger_p+1; set .@archer_p, .@archer_p+1; break; case 2: set .@taekwon_p, .@taekwon_p+1; break; } mes "[Lark]"; mes "Do you think that having a good hiding space is important in battle?"; next; switch(select("Yes:No")) { case 1: set .@magician_p, .@magician_p+1; set .@gunslinger_p, .@gunslinger_p+1; set .@archer_p, .@archer_p+1; break; case 2: set .@taekwon_p, .@taekwon_p+1; set .@magician_p, .@magician_p+1; break; } mes "[Lark]"; mes "Would you defend your friends even if you knew they were wrong?"; next; switch(select("Yes:No")) { case 1: set .@swordman_p, .@swordman_p+1; break; case 2: set .@thief_p, .@thief_p+1; set .@ninja_p, .@ninja_p+1; break; } mes "[Lark]"; mes "Would you try to convince an enemy not to fight you with logic?"; next; switch(select("Yes:No")) { case 1: set .@archer_p, .@archer_p+1; set .@merchant_p, .@merchant_p+1; break; case 2: set .@acolyte_p, .@acolyte_p+1; set .@archer_p, .@archer_p+1; break; } mes "[Lark]"; mes "Can you sit still in the same place for a long time?"; next; switch(select("Yes:No")) { case 1: set .@taekwon_p, .@taekwon_p+1; set .@thief_p, .@thief_p+1; break; case 2: set .@archer_p, .@archer_p+1; set .@gunslinger_p, .@gunslinger_p+1; break; } mes "[Lark]"; mes "Do you think that you can take a punch straight to the gut from an Orc?"; next; switch(select("Yes:No")) { case 1: set .@swordman_p, .@swordman_p+1; set .@merchant_p, .@merchant_p+1; break; case 2: set .@magician_p, .@magician_p+1; set .@thief_p, .@thief_p+1; break; } mes "[Lark]"; mes "Do you make up nicknames for your friends?"; next; switch(select("Yes:No")) { case 1: set .@gunslinger_p, .@gunslinger_p+1; set .@archer_p, .@archer_p+1; break; case 2: set .@acolyte_p, .@acolyte_p+1; set .@gunslinger_p, .@gunslinger_p+1; break; } mes "[Lark]"; mes "Do you always have a plan B for various situations?"; next; switch(select("Yes:No")) { case 1: set .@thief_p, .@thief_p+1; set .@gunslinger_p, .@gunslinger_p+1; break; case 2: set .@gunslinger_p, .@gunslinger_p+1; set .@merchant_p, .@merchant_p+1; break; } mes "[Lark]"; mes "When talking with other people, do you take time so that the others have time to think?"; next; switch(select("Yes:No")) { case 1: set .@magician_p, .@magician_p+1; break; case 2: set .@ninja_p, .@ninja_p+1; set .@archer_p, .@archer_p+1; break; } // Calculate player's job. // In the official script, higher .@who_job value always wins in a tie. setarray .@points[0], .@swordman_p, .@magician_p, .@archer_p, .@merchant_p, .@thief_p, .@acolyte_p, .@taekwon_p, .@gunslinger_p, .@ninja_p; set .@max, .@points[0]; for(set .@i,1; .@i<9; set .@i,.@i+1) { if (.@points[.@i] >= .@max) { set .@max, .@points[.@i]; set .@ele, .@i; } } set .@who_job, .@ele+1; // To match the official script's numbering. mes "[Lark]"; mes "Thank you, have a long life."; mes "The vocational aptitude assessment is finished."; next; mes "[Lark]"; mes "... ... the result is an aggregate. ... ..."; next; mes "[Lark]"; mes "Tabulation is complete."; mes "'^0000FFSo^000000', if you press this button"; mes "you can see the results."; next; switch(.@who_job) { case 1: set .@job$, "Swordman"; mes "[Lark]"; mes "...simple and straightforward..."; mes "...strong beliefs can affect the world..."; mes "...stands for hope that the people..."; mes "...to protect loyalty."; mes "...thrusting you ..."; next; break; case 2: set .@job$, "Wizard"; mes "[Lark]"; mes "...to understand all these things alone deulmyeo..."; mes "...hard work and independent thinking..."; mes "...type. Excellent judgement, naehyangjeok..."; mes "...and analytical, with insight..."; mes "...type : he observes everything..."; next; break; case 3: set .@job$, "Archer"; mes "[Lark]"; mes "...immeasurable, have many emotions..."; mes "...to people who are trying to understand..."; mes "...trying to understand the type to receive. Also,..."; mes "...rejects mediocrity, and his true..."; mes "...type of life to live. Impressionable..."; mes "...rich and romantic ..."; next; break; case 4: set .@job$, "Merchant"; mes "[Lark]"; mes "...to identify people's sense of hearing..."; mes "...outstanding determination and goals..."; mes "...oriented and a strong type of responsibility..."; mes "...seongchwiyok strong..."; next; break; case 5: set .@job$, "Thief"; mes "[Lark]"; mes "...always makes life fun and who wants..."; mes "...always trying to find a new job..."; mes "...contribution to the world,..."; mes "...that type. Adventurer,..."; mes "...optimistic."; next; break; case 6: set .@job$, "Acolyte"; mes "[Lark]"; mes "...mentality makes him warm and considerate for others..."; mes "I know I have loved anyone,..."; mes "...be of help to others and for others..."; mes "...type of well-caring."; mes "...always wants to help others."; next; break; case 7: set .@job$, "Taekwon Boy/Girl"; mes "[Lark]"; mes "...to believe with a stubborn conviction..."; mes "...heart and spirit of the grassland is consistent: it..."; mes "...make steps to move forward."; mes "...type of comments or want to understand the beliefs..."; mes "...that type of effort to correct through training,..."; mes "...to have a sound mind..."; next; break; case 8: set .@job$, "Gunslinger"; mes "[Lark]"; mes "People often praised Justice."; mes "Sometimes fear and confusion may exist..."; mes "...that time, the definition of confusion..."; mes "...to maintain the balance, you're carrying the burden..."; mes "...for you ..."; next; break; case 9: set .@job$, "Ninja"; mes "[Lark]"; mes "...to avoid the type of self-aspiring..."; mes "...married to a prominent goal and quietly avoiding..."; mes "...step and their goals..."; mes "...type of reaching your goal until they're complete..."; mes "...I do not regret it as ..."; next; break; default: mes "[Lark]"; mes "An error has occurred."; close; } mes "[Lark]"; mes "^8014EB"+.@job$+" is the job that suits you.^000000"; next; mes "[Lark]"; mes "Well, "+.@job$+", you can choose among various career pathways."; mes "Do you want to determine the job that suits you?"; mes "Do you want to select a job?"; next; switch(select(.@job$+".:Any other profession.")) { case 1: mes "[Lark]"; mes "The Novice Training Center course is now shut down, "+.@job$+". Would you like to make this occupation your profession?"; next; if(select("I will think about it again.:I'll choose the former.") == 1) { mes "[Lark]"; mes "You will receive a book corresponding to each job type."; mes "Please have enough experience to determine carefully the job that suits you."; close; } break; case 2: mes "[Lark]"; mes "Quit now the Training Center Course. Would you like to make an occupation your career choice?"; next; if(select("I will think about it again.:I still want to change my job.") == 1) { mes "[Lark]"; mes "Primer of each class would have received."; mes "Have enough experience to determine looked carefully, please."; close; } mes "[Lark]"; mes "Yes, sir. Please select your desired job."; next; set .@who_job, select("Swordman:Wizard:Archer:Merchant:Thief:Acolyte:Taekwon Boy/Girl:Gunslinger:Ninja:I'll think again."); if (.@who_job == 10) { mes "[Lark]"; mes "The Novice Training Center has a lot of sea experience, please pay attention along the way."; close; } break; } callfunc "F_NvErase",1; set .@str$, "^A62A2A'"+strcharinfo(0)+"^000000'! Take care and may Freya bless you on your journey."; switch(.@who_job) { case 1: mes "[Lark]"; mes "We will send you"; mes "to the swordman guild in Izlude, the Satelite city."; mes .@str$; mes "Good bye."; close2; savepoint "izlude",128,98,1,1; // Old coordinates: (95,104) warp "izlude_in",74,167; end; case 2: mes "[Lark]"; mes "We will send you"; mes "to the magician guild in Geffen, the Magical City."; mes .@str$; mes "Good bye."; close2; savepoint "geffen",119,37,1,1; warp "geffen_in",163,98; end; case 3: mes "[Lark]"; mes "We will send you"; mes "to the Archer Guild in Payon, the city of mountains."; mes .@str$; mes "Good bye."; close2; savepoint "payon",256,242,1,1; warp "payon_in02",64,65; end; case 4: mes "[Lark]"; mes "We will send you"; mes "to the merchant guild in Alberta, the Port City."; mes .@str$; mes "Good bye."; close2; savepoint "alberta",30,232,1,1; warp "alberta_in",62,44; end; case 5: mes "[Lark]"; mes "We will send you"; mes "to the thief guild in Morocc, the desert city."; mes .@str$; mes "Good bye."; close2; savepoint "morocc",150,99,1,1; warp "moc_prydb1",99,185; end; case 6: mes "[Lark]"; mes "We will send you"; mes "to the Prontera, the capital city of the Rune-Midgarts Kingdom."; mes .@str$; mes "Good bye."; close2; savepoint "prontera",117,72,1,1; warp "prt_church",172,19; end; case 7: mes "[Lark]"; mes "We will send you"; mes "to the Phoenix in Payon, the city of mountains."; mes .@str$; mes "Good bye."; close2; savepoint "payon",164,58,1,1; warp "payon",163,141; end; case 8: mes "[Lark]"; mes "You will be sent to the flyship"; mes "in Izlude, the Satelite city."; mes "You can get on the flyship to go to Einbroch, the city of industries."; mes .@str$; mes "Good bye."; close2; savepoint "izlude",128,98,1,1; // Old coordinates: (95,104) warp "izlude",128,67; end; case 9: mes "[Lark]"; mes "We will send you"; mes "to the captain of the smuggling ship."; mes "You can move to Amatsu"; mes "with the captain's help."; mes .@str$; mes "Good bye."; close2; savepoint "alberta",117,56,1,1; warp "alberta",171,132; end; default: mes "[Lark]"; mes "An error has occurred. If you keep having the same problem, please contact the local GM team."; close; } } new_1-3,106,50,4 duplicate(NvLark) Job Guide Lark#01 706 new_2-3,106,50,4 duplicate(NvLark) Job Guide Lark#02 706 new_3-3,106,50,4 duplicate(NvLark) Job Guide Lark#03 706 new_4-3,106,50,4 duplicate(NvLark) Job Guide Lark#04 706 new_5-3,106,50,4 duplicate(NvLark) Job Guide Lark#05 706