diff options
-rw-r--r-- | db/item_db.txt | 12 | ||||
-rw-r--r-- | db/item_trade.txt | 8 | ||||
-rw-r--r-- | db/quest_db.txt | 12 | ||||
-rw-r--r-- | npc/jobs/novice/novice.txt | 6189 |
4 files changed, 2119 insertions, 4102 deletions
diff --git a/db/item_db.txt b/db/item_db.txt index a2999c52a..0b2455ce9 100644 --- a/db/item_db.txt +++ b/db/item_db.txt @@ -1664,12 +1664,12 @@ //2816,Radar_Ring1,Radar Ring, //2817,Radar_Ring2,Radar Ring, //2818,Radar_Ring3,Radar Ring, -//2819,Swordsman_Manual,Swordsman Manual, -//2820,Thief_Manual,Thief Manual, -//2821,Acolyte_Manual,Acolyte Manual, -//2822,Archer_Manual,Archer Manual, -//2823,Merchant_Manual,Merchant Manual, -//2824,Mage_Manual,Mage Manual, +2819,Swordsman_Manual,Swordsman Manual,5,,,100,,0,,0,0x00000001,7,2,136,,1,0,0,{ bonus bMaxSP,100; skill "SM_BASH",1; skill "SM_PROVOKE",1; skill "SM_MAGNUM",1; },{},{} +2820,Thief_Manual,Thief Manual,5,,,100,,0,,0,0x00000001,7,2,136,,1,0,0,{ bonus bMaxSP,100; skill "TF_DOUBLE",3; skill "TF_STEAL",1; skill "TF_HIDING",1; skill "TF_POISON",1; },{},{} +2821,Acolyte_Manual,Acolyte Manual,5,,,100,,0,,0,0x00000001,7,2,136,,1,0,0,{ bonus bMaxSP,100; skill "AL_HEAL",1; skill "AL_INCAGI",1; skill "AL_BLESSING",1; },{},{} +2822,Archer_Manual,Archer Manual,5,,,100,,0,,0,0x00000001,7,2,136,,1,0,0,{ bonus bMaxSP,100; skill "AC_OWL",1; skill "AC_CONCENTRATION",1; },{},{} +2823,Merchant_Manual,Merchant Manual,5,,,100,,0,,0,0x00000001,7,2,136,,1,0,0,{ bonus bMaxSP,100; skill "MC_DISCOUNT",1; skill "MC_OVERCHARGE",10; skill "MC_IDENTIFY",1; skill "MC_MAMMONITE",1; },{},{} +2824,Mage_Manual,Mage Manual,5,,,100,,0,,0,0x00000001,7,2,136,,1,0,0,{ bonus bMaxSP,100; skill "MG_SRECOVERY",1; skill "MG_COLDBOLT",1; skill "MG_FIREWALL",1; skill "MG_FIREBOLT",1; },{},{} 2825,Shaman_Earrings_,Shaman Earrings,5,0,,100,,0,,0,0xFFFFFFFF,7,2,136,,1,0,0,{ bonus bInt,2; },{},{} 2826,Dark_Knight_Belt_,Dark Knight Belt,5,0,,500,,1,,0,0xFFFFFFFF,7,2,136,,80,0,0,{ bonus bDex,2; bonus bAgi,1; },{},{} 2827,Dark_Knight_Glove_,Dark Knight Glove,5,0,,500,,1,,0,0xFFFFFFFF,7,2,136,,80,0,0,{ autobonus "{ bonus bMaxHPRate,10; }",10,10000,0,"{ specialeffect2 EF_POTION_BERSERK; }"; },{},{} diff --git a/db/item_trade.txt b/db/item_trade.txt index cd41e3fd9..772b52283 100644 --- a/db/item_trade.txt +++ b/db/item_trade.txt @@ -1542,3 +1542,11 @@ 15011,123,100 // Para_Team_Uniform3 16004,123,100 // P_Mace1 16005,123,100 // P_Mace2 + +// Novice Training Grounds +2819,123,100 +2820,123,100 +2821,123,100 +2822,123,100 +2823,123,100 +2824,123,100 diff --git a/db/quest_db.txt b/db/quest_db.txt index 0a21acea4..7d9ba0b6c 100644 --- a/db/quest_db.txt +++ b/db/quest_db.txt @@ -440,6 +440,18 @@ 7081,0,0,0,0,0,0,0,"Helping the Laphine Craftsman" 7082,86400,0,0,0,0,0,0,"Helping the Laphine Craftsman" +// Novice Training Grounds +7117,0,0,0,0,0,0,0,"Your first quest!" +7118,0,0,0,0,0,0,0,"Novice Training" +7119,0,0,0,0,0,0,0,"Novice Training" +7120,0,0,0,0,0,0,0,"Novice Training" +7121,0,0,0,0,0,0,0,"Novice Training" +7122,0,1002,1,0,0,0,0,"First battle - Poring Hunt" +7123,0,1049,2,0,0,0,0,"Battle Basics -Swordman" +7124,0,1063,5,0,0,0,0,"Battle Basics -Mage" +7126,0,0,0,0,0,0,0,"Selling items" +7127,0,1010,5,0,0,0,0,"Battle Basics -Thief" + 7128,0,0,0,0,0,0,0,"Training course 'conquest a desert!' -start" 7129,0,1009,10,0,0,0,0,"The training course 'conquer the desert!' - A real battle 1" 7130,0,1107,10,0,0,0,0,"The training course 'conquer the desert!' - A real battle 2" diff --git a/npc/jobs/novice/novice.txt b/npc/jobs/novice/novice.txt index 2db473c7a..e0956a789 100644 --- a/npc/jobs/novice/novice.txt +++ b/npc/jobs/novice/novice.txt @@ -1,4299 +1,2296 @@ -//===== eAthena Script ======================================= -//= Ep 10+ Novice Training Grounds -//===== By: ================================================== -//= Dr.Evil & MasterOfMuppets -//===== Current Version: ===================================== -//= 2.4 -//===== Compatible With: ===================================== -//= eAthena SVN 3422+(Requires jA Script System) -//===== Description: ========================================= -//= [Aegis Conversion] -//= Novice Training Grounds -//===== Additional Comments: ================================= -//= 1.7D Added confirm character name thing on receptionist. [Kisuka] -//= 1.8 Rescripted to Aegis 10.3 standards. [L0ne_W0lf] -//= NPCs are not backwards compatable, and will remove -//= old variables used in the previous novice grounds. -//= 1.9 Fixed problem with Hanson's dialog. (bugreport:1703) [L0ne_W0lf] -//= Fixed Entrance Guard clearing vars. (bugreport:1695) -//= Added duplicate NPCs to combat training maps. -//= 2.0 Fixed savepoint not being changed sometimes. [L0ne_W0lf] -//= 2.1 Corrected spacing issue in welcome message. [L0ne_W0lf] -//= 2.2 Corrected Leo's endless dialog. [L0ne_W0lf] -//= 2.3 Added fix to Hanson from GM-windsor- and Saithis. [L0ne_W0lf] -//= 2.3a Correct a wrong variable name. (bugreport:2293) [Samuray22] -//= 2.4 Corrected an error in Hanson. (bugreport:2374) [L0ne_W0lf] -//============================================================ +//===== eAthena Script ======================================= +//= New Novice Training Grounds +//===== By: ================================================== +//= Kisuka +//===== Current Version: ===================================== +//= 1.0 +//===== Compatible With: ===================================== +//= eAthena SVN +//===== Description: ========================================= +//= New Novice Training Grounds +//= [Hand Scripted (No Programs or AEGIS Scripts)] +//===== Additional Comments: ================================= +//= 1.0 First version. [Kisuka] +//============================================================ -// Bulletin Board -new_1-1,66,114,4 script Bulletin Board#nv 111,{ - mes "^FF0000=================================^000000"; - mes "^FF0000 ^000000 ^E40CAA[Welcome]^CC0000 to ^FF9000Novice^7FFF00 Training ^00FF00Grounds ^E40CAA[Welcome]^FF0000^000000"; - mes "^FF0000=================================^000000"; - close; -} - -new_1-1,144,116,2 script Guard#nv1 105,{ - 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,107,2 script Guard#nv2 105,{ - mes "[Training Grounds Guard]"; - if(rand(2)) { - mes "Come in!"; - mes "I would like"; - mes "to welcome you to"; - mes "the Training Grounds!"; - next; - mes "[Training Grounds Guard]"; - mes "In here, you can prepare"; - mes "yourself for your future"; - mes "adventures throughout the"; - mes "Ragnarok world!"; - } - else { - mes "Go, Novice, go!"; - mes "Fight, and grow stronger! Look towards a brighter tomorrow!"; +//============================================================================ +// Sprakki (Start of Novice Training Ground, Outside Castle) +//============================================================================ +new_1-1,53,114,4 script Sprakki#nv1 90,{ + if(job_novice_q < 1) { + 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 ^4A4AFFmoves, selection of items, and attacks^000000 use the ^4A4AFFleft 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; + setquest 7117; + set job_novice_q,1; + 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."; + 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 ^4A4AFFALT + 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."; + close; + } else { + mes "[Sprakki]"; + mes "I will be waiting for you across the Bridge to the east."; + close; } - close; } -// Receptionist -new_1-2,100,29,4 script Receptionist#nv1 86,{ - mes "[Training Grounds Receptionist]"; - mes "Hello, you look to be new here."; - mes "What is your name?"; - next; - input .@charname$; - if (.@charname$!=strcharinfo(0)) { - mes "[Training Grounds Receptionist]"; - mes "Sorry, but I don't think I heard"; - mes "you correctly"; +//============================================================================ +// Sprakki (Inside Castle) +//============================================================================ +new_1-2,100,29,4 script Sprakki#nv2 90,{ + if(job_novice_q < 1) { + 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 ^4A4AFFmoves, selection of items, and attacks^000000 use the ^4A4AFFleft 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; + setquest 7117; + set job_novice_q,1; + 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."; + 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 ^4A4AFFAlt + 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; - } - mes "[Training Grounds Receptionist]"; - mes "Welcome!"; - mes "You are at the entrance"; - mes "of the ^3355FFTraining Grounds^000000."; - next; - mes "[Training Grounds Receptionist]"; - mes "If you're new"; - mes "to the Ragnarok world,"; - mes "please choose the"; - mes "^3355FFTraining Grounds Introduction^000000"; - mes "menu for more information."; - next; - while (1) { - switch(select("Apply for training.:Direct access to Ragnarok Online.:^3355FFTraining Grounds Introduction.^000000:I need a moment to think.")) { - case 1: - mes "[Training Grounds Receptionist]"; - mes "Thank you for applying for Novice training. For detailed information of each training course, please inquire the Guides for assistance."; - next; - mes "[Training Grounds Receptionist]"; - mes "When you have questions about the training course process, please feel free to ask any of the Tutors."; + } else { + if(job_novice_q == 1) { + getexp 300,0; + getexp 300,5; + completequest 7117; + set job_novice_q,2; + mes "[Sprakki]"; + mes "Great!"; + mes "Now you know how to move and talk to others, right?"; next; - mes "[Training Grounds Receptionist]"; - mes "You will now be transferred"; - mes "to the Training Grounds."; - close2; - warp "new_1-2",100,70; - end; - case 2: - mes "[Training Grounds Receptionist]"; - mes "I understand."; - mes "Please do your"; - mes "best, and I wish you"; - mes "the best of luck!"; - close2; - 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; - switch(rand(6)) { - case 0: - savepoint "prontera",273,354; - warp "prontera",273,354; - break; - case 1: - savepoint "morocc",160,94; - warp "morocc",160,94; - break; - case 2: - savepoint "geffen",120,100; - warp "geffen",120,100; - break; - case 3: - savepoint "payon",70,100; - warp "payon",70,100; - break; - case 4: - savepoint "alberta",116,57; - warp "alberta",116,57; - break; - case 5: - savepoint "izlude",94,103; - warp "izlude",94,103; - } - end; - case 3: - mes "[Training Grounds Receptionist]"; - mes "This training grounds was established in order to provide useful information to new players of Ragnarok Online by the Rune-Midgarts Kingdom's Board of Education."; - next; - mes "[Training Grounds Receptionist]"; - mes "The training course is organized into two parts: the Basic Knowledge classes, and Field Combat training."; - next; - mes "[Training Grounds Receptionist]"; - mes "Through the first course, players will learn the necessary knowledge for a smoother gaming experience."; - next; - mes "[Training Grounds Receptionist]"; - mes "In Field Combat Training,"; - mes "players will engage in actual battle with weak monsters so they can learn the basics of fighting."; - next; - mes "[Training Grounds Receptionist]"; - mes "With this battle practice,"; - mes "players will be able to gain more experience before they enter the real world."; - next; - mes "[Training Grounds Receptionist]"; - mes "At the end of the training, we will provide an introduction to the 1st Job Classes. This will help players decide which job class is best for them."; - next; - mes "[Training Grounds Receptionist]"; - mes "If you wish to participate in the training grounds, please choose '^3355FFApply for training^000000' in the menu."; - next; - mes "[Training Grounds Receptionist]"; - mes "Otherwise, if you want to skip the basic training and immediately enter the world of Ragnarok Online, please choose '^3355FFDirect access to Ragnarok Online^000000.'"; - next; - break; - case 4: - mes "[Training Grounds Receptionist]"; - mes "I understand."; - mes "Please, take your time."; - close; } + 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; + select("Begin Training."); + mes "[Sprakki]"; + mes "I will guide you to the Novice Training Center."; + mes "Inside, Instructor 'Brade' will be waiting to speak to you."; + next; + setquest 7118; + set job_novice_q,3; + mes "[Sprakki]"; + mes "Instructor 'Brade' will help you afterwards."; + mes "Please, Go see him."; + next; + mes "^4A4AFF- You received a quest 'Novice Training Ground-1' from Sprakki.^000000"; + mes "^4A4AFFPlease check the Quest Info Window.-^000000"; + close2; + savepoint "new_1-2",100,100; + warp "new_1-2",100,100; + end; } -} +} -new_1-1,53,114,4 script Shion#nv1 727,{ - if (nov_get_item04 > 9 || nov_get_item05 > 9) { - mes "[Shion]"; - mes "Hm...?"; - mes "What are you"; - mes "still doing here?"; - mes "Oh, you used a ^3355FFButterfly Wing^000000, didn't you?"; - next; - mes "[Shion]"; - mes "No, no, no~"; - mes "You're supposed to use the Butterfly Wing when you want to go back to a town ^666666after^000000 completing your training here, alright?"; - next; - mes "[Shion]"; - mes "Now, let me send"; - mes "you back to the"; - mes "Training Grounds."; + +//============================================================================ +// Instructor Brade +//============================================================================ +new_1-2,100,105,4 script Brade#nv 733,{ + if(job_novice_q < 3) { + mes "[Instructor Brade]"; + mes "How did you get here?"; + close2; + warp "new_1-1",53,111; + end; + } + else if(job_novice_q == 3) { + getexp 300,0; + getexp 300,0; + getexp 300,10; + completequest 7118; + set job_novice_q,4; + mes "[Instructor Brade]"; + mes "Great."; + mes "You've completed the given quest successfully, so I will reward you with experience points."; + 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 the 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"; + mes "'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."; + 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; + set job_novice_q,5; + 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 has 3 sections..."; + next; + mes "[Instructor Brade]"; + mes "consumable items, equipment and other items."; + mes "If you want to use or equip items, 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 "Do that and the info will pop-up in a separate window."; + next; + cutin "tutorial04",3; + mes "!- Info -!"; + mes "Double-click on the item to see the detailed information."; + next; + mes "!- Info -!"; + mes "Right-click on other players to show the Community Menu and you can join a party, request trades, etc."; + next; + cutin "",255; + mes "[Instructor Brade]"; + mes "Why don't you equip the items I gave you earlier?"; + mes "^4A4AFFDouble-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 clicking on them."; + mes "The Hot Key to open the Item 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) { + 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."; + 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; + set job_novice_q,5; + 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, 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 "Do that and the info will pop-up in a separate window."; + next; + cutin "tutorial04",3; + mes "!- Info -!"; + mes "Double-click on the item to see the detailed information."; + next; + mes "!- Info -!"; + mes "Right-click on other players to show the Community Menu and you can join a party, request trades, etc."; + next; + cutin "",255; + mes "[Instructor Brade]"; + mes "Why don't you equip the items I gave you earlier?"; + mes "^4A4AFFDouble-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 clicking on them."; + mes "The Hot Key to open the Item 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; - warp "new_1-2",99,99; + cutin "",255; end; } - else if (nov_1st_cos > 2) { - mes "[Shion]"; - mes "The Training Grounds"; - mes "are located just past"; - mes "the bridge located"; - mes "to the right."; - next; - mes "[Shion]"; - mes "Although you'll"; - mes "be sitting through"; - mes "some classes, you"; - mes "won't regret it."; - mes "Now, go for it!"; + else if(job_novice_q == 5 || job_novice_q == 6) { + set .@EquipCheck,0; + if (getequipisequiped(EQI_SHOES)) { set .@EquipCheck,.@EquipCheck+1; } + if (getequipisequiped(EQI_ARMOR)) { set .@EquipCheck,.@EquipCheck+1; } + if (getequipisequiped(EQI_GARMET)) { set .@EquipCheck,.@EquipCheck+1; } + if (getequipisequiped(EQI_HEAD_TOP)) { set .@EquipCheck,.@EquipCheck+1; } + if (getequipisequiped(EQI_HAND_L)) { set .@EquipCheck,.@EquipCheck+1; } + if (getequipisequiped(EQI_HAND_R)) { set .@EquipCheck,.@EquipCheck+1; } + if(.@EquipCheck >= 4) { + if(job_novice_q == 5) { + mes "[Instructor Brade]"; + mes "You are all set."; + mes "You are coming along just fine."; + getexp 300,0; + getexp 300,0; + getexp 300,0; + getexp 300,15; + getitem 12323,50; // N_Fly_Wing + getitem 12324,20; // N_Butterfly_Wing + completequest 7119; + set job_novice_q,6; + 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 ^4A4AFF12 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; + setquest 7120; + set job_novice_q,7; + mes "[Instructor Brade]"; + mes "Somewhere in this room, there's someone named ^4A4AFFJinha^000000."; + mes "Find Jinha and learn the ^4A4AFF[First Aid]^000000 skill from him."; + 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{ + mes "[Instructor Brade]"; + mes "Try to put on at least 4 of the equipment I gave you."; + mes "Put those shoes on, wear those clothes, and arm yourself with that weapon you maggot."; + close; + } + } + else if(job_novice_q == 7) { + mes "[Instructor Brade]"; + mes "Somewhere in this room, there's someone named ^4A4AFFJinha^000000."; + mes "Find Jinha and learn the ^4A4AFF[First Aid]^000000 skill from him."; close; } - else if (nov_1st_cos == 2) { - mes "[Shion]"; - mes "Hey..."; - mes "You little rascal!"; - next; - mes "[Shion]"; - mes "Wait..."; - mes "Calm down Shion."; - mes "You're a professional"; - mes "trainer! Don't get all"; - mes "upset at a Novice!"; - next; - mes "[Shion]"; - mes "Go and cross the bridge to the right, right now! ^666666*Ahem*^000000 You'll see and castle, and inside you can meet all sorts of tutors."; - next; - mes "[Shion]"; - mes "If you can't see the entrance, just change your in-game camera angle by holding down the ^3355FFright Mouse button^000000 and dragging your mouse. Easy, right?"; - next; - mes "[Shion]"; - mes "To reset your camera angle,"; - mes "just double-click the right Mouse button. Okay then, take care!"; - next; - mes "[Shion]"; - mes "Oh, and before you leave,"; - mes "learn how to treat a lady nice, okay? Then they might give you gifts like this!"; - set nov_1st_cos,3; - getexp 9,0; + else if(job_novice_q == 8) { + mes "[Instructor Brade]"; + mes "Now you've learned the [Firdt 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 that this as a reward."; + getitem 2393,1; // N_Adventurer's_Suit + completequest 7120; + set job_novice_q,9; close; } - else if (nov_1st_cos == 1) { - mes "[Shion]"; - mes "Huh...?"; - mes "Why are you"; - mes "still here?"; - mes "^666666*Sigh...*^000000"; - next; - mes "[Shion]"; - mes "Hey, when you enter the Training Grounds, you'll learn all sorts of things that will help you play the game. You'll even have the chance to get zeny and other rewards."; - next; - mes "[Shion]"; - mes "You can even gain"; - mes "experience like this!"; - set nov_1st_cos,3; - getexp 9,0; - next; - mes "[Shion]"; - mes "Everything you'll learn here in the Training Grounds will benefit your gameplay. So just think positive, okay?"; + else if(job_novice_q > 8) { + 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; + if(select("I can get there by myself.:Please, send me to the next room.") == 2) { + mes "[Instructor Brade]"; + mes "Oh well."; + mes "I think it's better than seeing you lost and wandering about."; + mes "Hahahaha..."; + close2; + warp "new_1-2",41,172; + end; + } + 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; } else { - mes "[Shion]"; - mes "Hello there~"; - mes "Welcome to the"; - mes "Training Grounds!"; - next; - mes "[Shion]"; - mes "Let's see."; - mes "Your name is..."; - mes "" + strcharinfo(0) + "."; - next; - mes "[Shion]"; - mes "My name is Shion."; - mes "Yes, this is the first time we've met, of course. Hahahaha~!"; - next; - mes "[Shion]"; - mes "Now that we've met, is there anything I can help you with?"; - mes "I'm here for your questions~"; - next; - switch(select("Where should I go?:About Basic Interfaces.:Who the crap are you?")) { - case 1: - mes "[Shion]"; - mes "Do you see the bridge to your"; - mes "right side? Just cross the bridge and you'll arrive at a castle. All you have to do is walk inside!"; - next; - mes "[Shion]"; - mes "The entrance of the castle"; - mes "is a ^4D4DFFspinning white light^000000. These portals are what allow you to move from one zone to another."; - next; - mes "[Shion]"; - mes "Do you know how to move?"; - mes "Left click on a spot, and you'll walk over to that spot. Piece of cake, huh?"; - next; - mes "[Shion]"; - mes "So go for it!"; - mes "Basically, you must enter the castle in order to start your adventures."; - next; - mes "[Shion]"; - mes "There are soldiers"; - mes "at the entrance, so don't"; - mes "worry about getting lost."; - mes "Take care now~!"; - set nov_1st_cos,1; - close; - case 2: - mes "[Shion]"; - mes "Basic Interfaces..."; - mes "Do you know what Click, Double-click and Drag mean?"; - next; - mes "[Shion]"; - mes "When you press the"; - mes "left Mouse button once,"; - mes "that is a click. When you press the mouse button twice in a row, that's a double-click."; - next; - mes "[Shion]"; - mes "Dragging is when you move your Mouse while holding down the"; - mes "Mouse button after clicking on something."; - next; - mes "[Shion]"; - mes "Before we start talking about"; - mes "the Basic Interfaces, you should remember these terms, just because we'll be using them frequently."; - next; - mes "[Shion]"; - mes "Inside the castle, there is a Basic Interfaces Tutor who can teach you the basics more clearly, okay? Enter the castle to start your training."; - next; - mes "[Shion]"; - mes "The entrance"; - mes "of the castle is"; - mes "a ^4D4DFFspinning white light^000000."; - next; - mes "[Shion]"; - mes "There are soldiers"; - mes "at the entrance, so don't"; - mes "worry about getting lost."; - mes "Take care now~!"; - set nov_1st_cos,1; - close; - case 3: - mes "[Shion]"; - mes "Me? I'm Shion!"; - mes "But that's a rude way of asking! I'm volunteering my time and effort here, so you've got to show me a little bit of respect at least!"; - set nov_1st_cos,2; - close; - } + mes "[Instructor Brade]"; + mes "Why are you still here?"; + close2; + warp "prontera",156,90; + end; } } -// Interfaces Tutor -new_1-2,99,105,3 script Interfaces Tutor#nv1 751,{ - if (nov_get_item02 > 9 && nov_get_item03 > 9 && nov_get_item04 > 9) { - mes "[Kris]"; - mes "You've completed all the essential courses. Have you spoken to the assistant tutors already? The field combat training will be your next course. Would you like to proceed?"; - next; - switch(select("Sure!:No, I'll come back later.:Send me to a town!")) { - case 1: - mes "[Kris]"; - mes "Your next course is Field Combat training. Please listen carefully to your next trainer, and I hope you pass the course. Godspeed."; - close2; - warp "new_1-2",28,178; - end; - case 2: - mes "[Kris]"; - mes "Alright then. In the meantime, you might want to speak to the assistant tutors, as the basic information taught in the essential courses may not be enough for new adventurers."; - next; - mes "[Kris]"; - mes "Feel free to come back any time when you need my assistance."; - close; - case 3: - mes "[Kris]"; - mes "So, would you like to be sent to a town? If you're confident that you've learned enough, head over to the right and speak to the ^3355FFKafra Employee^000000."; - next; - mes "[Kris]"; - mes "The Kafra Services are very convenient once you get out into the real world. Their Teleport Service can be used to travel from town to town, and you can keep your items safe in the Kafra Storage."; - next; - mes "[Kris]"; - mes "We may never meet again, but I hope you grow stronger and become a great adventurer. Godspeed."; - close; - } +//============================================================================ +// Instructor Jinha +//============================================================================ +new_1-2,115,120,4 script Jinha#nv 59,{ + if(job_novice_q < 7) { + 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 "new_1-2",100,100; + end; } - else if (nov_get_item02 < 10) { - mes "[Kris]"; - mes "Hello, may I see your"; - mes "proof of registration?"; - next; - if (NEW_MES_FLAG0) { - mes "[Kris]"; - mes "Ah, " + strcharinfo(0) + ", you've applied for an old training course that we no longer provide for our trainees. Let me issue a new proof of registration for you."; - set NEW_MES_FLAG0,0; - set NEW_MES_FLAG1,0; - set NEW_MES_FLAG2,0; - set NEW_MES_FLAG3,0; - set NEW_MES_FLAG4,0; - set NEW_MES_FLAG5,0; - set NEW_LVUP0,0; - set NEW_LVUP1,0; - set NEW_JOBLVUP,0; - next; - } - mes "[Kris]"; - mes "Okay, now"; - mes "you're ready to go."; - mes "In my class, I teach the"; - mes "use of the most basic"; - mes "interfaces."; - next; - mes "[Kris]"; - mes strcharinfo(0)+"."; - mes "would you like to learn"; - mes "more about interface"; - mes "fundamentals?"; - next; - switch(select("Yes.:Nah, I'm a pro~:Cancel.")) { - case 1: - mes "[Kris]"; - mes "First, it's possible to move every interface window on your screen by dragging the window. Just click on the window, hold down the mouse button and move your mouse."; - next; - mes "[Kris]"; - mes "Now, let me explain each interface window according to their default positions on your screen."; - next; - mes "[Kris]"; - mes "At the upper left side of your screen, you will see a window with your character name and level. This is the ^3355FFBasic Information Window^000000."; - next; - mes "[Kris]"; - if (BaseLevel < 8) { - mes "Let me give you"; - mes "some experience points."; - mes "Keep an eye on your Basic Info Window and observe the change in your Base Level experience gauge."; - next; - mes "[Kris]"; - mes "Did you see...?"; - mes "As you gain experience,"; - mes "the experience gauge fills up."; - mes "Once it is 100 % full, you gain an experience level, and the gauge is reset to 0."; - set nov_get_item02,10; - switch (BaseLevel) { - case 1: getexp 10,0; break; - case 2: getexp 17,0; break; - case 3: getexp 26,0; break; - case 4: getexp 37,0; break; - case 5: getexp 78,0; break; - case 6: getexp 115,0; break; - case 7: getexp 155,0; break; - } - } - else { - mes "But..."; - mes "I guess you're already familiar with the Base Level experience gauge."; - } - next; - mes "[Kris]"; - mes "At the bottom of the Basic Info Window, you will see two different experience gauge bars. The top bar is for your current Base Level, and the bottom one displays experience for your current Job Level."; - next; - mes "[Kris]"; - mes "When the Job Level"; - mes "Experience bar is filled, you will earn a Job Level, and a ^3355FFSkill Point^000000. Skill Points are spent to learn skills for your character."; - next; - mes "[Kris]"; - mes "On the right side"; - mes "of the Basic Info window,"; - mes "you will see various"; - mes "Menu buttons."; - next; - mes "[Kris]"; - mes "Clicking these Menu buttons will open other Interface Windows, such as the Inventory Window"; - mes "or Party Window."; - next; - mes "[Kris]"; - mes "Now..."; - mes "The ^3355FFChat Window^000000 is"; - mes "located at the bottom"; - mes "of your screen."; - next; - mes "[Kris]"; - mes "At the bottom right of the Chat Window, you should see 2 blue buttons. The left button allows you to change your chatting options."; - next; - mes "[Kris]"; - mes "The '^3355FFSend to All^000000' option"; - mes "allows you to chat with"; - mes "everyone on your screen."; - next; - mes "[Kris]"; - mes "The '^3355FFSend to Party^000000' and '^3355FFSend to Guild^000000' options allows you to send messages to only members of your party or guild, regardless of how far they are."; - next; - mes "[Kris]"; - mes "You can drag the Scroll Bar"; - mes "on the right side of the Chat Window to review a conversation. Since the Chat Window is always active, you won't have any problem communicating with other players."; - next; - mes "[Kris]"; - mes "Now, one of the most important interfaces is the ^3355FFMini-Map^000000, located at the upper-right of your screen."; - next; - mes "[Kris]"; - mes "The red dots on the Mini-Map indicate locations of ^3355FFWarp Portals^000000 which connect to different zones."; - next; - mes "[Kris]"; - mes "If you've joined a party or a guild, the Mini-Map will also show you the location of your party or guild members if they are on the same map."; - next; - mes "[Kris]"; - mes "Please click the Menu buttons"; - mes "on the right side of your Basic Info window and familiarize yourself with the other interfaces."; - next; - mes "[Kris]"; - mes "Well, that was my brief overview on in-game interfaces. It might seem like a lot of information now, but it will soon become second nature."; - if (JobLevel < 7) { - next; - mes "[Kris]"; - mes "Let me give you a little bit of Job experience points. Open your Skill Window and distribute your Skill Points into ^3355FFBasic Skills^000000."; - set nov_get_item02,11; - switch (JobLevel) { - case 1: getexp 0,10; break; - case 2: getexp 0,18; break; - case 3: getexp 0,28; break; - case 4: getexp 0,40; break; - case 5: getexp 0,91; break; - case 6: getexp 0,151; break; - } - } - else { - mes "[Kris]"; - mes "Your Job Level is much higher than I had expected. You must already know the basic information by now."; - } - next; - mes "[Kris]"; - mes "Now, why don't you speak to Edwin? He will teach you more regarding the basic use of Skills. Ah, and let me give you a small present: a Tattered Novice Ninja Suit!"; - set nov_get_item02,12; - getitem 2352,1; //Novice_Plate - close; - case 2: - mes "[Kris]"; - mes "Let me guide you"; - mes "to the Field Combat"; - mes "Training Course."; - mes "You can come back any time if you feel that you need a review."; - close2; - warp "new_1-2",28,178; - end; - case 3: - emotion e_swt2; - close; - } + else if(job_novice_q == 7) { + mes "[Jinha]"; + mes "Hello!"; + mes "How can I help you?"; + next; + select("I want to learn the 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; + specialeffect2 58; + specialeffect2 234; + mes "[Jinha]"; + mes "It's recovery amount is small."; + mes "Still, it will help you not to faint from a critical hit."; + next; + skill 141,1,0; // NV_FIRSTAID + set job_novice_q,8; + mes "[Jinha]"; + mes "You can open the Skill Window by pressing the ^4A4AFFskill^000000 button in the Basic Window."; + mes "Hot Key is ^4A4AFFALT + S^000000."; + mes "Why don't you try the skill?"; + 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 (nov_get_item03 < 10) { - mes "[Kris]"; - mes "How may I help you?"; - mes "Can I see your proof of registration?"; - next; - mes "[Kris]"; - mes "It seems that you haven't attended the Skill Information class yet. Please talk to a tutor to the very left of this room to attend his class."; - next; - switch(select("Thank you!:I'm tired of classes~:Cancel")) { - case 1: - mes "[Kris]"; - mes "When you attend the Skill Information class, you'll gain a better understanding of the use of skills."; - next; - mes "[Kris]"; - mes "Since the use of skills is integral to survival in Rune-Midgard, I strongly suggest that you attend the class. Come, I shall guide you there."; + else if(job_novice_q == 8) { + 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; + if(select("I'm good by myself.:Please, send me to him.") == 2) { + mes "[Jinha]"; + mes "I will send you to Instructor Brade."; close2; - warp "new_1-2",84,107; + warp "new_1-2",100,100; end; - case 2: - mes "[Kris]"; - mes "I see. In that case, you must be ready for the Field Combat Training Course. Shall I send you there right away?"; - next; - if (select("No! W-wait!:Please do~!") == 1) { - mes "[Kris]"; - mes "...?!"; - mes "O...kay then."; - mes "Please come back"; - mes "when you're ready."; - close; - } - else { - mes "[Kris]"; - mes "Godspeed,"; - mes "young Novice."; - close2; - warp "new_1-2",28,178; - end; - } - case 3: - emotion e_swt2; - close; } + mes "[Jinha]"; + mes "Very Good!"; + mes "That's the right attitude!"; + mes "You will be a great adventurer in the future."; + close; } - else if (nov_get_item04 < 10) { - mes "[Kris]"; - mes "How may I help you?"; - mes "Can I see your proof of registration?"; - next; - mes "[Kris]"; - mes "It looks like you still haven't attended the Item Information class yet. Please speak to the tutor to the very right of this room to attend her class."; - next; - switch(select("Thank you.:I'm tired of classes~:Cancel")) { - case 1: - mes "[Kris]"; - mes "The Item Information class is very useful for you to learn how to use your Hot keys and Hot key bars. Come, let me guide you there."; - close2; - warp "new_1-2",115,107; - end; - case 2: - mes "[Kris]"; - mes "I see. In that case, you must be ready for the Field Combat Training Course. Shall I send you there right away?"; - next; - if (select("No! W-wait!:Please do~!") == 1) { - mes "[Kris]"; - mes "...?!"; - mes "O...kay then."; - mes "Please come back"; - mes "when you're ready."; - close; - } - else { - mes "[Kris]"; - mes "Godspeed,"; - mes "young Novice."; - close2; - warp "new_1-2",28,178; - end; - } - case 3: - emotion e_swt2; - close; - } + else if(job_novice_q > 8) { + mes "[Jinha]"; + mes "What can I do for you?"; + mes "Next course will be continued in the West Room."; + mes "Go on to the west room."; + close; + } + else { + mes "[Jinha]"; + mes "Why are you still here?"; + close2; + warp "prontera",156,90; + end; } } -new_1-2,83,111,3 script Skill Tutor#nv 753,{ - if (nov_get_item02 > 9 && nov_get_item03 > 9 && nov_get_item04 > 9) { - mes "[Cecil]"; - mes "Huh...?"; - mes "Did you need more help?"; - mes "I see that you've completed all the essential courses. Did you speak to the assistant tutors too?"; - next; - switch(select("Send me to the next course!:Assistant tutors?:Take me to a town!")) { - case 1: - mes "[Cecil]"; - mes "Ah! Right, right."; - mes "You've got to take on the Field Combat Training Course sometime, I suppose."; - next; - mes "[Cecil]"; - mes "Man, I'm so jealous of the instructors in the Field Combat Training Course. Teaching basic information is just soooo not as cool as beating stuff up."; - next; - mes "[Cecil]"; - mes "Ah, right."; - mes "Field Combat."; - mes "I'm sending you now."; - mes "Good luck, kid!"; +//============================================================================ +// People/Services in Ragnarok +//============================================================================ +// ---------- Chocolat ---------- +new_1-2,32,172,4 script Chocolat#nv 96,{ + if(job_novice_q < 9) { + mes "[Chocolat]"; + mes "Hmm? Strange."; + mes "Let me see that Traniee ID for a sec."; + next; + 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; + if(select("I will go myself.:Will you do that for me?") == 2) { + mes "[Chocolat]"; + mes "Sure."; + mes "I will see you later."; close2; - warp "new_1-2",28,178; + warp "new_1-2",100,100; end; - case 2: - mes "[Cecil]"; - mes "You know about the"; - mes "assistant tutors, don't you?"; - next; - mes "[Cecil]"; - mes "Listen. The three of tutors in this room only teach the most basic information. The courses we teach are meant to be passed quickly."; - next; - mes "[Cecil]"; - mes "But some people might benefit a little bit more if they learned some more detailed information."; - next; - mes "[Cecil]"; - mes "If you're completely new to Ragnarok, it couldn't hurt to attend the classes held by the assistant tutors at least once."; - next; - mes "[Cecil]"; - mes "A guy named Leo Handerson seems to know a lot about skills, so I think his knowledge would be useful to you."; - close; - case 3: - mes "[Cecil]"; - mes "A town...?"; - mes "What do I look like, your own personal Peco Peco?"; - next; - mes "[Cecil]"; - mes "That's right, you might be too young to know about that. Listen, if you want to move to a town, speak to the Kafra Lady to the right, okay?"; - close; } + mes "[Chocolat]"; + mes "Sure. Go out to the door to the right."; + close; } - if (nov_get_item03 < 10) { - mes "[Cecil]"; - mes ""+strcharinfo(0)+""; - mes "Heh, I like your name!"; - if (NEW_MES_FLAG0) { - mes "By the way, your proof of registration has expired, so let me give you a new one."; - mes "Let me give you a new one."; - set NEW_MES_FLAG0,0; - set NEW_MES_FLAG1,0; - set NEW_MES_FLAG2,0; - set NEW_MES_FLAG3,0; - set NEW_MES_FLAG4,0; - set NEW_MES_FLAG5,0; - set NEW_LVUP0,0; - set NEW_LVUP1,0; - set NEW_JOBLVUP,0; - } - mes "Then, shall we begin the class?"; - next; - switch(select("What do you teach?:I want Field Combat Training now!:Cancel")) { - case 1: - mes "[Cecil]"; - mes "I live for power"; - mes "and die for power!"; - mes "I shall teach you"; - mes "my famous fatal blow!"; - next; - mes "[Cecil]"; - mes "I'm just pulling your chain!"; - mes "I actually just teach you how to use your skills. I still live for power, though."; - next; - mes "[Cecil]"; - mes "In your Basic Info Window, click the ^3355FFSkill^000000 button to open your Skill Window. You can also press the '^3355FFAlt^000000' and '^3355FFS^000000' keys at the same time."; - next; - mes "[Cecil]"; - mes "When your"; - mes "Skill Window is open,"; - mes "you'll see an icon labeled"; - mes "'^3355FFBasic Skill^000000.'"; - if (JobLevel < 7) { - next; - mes "[Cecil]"; - mes "Now, at the bottom of the Skill Window, the number of remaining Skill Points that you have is displayed."; - next; - mes "[Cecil]"; - mes "Open your Skill Window ('Alt' + 'S') and click the '^3355FFLv Up^000000' button next to the Basic Skill icon to allocate a Skill Point to your Basic Skills."; - set nov_get_item03,10; - switch (JobLevel) { - case 1: getexp 0,10; break; - case 2: getexp 0,18; break; - case 3: getexp 0,28; break; - case 4: getexp 0,40; break; - case 5: getexp 0,91; break; - case 6: getexp 0,151; break; - } - } - else { - next; - mes "[Cecil]"; - mes "Huh. Actually, your Job Level is higher that I thought. I guess you already know the basics about skills then."; - } - next; - mes "[Cecil]"; - mes "So did you distribute the skill points to your Basic Skills? You'll need to master the Basic Skills eventually, so it's a good idea."; - next; - mes "[Cecil]"; - mes "For more detailed information on skills, go speak to Leo Handerson, one of the assistant tutors."; - next; - mes "[Cecil]"; - mes "Oh, I almost forgot!"; - mes "Let me teach you the ^3355FFFirst Aid^000000 skill. This skill will help you out a lot when you're in danger."; - next; - mes "^3355FFYou have learned"; - mes "the ^4A708BFirst Aid^3355FF skill.^000000"; - skill 142,1,0; //NV_FIRSTAID - set NOV_SK,3; - set nov_get_item03,11; - next; - if (JobLevel < 7) { - mes "^3355FFYou have gained a small"; - mes "amount of Job experience.^000000"; - set nov_get_item03,12; - switch (JobLevel) { - case 1: getexp 0,10; break; - case 2: getexp 0,18; break; - case 3: getexp 0,28; break; - case 4: getexp 0,40; break; - case 5: getexp 0,91; break; - case 6: getexp 0,151; break; - } - } - next; - mes "[Cecil]"; - mes "Now, open your Skill Window"; - mes "and check if you have the ^3355FFFirst Aid^000000 skill icon. To use it, you need to double-click that skill icon."; - mes "Now, try it!"; - percentheal -50,0; - next; - mes "[Cecil]"; - mes "Active skills, like First Aid, require a certain amount of SP to use them. The First Aid skill is useful for Novices, since it refills a little bit of HP."; - next; - mes "[Cecil]"; - mes "You've been"; - mes "a good student,"; - mes "so let me reward you!"; - if (BaseLevel < 8) { - mes "Behold: bonus experience!"; - set nov_get_item03,13; - switch (BaseLevel) { - case 1: getexp 10,0; break; - case 2: getexp 17,0; break; - case 3: getexp 26,0; break; - case 4: getexp 37,0; break; - case 5: getexp 78,0; break; - case 6: getexp 115,0; break; - case 7: getexp 155,0; break; - } - } - else { - next; - mes "[Cecil]"; - mes "Oh wait. You're much higher in level than I thought. Still, I'm proud of you!"; - } - next; - mes "[Cecil]"; - mes "Well, that's it for the essential fundamentals. If you want a more comprehensive lesson, you gotta speak to the assistant tutors."; - next; - switch(select("Okay.:Send me to Field Combat Training, now!:Cancel")) { - case 1: - mes "[Cecil]"; - mes "Everyone in the"; - mes "Training Grounds is"; - mes "more than willing to"; - mes "help you. Good luck!"; - close; - case 2: - mes "[Cecil]"; - mes "Heh heh~!"; - mes "Alright, practice makes perfect! Let me send you to the guys at Field Combat Training. Take care!"; - close2; - warp "new_1-2",28,178; - end; - case 3: - emotion e_omg; - close; - } - case 2: - mes "[Cecil]"; - mes "Heh heh~!"; - mes "Alright, practice makes perfect! Let me send you to the guys at Field Combat Training. Take care!"; - close2; - warp "new_1-2",28,178; - end; - case 3: - emotion e_omg; - close; - } + else if(job_novice_q == 9) { + 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] Agents standing right behind me and their rival company the [Cool Event]."; + mes "When you visit a town for the first time, you should talk to Information [Soldier]."; + next; + mes "[Chocolat]"; + mes "Well then, let's hear from each of them."; + mes "Start by talking to the [Kafra] agent."; + setquest 7121; + set job_novice_q,10; + close; } - else if (nov_get_item02 < 10) { - mes "[Cecil]"; - mes "So how may"; - mes "I help you?"; - mes "Whoa, you haven't attended the Basic Interface class yet? Oh well, I know that class is kinda boring~"; - next; - switch(select("Oh, I better take that class.:Send me to Field Combat Training.:Cancel")) { - case 1: - mes "[Cecil]"; - mes "Yeah, that's a good idea. After all, you'll gain experience and items while you take that class. Alright then, the Interfaces Tutor is in the center of this room. Go for it~"; - close; - case 2: - mes "[Cecil]"; - mes "Heh heh~!"; - mes "Alright, practice makes perfect! Let me send you to the guys at Field Combat Training. Take care!"; - close2; - warp "new_1-2",28,178; - end; - case 3: - emotion e_omg; - close; - } + else if(job_novice_q == 10) { + mes "[Chocolat]"; + mes "Here, talk to these guys standing behind me."; + mes "Start with the [Kafra] gal behind me."; + close; } - else if (nov_get_item04 < 10) { - mes "[Cecil]"; - mes "So how may"; - mes "I help you?"; - mes "Whoa, you haven't attended the Item Information class yet? Oh well, I know that class is kinda boring~"; - next; - switch(select("Oh, I better take that class.:Send me to Field Combat Training.:Cancel")) { - case 1: - mes "[Cecil]"; - mes "Yeah, that's a good idea. After all, you'll gain experience and items while you take that class. Alright then, the Item Tutor is on the far right side of this room. Go for it~"; - close; - case 2: - mes "[Cecil]"; - mes "Heh heh~!"; - mes "Alright, practice makes perfect! Let me send you to the guys at Field Combat Training. Take care!"; - close2; - warp "new_1-2",28,178; - end; - case 3: - emotion e_omg; - close; - } + else if(job_novice_q == 11) { + mes "[Chocolat]"; + mes "You've learned a lot about Kafra service huh?"; + mes "From now on, you can use the Kafra Server."; + next; + mes "[Chocolat]"; + mes "Next is Kafra's rival, [Cool Event] Staff!"; + mes "[Cool Event] Staff specialize in events."; + mes "Well, why don't you talk to him yourself?"; + close; } -} - -new_1-2,115,111,3 script Item Tutor#nv 726,{ - if (nov_get_item02 > 9 && nov_get_item03 > 9 && nov_get_item04 > 9) { - mes "[Alice]"; - mes "Huh...?"; - mes "Do you need help looking for someone? You seem to have completed all of the essential courses. Where do you need to go?"; - next; - switch(select("I'm not sure~!:Send me to a town.:Cancel")) { - case 1: - mes "[Alice]"; - mes "Hmm..."; - mes "You've learned everything else,"; - mes "so I guess the only thing left is Field Combat Training. Did you want to attend that class now?"; - next; - switch(select("Yes.:Oh, w-wait.")) { - case 1: - mes "[Alice]"; - mes "Make sure you keep the items I've given you handy, and that you equip all of your armor, alright? Now, take care."; - close2; - warp "new_1-2",28,178; - end; - case 2: - mes "[Alice]"; - mes "Okay, no problem."; - mes "Come to me when you"; - mes "need any help."; - close; - } - case 2: - mes "[Alice]"; - mes "Ah, I see."; - mes "If you want to move to a town, the Kafra Lady to the right of me will teleport you. Take care now~"; - close; - case 3: - mes "[Alice]"; - mes "Hmpf...!"; - close; - } + else if(job_novice_q == 12) { + mes "[Chocolat]"; + mes "After [Kafra] and [Cool Event], are the Information [Soldier]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 Soldier from the City of Prontera."; + mes "Ask him what he actually does in town."; + close; } - else if (nov_get_item04 < 10) { - enable_items; - mes "[Alice]"; - mes "^666666*Yawn~*^000000"; - mes "This is so boring."; - mes "Oh! Hello, you're new here."; - if (NEW_MES_FLAG0) { - mes "Ooh, your proof of registration was expired. But that's okay, I'll just give you a new one! There you go."; - set NEW_MES_FLAG0,0; - set NEW_MES_FLAG1,0; - set NEW_MES_FLAG2,0; - set NEW_MES_FLAG3,0; - set NEW_MES_FLAG4,0; - set NEW_MES_FLAG5,0; - set NEW_LVUP0,0; - set NEW_LVUP1,0; - set NEW_JOBLVUP,0; - } - mes "So, have you come to attend"; - mes "my Item Information class?"; - next; - switch(select("Yes!:No, thanks.:How do I get to a town?")) { - case 1: - mes "[Alice]"; - mes "Don't worry, it'll be short."; - mes "Open your Inventory Window"; - mes "through either the '^3355FFitems^000000' button in the Basic Info window, or by pressing the '^3355FFAlt^000000' and '^3355FFE^000000' keys at the same time."; - next; - mes "[Alice]"; - mes "In the Inventory Window, you'll see 3 tabs labeled ^3355FFitem^000000, ^3355FFequip^000000 and ^3355FFetc^000000. Items that can be consumed are under the ^4A708Bitem^000000 tab."; - next; - mes "[Alice]"; - mes "Now, would you click the ^4A708Bitem^000000 tab in the Inventory Window? I just gave you a Novice Potion. You can drink it by double-clicking it. Go ahead, try it!"; - set nov_get_item04,10; - getitem 569,1; //Novice_Potion - percentheal -50,0; - next; - mes "[Alice]"; - if (countitem(569) < 1) { - if (BaseLevel < 8) { - mes "Nice~!"; - mes "And here's"; - mes "a little reward"; - mes "just for listening."; - set nov_get_item04,11; - switch (BaseLevel) { - case 1: getexp 10,0; break; - case 2: getexp 17,0; break; - case 3: getexp 26,0; break; - case 4: getexp 37,0; break; - case 5: getexp 78,0; break; - case 6: getexp 115,0; break; - case 7: getexp 155,0; break; - } - } - else { - mes "Good job! I'd reward you with some more experience if your level weren't already this high."; - } - } - else { - mes "Um..."; - mes "Well, you can drink"; - mes "it later I guess."; - } - next; - mes "[Alice]"; - mes "Let me explain about"; - mes "items in the ^4A708Bequip^000000 tab"; - mes "of the Inventory Window."; - next; - mes "[Alice]"; - mes "When you click on the ^4A708Bequip^000000 tab, you can view every item in your inventory that you can equip. Let me give you some equipment so that you can try them on."; - next; - mes "[Alice]"; - mes "Got them? Good."; - mes "Now, double-click"; - mes "on the Novice Slippers"; - mes "I just gave you to"; - mes "put them on."; - set nov_get_item04,12; - getitem 2510,1; //Novice_Hood - getitem 2414,1; //Novice_Boots - getitem 5055,1; //Novice_Egg_Cap - next; - mes "[Alice]"; - if (isequipped(2414)) { - if (BaseLevel < 8) { - mes "Hooray~!"; - mes "You did it!"; - mes "You deserve a reward!"; - set nov_get_item04,13; - switch (BaseLevel) { - case 1: getexp 10,0; break; - case 2: getexp 17,0; break; - case 3: getexp 26,0; break; - case 4: getexp 37,0; break; - case 5: getexp 78,0; break; - case 6: getexp 115,0; break; - case 7: getexp 155,0; break; - } - } - else { - mes "Good job! I'd reward you with some more experience if your level weren't already this high."; - } - } - else { - mes "Er..."; - mes "You've got to"; - mes "double-click"; - mes "equipment to"; - mes "wear it. Just"; - mes "remember that, okay?"; - } - disable_items; - next; - mes "[Alice]"; - mes "Would you"; - mes "press the '^3355FFF12^000000' key?"; - mes "This will summon your"; - mes "Hotkey bar on your screen."; - next; - mes "[Alice]"; - mes "You can assign hotkeys to your items, skills and equipment using the Hotkey bar. Just drag skill icons from the Skill Window or items from the Inventory Window into the Hotkey bar."; - next; - mes "[Alice]"; - mes "The Hotkeys are '^3355FFF1^000000' to '^3355FFF9^000000.'"; - mes "If you have attended the Skill Class, you must have been given the First Aid skill. Drag and drop the First Aid skill icon into the Hotkey bar."; - next; - mes "[Alice]"; - mes "For your information, only"; - mes "active skills can be assigned to a Hotkey and dragged to the Hotkey bar. Active Skills have colored, square shaped icons that can be double-clicked and used."; - next; - mes "[Alice]"; - mes "Passive Skills, such as the aptly named 'Basic Skill,' cannot be dragged into the Hotkey bar because Passive Skills are always in effect and don't need to be activated."; - set nov_get_item04,14; - if (JobLevel < 7) { - switch (JobLevel) { - case 1: getexp 0,10; break; - case 2: getexp 0,18; break; - case 3: getexp 0,28; break; - case 4: getexp 0,40; break; - case 5: getexp 0,91; break; - case 6: getexp 0,151; break; - } - } - next; - mes "[Alice]"; - mes "Well, that's it!"; - mes "Let me supply you with some items"; - mes "that will help you during the Field Combat Training."; - next; - mes "[Alice]"; - mes "However, ^ff0000do not use the Fly Wing or Butterfly Wing^000000 in these Training Grounds or you could be stuck here forever. Those items are for when you graduate, okay?"; - set nov_get_item04,15; - getitem 601,10; //Wing_Of_Fly - getitem 602,2; //Wing_Of_Butterfly - getitem 569,50; //Novice_Potion - next; - mes "[Alice]"; - mes "And lastly..."; - if (JobLevel < 7) { - mes "I will give"; - mes "you some Job experience!"; - set nov_get_item04,16; - switch (JobLevel) { - case 1: getexp 0,10; break; - case 2: getexp 0,18; break; - case 3: getexp 0,28; break; - case 4: getexp 0,40; break; - case 5: getexp 0,91; break; - case 6: getexp 0,151; break; - } - } - else { - mes "I was gonna give you some job experience points, but I think you have enough job experience for now."; - } - next; - switch(select("Now what?:Send me to the actual fighting class!:Cancel")) { - case 1: - mes "[Alice]"; - mes "Why don't you walk around"; - mes "and talk to other tutors if you haven't already?"; - next; - mes "[Alice]"; - mes "Everyone in this training grounds is more than willing to help you."; - mes "Maybe you can venture around"; - mes "this area if you're bored."; - next; - mes "[Alice]"; - mes "The assistant tutors in the room to the right possess useful knowledge. There are also a few interesting places hidden within this area. Good luck!"; - close; - case 2: - mes "[Alice]"; - mes "What an enthusiastic Novice you are! Okay, I'll send you to the folks in charge of Field Combat Training. Make sure that you listen carefully to the trainers."; - next; - mes "[Alice]"; - mes "After all..."; - mes "When you're fighting monsters, it's a matter of life and death! Alright then, take care~"; - close2; - warp "new_1-2",28,178; - end; - case 3: - mes "[Alice]"; - mes "Hmpf!"; - close; - } - case 2: - mes "[Alice]"; - mes "Are you sure you really want to go into Field Combat Training? Have you spoken to every tutor? You better do that beforehand."; - next; - switch(select("No, no! Send me to the actual fight class!:Oh, wait!")) { - case 1: - mes "[Alice]"; - mes "What an enthusiastic Novice you are! Okay, I'll send you to the folks in charge of Field Combat Training. Make sure that you listen carefully to the trainers."; - next; - mes "[Alice]"; - mes "After all..."; - mes "When you're fighting monsters, it's a matter of life and death! Alright then, take care~"; - close2; - warp "new_1-2",28,178; - end; - case 2: - mes "[Alice]"; - mes "Now, that's a good decision. You won't get any many chances to get free stuff and experience in the future. You better make the most of this opportunity while you can!"; - close; - } - case 3: - mes "[Alice]"; - mes "If you want to go to a town, ask the Kafra Employee to the right. Alright then, take care~"; - close; - } + else if(job_novice_q == 13) { + mes "[Chocolat]"; + mes "How was the guide of the Information [Soldier]?"; + 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."; + completequest 7121; + getexp 300,0; + getexp 300,0; + getexp 300,0; + getexp 300,0; + getexp 300,0; + getexp 300,20; + getitem 7059,20; // Cargo_Free_Ticket + getitem 7060,30; // Warp_Free_Ticket + set job_novice_q,14; + 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; + savepoint "new_1-3",96,21; + warp "new_1-3",96,21; + end; } - else if (nov_get_item02 < 10) { - mes "[Alice]"; - mes "So how may"; - mes "I help you?"; - mes "Hmm, it seems that you haven't attended the Basic Interfaces class yet. Would you like to attend that class first?"; + else if(job_novice_q > 13) { + mes "[Chocolat]"; + mes "What can I do for you?"; next; - switch(select("I am going to attend that class.:Send me to Field Combat Training.:Cancel")) { - case 1: - mes "[Cecil]"; - mes "Excellent~"; - mes "You'll learn some essential stuff and gain experience and items as you take that class. The tutor for Basic Interfaces is in the center of this room. Now, go for it~"; - close; - case 2: - mes "[Alice]"; - mes "Are you sure you really want to go into Field Combat Training? Have you spoken to every tutor? You better do that beforehand."; - next; - switch(select("I want Field Combat Training~!:Oh, wait!")) { - case 1: - mes "[Alice]"; - mes "What an enthusiastic Novice you are! Okay, I'll send you to the folks in charge of Field Combat Training. Make sure that you listen carefully to the trainers."; - next; - mes "[Alice]"; - mes "After all..."; - mes "When you're fighting monsters, it's a matter of life and death! Alright then, take care~"; - close2; - warp "new_1-2",28,178; - end; - case 2: - mes "[Alice]"; - mes "Now, that's a good decision. You won't get any many chances to get free stuff and experience in the future. You better make the most of this opportunity while you can!"; - close; - } - case 3: - mes "[Alice]"; - mes "If you want to go to a town, ask the Kafra Employee to the right. Alright then, take care~"; - close; - } + select(""); + mes "[Chocolat]"; + mes "I will send you to the Real Combat Training Field right away."; + close2; + savepoint "new_1-3",96,21; + warp "new_1-3",96,21; + end; } - else if (nov_get_item03 < 10) { - mes "[Alice]"; - mes "So how may"; - mes "I help you?"; - mes "It looks like you still haven't attended the ^4d4dffthe Skill information class^000000 yet. Would you like to attend that class first?"; - next; - switch(select("I'll attend that class.:Send me to Field Combat Training.:Cancel")) { - case 1: - mes "[Alice]"; - mes "Now, that's a good idea. Please talk to Cecil, the tutor at the far left side of this room, okay?"; - close2; - warp "new_1-2",84,107; - end; - case 2: - mes "[Alice]"; - mes "Are you sure you really want to go into Field Combat Training? Have you spoken to every tutor? You better do that beforehand."; - next; - switch(select("I want Field Combat Training~!:Oh, wait!")) { - case 1: - mes "[Alice]"; - mes "What an enthusiastic Novice you are! Okay, I'll send you to the folks in charge of Field Combat Training. Make sure that you listen carefully to the trainers."; - next; - mes "[Alice]"; - mes "After all..."; - mes "When you're fighting monsters, it's a matter of life and death! Alright then, take care~"; - close2; - warp "new_1-2",28,178; - end; - case 2: - mes "[Alice]"; - mes "Now, that's a good decision. You won't get any many chances to get free stuff and experience in the future. You better make the most of this opportunity while you can!"; - close; - } - case 3: - mes "[Alice]"; - mes "If you want to go to a town, ask the Kafra Employee to the right. Alright then, take care~"; - close; - } + else { + mes "[Chocolat]"; + mes "Why are you still here?"; + close2; + warp "prontera",156,90; + end; } } -new_1-2,118,108,3 script Kafra Employee#nv1 117,{ - mes "[Kafra Employee]"; - mes "Welcome to"; - mes "Kafra Corporation."; - mes "The Kafra services are"; - mes "always on your side."; - if (NEW_MES_FLAG0) { - set NEW_MES_FLAG0,0; - set NEW_MES_FLAG1,0; - set NEW_MES_FLAG2,0; - set NEW_MES_FLAG3,0; - set NEW_MES_FLAG4,0; - set NEW_MES_FLAG5,0; - set NEW_LVUP0,0; - set NEW_LVUP1,0; - set NEW_JOBLVUP,0; + +// ---------- Kafra ---------- +new_1-2,29,176,4 script Kafra#nv 117,{ + if(job_novice_q < 10) { + mes "[Kafra Agent]"; + mes "Hello."; + mes "I don't think it's my turn yet."; + mes "Please talk to 'Chocolat' first."; + close; } - next; - mes "[Kafra Employee]"; - mes "I've been dispatched from Kafra Corporation Headquarters to assist new players such as yourself."; - next; - mes "[Kafra Employee]"; - mes "Please, take heed!"; - mes "If you move to a town"; - mes "^4d4dffyou will be unable to return to the Training Grounds ever again^000000."; - next; - if ( select("Teleport Service","About Kafra services") == 1 ) { - if (nov_get_item02 < 10 && nov_get_item03 < 10 && nov_get_item04 < 10) { - mes "[Kafra Employee]"; - mes "I see, you must want to teleport to a town in Rune-Midgard imediately. First, let me briefly inform you about the different towns and cities in Ragnarok."; - next; - mes "[Kafra Employee]"; - mes "Prontera is the capital of the Rune-Midgarts kingdom, and its satellite, Izlude, is closeby."; - next; - mes "[Kafra Employee]"; - mes "^996633Morroc^000000 is in the desert. It's the town where you can change your job to the Thief and Assassin classes."; - next; - mes "[Kafra Employee]"; - mes "^006600Payon^000000 is in the mountains, and is famous for its Archer Village, where Novices can change their jobs to Archers."; - next; - mes "[Kafra Employee]"; - mes "The city of magic, ^993300Geffen^000000, is where people go to become Mages and Wizards."; - next; - mes "[Kafra Employee]"; - mes "^003399Alberta^000000, the port city, is where the Merchant Guild is located. You must also go to Alberta if you wish to travel by sea."; - next; - mes "[Kafra Employee]"; - mes "Please choose"; - mes "your destination."; - next; - switch(select("Prontera:Morroc:Payon:Alberta:Geffen")) { - case 1: - set .@dest$,"Prontera"; - set .@mapn$,"prontera"; - set .@saveX,117; set .@saveY,72; - set .@warpX,150; set .@warpY,50; - break; - case 2: - set .@dest$,"Morroc"; - set .@mapn$,"morocc"; - set .@saveX,150; set .@saveY,99; - set .@warpX,155; set .@warpY,110; - break; - case 3: - set .@dest$,"Payon"; - set .@mapn$,"payon"; - set .@saveX,70; set .@saveY,100; - set .@warpX,166; set .@warpY,67; - break; - case 4: - set .@dest$,"Alberta"; - set .@mapn$,"alberta"; - set .@saveX,30; set .@saveY,232; - set .@warpX,114; set .@warpY,58; - break; - case 5: - set .@dest$,"Geffen"; - set .@mapn$,"geffen"; - set .@saveX,119; set .@saveY,37; - set .@warpX,122; set .@warpY,65; - break; - } - mes "[Kafra Employee]"; - mes "You have decided"; - mes "to go to "+.@dest$+"."; - mes "May God be with you."; - close2; - if (nov_get_item05 < 11) { - set nov_get_item05,11; - getitem 569,100; //Novice_Potion - getitem 1243,1; //Novice_Knife - getitem 2414,1; //Novice_Boots - getitem 2510,1; //Novice_Hood - getitem 2352,1; //Novice_Plate - getitem 2112,1; //Novice_Guard - getitem 601,10; //Wing_Of_Fly - getitem 602,2; //Wing_Of_Butterfly - getitem 7059,5; //Cargo_Free_Ticket - getitem 7060,5; //Warp_Free_Ticket - } - 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; - savepoint .@mapn$,.@saveX,.@saveY; - warp .@mapn$,.@warpX,.@warpY; - end; - } - else { - switch(select("Field Combat Course:Prontera:Morroc:Payon:Alberta:Geffen")) { - case 1: - mes "[Kafra Employee]"; - mes "Thank you, let"; - mes "me send you to the"; - mes "Field Combat Training Course."; - close2; - warp "new_1-2",28,178; - end; - case 2: - set .@dest$,"Prontera"; - set .@mapn$,"prontera"; - set .@saveX,117; set .@saveY,72; - set .@warpX,150; set .@warpY,50; - break; - case 3: - set .@dest$,"Morroc"; - set .@mapn$,"morocc"; - set .@saveX,150; set .@saveY,99; - set .@warpX,155; set .@warpY,110; - break; - case 4: - set .@dest$,"Payon"; - set .@mapn$,"payon"; - set .@saveX,70; set .@saveY,100; - set .@warpX,166; set .@warpY,67; - break; - case 5: - set .@dest$,"Alberta"; - set .@mapn$,"alberta"; - set .@saveX,30; set .@saveY,232; - set .@warpX,114; set .@warpY,58; - break; - case 6: - set .@dest$,"Geffen"; - set .@mapn$,"geffen"; - set .@saveX,119; set .@saveY,37; - set .@warpX,122; set .@warpY,65; - break; - } - mes "[Kafra Employee]"; - mes "You have decided"; - mes "to go to "+.@dest$+"."; - mes "May God be with you."; - close2; - if (nov_get_item05 < 11) { - set nov_get_item05,11; - getitem 7059,5; //Cargo_Free_Ticket - getitem 7060,5; //Warp_Free_Ticket - } - 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; - savepoint .@mapn$,.@saveX,.@saveY; - warp .@mapn$,.@warpX,.@warpY; - end; - } + else if(job_novice_q == 10) { + mes "[Kafra Agent]"; + 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 Rune Midgard continent."; + mes "It's important for you adventurers to be close with us."; + next; + mes "[Kafra Agent]"; + mes "I will inform you about the Kafra Services which you will be using most frequently, [Save], [Storage], and [Teleport] Services."; + next; + mes "[Kafra Agent]"; + mes "When you talk to a Kafra Agent and ask for the Save Service, the location of where you will revive, after being defeated in battle, will be changed."; + next; + mes "[Kafra Agent]"; + mes "Your Respawn Point is always the last place where you have saved."; + mes "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; + mes "[Kafra Agent]"; + mes "Next is the Storage Service."; + mes "You can store and retrieve your items in any town at your convenience."; + next; + mes "[Kafra Agent]"; + 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 Agent]"; + mes "Our convenient Storage Service is provided to our customers for a small fee which is different from town to town."; + mes "However, you must be at least ^4A4AFFBasic Skill Level 6^000000 to use the Storage."; + next; + mes "[Kafra Agent]"; + 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; + mes "[Kafra Agent]"; + mes "There are a maximum of 600 Inventory Slots in Kafra Storage, meaning you can have up to 600 different kinds of total items in Storage."; + next; + mes "[Kafra Agent]"; + mes "If you have a Premium Subscription, the maximum Inventory Slots in Kafra Storage is 600!"; + 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; + mes "[Kafra Agent]"; + mes "Storage is shared by everyone character on one account."; + mes "Storage Fees can vary for each Town."; + mes "So please keep that in mind when you are using our storage service."; + next; + mes "[Kafra Agent]"; + 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 Agent]"; + mes "With our veteran teleporter's skill, 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 Agent]"; + mes "This is all for your never ending support. We are working hard to repay our debt to our customers."; + next; + mes "[Kafra Agent]"; + mes "Do you want to hear another explanation?"; + set job_novice_q,11; + next; + goto L_ServiceMenu; } else { - mes "[Kafra Employee]"; - mes "Let me introduce you"; - mes "to the Kafra Services."; - mes "In the menu, please choose"; - mes "the service you'd like to"; - mes "learn more about."; + mes "[Kafra Agent]"; + mes "Kafra Service at your service"; + mes "What can I do for you?"; next; + select("About Kafra Service"); + mes "[Kafra Agent]"; + mes "I will explain about the Kafra Service."; + mes "Which service do you want to be informed about?"; + next; + goto L_ServiceMenu; + } + + L_ServiceMenu: while(1) { - switch(select("Save service:Storage service:Teleport service:Cart rental service:Cancel")) { + switch(select("About Save:About Storage:About Teleport:About Cart:No More.")) { case 1: - mes "[Kafra Employee]"; - mes "When you talk to a Kafra Employee and ask for the Save Service, the location of where you will revive, after being defeated in battle, will be changed."; + mes "[Kafra Agent]"; + mes "When you are killed in battle, you can revive in the location you saved with this service."; + mes "If you save at a Kafra in a village, you can revive in the village you saved."; 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"; - mes "last saved."; - next; - mes "[Kafra Employoee]"; - mes "The Save Service"; - mes "is also provided by"; - mes "the Kafra Corporation"; - mes "free of charge~!"; - if (nov_1st_cos < 20) { - set nov_1st_cos,20; - switch (BaseLevel) { - case 1: getexp 10,0; break; - case 2: getexp 17,0; break; - case 3: getexp 26,0; break; - case 4: getexp 37,0; break; - case 5: getexp 78,0; break; - case 6: getexp 115,0; break; - case 7: getexp 155,0; break; - } - } + mes "[Kafra Agent]"; + mes "Saved location is always where you saved last, and by using a Butterfly Wing, you can teleport directly to your saved point."; + mes "So feel free to use this service."; next; break; case 2: - mes "[Kafra Employee]"; - mes "The Kafra Corporation is the world's largest company with a long and distinguished history on the Rune-Midgard continent."; - next; - mes "[Kafra Employee]"; - mes "You can store and retrieve"; - mes "your items in any town at your convenience. This Storage is shared by every character on one account."; + mes "[Kafra Agent]"; + mes "Next is 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. Please use our Storage and keep your items safe and secure."; + mes "[Kafra Agent]"; + 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 "[Kafra Agent]"; + mes "Our convenient Storage Service is provided to our customers for a small fee which is different from town to town."; + mes "However, you must be at least ^4A4AFFBasic Skill Level 6^000000 to use the Storage."; next; - mes "[Kafra Employee]"; - mes "However, you must be"; - mes "at least ^3355FFBasic Skill Level 6^000000"; - mes "to use the Storage."; + mes "[Kafra Agent]"; + 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; - mes "[Kafra Employee]"; - mes "There are 3 different item sections of the Storage into which items are organized: Consumable, Equipment and Etc."; + mes "[Kafra Agent]"; + mes "There are a maximum of 600 Inventory Slots in Kafra Storage, meaning you can have up to 600 different kinds of total items in Storage."; next; - mes "[Kafra Employee]"; - mes "There are a maximum of 300 Inventory Slots in Kafra Storage, meaning you can have up to 300 different kinds of items in Storage."; + mes "[Kafra Agent]"; + mes "If you have a Premium Subscription, the maximum Inventory Slots in Kafra Storage is 600!"; + 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; - mes "[Kafra Employee]"; - mes "Remember though, that in the case of Equipment, each item takes up one Inventory Slot. The maximum number of items that can be placed in Kafra Storage is 30,000."; - if (nov_3_archer < 20) { - if (JobLevel < 7) { - set nov_3_archer,20; - switch (JobLevel) { - case 1: getexp 0,10; break; - case 2: getexp 0,18; break; - case 3: getexp 0,28; break; - case 4: getexp 0,40; break; - case 5: getexp 0,91; break; - case 6: getexp 0,151; break; - } - } - } + mes "[Kafra Agent]"; + mes "Storage is shared by everyone character on one account."; + mes "Storage Fees can vary for each Town."; + mes "So please keep that in mind when you are using our storage service."; next; break; case 3: - mes "[Kafra Employee]"; - mes "The Kafra Corporation"; - mes "provides our valued customers with a convenient Teleport Service which greatly cuts down on your"; - mes "traveling time."; + mes "[Kafra Agent]"; + 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 "Our Teleport Service is safe and comfortable, and will allow you to fully explore the various lands of the Rune-Midgard continent."; + mes "[Kafra Agent]"; + mes "With our veteran teleporter's skill, 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 "We thank our valued customers for their great support and continue to provide them with the best"; - mes "of service."; + mes "[Kafra Agent]"; + mes "This is all for your never ending support. We are working hard to repay our debt to our customers."; next; break; case 4: - mes "[Kafra Employee]"; - mes "The Kafra Corporation"; - mes "provides a Cart Rental Service to Merchants, as well as Blacksmiths and Alchemists."; - next; - mes "[Kafra Employee]"; - mes "The flamboyantly mysterious"; - mes "^CE6300Super Novice^000000 can use Carts, but we officially don't have a contract with that class. Still, somehow..."; + mes "[Kafra Agent]"; + mes "The Kafra corporation provides Cart rental services to customers engaged in commercial business."; + mes "Originally this cart rental service had been only provided by the merchant guild in Alberta."; next; - mes "[Kafra Employee]"; - mes "Anyway, Merchants, Blacksmiths and Alchemists must also learn the ^3355FFPush Cart^000000 skill in order to be able to rent a cart."; + mes "[Kafra Agent]"; + mes "However, since we took over this service, 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 such as ^4A4AFFMerchants, Blacksmiths, Alchemists, and Super Novices^000000."; next; - mes "[Kafra Employee]"; - mes "The Cart Rental service"; - mes "charge will differ from"; - mes "town to town."; + mes "[Kafra Agent]"; + mes "Of course you should learn the 'Pushcart' skill beforehand, otherwise you will not be able to rent a cart from us."; + mes "The rental fee varies by town, please keep that in mind."; next; break; case 5: - mes "[Kafra Employee]"; - mes "Thank you."; + mes "[Kafra Agent]"; + mes "I hope you are satisfied with my explanation about the Kafra Service."; close; } - } +} + +// ---------- Cool Event Staff ---------- +new_1-2,33,176,4 script Cool Event Staff#nv 874,{ + if(job_novice_q < 11) { + mes "[Cool Event Staff]"; + mes "This is not my turn."; + mes "You finished talking to Kafra yet?"; + close; + } + else if(job_novice_q == 11) { + mes "[Cool Event Staff]"; + mes "Hello."; + mes "We are working hard to provide events on Rune Midgard similar to the Kafra service."; + next; + mes "[Cool Event Staff]"; + mes "Our staff is here to support you with [storage], [save], and [teleport] services."; + next; + mes "[Cool Event Staff]"; + mes "If there's no Kafra around you, we're around to help you."; + next; + mes "[Cool Event 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 Staff]"; + mes "Who knows, we might meet outside of this academy."; + next; + mes "[Cool Event Staff]"; + mes "Mostly all of us wear red coats in the places that the Kafra Staff don't work for."; + set job_novice_q,12; + close; + } + else { + mes "[Cool Event Staff]"; + mes "Most of our services are similar to those of Kafra."; + close; } } -//Interface Assistant -new_1-2,161,182,5 script Instructor#nv 92,{ - mes "[Edwin]"; - mes "Welcome to my class."; - mes "Choose the subject you"; - mes "wish to learn more about."; - mes ""; - next; - while(1) { - switch(select("Basic Info Window:Party Window:Item Window:Option Window:Equipment Window:Cancel")) { - case 1: - mes "[Edwin]"; - mes "Let's take a look at"; - mes "the Basic Info Window,"; - mes "shall we?"; - next; - mes "[Edwin]"; - mes "Your name, job, Basic Level,"; - mes "and your Job Level are displayed in this window. ^800FFFBase level^000000 is your character's level."; - next; - mes "[Edwin]"; - mes "The ^800fffJob Level^000000 shown under the"; - mes "Base Level displays the Job level of your character. When you just start a job, you will be at"; - mes "Job Level 1."; - next; - mes "[Edwin]"; - mes "In the Basic Info window, your current experience points are displayed in the Base Level experience bar."; - next; - mes "[Edwin]"; - mes "Experience points in Ragnarok Online are indicated by percentage. Base and Job experience are separate from each other."; - next; - mes "[Edwin]"; - mes "When the Base Level or"; - mes "Job Level bar reaches 100 it will be raised by one level and the bar will then reset to 0 for the next level."; - next; - mes "[Edwin]"; - mes "HP stands for 'health points.'"; - mes "When your HP is reduced to 0, you will faint and be unable to fight. You can either return to your spawn point, or wait for someone to revive you."; - next; - mes "[Edwin]"; - mes "If you die in the fields or dungeons, you will receive"; - mes "a ^FF0000-1 % EXP penalty^000000, so be careful."; - next; - mes "[Edwin]"; - mes "SP stands for 'spell points.'"; - mes "When you become a 1st class, you will learn unique class skills of the class that will require SP to use. Your skill instructor can teach you more about skills."; - next; - mes "[Edwin]"; - mes "If you want to check the weight limit of the items you can carry, check the bottom left of the"; - mes "Basic Info window."; - next; - mes "[Edwin]"; - mes "The current weight of the items you are carrying will be displayed next to your maximum weight limit."; - next; - mes "[Edwin]"; - mes "If you carry over 50 % of your maximum weight limit, your HP and SP will not be restored by resting, so be careful."; - next; - mes "[Edwin]"; - mes "The numerical value next to the weight limit shows the current amount of Zeny, the currency of Rune-Midgard, that you possess."; - next; - mes "[Edwin]"; - mes "On the right side of the"; - mes "Basic Info Window is a series of buttons that will open other interface windows. Click them one by one, and check what you can do with them."; - next; - mes "[Edwin]"; - mes "The shortcut for minimizing and maximizing the Basic Info Window"; - mes "is '^3355FFAlt^000000 + ^3355FFV^000000.'"; - next; - break; - case 2: - mes "[Edwin]"; - mes "You can open the Party Window"; - mes "by clicking the ^3355FFfriend^000000 button in the Basic Info window. The shortcut for the Party Window is '^3355FFAlt^000000 + ^3355FFZ^000000.' You can use this window to check on the members of your party."; - next; - mes "[Edwin]"; - mes "The Party master can determine"; - mes "the distribution of EXP and items to the party. You can also check the location of your party members on the Mini-Map."; - next; - mes "[Edwin]"; - mes "In the Party Window, you can click on the ^3355FFFriend^000000 button to see your Friend List. You can use the"; - mes "Friend List to send whispers"; - mes "to your friends."; - next; - mes "[Edwin]"; - mes "You can ask your skill instructor to learn more about organizing parties. But I guess you can also just try that on your own."; - next; - break; - case 3: - mes "[Edwin]"; - mes "The item window is divided into"; - mes "3 sections: consumable items, equipment and other items."; - next; - mes "[Edwin]"; - mes "Your weight limit does limit the amount of items you can carry with you. When you're carrying too many things, place your extra stuff in Kafra Storage."; - next; - mes "[Edwin]"; - mes "Also, equipment and consumable items can also be assigned to a Hotkey through the Hotkey bar."; - next; - mes "[Edwin]"; - mes "The Hotkey window is opened by pressing ^3355FFF12^000000 key. The F1 to F9 keys are the designated hotkeys."; - next; - mes "[Edwin]"; - mes "There are total of 3 sets"; - mes "of Hotkeys. You can toggle"; - mes "between Hotkey sets by"; - mes "pressing the F12 button."; - next; - break; - case 4: - mes "[Edwin]"; - mes "You can open the Option Window"; - mes "by pressing the ^3355FFoption^000000 button in the Basic Info window. You can also press the '^3355FFAlt^000000 + ^3355FFO^000000' keys as well."; - next; - mes "[Edwin]"; - mes "In the Option Window, you can adjust sound, GUI skin, and the transparency of the skin."; - next; - mes "[Edwin]"; - mes "With the sound button, you can turn the background music on or off, as well as adjust the volume. The same can be done for the sound effects."; - next; - mes "[Edwin]"; - mes "With the Skin option, you can change the GUI skin for the in-game windows. Scroll through the list of the skins you have and choose"; - mes "a skin."; - next; - mes "[Edwin]"; - mes "You can also download official skins from our official website:"; - mes "^0000FFhttp://iro.ragnarokonline.com^000000"; - next; - mes "[Edwin]"; - mes "The Snap option allows your mouse cursor to automatically be placed on a target once it hovers within the target's vicinity."; - next; - mes "[Edwin]"; - mes "When you click to attack, your mouse cursor will automatically change into a sword shape. Skill and item targeting also work with the Snap function."; - next; - mes "[Edwin]"; - mes "It might be useful or awkward if you're not used to it. But once you're familiar with the Snap function, you will be able to adjust your own snap options."; - next; - mes "[Edwin]"; - mes "Well, it all depends on your experience. That's all for the Option Window."; - next; - break; - case 5: - mes "[Edwin]"; - mes "Click the ^3355FFequip^000000 button"; - mes "in your Basic Info Window,"; - mes "or just press the '^3355FFAlt^000000 + ^3355FFQ^000000' keys."; - next; - mes "[Edwin]"; - mes "In the Equipment Window,"; - mes "you will see the items currently equipped on your character. In the very beginning, every character is equipped with a Knife and"; - mes "a Cotton Shirt."; - next; - mes "[Edwin]"; - mes "There are 2 ways to change your equipment. Double-click equipment in the Inventory Window or click and drag an item into the"; - mes "Equipment Window."; - next; - mes "[Edwin]"; - mes "You can also assign equipment to Hotkeys. This can be down when you drag equipment from the Inventory into the Hotkey Window."; - mes "('^3355FFF12^000000' key)."; - next; - break; - case 6: - mes "[Edwin]"; - mes "If you have"; - mes "any questions,"; - mes "feel free to ask me~"; +// ---------- Soldier ---------- +new_1-2,36,176,4 script Soldier#nv 105,{ + if(job_novice_q < 12) { + mes "[Soldier]"; + mes "It isn't my turn yet."; + mes "Listen to Chocolat."; + close; + } + else if(job_novice_q == 12) { + mes "[Soldier]"; + mes "Soldiers 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 ^4A4AFF+^000000."; + mes "Don't hesitate to ask us questions."; + next; + mes "[Soldier]"; + 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 "[Soldier]"; + mes "If you want to go to your first town, you can do so once you have reached Base Level 11 in the training grounds."; + set job_novice_q,13; + close; + } + else { + mes "[Soldier]"; + mes "What can I help you with?"; + mes "Need me to explain what I do again?"; + next; + if(select("Yes, I need an explanation.:Nope") == 2) { + mes "[Soldier]"; + mes "Ok well talk to Chocolat if you're done talking with us."; close; } + mes "[Soldier]"; + mes "Soldiers 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 ^4A4AFF+^000000."; + mes "Don't hesitate to ask us questions."; + next; + mes "[Soldier]"; + 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 "[Soldier]"; + mes "If you want to go to your first town, you can do so once you have reached Base Level 11 in the training grounds."; + close; } } -new_1-2,182,182,3 script Somatology Instructor 754,{ - mes "[Jare Riotte]"; - mes "Welcome, new adventurer."; - mes "I, Jare Riotte will help you to learn about the fundamental"; - mes "rules of your Character Statuses."; - next; - mes "[Jare Riotte]"; - mes "Also known as 'Stats,'"; - mes "your statuses are the fundamental building blocks of your character."; - next; - mes "[Jare Riotte]"; - mes "I am willing to help you learn about the statuses more than anything else, so feel free to ask me about character statuses you"; - mes "may be wondering about."; - next; - mes "[Jare Riotte]"; - mes "In Ragnarok Online,"; - mes "the Character Statuses are Strength, Agility, Vitality, Intelligence, Dexterity and Luck."; - next; - mes "[Jare Riotte]"; - mes "I want my class to proceed"; - mes "according to your personal needs, so ask about the Status you wish to better understand. First, open your Status Window by using the '^3355FFAlt^000000 + ^3355FFA^000000' keys."; - next; - while(1) { - switch(select("Strength and Agility:Vitality and Intelligence:Dexterity and Luck:I do not wish to continue.")) { - case 1: - mes "[Jare Riotte]"; - mes "Let me explain Strength first."; - mes "^4D4DFFStrength (STR)^000000 increases"; - mes "^4D4DFFphysical attack damage (ATK) ^000000"; - mes "and your ^4D4DFF maximum weight limit^000000."; - next; - mes "[Jare Riotte]"; - mes "1 STR increases your physical attack damage by 1 point. A certain amount of attack damage bonus is given when the STR stat is increased to a multiple of 10."; - next; - mes "[Jare Riotte]"; - mes "The way the attack damage bonus is calculated is by taking the total strength value, removing the very last digit, and squaring the number you have left."; - next; - mes "[Jare Riotte]"; - mes "Let's say your attack is displayed as '48 + 1.' That's a total of 49 strength. When you remove the last digit, '9,' we are left with the number '4.' 4 multiplied by itself equals 16."; - next; - mes "[Jare Riotte]"; - mes "So the physical attack bonus is 16. Now, if you had a total of 50 STR, the attack bonus would be 25. And if your STR is 100, your attack bonus would be 100."; - next; - mes "[Jare Riotte]"; - mes "Okay, now let's move"; - mes "on to Agility (AGI)."; - mes "Agility affects your Flee Rate and Attack Speed. The higher your Flee Rate, the better chance you have of avoiding enemy attacks."; - next; - mes "[Jare Riotte]"; - mes "Your Flee Rate"; - mes "is equal to the number"; - mes "of your Base Level added"; - mes "to your AGI."; - next; - mes "[Jare Riotte]"; - mes "So if you have 40 AGI and you're at Base Level 30, your Flee Rate would be 70. It's so simple! Following the Flee Rate formula, your flee rate will be a total of 70."; - next; - mes "[Jare Riotte]"; - mes "Now, AGI only relates to normal Flee Rate. Perfect Dodge is another factor that determines success in dodging attacks, but we'll talk about that when we discuss"; - mes "the LUK stat."; - next; - mes "[Jare Riotte]"; - mes "Another benefit to increasing AGI is that your Attack Speed (ASPD) will also increase, meaning the time between your melee attacks will be reduced."; - next; - mes "[Jare Riotte]"; - mes "ASPD, however,"; - mes "differs by Job Class,"; - mes "so please remember that."; - next; - mes "[Jare Riotte]"; - mes "^666666*Whew!*^000000"; - mes "That's almost too"; - mes "much excitement for"; - mes "one day. Shall we move"; - mes "on to the next subject?"; - next; - break; - case 2: - mes "[Jare Riotte]"; - mes "Our next subject"; - mes "will be Vitality (VIT)"; - mes "and Intelligence (INT)."; - next; - mes "[Jare Riotte]"; - mes "^4D4DFFVitality^000000 affects the ^4D4DFFmaximum HP, amount of HP restoration and defense^000000. The amount of HP increased by VIT is differs by your job class."; - next; - mes "[Jare Riotte]"; - mes "Out of all the Job Classes, the Swordman class benefits most"; - mes "from increases in VIT."; - next; - mes "[Jare Riotte]"; - mes "Let's check defense."; - mes "On your stat window, your defense is displayed as DEF. Two numerical values are shown, and the second number reflects the addition to your defense by your VIT."; - next; - mes "[Jare Riotte]"; - mes "Now, the first number"; - mes "displayed in your Defense is the defense calculated from your Equipment and Armor."; - next; - mes "[Jare Riotte]"; - mes "Now, the equipment you wear reduces damage from enemies by a percentage of the total damage, where VIT reduces by a set amount. That's why Defense is displayed with two numbers."; - next; - mes "[Jare Riotte]"; - mes "The next subject"; - mes "is Intelligence (INT)."; - next; - mes "[Jare Riotte]"; - mes "INT affects your maximum amount of ^4D4DFFSP^000000, ^4D4DFFSP restoration^000000, the ^4D4DFF damage of your magic attack (MATK)^000000 and your ^4D4DFFdefense against magic attack (MDEF)^000000."; - next; - mes "[Jare Riotte]"; - mes "The SP amount and MATK increased"; - mes "by 1 INT is dependent on Job Class, just like VIT. This means that some Jobs will naturally benefit more from having more INT than others."; - next; - mes "[Jare Riotte]"; - mes "Just like normal DEF, your Magic Defense (MDEF) shows as 2 different numerical values. The MDEF contributed by INT is the second MDEF value displayed."; - next; - mes "[Jare Riotte]"; - mes "In order to study manipulation of the natural elements, you should prioritize on having intelligence. Therefore, Sages and Wizards"; - mes "focus on the INT stat."; - next; - break; - case 3: - mes "[Jare Riotte]"; - mes "Our last subject"; - mes "is Dexterity (DEX)"; - mes "and Luck (LUK)."; - next; - mes "[Jare Riotte]"; - mes "Dexterity mainly affects your accuracy, attack speed (ASPD)"; - mes "and your average attack strength."; - next; - mes "[Jare Riotte]"; - mes "Let me explain..."; - mes "If you have low DEX, the difference between the minimum damage and"; - mes "the maximum damage you can inflict becomes huge. The damage of your attacks becomes unstable."; - next; - mes "[Jare Riotte]"; - mes "If you are using a ^4D4DFFBow^000000 as your"; - mes "main weapon, your attack strength will be based on^4D4DFFDEX^000000. So Archers should focus on increasing their DEX."; - next; - mes "[Jare Riotte]"; - mes "The amount of DEX that you"; - mes "have will also affect your attack accuracy. Attack accuracy is calculated by the number of your Base Level added to your DEX."; - next; - mes "[Jare Riotte]"; - mes "For example, if you are at"; - mes "Base Level 40 and have 20 DEX,"; - mes "your attack accuracy would be 60."; - next; - mes "[Jare Riotte]"; - mes "Finally, DEX also reduces the casting time of spells and skills. Therefore, having some DEX would"; - mes "be handy for Mages and Wizards."; - next; - mes "[Jare Riotte]"; - mes "Now, let me tell"; - mes "you about the LUK stat."; - next; - mes "[Jare Riotte]"; - mes "Luck (LUK) affects the chance"; - mes "for a critical attack, the Flee Rate and a small amount of damage you deal to monsters."; - next; - mes "[Jare Riotte]"; - mes "For a critical attack, the start value is 1 for everyone and it's increased by^4d4dff 1^000000 for every ^4d4dff3 LUK^000000."; - next; - mes "[Jare Riotte]"; - mes "With more LUK, you have an increased change of inflicting ^3355FFcritical attacks^000000 to your enemies. Critical attacks are useful to you, as they pierce your enemy's defense."; - next; - mes "[Jare Riotte]"; - mes "You can tell you've performed a critical attack when an attack has inflicted more damage than usual to an enemy, and the damage number is displayed with an explosive red visual effect."; - next; - mes "[Jare Riotte]"; - mes "For every 10 LUK, you add 1 point to your Perfect Dodge rate. Perfect Dodge is sort of like your Flee Rate. When you perform a Perfect Dodge, the word '^FF7F00Lucky^000000' will appear over your head."; - next; - mes "[Jare Riotte]"; - mes "Although similar to your Flee Rate, Perfect Dodge is a separate factor in attack evasion that is calculated differently."; - next; - mes "[Jare Riotte]"; - mes "Well, I must say,"; - mes "Luck is a good thing to have, but that doesn't mean you need it before everything else."; - next; - break; - case 4: - mes "[Jare Riotte]"; - mes "Do you have any"; - mes "other questions?"; - mes "I hope my class"; - mes "was helpful to you."; +//============================================================================ +// Instructor Brade (Real Combat Training) +//============================================================================ +- script Brade#nv::NvBrade 733,{ + if(job_novice_q < 14) { + mes "[Brade]"; + mes "How did you get here?"; + close2; + warp "new_1-2",100,100; + end; + } + else if(job_novice_q == 14) { + mes "[Brade]"; + mes "Welcome."; + mes "Now this is real practice."; + mes "We can practive 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 "^4A4AFFIf you hold down the Ctrl key,^000000"; + mes "while attacking, you will automatically attack."; + next; + mes "[Brade]"; + mes "You can also set this mode before battle by typing ^4A4AFF[ /nc ]^000000."; + next; + mes "[Brade]"; + mes "Then, let's go Poring hunting."; + mes "Please hunt Poring's on Level 1 of the training grounds."; + setquest 7122; + set job_novice_q,15; + getitem 569,100; // Novice_Potion + next; + mes "^4A4AFF- You've received a quest from Instructor Brade.^000000"; + mes "^4A4AFFPlease check the quest information window. -^000000"; + close; + } + else if(job_novice_q == 15) { + if(checkquest(7122,HUNTING) == 2) { + mes "[Brade]"; + mes "You can see it is not so hard, right?"; + mes "Nice job."; + getitem 13040,1; // N_Cutter + getexp 1000,0; + getexp 1000,0; + getexp 1000,30; + completequest 7122; + set job_novice_q,16; + next; + 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."; + close; + }else{ + mes "[Brade]"; + mes "Kill enough Porings."; + mes "Porings are easy to deal with, so cheer up."; + mes "Try again."; + percentheal 100,100; + skilleffect 28,9999; 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, if you want to learn more, then speak to the Eden Group girl next to the Trainers."; + 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."; + percentheal 100,100; + skilleffect 28,9999; + close; + } } -new_1-2,184,172,1 script Understandings of Skills 47,{ - mes "[Leo Handerson]"; - mes "Welcome~"; - mes "Oh look at this"; - mes "cute little Novice~!"; - next; - mes "[Leo Handerson]"; - mes "I, Leo Handerson,"; - mes "feel so responsible for your performance and will be teaching you to the best of my ability. Now, please select the subject you wish to learn."; - emotion e_kis; +new_1-3,96,30,4 duplicate(NvBrade) Brade#nv1 733 +new_2-3,96,30,4 duplicate(NvBrade) Brade#nv2 733 +new_3-3,96,30,4 duplicate(NvBrade) Brade#nv3 733 +new_4-3,96,30,4 duplicate(NvBrade) Brade#nv4 733 +new_5-3,96,30,4 duplicate(NvBrade) Brade#nv5 733 + +//============================================================================ +// Job Guides (Real Combat Training) +//============================================================================ +// ---------------------------- Swordman Guide ------------------------------- +- script Swordman Guide#nv::NvSwd 728,{ + if(job_novice_q < 16) { + mes "[Swordman Guildsman]"; + mes "I won't help you until you finish Brade's intructions."; + close; + } + else if(checkquest(7123,HUNTING) != 2) { + mes "[Swordman Guildsman]"; + mes "Hunt two Picky monsters."; + mes "You can find them in the more difficult training grounds by talking to Trainer Brutus."; + close2; + } + else 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 1000,0; + getexp 1000,0; + getexp 1000,0; + getexp 1000,0; + getexp 1000,100; + close2; + } + mes "[Swordman Guildsman]"; + mes "Can I help you?"; next; - while(1) { - switch(select("Passive and Active skills:Basic Skills:Use of Emoticons:Cancel.")) { - case 1: - mes "[Leo Handerson]"; - mes "First, let me explain"; - mes "about the Passive Skills."; - mes "Would please you open"; - mes "your Skill Window?"; - mes "('^3355FFAlt^000000' + '^3355FFS^000000')"; - next; - mes "[Leo Handerson]"; - mes "Now, you know that whenever"; - mes "your Job Level goes up, you earn"; - mes "a ^3355FFSkill Point^000000, right? Skill Points are used to learn your skills~"; - next; - mes "[Leo Handerson]"; - mes "Do you see your Basic Skill icon? It's at the very top of the Skill Window. Click on the 'Lv Up' button next to the Basic Skill icon to use a Skill Point on Basic Skills."; - next; - mes "[Leo Handerson]"; - mes "You'll see to the word 'Passive'"; - mes "to the right of the Basic Skill icon. That means this skill is Passive, and doesn't use any SP."; - next; - mes "[Leo Handerson]"; - mes "Now, please right-click the Basic Skill icon. You will then be able to read a brief description of the Basic Skills."; - next; - mes "[Leo Handerson]"; - mes "Active Skills, unlike Passive Skills which don't use any SP, require SP each time that"; - mes "they are used."; - next; - mes "[Leo Handerson]"; - mes "You can use an Active Skill by double-clicking its icon in your Skill Window."; - next; - mes "[Leo Handerson]"; - mes "You can also drag a skill icon from your Skill Window, and drop it into your Hotkey bar ('^3355FFF12^000000' key) to assign a Hotkey to that skill."; - next; - mes "[Leo Handerson]"; - mes "The amount of SP required"; - mes "to use an Active Skill will be displayed to the right of that skill's icon."; - next; - mes "[Leo Handerson]"; - mes "Generally, Passive Skills are skills related to mental or physical training and conditioning. The use of special abilities or attacks are Active Skills."; - next; - mes "[Leo Handerson]"; - mes "If you're still not"; - mes "sure about my lesson,"; - mes "I'm willing to go over"; - mes "it once again."; - next; - break; - case 2: - mes "[Leo Handerson]"; - mes "The Basic Skills are"; - mes "purely Passive Skills"; - mes "that you need to play"; - mes "Ragnarok Online."; - mes "Don't worry,"; - mes "they're easy to learn."; - next; - mes "[Leo Handerson]"; - mes "When you right-click with your mouse in your Skill Window"; - mes "('^3355FFAlt^000000' + '^3355FFS^000000'), you can check the descriptions of the skills, but I've prepared this lesson for"; - mes "your better understanding."; - next; - while(1) { - switch(select("Trade and Exchange:Organizing & Joining party:Opening Chat Room:Storage Use:No thanks, I know this already.")) { - case 1: - mes "[Leo Handerson]"; - mes "When you go visit our official website at ^0000FFiro.ragnarokonline.com^000000, you can find a full explanation about trading, illustrated with pictures."; - next; - mes "[Leo Handerson]"; - mes "In order to trade items"; - mes "or zeny with other people,"; - mes "you must learn at least ^3355FFBasic Skill Level 1^000000."; - next; - mes "[Leo Handerson]"; - mes "When you trade, you must be"; - mes "located close to the person with which you wish to exchange items or zeny. Otherwise, the trade will not work if that person is more than 2 cells away."; - next; - mes "[Leo Handerson]"; - mes "Right-click on the person"; - mes "once and a small menu will appear."; - mes "From this menu, choose:"; - mes "^800fffRequest a deal with^000000."; - next; - mes "[Leo Handerson]"; - mes "Afterwards, that person will"; - mes "choose whether or not to accept your request. If your trade request is accepted, the Trade Window will appear."; - next; - mes "[Leo Handerson]"; - mes "To trade items, drag items from your Inventory Window ('^3355FFAlt^000000' + '^3355FFE^000000') and drop them into the left side of the Trade Window."; - next; - mes "[Leo Handerson]"; - mes "Items given by the other person will appear in the right side of the Trade Window. Always check"; - mes "if the other person is trading the items you have agreed to exchange."; - next; - mes "[Leo Handerson]"; - mes "To trade Zeny, you can enter the amount of Zeny you want to trade. After placing items or Zeny into the Trade Window, press the 'OK' button at the bottom of the Window to confirm the trade."; - next; - mes "[Leo Handerson]"; - mes "Once the trade is confirmed,"; - mes "press the 'Trade' button to finish the trade. If either of the traders do not press the 'OK' button, the trade cannot be completed."; - next; - mes "[Leo Handerson]"; - mes "If either of the traders presses the 'Cancel' button to the right of the window, the trade will be cancelled."; - next; - break; - case 2: - mes "[Leo Handerson]"; - mes "Now, let me explain"; - mes "about the Party System."; - next; - mes "[Leo Handerson]"; - mes "The Party system allows"; - mes "you to organize a small group with people in order to cooperatively hunt monsters, or just to have fun together."; - next; - mes "[Leo Handerson]"; - mes "You can organize"; - mes "a party by typing"; - mes "the command:"; - mes "^4F4FFF//organize ''Party Name''^000000"; - mes "in your Chat Window."; - next; - mes "[Leo Handerson]"; - mes "Of course, you"; - mes "must be at least"; - mes "^4d4dffBasic Skill Level 7^000000"; - mes "or above to use the Party System."; - next; - mes "[Leo Handerson]"; - mes "I could explain more about"; - mes "the distribution of items or the distribution of experience which party members have gained together, but it's that you try that out on your own later on."; - next; - mes "[Leo Handerson]"; - mes "That's all for"; - mes "the Party System~"; - mes "An adorable Novice"; - mes "like you should pick"; - mes "on this really quickly~"; - emotion e_kis; - next; - break; - case 3: - mes "[Leo Handerson]"; - mes "When you have"; - mes "^4D4DFFLevel 4 Basic Skill^000000"; - mes "or above, you can open your own Chat Room. You can either click"; - mes "the ^3355FFchat^000000 button in the Basic Info Window or just press '^3355FFAlt^000000' + '^3355FFC^000000.'"; - next; - mes "[Leo Handerson]"; - mes "Once you open a Chat Room,"; - mes "you can check the chat room members' information by right-clicking on a character name."; - next; - mes "[Leo Handerson]"; - mes "Also you can register that character as your friend in the same way. If you are the master"; - mes "of the room, you can change"; - mes "the room setup."; - next; - mes "[Leo Handerson]"; - mes "While in the Chat Room,"; - mes "you cannot hear any chat from outside of the Chat Room. Please remember that, okay?"; - next; - break; - case 4: - mes "[Leo Handerson]"; - mes "Kafra Employees of the"; - mes "Kafra Corporation are scattered throughout the world, providing their convenient services and Storage."; - next; - mes "[Leo Handerson]"; - mes "In fact, there's a Kafra Employee just outside of this room. Talk to her, and she'll be more than happy to fully explain Kafra's Services."; - next; - mes "[Leo Handerson]"; - mes "Anyway, you are"; - mes "allowed to use your"; - mes "^4d4dffpersonal Kafra Storage^000000"; - mes "at ^4D4DFFBasic Skill Level 6^000000 or above."; - next; - mes "[Leo Handerson]"; - mes "When you carry too many items with you, your weight becomes too heavy and you won't be able to restore HP or SP by resting, or even fight monsters! So store what you don't need into Kafra Storage."; - next; - break; - case 5: - mes "[Leo Handerson]"; - mes "Oh, do you?"; - mes "As I expected,"; - mes "you're as smart"; - mes "as you are cute~!"; - mes "I, Leo, am very impressed."; - next; - set .@end,1; - } - if (.@end) break; + switch(select("About Swordman Class.:Job change to Swordman.:Got any quests?:Cancel.")) { + case 1: + mes "[Swordman Guildsman]"; + mes "Literally, Swordman means one, who is specialized in wielding swords."; + mes "But they can also choose to use spears if they so choose."; + next; + mes "[Swordman Guildsman]"; + mes "We possess strong physical strength."; + mes "So naturally we can equip heavy armors and weapons."; + mes "Most weapon classes, except for bows and rods, 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 ^8C2121Knight^000000 or ^8C2121Crusader^000000 class as your 2nd class profession."; + mes "And just recently third professions have been discovered."; + if(countitem(2819) == 0 && (getequipid(EQI_ACC_L) != 2819 || getequipid(EQI_ACC_R) != 2819)) { + next; + 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; + if(select("I'll try the Swordman skills.:No Thanks.") == 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; } - mes "[Leo Handerson]"; - mes "Do you wish to"; - mes "learn more about"; - mes "a different subject?"; - next; - break; - case 3: - mes "[Leo Handerson]"; - mes "^4d4dffEmoticons^000000 are commonly used"; - mes "online for ^4D4DFFdisplaying your feelings^000000. It's a fun way of communicating!"; - next; - mes "[Leo Handerson]"; - mes "You must first be at"; - mes "^4D4DFFBasic Skill Level 2^000000"; - mes "or above to use emoticons."; - next; - mes "[Leo Handerson]"; - mes "You can check the"; - mes "Emotion icon List"; - mes "('^3355FFAlt^000000' + '^3355FFL^000000') and click each icon to see the command to display"; - mes "the emoticon."; - next; - mes "[Leo Handerson]"; - mes "You can also register"; - mes "emoticons into your Shortcut List ('^3355FFAlt^000000' + '^3355FFM^000000') so you can just use a Shortcut to use an emoticon. This is also fully explained on our official website as well."; - next; - mes "[Leo Handerson]"; - mes "Ah~ I must say,"; - mes "the honest expression"; - mes "of one's feelings is essential"; - mes "for a relationship."; - next; - mes "[Leo Handerson]"; - mes "You can play"; - mes "Rock, Paper, Scissors"; - mes "by pressing the '^4D4DFFCtrl^000000' and the '^4D4DFF - ^000000,' '^4D4DFF = ^000000,' or '^4D4DFF \\ ^000000' keys."; - next; - mes "[Leo Handerson]"; - mes "Of course, you can type ^4D4DFF//bawi^000000, ^4D4DFF//bo^000000 and ^4D4DFF//gawi^000000, which mean rock, paper, scissors in Korean, into your Chat Window."; - next; - mes "[Leo Handerson]"; - mes "To check out the commands for even more emoticons, type the command ^4d4dff//emotion^000000 into your Chat Window to see the list~"; - emotion e_lv; - next; - break; - case 4: - mes "[Leo Handerson]"; - mes "I see..."; - mes "You don't need me"; - mes "anymore! Oh! They"; - mes "grow up so fast"; - mes "nowadays!"; + mes "[Swordman Guildsman]"; + mes "Here is the Swordman manual."; + mes "I'll just take any manuals from any other classes you have."; + next; + mes "[Swordman Guildsman]"; + mes "Here is the Swordman manual."; + mes "I'll just take any manuals from any other classes you have."; + nude; + if(countitem(2820) > 0) delitem 2820,1; // Thief_Manual + if(countitem(2821) > 0) delitem 2821,1; // Acolyte_Manual + if(countitem(2822) > 0) delitem 2822,1; // Archer_Manual + if(countitem(2823) > 0) delitem 2823,1; // Merchant_Manual + if(countitem(2824) > 0) delitem 2824,1; // Mage_Manual + getitem 2819,1; // Swordsman_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 "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 Guild 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 Guild?"; + next; + if(select("I'll consider it again.:I'll go to the Swordman Guild.") == 2) { + mes "[Swordman Guildsman]"; + mes "I see."; + mes "Then I'll end your training process and send you to the Swordman Guild."; + close2; + if(checkquest(7123) == 0 || checkquest(7123) == 1) { erasequest 7123; } + if(checkquest(7124) == 0 || checkquest(7124) == 1) { erasequest 7124; } + if(checkquest(7126) == 0 || checkquest(7126) == 1) { erasequest 7126; } + if(checkquest(7127) == 0 || checkquest(7127) == 1) { erasequest 7127; } + nude; + if(countitem(2819) > 0) delitem 2819,1; // Swordsman_Manual + if(countitem(2820) > 0) delitem 2820,1; // Thief_Manual + if(countitem(2821) > 0) delitem 2821,1; // Acolyte_Manual + if(countitem(2822) > 0) delitem 2822,1; // Archer_Manual + if(countitem(2823) > 0) delitem 2823,1; // Merchant_Manual + if(countitem(2824) > 0) delitem 2824,1; // Mage_Manual + savepoint "izlude",93,104; + warp "izlude_in",74,167; + end; + } + 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 3: + if(checkquest(7123,HUNTING) != 2) { + 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(checkquest(7123) == 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 goodluck."; + close; + } + else{ + 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 "^4A4AFFYou received a hunting request from a staff of the Swordman Guild.^000000"; + mes "^4A4AFFYou 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 ^4A4AFFAlt + S^000000 and minimize the window by pressing the '-' 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; + } + 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-2,121,101,2 script Guide Soldier#nv1 105,{ - mes "[Guide Soldier]"; - mes "We Guide Soldiers provide location information at the entrance of every town. You can easily find us by our special uniforms."; - next; - mes "[Guide Soldier]"; - mes "Whenever you visit a town"; - mes "for the first time, we would like to recommend that you check the locations of notable places in town with us."; - next; - mes "[Guide Soldier]"; - mes "If you wish to take an Informative class, please walk around and speak to the various tutors in these Training Grounds. Have a good day."; - close; -} +new_1-3,97,41,4 duplicate(NvSwd) Swordman Guide#nv1 728 +new_2-3,97,41,4 duplicate(NvSwd) Swordman Guide#nv2 728 +new_3-3,97,41,4 duplicate(NvSwd) Swordman Guide#nv3 728 +new_4-3,97,41,4 duplicate(NvSwd) Swordman Guide#nv4 728 +new_5-3,97,41,4 duplicate(NvSwd) Swordman Guide#nv5 728 -new_1-2,17,182,5 script Helper#nv 84,{ - if (nov_2nd_cos < 11) { - mes "[Elmeen]"; - mes "Congratulations!"; - mes "You have passed the 1st training course! Wow~ I guess now you understand a little bit more about Ragnarok Online."; - next; - mes "[Elmeen]"; - mes "You will learn the fundamentals of actual battle through this class. If you did your best through the Informative class, you are supposed to have been given some starting equipment."; - next; - mes "[Elmeen]"; - mes "Please check your"; - mes "equipment before you engaging in battle. Are you sure you've equipped all of your equipment, your weapons and armor?"; - next; - switch(select("Yes:No")) { - case 1: - mes "[Elmeen]"; - mes "First, you place the cursor on a monster. When you left click, you will hit the monster once."; - next; - mes "[Elmeen]"; - mes "If you are too lazy to keep left clicking, left click on the monster while holding the '^4D4DFFCtrl^000000' key. You will then continue attacking the monster until one of you is dead, or you run away."; - next; - mes "[Elmeen]"; - mes "You can also just hold down the left mouse button while the cursor is on the monster. Still, there are some people who are even too lazy to use the '^4D4DFFCtrl^000000' key every time they attack a monster."; - next; - mes "[Elmeen]"; - mes "If you're one of them, type the command ^E79E29//nc^000000 in your Chat Window. Then, when you left click"; - mes "a monster, you'll just continuously attack it!"; - next; - mes "[Elmeen]"; - mes "If a monster happens to have the Undead property, you can use the 'Heal' skill to attack if you happen to have it."; - next; - mes "[Elmeen]"; - mes "When you use the Heal skill while holding down the '^4D4DFFShift^000000' key, you can target the monster with the Heal skill to damage it."; - next; - mes "[Elmeen]"; - mes "Of course for this skill, we do have a very convenient option for lazy people too. Type the command ^E79E29//ns^000000 in your Chat Window."; - next; - mes "[Elmeen]"; - mes "This will allow you to attack monsters by using the Heal skill without holding the shift key. Handy, huh?"; - next; - mes "[Elmeen]"; - mes "Do you understand these battle commands? Now, I will teaching you about monster behaviors and properties, experience gained through battle, and items you can earn from dead monsters."; - next; - mes "[Elmeen]"; - mes "Field Combat Training can be actually be pretty dangerous for new adventurers. Let me give you"; - mes "a little more strength through the power of my magic."; - next; - mes "[Elmeen]"; - mes "Haaaaaaa~!"; - if (nov_2nd_cos < 1) { - if (BaseLevel == 1) { - set nov_2nd_cos,12; - getexp 9,0; - } - else if (BaseLevel == 2) { - set nov_2nd_cos,13; - getexp 16,0; - } - else if (BaseLevel == 3) { - set nov_2nd_cos,14; - getexp 25,0; - } - else if (BaseLevel == 4) { - set nov_2nd_cos,15; - getexp 36,0; - } - else if (BaseLevel == 5) { - set nov_2nd_cos,16; - getexp 77,0; - } - else if (BaseLevel == 6) { - set nov_2nd_cos,17; - getexp 112,0; - } - else if (BaseLevel >= 7) { - set nov_2nd_cos,18; - getexp 153,0; - } +// ---------------------------- Mage Guide ---------------------------------- +- script Mage Guide#nv::NvMag 123,{ + if(job_novice_q < 16) { + mes "[Mage Guide]"; + mes "You are still in the process of training with Instructor Brade."; + close; + } + else if(checkquest(7124,HUNTING) != 2) { + mes "[Mage Guide]"; + mes "The quest is that you have to hunt Lunatics and bring 5 clovers."; + close2; + } + else if(checkquest(7124,HUNTING) == 2) { + mes "[Mage Guide]"; + 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 1000,0; + getexp 1000,0; + getexp 1000,0; + getexp 1000,0; + getexp 1000,100; + close2; + } + mes "[Mage Guide]"; + 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 Guide]"; + 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 Guide]"; + mes "However they cannot equip other weapons but staffs and books."; + mes "Because they are too delicate to carry heavy weapons."; + next; + mes "[Mage Guide]"; + mes "But they can cover this weakness by their remarkable magic skills."; + mes "That is why many people want to become a Mage!"; + next; + mes "[Mage Guide]"; + mes "Mages have to be in their guild for guild's power and honor."; + mes "This is one of the reasons why Mages are popular in any parties and guilds."; + mes "Why don't you become a Mage?"; + next; + mes "[Mage Guide]"; + mes "^8C2121Mages can transform to Wizards or Sages as their second job.^000000"; + if(countitem(2824) == 0 && (getequipid(EQI_ACC_L) != 2824 || getequipid(EQI_ACC_R) != 2824)) { + next; + mes "[Mage Guide]"; + mes "Do you want to register to experience how it is to be a Mage?"; + mes "Would you like to test Mage skills?"; + next; + if(select("I want to test Mage skills.:I don't want to test it.") == 2) { + mes "[Mage Guide]"; + 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; } + mes "[Mage Guide]"; + mes "Here is the Mage Manual."; + mes "I will take the other job registration forms and manuals from you."; + next; + mes "[Mage Guide]"; + mes "Here is the Mage Manual."; + mes "I will take the other job registration forms and manuals from you."; + nude; + if(countitem(2819) > 0) delitem 2819,1; // Swordsman_Manual + if(countitem(2820) > 0) delitem 2820,1; // Thief_Manual + if(countitem(2821) > 0) delitem 2821,1; // Acolyte_Manual + if(countitem(2822) > 0) delitem 2822,1; // Archer_Manual + if(countitem(2823) > 0) delitem 2823,1; // Merchant_Manual + getitem 2824,1; // Mage_Manual + next; + mes "[Mage Guide]"; + 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 Guide]"; + 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 Guide]"; + 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; + if(select("I will think about it again.:Yes, complete my training.") == 2) { + mes "[Mage Guide]"; + mes "Welcome!!"; + mes "I will send you to the Mage Guilds union after you complete your Novice training."; + close2; + if(checkquest(7123) == 0 || checkquest(7123) == 1) { erasequest 7123; } + if(checkquest(7124) == 0 || checkquest(7124) == 1) { erasequest 7124; } + if(checkquest(7126) == 0 || checkquest(7126) == 1) { erasequest 7126; } + if(checkquest(7127) == 0 || checkquest(7127) == 1) { erasequest 7127; } + nude; + if(countitem(2819) > 0) delitem 2819,1; // Swordsman_Manual + if(countitem(2820) > 0) delitem 2820,1; // Thief_Manual + if(countitem(2821) > 0) delitem 2821,1; // Acolyte_Manual + if(countitem(2822) > 0) delitem 2822,1; // Archer_Manual + if(countitem(2823) > 0) delitem 2823,1; // Merchant_Manual + if(countitem(2824) > 0) delitem 2824,1; // Mage_Manual + savepoint "geffen",119,37; + warp "geffen_in",163,98; + end; + } + mes "[Mage Guide]"; + mes "Please test what Mage skills are all about before you decide."; + mes "We are always welcome to have you!"; + close; + case 3: + if(checkquest(7124,HUNTING) != 2) { + mes "[Mage Guide]"; + mes "The quest is that you have to hunt Lunatics and bring 5 clovers."; + close; + } + else if(checkquest(7124) == 2) { + mes "[Mage Guide]"; + mes "You have already completed the quest."; + mes "Once you enter the main world, you can get various exciting quests there!"; next; - mes "[Elmeen]"; - mes "Which subject"; - mes "should I cover"; - mes "first for you?"; - next; - while(1) { - switch(select("Monsters:Experience:Items:Quit.")) { - case 1: - mes "[Elmeen]"; - mes "There are many aggressive monsters that will attack you first before you even approach them. "; - next; - mes "[Elmeen]"; - mes "There are also a few monsters that will cooperate with others of their kind. Attack one of them, and the whole pack of them will swarm around you, seeking revenge."; - next; - mes "[Elmeen]"; - mes "Every monster can be specified by their types, sizes and properties. For example, there are Demi-human, Brute, Holy and Demon property monsters out there."; - next; - mes "[Elmeen]"; - mes "When you're aware of what property a monster is, you can use that knowledge to help you in battle."; - next; - mes "[Elmeen]"; - mes "If you manage to get cards for that increase your damage upon certain monster properties, or reduce damage from specific monster properties, you'll have a much easier time in battle."; - next; - mes "[Elmeen]"; - mes "Monsters are separated by their size: small, medium and large. There are a few cards that allow you to do more damage to"; - mes "a specific monster size."; - next; - mes "[Elmeen]"; - mes "Also, each weapon has its strengths and weaknesses. The size of the weapon will affect the damage it will deal to monsters."; - next; - mes "[Elmeen]"; - mes "For example, Dagger class weapons do 100 % damage on small sized monsters but only inflict 50 % on large monsters."; - next; - mes "[Elmeen]"; - mes "Common monster properties include Water, Wind, Earth, Fire, Shadow, Ghost and Holy. If you attack a monster with an opposing property, you can inflict additional damage~"; - next; - mes "[Elmeen]"; - mes "But if you attack a monster with"; - mes "a skill or weapon that inflicts damage of the same property as the monster, the damage will be greatly reduced, or completely negated. You might even heal the monster!"; - next; - mes "[Elmeen]"; - mes "In the case of Ghost property monsters, normal weapons cannot do any harm. However, a weapon with any other property will be able to deal out some damage."; - next; - break; - case 2: - mes "[Elmeen]"; - mes "Basically, a character who deals the most damage on a monster receives the most experience points from the monster."; - next; - mes "[Elmeen]"; - mes "Therefore, you receive a certain percentage of experience points in proportion to the damage you've inflicted on the monster, compared to its total HP."; - next; - mes "[Elmeen]"; - mes "Let's say, there is a character named 'Z.' Z does 65 damage on a monster that has 100 total HP and gives 1000 experience points when it's dead. So, Z will receive 650 experience points."; - next; - mes "[Elmeen]"; - mes "However, this rule applies differently following certain situations."; - next; - mes "[Elmeen]"; - mes "If there are two people who both did 65 damage on the same monster, the experience points that each will receive differs, depending on the monster's remaining HP."; - next; - mes "[Elmeen]"; - mes "For instance, somebody does damage to a monster while you're already hitting it, and he did the same amount of damage you did."; - next; - mes "[Elmeen]"; - mes "In this case, you will receive 2//3 of the whole experience points that monster can give you, the other one will receive 1//3."; - next; - mes "[Elmeen]"; - mes "However, attacking a monster that somebody already started to hit is not suggested in Ragnarok Online. That action is regarded as ill-mannered behavior."; - next; - mes "[Elmeen]"; - mes "For party play, the party master can set the experience distribution to the equally share option."; - next; - mes "[Elmeen]"; - mes "With this method, party members can share their experience according to the their character levels, and the number of members in the party."; - next; - mes "[Elmeen]"; - mes "Also, there is the experience benefit for party play which allows you to gain more experience points than playing solo. You can take advantage of this system for faster leveling."; - next; - break; - case 3: - mes "[Elmeen]"; - mes "When you kill monsters,"; - mes "you can obtain items by chance. Furthermore, certain characters can use the 'Steal' skill in order to steal items from monsters."; - next; - mes "[Elmeen]"; - mes "Don't you worry about the Steal skill causing you to not find any items after you kill them. Using the Steal skill does not at all affect the item drop rate for monsters once they're killed."; - next; - mes "[Elmeen]"; - mes "When a group of people kill a monster, the person who did the most damage receives priority in picking up item drops."; - next; - break; - case 4: - mes "[Elmeen]"; - mes "Feel free to"; - mes "ask me if you"; - mes "have any questions."; - close; - } - } - case 2: - mes "[Elmeen]"; - mes "Please take care of the equipment you've received through the training courses. Once you lose the equipment, you can never get them back."; + mes "[Mage Guide]"; + mes "This should be enough for your training."; close; } - } - else { - mes "[Elmeen]"; - mes "Which subject"; - mes "shall I expain?"; - next; - while(1) { - switch(select("Monsters:Experience:Items:Quit.")) { - case 1: - mes "[Elmeen]"; - mes "There are many aggressive monsters that will attack you first before you even approach them. "; - next; - mes "[Elmeen]"; - mes "There are also a few monsters that will cooperate with others of their kind. Attack one of them, and the whole pack of them will swarm around you, seeking revenge."; - next; - mes "[Elmeen]"; - mes "Every monster can be specified by their types, sizes and properties. For example, there are Demi-human, Brute, Holy and Demon property monsters out there."; - next; - mes "[Elmeen]"; - mes "When you're aware of what property a monster is, you can use that knowledge to help you in battle."; - next; - mes "[Elmeen]"; - mes "If you manage to get cards for that increase your damage upon certain monster properties, or reduce damage from specific monster properties, you'll have a much easier time in battle."; - next; - mes "[Elmeen]"; - mes "Monsters are separated by their size: small, medium and large. There are a few cards that allow you to do more damage to a specific monster size."; - next; - mes "[Elmeen]"; - mes "Also, each weapon has its strengths and weaknesses. The size of the weapon will affect the damage it will deal to monsters."; - next; - mes "[Elmeen]"; - mes "For example, Dagger class weapons do 100 % damage on small sized monsters but only inflict 50 % on large monsters."; - next; - mes "[Elmeen]"; - mes "Common monster properties include Water, Wind, Earth, Fire, Shadow, Ghost and Holy. If you attack a monster with an opposing property, you can inflict additional damage~"; - next; - mes "[Elmeen]"; - mes "But if you attack a monster with"; - mes "a skill or weapon that inflicts damage of the same property as the monster, the damage will be greatly reduced, or completely negated. You might even heal the monster!"; - next; - mes "[Elmeen]"; - mes "In the case of Ghost property monsters, normal weapons cannot do any harm. However, a weapon with any other property will be able to deal out some damage."; - next; - break; - case 2: - mes "[Elmeen]"; - mes "Basically, a character who deals the most damage on a monster receives the most experience points from the monster."; - next; - mes "[Elmeen]"; - mes "Therefore, you receive a certain percentage of experience points in proportion to the damage you've inflicted on the monster, compared to its total HP."; - next; - mes "[Elmeen]"; - mes "Let's say, there is a character named 'Z.' Z does 65 damage on a monster that has 100 total HP and gives 1000 experience points when it's dead. So, Z will receive 650 experience points."; - next; - mes "[Elmeen]"; - mes "However, this rule applies differently following certain situations."; - next; - mes "[Elmeen]"; - mes "If there are two people who both did 65 damage on the same monster, the experience points that each will receive differs, depending on the monster's remaining HP."; - next; - mes "[Elmeen]"; - mes "For instance, somebody does damage to a monster while you're already hitting it, and he did the same amount of damage you did."; - next; - mes "[Elmeen]"; - mes "In this case, you will receive 2//3 of the whole experience points that monster can give you, the other one will receive 1//3."; - next; - mes "[Elmeen]"; - mes "However, attacking a monster that somebody already started to hit is not suggested in Ragnarok Online. That action is regarded as ill-mannered behavior."; - next; - mes "[Elmeen]"; - mes "For party play, the party master can set the experience distribution to the equally share option."; - next; - mes "[Elmeen]"; - mes "With this method, party members can share their experience according to the their character levels, and the number of members in the party."; - next; - mes "[Elmeen]"; - mes "Also, there is the experience benefit for party play which allows you to gain more experience points than playing solo. You can take advantage of this system for faster leveling."; - next; - break; - case 3: - mes "[Elmeen]"; - mes "When you kill monsters,"; - mes "you can obtain items by chance. Furthermore, certain characters can use the 'Steal' skill in order to steal items from monsters."; - next; - mes "[Elmeen]"; - mes "Don't you worry about the Steal skill causing you to not find any items after you kill them. Using the Steal skill does not at all affect the item drop rate for monsters once they're killed."; - next; - mes "[Elmeen]"; - mes "When a group of people kill a monster, the person who did the most damage receives priority in picking up item drops."; - next; - break; - case 4: - mes "[Elmeen]"; - mes "Feel free to"; - mes "ask me if you"; - mes "have any questions."; - close; - } + else { + mes "[Mage Guide]"; + mes "Huh? Quest?"; + mes "Hmm... What would be suited for you...?"; + mes "Would you like to hunt Lunatics by using Bolt skills?"; + next; + mes "^4A4AFFYou have received a Hunting quest from the Mage Guide.^000000"; + mes "^4A4AFFYou can get more information about the quest from the quest window.^000000"; + setquest 7124; + next; + mes "[Mage Guide]"; + 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; } + case 4: + mes "[Mage Guide]"; + 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-2,38,182,3 script Entrance Guard#nv 92,{ - if (nov_2nd_cos == 0) { - mes "[Muriel]"; - mes "I'm sorry, but I can't let anybody who hasn't been instructed on fighting enter the Field Combat Training Grounds."; - next; - mes "[Muriel]"; - mes "Why don't you speak to the Helper to the left side of this room first, so that you can receive some battle instruction?"; +new_1-3,101,41,4 duplicate(NvMag) Mage Guide#nv1 123 +new_2-3,101,41,4 duplicate(NvMag) Mage Guide#nv2 123 +new_3-3,101,41,4 duplicate(NvMag) Mage Guide#nv3 123 +new_4-3,101,41,4 duplicate(NvMag) Mage Guide#nv4 123 +new_5-3,101,41,4 duplicate(NvMag) Mage Guide#nv5 123 + +// ---------------------------- Thief Guide --------------------------------- +- script Thief Guide#nv::NvThf 118,{ + if(job_novice_q < 16) { + mes "[Thief Guild Member]"; + mes "You look like you are not done with Instructor Brade's lessons."; close; } - else if (nov_2nd_cos > 0 && nov_2nd_cos < 21) { - mes "[Muriel]"; - mes "Field Combat Training is an actual fight class where you can gain basic fighting skills that you can use to defend yourself in Rune-Midgard."; - next; - mes "[Muriel]"; - mes "Please kill as many monsters as you can to increase your base level at least 2 times."; - next; - mes "[Muriel]"; - mes "Gaining 2 base levels is required to complete your Field Combat Training. Although the monsters are all weak and easy to kill, I hope you will be careful."; - next; - mes "[Muriel]"; - mes "Do you wish"; - mes "to take the test"; - mes "right away?"; - next; - switch(select("Yes:I need more time.")) { - case 1: - mes "[Muriel]"; - mes "Please make sure you"; - mes "talk to the staff at the North after you increase your base level by 2 levels through battle."; - next; - mes "[Muriel]"; - mes "I'm going to give you some useful supplies, so please use them in case of an emergency."; - if (nov_2nd_cos == 12) { - set nov_2nd_cos,22; - } - else if (nov_2nd_cos == 13) { - set nov_2nd_cos,23; - } - else if (nov_2nd_cos == 14) { - set nov_2nd_cos,24; - } - else if (nov_2nd_cos == 15) { - set nov_2nd_cos,25; - } - else if (nov_2nd_cos == 16) { - set nov_2nd_cos,26; - } - else if (nov_2nd_cos == 17) { - set nov_2nd_cos,27; - } - else if (nov_2nd_cos == 18) { - set nov_2nd_cos,28; - } - else { - set nov_2nd_cos,29; - } - getitem 602,1; //Wing_Of_Butterfly - getitem 601,9; //Wing_Of_Fly - getitem 1243,1; //Novice_Knife - getitem 2112,1; //Novice_Guard - getitem 611,2; //Spectacles - getitem 569,300; //Novice_Potion - close2; - savepoint "new_1-2",23,188; - warp "new_1-3",96,21; - end; - case 2: - mes "[Muriel]"; - mes "No problem."; - mes "If you're not sure if you can pass the test or not, why don't you go talk to the Helper to the left one more time? Please come back"; - mes "when you're ready."; + else if(checkquest(7127,HUNTING) != 2) { + mes "[Thief Guild Member]"; + mes "Hunt 5 Willows and then come talk to me to finish youe quest."; + close2; + } + else 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 1000,0; + getexp 1000,0; + getexp 1000,0; + getexp 1000,0; + getexp 1000,100; + close2; + } + 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, they can use their skill to hide themselves easily."; + next; + mes "[Thief Guild Member]"; + mes "Thieves can change their jobs to ^8C2121Assasins^000000 or ^8C2121Rogues.^000000"; + if(countitem(2820) == 0 && (getequipid(EQI_ACC_L) != 2820 || getequipid(EQI_ACC_R) != 2820)) { + next; + 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; + if(select("Yes, I would.:No, I don't.") == 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; } + 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; + 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."; + nude; + if(countitem(2819) > 0) delitem 2819,1; // Swordsman_Manual + if(countitem(2821) > 0) delitem 2821,1; // Acolyte_Manual + if(countitem(2822) > 0) delitem 2822,1; // Archer_Manual + if(countitem(2823) > 0) delitem 2823,1; // Merchant_Manual + if(countitem(2824) > 0) delitem 2824,1; // Mage_Manual + 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 ^4A4AFFAlt + S^000000 and minimize the window by pressing the '-' button on the top right corner of the window to see the available skills."; + } close; - } - else if ((nov_2nd_cos > 20) && (nov_2nd_cos < 31)) { - mes "[Muriel]"; - mes "Oh well, I told you to be careful. Cheer up! It's not a big deal."; - mes " "; - mes "Failure teaches success."; - mes "You have many chances"; - mes "to re-take the test."; - next; - mes "[Muriel]"; - mes "Do you wish"; - mes "to try again?"; - next; - switch(select("Yes.:Can I have more time?")) { - case 1: - mes "[Muriel]"; - mes "I will give you"; - mes "some supplies again."; - mes "Please be careful!"; - if (nov_2nd_cos == 22) { - set nov_2nd_cos,33; - getexp 16,0; - } - else if (nov_2nd_cos == 23) { - set nov_2nd_cos,34; - getexp 25,0; - } - else if (nov_2nd_cos == 24) { - set nov_2nd_cos,35; - getexp 36,0; - } - else if (nov_2nd_cos == 25) { - set nov_2nd_cos,36; - getexp 77,0; - } - else if (nov_2nd_cos == 26) { - set nov_2nd_cos,37; - getexp 112,0; - } - else if (nov_2nd_cos == 27) { - set nov_2nd_cos,38; - getexp 153,0; - } - else if (nov_2nd_cos == 28) { - set nov_2nd_cos,39; - getexp 200,0; - } - else if (nov_2nd_cos == 29) { - set nov_2nd_cos,40; - getexp 200,0; - } - percentheal 100,0; - getitem 569,50; //Novice_Potion - close2; - warp "new_1-3",96,21; - end; - case 2: - mes "[Muriel]"; - mes "No problem."; - mes "If you're not sure if you can pass the test or not, why don't you go talk to the Helper to the left one more time? Please come back"; - mes "when you're ready."; - 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; + if(select("Let me consider it again.:Yes, I do.") == 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."; + close2; + if(checkquest(7123) == 0 || checkquest(7123) == 1) { erasequest 7123; } + if(checkquest(7124) == 0 || checkquest(7124) == 1) { erasequest 7124; } + if(checkquest(7126) == 0 || checkquest(7126) == 1) { erasequest 7126; } + if(checkquest(7127) == 0 || checkquest(7127) == 1) { erasequest 7127; } + nude; + if(countitem(2819) > 0) delitem 2819,1; // Swordsman_Manual + if(countitem(2820) > 0) delitem 2820,1; // Thief_Manual + if(countitem(2821) > 0) delitem 2821,1; // Acolyte_Manual + if(countitem(2822) > 0) delitem 2822,1; // Archer_Manual + if(countitem(2823) > 0) delitem 2823,1; // Merchant_Manual + if(countitem(2824) > 0) delitem 2824,1; // Mage_Manual + savepoint "morocc",150,99; + warp "moc_ruins",155,44; + end; } - } - else if (nov_2nd_cos > 30) { - mes "[Muriel]"; - mes "Oh well, I told you to be careful. Cheer up! It's not a big deal."; - mes " "; - mes "Failure teaches success."; - mes "You have many chances to re-take the test."; - next; - mes "[Muriel]"; - mes "Do you wish to try again?"; - next; - switch(select("Yes:Can I have more time?")) { - case 1: - mes "[Muriel]"; - mes "I will restore"; - mes "your HP. Please"; - mes "be careful!"; - percentheal 100,0; - close2; - warp "new_1-3",96,21; - end; - case 2: - mes "[Muriel]"; - mes "No problem."; - mes "If you're not sure if you can pass the test or not, why don't you go talk to the Helper to the left one more time? Please come back when you're ready."; - close; + 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 3: + if(checkquest(7127,HUNTING) != 2) { + mes "[Thief Guild Member]"; + mes "Hunt 5 Willows and then come talk to me to finish youe quest."; + close; } + else if(checkquest(7127) == 2) { + mes "[Thief Guild Member]"; + mes "I'm sorry but I don't have any quests to give you right now."; + close; + } + else { + 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."; + 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."; + setquest 7127; + close; + } + case 4: + mes "[Thief Guild Member]"; + mes "If you have something to ask about the Thief job, feel free to ask me."; + close; } } -//Teleport NPC -new_1-3,95,30,4 script Trainer#nv1::NovHoffman 84,{ - mes "[Hoffman]"; - mes "Hey there~"; - mes "I'm here to provide"; - mes "you with a little instruction."; - next; - mes "[Hoffman]"; - mes "These monsters are all weak"; - mes "and easy to kill. But be careful,"; - mes "a lot of them are aggressive"; - mes "and out for blood!"; - next; - mes "[Hoffman]"; - 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 "[Hoffman]"; - mes "But don't worry so much,"; - mes "They're not impossible for"; - mes "Novices. So would you"; - mes "like to try?"; +new_1-3,105,41,4 duplicate(NvThf) Thief Guide#nv1 118 +new_2-3,105,41,4 duplicate(NvThf) Thief Guide#nv2 118 +new_3-3,105,41,4 duplicate(NvThf) Thief Guide#nv3 118 +new_4-3,105,41,4 duplicate(NvThf) Thief Guide#nv4 118 +new_5-3,105,41,4 duplicate(NvThf) Thief Guide#nv5 118 + +// ---------------------------- Merchant Guide ------------------------------ +- script Merchant Guide#nv::NvMer 97,{ + if(job_novice_q < 16) { + mes "[Merchant Guide]"; + mes "You are still in the process of training with sir Brade."; + close; + } + else if((checkquest(7126) == 0 || checkquest(7126) == 1) && Zeny < 300) { + mes "[Merchant Guide]"; + mes "Zeny is the currency of Rune Midgard."; + mes "You can make zeny by selling loot as well as through making smart business decisions."; + next; + mes "[Merchant Guide]"; + 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 Guide]"; + mes "Why don't you try to be a Merchant?"; + mes "Making money is not easy but it will be a great experience!"; + close2; + } + else if((checkquest(7126) == 0 || checkquest(7126) == 1) && Zeny >= 300) { + mes "[Merchant Guide]"; + mes "Excellent!"; + mes "Zeny is the currency of Rune Midgard."; + mes "You can make zeny by selling loot as well as through making smart business decisions."; + next; + mes "[Merchant Guide]"; + 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."; + mes "Death by Zeny! Nyahahahaha!"; + next; + mes "[Merchant Guide]"; + 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 1000,0; + getexp 1000,0; + getexp 1000,0; + getexp 1000,0; + getexp 1000,100; + close2; + } + mes "[Merchant Guide]"; + mes "What can I help you with?"; next; - switch(select("I do want more of a challenge~:I wanna fight tough monsters!:Cancel")) { + switch(select("Tell me about Merchants:I want to be a Merchant.:Give me a Quest.:Cancel")) { case 1: - mes "[Hoffman]"; - mes "I see, then let me guide"; - mes "you to a training ground that has stronger monsters. May God be with you..."; + mes "[Merchant Guide]"; + mes "Merchant? Simply put, they sell goods and make money."; + mes "That's the main focus for any Merchant."; next; - if (strnpcinfo(2) == "nv1") { - if (rand(2)) { - warp "new_2-3",96,21; - } - else { - warp "new_3-3",96,21; - } + mes "[Merchant Guide]"; + mes "We have special skills for making money."; + mes "We can buy goods at a lower price and sell them at a higher price."; + next; + mes "[Merchant Guide]"; + mes "Also Merchants can have Carts that we can store lots of items in."; + next; + mes "[Merchant Guide]"; + mes "^8C2121Merchants can transform to a Blacksmith or an Alchemist^000000 as their second job."; + if(countitem(2823) == 0 && (getequipid(EQI_ACC_L) != 2823 || getequipid(EQI_ACC_R) != 2823)) { + next; + mes "[Merchant Guide]"; + mes "Do you wan to see what it's like to be a Merchant?"; + next; + if(select("I want to test Merchant skills.:I don't want to test it.") == 2) { + mes "[Merchant Guide]"; + 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 Merchant skills."; + close; } - else { - warp "new_1-3",96,21; - } - end; + mes "[Merchant Guide]"; + mes "Here is the Merchant skill manual."; + mes "I will take other job manuals from you while I'm at it."; + next; + mes "[Merchant Guide]"; + mes "Here is the Merchant skill manual."; + mes "I will take other job manuals from you while I'm at it."; + nude; + if(countitem(2819) > 0) delitem 2819,1; // Swordsman_Manual + if(countitem(2820) > 0) delitem 2820,1; // Thief_Manual + if(countitem(2821) > 0) delitem 2821,1; // Acolyte_Manual + if(countitem(2822) > 0) delitem 2822,1; // Archer_Manual + if(countitem(2824) > 0) delitem 2824,1; // Mage_Manual + getitem 2823,1; // Merchant_Manual + next; + mes "[Merchant Guide]"; + mes "Make sure to equip the Skill Manual by double-clicking it in the Inventory Window."; + mes "Open your Skill Tree by pressing ^4A4AFFAlt + S^000000 and minimize the window by pressing the '-' button on the top right corner of the window to see the available skills."; + } + close; + case 2: - mes "[Hoffman]"; - mes "You must like "; - mes "rough challenges,"; - mes "don't you? Please"; - mes "be careful, it can get"; - mes "pretty difficult..."; - next; - if (strnpcinfo(2) == "nv1" || strnpcinfo(2) == "nv2" || strnpcinfo(2) == "nv3") { - if (rand(2)) { - warp "new_4-3",96,21; - } - else { - warp "new_5-3",96,21; - } + mes "[Merchant Guide]"; + 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 Guide]"; + 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; + if(select("I will think about it again.:Yes, I want to go to the Merchant Guild's union.") == 2) { + mes "[Merchant Guide]"; + mes "Welcome!!"; + mes "I will send you to the Merchant Guild's union after you complete your Novice training."; + close2; + if(checkquest(7123) == 0 || checkquest(7123) == 1) { erasequest 7123; } + if(checkquest(7124) == 0 || checkquest(7124) == 1) { erasequest 7124; } + if(checkquest(7126) == 0 || checkquest(7126) == 1) { erasequest 7126; } + if(checkquest(7127) == 0 || checkquest(7127) == 1) { erasequest 7127; } + nude; + if(countitem(2819) > 0) delitem 2819,1; // Swordsman_Manual + if(countitem(2820) > 0) delitem 2820,1; // Thief_Manual + if(countitem(2821) > 0) delitem 2821,1; // Acolyte_Manual + if(countitem(2822) > 0) delitem 2822,1; // Archer_Manual + if(countitem(2823) > 0) delitem 2823,1; // Merchant_Manual + if(countitem(2824) > 0) delitem 2824,1; // Mage_Manual + savepoint "alberta",30,232; + warp "alberta_in",62,44; + end; + } + mes "[Merchant Guide]"; + mes "Ok, I hope you consider being a Merchant."; + mes "We are always welcome to have you!"; + close; + case 3: + if((checkquest(7126) == 0 || checkquest(7126) == 1) && Zeny < 300) { + mes "[Merchant Guide]"; + mes "Zeny is the currency of Rune Midgard."; + mes "You can make zeny by selling loot as well as through making smart business decisions."; + next; + mes "[Merchant Guide]"; + 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 Guide]"; + mes "Why don't you try to be a Merchant?"; + mes "Making money is not easy but it will be a great experience!"; + close; + } + else if(checkquest(7126) == 2) { + mes "[Merchant Guide]"; + mes "You have already completed the quest."; + mes "Once you enter the main world, you can get various exciting quests there!"; + next; + mes "[Merchant Guide]"; + mes "I think you're strong enough now to change your job right? Hahahaha don't waste too much time here Novice."; + close; } else { - if (rand(2)) { - warp "new_2-3",96,21; - } - else { - warp "new_3-3",96,21; - } + mes "[Merchant Guide]"; + mes "Huh? Quest??"; + mes "Humm... What would be suited for you...?"; + mes "Ok, then bring me ^4A4AFF300 zeny^000000 by selling some of your items to the Potato Merchant."; + next; + mes "[Merchant Guide]"; + mes "If you equipped the Merchant manual you have the ability to use the 'Overcharge' and 'Discount' skills."; + setquest 7126; + next; + mes "[Merchant Guide]"; + mes "Good luck!"; + close; } - end; - case 3: - mes "[Hoffman]"; - mes "Hmm...?"; - mes "Are you worried about going"; - mes "to more challenging places? That's understandable, since you're still a new adventurer. Good luck~"; + case 4: + mes "[Merchant Guide]"; + 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_2-3,95,30,4 duplicate(NovHoffman) Trainer#nv2 84 -new_3-3,95,30,4 duplicate(NovHoffman) Trainer#nv3 84 -new_4-3,95,30,4 duplicate(NovHoffman) Trainer#nv4 84 -new_5-3,95,30,4 duplicate(NovHoffman) Trainer#nv5 84 +new_1-3,109,41,4 duplicate(NvMer) Merchant Guide#nv1 97 +new_2-3,109,41,4 duplicate(NvMer) Merchant Guide#nv2 97 +new_3-3,109,41,4 duplicate(NvMer) Merchant Guide#nv3 97 +new_4-3,109,41,4 duplicate(NvMer) Merchant Guide#nv4 97 +new_5-3,109,41,4 duplicate(NvMer) Merchant Guide#nv5 97 -new_1-3,96,174,3 script Test Examiner#nv1::NovKeyman 85,{ - mes "[Keyman]"; - mes "Good!!"; - mes "Now you know how to fight"; - mes "against monsters, don't you?"; - mes "Would you like to move"; - mes "to the next course?"; +// ---------------------------- Archer Guide -------------------------------- +- script Archer Guide#nv::NvArc 727,{ + if(job_novice_q < 16) { + mes "[Archer Guide]"; + mes "You are still in the process of training with sir Brade."; + close; + } + mes "[Archer Guide]"; + mes "What can I help you with?"; next; - switch(select("Yes:No")) { + switch(select("Tell me about Archers:I want to be an Archer:Cancel")) { case 1: - mes "[Keyman]"; - mes "I hope you will be"; - mes "a good fighter in the"; - mes "future. Bon voyage."; - close2; - warp "new_1-4",99,10; - return - end; + mes "[Archer Guide]"; + 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 Guide]"; + mes "Archers don't have great vitality so they have to keep their distance from enemies."; + next; + mes "[Archer Guide]"; + 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 Guide]"; + mes "^8C2121Archers can transform to many second jobs like a Hunter.^000000"; + mes "^8C2121Besides Hunters, Archers can transform to a Bard, if they are male.^000000"; + mes "^8C2121They can transform to a Dancer, if they are female.^000000"; + if(countitem(2822) == 0 && (getequipid(EQI_ACC_L) != 2822 || getequipid(EQI_ACC_R) != 2822)) { + next; + mes "[Archer Guide]"; + mes "Do you want to register to test skill experience?"; + mes "Would you like to test Archer skills?"; + next; + if(select("I want to test Archer skills.:I don't want to test it.") == 2) { + mes "[Archer Guide]"; + 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; + } + mes "[Archer Guide]"; + mes "Here is the Archer manual."; + mes "I will take the other job manuals from you while you test the Archer manual out."; + next; + mes "[Archer Guide]"; + mes "I will take the other job manuals from you while you test the Archer manual out."; + nude; + if(countitem(2819) > 0) delitem 2819,1; // Swordsman_Manual + if(countitem(2820) > 0) delitem 2820,1; // Thief_Manual + if(countitem(2821) > 0) delitem 2821,1; // Acolyte_Manual + if(countitem(2823) > 0) delitem 2823,1; // Merchant_Manual + if(countitem(2824) > 0) delitem 2824,1; // Mage_Manual + getitem 2822,1; // Archer_Manual + next; + mes "[Archer Guide]"; + mes "Make sure to equip the Skill Manual by double-clicking it in the Inventory Window."; + mes "Open your Skill Tree by pressing ^4A4AFFAlt + S^000000 and minimize the window by pressing the '-' button on the top right corner of the window to see the available skills."; + } + close; case 2: - mes "[Keyman]"; - mes "I see..."; - mes "It can't hurt to practice until you're more comfortable with the basics of battle."; + mes "[Archer Guide]"; + mes "You want to be an Archer?"; + mes "Ok, then, I will send you to the Archer Guild right away."; + next; + mes "[Archer Guide]"; + 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; + if(select("I will think about it again.:Yes, I want to go to the Archer Guild's union.") == 2) { + mes "[Archer Guide]"; + mes "Welcome!!"; + mes "I will send you to the Archer Guild after you complete your Novice training."; + close2; + if(checkquest(7123) == 0 || checkquest(7123) == 1) { erasequest 7123; } + if(checkquest(7124) == 0 || checkquest(7124) == 1) { erasequest 7124; } + if(checkquest(7126) == 0 || checkquest(7126) == 1) { erasequest 7126; } + if(checkquest(7127) == 0 || checkquest(7127) == 1) { erasequest 7127; } + nude; + if(countitem(2819) > 0) delitem 2819,1; // Swordsman_Manual + if(countitem(2820) > 0) delitem 2820,1; // Thief_Manual + if(countitem(2821) > 0) delitem 2821,1; // Acolyte_Manual + if(countitem(2822) > 0) delitem 2822,1; // Archer_Manual + if(countitem(2823) > 0) delitem 2823,1; // Merchant_Manual + if(countitem(2824) > 0) delitem 2824,1; // Mage_Manual + savepoint "payon",70,100; + warp "payon_in02",64,65; + end; + } + mes "[Archer Guide]"; + 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 3: + mes "[Archer Guide]"; + 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_2-3,96,174,3 duplicate(NovKeyman) Test Examiner#nv2 85 -new_3-3,96,174,3 duplicate(NovKeyman) Test Examiner#nv3 85 -new_4-3,96,174,3 duplicate(NovKeyman) Test Examiner#nv4 85 -new_5-3,96,174,3 duplicate(NovKeyman) Test Examiner#nv5 85 +new_1-3,113,41,4 duplicate(NvArc) Archer Guide#nv1 727 +new_2-3,113,41,4 duplicate(NvArc) Archer Guide#nv2 727 +new_3-3,113,41,4 duplicate(NvArc) Archer Guide#nv3 727 +new_4-3,113,41,4 duplicate(NvArc) Archer Guide#nv4 727 +new_5-3,113,41,4 duplicate(NvArc) Archer Guide#nv5 727 -//Potato Merchant -new_1-2,28,185,4 shop Potato Merchant 90,516:15 - -new_1-4,100,29,1 script Hanson#nv 46,{ - if (checkweight(909,400) == 0) { - mes "[Hanson]"; - mes "All of the items you are carrying must be quite a burden. Where did you get so much things? Please lighten your weight by getting rid of things you don't need."; +// ---------------------------- Acolyte Guide ------------------------------- +- script Acolyte Guide#nv::NvAco 95,{ + if(job_novice_q < 16) { + mes "[Prontera Acolyte]"; + mes "You look like you are not done with Instructor Brade's lessons."; close; } - if (nov_3_swordman == 20) { - mes "[Hanson]"; - mes "Good day,"; - mes "^A62A2A" + strcharinfo(0) + "'^000000."; - mes "You've made quite"; - mes "an effort to come here."; - next; - mes "[Hanson]"; - mes "This final test in the Training Grounds is a personality test,"; - mes "but it's not a mandatory course."; - next; - mes "[Hanson]"; - mes "However, there are some benefits"; - mes "to taking this test. When you take this test, you'll receive many health items which will help you when you join the Ragnarok Online community."; - next; - mes "[Hanson]"; - mes "Secondly, after you finish the course we will suggest the job class that seems best suited to your personality and teleport you to a town where you can change into the job we suggested."; + 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 "[Hanson]"; - mes "Now..."; - mes "What would"; - mes "you like to do?"; + 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 "[Hanson]"; - mes "Do you wish to start Ragnarok Online immediately, or take this personality test course first?"; + mes "[Prontera Acolyte]"; + mes "^8C2121As an Acolyte, you can upgrade your future job to Priest or Monk.^000000"; next; - switch(select("I'll take the course.:Let me start Ragnarok Online please.")) { - case 1: - mes "[Hanson]"; - mes "Excellent choice!"; - mes "You're supposed to take every training course if you really want to be a well-prepared player!"; - next; - mes "[Hanson]"; - mes "Alright, let me start the 1st personality test. Please relax"; - mes "and take it easy."; - next; - mes "[Hanson]"; - mes "Remember, this test is only to check your personality, there is no set standard for right and wrong. Now! Let's begin the test!"; - next; - mes "[Hanson]"; - mes "Please choose the word"; - mes "that best matches you from"; - mes "among the following."; - next; - switch(select("Study:Exercise:Public 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; - break; - case 3: - set .@acolyte_p,.@acolyte_p+1; - break; - case 4: - set .@thief_p,.@thief_p+1; - break; - } - switch(select("Change:Conserve")) { - 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; - break; - case 2: - set .@merchant_p,.@merchant_p+1; - break; - case 3: - set .@magician_p,.@magician_p+1; - break; - } - switch(select("Celebrity:Prudence")) { - case 1: - set .@thief_p,.@thief_p+1; - break; - case 2: - set .@archer_p,.@archer_p+1; - break; - } - switch(select("Theory:Experience")) { - case 1: - set .@magician_p,.@magician_p+1; - break; - case 2: - set .@swordman_p,.@swordman_p+1; - break; - } - switch(select("The Past:Reality:The Future")) { - case 1: - set .@archer_p,.@archer_p+1; - break; - case 2: - set .@merchant_p,.@merchant_p+1; - set .@thief_p,.@thief_p+1; - break; - case 3: - set .@magician_p,.@magician_p+1; - break; - } - mes "[Hanson]"; - mes "Please answer"; - mes "'Yes' or 'No' to"; - mes "the following questions."; + mes "[Prontera Acolyte]"; + if(countitem(2821) == 0 && (getequipid(EQI_ACC_L) != 2821 || getequipid(EQI_ACC_R) != 2821)) { next; - mes "[Hanson]"; - mes "I'd rather die"; - mes "than live submissively."; + 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.:No.")) { - case 1: - set .@swordman_p,.@swordman_p+1; - break; - case 2: - set .@thief_p,.@thief_p+1; - set .@merchant_p,.@merchant_p+1; - break; - } - mes "[Hanson]"; - mes "You are often upset"; - mes "to see someone better"; - mes "than you."; - next; - switch(select("Yes.:No.")) { - case 1: - set .@merchant_p,.@merchant_p+1; - break; - case 2: - set .@acolyte_p,.@acolyte_p+1; - break; - } - mes "[Hanson]"; - mes "You don't mind"; - mes "exploring dangerous"; - mes "places."; - next; - switch(select("Yes.:No.")) { - case 1: - set .@swordman_p,.@swordman_p+1; - break; - case 2: - set .@magician_p,.@magician_p+1; - break; - } - mes "[Hanson]"; - mes "You are"; - mes "a leader-type"; - mes "person."; - next; - switch(select("Yes.:No.")) { - case 1: - set .@swordman_p,.@swordman_p+1; - break; - case 2: - set .@archer_p,.@archer_p+1; - break; - } - mes "[Hanson]"; - mes "While exploring"; - mes "a dungeon, you run"; - mes "into a dead end."; - next; - mes "[Hanson]"; - mes "However, there is a sign that reads 'Do Not Push' next to a stone that looks strangely like a button on the wall next to you."; - next; - mes "[Hanson]"; - mes "Do you give in"; - mes "to the urge to push"; - mes "this button?"; - next; - switch(select("Yes.:No.")) { - case 1: - set .@thief_p,.@thief_p+1; - break; - case 2: - set .@swordman_p,.@swordman_p+1; - break; - } - mes "[Hanson]"; - mes "You often see"; - mes "things that don't exist."; - next; - switch(select("Yes.:No.")) { - case 1: - set .@acolyte_p,.@acolyte_p+1; - break; - case 2: - set .@magician_p,.@magician_p+1; - break; - } - mes "[Hanson]"; - mes "If you fell off"; - mes "a cliff, you'd feel"; - mes "like you were flying."; - next; - switch(select("Yes.:No.")) { - case 1: - set .@acolyte_p,.@acolyte_p+1; - break; - case 2: - set .@magician_p,.@magician_p+1; - break; + if(select("Yes, please.:No I'm not interested.") == 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; } - mes "[Hanson]"; - mes "Money talks."; + 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; + 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."; + nude; + if(countitem(2819) > 0) delitem 2819,1; // Swordsman_Manual + if(countitem(2820) > 0) delitem 2820,1; // Thief_Manual + if(countitem(2822) > 0) delitem 2822,1; // Archer_Manual + if(countitem(2823) > 0) delitem 2823,1; // Merchant_Manual + if(countitem(2824) > 0) delitem 2824,1; // Mage_Manual + 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 ^4A4AFFAlt + S^000000 and minimizing the window by pressing the '-' button on the top right corner of the window to see the available skills."; + } + close; + case 2: + 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 Cathedral of Prontera?"; + next; + if(select("Let me reconsider.:I will go to the Cathedral.") == 2) { + mes "[Prontera Acolyte]"; + mes "That's great."; + mes "Then I will completely end the Training Process and send you to the Cathedral of Prtonera."; + close2; + if(checkquest(7123) == 0 || checkquest(7123) == 1) { erasequest 7123; } + if(checkquest(7124) == 0 || checkquest(7124) == 1) { erasequest 7124; } + if(checkquest(7126) == 0 || checkquest(7126) == 1) { erasequest 7126; } + if(checkquest(7127) == 0 || checkquest(7127) == 1) { erasequest 7127; } + nude; + if(countitem(2819) > 0) delitem 2819,1; // Swordsman_Manual + if(countitem(2820) > 0) delitem 2820,1; // Thief_Manual + if(countitem(2821) > 0) delitem 2821,1; // Acolyte_Manual + if(countitem(2822) > 0) delitem 2822,1; // Archer_Manual + if(countitem(2823) > 0) delitem 2823,1; // Merchant_Manual + if(countitem(2824) > 0) delitem 2824,1; // Mage_Manual + savepoint "prontera",117,72; + warp "prt_church",172,19; + end; + } + mes "[Prontera Acolyte]"; + mes "You should try out each job's manuals."; + mes "Go through them throughly and decide carefully."; + mes "Of course, I will welcome you anytime."; + close; + case 3: + mes "[Prontera Acolyte]"; + mes "If you have any questions about Acolytes, please ask me anytime."; + mes "Ou God, Odin awaits adventurers like you"; + close; + } +} + +new_1-3,117,41,4 duplicate(NvAco) Acolyte Guide#nv1 95 +new_2-3,117,41,4 duplicate(NvAco) Acolyte Guide#nv2 95 +new_3-3,117,41,4 duplicate(NvAco) Acolyte Guide#nv3 95 +new_4-3,117,41,4 duplicate(NvAco) Acolyte Guide#nv4 95 +new_5-3,117,41,4 duplicate(NvAco) Acolyte Guide#nv5 95 + +// ---------------------------- Bruce (Extended Jobs) ----------------------- +- script Bruce#nv::NvBruce 57,{ + 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, Ninja, Super Novice, and 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; - switch(select("Yes.:No.")) { - case 1: - set .@merchant_p,.@merchant_p+1; - break; - case 2: - set .@archer_p,.@archer_p+1; - break; - } - mes "[Hanson]"; - mes "Now, let me give you some different questions. Please relax and take it easy, and choose the answer that suits you best."; + 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; - mes "[Hanson]"; - mes "As you check"; - mes "your tight schedule...."; + break; + case 2: + mes "[Bruce]"; + mes "Ninja's specialty is rapid movement."; + mes "They specialize in using throwing weapons."; next; - switch(select("You feel like a robot.:You are proud and satisfied.:Schedule? What schedule?")) { - case 1: - set .@swordman_p,.@swordman_p+1; - set .@thief_p,.@thief_p+1; - break; - case 2: - set .@acolyte_p,.@acolyte_p+1; - set .@magician_p,.@magician_p+1; - break; - case 3: - set .@archer_p,.@archer_p+1; - set .@merchant_p,.@merchant_p+1; - break; - } - mes "[Hanson]"; - mes "As you go window shopping,"; - mes "you find a really interesting item in a store, debating whether or not to buy it. Before making"; - mes "a purchase, the first thing"; - mes "you do is..."; + 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; - switch(select("Consider if you need it.:Check the price.:Don't think twice, just buy it!")) { - case 1: - set .@archer_p,.@archer_p+1; - break; - case 2: - set .@merchant_p,.@merchant_p+1; - break; - case 3: - set .@thief_p,.@thief_p+1; - break; - } - mes "[Hanson]"; - mes "Fill in the blank:"; - mes "You ^3355FF_____^000000"; - mes "competing with other people..."; - mes ""; + 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; - switch(select("don't mind...:don't like...:don't care about...")) { - case 1: - set .@merchant_p,.@merchant_p+1; - break; - case 2: - set .@thief_p,.@thief_p+1; - break; - case 3: - set .@acolyte_p,.@acolyte_p+1; - set .@swordman_p,.@swordman_p+1; - break; - } - mes "[Hanson]"; - mes "You're responsible for a task that requires you to cooperate with many people. If you handle it alone, it will take a lot of effort and time."; + 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; - mes "[Hanson]"; - mes "But if you cooperate with others, it will be simple and an enjoyable task. You would... "; + 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; - switch(select("Handle it myself, even if it's hard.:Ask friends to help.")) { - case 1: - set .@magician_p,.@magician_p+1; - break; - case 2: - set .@merchant_p,.@merchant_p+1; - break; - } - mes "[Hanson]"; - mes "You happen to"; - mes "find a girl who"; - mes "fainted on the street."; - mes "What would you do?"; + 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; - switch(select("Carry her to a hospital.:Assess the situation before taking action.:Just ignore it.")) { - case 1: - set .@acolyte_p,.@acolyte_p+1; - break; - case 2: - set .@swordman_p,.@swordman_p+1; - set .@archer_p,.@archer_p+1; - break; - case 3: - set .@magician_p,.@magician_p+1; - set .@thief_p,.@thief_p+1; - set .@merchant_p,.@merchant_p+1; - break; - } - mes "[Hanson]"; - mes "You happen to"; - mes "pick up 'Clothing.'"; - mes "What would you do?"; + break; + case 5: + mes "[Bruce]"; + mes "If you need more information, you can always go to"; + mes "'iro.ragnarokonline.com'"; + close; + } + } +} + +new_1-3,121,41,4 duplicate(NvBruce) Bruce#nv1 57 +new_2-3,121,41,4 duplicate(NvBruce) Bruce#nv2 57 +new_3-3,121,41,4 duplicate(NvBruce) Bruce#nv3 57 +new_4-3,121,41,4 duplicate(NvBruce) Bruce#nv4 57 +new_5-3,121,41,4 duplicate(NvBruce) Bruce#nv5 57 + +//============================================================================ +// Eden Group Officer (Real Combat Training) +//============================================================================ +- script Eden Group Officer#nv::NvEdn -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 Rune 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; + }else{ + 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; - switch(select("Check the brand.:Wonder who lost it.:Finder's keepers!:Leave it where it was.")) { - case 1: - set .@merchant_p,.@merchant_p+1; - break; - case 2: - set .@acolyte_p,.@acolyte_p+1; - break; - case 3: - set .@merchant_p,.@merchant_p+1; - set .@thief_p,.@thief_p+1; - break; - case 4: - set .@magician_p,.@magician_p+1; - break; - } - mes "[Hanson]"; - mes "You happened to accidentally slip your tongue in the middle of a conversation. How do you cope with this situation?"; + 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("Pretend it's a joke.:Change the subject.:Analyze it.:Apologize honestly.")) { + switch(select("Prontera:Morocc:Payon:Alberta:Geffen:Cancel")) { case 1: - set .@thief_p,.@thief_p+1; - break; + 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."; + close2; + if(checkquest(7123) == 0 || checkquest(7123) == 1) { erasequest 7123; } + if(checkquest(7124) == 0 || checkquest(7124) == 1) { erasequest 7124; } + if(checkquest(7126) == 0 || checkquest(7126) == 1) { erasequest 7126; } + if(checkquest(7127) == 0 || checkquest(7127) == 1) { erasequest 7127; } + nude; + if(countitem(2819) > 0) delitem 2819,1; // Swordsman_Manual + if(countitem(2820) > 0) delitem 2820,1; // Thief_Manual + if(countitem(2821) > 0) delitem 2821,1; // Acolyte_Manual + if(countitem(2822) > 0) delitem 2822,1; // Archer_Manual + if(countitem(2823) > 0) delitem 2823,1; // Merchant_Manual + if(countitem(2824) > 0) delitem 2824,1; // Mage_Manual + savepoint "prontera",273,354; + warp "prontera",273,354; + end; case 2: - set .@swordman_p,.@swordman_p+1; - break; + 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."; + close2; + if(checkquest(7123) == 0 || checkquest(7123) == 1) { erasequest 7123; } + if(checkquest(7124) == 0 || checkquest(7124) == 1) { erasequest 7124; } + if(checkquest(7126) == 0 || checkquest(7126) == 1) { erasequest 7126; } + if(checkquest(7127) == 0 || checkquest(7127) == 1) { erasequest 7127; } + nude; + if(countitem(2819) > 0) delitem 2819,1; // Swordsman_Manual + if(countitem(2820) > 0) delitem 2820,1; // Thief_Manual + if(countitem(2821) > 0) delitem 2821,1; // Acolyte_Manual + if(countitem(2822) > 0) delitem 2822,1; // Archer_Manual + if(countitem(2823) > 0) delitem 2823,1; // Merchant_Manual + if(countitem(2824) > 0) delitem 2824,1; // Mage_Manual + savepoint "morocc",150,99; + warp "moc_ruins",155,44; + end; case 3: - set .@magician_p,.@magician_p+1; - break; + mes "[Eden Group Officer]"; + mes "Just north of Payon you'll find the Archer Village."; + mes "Good luck on your journeys."; + close2; + if(checkquest(7123) == 0 || checkquest(7123) == 1) { erasequest 7123; } + if(checkquest(7124) == 0 || checkquest(7124) == 1) { erasequest 7124; } + if(checkquest(7126) == 0 || checkquest(7126) == 1) { erasequest 7126; } + if(checkquest(7127) == 0 || checkquest(7127) == 1) { erasequest 7127; } + nude; + if(countitem(2819) > 0) delitem 2819,1; // Swordsman_Manual + if(countitem(2820) > 0) delitem 2820,1; // Thief_Manual + if(countitem(2821) > 0) delitem 2821,1; // Acolyte_Manual + if(countitem(2822) > 0) delitem 2822,1; // Archer_Manual + if(countitem(2823) > 0) delitem 2823,1; // Merchant_Manual + if(countitem(2824) > 0) delitem 2824,1; // Mage_Manual + savepoint "payon",70,100; + warp "payon",70,100; + end; case 4: - set .@acolyte_p,.@acolyte_p+1; - break; - } - mes "[Hanson]"; - mes "You're on a trip with your beloved. Your significant other then asks you to buy a souvenir that's not particularly good. What do you do?"; - next; - switch(select("Buy the item for her/him.:Say 'no.':Promise it for next time.")) { - case 1: - set .@swordman_p,.@swordman_p+1; - break; - case 2: - set .@merchant_p,.@merchant_p+1; - break; - case 3: - set .@thief_p,.@thief_p+1; - break; + 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."; + close2; + if(checkquest(7123) == 0 || checkquest(7123) == 1) { erasequest 7123; } + if(checkquest(7124) == 0 || checkquest(7124) == 1) { erasequest 7124; } + if(checkquest(7126) == 0 || checkquest(7126) == 1) { erasequest 7126; } + if(checkquest(7127) == 0 || checkquest(7127) == 1) { erasequest 7127; } + nude; + if(countitem(2819) > 0) delitem 2819,1; // Swordsman_Manual + if(countitem(2820) > 0) delitem 2820,1; // Thief_Manual + if(countitem(2821) > 0) delitem 2821,1; // Acolyte_Manual + if(countitem(2822) > 0) delitem 2822,1; // Archer_Manual + if(countitem(2823) > 0) delitem 2823,1; // Merchant_Manual + if(countitem(2824) > 0) delitem 2824,1; // Mage_Manual + savepoint "alberta",116,57; + warp "alberta",116,57; + end; + case 5: + mes "[Eden Group Officer]"; + mes "Geffen, is known as the Magical City of Rune Midgard."; + mes "I will send you near the Fountains."; + mes "Goddess Freya bless you."; + close2; + if(checkquest(7123) == 0 || checkquest(7123) == 1) { erasequest 7123; } + if(checkquest(7124) == 0 || checkquest(7124) == 1) { erasequest 7124; } + if(checkquest(7126) == 0 || checkquest(7126) == 1) { erasequest 7126; } + if(checkquest(7127) == 0 || checkquest(7127) == 1) { erasequest 7127; } + nude; + if(countitem(2819) > 0) delitem 2819,1; // Swordsman_Manual + if(countitem(2820) > 0) delitem 2820,1; // Thief_Manual + if(countitem(2821) > 0) delitem 2821,1; // Acolyte_Manual + if(countitem(2822) > 0) delitem 2822,1; // Archer_Manual + if(countitem(2823) > 0) delitem 2823,1; // Merchant_Manual + if(countitem(2824) > 0) delitem 2824,1; // Mage_Manual + savepoint "geffen",120,100; + warp "geffen",128,66; + end; + 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; } - mes "[Hanson]"; - mes "Okay~! That's all for the test. You've finished all the Training Grounds courses. Congratulations!"; - next; - mes "[Hanson]"; - mes "I've prepared some items for you since you passed the personality test. Please take them, you've earned it."; + case 2: + mes "[Eden Group Officer]"; + mes "Prontera is the main capital of the Rune-Midgard Kingdom. Here you will find Merchants selling their items and is a favorite gathering point of adventurers."; next; - //--------------------------------------------------------------------------------------------------------------------------------------------------- - set nov_3_swordman,40; - getitem 501,4; //Red_Potion - getitem 503,2; //Yellow_Potion - getitem 506,2; //Green_Potion - //------------------------------------------------------------------------------------------------------------------------------------------------- + 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 "[Hanson]"; - mes "Now, we will recommend a suitable job for you after analyzing the results of your personality test. Please wait a moment."; + mes "[Eden Group Officer]"; + mes "Morocc is a city located in the desert that was recently destroyed due to an evil monster named Satan Morroc. The Thief Guild has been working to restore it to it's former glory."; next; - mes "[Hanson]"; - mes "..."; + 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 "[Hanson]"; - mes "..."; - mes "......"; + mes "[Eden Group Officer]"; + mes "Alberta is the trading hub of Rune Midgard. The Merchant Guild is located here and the docks have ships that will take you to different island cities."; next; - mes "[Hanson]"; - mes "Here's the"; - mes "final result"; - mes "of your test."; + mes "[Eden Group Officer]"; + mes "Geffen is known as the magical city of Rune Midgard. The Mage Guild is located here and research for new magic is always being conducted at their headquarters."; next; - if (.@swordman_p > .@magician_p) { - if (.@swordman_p > .@merchant_p) { - if (.@swordman_p > .@thief_p) { - if (.@swordman_p > .@archer_p) { - if (.@swordman_p > .@acolyte_p) { - set .@job_c,1; - } - else { - set .@job_c,6; - } - } - else { - if (.@archer_p > .@acolyte_p) { - set .@job_c,5; - } - else { - set .@job_c,6; - } - } - } - else { - if (.@thief_p > .@archer_p) { - if (.@thief_p > .@acolyte_p) { - set .@job_c,4; - } - else { - set .@job_c,6; - } - } - else { - if (.@archer_p > .@acolyte_p) { - set .@job_c,5; - } - else { - set .@job_c,6; - } - } - } - } - else { - if (.@merchant_p > .@thief_p) { - if (.@merchant_p > .@archer_p) { - if (.@merchant_p > .@acolyte_p) { - set .@job_c,3; - } - else { - set .@job_c,6; - } - } - else { - if (.@archer_p > .@acolyte_p) { - set .@job_c,5; - } - else { - set .@job_c,6; - } - } - } - else { - if (.@thief_p > .@archer_p) { - if (.@thief_p > .@acolyte_p) { - set .@job_c,4; - } - else { - set .@job_c,6; - } - } - else { - if (.@archer_p > .@acolyte_p) { - set .@job_c,5; - } - else { - set .@job_c,6; - } - } - } - } - } - else { - if (.@magician_p > .@merchant_p) { - if (.@magician_p > .@thief_p) { - if (.@magician_p > .@archer_p) { - if (.@magician_p > .@acolyte_p) { - set .@job_c,2; - } - else { - set .@job_c,6; - } - } - else { - if (.@archer_p > .@acolyte_p) { - set .@job_c,5; - } - else { - set .@job_c,6; - } - } - } - else { - if (.@thief_p > .@archer_p) { - if (.@thief_p > .@acolyte_p) { - set .@job_c,4; - } - else { - set .@job_c,6; - } - } - else { - if (.@archer_p > .@acolyte_p) { - set .@job_c,5; - } - else { - set .@job_c,6; - } - } - } - } - else { - if (.@merchant_p > .@thief_p) { - if (.@merchant_p > .@archer_p) { - if (.@merchant_p > .@acolyte_p) { - set .@job_c,3; - } - else { - set .@job_c,6; - } - } - else { - if (.@archer_p > .@acolyte_p) { - set .@job_c,5; - } - else { - set .@job_c,6; - } - } - } - else { - if (.@thief_p > .@archer_p) { - if (.@thief_p > .@acolyte_p) { - set .@job_c,4; - } - else { - set .@job_c,6; - } - } - else { - if (.@archer_p > .@acolyte_p) { - set .@job_c,5; - } - else { - set .@job_c,6; - } - } - } - } + 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; + } + } + +OnTouch: + emotion e_gasp; + end; +} + +new_1-3,97,50,4 duplicate(NvEdn) Eden Group Officer#nv1 729,5,5 +new_2-3,97,50,4 duplicate(NvEdn) Eden Group Officer#nv2 729,5,5 +new_3-3,97,50,4 duplicate(NvEdn) Eden Group Officer#nv3 729,5,5 +new_4-3,97,50,4 duplicate(NvEdn) Eden Group Officer#nv4 729,5,5 +new_5-3,97,50,4 duplicate(NvEdn) Eden Group Officer#nv5 729,5,5 + +//============================================================================ +// Merchant (Real Combat Training) +//============================================================================ +- shop Merchant#nv::NvPotato 93,516:15 + +new_1-3,100,50,4 duplicate(NvPotato) Merchant#nv1 93 +new_2-3,100,50,4 duplicate(NvPotato) Merchant#nv2 93 +new_3-3,100,50,4 duplicate(NvPotato) Merchant#nv3 93 +new_4-3,100,50,4 duplicate(NvPotato) Merchant#nv4 93 +new_5-3,100,50,4 duplicate(NvPotato) Merchant#nv5 93 + +//============================================================================ +// Trainer (Real Combat Training) +//============================================================================ +- script Level 1 Trainer#nv::NvBrutus 84,{ + 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 guid you to another level. Which level do you want to go to?"; + next; + for(set .@i,1; .@i<=5; set .@i,.@i+1) { + if(strnpcinfo(2) == "nv1") { + set .@select$,"Send me to Level 2:Send me to Level 3:Send me to Level 4:Send me to Level 5"; } - if (.@job_c == 1) { - mes "[Hanson]"; - mes "Although you're very straight forward and simple minded, you"; - mes "have a strong will and want to be an important person for this world."; - next; - mes "[Hanson]"; - mes "You're also always"; - mes "trying to protect the weak."; - next; - mes "[Hanson]"; - mes "For you, who has your own will, ^696969Swordman^000000 class is the most suitable job."; - next; - mes "[Hanson]"; - mes "So would you like to accept our recommendation, or would you like to choose a job on your own?"; - next; - switch(select("Swordman!:My own choice!")) { - 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 "^660000List of Supplies^000000"; - mes "^0000335 Free Ticket for Kafra Storage^000000"; - mes "^0000335 Free Ticket for Kafra Transportation^000000"; - ////mes "^000099100 zeny^000000"; - mes "^0000331 Falchion^000000"; - mes "^0000337 Phracon^000000"; - next; - set nov_3_swordman,40; - getitem 7059,5; //Cargo_Free_Ticket - getitem 7060,5; //Warp_Free_Ticket - getitem 1104,1; //Falchion - getitem 1010,7; //Phracon - ////getgold 100 - mes "[Hanson]"; - mes "Please check your inventory 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."; - next; - mes "[Hanson]"; - mes "'Zeny' is the currency of Rune-Midgard. 'Falchion' is a weapon that will be very useful once you become a Swordman."; - next; - mes "[Hanson]"; - mes "'Phracon' is an ore which can be used to upgrade lvl 1 weapons. To strengthen your Falchion with this Phracon, please visit a forge in one of the towns."; - 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; - mes "[Hanson]"; - mes "You will now"; - mes "be teleported."; - mes "Good luck,"; - mes "^A62A2A" + strcharinfo(0) + "^000000"; - mes "and farewell."; - close2; - 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; - savepoint "izlude",93,104; - warp "izlude_in",74,167; - end; - case 2: - callsub S_UserJobchoice,"Swordsman"; - end; - } + if(strnpcinfo(2) == "nv2") { + set .@select$,"Send me to Level 1:Send me to Level 3:Send me to Level 4:Send me to Level 5"; } - else if (.@job_c == 2) { - mes "[Hanson]"; - mes "You enjoy analyzing things around you, and you're very independent. You have use insightful judgment and you can be very shy and logical."; - next; - mes "[Hanson]"; - mes "For you, the observative intellectual, ^696969Mage^000000 is the most suitable job."; - next; - mes "[Hanson]"; - mes "So, would you like to accept our recommendation or would you like to choose a job on your own?"; - next; - switch(select("Mage!:My own choice!")) { - case 1: - mes "[Hanson]"; - mes "That's a great choice!"; - mes "After you receive all the supplies, I'll teleport you to the Mage town."; - next; - mes "^660000List of Supplies^000000"; - mes "^0000335 Free Ticket for Kafra Storage^000000"; - mes "^0000335 Free Ticket for Kafra Transportation^000000"; - ////mes "^000099100 zeny^000000"; - mes "^0000331 Rod^000000"; - mes "^0000331 Cutter^000000"; - mes "^0000337 Phracon^000000"; - next; - //--------------------------------------------------------------------------------------------------------------------------------------------------- - set nov_3_swordman,40; - getitem 7059,5; //Cargo_Free_Ticket - getitem 7060,5; //Warp_Free_Ticket - getitem 1601,1; //Rod - getitem 1204,1; //Cutter - getitem 1010,7; //Phracon - ////getgold 100 - //--------------------------------------------------------------------------------------------------------------------------------------------------- - mes "[Hanson]"; - mes "Please check your inventory 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."; - next; - mes "[Hanson]"; - mes "'Zeny' is the currency of Rune-Midgard. That 'Cutter' has been given to you so that you can fight monsters before you become a Mage."; - next; - mes "[Hanson]"; - mes "Once you become a Mage, you can use the 'Rod' that has been given to you. It will be very useful during your early days as a Mage."; - next; - mes "[Hanson]"; - mes "'Phracon' is an ore which can be used to upgrade lvl 1 weapons. To strengthen your Level 1 weapons with this Phracon, please visit a forge in one of the towns."; - next; - mes "[Hanson]"; - mes "The town you will arrive is named 'Geffen'."; - mes ""; - mes "The mage academy is located in the Northwest part in town. Please remember this."; - next; - mes "[Hanson]"; - mes "You'll now be teleported."; - mes "Good luck, ^A62A2A" + strcharinfo(0) + "^000000 and farewell."; - close2; - 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; - savepoint "geffen",119,37; - warp "geffen_in",163,98; - end; - case 2: - callsub S_UserJobchoice,"Mage"; - end; - } + if(strnpcinfo(2) == "nv3") { + set .@select$,"Send me to Level 1:Send me to Level 2:Send me to Level 4:Send me to Level 5"; } - else if (.@job_c == 3) { - mes "[Hanson]"; - mes "You're very willful and very well organized. You've already set a goal in life and have become very responsible for your actions."; - next; - mes "[Hanson]"; - mes "Because of your drive and desire to succeed, ^696969Merchant^000000 is the most suitable job for you."; - next; - mes "[Hanson]"; - mes "So, would you like to accept our recommendation or would you like to choose a job on your own?"; - next; - switch(select("Merchant!:My own choice!")) { - case 1: - mes "[Hanson]"; - mes "That's a great choice!"; - mes "After you receive all the supplies, I will teleport you to the merchant town."; - next; - mes "^660000List of Supplies^000000"; - mes "^0000334 Free Ticket for Kafra Storage^000000"; - mes "^0000334 Free Ticket for Kafra Transportation^000000"; - mes "^0000334 Free Ticket for the Cart Service^000000"; - ////mes "^000099100 zeny^000000"; - mes "^0000331 Battle Axe^000000"; - mes "^0000337 Phracon^000000"; - next; - //--------------------------------------------------------------------------------------------------------------------------------------------------- - set nov_3_swordman,40; - getitem 7059,4; //Cargo_Free_Ticket - getitem 7060,4; //Warp_Free_Ticket - getitem 7061,4; //Cart_Free_Ticket - getitem 1351,1; //Battle_Axe - getitem 1010,7; //Phracon - ////getgold 100 - //--------------------------------------------------------------------------------------------------------------------------------------------------- - mes "[Hanson]"; - mes "Please check your inventory 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."; - next; - mes "[Hanson]"; - mes "'Zeny' is the currency of Rune-Midgard. 'Battle Axe' will come in handy once you become a Merchant."; - next; - mes "[Hanson]"; - mes "'Phracon' is an ore which can be used to upgrade lvl 1 weapons. To strengthen your Battle Axe with this Phracon, please visit a forge in one of the towns."; - next; - mes "[Hanson]"; - mes "The town you will be sent to is named Alberta. The Merchant Guild is located to the SouthWest within Alberta. Please remember this."; - next; - mes "[Hanson]"; - mes "You will now"; - mes "be teleported."; - mes "Good luck,"; - mes "^A62A2A" + strcharinfo(0) + "^000000"; - mes "and farewell."; - close2; - 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; - savepoint "alberta",30,232; - warp "alberta_in",62,44; - end; - case 2: - callsub S_UserJobchoice,"Merchant"; - end; - } + if(strnpcinfo(2) == "nv4") { + set .@select$,"Send me to Level 1:Send me to Level 2:Send me to Level 3:Send me to Level 5"; } - else if (.@job_c == 4) { - mes "[Hanson]"; - mes "Carpe diem:"; - mes "Seize the day."; - mes "That's how you live."; - next; - mes "[Hanson]"; - mes "From your natural curiosity"; - mes "comes a happy-go-lucky sense of adventure, and a desire to explore."; - next; - mes "[Hanson]"; - mes "For someone like you,"; - mes "^696969Thief^000000 is the most suitable job.'"; - next; - mes "[Hanson]"; - mes "So, would you like to accept our recommendation or would you like to choose a job on your own?"; - next; - switch(select("Thief!:My own choice!")) { - case 1: - mes "[Hanson]"; - mes "That's a great choice!"; - mes "After you receive all the supplies, I'll teleport you to the Thief town."; - next; - mes "^660000List of Supplies^000000"; - mes "^0000335 Free Ticket for Kafra Storage^000000"; - mes "^0000335 Free Ticket for Kafra Transportation^000000"; - ////mes "^000099100 Zeny^000000"; - mes "^0000331 Main Gauche^000000"; - mes "^0000337 Phracon^000000"; - next; - //--------------------------------------------------------------------------------------------------------------------------------------------------- - set nov_3_swordman,40; - getitem 7059,5; //Cargo_Free_Ticket - getitem 7060,5; //Warp_Free_Ticket - getitem 1207,1; //Main_Gauche - getitem 1010,7; //Phracon - ////getgold 100 - //--------------------------------------------------------------------------------------------------------------------------------------------------- - mes "[Hanson]"; - mes "Please check your inventory 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."; - next; - mes "[Hanson]"; - mes "'Zeny' is the currency of Rune-Midgard. 'Main Gauche' is a weapon that will be very useful once you become a Thief."; - next; - mes "[Hanson]"; - mes "'Phracon' is an ore which can be used to upgrade lvl 1 weapons. To strengthen your Main Gauche with this Phracon, please visit a forge in one of the towns."; - next; - mes "[Hanson]"; - mes "The town you will be sent to is named Morroc. The Thief Guild is in the first underground floor of the pyramid NorthWest of Morroc. Remember this."; - next; - mes "[Hanson]"; - mes "You will now"; - mes "be teleported."; - mes "Good luck,"; - mes "^A62A2A" + strcharinfo(0) + "^000000"; - mes "and farewell."; - close2; - savepoint "morocc",150,99; - warp "moc_ruins",155,44; - end; - case 2: - callsub S_UserJobchoice,"Thief"; - end; - } + if(strnpcinfo(2) == "nv5") { + set .@select$,"Send me to Level 1:Send me to Level 2:Send me to Level 3:Send me to Level 4"; } - else if (.@job_c == 5) { - mes "[Hanson]"; - mes "You always try to understand other people, even though they are strange. You expect others to try to understand you."; - next; - mes "[Hanson]"; - mes "You refuse to be a ordinary person as you persue your dream. As a person sensitive to nature, ^696969Archer^000000 is the most suitable job for you."; - next; - mes "[Hanson]"; - mes "So, would you like to accept our recommendation or would you like to choose a job on your own?"; - next; - switch(select("Archer!:My own choice!")) { - case 1: - mes "[Hanson]"; - mes "That's a great choice!"; - mes "After you receive all the supplies, I'll teleport you to the Archer town."; - next; - mes "^660000List of Supplies^000000"; - mes "^0000335 Free Ticket for Kafra Storage^000000"; - mes "^0000335 Free Ticket for Kafra Transportation^000000"; - ////mes "^000099100 Zeny^000000"; - mes "^0000331 Composite Bow^000000"; - mes "^0000337 Phracon^000000"; - next; - //--------------------------------------------------------------------------------------------------------------------------------------------------- - set nov_3_swordman,40; - getitem 7059,5; //Cargo_Free_Ticket - getitem 7060,5; //Warp_Free_Ticket - getitem 1704,1; //Composite_Bow - getitem 1010,7; //Phracon - ////getgold 100 - //--------------------------------------------------------------------------------------------------------------------------------------------------- - mes "[Hanson]"; - mes "Please check your inventory 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."; - next; - mes "[Hanson]"; - mes "'Zeny' is the currency of Rune-Midgard. 'Composite Bow' is a weapon that will be very useful once you become an Archer."; - next; - mes "[Hanson]"; - mes "'Phracon' is an ore which can be used to upgrade lvl 1 weapons. To strengthen your Composite Bow with this Phracon, please visit a forge in one of the towns."; - next; - mes "[Hanson]"; - mes "The town you will be sent to is named Payon. The Archer Guild is located to the NorthWest in town. Please remember this."; - next; - mes "[Hanson]"; - mes "You will now"; - mes "be teleported."; - mes "Good luck,"; - mes "^A62A2A" + strcharinfo(0) + "^000000"; - mes "and farewell."; - close2; - 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; - savepoint "payon",70,100; - warp "payon_in02",64,65; - end; - case 2: - callsub S_UserJobchoice,"Archer"; - end; - } - } - else if (.@job_c == 6) { - mes "[Hanson]"; - mes "You are very warm hearted and considerate, and you're willing to sacrifice your well being for the sake of others."; - next; - mes "[Hanson]"; - mes "You're always eager to help others, which is why you're so well liked."; - next; - mes "[Hanson]"; - mes "For you who are kind of heart, ^696969Acolyte^000000 is the most suitable job."; - next; - mes "[Hanson]"; - mes "So, would you like to accept our recommendation or would you like to choose a job on your own?"; - next; - switch(select("Acolyte!:My own choice!")) { - case 1: - mes "[Hanson]"; - mes "That's a great choice!"; - mes "After you receive all the supplies, I'll teleport you behind the Sanctuary."; - next; - mes "^660000List of Supplies^000000"; - mes "^0000335 Free Ticket for Kafra Storage^000000"; - mes "^0000335 Free Ticket for Kafra Transportation^000000"; - ////mes "^000099100 Zeny^000000"; - mes "^0000331 Mace^000000"; - mes "^0000337 Phracon^000000"; - next; - //--------------------------------------------------------------------------------------------------------------------------------------------------- - set nov_3_swordman,40; - getitem 7059,5; //Cargo_Free_Ticket - getitem 7060,5; //Warp_Free_Ticket - getitem 1504,1; //Mace - getitem 1010,7; //Phracon - ////getgold 100 - //--------------------------------------------------------------------------------------------------------------------------------------------------- - mes "[Hanson]"; - mes "Please check your inventory 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."; - next; - mes "[Hanson]"; - mes "'Zeny' is the currency of Rune-Midgard. 'Mace' is a weapon that will be very useful once you become an Acolyte."; - next; - mes "[Hanson]"; - mes "'Phracon' is an ore which can be used to upgrade lvl 1 weapons. To strengthen your Mace with this Phracon, please visit a forge in one of the towns."; - next; - mes "[Hanson]"; - mes "You have chosen to be an Acolyte. The town you will be sent to is named Prontera. The Sanctuary is NorthEast in Prontera. Please remember this."; - next; - mes "[Hanson]"; - mes "You will now"; - mes "be teleported."; - mes "Good luck,"; - mes "^A62A2A" + strcharinfo(0) + "^000000"; - mes "and farewell."; - close2; - 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; - savepoint "prontera",117,72; - warp "prt_church",172,19; - end; - case 2: - callsub S_UserJobchoice,"Acolyte"; - end; - } + } + switch(select(""+.@select$+":Cancel")) { + case 1: + if(strnpcinfo(2) == "nv1") { + warp "new_2-3",96,21; + }else{ + warp "new_1-3",96,21; } + end; case 2: - mes "[Hanson]"; - mes "I understand."; - mes "Let me transport"; - mes "you to the world of"; - mes "Ragnarok Online"; - mes "immediately."; - next; - mes "[Hanson]"; - mes "For more information and knowledge, I hope you will obtain your own experiences in Rune-Midgard."; - next; - mes "[Hanson]"; - mes "Lastly..."; - mes "I hope you will"; - mes "become a nice player,"; - mes ""+ strcharinfo(0) +"."; - mes "Fare well."; - next; - set nov_3_swordman,40; - 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 .@startmap,rand(1,6); - if ((.@startmap > 0) && (.@startmap < 2)) { - savepoint "prontera",117,72; - warp "prt_fild08",170,371; - } - else if ((.@startmap > 1) && (.@startmap < 3)) { - savepoint "geffen",119,37; - warp "gef_fild07",327,188; - } - else if ((.@startmap > 2) && (.@startmap < 4)) { - savepoint "alberta",30,232; - warp "pay_fild03",388,70; - } - else if ((.@startmap > 3) && (.@startmap < 5)) { - savepoint "morocc",150,99; - warp "moc_fild07",198,39; + if(strnpcinfo(2) == "nv1" || strnpcinfo(2) == "nv2") { + warp "new_3-3",96,21; + }else{ + warp "new_2-3",96,21; } - else if ((.@startmap > 4) && (.@startmap < 6)) { - savepoint "payon",256,242; - warp "pay_fild01",334,354; + end; + case 3: + if(strnpcinfo(2) == "nv4" || strnpcinfo(2) == "nv5") { + warp "new_3-3",96,21; + }else{ + warp "new_4-3",96,21; } - else if ((.@startmap > 5) && (.@startmap < 7)) { - savepoint "izlude",93,104; - warp "prt_fild08",357,212; + end; + case 4: + if(strnpcinfo(2) == "nv5") { + warp "new_4-3",96,21; + }else{ + warp "new_5-3",96,21; } end; + case 5: + close; } - } - else if (nov_3_swordman == 40) { - mes "[Hanson]"; - mes "Hmmm...?"; - mes "Why are you"; - mes "still here?"; - next; - mes "[Hanson]"; - mes "You didn't say anything, so"; - mes "I assumed you were already gone. Since you have already finished the final test and I gave you all the supplies..."; - next; - mes "[Hanson]"; - mes "The only thing"; - mes "left to do is to lead"; - mes "you to Rune-Midgard~"; - next; - 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 .@startmap,rand(1,6); - if ((.@startmap > 0) && (.@startmap < 2)) { - savepoint "prontera",117,72; - warp "prt_fild08",170,371; - } - else if ((.@startmap > 1) && (.@startmap < 3)) { - savepoint "geffen",119,37; - warp "gef_fild07",327,188; - } - else if ((.@startmap > 2) && (.@startmap < 4)) { - savepoint "alberta",30,232; - warp "pay_fild03",388,70; - } - else if ((.@startmap > 3) && (.@startmap < 5)) { - savepoint "morocc",150,99; - warp "moc_fild07",198,39; - } - else if ((.@startmap > 4) && (.@startmap < 6)) { - savepoint "payon",70,100; - warp "pay_fild01",334,354; - } - else if ((.@startmap > 5) && (.@startmap < 7)) { - savepoint "izlude",93,104; - warp "prt_fild08",357,212; - } - end; - } - else { - mes "[Hanson]"; - mes "Hello, you"; - mes "must be "+ strcharinfo(0) +"."; - next; - mes "[Hanson]"; - mes "I am Hanson,"; - mes "the person in"; - mes "charge of the"; - mes "personality test."; - next; - mes "[Hanson]"; - mes "Please speak"; - mes "to Bruce for"; - mes "'Class Explanation'"; - mes "before we begin your"; - mes "test. Thank you."; - close; - } - -S_UserJobchoice: - mes "[Hanson]"; - mes "I see. It's your choice."; - mes "There is no obligation to change to the job we recommend. Please choose the job you wish to become."; - next; - select( "Swordsman:Mage:Merchant:Thief:Archer:Acolyte" ); - // @menu is already set by Core. - setarray .@Jobs$[1],"Swordsman","Mage","Merchant","Thief","Archer","Acolyte"; - - mes "[Hanson]"; - mes "You have chosen"; - if (@menu == 1) { - mes "to become a Swordsman."; - mes "You will be sent to"; - mes "the town of Izlude."; - next; - mes "[Hanson]"; - mes "The Swordman Association is located to the Northwest in Izlude. Please remember this."; - } - else if (@menu == 2) { - mes "to become a Mage."; - mes "You will be sent to"; - mes "the town of Geffen."; + 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 "[Hanson]"; - mes "The Mage Academy is located in the NorthWest in town. Please remember this."; - } - else if (@menu == 3) { - mes "to become a Merchant."; - mes "You will be sent to"; - mes "the town of Alberta."; - } - else if (@menu == 4) { - mes "to become a Thief."; - mes "You will be sent to"; - mes "the town of Morroc."; + mes "[Trainer Brutus]"; + mes "Level 1 has the weakest monsters."; + mes "There you'll find Poring, Drops, Lunatics, Fabres, and Chonchons."; next; - mes "[Hanson]"; - mes "The Thief guild is in the underground 1st floor of a pyramid which is NorthWest of town. Please remember this."; - } - else if (@menu == 5) { - mes "to become an Archer."; - mes "You will be sent to"; - mes "the town of Payon."; + mes "[Trainer Brutus]"; + mes "Level 2 is more challenging."; + mes "There you'll find Condors, Pickys, Willows, Fabres, and Roda Frogs."; next; - mes "[Hanson]"; - mes "The Archer Guild is located to the NorthWest in Payon. Please remember this."; - } - else { - mes "to become an Acolyte."; - mes "You will be sent to"; - mes "the town of Prontera."; + mes "[Trainer Brutus]"; + mes "Level 3 is pretty much the same as Level 2."; + mes "There you'll find Condors, Pickys, Willows, Fabres, and Roda Frogs."; next; - mes "[Hanson]"; - mes "The Prontera Sanctuary is located to the NorthEast in Prontera. Please remember this."; - } - next; - 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 "^0000335 Free Ticket for Kafra Storage^000000"; - mes "^0000335 Free Ticket for Kafra Transportation^000000"; - mes "^0000331 Adventurer's Suit^000000"; - ////mes "^000099100 Zeny^000000"; - next; - //------------------------------------------------------------------------------------------------------------------------------------------------------------------------ - set nov_3_swordman,40; - getitem 7059,5; //Cargo_Free_Ticket - getitem 7060,5; //Warp_Free_Ticket - getitem 2305,1; //Adventure_Suit - ////getgold 100 - //------------------------------------------------------------------------------------------------------------------------------------------------------------------------ - 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."; - next; - mes "[Hanson]"; - mes "'Zeny' is the currency of Rune-Midgard. The 'Adventurer's Suit' will come in handy once you become a " + .@Jobs$[@menu] + "."; - next; - mes "[Hanson]"; - mes "You will now"; - mes "be teleported."; - mes "Good luck,"; - mes "^A62A2A" + strcharinfo(0) + "^000000"; - mes "and farewell."; - next; - 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; - if(@menu == 1) { - savepoint "izlude",93,104; - warp "izlude_in",74,167; - } - else if (@menu == 2) { - savepoint "geffen",119,37; - warp "geffen_in",163,98; - } - else if (@menu == 3) { - savepoint "alberta",30,232; - warp "alberta_in",62,44; - } - else if (@menu == 4) { - savepoint "morocc",150,99; - warp "moc_ruins",155,44; + mes "[Trainer Brutus]"; + mes "Level 4 has stronger monsters."; + mes "There you'll find Rockers, Spores, and Fabres."; + next; + mes "[Trainer Brutus]"; + mes "Level 5 is the same as Level 4."; + mes "There you'll find Rockers, Spores, 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; } - else if (@menu == 5) { - savepoint "payon",70,100; - warp "payon_in02",64,65; +} + +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 + +//============================================================================ +// Random Stuff (Guards & Bulletin Board) +//============================================================================ +new_1-1,66,114,4 script Bulletin Board#nv 111,{ + mes "^FF0000=================================^000000"; + mes "^FF0000 ^000000 ^E40CAA[Welcome]^CC0000 to ^FF9000Novice^7FFF00 Training ^00FF00Grounds ^E40CAA[Welcome]^FF0000^000000"; + mes "^FF0000=================================^000000"; + close; +} + +new_1-1,144,116,2 script Guard#nv1 105,{ + 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,107,2 script Guard#nv2 105,{ + mes "[Training Grounds Guard]"; + if(rand(2)) { + mes "Come in!"; + mes "I would like o welcome you to the Training Grounds!"; + next; + mes "[Training Grounds Guard]"; + mes "In here, you can prepare yourself for your future adventures throughout the Ragnarok world!"; } else { - savepoint "prontera",117,72; - warp "prt_church",172,19; + mes "Go, Novice, go!"; + mes "Fight, and grow stronger! Look towards a brighter tomorrow!"; } - return; + close; } -//Novice Instructor -new_1-4,91,22,4 script Bruce#nv 57,{ - if (Class == Job_Novice) { - if (nov_3_swordman == 20) { - mes "[Bruce]"; - mes "Let me explain the"; - mes "First Job Classes"; - mes "to you once again."; - mes "Which job did you"; - mes "have in mind?"; - next; - while(1) { - switch(select("Swordman:Mage:Archer:Merchant:Thief:Acolyte:End conversation.")) { - case 1: - mes "[Bruce]"; - mes "As the name implies, the"; - mes "Swordman is an expert in wielding Swords. They can also use Spear weapons, but typically you don't see Spear wielding Swordmen very often."; - next; - mes "[Bruce]"; - mes "Swordman possess strong physical strength, allowing them to equip heavy armor and weapons. Most weapon classes, except for bows and rods, can be equipped by the Swordman class."; - next; - mes "[Bruce]"; - mes "The only weakness of the Swordman class is that they cannot use magic spells. However, this can be compensated by using weapons with an elemental attribute."; - next; - mes "[Bruce]"; - mes "One of the greatest benefits of being a Swordman is having an enormous amount of HP, meaning they can more easily withstand damage from their enemies."; - next; - mes "[Bruce]"; - mes "After learning some strong attack skills, the Swordman is almost unbeatable in a melee fight."; - next; - mes "[Bruce]"; - mes "In Ragnarok Online, Swordman generally takes the position of tanker, protecting characters of other classes from being attacked or hurt."; - next; - mes "[Bruce]"; - mes "A Swordman is the ideal character to take the position of party leader. When advancing to the Second Job Class, Swordmen can change their jobs to ^8E2323Knights^000000 or ^8E2323Crusaders^000000."; - set nov_3_swordman,20; - next; - break; - case 2: - mes "[Bruce]"; - mes "The Mage class specializes in using the forces of Fire, Water, Earth and Lightning to attack their enemies."; - next; - mes "[Bruce]"; - mes "However, due to their weak physical strength, they are only allowed to equip Rods and Knives as weapons, and wear light armor for defense."; - next; - mes "[Bruce]"; - mes "Despite their physical weakness, they are able to do massive damage with their powerful spells. This fact alone attracts many people to join this class."; - next; - mes "[Bruce]"; - mes "In Ragnarok Online, the Mage takes a heavily offensive role in parties and is depended upon to deal great damage to enemies."; - next; - mes "[Bruce]"; - mes "When advancing to the Second Job Class, Mages can change their jobs to ^8E2323Wizards^000000 or ^8E2323Sages^000000."; - set nov_3_swordman,20; - next; - break; - case 3: - mes "[Bruce]"; - mes "The Archer class are experts in using Bow weapons, and are useful in parties for their long range attacks."; - next; - mes "[Bruce]"; - mes "Despite being physically weaker, Archers possess high accuracy with powerful long range bows. This allows them to attack and kill monsters from a safe distance."; - next; - mes "[Bruce]"; - mes "In Ragnarok Online, Archers have relatively little HP, but their long range attacks allow them to easily dispatch enemies before the enemy gets close enough to hurt them."; - next; - mes "[Bruce]"; - mes "When advancing to the Second Job Class, every Archer may advance to the ^8E2323Hunter^000000 class. Alternatively, male Archers may advance to become ^8E2323Bards^000000, and female Archers may become ^8E2323Dancers^000000."; - set nov_3_swordman,20; - next; - break; - case 4: - mes "[Bruce]"; - mes "The Merchant class specializes in commerce. Due to the strong influence of the Merchant Guild, the Merchant class is attractive to those who wish to focus on earning Zeny."; - next; - mes "[Bruce]"; - mes "In Ragnarok Online, the Merchant class possesses various economic abilities. Merchants can learn to sell items to NPCs for higher prices, as well as receive discounts from NPCs."; - next; - mes "[Bruce]"; - mes "In addition, Merchants may rent"; - mes "a Cart that greatly expands their carrying capacity and allows them to open shops with their own items and prices."; - next; - mes "[Bruce]"; - mes "When advancing to the Second Job Class, Merchants can change their jobs to ^8E2323Blacksmiths^000000 or ^8E2323Alchemists^000000."; - set nov_3_swordman,20; - next; - break; - case 5: - mes "[Bruce]"; - mes "Thieves are experts at using Dagger class weapons. They strike quickly and easily evade attacks from their enemies."; - next; - mes "[Bruce]"; - mes "Thieves can learn skills that allow them to hide from their enemies, or steal items from monsters. They are also feared for their use of poison, which slowly weakens"; - mes "their enemies."; - next; - mes "[Bruce]"; - mes "When advancing to the Second Job Class, Thieves can change their jobs to ^8E2323Assassins^000000 or ^8E2323Rogues^000000."; - set nov_3_swordman,20; - next; - break; - case 6: - mes "[Bruce]"; - mes "In Ragnarok Online, Acolytes act as messengers of God in Rune-Midgard. They possess skills that support their allies, as well as the life saving Heal ability."; - next; - mes "[Bruce]"; - mes "The Acolyte's support abilities make them a welcome addition to any party. In difficult situations, the Acolyte's skills will ensure the survival of the party, allowing other members to focus on offense."; - next; - mes "[Bruce]"; - mes "When advancing to the Second Job Class, Acolytes can change their jobs to ^8E2323Priests^000000 or ^8E2323Monks^000000."; - mes ""; - set nov_3_swordman,20; - next; - break; - case 7: - mes "[Bruce]"; - mes "For more information,"; - mes "please visit the official"; - mes "Ragnarok Online website:"; - mes " "; - mes "^0000FFiro.ragnarokonline.com^000000."; - next; - mes "[Bruce]"; - mes "Hanson is waiting"; - mes "for you now. Good luck"; - mes "out there, young Novice."; - close; - } - } - } - else if (nov_3_swordman == 40) { - mes "[Bruce]"; - mes "I'm sorry, but"; - mes "there's nothing"; - mes "more I can teach you."; - next; - mes "[Bruce]"; - mes "Hanson is waiting"; - mes "for you now. Good luck"; - mes "out there, young Novice."; - close; - } - else { - mes "[Bruce]"; - mes "You've gone"; - mes "through quite"; - mes "a bit of trouble"; - mes "to finish all the"; - mes "training courses."; - next; - mes "[Bruce]"; - mes "Hello there,"; - mes "^A62A2A" + strcharinfo(0) + "'^000000,"; - mes "pleased to meet you."; - mes "I am Bruce of the"; - mes "Rune-Midgarts Kingdom."; - next; - mes "[Bruce]"; - mes "My duty is to assist you by teaching information about each First Job Class, so that you can decide which job you want to be."; - next; - mes "[Bruce]"; - mes "The First Job Classes are"; - mes "^0000FFSwordman, Mage, Archer, Merchant, Thief and Acolyte^000000."; - next; - mes "[Bruce]"; - mes "So..."; - mes "Which job did"; - mes "you have in mind?"; - next; - while(1) { - switch(select("Swordman:Mage:Archer:Merchant:Thief:Acolyte:End conversation.")) { - case 1: - mes "[Bruce]"; - mes "As the name implies, the"; - mes "Swordman is an expert in wielding Swords. They can also use Spear weapons, but typically you don't see Spear wielding Swordmen"; - mes "very often."; - next; - mes "[Bruce]"; - mes "Swordmen possess strong physical strength, allowing them to equip heavy armor and weapons. Most weapon classes, except for bows and rods, can be equipped by the Swordman class."; - next; - mes "[Bruce]"; - mes "The only weakness of the Swordman class is that they cannot use magic spells. However, this can be compensated by using weapons with an elemental attribute."; - next; - mes "[Bruce]"; - mes "One of the greatest benefits of being a Swordman is having an enormous amount of HP, meaning they can more easily withstand damage from their enemies."; - next; - mes "[Bruce]"; - mes "After learning some strong attack skills, the Swordman is almost unbeatable in a melee fight."; - next; - mes "[Bruce]"; - mes "In Ragnarok Online, Swordman generally takes the position of tanker, protecting characters of other classes from being attacked or hurt."; - next; - mes "[Bruce]"; - mes "A Swordman is the ideal character to take the position of party leader. When advancing to the Second Job Class, Swordmen can change their jobs to ^8E2323Knights^000000 or ^8E2323Crusaders^000000."; - set nov_3_swordman,20; - next; - break; - case 2: - mes "[Bruce]"; - mes "The Mage class specializes in using the forces of Fire, Water, Earth and Lightning to attack their enemies."; - next; - mes "[Bruce]"; - mes "However, due to their weak physical strength, they are only allowed to equip Rods and Knives as weapons, and wear light armor for defense."; - next; - mes "[Bruce]"; - mes "Despite their physical weakness, they are able to do massive damage with their powerful spells. This fact alone attracts many people to join this class."; - next; - mes "[Bruce]"; - mes "In Ragnarok Online, the Mage takes a heavily offensive role in parties and is depended upon to deal great damage to enemies."; - next; - mes "[Bruce]"; - mes "When advancing to the Second Job Class, Mages can change their jobs to ^8E2323Wizards^000000 or ^8E2323Sages^000000."; - set nov_3_swordman,20; - next; - break; - case 3: - mes "[Bruce]"; - mes "The Archer class are experts in using Bow weapons, and are useful in parties for their long range attacks."; - next; - mes "[Bruce]"; - mes "Despite being physically weaker, Archers possess high accuracy with powerful long range bows. This allows them to attack and kill monsters from a safe distance."; - next; - mes "[Bruce]"; - mes "In Ragnarok Online, Archers have relatively little HP, but their long range attacks allow them to easily dispatch enemies before the enemy gets close enough to hurt them."; - next; - mes "[Bruce]"; - mes "When advancing to the Second Job Class, every Archer may advance to the ^8E2323Hunter^000000 class. Alternatively, male Archers may advance to become ^8E2323Bards^000000, and female Archers may become ^8E2323Dancers^000000."; - set nov_3_swordman,20; - next; - break; - case 4: - mes "[Bruce]"; - mes "The Merchant class specializes in commerce. Due to the strong influence of the Merchant Guild, the Merchant class is attractive to those who wish to focus on earning Zeny."; - next; - mes "[Bruce]"; - mes "In Ragnarok Online, the Merchant class possesses various economic abilities. Merchants can learn to sell items to NPCs for higher prices, as well as receive discounts from NPCs."; - next; - mes "[Bruce]"; - mes "In addition, Merchants may rent"; - mes "a Cart that greatly expands their carrying capacity and allows them to open shops with their own items and prices."; - next; - mes "[Bruce]"; - mes "When advancing to the Second Job Class, Merchants can change their jobs to ^8E2323Blacksmiths^000000 or ^8E2323Alchemists^000000."; - set nov_3_swordman,20; - next; - break; - case 5: - mes "[Bruce]"; - mes "Thieves are experts at using Dagger class weapons. They strike quickly and easily evade attacks from their enemies."; - next; - mes "[Bruce]"; - mes "Thieves can learn skills that allow them to hide from their enemies, or steal items from monsters. They are also feared for their use of poison, which slowly weakens"; - mes "their enemies."; - next; - mes "[Bruce]"; - mes "When advancing to the Second Job Class, Thieves can change their jobs to ^8E2323Assassins^000000 or ^8E2323Rogues^000000."; - set nov_3_swordman,20; - next; - break; - case 6: - mes "[Bruce]"; - mes "In Ragnarok Online, Acolytes act as messengers of God in Rune-Midgard. They possess skills that support their allies, as well as the life saving Heal ability."; - next; - mes "[Bruce]"; - mes "The Acolyte's support abilities make them a welcome addition to any party. In difficult situations, the Acolyte's skills will ensure the survival of the party, allowing other members to focus on offense."; - next; - mes "[Bruce]"; - mes "When advancing to the Second Job Class, Acolytes can change their jobs to ^8E2323Priests^000000 or ^8E2323Monks^000000."; - mes ""; - set nov_3_swordman,20; - next; - break; - case 7: - mes "[Bruce]"; - mes "For more information,"; - mes "please visit the official"; - mes "Ragnarok Online website:"; - mes " "; - mes "^0000FFiro.ragnarokonline.com^000000."; - next; - mes "[Bruce]"; - mes "Hanson is waiting"; - mes "for you now. Good luck"; - mes "out there, young Novice."; - close; - } - } - - } - } +new_1-2,161,182,5 script Instructor#nv 92,{ + 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; + warp "new_1-2",100,100; + end; } -// Training Ground Mobs -new_1-3,0,0,0,0 monster Poring 1002,10,0,0,0 +//============================================================================ +// Real Combat Training Mobs +//============================================================================ +new_1-3,0,0,0,0 monster ChonChon 1011,10,0,0,0 new_1-3,0,0,0,0 monster Drops 1113,10,0,0,0 +new_1-3,0,0,0,0 monster Fabre 1184,5,0,0,0 new_1-3,0,0,0,0 monster Lunatic 1063,10,0,0,0 -new_1-3,0,0,0,0 monster ChonChon 1011,10,0,0,0 +new_1-3,0,0,0,0 monster Poring 1002,10,0,0,0 new_2-3,0,0,0,0 monster Condor 1009,10,0,0,0 +new_2-3,0,0,0,0 monster Fabre 1184,5,0,0,0 new_2-3,0,0,0,0 monster Picky 1050,10,0,0,0 -new_2-3,0,0,0,0 monster Willow 1010,10,0,0,0 new_2-3,0,0,0,0 monster Roda Frog 1012,10,0,0,0 +new_2-3,0,0,0,0 monster Willow 1010,10,0,0,0 new_3-3,0,0,0,0 monster Condor 1009,10,0,0,0 +new_3-3,0,0,0,0 monster Fabre 1184,5,0,0,0 new_3-3,0,0,0,0 monster Picky 1050,10,0,0,0 -new_3-3,0,0,0,0 monster Willow 1010,10,0,0,0 new_3-3,0,0,0,0 monster Roda Frog 1012,10,0,0,0 +new_3-3,0,0,0,0 monster Willow 1010,10,0,0,0 +new_4-3,0,0,0,0 monster Fabre 1184,5,0,0,0 new_4-3,0,0,0,0 monster Rocker 1052,10,0,0,0 +new_4-3,0,0,0,0 monster Spore 1014,10,0,0,0 new_4-3,0,0,0,0 monster Thief Bug 1051,10,0,0,0 new_4-3,0,0,0,0 monster Thief Bug 1053,10,0,0,0 -new_4-3,0,0,0,0 monster Spore 1014,10,0,0,0 +new_5-3,0,0,0,0 monster Fabre 1184,5,0,0,0 new_5-3,0,0,0,0 monster Rocker 1052,10,0,0,0 -new_5-3,0,0,0,0 monster Thief Bug 1051,1,0,0,0 -new_5-3,0,0,0,0 monster Thief Bug 1053,1,0,0,0 new_5-3,0,0,0,0 monster Spore 1014,1,0,0,0 -new_1-3,0,0,0,0 monster Fabre 1184,5,0,0,0 -new_2-3,0,0,0,0 monster Fabre 1184,5,0,0,0 -new_3-3,0,0,0,0 monster Fabre 1184,5,0,0,0 -new_4-3,0,0,0,0 monster Fabre 1184,5,0,0,0 -new_5-3,0,0,0,0 monster Fabre 1184,5,0,0,0 - -//============================================================ -// Old changelog -//============================================================ -//= 1.0 Added the New Novice Training Grounds, a big thanks [MasterOfMuppets] -//= to Dr.Evil who did 90% of the work =) -//= 1.0b Temp measure to stop exploits. [Vicious] -//= 1.2 Removed Duplicates [Silent] -//= 1.3 Removed Duplicates [Toms] -//= 1.4 Added Kafra Free Cart Tickets, as in official one [Lupus] -//= 1.5 Fixed warps, removed map duplicates, typos [Lupus] -//= 1.6 Changed clone maps new_1-? -> new_zone0? [Lupus] -//= 1.7 Now Kafra Tickets are given at correct NPC/Actions [Lupus] -//= 1.7a a bit of optimization [Lupus] -//= 1.7b Corrected a little Typo Error. (bugreport:728) [Samuray22] -//= 1.7C Corrected another Typo Error. (bugreport:740) [Samuray22] -//============================================================ +new_5-3,0,0,0,0 monster Thief Bug 1051,1,0,0,0 +new_5-3,0,0,0,0 monster Thief Bug 1053,1,0,0,0
\ No newline at end of file |