diff options
Diffstat (limited to 'npc/pre-re/quests')
-rw-r--r-- | npc/pre-re/quests/doomed_swords.txt | 64 | ||||
-rw-r--r-- | npc/pre-re/quests/monstertamers.txt | 15 | ||||
-rw-r--r-- | npc/pre-re/quests/quests_13_1.txt | 17 | ||||
-rw-r--r-- | npc/pre-re/quests/quests_nameless.txt | 391 | ||||
-rw-r--r-- | npc/pre-re/quests/skills/swordman_skills.txt | 148 |
5 files changed, 635 insertions, 0 deletions
diff --git a/npc/pre-re/quests/doomed_swords.txt b/npc/pre-re/quests/doomed_swords.txt new file mode 100644 index 000000000..9d27d588b --- /dev/null +++ b/npc/pre-re/quests/doomed_swords.txt @@ -0,0 +1,64 @@ +//===== Hercules Script ======================================= +//= Doomed Swords Quest +//===== By: ================================================== +//= kobra_k88; L0ne_W0lf +//===== Current Version: ===================================== +//= 1.0 +//===== Compatible With: ===================================== +//= Hercules GIT +//===== Description: ========================================= +//= [Aegis Conversion] +//= Doomed Swords Quest: +//= - Quest for Doomed Swords: Grimtooth, Mysteltain, Executioner. +//= Although this quest is enabled on iRO, the Mysteltainn +//= portion is NOT completable as the item "Young Twig" does +//= not drop. +//= - Variable in use: event_magum (max 6) +//= - Variable in use: dmdswrd_Q2 (bits 1 - 32) +//===== Additional Comments: ================================= +//= 1.0 Moved from main folder [Streusel] +//============================================================ + +izlude_in,173,88,2 script Nain#magum 102,{ + if (dmdswrd_Q2 == 4) { + mes "[Nain]"; + mes "It doesn't matter how"; + mes "powerful the Executioner"; + mes "is: if it were to end up in"; + mes "my hands, I would get rid"; + mes "of it right away. I'd never risk losing my mind to that curse..."; + close; + } + mes "[Nain]"; + mes "Long ago, one sword"; + mes "was used to behead all"; + mes "the criminals that had been"; + mes "sentenced to death. That"; + mes "accursed blade is known"; + mes "as the Executioner."; + next; + mes "[Nain]"; + mes "As the Executioner slayed"; + mes "more criminals, the rage and"; + mes "bloodlust of its victims began"; + mes "to accumulate upon the blade."; + mes "Although the sword gained great^FFFFFF ^000000 strength, it was tainted by evil."; + next; + mes "[Nain]"; + mes "The last person to wield"; + mes "the Executioner almost lost"; + mes "his mind to the sword. He saved^FFFFFF ^000000 himself by giving it to a talented"; + mes "blacksmith who would destroy^FFFFFF ^000000 it for him, thus saving his soul."; + next; + mes "[Nain]"; + mes "This mysterious blacksmith"; + mes "was never seen again in the"; + mes "city of Prontera, but rumor has"; + mes "it that if you can find him, he"; + mes "can forge that accursed"; + mes "Executioner anew..."; + if (event_magum == 1) + set event_magum,5; + set dmdswrd_Q2,dmdswrd_Q2 | 4; + close; +}
\ No newline at end of file diff --git a/npc/pre-re/quests/monstertamers.txt b/npc/pre-re/quests/monstertamers.txt new file mode 100644 index 000000000..86f118f5a --- /dev/null +++ b/npc/pre-re/quests/monstertamers.txt @@ -0,0 +1,15 @@ +//===== Hercules Script ======================================= +//= Monster Tamers +//===== By: ================================================== +//= Streusel +//===== Current Version: ===================================== +//= 1.0 +//===== Compatible With: ===================================== +//= Hercules +//===== Description: ========================================= +//= Cute pet quest items +//===== Additional Comments: ================================= +//= 1.0 Duplicates for Monster Tamer [Streusel] +//============================================================ + +izlude_in,129,64,4 duplicate(Monster_Tamer#izu) Monster Tamer#izlude 125
\ No newline at end of file diff --git a/npc/pre-re/quests/quests_13_1.txt b/npc/pre-re/quests/quests_13_1.txt new file mode 100644 index 000000000..b98aa2b95 --- /dev/null +++ b/npc/pre-re/quests/quests_13_1.txt @@ -0,0 +1,17 @@ +//===== Hercules Script ====================================== +//= Quest NPCs related to Ash-Vacuum +//===== By: ================================================== +//= Streusel +//===== Current Version: ===================================== +//= 1.0 +//===== Description: ========================================= +//= [Official Conversion] +//= Contains: +//= Promotional Staff Duplicate for pre-renewal +//===== Additional Comments: ================================= +//= 1.0 First Version. [Streusel] +//============================================================ + +// Onward to the New World +//============================================================ +izlude,101,173,6 duplicate(Promotional Staff#iz) Promotional Staff#izlude 100
\ No newline at end of file diff --git a/npc/pre-re/quests/quests_nameless.txt b/npc/pre-re/quests/quests_nameless.txt new file mode 100644 index 000000000..ab5d816dc --- /dev/null +++ b/npc/pre-re/quests/quests_nameless.txt @@ -0,0 +1,391 @@ +//===== Hercules Script ====================================== +//= Nameless Island Quests +//===== By: ================================================== +//= Streusel +//===== Current Version: ===================================== +//= 1.0 +//===== Description: ========================================= +//= Contains: +//= Part of Muff's Loan: +//- - Help Muff clear his Debt and get his collateral back. +//= - prerequisite Quest to "Broken Diamond" +//= - Variable in use: diamond_edq (Max: 14) +//===== Additional Comments: ================================= +//= 1.0 First version. +//============================================================ + +izlude_in,113,66,0 script Strange Machine 111,{ + if (checkweight(907,200) == 0) { + mes "[Dorian]"; + mes "Ugh, just like a member"; + mes "of the working class:"; + mes "hoarding all your items"; + mes "like a packrat? Have the"; + mes "decency to relocate your"; + mes "goods to Kafra Storage, please."; + close; + } + if (diamond_edq) == 10 { + set .@bolt_rand,rand(2,5); + mes "^3355FFThis must be Dorian's"; + mes "Mystic Dryer de Elegance."; + mes "What do you want to do?^000000"; + next; + while(1) { + set .@switch_sound,rand(1,4); + switch(select("Check the Machine:Replace the Engine:Tighten the Screw:Press a Switch")) { + case 1: + if (.@hit_status == 0) { + mes "^3355FFThere's no power"; + mes "in this behemoth"; + mes "of a machine.^000000"; + next; + } + break; + case 2: + if (.@engine == 0) { + mes "^3355FFYou replace the rough"; + mes "ruby in the ruby engine"; + mes "with a new rough ruby."; + mes "It clicks into place"; + mes "inside the engine core.^000000"; + next; + set .@engine,.@engine+1; + } + else if (engine > 0) { + mes "^3355FFThe ruby in the"; + mes "engine has already"; + mes "been replaced.^000000"; + next; + } + break; + case 3: + if (.@engine < 1) { + mes "^3355FFYou probably need"; + mes "to replace the ruby"; + mes "in the engine first.^000000"; + next; + } + else if ((.@engine == 1) && (.@bolt < .@bolt_rand)) { + mes "^3355FF*Krrrr-Krrrrr*^000000"; + mes "^3355FF*Krrrr-Krrrrr*^000000"; + next; + set .@bolt,.@bolt+1; + } + else if ((.@engine == 1) && (.@bolt == .@bolt_rand)) { + mes "^3355FF*Krrrr-Krrrrr*^000000"; + mes "^0000FF*Click*^000000"; + next; + set .@bolt,.@bolt+1; + set .@bolt_suc,.@bolt_suc+1; + } + else if ((.@engine == 1) && (.@bolt > .@bolt_rand)) { + mes "^3355FF*Krrrr-Krrrrr*^000000"; + mes "^3355FF*KrrICK-ICK-ICK-KOOM*^000000"; + next; + mes "^3355FFYou tightened the"; + mes "screw too tightly!"; + mes "The joint is broken..."; + mes "You should go back"; + mes "to Dorian for help.^000000"; + setquest 3106; + set diamond_edq,11; + close; + } + else { + mes "^3355FFSomething must have"; + mes "gone wrong. You'd be"; + mes "better off starting"; + mes "from the beginning...^000000"; + close; + } + break; + case 4: + if ((.@engine < 1) && (.@bolt_suc < 1)) { + mes "^3355FFYou need to replace"; + mes "the engine's ruby and"; + mes "tighten the main screw"; + mes "before you mess with"; + mes "these switches.^000000"; + next; + } + else if ((.@engine == 1) && (.@bolt_suc < 1)) { + mes "^3355FFYou need to tighten"; + mes "the scren before you can"; + mes "start the engine safely."; + next; + } + else if ((.@red >= 1) && (.@blue >= 1) && (.@yellow >= 1) && (.@green >= 1)) { + mes "^3355FFThe Mystic Dryer de"; + mes "Elegance started with"; + mes "a mighty buzz, and the"; + mes "sound lowers to a calm"; + mes "hum as it stabilizes."; + mes "It looks like you fixed it!^000000"; + next; + mes "^3355FFYou should tell Dorian"; + mes "first so that you can"; + mes "use this machine.^000000"; + setquest 3107; + set diamond_edq,12; + close; + } + else if ((.@engine == 1) && (.@bolt_suc == 1)) { + if (.@switch_sound == 1) { + mes "^3355FF*Buzz Buzz*^000000"; + mes "^3355FF*Buzz Buzz*^000000"; + mes "^3355FFThe machine is"; + mes "vibrating weakly."; + mes "Which switch do"; + mes "you want to press?^000000"; + next; + switch(select("Red Switch:Blue Switch:Yellow Switch:Green Switch")) { + default: + mes "^3355FF*Whiz Whiz*^000000"; + mes "^3355FF*Whiz Whiz*^000000"; + next; + mes "^3355FFThe machine made some"; + mes "violent, erratic sounds,"; + mes "and vibrated violently"; + mes "before coming to a sudden"; + mes "stop. That was the wrong"; + mes "switch. You'd better ask Dorian... ^FFFFFF ^000000"; + setquest 3106; + set diamond_edq,11; + close; + case 1: + if (.@red >= 0) { + mes "^3355FF*Buzzz Buzzz*^000000"; + mes "^3355FF*Clang...!*^000000"; + next; + mes "^3355FFThe machine's"; + mes "vibrations have"; + mes "grown stronger."; + mes "It looks like you"; + mes "chose the right switch.^000000"; + next; + set .@red,.@red+1; + } + else { + mes "^3355FF*Whiz Whiz*^000000"; + mes "^3355FF*Whiz Whiz*^000000"; + next; + mes "^3355FFThe machine made some"; + mes "violent, erratic sounds,"; + mes "and vibrated violently"; + mes "before coming to a sudden"; + mes "stop. That was the wrong"; + mes "switch. You'd better ask Dorian... ^FFFFFF ^000000"; + setquest 3106; + set diamond_edq,11; + close; + } + break; + } + } + else if (.@switch_sound == 2) { + mes "^3355FF*Purr Purr*^000000"; + mes "^3355FF*Purr Purr*^000000"; + mes "^3355FFThe machine is vibrating"; + mes "a little bit more strongly."; + mes "Which switch will"; + mes "you try now?^000000"; + next; + switch(select("Red Switch:Blue Switch:Yellow Switch:Green Switch")) { + default: + mes "^3355FF*Whiz Whiz*^000000"; + mes "^3355FF*Whiz Whiz*^000000"; + next; + mes "^3355FFThe machine made some"; + mes "violent, erratic sounds,"; + mes "and vibrated violently"; + mes "before coming to a sudden"; + mes "stop. That was the wrong"; + mes "switch. You'd better ask Dorian... ^FFFFFF ^000000"; + setquest 3106; + set diamond_edq,11; + close; + case 2: + if (.@blue >= 0) { + mes "^3355FF*Purrr Purr*^000000"; + mes "^3355FF*Clang...!*^000000"; + next; + mes "^3355FFThe machine's"; + mes "vibrations have"; + mes "grown stronger."; + mes "It looks like you"; + mes "chose the right switch.^000000"; + next; + set .@blue,.@blue+1; + } + else { + mes "^3355FF*Whiz Whiz*^000000"; + mes "^3355FF*Whiz Whiz*^000000"; + next; + mes "^3355FFThe machine made some"; + mes "violent, erratic sounds,"; + mes "and vibrated violently"; + mes "before coming to a sudden"; + mes "stop. That was the wrong"; + mes "switch. You'd better ask Dorian... ^FFFFFF ^000000"; + setquest 3106; + set diamond_edq,11; + close; + } + break; + } + } + else if (.@switch_sound == 3) { + mes "^3355FF*Bzzz Bzzz*"; + mes "*Bzzz Bzzz*"; + mes "The machine's vibrations"; + mes "are a bit more stable now."; + mes "Which switch will you try?^000000"; + next; + switch(select("Red Switch:Blue Switch:Yellow Switch:Green Switch")) { + default: + mes "^3355FF*Whiz Whiz*^000000"; + mes "^3355FF*Whiz Whiz*^000000"; + next; + mes "^3355FFThe machine made some"; + mes "violent, erratic sounds,"; + mes "and vibrated violently"; + mes "before coming to a sudden"; + mes "stop. That was the wrong"; + mes "switch. You'd better ask Dorian... ^FFFFFF ^000000"; + setquest 3106; + set diamond_edq,11; + close; + case 3: + if (.@yellow >= 0) { + mes "^3355FF*Bzzzz Bzzzz*^000000"; + mes "^3355FF*Clang...!*^000000"; + next; + mes "^3355FFThe machine's"; + mes "vibrations have"; + mes "grown stronger."; + mes "It looks like you"; + mes "chose the right switch.^000000"; + next; + set .@yellow,.@yellow+1; + } + else { + mes "^3355FF*Whiz Whiz*^000000"; + mes "^3355FF*Whiz Whiz*^000000"; + next; + mes "^3355FFThe machine made some"; + mes "violent, erratic sounds,"; + mes "and vibrated violently"; + mes "before coming to a sudden"; + mes "stop. That was the wrong"; + mes "switch. You'd better ask Dorian... ^FFFFFF ^000000"; + setquest 3106; + set diamond_edq,11; + close; + } + break; + } + } + else if (.@switch_sound == 4) { + next; + mes "^3355FF*Pzzzz Pzzz*"; + mes "*Pzzzz Pzzz*"; + mes "The machine is vibrating"; + mes "fairly strongly now. Which"; + mes "switch will you try?^000000"; + next; + switch(select("Red Switch:Blue Switch:Yellow Switch:Green Switch")) { + default: + mes "^3355FF*Whiz Whiz*^000000"; + mes "^3355FF*Whiz Whiz*^000000"; + next; + mes "^3355FFThe machine made some"; + mes "violent, erratic sounds,"; + mes "and vibrated violently"; + mes "before coming to a sudden"; + mes "stop. That was the wrong"; + mes "switch. You'd better ask Dorian... ^FFFFFF ^000000"; + setquest 3106; + set diamond_edq,11; + close; + case 4: + if (.@green >= 0) { + mes "^3355FFPzzzzz Pzzzz*^000000"; + mes "^3355FF*Clang...!*^000000"; + next; + mes "^3355FFThe machine's"; + mes "vibrations have"; + mes "grown stronger."; + mes "It looks like you"; + mes "chose the right switch.^000000"; + next; + set .@green,.@green+1; + } + else { + mes "^3355FF*Whiz Whiz*^000000"; + mes "^3355FF*Whiz Whiz*^000000"; + next; + mes "^3355FFThe machine made some"; + mes "violent, erratic sounds,"; + mes "and vibrated violently"; + mes "before coming to a sudden"; + mes "stop. That was the wrong"; + mes "switch. You'd better ask Dorian... ^FFFFFF ^000000"; + setquest 3106; + set diamond_edq,11; + close; + } + break; + } + } + } + } + } + } + if (diamond_edq == 12) { + mes "[Dorian]"; + mes "It sounds like you're"; + mes "done fixing my Mystic"; + mes "Dryer de Elegance."; + mes "Why don't you come"; + mes "back so I can explain"; + mes "how you can use it?"; + close; + } + if ((diamond_edq == 13) && (countitem(7722) < 1)) { + mes "^3355FFYou lift the main"; + mes "operational switch,"; + mes "turning on a light and"; + mes "opening a convenient"; + mes "slot. You insert the"; + mes "wet bond of debt.^000000"; + next; + mes "^3355FFThe engine's pistons"; + mes "and cylinders churn"; + mes "with a lively din, and"; + mes "when the heater stops,"; + mes "the slot reopens.^000000"; + next; + mes "[" + strcharinfo(0) + "]"; + mes "So this is the original"; + mes "bond of debt that Muff"; + mes "lost? It looks... Perfect!"; + changequest 3108,3109; + getitem 7722,1; //Debt_Note + close; + } + else if ((diamond_edq == 13) && (countitem(7722) > 0)) { + mes "You already used this"; + mes "machine to restore the"; + mes "bond of debt. There's no"; + mes "need to mess around"; + mes "with it any longer."; + close; + } + mes "[Dorian]"; + mes "Who are you?"; + mes "Don't you dare lay"; + mes "a hand on my precious"; + mes "masterpiece inventions! "; + close; +}
\ No newline at end of file diff --git a/npc/pre-re/quests/skills/swordman_skills.txt b/npc/pre-re/quests/skills/swordman_skills.txt new file mode 100644 index 000000000..7a4aa2ff3 --- /dev/null +++ b/npc/pre-re/quests/skills/swordman_skills.txt @@ -0,0 +1,148 @@ +//===== Hercules Script ======================================= +//= Swordsman Skills Quests +//===== By: ================================================== +//= kobra_k88 +//===== Current Version: ===================================== +//= 1.0 +//===== Compatible With: ===================================== +//= Hercules GIT +//===== Description: ========================================= +//= Quests for skills: Fatal Blow, Mobile HP Recovery, +// Auto-Berserk +//===== Additional Comments: ================================= +//= 1.0 Moved from main folder. [Streusel] +//============================================================ + +izlude_in,175,130,2 script Knight De Thomas 98,4,4,{ + if ((BaseClass == Job_Swordman) && (sm_movingrecovery_x < 1)) { + mes "[De Thomas]"; + mes "Oh, no! You must have been hurt! Are you ok?"; + mes "You must have fought hard to get such serious injuries.."; + mes "Being a swordsman must come with a lot of responsibility and sacrifice."; + next; + mes "[De Thomas]"; + if (Sex == 0) { + mes "For these swordsmen and knights, there is a wonderful skill."; + } + else { + mes "For these swordswomen and knights, there is a wonderful skill young lady."; + } + mes "I present to you - HP Recovery While Moving!"; + mes "Body moving is a splendid skill"; + mes "that allows you to regain strength(HP)"; + mes "while you are moving!"; + next; + mes "[De Thomas]"; + mes "It is currently under development"; + mes "so it may not recover that much,"; + mes "but it will help a little."; + mes "What do you think? Would you like to learn this skill?"; + next; + switch (select("What a nice skill! I want to learn it!:No, thank you.")) { + case 1: + mes "[De Thomas]"; + mes "Very well. I will tell you what you need to learn this skill."; + mes "First, your job level must be higher than ^00880035^000000."; + mes "You will also need ^008800200 empty bottles^000000."; + mes "Why? Because it is proof that you fought fiercely to have used that many potions."; + next; + mes "[De Thomas]"; + mes "Also, the armor you used in battle."; + mes "This is also proof of an experienced fighter."; + mes "For the armor... your armor is perfect!"; + mes "Bring your armor!"; + mes "Last but not least... bring me one ^008800Moth Wing^000000."; + next; + menu "Eh? You need that, too?",-; + mes "[De Thomas]"; + mes "Not really.. I don't really NEED it."; + mes "It's just that my niece has gotten a bug hunting as a holiday task during the summer vacation."; + mes "Of course! It would be much easier for me to get it myself."; + mes "but I must work here all the time so I don't exactly have the time to go out and get it."; + next; + mes "[De Thomas]"; + mes "Don't you think it is pitiful that I have to stay in once place everyday, not being able to go outside?"; + mes "Please, find me one...*sniffsniff*"; + mes "If you don't..."; + set sm_movingrecovery_x,1; + mes "You won't get anything! Muahahaha."; + close; + case 2: + mes "[De Thomas]"; + mes "..."; + close; + } + } + else if ((BaseClass == Job_Swordman) && (sm_movingrecovery_x > 1)) { + mes "[De Thomas]"; + mes "Oh, it's you?"; + mes "Long time no see!"; + mes "You seem healthier than before."; + mes "Hahahaha!"; + mes "Take care! See you again!"; + close; + } + else if ((BaseClass == Job_Swordman) && (sm_movingrecovery_x == 1)) { + mes "[De Thomas]"; + mes "Welcome back..."; + mes "are you ready to learn Body Movin'?"; + next; + switch (select("Yes.:No, I'm not ready yet.")) { + case 1: + if ((JobLevel > 34 || (BaseJob == Job_Knight || BaseJob == Job_Crusader)) && (countitem(713) > 199) && (countitem(1058) > 0)) { + mes "[De Thomas]"; + mes "Let's see....."; + next; + mes "[De Thomas]"; + mes "Ok! I shall now teach you..."; + mes "...The Body Movin' skill!"; + next; + delitem 713,200; //Empty_Bottle + delitem 1058,1; //Wing_Of_Moth + skill "SM_MOVINGRECOVERY",1,0; + set sm_movingrecovery_x,2; + mes "[De Thomas]"; + mes "There you go!"; + mes "Try it yourself."; + mes "But don't overdo it."; + next; + mes "[De Thomas]"; + mes "Oh yeah, I won't be needing your"; + mes "armor so you can keep it."; + mes "Good luck now!"; + close; + } + else if (JobLevel < 35 && (BaseJob != Job_Knight && BaseJob != Job_Crusader)) { + mes "[De Thomas]"; + mes "Wait a second, your Job level isn't above ^00880035^000000!"; + mes "Come back when it is."; + close; + } + else if ((countitem(713) < 200) || (countitem(1058) < 1)) { + mes "[De Thomas]"; + mes "You do not have all the items I asked for."; + next; + mes "[De Thomas]"; + mes "Remember I need, ^008800200 empty bottles^000000, your armor, and a ^008800Moth Wing^000000. Come back when you have it all."; + close; + } + mes "[De Thomas]"; + mes "You do not have all the items I asked for."; + next; + mes "[De Thomas]"; + mes "Remember I need, ^008800200 empty bottles^000000, your armor, and a ^008800Moth Wing^000000. Come back when you have it all."; + close; + case 2: + mes "[De Thomas]"; + mes "Is that so?"; + mes "Then come when you are prepared."; + close; + } + } + mes "[De Thomas]"; + mes "My name is De Thomas Carlos."; + mes "Knight of Prontera's 3rd Calvary."; + mes "I have a certain duty these days."; + mes "Ehem! Need I say more."; + close; +}
\ No newline at end of file |