// -- pRO Offical Daily Quest // -- Coded by: Gennosuke Kouga, vStyleRO 2009~2012 // -- Code included: NPCinUsed by ToastofDoom... // -- Wanted: Master Thief, Mage Hunter, Cargo Delivery, Message Delivery, Swab The Deck v.v.. // -- Cargo Delivery Quest alberta,90,62,4 script [Quest] Port Manager# 542,{ if( checkquest(9020,PLAYTIME) == 2 ) { erasequest 9020; goto readyfornext; } else if( checkquest(9020,PLAYTIME) != -1 ) { mes "[ Port Manager ]"; mes "Well, boxes are not arrived yet."; mes "Since you have completed to help me out yesterday, you need to come back 20 hours later."; close; } if( dailyquest_cd == 1 ) { mes "[ Port Manager ]"; mes "Why are you still here?"; mes "Please get me the first crate that is near the docks."; close; } else if( dailyquest_cd == 2 ) { if( BaseLevel < 21 ) { mes "[ Port Manager ]"; mes "You managed to bring it back! Great work!"; mes "Here is little gift for you!"; next; mes "[ Port Manager ]"; mes "I just need a help once a day."; mes "You already did work for today, so I will need some help 20 hours later."; mes "Right now, there is nothing to help."; set dailyquest_cd, 0; getexp 142,0; // -- Quest: Cargo Delivery Quest (9020) has been added. setquest 9020; // -- Item added to inventory: Red Potion (19) x 20 - Usable getitem 501, 20; // -- Item added to inventory: Warp Free Ticket (20) x 1 - Non-usable getitem 7060, 1; close; } mes "[ Port Manager ]"; mes "You managed to bring it back! Great work!"; mes "Here is little gift for you!"; next; mes "[ Port Manager ]"; mes "You did geat work to get me first crate. Now can you retrieve the second crate?"; mes "Last I heard it wandered off somewhere near the east part of the docks."; set dailyquest_cd, 3; getexp 142,0; // -- Item added to inventory: Red Potion (19) x 20 - Usable getitem 501, 20; // -- Item added to inventory: Warp Free Ticket (20) x 1 - Non-usable getitem 7060, 1; close; } else if( dailyquest_cd == 3 ) { mes "[ Port Manager ]"; mes "Why are you still here?"; mes "Please get me the second crate that is near the east part of the docks."; close; } else if( dailyquest_cd == 4 ) { if( BaseLevel > 20 && BaseLevel < 41 ) { mes "[ Port Manager ]"; mes "You're still in one piece! Excellent!"; mes "Here, some gifts as I promised."; next; mes "[ Port Manager ]"; mes "I just need a help once a day."; mes "You already did work for today, so I will need some help 20 hours later."; mes "Right now, there is nothing to help."; set dailyquest_cd, 0; getexp 1642,0; // -- Quest: Cargo Delivery Quest (9020) has been added. setquest 9020; // -- Item added to inventory: Orange Potion (8) x 5 - Usable getitem 502, 5; close; } mes "[ Port Manager ]"; mes "You did it again! Thank you so much."; mes "Here, some gifts as I promised."; next; mes "[ Port Manager ]"; mes "The third crate should be with that old Turtle Island scholar near the docks."; mes "Please get me the third crate."; set dailyquest_cd, 5; getexp 1642,0; // -- Item added to inventory: Orange Potion (21) x 5 - Usable getitem 502, 5; close; } else if( dailyquest_cd == 5 ) { mes "[ Port Manager ]"; mes "The third crate should be with that old Turtle Island scholar near the docks."; mes "That's where the last guy lost his nerve and dropped it!"; close; } else if( dailyquest_cd == 6 ) { if( BaseLevel > 40 && BaseLevel < 61 ) { mes "[ Port Manager ]"; mes "You are back! I almost can't believe my eyes!"; mes "Thanks so much! Ok, let me check."; next; mes "[ Port Manager ]"; mes "I just need a help once a day."; mes "You already did work for today, so I will need some help 20 hours later."; mes "Right now, there is nothing to help."; set dailyquest_cd, 0; getexp 18296,0; // -- Quest: Cargo Delivery Quest (9020) has been added. setquest 9020; // -- Item added to inventory: Yellow potion (42) x 10 - Usable getitem 503, 10; close; } mes "[ Port Manager ]"; mes "You did it again! Thank you so much."; mes "Here, some gifts as I promised."; next; mes "[ Port Manager ]"; mes "You're the only person I can rely on! Please get me the fourth crate."; mes "I must know where it is...but I can not remember somehow..."; mes "But I am sure, the number is marked on the crate. So you can find it somewhere..."; set dailyquest_cd, 7; getexp 18296,0; // -- Item added to inventory: Yellow potion (22) x 10 - Usable getitem 503, 10; close; } else if( dailyquest_cd == 7 ) { mes "[ Port Manager ]"; mes "You're the only person I can rely on! Please get me the fourth crate."; mes "I must know where it is...but I can not remember somehow..."; mes "But I am sure, the number is marked on the crate. So you can find it somewhere..."; close; } else if( dailyquest_cd == 8 ) { if( BaseLevel > 60 && BaseLevel < 81 ) { mes "[ Port Manager ]"; mes "I never thought I'd see the day when someone would retreive the fourth crate!"; mes "You must truly be the stuff of legends!"; mes "Thanks a million."; next; mes "[ Port Manager ]"; mes "Here are some gifts for you."; mes "I just need a help once a day."; mes "You already did work for today, so I will need some help 20 hours later."; mes "Right now, there is nothing to help."; set dailyquest_cd, 0; // -- Quest: Cargo Delivery Quest (9020) has been added. setquest 9020; getexp 178601,0; // -- Item added to inventory: White Potion (24) x 10 - Usable getitem 504, 10; close; } mes "[ Port Manager ]"; mes "I never thought I'd see the day when someone would retreive the fourth crate!"; mes "You must truly be the stuff of legends!"; mes "Thanks a million."; next; mes "[ Port Manager ]"; mes "Here are some gifts for you."; mes "There is no one else who can pull off the miracle of getting the fifth crate.."; mes "I've lost many good men trying to retreieve it! I mean a lot of them quit before the job was done!"; mes "Now, I can only trust you. Please find the fifth crate."; mes "I have no idea where it has gone...If you bring it I will treat you well."; set dailyquest_cd, 9; getexp 178601,0; // -- Item added to inventory: White Potion (11) x 10 - Usable getitem 504, 10; close; } else if( dailyquest_cd == 9 ) { mes "[ Port Manager ]"; mes "There is no one else who can pull off the miracle of getting the fifth crate.."; mes "I've lost many good men trying to retreieve it! I mean a lot of them quit before the job was done!"; mes "Now, I can only trust you. Please find the fifth crate."; mes "I have no idea where it has gone...If you bring it I will treat you well."; close; } else if( dailyquest_cd == 10 ) { if( BaseLevel > 80 && BaseLevel < 98 ) { mes "[ Port Manager ]"; mes "What is this?! Do my eyes deceive me? No, it's true!"; mes "You have recovered the fifth crate! I can't say how much I appreciate what you have done."; next; mes "[ Port Manager ]"; mes "Here are little rewards for you."; mes "I just need a help once a day."; mes "You already did work for today, so I will need some help 20 hours later."; mes "Right now, there is nothing to help."; set dailyquest_cd, 0; getexp 565471,0; // -- Quest: Cargo Delivery Quest (9020) has been added. setquest 9020; // -- Item added to inventory: Blue Potion (12) x 10 - Usable getitem 505, 10; close; } mes "[ Port Manager ]"; mes "Well, as I expected you did great job!!"; mes "I appreciate your help."; next; mes "[ Port Manager ]"; mes "The time has come for you to embark on your greatest challenge."; mes "The final, sixth create has been found. It broke free of the chains that held it"; mes "and has wandered throughout the city of Alberta, sowing terror and fear wherever it went."; // -- Item added to inventory: Blue Potion (13) x 10 - Usable set dailyquest_cd, 11; getexp 565471,0; getitem 505, 10; next; mes "[ Port Manager ]"; mes "Now our wounded scouts have reported seeing it center north of Alberta..."; close; } else if( dailyquest_cd == 11 ) { mes "[ Port Manager ]"; mes "Now our wounded scouts have reported seeing it center north of Alberta..."; close; } else if( dailyquest_cd == 12 ) { mes "[ Port Manager ]"; mes "It... it can't be possible...! You're back with the last crate!"; mes "You are truly one of the best at getting things back."; next; mes "[ Port Manager ]"; mes "Please take my little gifts."; mes "I wish you may bless with your adventure."; next; mes "[ Port Manager ]"; mes "I just need a help once a day."; mes "You already did work for today, so I will need some help 20 hours later."; mes "Right now, there is nothing to help."; set dailyquest_cd, 0; // -- Quest: Cargo Delivery Quest (9020) has been added. setquest 9020; // -- Item added to inventory: Yggdrasil Seed (28) x 1 - Usable getitem 608, 1; // -- Item added to inventory: Blue Potion (13) x 5 - Usable getitem 505, 5; close; } readyfornext: mes "[ Port Manager ]"; mes "Hello, adventure??"; mes "You look like a reliable sort of fellow."; mes "What say you do some port work for me and I will make it worth your while?"; next; mes "[ Port Manager ]"; mes "I am the port manager here."; mes "My job is to make sure the cargo from the ships are moved to the warehouses on time."; next; mes "[ Port Manager ]"; mes "My problem is that some cargo came in some very UNUSUAL containers."; mes "Some corporation was very uptight about security so they put their cargo inside MIMICs of all things!"; next; if( select("Okay, I'm up for the job!", "Some other time..") != 1 ) { mes "[ "+strcharinfo(0)+" ] mes "I am sorry, but I am very busy."; mes "I can not help you right now."; next; mes "[ Port Manager ]"; mes "Ok. Then come back when you have some time to spare for the job."; close; } mes "[ "+strcharinfo(0)+" ] mes "How can I help you?"; next; mes "[ Port Manager ]"; mes "I knew you were reliable the moment I saw you!"; mes "Please listen carefully."; next; mes "[ Port Manager ]"; mes "Get me the first crate. It should be near the docks."; mes "The number is marked on the crate. You can easily recognize the first crate."; set dailyquest_cd, 1; close; } alberta,188,173,4 script Deadly Cargo [1]# 464,{ if( dailyquest_cd == 1 ) { set .@a,rand(1,3); if( .@a == 1 ) { mes "Even if the crate looks dangerous, you sum up your courage and pick it up."; mes "You think it's better to deliver it to the manager right away..."; next; mes "before it changes its mind and bites you."; set dailyquest_cd, 2; close; } // -- Another SN: *Omg* emotion e_omg,1; mes "That HURT!!"; percentheal -10,0; close; } else if( dailyquest_cd > 1 ) { mes "[ "+strcharinfo(0)+" ]"; mes "I have already moved this crate..."; close; } mes "[ "+strcharinfo(0)+" ]"; mes "- This looks like a VERY dangerous thing to be left lying around Alberta! It's best to stay away from it...-"; close; } alberta,232,104,5 script Deadly Cargo [2]# 464,{ if( dailyquest_cd == 2 ) { mes "[ "+strcharinfo(0)+" ]"; mes "- This crate says number 2... I better go find the manager first. -"; close;"; } else if( dailyquest_cd == 3 ) { set .@a,rand(1,3); if( .@a == 1 ) { mes "Even if the crate looks dangerous, you sum up your courage and pick it up."; mes "You think it's better to deliver it to the manager right away..."; next; mes "before it changes its mind and bites you."; set dailyquest_cd, 4; close; } // -- Another SN: *Omg* emotion e_omg,1; mes "That HURT!!"; percentheal -10,0; close; } else if( dailyquest_cd > 3 ) { mes "[ "+strcharinfo(0)+" ]"; mes "I have already moved this crate..."; close; } mes "[ "+strcharinfo(0)+" ]"; mes "- This looks like a VERY dangerous thing to be left lying around Alberta! It's best to stay away from it...-"; close; } alberta,246,87,4 script Deadly Cargo [3]# 464,{ if( dailyquest_cd == 5 ) { set .@a,rand(1,3); if( .@a == 1 ) { mes "Even if the crate looks dangerous, you sum up your courage and pick it up."; mes "You think it's better to deliver it to the manager right away..."; next; mes "before it changes its mind and bites you."; set dailyquest_cd, 6; close; } // -- Another SN: *Omg* emotion e_omg,1; mes "That HURT!!"; percentheal -10,0; close; } else if( dailyquest_cd > 5 ) { mes "[ "+strcharinfo(0)+" ]"; mes "I have already moved this crate..."; close; } mes "[ "+strcharinfo(0)+" ]"; mes "- This looks like a VERY dangerous thing to be left lying around Alberta! It's best to stay away from it...-"; close; } alberta,245,67,1 script Deadly Cargo [4]# 464,{ if( dailyquest_cd == 7 ) { set .@a,rand(1,3); if( .@a == 1 ) { mes "Even if the crate looks dangerous, you sum up your courage and pick it up."; mes "You think it's better to deliver it to the manager right away..."; next; mes "before it changes its mind and bites you."; set dailyquest_cd, 8; close; } // -- Another SN: *Omg* emotion e_omg,1; mes "That HURT!!"; percentheal -10,0; close; } else if( dailyquest_cd > 7 ) { mes "[ "+strcharinfo(0)+" ]"; mes "I have already moved this crate..."; close; } mes "[ "+strcharinfo(0)+" ]"; mes "- This looks like a VERY dangerous thing to be left lying around Alberta! It's best to stay away from it...-"; close; } alberta,243,43,4 script Deadly Cargo [5]# 464,{ if( dailyquest_cd == 9 ) { set .@a,rand(1,3); if( .@a == 1 ) { mes "Even if the crate looks dangerous, you sum up your courage and pick it up."; mes "You think it's better to deliver it to the manager right away..."; next; mes "before it changes its mind and bites you."; set dailyquest_cd, 10; close; } // -- Another SN: *Omg* emotion e_omg,1; mes "That HURT!!"; percentheal -10,0; close; } else if( dailyquest_cd > 9 ) { mes "[ "+strcharinfo(0)+" ]"; mes "I have already moved this crate..."; close; } mes "[ "+strcharinfo(0)+" ]"; mes "- This looks like a VERY dangerous thing to be left lying around Alberta! It's best to stay away from it...-"; close; } alberta,123,221,4 script Deadly Cargo [6]# 464,{ if( dailyquest_cd == 11 ) { set .@a,rand(1,3); if( .@a == 1 ) { mes "Even if the crate looks dangerous, you sum up your courage and pick it up."; mes "You think it's better to deliver it to the manager right away..."; next; mes "before it changes its mind and bites you."; set dailyquest_cd, 12; close; } // -- Another SN: *Omg* emotion e_omg,1; mes "That HURT!!"; percentheal -10,0; close; } else if( dailyquest_cd > 11 ) { mes "[ "+strcharinfo(0)+" ]"; mes "I have already moved this crate..."; close; } mes "[ "+strcharinfo(0)+" ]"; mes "- This looks like a VERY dangerous thing to be left lying around Alberta! It's best to stay away from it...-"; close; } // -- Message Delivery alberta,122,55,5 script [Quest] Messenger Girl# 831,{ if( checkquest(4034) >= 0 || checkquest(4035) >= 0 || checkquest(4036) >= 0 || checkquest(4037) >= 0 || checkquest(4038) >= 0 ) { mes "[ Messenger Girl ]"; mes "I hope the knights can get the letters as soon as possible."; mes "The girls are waiting for their reply!"; close; } else if( checkquest(4100,PLAYTIME) == 2 ) { // -- Quest: Complete Message Delivery quest (4100) has been deleted. erasequest 4100; mes "[ Messenger Girl ]"; mes "Um... hey there!"; mes "Could you give an overworked girl a hand?"; next; mes "[ Messenger Girl ]"; mes "I'm a bit over my head"; mes "in this delivery business."; next; goto alittlebit; } else if( checkquest(4100,PLAYTIME) != -1 ) { mes "[ Messenger Girl ]"; mes "I already delivered all the letters for today."; mes "But I think I will need your help tomorrow."; mes "Could you come 20 hours later to help me out?"; close; } mes "[ Messenger Girl ]"; mes "Um... hey there!"; mes "Could you give an overworked girl a hand?"; next; mes "[ Messenger Girl ]"; mes "I'm a bit over my head"; mes "in this delivery business."; next; next; alittlebit: if( select("Sure, I'd love to help!", "Sorry, I'm busy as well") != 1 ) { mes "[ Messenger Girl ]"; mes "Oh, that's alright then. Maybe you can come back and help me some other time!"; close; } mes "[ Messenger Girl ]"; mes "Thank you SO much!"; mes "I'm already overloaded with package deliveries,"; mes "but the boss had me do extra tasks like having fan mail and love letters delivered to handsome knights!"; next; mes "[ Messenger Girl ]"; mes "I simply can't keep up with all these girls sending all these letters in."; mes "If you could deliver just one letter for me for today I would be very grateful!"; next; mes "[ Messenger Girl ]"; mes "Let's see¡¦.Oh, I have 5 letters that need to be delivered by today."; mes "Who you want to deliver this letter to?"; next; chooseanother: switch( select("To Sir Donovan in Alberta Lv1~20","To Sir Richard in Treasure Island Lv21~40","To sir Lion in Prontera Lv41~60", "To Sir Midetz in Izlude Lv61~80","To Sir Grevious in Turtle Island Lv81+","Cancel") ) { case 1: mes "[ Messenger Girl ]"; mes "Great! Sir Donovan is just outside. Head up north a bit and follow the road, he should be there."; mes "He likes the local girls so he hangs around Alberta a lot."; // -- Quest: Message Delivery quest (4034) has been added. setquest 4034; close; case 2: if( BaseLevel < 21 ) goto enoughlevel; mes "[ Messenger Girl ]"; mes "Thank you so much! You can find Sir Richard flirting with the Kafra Girl on Treasure Island nearby."; mes "Please deliver this message of love from one of his fans."; // -- Quest: Message Delivery quest (4035) has been added. setquest 4035; close; case 3: if( BaseLevel < 41 ) goto enoughlevel; mes "[ Messenger Girl ]"; mes "Sir Lion always likes busy places so you'll find him at Prontera."; mes "I heard he has a thing for the Gift Merchant lady there."; mes "Anyway, here is a fan letter for him from a girl that lives in Moscovia."; // -- Quest: Message Delivery quest (4036) has been added. setquest 4036; close; case 4: if( BaseLevel < 61 ) goto enoughlevel; mes "[ Messenger Girl ]"; mes "I'm really grateful. Please deliver this letter and these handmade chocolates to Sir Midetz in Izlude."; mes "You'll find him in the northern part of the town."; mes "Be sure to deliver them before the love in the chocolate melts!"; // -- Quest: Message Delivery quest (4037) has been added. setquest 4037; close; case 5: if( BaseLevel < 81 ) { enoughlevel: mes "[ Messenger Girl ]"; mes "Sorry, I don't think you're capable of delivering a message to that Knight yet."; mes "He's very popular and always swarmed by girls that stalk him."; next; mes "[ Messenger Girl ]"; mes "So it is very dangerous even for a guy to get close!"; mes "Why don't you deliver it to other Knight?"; next; goto chooseanother; } mes "[ Messenger Girl ]"; mes "Ah, this letter of affection is directed to the most elusive of the popular knights, Sir Greivous."; mes "He's stalked by so many fans that he's hid himself in Turtle Island to keep them at bay."; next; mes "[ Messenger Girl ]"; mes "This letter must be from a die hard fan."; mes "The envelope is tough and even waterproof to prevent it from being damaged from the rough environment there."; mes "Please make sure that her words reach him! You're the only one I trust who can do this!"; // -- Quest: Message Delivery quest (4038) has been added. setquest 4038; close; case 6: mes "[ Messenger Girl ]"; mes "Oh, that's ok. Just come back if you change your mind!"; close; } } tur_dun01,192,117,4 script Grevious#nk 65,{ if( checkquest(4038) >= 0 ) { mes "[ Sir Grevious ]"; mes "Love will only make you soft and vulnerable!"; mes "Begone whilst I train!"; next; mes "[ Sir Grevious ]"; mes "What is it?"; mes "Are you here to deliver another one of those pansy letters?!"; mes "Knights are suppose to live and die fighting, not being pampered by dozens of fangirls!"; next; mes "[ Sir Grevious ]"; mes "Huh? Wait...What is this?!"; mes "Such an elegant container..."; mes "This sweet fragrance that could only be from a proper and respectable lady!"; mes "Perhaps I have finally found the woman who will understand me!"; mes "Thank you brave messager!"; // -- Quest: Message Delivery quest (4038) has been deleted. // -- Quest: Complete Message Delivery quest (4100) has been added. changequest 4038,4100; // -- You have gained 235407/10100 (42.80%/4.48%) Exp getexp 500000,150000; // -- Item added to inventory: Warp Free Ticket (17) x 2 - Non-usable getitem 7060, 2; close; } mes "[ Sir Grevious ]"; mes "Love will only make you soft and vulnerable!"; mes "Begone whilst I train!"; next; mes "[ Sir Grevious ]"; mes "If you have nothing to do..."; mes "Why don't you write a love letter to your sweetheart..."; close; } alberta,67,70,5 script Donovan#nk 65,{ if( checkquest(4034) >= 0 ) { mes "[ Sir Donovan ]"; mes "I'm sorry but I'm rather occupied at the moment staring at all the beauty this city has to offer."; next; mes "[ Sir Donovan ]"; mes "A message for me? Wonderful."; mes "Thank you for bringing me this letter..."; mes "Oh, scented paper!"; // -- Quest: Message Delivery quest (4034) has been deleted. // -- Quest: Complete Message Delivery quest (4100) has been added. changequest 4034,4100; // -- You are now job level 2 // -- You gained a job level! // -- You have gained 141/40 (3.71%/30.77%) Exp getexp 141,100; close; } mes "[ Sir Donovan ]"; mes "I'm sorry but I'm rather occupied at the moment staring at all the beauty this city has to offer."; next; mes "[ Sir Donovan ]"; mes "Excuse me, I'm busy plotting my advances on the object of my desire."; mes "Please talk to me another time."; close; } alb2trea,57,67,4 script Richard#nk 65,{ if( checkquest(4035) >= 0 ) { mes "[ Sir Richard ]"; mes "What a beautiful Island it is!"; mes "Staring at the sights makes me feel relaxed."; mes "Huh? Who is this?"; next; mes "[ Sir Richard ]"; mes "Another letter from a girl?"; mes "It's so vile of me to already give my heart to a lady when there are so many who still wish for my attentions... yet."; mes "I will at least read it and cherish my fan's affections, but it will not sway my feelings in the least."; mes "Anyway you made an effort to deliver this to me. Thanks anyway."; // -- Quest: Message Delivery quest (4035) has been deleted. // -- Quest: Complete Message Delivery quest (4100) has been added. changequest 4035,4100; // -- You are now job level 2 // -- You gained a job level! // -- You have gained 2250/59 (13.24%/45.38%) Exp getexp 1500,1000; // -- Item added to inventory: Warp Free Ticket (4) x 1 - Non-usable getitem 7060, 1; close; } mes "[ Sir Richard ]"; mes "What a beautiful Island it is!"; mes "Staring at the sights makes me feel relaxed."; mes "Huh? Who is this?"; next; mes "[ Sir Richard ]"; mes "I don't care who you are."; mes "But please don't interrupt me."; mes "I just want to enjoy my moment being in this Island."; close; } prontera,115,108,5 script Lion#nk 65,{ if( checkquest(4036) >= 0 ) { mes "[ Sir Lion ]"; mes "Out of my way!"; mes "My love will not be halted by any man or beast!"; next; mes "[ Sir Lion ]"; mes "Another letter from that girl from Moscovia?"; mes "How many times must I write back telling her that I already have eyes for one woman alone?"; next; mes "[ Sir Lion ]"; mes "Still it would be rude not to reply so I shall write her again until she gives up!"; mes "Anyway you made an effort to deliver this to me. Thanks anyway."; // -- Quest: Message Delivery quest (4036) has been deleted. // -- Quest: Complete Message Delivery quest (4100) has been added. changequest 4036,4100; // -- You have gained 24763/15000 (46.72%/21.40%) Exp getexp 16509,10000; // -- Item added to inventory: Warp Free Ticket (4) x 1 - Non-usable getitem 7060, 1; close; } mes "[ Sir Lion ]"; mes "Out of my way!"; mes "My love will not be halted by any man or beast!"; next; mes "[ Sir Lion ]"; mes "Someday I will find my girl in this city."; mes "I can feel it..."; mes "I can feel it..."; close; } izlude,121,174,5 script Midetz#nk 65,{ if( checkquest(4037) >= 0 ) { mes "[ Sir Midetz ]"; mes "Izlude..."; mes "Hum..Interesting city..."; mes "Who is this? What brings you here?"; next; mes "[ Sir Midetz ]"; mes "I am saved!"; mes "Once more my fans have not failed to send me the soothing sweetness of their love through this chocolate!"; next; mes "[ Sir Midetz ]"; mes "I shall cherish every single bite! Thank you."; mes "Here is my little gift for you."; // -- Quest: Message Delivery quest (4037) has been deleted. // -- Quest: Complete Message Delivery quest (4100) has been added. changequest 4037,4100; // -- You are now level 79 // -- You gained a level! // -- You are now job level 39 // -- You gained a job level! // -- You have gained 2131/0 (0.93%/0.00%) Exp getexp 160308,100000; // -- Item added to inventory: Warp Free Ticket (17) x 1 - Non-usable getitem 7060, 1; close; } mes "[ Sir Midetz ]"; mes "Izlude..."; mes "Hum..Interesting city..."; mes "Who is this? What brings you here?"; next; mes "[ Sir Midetz ]"; mes "Ooh dear, I feel my heart running dry from the lack of sweet affection."; mes "I am too distressed to talk to you. Please leave me be."; close; } // -- Swap The Deck alberta,104,60,4 script [Quest] First Mate 748,{ if( checkquest(9025) >= 0 ) { if( countitem(6221) > 0 ) { mes "[ First Mate ]"; mes "Wow, you have done!!"; mes "Thanks so much! Keep"; mes "whatever useful stuff you"; mes "picked up from the sticky rat."; mes "I'm sure I'll be needing your"; mes "help again, so drop by after"; mes "20 hours or so."; mes "Then I will give you ^008000Leaf Cat Ball^000000 again."; // -- Item added to inventory: Mystic Leaf Cat Ball (16) x 0 - Non-usable // -- Inventory Item Removed: Mystic Leaf Cat Ball (12) x 1 delitem 6221, 1; // -- Quest: Swab the Deck: Sticky Rats (9025) has been deleted. // -- Quest: Swab the Deck: Present status (9026) has been added. changequest 9025,9026; // -- Item added to inventory: Shiny Bead (12) x 1 - Non-usable getitem 6222, 1; // -- You have gained 170527/7800 (85.26%/4.10%) Exp getexp 170527,7800; close; } if( countitem(12408) > 4 ) { mes "[ First Mate ]"; mes "What happened? Is there something wrong?"; next; if( select("Nothing", "Ask him about the matters.") != 1 ) { mes "[ First Mate ]"; mes "You see I have an"; mes "unusual problem on my"; mes "ship. The rat on it is..."; mes "unusually dangerous.."; next; mes "[ First Mate ]"; mes "We don't even know"; mes "where it came from anymore."; next; mes "[ First Mate ]"; mes "The sailors tried, but one of"; mes "them almost lost a leg trying"; mes "to catch the rats."; mes "I need someone with a lot"; mes "more ability to get the job done."; next; mes "[ First Mate ]"; mes "Here is a special ball"; mes "to kill that ^FF0000Sticky Rat^000000..."; mes "It's called ^008000Leaf Cat Ball^000000"; mes "It has special poison inside"; mes "and it can kill the rats right away."; mes "But remember, sometimes rats are smart enough to beat us down."; next; mes "[ First Mate ]"; mes "I hope you can scour"; mes "all rats from my ship."; mes "I will provide you ^008000Leaf Cat Balls^000000 as much as you need."; next; mes "[ First Mate ]"; mes "If you already have"; mes "a ^008000Leaf Cat Ball^000000,"; mes "then you'll find ^FF0000Sticky Rat^000000"; mes "on the deck and inside the ship itself."; mes "If you are lucky, you can catch the rat at once. But if you are not, then...well..Let's see. Good luck!"; close; } mes "[ First Mate ]"; mes "Ok, then please keep helping me out scouring ^FF0000Sticky Rats^000000."; close; } mes "[ First Mate ]"; mes "Do you need more ^008000Leaf Cat Ball^000000??"; mes "Here you are."; // -- Item added to inventory: Leaf Cat Ball (15) x 1 - Usable getitem 12408, 1; close; } else if( checkquest(9026,PLAYTIME) == 2 ) { erasequest 9026; mes "[ First Mate ]"; mes "Hello, "+strcharinfo(0)+" is here!"; next; goto afterdelay; } else if( checkquest(9026,PLAYTIME) != -1 ) { mes "[ First Mate ]"; mes "Hello, "+strcharinfo(0)+" is here!"; next; mes "[ First Mate ]"; mes "I really appreciate that you helped me last time."; mes "^008000Leaf Cat Ball^000000 is provided every 20 hours."; mes "Since you have completed to help me out yesterday, you need to come back 20 hours later."; next; select("Come back later"); mes "[ First Mate ]"; mes "Alright, have a good day!"; close; } afterdelay: mes "[ First Mate ]"; mes "Hello."; mes "Why don't you help me catch ^FF0000Sticky Rats^000000?"; next; switch( select("Um, yeah. Sure", "Sorry, I'm in a hurry", "What happened??") ) { case 1: // -- Quest: Swab the Deck: Sticky Rats (9025) has been added. setquest 9025; // -- Item added to inventory: Leaf Cat Ball (15) x 1 - Usable getitem 12408, 1; mes "[ First Mate ]"; mes "Thank you so much. Here are special balls"; mes "You can catch those sticky rats with thisLeaf Cat Balls."; mes "Here you are."; mes "Please clean up ^FF0000Sticky Rat^000000 with balls."; mes "Good luck."; close; case 2: mes "[ First Mate ]"; mes "Darn it, and I though I"; mes "already found someone"; mes "strong enough to clean"; mes "my ship for me."; mes "Come back if you change"; mes "your mind."; close; case 3: mes "[ First Mate ]"; mes "You see I have an"; mes "unusual problem on my"; mes "ship. The rat on it is..."; mes "unusually dangerous.."; next; mes "[ First Mate ]"; mes "We don't even know"; mes "where it came from anymore."; next; mes "[ First Mate ]"; mes "The sailors tried, but one of"; mes "them almost lost a leg trying"; mes "to catch the rats."; mes "I need someone with a lot"; mes "more ability to get the job done."; next; mes "[ First Mate ]"; mes "Here is a special ball"; mes "to kill that ^FF0000Sticky Rat^000000..."; mes "It's called ^008000Leaf Cat Ball^000000"; mes "It has special poison inside"; mes "and it can kill the rats right away."; mes "But remember, sometimes rats are smart enough to beat us down."; next; mes "[ First Mate ]"; mes "I hope you can scour"; mes "all rats from my ship."; mes "I will provide you ^008000Leaf Cat Balls^000000 as much as you need."; next; mes "[ First Mate ]"; mes "If you already have"; mes "a ^008000Leaf Cat Ball^000000,"; mes "then you'll find ^FF0000Sticky Rat^000000"; mes "on the deck and inside the ship itself."; mes "If you are lucky, you can catch the rat at once. But if you are not, then...well..Let's see. Good luck!"; close; } } alberta,107,59,5 script [Quest] Second Mate 100,{ mes "[ Second Mate ]"; mes "Oh, you want to change"; mes "^008000Shiny Bead^000000"; mes "to other items?"; next; switch( select("Yes", "No", "What is Shiny Bead?") ) { case 1: mes "[ Second Mate ]"; mes "That is a good choice!"; mes "Here is the list of items."; mes "Please choose what you want."; next; setarray .@Shop[0],5773,50,1,5691,50,1,505,2,1,5578,30,1,5772,50,1,5474,50,1; set .@Index, (select("Navy Blue Beret","Sailor's Bandana [1]", "Blue Potion","Voyage Hat","Blood Admiral's Hat","AFK Hat") - 1) * 3; set .@Item, .@Shop[.@Index]; set .@Require, .@Shop[.@Index + 1]; set .@Amount, .@Shop[.@Index + 2]; if( countitem(6222) < .@Require ) { mes "[ Second Mate ]"; mes "If you want to have a ^008000"+getitemname(.@Item)+"^000000,"; mes "you have to bring "+.@Require+" ^008000Shiny Beads^000000."; mes "You can get 1 ^008000Shiny Bead^000000 every time you have completed ^FF0000Swab the Deck Quest^000000."; close; } if( checkweight(.@Item, .@Amount) == 0 ) { mes "[ Second Mate ]"; mes "- Wait a minute !! -"; mes "- Currently you're carrying -"; mes "- too many items with you. -"; mes "- Please try again -"; mes "- after you loose some weight. -"; close; } mes "[ Second Mate ]"; mes "Exchanging of item is done. Thanks."; getitem .@Item, .@Amount; delitem 6222, .@Require; close; case 2: mes "[ Second Mate ]"; mes "Oh, Ok. Whatever~!"; mes "Have a good day~!"; close; case 3: mes "[ Second Mate ]"; mes "Can you see that guy over there?"; mes "He is a ^0000FFFirst Mate^000000 and"; mes "he will let you know all about ^008000Swab the Deck Quest^000000. You can get ^008000Shiny Beads^000000 by helping him."; next; if( select("I want to know more about it.", "I don't want to know.") != 1 ) { mes "[ Second Mate ]"; mes "Alright! Have a good day~!"; close; } mes "[ Second Mate ]"; mes "If you have qualified amount of ^008000Shiny Beads^000000,"; mes "you can exchange them into unique items."; next; mes "[ Second Mate ]"; mes "I am in charge of exchanging"; mes "^008000Shiny Beads^000000 into other items."; mes "So, if you want to exchange Shiny Beads for other items please talk to me!"; close; } } // -- Sticky Rat Spawn alb_ship,0,0,0,0 monster Sticky Rat 2057,20,0,0,0 // -- Army Supply prontera,159,191,5 script [Quest] Army Officer#nk 105,{ if( checkquest(4136) >= 0 || checkquest(4137) >= 0 || checkquest(4138) >= 0 || checkquest(4139) >= 0 || checkquest(4140) >= 0 || checkquest(4141) >= 0 ) { mes "[ Army Officer ]"; mes "Hurry up! They are all"; mes "waiting for you in Morroc."; mes "Only you can help them out."; mes "We are out of time, hurry!"; close; } else if( checkquest(4142) >= 0 ) { mes "[ Army Officer ]"; mes "You are back!"; mes "I heard the injured armies"; mes "have been given some"; mes "supplies by you."; next; mes "[ Army Officer ]"; mes "Thank you. If you can come back"; mes "in 20 hours and donate again, I"; mes "will be here to accept it."; // -- Quest: Army Supplies (4142) has been deleted. // -- Quest: Army Supplies (4143) has been added. changequest 4142,4143; // -- You have gained 0/120000 (0.00%/53.29%) Exp if( dailyquest_as == 1 ) getexp 80000,50000; else if( dailyquest_as == 2 || dailyquest_as == 3 ) getexp 200000,80000; else if( dailyquest_as == 4 ) getexp 160000,100000; else if( dailyquest_as == 5 ) getexp 500000,150000; else getexp 1046821,300000; set dailyquest_as, 0; close; } else if( checkquest(4143,PLAYTIME) == 2 ) { erasequest 4143; goto readyfornext; } else if( checkquest(4143,PLAYTIME) != -1 ) { mes "[ Army Officer ]"; mes "I don't need your help, yet."; mes "Please come back"; mes "20 hours later."; mes "That time, I am sure there will be injured armies who need your help."; close; } readyfornext: mes "[ Army Officer ]"; mes "My job is to manage supply donations"; mes "for the brave soldiers in the front"; mes "lines risking their lives to fight the"; mes "minons of Satan Morroc."; next; mes "[ Army Officer ]"; mes "You look like you're a seasoned"; mes "adventurer. Perhaps you can"; mes "donate some potions to our"; mes "troops in the front lines."; next; mes "[ Army Officer ]"; mes "I'm sure good fortune will"; mes "grace you in return for your"; mes "support."; next; mes "[ Army Officer ]"; mes "Yggdrasilberries would be"; mes "the best to give to our troops"; mes "but the regular White Potions"; mes "will be fine also."; next; switch( select("I am not interested", "Donate White Potions", "Donate Yggdrasilberries") ) { case 1: mes "[ Army Officer ]"; mes "Well. that is fine."; mes "But, just remember..."; mes "injured armies are dying in Morroc..That is so sad.."; close; case 2: if( BaseLevel < 61 ) { notenough: mes "[ Army Officer ]"; mes "Hum..."; mes "You are not strong enough."; mes "Sorry but, seems like you are a weak adventurer."; next; mes "[ Army Officer ]"; mes "When you're capable enough, please"; mes "consider donating supplies so that"; mes "our fighting men and women will"; mes "never run out of resources."; close; } else if( BaseLevel > 60 && BaseLevel < 81 ) { mes "[ Army Officer ]"; mes "It will be enough if you can donate"; mes "5 White Potions for our army"; mes "supplies."; next; mes "[ Army Officer ]"; mes "Go to Morroc and find the Injured Recruit."; mes "Bring him the potions so he can"; mes "fight again!"; // -- Quest: Army Supplies (4136) has been added. set dailyquest_as, 1; setquest 4136; close; } else if( BaseLevel > 80 && BaseLevel < 98 ) { mes "[ Army Officer ]"; mes "It will be enough if you can donate"; mes "100 White Potions for our army"; mes "supplies."; next; mes "[ Army Officer ]"; mes "Go to Morroc and find the Injured Veteran."; mes "Bring him the potions so he can"; mes "fight again!"; // -- Quest: Army Supplies (4137) has been added. set dailyquest_as, 2; setquest 4137; close; } mes "[ Army Officer ]"; mes "It will be enough if you can donate"; mes "100 White Potions for our army"; mes "supplies."; next; mes "[ Army Officer ]"; mes "Go to Morroc and find the Injured Elite."; mes "Bring him the potions so he can"; mes "fight again!"; // -- Quest: Army Supplies (4141) has been added. set dailyquest_as, 3; setquest 4141; close; case 3: if( BaseLevel < 61 ) goto notenough; else if( BaseLevel > 60 && BaseLevel < 81 ) { mes "[ Army Officer ]"; mes "It will be enough if you can donate"; mes "1 Yggdrasilberry for our"; mes "army supplies."; next; mes "[ Army Officer ]"; mes "Go to Morroc and find the Injured Recruit."; mes "Bring him the Yggdrasilberry so he can"; mes "fight again!"; // -- Quest: Army Supplies (4138) has been added. set dailyquest_as, 4; setquest 4138; close; } else if( BaseLevel > 80 && BaseLevel < 98 ) { mes "[ Army Officer ]"; mes "It will be enough if you can donate"; mes "2 Yggdrasilberries for our"; mes "army supplies."; next; mes "[ Army Officer ]"; mes "Go to Morroc and find the Injured Veteran."; mes "Bring him the Yggdrasilberries so he can"; mes "fight again!"; // -- Quest: Army Supplies (4139) has been added. set dailyquest_as, 5; setquest 4139; close; } mes "[ Army Officer ]"; mes "It will be enough if you can donate"; mes "3 Yggdrasilberries for our"; mes "army supplies."; next; mes "[ Army Officer ]"; mes "Go to Morroc and find the Injured Elite."; mes "Bring him the Yggdrasilberries so he can"; mes "fight again!"; // -- Quest: Army Supplies (4140) has been added. set dailyquest_as, 6; setquest 4140; close; } OnInit: hideonnpc "Revived Recruit#nk"; hideonnpc "Revived Veteran#nk"; hideonnpc "Revived Elite#nk"; end; } morocc,164,108,5 script Injured Recruit#nk 849,{ // -- Checks if NPC in use if( .currentCID != 0 ) { if( isloggedin(.currentAID, .currentCID) ) end; } addtimer 1000, strnpcinfo(3)+"::On_Leave"; // -- Should execute within 1sec or when npc windows are 'closed', whichever is longer set .currentCID, getcharid(0); set .currentAID, getcharid(3); if( checkquest(4136) >= 0 ) { mes "[ Injured Recruit ]"; mes "Awee..It hurts..."; mes "I can't stand..."; next; mes "[ Injured Recruit ]"; mes "I've been fighting for days."; mes "Finally some minions of"; mes "Satan Morroc jumped me"; mes "when I was weak and I fell."; next; mes "If only I had some potions,"; mes "I would immediately get"; mes "back into the fight! Ugh..."; mes "wait bleeding bad, must"; mes "rest."; next; if( select("Ignore him", "Give him White Potion") != 1 ) { if( countitem(504) < 5 ) { mes "[ Injured Recruit ]"; mes "Awee..."; mes "You don't have enough Potions! Get away! I am so sick!"; close; } mes "[ Injured Recruit ]"; mes "Wow, Potions!!"; mes "Thank you so much..."; mes "Now.. I can gather myself up."; // -- NPC Injured Veteran#nk (9) uses effect: Unknown #207 specialeffect 207; // -- Inventory Item Removed: White Potion (8) x 5 delitem 504, 5; // -- Quest: Army Supplies (4136) has been deleted. // -- Quest: Army Supplies (4142) has been added. changequest 4136,4142; hideonnpc "Injured Recruit#nk"; hideoffnpc "Revived Recruit#nk"; initnpctimer; next; mes "[ Revived Recruit ]"; mes "Thanks to your potions I"; mes "can finally return to the"; mes "front line."; next; mes "[ Revived Recruit ]"; mes "Though, I wish"; mes "I could stay behind in the"; mes "safety of this city while"; mes "pretending to recover from"; mes "my injuries. *cough* I"; mes "mean... off I go!"; close; } mes "[ Injured Recruit ]"; mes "Awee... you are so bad."; mes "I have given up my life"; mes "for protecting Rune-Midgard."; mes "But, nobody helps me out!"; close; } else if( checkquest(4138) >= 0 ) { mes "[ Injured Recruit ]"; mes "Awee..It hurts..."; mes "I can't stand..."; next; if( select("Ignore him", "Give him Yggdrasilberries") != 1 ) { if( countitem(607) < 1 ) { mes "[ Injured Recruit ]"; mes "Awee..."; mes "You don't have enough Yggdrasilberries! Get away! I am so sick!"; close; } mes "[ Injured Recruit ]"; mes "Wow, Yggdrasilberries!!"; mes "Thank you so much..."; mes "Now.. I can gather myself up."; // -- NPC Injured Recruit#nk (6) uses effect: Unknown #77 specialeffect 77; // -- Inventory Item Removed: Yggdrasilberry (18) x 1 delitem 607, 1; // -- Quest: Army Supplies (4138) has been deleted. // -- Quest: Army Supplies (4142) has been added. changequest 4138,4142; hideonnpc "Injured Recruit#nk"; hideoffnpc "Revived Recruit#nk"; initnpctimer; next; mes "[ Revived Recruit ]"; mes "Thanks to your Yggdrasilberries."; mes "I can finally return to the"; mes "front line."; next; mes "[ Revived Recruit ]"; mes "Though, I wish"; mes "I could stay behind in the"; mes "safety of this city while"; mes "pretending to recover from"; mes "my injuries. *cough* I"; mes "mean... off I go!"; close; } mes "[ Injured Recruit ]"; mes "Awee... you are so bad."; mes "I have given up my life"; mes "for protecting Rune-Midgard."; mes "But, nobody helps me out!"; close; } mes "[ Injured Recruit ]"; mes "Awee..It hurts..."; mes "I can't stand..."; next; mes "[ Injured Recruit ]"; mes "Huh? Who are you?"; mes "Get away, I am so sick..."; close; OnTimer1800000: // -- 30 Minutes to Injured state hideonnpc "Revived Recruit#nk"; hideoffnpc "Injured Recruit#nk"; stopnpctimer; end; On_Leave: if( .currentCID == getcharid(0) ) { set .currentCID, 0; } end; } morocc,164,108,5 script Revived Recruit#nk 105,{ mes "[ Revived Recruit ]"; mes "Now, I can cheer up!"; mes "I will immediately return to the"; mes "battle against Satan Morroc!"; next; mes "[ Revived Recruit ]"; mes "For Rune-Midgard's sake!"; close; } morocc,164,108,5 script Injured Veteran#nk 849,{ // -- Checks if NPC in use if( .currentCID != 0 ) { if( isloggedin(.currentAID, .currentCID) ) end; } addtimer 1000, strnpcinfo(3)+"::On_Leave"; // -- Should execute within 1sec or when npc windows are 'closed', whichever is longer set .currentCID, getcharid(0); set .currentAID, getcharid(3); if( checkquest(4137) >= 0 ) { mes "[ Injured Veteran ]"; mes "Awee..It hurts..."; mes "I can't stand..."; next; mes "[ Injured Veteran ]"; mes "I've been fighting for days."; mes "Finally some minions of"; mes "Satan Morroc jumped me"; mes "when I was weak and I fell."; next; mes "If only I had some potions,"; mes "I would immediately get"; mes "back into the fight! Ugh..."; mes "wait bleeding bad, must"; mes "rest."; next; if( select("Ignore him", "Give him White Potion") != 1 ) { if( countitem(504) < 100 ) { mes "[ Injured Veteran ]"; mes "Awee..."; mes "You don't have enough Potions! Get away! I am so sick!"; close; } mes "[ Injured Veteran ]"; mes "Wow, Potions!!"; mes "Thank you so much..."; mes "Now.. I can gather myself up."; // -- NPC Injured Veteran#nk (9) uses effect: Unknown #207 specialeffect 207; // -- Inventory Item Removed: White Potion (8) x 100 delitem 504, 100; // -- Quest: Army Supplies (4137) has been deleted. // -- Quest: Army Supplies (4142) has been added. changequest 4137,4142; hideonnpc "Injured Veteran#nk"; hideoffnpc "Revived Veteran#nk"; initnpctimer; next; mes "[ Revived Veteran ]"; mes "Thanks to your potions I"; mes "can finally return to the"; mes "front line."; next; mes "[ Revived Veteran ]"; mes "Though, I wish"; mes "I could stay behind in the"; mes "safety of this city while"; mes "pretending to recover from"; mes "my injuries. *cough* I"; mes "mean... off I go!"; close; } mes "[ Injured Veteran ]"; mes "Awee... you are so bad."; mes "I have given up my life"; mes "for protecting Rune-Midgard."; mes "But, nobody helps me out!"; close; } else if( checkquest(4139) >= 0 ) { mes "[ Injured Veteran ]"; mes "Awee..It hurts..."; mes "I can't stand..."; next; if( select("Ignore him", "Give him Yggdrasilberries") != 1 ) { if( countitem(607) < 2 ) { mes "[ Injured Veteran ]"; mes "Awee..."; mes "You don't have enough Yggdrasilberries! Get away! I am so sick!"; close; } mes "[ Injured Veteran ]"; mes "Wow, Yggdrasilberries!!"; mes "Thank you so much..."; mes "Now.. I can gather myself up."; // -- NPC Injured Veteran#nk (9) uses effect: Unknown #77 specialeffect 77; // -- Inventory Item Removed: Yggdrasilberry (18) x 2 delitem 607, 2; // -- Quest: Army Supplies (4139) has been deleted. // -- Quest: Army Supplies (4142) has been added. changequest 4139,4142; hideonnpc "Injured Veteran#nk"; hideoffnpc "Revived Veteran#nk"; initnpctimer; next; mes "[ Revived Veteran ]"; mes "Thanks to your Yggdrasilberries."; mes "I can finally return to the"; mes "front line."; next; mes "[ Revived Veteran ]"; mes "Though, I wish"; mes "I could stay behind in the"; mes "safety of this city while"; mes "pretending to recover from"; mes "my injuries. *cough* I"; mes "mean... off I go!"; close; } mes "[ Injured Veteran ]"; mes "Awee... you are so bad."; mes "I have given up my life"; mes "for protecting Rune-Midgard."; mes "But, nobody helps me out!"; close; } mes "[ Injured Veteran ]"; mes "Awee..It hurts..."; mes "I can't stand..."; next; mes "[ Injured Veteran ]"; mes "Huh? Who are you?"; mes "Get away, I am so sick..."; close; OnTimer1800000: // -- 30 Minutes to Injured state hideonnpc "Revived Veteran#nk"; hideoffnpc "Injured Veteran#nk"; stopnpctimer; end; On_Leave: if( .currentCID == getcharid(0) ) { set .currentCID, 0; } end; } morocc,164,108,5 script Revived Veteran#nk 734,{ mes "[ Revived Veteran ]"; mes "Now, I can cheer up!"; mes "I will immediately return to the"; mes "battle against Satan Morroc!"; next; mes "[ Revived Veteran ]"; mes "For Rune-Midgard's sake!"; close; } morocc,170,108,5 script Injured Elite#nk 849,{ // -- Checks if NPC in use if( .currentCID != 0 ) { if( isloggedin(.currentAID, .currentCID) ) end; } addtimer 1000, strnpcinfo(3)+"::On_Leave"; // -- Should execute within 1sec or when npc windows are 'closed', whichever is longer set .currentCID, getcharid(0); set .currentAID, getcharid(3); if( checkquest(4141) >= 0 ) { mes "[ Injured Elite ]"; mes "Awee..It hurts..."; mes "I can't stand..."; next; mes "[ Injured Elite ]"; mes "I've been fighting for days."; mes "Finally some minions of"; mes "Satan Morroc jumped me"; mes "when I was weak and I fell."; next; mes "If only I had some potions,"; mes "I would immediately get"; mes "back into the fight! Ugh..."; mes "wait bleeding bad, must"; mes "rest."; next; if( select("Ignore him", "Give him White Potion") != 1 ) { if( countitem(504) < 100 ) { mes "[ Injured Elite ]"; mes "Awee..."; mes "You don't have enough Potions! Get away! I am so sick!"; close; } mes "[ Injured Elite ]"; mes "Wow, Yggdrasilberries!!"; mes "Thank you so much..."; mes "Now.. I can gather myself up."; // -- NPC Injured Elite#nk (9) uses effect: Unknown #207 specialeffect 207; // -- Inventory Item Removed: White Potion (8) x 100 delitem 504, 100; // -- Quest: Army Supplies (4141) has been deleted. // -- Quest: Army Supplies (4142) has been added. changequest 4141,4142; hideonnpc "Injured Elite#nk"; hideoffnpc "Revived Elite#nk"; initnpctimer; next; mes "[ Revived Elite ]"; mes "Thanks to your potions I"; mes "can finally return to the"; mes "front line."; next; mes "[ Revived Elite ]"; mes "Though, I wish"; mes "I could stay behind in the"; mes "safety of this city while"; mes "pretending to recover from"; mes "my injuries. *cough* I"; mes "mean... off I go!"; close; } mes "[ Injured Elite ]"; mes "Awee... you are so bad."; mes "I have given up my life"; mes "for protecting Rune-Midgard."; mes "But, nobody helps me out!"; close; } else if( checkquest(4140) >= 0 ) { mes "[ Injured Elite ]"; mes "Awee..It hurts..."; mes "I can't stand..."; next; if( select("Ignore him", "Give him Yggdrasilberries") != 1 ) { if( countitem(607) < 3 ) { mes "[ Injured Elite ]"; mes "Awee..."; mes "You don't have enough Yggdrasilberries! Get away! I am so sick!"; close; } mes "[ Injured Elite ]"; mes "Wow, Yggdrasilberries!!"; mes "Thank you so much..."; mes "Now.. I can gather myself up."; // -- NPC Injured Elite#nk (9) uses effect: Unknown #77 specialeffect 77; // -- Inventory Item Removed: Yggdrasilberry (18) x 3 delitem 607, 3; // -- Quest: Army Supplies (4140) has been deleted. // -- Quest: Army Supplies (4142) has been added. changequest 4140,4142; hideonnpc "Injured Elite#nk"; hideoffnpc "Revived Elite#nk"; initnpctimer; next; mes "[ Revived Elite ]"; mes "Thanks to your Yggdrasilberries."; mes "I can finally return to the"; mes "front line."; next; mes "[ Revived Elite ]"; mes "Though, I wish"; mes "I could stay behind in the"; mes "safety of this city while"; mes "pretending to recover from"; mes "my injuries. *cough* I"; mes "mean... off I go!"; close; } mes "[ Injured Elite ]"; mes "Awee... you are so bad."; mes "I have given up my life"; mes "for protecting Rune-Midgard."; mes "But, nobody helps me out!"; close; } mes "[ Injured Elite ]"; mes "Awee..It hurts..."; mes "I can't stand..."; next; mes "[ Injured Elite ]"; mes "Huh? Who are you?"; mes "Get away, I am so sick..."; close; OnTimer1800000: // -- 30 Minutes to Injured state hideonnpc "Revived Elite#nk"; hideoffnpc "Injured Elite#nk"; stopnpctimer; end; On_Leave: if( .currentCID == getcharid(0) ) { set .currentCID, 0; } end; } morocc,170,108,5 script Revived Elite#nk 813,{ mes "[ Revived Elite ]"; mes "Now, I can cheer up!"; mes "I will immediately return to the"; mes "battle against Satan Morroc!"; next; mes "[ Revived Elite ]"; mes "For Rune-Midgard's sake!"; close; } // -- Church Donation prontera,165,191,4 script Church Worker# 790,{ if( checkquest(9027,PLAYTIME) == 2 ) { erasequest 9027; goto afterdelay; } else if( checkquest(9027,PLAYTIME) != -1 ) { mes "[ Church Worker ]"; mes "I accept donation only once a day."; mes "I appreciate your kindness, but could you come back after 20 hours later?"; close; } if( BaseLevel < 61 ) { mes "[ Church Worker ]"; mes "Hello there, young adventurer."; mes "I'm a representative of the"; mes "Church of Prontera and I"; mes "accept donations from people."; mes "who have already found great"; mes "fortune from their travels."; next; mes "[ Church Worker ]"; mes "Humm.."+strcharinfo(0)+" is not ready yet."; mes "Once you get stronger and begin"; mes "amassing your own wealth,"; mes "consider coming back here and"; mes "sharing your fortune with the"; mes "less fortunate. I'm sure you will"; mes "be blessed for your kindness."; mes ""; close; } afterdelay: mes "[ Church Worker ]"; mes "Good day to you, kind adventurer."; mes "I'm a worker from the Church of"; mes "Prontera. I'm hoping that you"; mes "could share some of your good"; mes "fortune with the less fortunate"; mes "by donating to the Church."; next; mes "[ Church Worker ]"; mes "Of course, I have prepared a little gift for you, if you like to donate..."; mes "Would you like to donate?"; next; if( select("No,I am not wealthy enough to donate.", "Yes, I would like to donate!") != 1 ) { mes "[ Church Worker ]"; mes "That is right! You are the best!"; mes "I only ask that you donate"; mes "an amount of zeny appropriate"; mes "for your status and I am sure"; mes "that in return, you will be"; mes "blessed for your generosity."; next; mes "[ Church Worker ]"; mes "Let me give you a simple explanation."; mes "We have observed appropriate donation amount for each adventure's ability."; mes "^0000FFLV 60~80^000000 should donate 40,000 zeny,"; mes "^0000FFLV 80~96^000000 should donate 80,000 zeny,"; mes "^0000FFLV 97~99^000000 should donate 200,000 zeny."; next; mes "[ Church Worker ]"; mes "So, I would like to accept your donation."; next; mes "[ Church Worker ]"; mes "Thank you very much."; mes "Could you wait a while?"; // -- You lost 40,000 zeny. if( BaseLevel > 59 && BaseLevel < 81 ) set Zeny, Zeny - 40000; else if( BaseLevel > 80 && BaseLevel < 97 ) set Zeny, Zeny - 80000; else if( BaseLevel > 96 ) set Zeny, Zeny - 200000; next; mes "[ Church Worker ]"; mes "Let me see.. Here it is."; mes "You can donate only once per day. Please keep it in mind."; mes "You can donate again after 20 hours later."; // -- Quest: Church Donation Quest (9027) has been added. setquest 9027; // -- You use effect: Unknown #375 specialeffect2 375; // -- You are now level 78 // -- You gained a level! // -- You are now job level 38 // -- You gained a job level! // -- You have gained 0/0 (0.00%/0.00%) Exp if( BaseLevel > 59 && BaseLevel < 81 ) getexp 80000,50000; else if( BaseLevel > 80 && BaseLevel < 97 ) getexp 200000,50000; else if( BaseLevel > 96 ) getexp 400000,100000; // -- Item added to inventory: Random Potion (14) x 1 - Usable set .@a,rand(1,3); if( .@a == 1 ) getitem 504, 1; // -- White Potion else if( .@a == 2 ) getitem 505, 1; // -- Blue Potion else getitem 608, 1; // -- Yggdrasil Seed percentheal 100,100; if( BaseLevel > 59 && BaseLevel < 81 ) { sc_start SC_STRFOOD, 1950000, 5; // -- You are now: Dragon Breath Cocktail (Duration: 1950s) sc_start SC_INTFOOD, 1950000, 5; // -- You are now: Hwergelmir's Tonic (Duration: 1950s) sc_start SC_DEXFOOD, 1950000, 5; // -- You are now: Steamed Desert Scorpions (Duration: 1950s) sc_start SC_AGIFOOD, 1950000, 5; // -- You are now: Cooked Nine Tail's Tails (Duration: 1950s) sc_start SC_LUKFOOD, 1950000, 5; // -- You are now: Immortal Stew (Duration: 1950s) sc_start SC_VITFOOD, 1950000, 5; } else if( BaseLevel > 80 && BaseLevel < 97 ) { sc_start SC_STRFOOD, 1950000, 6; // -- You are now: Dragon Breath Cocktail (Duration: 1950s) sc_start SC_INTFOOD, 1950000, 6; // -- You are now: Hwergelmir's Tonic (Duration: 1950s) sc_start SC_DEXFOOD, 1950000, 6; // -- You are now: Steamed Desert Scorpions (Duration: 1950s) sc_start SC_AGIFOOD, 1950000, 6; // -- You are now: Cooked Nine Tail's Tails (Duration: 1950s) sc_start SC_LUKFOOD, 1950000, 6; // -- You are now: Immortal Stew (Duration: 1950s) sc_start SC_VITFOOD, 1950000, 6; } else if( BaseLevel > 96 ) { sc_start SC_STRFOOD, 1950000, 7; // -- You are now: Dragon Breath Cocktail (Duration: 1950s) sc_start SC_INTFOOD, 1950000, 7; // -- You are now: Hwergelmir's Tonic (Duration: 1950s) sc_start SC_DEXFOOD, 1950000, 7; // -- You are now: Steamed Desert Scorpions (Duration: 1950s) sc_start SC_AGIFOOD, 1950000, 7; // -- You are now: Cooked Nine Tail's Tails (Duration: 1950s) sc_start SC_LUKFOOD, 1950000, 7; // -- You are now: Immortal Stew (Duration: 1950s) sc_start SC_VITFOOD, 1950000, 7; } close; } mes "[ Church Worker ]"; mes "Alright, if you don't want, it is fine. Come back again if you change your mind."; close; } // -- Odin's Knight ( Premium Users only ) prontera,162,188,5 script [Quest] Odin's Knight#n 745,{ if( checkquest(9033,PLAYTIME) == 2 ) { erasequest 9033; goto afterdelay; } else if( checkquest(9033,PLAYTIME) != -1 ) { mes "[ Odin's Knight ]"; mes "You are not ready yet."; mes "Since you have completed buffing up yesterday, you need to come back 20 hours later."; close; } if( isPremium() ) { afterdelay: mes "[ Odin's Knight ]"; mes "I am here to transmit my special"; mes "experience to capable warriors."; mes "So they can learn how to battle as fast as I could."; next; mes "[ Odin's Knight ]"; mes "However, the requirements are complicated."; mes "I only talk to brave warriors."; mes "They are specialized people who came from Odin's world."; next; mes "[ Odin's Knight ]"; mes "Hail, Knight of Odin!"; mes "I am here to transmit"; mes "my special power to all the"; mes "members of the Order of Odin."; mes "Are you ready to learn my special skill?"; next; if( select("I am not interested.", "I am ready to learn!") != 1 ) { mes "[ Odin's Knight ]"; mes "Haha, Excellent choice!"; mes "Ok, are you ready?!"; mes "Yup~!! Yup~!! Go for it~!!"; next; mes "[ Odin's Knight ]"; mes "Up~!! Up~!! Ha~ah ah ah~! Yup!"; // -- NPC [Quest] Odin's Knight#n (10) uses effect: Unknown #58 specialeffect 58; next; mes "[ Odin's Knight ]"; mes "Yup~!! Go~!!"; // -- You are now level 77 // -- You gained a level! // -- You have gained 52462/150000 (26.90%/83.15%) Exp if( BaseLevel < 21 ) getexp 141,100; else if( BaseLevel > 20 && BaseLevel < 41 ) getexp 1500,1000; else if( BaseLevel > 40 && BaseLevel < 61 ) getexp 16509,10000; else if( BaseLevel > 60 && BaseLevel < 81 ) getexp 160308,100000; else if( BaseLevel > 80 && BaseLevel < 98 ) getexp 500000,150000; else getexp 1046821,300000; // -- Quest: Odin's Knight (9033) has been added. setquest 9033; // -- You use effect: Unknown #231 specialeffect2 231; next; mes "[ Odin's Knight ]"; mes "Ah ha..."; mes "How do you feel? Do you feel much powerful now?"; next; mes "[ Odin's Knight ]"; mes "I can only effort to help you once a day."; mes "Please come back 20 hours later."; mes "So I can get some rest."; close; } mes "[ Odin's Knight ]"; mes "Ok, never mind."; mes "If you learn it, I think"; mes "you would like it though. Ok, come back next time if you change your mind!"; close; } mes "[ Odin's Knight ]"; mes "I am here to transmit my special"; mes "experience to capable warriors."; mes "So they can learn how to battle as fast as I could."; next; mes "[ Odin's Knight ]"; mes "However, the requirements are complicated."; mes "I only talk to brave warriors."; mes "They are specialized people who came from Odin's world."; next; mes "[ Odin's Knight ]"; mes "I am a representative of"; mes "the Order of Odin."; mes "You are not a member of"; mes "our Order, but if you do join, please talk to me again. Have a good day."; close; } // -- Master Thief Quest geffen,127,115,5 script Geffen Enforcer#geffen 418,{ // -- Checks if NPC in use if( .currentCID != 0 ) { if( isloggedin(.currentAID, .currentCID) ) end; } addtimer 1000, strnpcinfo(3)+"::On_Leave"; // -- Should execute within 1sec or when npc windows are 'closed', whichever is longer set .currentCID, getcharid(0); set .currentAID, getcharid(3); if( checkquest(9035) >= 0 ) { mes "[ Geffen Enforcer ]"; mes "Let me remind you again."; mes "^FF0000Master Thief^000000 has been injured by Alberta enforcers."; mes "He is hiding somewhere"; mes "in ^7E3817Geffen^000000 city."; next; mes "[ Geffen Enforcer ]"; mes "They often hide behind"; mes "buildings but sometimes"; mes "they are also out in the"; mes "open. Check around"; mes "the inside edges of ^7E3817Geffen^000000 city."; next; mes "[ Geffen Enforcer ]"; mes "They will run after you"; mes "catch them once, but they will surrender if you keep catching them."; close; } else if( checkquest(9036) >= 0 ) { mes "[ Geffen Enforcer ]"; mes "You've done a good job!"; mes "Now the streets of Geffen"; mes "are a little safer thanks"; mes "to your efforts."; mes "^FF0000Master Thief^000000 has been caught!"; next; mes "[ Geffen Enforcer ]"; mes "But, there is one more problem."; mes "^FF0000Master Thief^000000 got hurt badly."; mes "It is much worse than I thought."; mes "He needs a treatment right away."; mes "Even he is a bad thief, but life is always important."; next; mes "[ Geffen Enforcer ]"; mes "For his treatment,"; mes "we need ^00800010 Green Herb^000000"; mes "We don't have much time."; mes "Please bring Green Herb~!!"; // -- Quest: Wanted: Master Thief (9036) has been deleted. // -- Quest: Wanted: Master Thief (9037) has been added. changequest 9036,9037; close; } else if( checkquest(9037) >= 0 ) { if( countitem(511) > 9 ) { // -- Inventory Item Removed: Green Herb (6) x 10 delitem 511, 10; // -- Quest: Wanted: Master Thief (9037) has been deleted. // -- Quest: Wanted: Master Thief (9038) has been added. changequest 9037,9038; mes "[ Geffen Enforcer ]"; mes "Oh! You brought Green Herbs!"; mes "Now, I will cure ^FF0000Master Thief^000000"; mes "with herbs."; mes "^FF0000Master Thief^000000~!! Get here!"; specialeffect 16,AREA,"Cured Master Thief#geff"; enablenpc "Cured Master Thief#geff"; next; mes "[ Geffen Enforcer ]"; mes "Wake up~!! Master Thief~!!"; next; mes "[ Geffen Enforcer ]"; mes "^FF0000Master Thief^000000 Get out!"; specialeffect 152,AREA,"Cured Master Thief#geff"; next; specialeffect 152,AREA,"Cured Master Thief#geff"; disablenpc "Cured Master Thief#geff"; mes "[ Geffen Enforcer ]"; mes "Hu..we are done treatment."; mes "Please inform our captain"; mes "that we caught the thief and cured him."; mes "He is in ^7E3817Alberta^000000."; next; mes "[ Geffen Enforcer ]"; mes "Thanks for helping me."; mes "I will send you to warp."; mes "Ye yup~!!"; close2; warp "alberta",103,48; end; } mes "[ Geffen Enforcer ]"; mes "You haven't collected ^00800010 Green Herb^000000."; mes "^FF0000Master Thief^000000 is in danger."; mes "Please bring him Green Herbs!"; close; } else if( checkquest(9039,PLAYTIME) == 2 ) { mes "[ Geffen Enforcer ]"; mes "^FF0000Master Thief^000000 had played in ^7E3817Alberta^000000 as an untouchable thief."; mes "so, Alberta enforcer finally"; mes "caught him and captured him."; mes "But, the sneaky thief has escaped to ^7E3817Geffen^000000 and hide himself somewhere here."; next; mes "[ Geffen Enforcer ]"; mes "We got informed about him"; mes "and are tyring to trace him in everywhere."; mes "However, we couldn't find any"; mes "clue of ^FF0000Master Thief^000000 case..."; next; mes "[ Geffen Enforcer ]"; mes "So, we need you, brave"; mes "and smart adventurer."; mes "It is very difficult to"; mes "capture ^FF0000Master Thief^000000 by myself."; mes "Can you lend a hand?? One more time?"; next; if( select("I'll catch him for you", "I am sorry, I am busy") != 1 ) { mes "[ Geffen Enforcer ]"; mes "I thought you are the brave one."; mes "You are a chicken!"; mes "Please come back"; mes "if you change your mind."; close; } mes "[ Geffen Enforcer ]"; mes "That is good to hear!"; mes "I knew that you are the generous one."; mes "^FF0000Master Thief^000000 has been injured by ^7E3817Alberta^000000 enforcers."; mes "He is hiding somewhere"; mes "in ^7E3817Geffen^000000 city."; next; mes "[ Geffen Enforcer ]"; mes "They often hide behind"; mes "buildings but sometimes"; mes "they are also out in the"; mes "open. Check around"; mes "the inside edges of ^7E3817Geffen^000000 city."; next; // -- Quest: Wanted: Master Thief (9039) has been deleted. erasequest 9039; mes "[ Geffen Enforcer ]"; mes "They will run after you"; mes "catch them once, but they will surrender if you keep catching them."; // -- Quest: Wanted: Master Thief (9035) has been added. setquest 9035; close; } else if( checkquest(9039,PLAYTIME) != -1 ) { mes "[ Geffen Enforcer ]"; mes "Hello~! Adventurer!"; mes "I really appreciate"; mes "about last time."; mes "But, ^FF0000Master Thief^000000"; mes "is still trying to escape from a prison."; mes "Maybe I will need your help again sometime soon."; close; } if( BaseLevel < 21 ) { mes "[ Geffen Enforcer ]"; mes "Hello~!"; mes "You should watch out always."; mes "The situation is chaotic."; close; } mes "[ Geffen Enforcer ]"; mes "Hello~!"; mes "You look like a veteran adventurer."; mes "I am a ^7E3817Geffen^000000 enforcer."; mes "I'd like to have a word with you."; mes "Do you want to listen to it?"; next; if( select("What happened?", "No, I am busy.") != 1 ) { mes "[ Geffen Enforcer ]"; mes "Alright. That is ok."; mes "Please come back"; mes "if you change your mind."; close; } mes "[ Geffen Enforcer ]"; mes "As you know, ^7E3817Geffen^000000 is"; mes "in a chaos right now."; mes "People are afraid of going out."; mes "Because of the ^FF0000Master Thief^000000"; mes "who is a notorious thief and"; mes "ran away from ^7E3817Alberta^000000."; next; mes "[ Geffen Enforcer ]"; mes "^FF0000Master Thief^000000 had played in ^7E3817Alberta^000000 as an untouchable thief."; mes "so, Alberta enforcer finally"; mes "caught him and captured him."; mes "But, the sneaky thief has escaped to ^7E3817Geffen^000000 and hide himself somewhere here."; next; mes "[ Geffen Enforcer ]"; mes "We got informed about him"; mes "and are tyring to trace him in everywhere."; mes "However, we couldn't find any"; mes "clue of ^FF0000Master Thief^000000 case..."; next; mes "[ Geffen Enforcer ]"; mes "So, we need you, brave"; mes "and smart adventurer."; mes "It is very difficult to"; mes "capture ^FF0000Master Thief^000000 by myself."; mes "Can you lend a hand??"; next; if( select("I'll catch him for you", "I am sorry, I am busy") != 1 ) { mes "[ Geffen Enforcer ]"; mes "I thought you are the brave one."; mes "You are a chicken!"; mes "Please come back"; mes "if you change your mind."; close; } mes "[ Geffen Enforcer ]"; mes "That is good to hear!"; mes "I knew that you are the generous one."; mes "^FF0000Master Thief^000000 has been injured by Alberta enforcers."; mes "He is hiding somewhere"; mes "in ^7E3817Geffen^000000 city."; next; mes "[ Geffen Enforcer ]"; mes "They often hide behind"; mes "buildings but sometimes"; mes "they are also out in the"; mes "open. Check around"; mes "the inside edges of ^7E3817Geffen^000000 city."; next; mes "[ Geffen Enforcer ]"; mes "They will run after you"; mes "catch them once, but they will surrender if you keep catching them."; // -- Quest: Wanted: Master Thief (9035) has been added. setquest 9035; close; On_Leave: if( .currentCID == getcharid(0) ) { set .currentCID, 0; } end; } geffen,130,115,5 script Cured Master Thief#geff 880,{ end; } - script Thief Position#geffe -1,{ end; OnInit: disablenpc "Injured Master Thief#1"; disablenpc "Injured Master Thief#2"; disablenpc "Injured Master Thief#3"; disablenpc "Injured Master Thief#4"; disablenpc "Cured Master Thief#geff"; // -- Random Chance Injured Master Thief NPC Location enablenpc "Injured Master Thief#"+rand(1,4); end; } - script Injured Master Thief -1,{ end; OnTouch: // -- Checks if NPC in use if( .currentCID != 0 ) { if( isloggedin(.currentAID, .currentCID) ) end; } addtimer 1000, strnpcinfo(3)+"::On_Leave"; // -- Should execute within 1sec or when npc windows are 'closed', whichever is longer set .currentCID, getcharid(0); set .currentAID, getcharid(3); if( checkquest(9035) >= 0 ) { mes "[ Injured Master Thief ]"; mes "Who, who are you?!"; mes "Tell me who you are!!"; next; select("I am here to arrest you!!! Ah ha ha!"); mes "[ Injured Master Thief ]"; mes "Oops.. I am used to be much stronger than this."; mes "Awee. If I didn't get hurt,"; mes "you couldn't beat me...You are so luck that I am injured! It is not fair!!"; next; select("You deserve that!"); mes "[ Injured Master Thief ]"; mes "I know I have been such a bully."; mes "But.. I am so tired now."; mes "I lost lots of blood."; mes "I can not stand it anymore..."; next; mes "[ Injured Master Thief ]"; mes "Can I ask one thing for the last?"; mes "I don't want to be seen arrested."; mes "Can I follow behind you?"; next; select("Ok, you can follow me behind."); mes "[ Injured Master Thief ]"; mes "Thanks.."; mes "I will follow behind you."; mes "But, you can not keep me last."; mes "Ah, Ha Ha Ha!"; // -- Quest: Wanted: Master Thief (9035) has been deleted. // -- Quest: Wanted: Master Thief (9036) has been added. changequest 9035,9036; close2; randomchance: specialeffect 16; disablenpc "Injured Master Thief#"+strnpcinfo(2); set .@mstid,atoi(strnpcinfo(2)); while( .@mstid == atoi(strnpcinfo(2)) ) { set .@mstid,rand(1,4); } enablenpc "Injured Master Thief#"+.@mstid; end; } mes "[ Injured Master Thief ]"; mes "......"; close2; goto randomchance; // -- login check is needed in case someone dies halfway, logs out (logout event not called // -- after death) and logs in before anyone elses uses the NPC, there by perma-locking the NPC OnPCLoginEvent: On_Leave: if( .currentCID == getcharid(0) ) { set .currentCID, 0; } end; } // -- Duplicate NPC geffen,77,96,0 duplicate(Injured Master Thief) Injured Master Thief#1 880,1,1 geffen,175,98,0 duplicate(Injured Master Thief) Injured Master Thief#2 880,1,1 geffen,147,163,0 duplicate(Injured Master Thief) Injured Master Thief#4 880,1,1 geffen,130,30,0 duplicate(Injured Master Thief) Injured Master Thief#3 880,1,1 // -- Captain Enforcer alberta,101,48,4 script Captain Enforcer#albert 418,{ if( checkquest(9038) >= 0 ) { mes "[ Captain Enforcer ]"; mes "Welcome! You are the brave"; mes "adventurer who captured ^FF0000Master Thief^000000 in ^7E3817Geffen^000000 city!"; next; mes "[ Captain Enforcer ]"; mes "I am really thankful for that."; mes "I don't know how to repay you."; mes "Here is my little gift for you."; mes "Hope you like it."; // -- Quest: Wanted: Master Thief (9038) has been deleted. // -- Quest: Wanted: Master Thief (9039) has been added. changequest 9038,9039; // -- You are now level 76 // -- You gained a level! // -- You have gained 0/3687 (0.00%/2.04%) Exp // -- Item added to inventory: Geffen Magic Coin (14) x 2 - Non-usable if( isPremium() ) getitem 7976, 2; else getitem 7976, 1; next; mes "[ Captain Enforcer ]"; mes "Oh, I should tell you that"; mes "^800080Geffen Magic Coin^000000 is very unique coin."; mes "I heard that if you collect"; mes "^800080Geffen Magic Coin^000000 and"; mes "give to ^0000FFCindy^000000 in ^7E3817Geffen^000000,"; mes "she will be so delightful."; next; mes "[ Captain Enforcer ]"; mes "Anyway, thank you so much!"; mes "I hope we can see each other again."; mes "Have a good day!"; close; } mes "[ Captain Enforcer ]"; mes "Hello~!"; mes "You should watch out always."; mes "The situation is chaotic."; close; } // -- Cindy, The Exchanger geffen,111,104,4 script Cindy#geffen 68,{ mes "[ Cindy ]"; mes "Hello~!!"; mes "Welcome to the Geffen Magic World!"; mes "Geffen is the city that you can experience and see fantastic magic!"; // -- NPC Cindy#geffen (0) uses effect: Unknown #72 specialeffect 72; next; mainmenu: switch( select("Listen to the history of Geffen Magic Coin", "Exchange Geffen Magic Coin", "Cancel") ) { case 1: mainstory: switch( select("Cindy story", "Hunter story", "Patrolman story", "Gloria's story", "Go back to the previous menu") ) { case 1: mes "[ Cindy ]"; mes "Hi~! My name is Cindy."; mes "Would you like to listen to my story?"; next; mes "[ Cindy ]"; mes "I am quite dexterous in making things since I was young."; mes "Have you heard about the kids who assembled broken blue gemstones into perfect shape by using sticky rice?"; mes "Yes, that was me."; // -- [dist=5] Cindy#geffen (0): *FlashEyes(?!)* emotion e_flash; next; mes "[ Cindy ]"; mes "Well... I really like Geffen,"; mes " so I wanted to make souvenir"; mes "which can represents Geffen."; mes "I was so focused on making it for a long time and I finally made one of the best coin in Rune-Midgard."; next; mes "[ Cindy ]"; mes "People were cheering for me"; mes "and they loved it. We named it as"; mes "^FF00FFGeffen Magic Coin^000000."; mes "Everyone wanted to have it so I gave them all of my ^FF00FFGeffen Magic Coins^000000."; // -- NPC Cindy#geffen (0) uses effect: Unknown #305 specialeffect 305; next; mes "[ Cindy ]"; mes "A few days later..."; mes "I started to get letters from abroad."; mes "They loved my coins even in another countries, and they ordered a lot of ^FF00FFGeffen Magic Coins^000000."; next; mes "[ Cindy ]"; mes "I should have saved some of coins for other countries."; mes "I had to think how to bring the coins back from people."; next; mes "[ Cindy ]"; mes "So I brought up with another brilliant idea!"; mes "I made special scrolls with specific options."; mes "If I give those scrolls to people they would give me back my ^FF00FFGeffen Magic Coins^000000!!!"; next; mes "[ Cindy ]"; mes "Hahaha! Am I a genius?!!"; mes "Right? Ha ha ha"; next; mes "[ Cindy ]"; mes "You already have"; mes "^FF00FFGeffen Magic Coins^000000, right?"; mes "So good. I don't need to explain anymore. Hu hu~."; next; mes "[ Cindy ]"; mes "So, you are already fallen love with Geffen Magic city!"; mes "Am I right?"; next; mes "[ Cindy ]"; mes "Why don't you give me your ^FF00FFGeffen Magic Coins^000000?"; mes "So I can donate them"; mes "to another countries that need my coins."; mes "What do you think?"; // -- [dist=5] Cindy#geffen (0): *Nice One* emotion e_no1; next; mes "[ Cindy ]"; mes "Of course, I will pay you back"; mes "with awesome items."; mes "You can believe me I made those items very specially."; next; mes "[ Cindy ]"; mes "I am sure you won't regret."; mes "So would like to exchange your Geffen Coins with my items?"; // -- [dist=5] Cindy#geffen (0): *Zeny!* emotion e_cash; next; switch( select("Exchange Geffen Magic Coins", "Go back to the previous menu.", "Cancel.") ) { case 1: mes "[ Cindy ]"; mes "Good choice! But, you know my items are really remarkable, so you need to pay some ^0000FFZeny^000000 also with ^FF00FFGeffen Magic Coins^000000."; mes "But I am sure it is affordable for you! Here is the item list you can exchange."; next; mainexchange; case 2: goto mainstory; case 3: close; } case 2: mes "[ Cindy ]"; mes "I have good friends,"; mes "he is a hunter."; mes "He usually smiles when we hang out."; next; mes "[ Cindy ]"; mes "But he looks anxious these days."; mes "I don't know why..."; mes "When I ask him the reason he doesn't let me know why."; mes "- You can not help me on this. -"; mes "He just says and sighs."; // -- [dist=5] Cindy#geffen (0): *Pfft* emotion e_pif; next; mes "[ Cindy ]"; mes "I couldn't help him so I gave him some of my ^FF00FFGeffen Magic Coins^000000"; mes "Then he was happy"; mes "for a moment."; mes "But he looks still not relieved."; next; mes "[ Cindy ]"; mes "I don't know how to help him."; mes "Maybe you can help him..."; mes "Maybe..."; next; goto mainstory; case 3: mes "[ Cindy ]"; mes "Patrolman is very busy right now."; mes "I heard one of ^008000Notorious Thief^000000 ran away to Geffen."; next; mes "[ Cindy ]"; mes "So he is in emergency mode right now."; mes "Every Patrolman are working hard catching on the thief."; // -- [dist=5] Cindy#geffen (0): *'o'(?!)* emotion e_sigh; next; mes "[ Cindy ]"; mes "So I gave them some of my"; mes "^FF00FFGeffen Magic Coins^000000 to cheer them!!"; mes "They can remind that how brave and respectable they are."; mes "I think I am a good friends~! Haha!"; next; goto mainstory; case 4: mes "[ Cindy ]"; mes "Gloria?"; mes "She is a kind of freak! Haha."; mes "She is only obsessed with refining items."; mes "She wants to invent outrageous armor."; mes "I heard that she has to refine lots of armors to practice."; next; mes "[ Cindy ]"; mes "I don't think she can manage it by her own."; mes "Maybe she needs some help..."; mes "Anyway I am a good friend of her so I gave her some of my Geffen Magic Coins to cheer her up."; // -- [dist=5] Cindy#geffen (0): *Pfft* emotion e_pif; next; mes "[ Cindy ]"; mes "She would give my coins to some people who helped her."; mes "I don't know~!!"; mes "It is her business anyway."; next; goto mainstory; case 5: goto mainmenu; } case 2: mes "[ Cindy ]"; mes "If you wanto exchange ^FF00FFGeffen Magic Coins^000000 with my scrolls,"; mes "you need to pay some ^0000FFZeny^000000 also."; mes "But I am sure it is affordable for you! Here is the item list you can exchange."; next; mainexchange: setarray .@Shop[0],12753,1,1,10000,12751,1,1,12500,12752,1,1,12500,12748,1,1,15000,12749,1,1,15000, 12750,1,1,15000,12745,1,1,20000,12746,1,1,20000,12747,1,1,20000,5471,540,1,2000000,5257,540,1,2000000; set .@Index, (select("Soul Scroll","Armor Scroll", "Prayer Scroll","Immune Scroll","Mystic Scroll","Battle Scroll", "Cranial Scroll","Buster Scroll","Royal Scroll","Hairband Of Reginleif","Soulless Wing") - 1) * 4; set .@Item, .@Shop[.@Index]; set .@Require, .@Shop[.@Index + 1]; set .@Amount, .@Shop[.@Index + 2]; set .@Zeny, .@Shop[.@Index + 3]; if( countitem(7976) < .@Require ) { mes "[ Cindy ]"; mes "Huh? You don't have enough ^FF00FFGeffen Magic Coins^000000."; mes "Check your number of coins"; mes "and come back again."; close; } if( Zeny < .@Zeny ) { mes "[ Cindy ]"; mes "Huh? You don't have enough zeny~!!"; mes "I would like to give you for free but I can't!"; mes "because it is unique item... Sorry~!"; // -- [dist=5] Cindy#geffen (1): *Zeny!* emotion e_cash; close; } if( checkweight(.@Item, .@Amount) == 0 ) { mes "[ Cindy ]"; mes "- Wait a minute !! -"; mes "- Currently you're carrying -"; mes "- too many items with you. -"; mes "- Please try again -"; mes "- after you loose some weight. -"; close; } mes "[ Cindy ]"; mes "Ok! Exchanging is done! It was good deal, right?"; getitem .@Item, .@Amount; set Zeny, Zeny - .@Zeny; delitem 7976, .@Require; close; case 3: close; } } // -- Mage Hunter Quest geffen,103,56,5 script Mage Hunter#gef 735,{ if( checkquest(9040) >= 0 ) { mes "[ Mage Hunter ]"; mes "Why are you still here?"; mes "Go to PVP Room and capture the Mage!"; next; mes "[ Mage Hunter ]"; mes "He is in ^0000FFIzlude PVP Room^000000!"; mes "Please capture him!"; close; } else if( dailyquest_mh == 1 ) { mes "[ Mage Hunter ]"; mes "Great job! You have caught"; mes "Rebel Mage!"; mes "Here is your reward!"; mes "Hope you like it."; next; mes "[ Mage Hunter ]"; mes "There are many more rebels"; mes "who cause trouble for"; mes "Geffen City. I'll count on"; mes "you again for help!"; next; mes "[ Mage Hunter ]"; mes "Come back after 20 hours"; mes "have passed and I'll have"; mes "information on another"; mes "rebel mage to catch."; next; // -- Quest: Geffen Mage Hunter: Present (9041) has been added. set dailyquest_mh, 0; setquest 9041; mes "[ Mage Hunter ]"; mes "This is special coin for you."; mes "Oh, I should tell you that"; mes "^800080Geffen Magic Coin^000000 is very unique coin."; mes "I heard that if you collect"; mes "^800080Geffen Magic Coins^000000 and"; mes "give to ^0000FFCindy^000000 in ^7E3817Geffen^000000,"; mes "she will be so delightful."; // -- Item added to inventory: Geffen Magic Coin (10) x 2 - Non-usable if( isPremium() ) getitem 7976, 2; else getitem 7976, 1; // -- You have gained 36753/4344 (12.25%/2.02%) Exp getexp 36753,4344; next; mes "[ Mage Hunter ]"; mes "Anyway, thank you so much!"; mes "I hope we can see each other again."; mes "Have a good day!"; close; } else if( checkquest(9041,PLAYTIME) == 2 ) { erasequest 9041; goto afterdelay; } else if( checkquest(9041,PLAYTIME) != -1 ) { mes "[ Mage Hunter ]"; mes "Hello~! Again!"; mes "I really appreciate"; mes "about last time."; next; mes "[ Mage Hunter ]"; mes "You must be exhausted!"; mes "You need to have a break!"; mes "Come back after 20 hours"; mes "have passed and I'll have"; mes "information on another"; mes "rebel mage to catch."; close; } if( BaseLevel < 60 ) { mes "[ Mage Hunter ]"; mes "Hello~!"; mes "You should watch out always."; mes "The situation is chaotic."; next; mes "[ Mage Hunter ]"; mes "I heard PVP Room is in danger,"; mes "only veteran adventure"; mes "can bear to do the quest."; next; mes "[ Mage Hunter ]"; mes "You should train yourself more,"; mes "and challenge to PVP Room quest."; mes "It would be worth it."; close; } afterdelay: mes "[ Mage Hunter ]"; mes "I will catch them someday..!"; next; if( select("What happened?", "...I heard that, I will help you!") != 1 ) { mes "[ Mage Hunter ]"; mes "Finally, someone who is"; mes "not afraid of a real battle!"; next; mes "[ Mage Hunter ]"; mes "Your target is"; mes "Rebel Mage and he has"; mes "been known to hide in"; mes "the Izlude ^0000FFPVP Room^000000!"; mes "Good luck!"; // -- Quest: Geffen Mage Hunter (9040) has been added. setquest 9040; close; } mes "[ Mage Hunter ]"; mes "Curse those rebel mages!"; mes "They cause trouble for"; mes "the citizens of Geffen city"; mes "and then run into the"; mes "PvP rooms where it is"; mes "hard to catch them!"; next; mes "[ Mage Hunter ]"; mes "I need a help from"; mes "strong adventurers who"; mes "can capture them in the"; mes "PvP rooms!"; next; mes "[ Mage Hunter ]"; mes "I am authorized to"; mes "reward you if you"; mes "capture a rebel mage."; next; mes "[ Mage Hunter ]"; mes "I am sure you are the one"; mes "we have been looking for!"; mes "I will give you more information, so please help me!"; next; mes "[ Mage Hunter ]"; mes "Your target is"; mes "Rebel Mage and he has"; mes "been known to hide in"; mes "the Izlude PVP Room!"; next; mes "[ Mage Hunter ]"; mes "It might take a while"; mes "to convince him to"; mes "surrender so just"; mes "keep threatening"; mes "him until he comes"; mes "peacefully!"; next; mes "[ Mage Hunter ]"; mes "Good luck and I wish you the best!"; // -- Quest: Geffen Mage Hunter (9040) has been added. setquest 9040; close; } - script Rebel Location# -1,{ end; OnInit: disablenpc "[Quest] Rebel Mage#ge01"; disablenpc "[Quest] Rebel Mage#ge02"; disablenpc "[Quest] Rebel Mage#ge03"; // -- Random Chance Injured Master Thief NPC Location enablenpc "[Quest] Rebel Mage#"+rand(1,3); end; end; } pvp_y_8-2,158,175,4 script [Quest] Rebel Mage#ge01 502,1,1,{ end; OnTouch: // -- Checks if NPC in use if( .currentCID != 0 ) { if( isloggedin(.currentAID, .currentCID) ) end; } addtimer 1000, strnpcinfo(3)+"::On_Leave"; // -- Should execute within 1sec or when npc windows are 'closed', whichever is longer set .currentCID, getcharid(0); set .currentAID, getcharid(3); if( checkquest(9040) >= 0 ) { mes "[ Rebel Mage ]"; mes "Do not get close to me!"; next; mes "[ Rebel Mage ]";"; mes "I don't know you!"; mes "I don't believe anybody!"; mes "Those Mage Hunters always lie to me!"; next; if( select("You are wrong!", "I agree, they lied to you.") != 1 ) { mes "[ Rebel Mage ]"; mes "How did you know that they lied to me?"; mes "Who are you? Where are you from?"; next; mes "[ "+strcharinfo(0)+" ]"; mes "Ops, he might notice me!"; mes "I should have been more careful."; next; mes "[ Rebel Mage ]"; mes "The Mage Hunter send you here, didn't he?"; mes "I knew that!"; next; mes "[ "+strcharinfo(0)+" ]"; mes "I.. I don't know..."; next; mes "[ Rebel Mage ]"; mes "You bastard!"; next; goto surrender; } mes "[ Rebel Mage ]"; mes "What? What did you say?"; next; mes "[ Rebel Mage ]"; mes "I am not wrong!"; mes "I have been trying to discover new magic!"; next; mes "[ Rebel Mage ]"; mes "You seem very suspicious."; mes "The Mage Hunter sent you here, right?"; next; mes "[ Rebel Mage ]"; mes "Well, then you are my enemy!"; next; mes "[ Rebel Mage ]"; mes "^0000FFLightning Bolt^000000!"; next; surrender: set .@a,rand(1,2); if( .@a == 1 ) { mes "[ Rebel Mage ]"; // -- NPC [Quest] Rebel Mage#geff (0) uses effect: Unknown #29 specialeffect 29; // -- NPC [Quest] Rebel Mage#geff (0) uses effect: Unknown #16 specialeffect 16; mes "Kekekeke! They will never catch me!"; close2; disablenpc "[Quest] Rebel Mage#"+strnpcinfo(2); set .@mhid,atoi(strnpcinfo(2)); while( .@mhid == atoi(strnpcinfo(2)) ) { set .@mhid,rand(1,3); } enablenpc "[Quest] Rebel Mage#"+.@mhid; end; } else { // -- NPC [Quest] Rebel Mage#geff (0) uses effect: Unknown #44 specialeffect 44; mes "[ Rebel Mage ]"; mes "............"; next; mes "[ Rebel Mage ]"; mes "What? I am out of SP!"; next; mes "[ Rebel Mage ]"; mes "What horrible timing!"; mes "You win, I surrender!"; // -- [dist=1] [Quest] Rebel Mage#geff (0): *Sob* emotion e_sob; // -- Quest: Geffen Mage Hunter (9040) has been deleted. set dailyquest_mh, 1; erasequest 9040; // -- NPC [Quest] Rebel Mage#geff (0) uses effect: Unknown #16 specialeffect 16; close2; disablenpc "[Quest] Rebel Mage#"+strnpcinfo(2); set .@mhid,atoi(strnpcinfo(2)); while( .@mhid == atoi(strnpcinfo(2)) ) { set .@mhid,rand(1,3); } enablenpc "[Quest] Rebel Mage#"+.@mhid; end; } } end; On_Leave: if( .currentCID == getcharid(0) ) { set .currentCID, 0; } end; } pvp_y_8-2,55,66,5 script [Quest] Rebel Mage#ge03 530,1,1,{ end; OnTouch: // -- Checks if NPC in use if( .currentCID != 0 ) { if( isloggedin(.currentAID, .currentCID) ) end; } addtimer 1000, strnpcinfo(3)+"::On_Leave"; // -- Should execute within 1sec or when npc windows are 'closed', whichever is longer set .currentCID, getcharid(0); set .currentAID, getcharid(3); if( checkquest(9040) >= 0 ) { mes "[ Rebel Mage ]"; mes "Tell me who you are!"; next; mes "[ Rebel Mage ]"; mes "You also here to catch me?"; next; mes "[ Rebel Mage ]"; mes "I am sick of Mage Hunters!"; mes "They never give up!"; next; mes "[ Rebel Mage ]"; mes "I was in his side also,"; mes "but now we are having different opinion!"; next; mes "[ Rebel Mage ]"; mes "I am just trying to go my way!"; mes "So do not interrupt me!"; mes "I will do what I want!"; next; if( select("You have a wrong idea!", "I agree, I will follow you!") != 1 ) { mes "[ Rebel Mage ]"; mes "Do you agree? Ha ha!"; mes "You are smarter than I thought!"; mes "Yes, I am right."; next; mes "[ Rebel Mage ]"; mes "I hope Mage Hunters can understand me like you."; mes "But they are stubborn!"; mes "I don't understand them."; next; goto surrender; } mes "[ Rebel Mage ]"; mes "..I never thought I am wrong.."; next; mes "[ Rebel Mage ]"; mes "Maybe you are right."; mes "I have been such a jerk."; next; mes "[ Rebel Mage ]"; mes "But, still I am not convinced about Mage Hunters."; mes "I don't know..."; next; surrender: set .@a,rand(1,2); if( .@a == 1 ) { mes "[ Rebel Mage ]"; mes "Hu hu hu. I am still strong!"; mes "I do not surrender easily."; next; mes "[ Rebel Mage ]"; mes "You better go away!"; mes "Otherwise I will blow you to smithereens!"; // -- NPC [Quest] Rebel Mage#geff (0) uses effect: Unknown #16 specialeffect 16; close2; disablenpc "[Quest] Rebel Mage#"+strnpcinfo(2); set .@mhid,atoi(strnpcinfo(2)); while( .@mhid == atoi(strnpcinfo(2)) ) { set .@mhid,rand(1,3); } enablenpc "[Quest] Rebel Mage#"+.@mhid; end; } else { mes "[ Rebel Mage ]"; mes "I am exhausted to against them."; mes "I am out of here."; mes "I want to live better life."; next; mes "[ Rebel Mage ]"; mes "You win, I surrender!"; // -- Quest: Geffen Mage Hunter (9040) has been deleted. set dailyquest_mh, 1; erasequest 9040; // -- NPC [Quest] Rebel Mage#geff (0) uses effect: Unknown #16 specialeffect 16; close2; disablenpc "[Quest] Rebel Mage#"+strnpcinfo(2); set .@mhid,atoi(strnpcinfo(2)); while( .@mhid == atoi(strnpcinfo(2)) ) { set .@mhid,rand(1,3); } enablenpc "[Quest] Rebel Mage#"+.@mhid; end; } } end; On_Leave: if( .currentCID == getcharid(0) ) { set .currentCID, 0; } end; } pvp_y_8-2,131,122,5 script [Quest] Rebel Mage#ge02 601,1,1,{ end; OnTouch: // -- Checks if NPC in use if( .currentCID != 0 ) { if( isloggedin(.currentAID, .currentCID) ) end; } addtimer 1000, strnpcinfo(3)+"::On_Leave"; // -- Should execute within 1sec or when npc windows are 'closed', whichever is longer set .currentCID, getcharid(0); set .currentAID, getcharid(3); if( checkquest(9040) >= 0 ) { mes "[ Rebel Mage ]"; mes "Who are you?"; next; mes "[ Rebel Mage ]"; mes "Why are you staring at me?!"; mes "I don't like that!"; next; if( select("I am here to capture you!", "I am sorry I apologize.") != 1 ) { mes "[ Rebel Mage ]"; mes "Yes, you should be sorry!"; mes "But that is not enough!"; next; mes "[ Rebel Mage ]"; mes "I feel still not good because of you!"; mes "You better run away or you will be in trouble!"; next; goto surrender; } mes "[ Rebel Mage ]"; mes "Capture me? Hey dude!"; mes "Do you know who I am?"; next; mes "[ "+strcharinfo(0)+" ]"; mes "I know you are a Rebel Mage!"; next; mes "[ Rebel Mage ]"; mes "So the Mage Hunters sent"; mes "you? No way!"; mes "I will never surrender!"; mes "Go away before I blow you"; mes "to smithereens!"; // -- [dist=1] [Quest] Rebel Mage#geff (0): *Good Game* emotion e_gg; next; mes "[ Rebel Mage ]"; mes "What? You're still here?"; mes "I bite, I swear! Run or face"; mes "ultimate and complete"; mes "destruction and death!"; next; mes "[ Rebel Mage ]"; mes "^FF0000Meteor Storm!^000000"; next; surrender: set .@a,rand(1,2); if( .@a == 1 ) { mes "[ Rebel Mage ]"; mes "Kekekeke! They will never catch me!"; // -- NPC [Quest] Rebel Mage#geff (0) uses effect: Unknown #92 specialeffect 92; // -- NPC [Quest] Rebel Mage#geff (0) uses effect: Unknown #16 specialeffect 16; close2; disablenpc "[Quest] Rebel Mage#"+strnpcinfo(2); set .@mhid,atoi(strnpcinfo(2)); while( .@mhid == atoi(strnpcinfo(2)) ) { set .@mhid,rand(1,3); } enablenpc "[Quest] Rebel Mage#"+.@mhid; end; } else { // -- NPC [Quest] Rebel Mage#geff (0) uses effect: Unknown #44 specialeffect 44; mes "[ Rebel Mage ]"; mes "............"; next; mes "[ Rebel Mage ]"; mes "What? I am out of SP!"; next; mes "[ Rebel Mage ]"; mes "What horrible timing!"; mes "You win, I surrender!"; // -- Quest: Geffen Mage Hunter (9040) has been deleted. set dailyquest_mh, 1; erasequest 9040; // -- NPC [Quest] Rebel Mage#geff (0) uses effect: Unknown #16 specialeffect 16; close2; disablenpc "[Quest] Rebel Mage#"+strnpcinfo(2); set .@mhid,atoi(strnpcinfo(2)); while( .@mhid == atoi(strnpcinfo(2)) ) { set .@mhid,rand(1,3); } enablenpc "[Quest] Rebel Mage#"+.@mhid; end; } } end; On_Leave: if( .currentCID == getcharid(0) ) { set .currentCID, 0; } end; }