summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLupus <Lupus@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-08-24 04:47:51 +0000
committerLupus <Lupus@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-08-24 04:47:51 +0000
commitd93424ae021d462ece509b892d0e2a46701fbb18 (patch)
treebe9455fa6f2e6a7ed1b8032175d183302427dc5e
parent8c752b6915b68304e484439e5048e4e65c1ec2fe (diff)
downloadhercules-d93424ae021d462ece509b892d0e2a46701fbb18.tar.gz
hercules-d93424ae021d462ece509b892d0e2a46701fbb18.tar.bz2
hercules-d93424ae021d462ece509b892d0e2a46701fbb18.tar.xz
hercules-d93424ae021d462ece509b892d0e2a46701fbb18.zip
move Bio ethic to skill quests, fixed bio ethic (let Baby alc+creators learn the skill, too). updated lighthalzen added mapflags. fixed treasure spawn formula
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8463 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r--conf-tmpl/mapflag/noexp.txt11
-rw-r--r--conf-tmpl/mapflag/noloot.txt13
-rw-r--r--npc/Changelog.txt8
-rw-r--r--npc/guild/gldfunc_treasure.txt49
-rw-r--r--npc/quests/quests_lighthalzen.txt382
-rw-r--r--npc/quests/skills/alchemist_skills.txt382
6 files changed, 418 insertions, 427 deletions
diff --git a/conf-tmpl/mapflag/noexp.txt b/conf-tmpl/mapflag/noexp.txt
index 8fc01998f..daa001ac6 100644
--- a/conf-tmpl/mapflag/noexp.txt
+++ b/conf-tmpl/mapflag/noexp.txt
@@ -2,12 +2,8 @@
//= Map flags that disable gaining EXP
//===== By: ==================================================
//= eAthena Dev Team
-//= 1.2 [Lupus]
-//= 1.3 [massdriller]
-//= 1.4 Lupus
-//= 1.5 Lorky
-//===== Current Version: =====================================
-// 15.06.2005 :: Lorky :: First release
+//= 1.2 [Lupus] 1.3 [massdriller] 1.4 Lupus 1.5 Lorky
+//= 1.6 Added Lighthalzen (due to quests) [Lupus]
//============================================================
// Location for Job's Quests
@@ -25,3 +21,6 @@ job_sage.gat mapflag noexp
job_soul.gat mapflag noexp
job_star.gat mapflag noexp
que_ng.gat mapflag noexp
+
+//Lighthalzen Quests
+lighthalzen.gat mapflag noexp \ No newline at end of file
diff --git a/conf-tmpl/mapflag/noloot.txt b/conf-tmpl/mapflag/noloot.txt
index f2ac2392b..68cad6e81 100644
--- a/conf-tmpl/mapflag/noloot.txt
+++ b/conf-tmpl/mapflag/noloot.txt
@@ -2,12 +2,8 @@
//= Map flags that disable drop of loot
//===== By: ==================================================
//= eAthena Dev Team
-//= 1.2 [Lupus]
-//= 1.3 [massdriller]
-//= 1.4 Lupus
-//= 1.5 Lorky
-//===== Current Version: =====================================
-// 15.06.2005 :: Lorky :: First release
+//= 1.2 [Lupus] 1.3 [massdriller] 1.4 Lupus 1.5 Lorky
+//= 1.6 Added Lighthalzen (due to quests) [Lupus]
//============================================================
// Location for Job's Quests
@@ -26,4 +22,7 @@ job_star.gat mapflag noloot
que_ng.gat mapflag noloot
//Thievs have to gather some mushrooms. So they need loot
-//job_thief1.gat mapflag noloot \ No newline at end of file
+//job_thief1.gat mapflag noloot
+
+//Lighthalzen Quests
+lighthalzen.gat mapflag noloot
diff --git a/npc/Changelog.txt b/npc/Changelog.txt
index 6e5364362..d7a3a3fc6 100644
--- a/npc/Changelog.txt
+++ b/npc/Changelog.txt
@@ -11,12 +11,9 @@ Mass Zero
* Redoing lots of the custom scripts.
Massdriller
* Correcting & Bugfixing scripts
- * New Novice Grounds from MRO - 65% -(Not sure it should be stopped as DracoRPG
MasterOfMuppets
* Working on The Sign Quest atm.
* Updating Items / Scripts
-Nexon
- * Adding in the new Abyss/Thanatos/Lighthalzen NPC's and optimizing them.
erKURITA
* Warps maintainment
Evera
@@ -35,6 +32,11 @@ Playtester
Date Added
======
+08/24
+ * Updated Treasure Chests Numver formula to the Aegis one: Economic/5+4 [Lupus]
+ - Updated Bio Ethics Quest to let Creators+Baby Alchemists learn the skill as well
+ - Moved it to Alchemist Skill Quests
+ - Added NO LOOT, NO EXP mapflags to Lighthalzen (Gangsters exploit fix)
08/22
* Fixed bug letting anyone get homunculus skills from Bio Ethics [Evera]
* Updated Gunslinger Quest, removed "Thin Trunk" (7186) according to RockmanEXE [Toms]
diff --git a/npc/guild/gldfunc_treasure.txt b/npc/guild/gldfunc_treasure.txt
index ab885d149..d296397ff 100644
--- a/npc/guild/gldfunc_treasure.txt
+++ b/npc/guild/gldfunc_treasure.txt
@@ -1,12 +1,11 @@
//===== eAthena Script =======================================
//= War of Emperium Guild Treasure Room Functions
//===== By: ==================================================
-//= holyAngelX (1.0)
-//= 1.1 by Akaru and ho|yAnge|X
+//= holyAngelX (1.0) Akaru and ho|yAnge|X (1.1)
//===== Current Version: =====================================
-//= 1.4
+//= 1.6
//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
+//= eAthena 1+; RO Episode 4+
//===== Description: =========================================
//= F_GldTreas spawns treasure chests used by the guild master.
//= F_GldTreasSw allows the player to get out of the treasure room.
@@ -14,28 +13,29 @@
//= Break down of arguments used in the F_GldTreas:
//= arg(0): name of guild castle
//= arg(1): name of script that called the function
-//= arg(2): $variable for number of boxes to spawn for specific castle
-//= arg(2): $variable to be used as a counter
-//= arg(4): $variable for box/monster id number.
+//= arg(2): not used
+//= arg(3): not used
+//= arg(4): not used
//= arg(5): box/monster id#
//= arg(6): x1 coordinate for areamonster call
//= arg(7): y1 coordinate for areamonster call
//= arg(8): x2 coordinate for areamonster call
//= arg(9): y1 coordinate for areamonster call
-//= arg(10):
+//=
//= Break down of arguments used in the F_GldTreasSw:
//= arg(0): name of guild castle.
//= arg(1): x1 coordinate for warp back to guild castle
//= arg(2): y1 coordinate for warp back to guild castle
//===== Additional Comments: =================================
-//= v1.2 Treasure room Spawn, and Treasure room Switch scripts now use these functions.[kobra_k88]
-//= v1.2a Function now returns to script that called it. Removed TreasureSpawn2.
+//= 1.2 Treasure room Spawn, and Treasure room Switch scripts now use these functions.[kobra_k88]
+//= 1.2a Function now returns to script that called it. Removed TreasureSpawn2.
//= Changed back to using specific global variables for number of boxes and the box id. [kobra_k88]
-//= v1.2b Added a check to allow un broken treasure chests to respawn after map server restart.[kobra_k88]
+//= 1.2b Added a check to allow un broken treasure chests to respawn after map server restart.[kobra_k88]
//= 1.3 Fixed treasure boxes spawn. (Unrolled one loop a bit) [Lupus]
//= 1.4 New number of Treasure Boxes per castle: 25 at 100 Economic pts [Lupus]
-//= So you get your first chest only when your Economic Pts >= 4
+//= So you get your first chest only when your Economic Pts >= 4
//= 1.5 Fixed treasure number 'round exploit' [Lupus]
+//= 1.6 to Aegis X.2 formula 4..24 Treasure Chests [Lupus]
//============================================================
@@ -45,23 +45,16 @@
function script F_GldTreas {
if(getarg(10) == 1) goto L_SPAWN;
- SetCastleData getarg(0)+".gat",4,0;
- SetCastleData getarg(0)+".gat",5,0;
- KillMonster getarg(0)+".gat","Treasure_"+getarg(1)+"::OnDied";
- if (GetCastleData(getarg(0)+".gat",2) > 100) return;
- if (GetCastleData(getarg(0)+".gat",1) == 0) return;
-//[New] correct formula for 25 boxes at 100 pts:
- set getarg(2),GetCastleData(getarg(0)+".gat",2)>>2;
- if (getarg(2) <= 0) return;
- set getarg(3), getarg(2); //sets the counter variable = to the box number amount
-
+ setcastledata getarg(0)+".gat",4,0;
+ setcastledata getarg(0)+".gat",5,0;
+ killmonster getarg(0)+".gat","Treasure_"+getarg(1)+"::OnDied";
+ if(GetCastleData(getarg(0)+".gat",2) > 100 || GetCastleData(getarg(0)+".gat",1) == 0) return;
+ //sets the counter variable = to the box number amount
+ set $@n,GetCastleData(getarg(0)+".gat",2)/5+4;
L_SPAWN:
- set getarg(4), getarg(5); //sets the box id variable = to the box id
- set $@temp, rand(4);
- if ($@temp > 2) set getarg(4), getarg(4) + 1;
- areamonster getarg(0)+".gat",getarg(6),getarg(7),getarg(8),getarg(9),"Treasure Chest",getarg(4),1,"Treasure_"+getarg(1)+"::OnDied";
- set getarg(3), getarg(3) - 1;
- if(getarg(3) > 0) goto L_SPAWN;
+ areamonster getarg(0)+".gat",getarg(6),getarg(7),getarg(8),getarg(9),"Treasure Chest",getarg(5)+($@n & 1),1,"Treasure_"+getarg(1)+"::OnDied";
+ set $@n, $@n - 1;
+ if($@n > 0) goto L_SPAWN;
return;
}
diff --git a/npc/quests/quests_lighthalzen.txt b/npc/quests/quests_lighthalzen.txt
index 28909d5c5..dad4e19da 100644
--- a/npc/quests/quests_lighthalzen.txt
+++ b/npc/quests/quests_lighthalzen.txt
@@ -2,9 +2,9 @@
//= Quest NPCs located in Lighthalzen
//===== By: ==================================================
//= Persian, Vicious_Pucca, Completed by aoa00
-//= Evera, MasterOfMupppets
+//= Evera, MasterOfMupppets, Lupus
//===== Current Version: =====================================
-//= 2.6
+//= 2.6a
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
@@ -17,8 +17,7 @@
//= Things to add: Look at the thread "Lighthalzen Guard" in SVN script
//= 0.3 Initial Release
//= 0.5 Added mobsters spawn and Einbroch pollution. Alert lasts either 10 minutes or all mob killed.
-//= 0.6 small bug fixes
-//= 0.9 fix small bug. Added Bio-lab entrance Quest. Added Getting security-card Quest.
+//= 0.6-0.9 fix small bug. Added Bio-lab entrance Quest. Added Getting security-card Quest.
//= 1.0 Patched "mobsters spawn & Alert" like Real-RO.
//= 1.0a fixed rand(1,10) + comparision. There just can't be 'X < 1' [Lupus]
//= 1.1 Changed the mobster spawn to g_mobster to prevent exploits [MasterOfMuppets]
@@ -27,15 +26,13 @@
//= 1.2a Moved Biolab entrance to lhz_dun warps. [Vicious]
//= 1.3 Fixed password bug, fixed endless item exploit, some typos [Lupus]
//= 1.4 Fixed password abuse. When people don't read the password under the picture
-//= and enter Zero shit 8) (TODO: I saw some "Sticks" abuses, too.. where you couls skip
-//= a part of quest...)
+//= and enter Zero shit 8) (TODO: I saw some "Sticks" abuses, too.. where you could skip a part of quest...)
//= 1.5 Fixed Mobster's OnDead event(it has to start with "On"!) [Playtester]
//= 1.5a Fixed "free stick" bug, thx 2 Neouni [Lupus]
//= 1.6 Added Gywall's Pickpocket Quest
//= 1.7 Implemented the Friendship quest [MasterOfMuppets]
//= 1.8 Changed the name of the mobsters to Gangster, as it should be. [MasterOfMuppets]
-//= 1.9 Added extra input check on Biolab so that the first letter of the word could be
-//= capitalized or undercase. [Evera]
+//= 1.9 Added extra input check on Biolab so that the first letter of the word could be capitalized or undercase. [Evera]
//= 2.0 Removed Duplicates [Silent]
//= 2.1 Added first part of Bio Ethics Quest [Evera]
//= 2.2 Added bit to say Bio Ethics is unfinished, and if a player attempts, it warps them
@@ -46,10 +43,7 @@
//= test tube in bio labs quest. [Evera]
//= 2.5 Fixed Kellasus giving you extra skills in Bio Ethics quest [Evera]
//= 2.6 Fixed exploit letting any class get homunculus from Bio Ethics Quest [Evera]
-//============================================================
-//= aoa's comment
-//= In future, Need for new monsters. No-Drop, No-Exp, Weak "Mobster","VENOMOUS","NOXIOUS"
-//= In future, Teleport skill is impossible in Lighthalzen.
+//= 2.6a Moved Bio Ethics Quest to Alchemist SKILL QUESTS [Lupus]
//============================================================
lighthalzen.gat,1,1,7 script sneakAddSuber -1,{
@@ -2628,368 +2622,4 @@ yuno_in04.gat,171,117,1 script List of Books 111,{
mes "a romance novel section?";
close;
-}
-
-
-//==============================================================
-// Bio Ethics Quest
-//==============================================================
-//=====================Requires Bug Testing=====================
-lhz_in01.gat,46,125,6 script Rekenber Guard 867,{
- mes "[Rekenber Guard]";
- if(getequipid(9) == 2243){
- mes "......................";
- next;
- switch(select("Nice day, huh?","Cancel")){
- case 1:
- mes "[Rekenber Guard]";
- mes "...";
- close2;
- warp "lhz_in01.gat",282,172;
- end;
- break;
- case 2:
- close;
- break;
- }
- }
- else{
- mes "...";
- close;
- }
-}
-lhz_in01.gat,282,172,0 script BioEthTrg1::BETrg1 -1,1,1{
- OnTouch:
- mes "[Researcher]";
- mes "This is a restricted";
- mes "area. Please leave";
- mes "immediately.";
- close2;
- warp "lhz_in01.gat",199,131;
- end;
-}
-
-lhz_in01.gat,285,169,7 script Researcher 865,{
-//Unknown Text
-end;
-}
-lhz_in01.gat,199,137,8 script Scientist 865,{
- mes "[Scientist]";
- mes "Whoa whoa~!";
- mes "Please! Don't";
- mes "touch anything!";
- mes "I'm dealing with highly";
- mes "volatile chemicals here!";
- close;
-}
-lhz_in01.gat,204,138,6 script Keshibien 750,{
- if(bioeth >= 2){
- //Unofficial text
- mes "[Keshibien]";
- mes "Hello there~";
- mes "Are you looking for";
- mes "more information about";
- mes "homunculus?";
- next;
- mes "[Keshibien]";
- mes "I shouldn't say";
- mes "anything, but look";
- mes "for someone named";
- mes "Bringel in Lighthalzen.";
- if(bioeth == 2) set bioeth,3;
- close;
- //Unofficial text end
- }
- mes "[Keshibien]";
- mes "Hello there~";
- mes "You must be from";
- mes "Rune-Midgarts, right?";
- mes "It's nice to meet you.";
- next;
- mes "[Keshibien]";
- mes "I hear that the";
- mes "Alchemists from";
- mes "over there are pretty";
- mes "skilled. I wonder if I'll";
- mes "ever get the change to";
- mes "collaborate with any of them...";
- close;
-}
-lhz_in01.gat,203,123,8 script Scientist 750,{
- mes "[Scientist]";
- mes "Alright. Pull one test";
- mes "tube out of the machine,";
- mes "replace the other test";
- mes "tube over here and then";
- mes "clean the first test tube?";
- next;
- mes "[Scientist]";
- mes "Or do I clean the test tube,";
- mes "put it into the machine and";
- mes "then replace the other one?";
- mes "I'm so confused with this";
- mes "procedure! If only I didn't";
- mes "lose the instructions...";
- close;
-}
-lhz_in01.gat,221,131,3 script Scientist 865,{
- mes "[Scientist]";
- mes "It takes so long for";
- mes "this device to process";
- mes "all the data and give me";
- mes "the results. Still, the wait";
- mes "heightens my anticipation...";
- close;
-}
-lhz_in01.gat,218,141,0 script Alchemist 98,{
- mes "[Alchemist]";
- mes "Out of all humans,";
- mes "I believe Kellasus is";
- mes "the one who has come";
- mes "closest to discovering";
- mes "the secrets of life. He";
- mes "never fails to amaze me...";
- next;
- mes "[Alchemist]";
- mes "I'm also impressed by the";
- mes "fact that he doesn't let his";
- mes "work keep him from being the";
- mes "best father and husband that";
- mes "he can for his family. He's";
- mes "an example for all of us.";
- next;
- mes "[Alchemist]";
- mes "Kellasus really is";
- mes "an amazing person.";
- mes "There isn't one Alchemist";
- mes "that I know who doesn't look";
- mes "up to him in the realms of";
- mes "both science and personal life.";
- close;
-}
-lhz_in01.gat,224,140,8 script Kellasus 57,{
- if(MISC_QUEST&64){
- mes "[Kellasus]";
- mes "I already taught you";
- mes "skills of the homunculus...";
- if (getskilllv(238) == 0 && class == 18) skill 238,1,0;
- close;
- }
- switch(bioeth){
- default:
- break;
- case 4:
- mes "[Kellasus]";
- mes "...You're really hard to handle.";
- mes "I don't think I should";
- mes "teach you biotechnology.";
- mes "Besides that, you know";
- mes "nothing about homunculus!";
- next;
- menu "I've learned that",-;
- mes "[Kellasus]";
- mes "Oh really?";
- mes "I will have to test you";
- mes "on your knowledge of";
- mes "homunculus then.";
- next;
- mes "[Kellasus]";
- mes "First question.";
- mes "What is the skill that lets the";
- mes "homunculus stay in peace?";
- input @kelques$;
- next;
- mes "[Kellasus]";
- if(@kelques$ != "Rest"){
- mes "Hmpf. I knew you had";
- mes "no knowledge on";
- mes "homunculus.";
- close;
- }
- mes "That's right. Second question.";
- mes "What is the item";
- mes "that is required to";
- mes "summon or create";
- mes "a homunculus?";
- input @kelques$;
- next;
- mes "[Kellasus]";
- if(@kelques$ != "Germination Breed"){
- mes "Hmpf. I knew you had";
- mes "no knowledge on";
- mes "homunculus.";
- close;
- }
- mes "Correct. But this is not the end yet.";
- mes "What is the name";
- mes "of a skill";
- mes "that could let you";
- mes "revive a homunculus?";
- input @kelques$;
- next;
- mes "[Kellasus]";
- if(@kelques$ != "Resurrect Homunculus"){
- mes "Hmpf. I knew you had";
- mes "no knowledge on";
- mes "homunculus.";
- close;
- }
- mes "After all these discussions,";
- mes "I won't teach anyone";
- mes "the skills of homunculus.";
- mes "The decision is final";
- mes "and that's it!";
- set bioeth,5;
- close;
- break;
- case 5:
- mes "[Kellasus]";
- mes "After all these discussions,";
- mes "I won't teach anyone";
- mes "the skills of homunculus.";
- mes "The decision is final";
- mes "and that's it!";
- close;
- break;
- case 6:
- //Unofficial text and story -.-;
- mes "[Kellasus]";
- mes "Oh it's you again? You're really determined.";
- mes "Well most of the Alchemist";
- mes "are people who never";
- mes "let go of their dreams";
- next;
- menu "Let's talk about others",-;
- mes "[Kellasus]";
- mes "You've spoke to my son?";
- mes "What did he say?";
- next;
- mes "[Kellasus]";
- mes "...";
- next;
- mes "[Kellasus]";
- mes "I guess I could teach you a few skills..";
- //Gives player bio ethics and sets bitshift for quest finished
- if(class == 18) skill 238,1,0;
- set MISC_QUEST,MISC_QUEST|64;
- set bioeth,0;
- close;
- }
- switch(@keltalk){
- default:
- mes "[Kellasus]";
- mes "Hmm. Who decides what";
- mes "is right and wrong? What is";
- mes "meant to be known and what";
- mes "secrets were never intended";
- mes "for mankind to understand?";
- if(class == 18) set @keltalk,1;
- close;
- break;
- case 1:
- //No official text to put here, so I just repeated first text
- mes "[Kellasus]";
- mes "Hmm. Who decides what";
- mes "is right and wrong? What is";
- mes "meant to be known and what";
- mes "secrets were never intended";
- mes "for mankind to understand?";
- set @keltalk,2;
- close;
- break;
- case 2:
- mes "[Kellasus]";
- mes "Haven't I told you not to come back again?";
- mes "Please leave now!";
- mes "No matter what you do.";
- mes "I won't teach you anything about homunculus";
- set @keltalk,3;
- set bioeth,1;
- close;
- break;
- case 3:
- mes "[Kellasus]";
- mes "Haven't I told you not to come back again?";
- mes "Please leave now!";
- mes "No matter what you do.";
- mes "I won't teach you anything about homunculus";
- close;
- break;
- }
-}
-lhz_in01.gat,217,121,6 script Repairman 851,{
- mes "[Repairman]";
- mes "No wonder these things";
- mes "break all the time! These";
- mes "machines have been totally";
- mes "abused! Ugh, there's no";
- mes "appreciation for all of this";
- mes "convenient technology...";
- next;
- mes "[Repairman]";
- mes "Yeah, all of this lab";
- mes "equipment is really sensitive,";
- mes "not to mention expensive. If";
- mes "you ever handle this stuff, you";
- mes "need to be extra cautious.";
- close;
-}
-lhz_in01.gat,225,122,4 script Skrajiad 754,{
- mes "[Skrajiad]";
- mes "Alchemy is wondrous...";
- mes "It incorporates every";
- mes "science and many other";
- mes "fields of knowledge that";
- mes "it's not enough to be jack";
- mes "of all trades... No...";
- next;
- mes "[Skrajiad]";
- mes "In a sense, you must";
- mes "be a master of all trades";
- mes "to be proficient in Alchemy";
- mes "But it's incredibly rewarding to";
- mes "those of us who never stop askins";
- mes "how and why our world works.";
- if(bioeth == 1) set bioeth,2;
- close;
-}
-lhz_in02.gat,269,273,4 script Bringel 709,{
-//Unofficial Text
- if(bioeth > 3 || MISC_QUEST&64){
- if(getskilllv(247) == 0 && class == 18) skill 247,1,0;
- }
- if(bioeth == 3){
- mes "[Bringel]";
- mes "I see you're here to";
- mes "learn about homunculus...";
- mes "I will teach you a";
- mes "valuable skill to use.";
- //Learn res homun
- if(class == 18) skill 247,1,0;
- set bioeth,4;
- close;
- }
- mes "[Bringel]";
- mes "Isn't this hotel great?";
- mes "I can relax on the couch";
- mes "And not care about what I";
- mes "did in the past...";
- close;
-}
-lhz_in03.gat,106,34,4 script Golin 706,{
-//Unofficial text
- if(bioeth == 5){
- mes "[Golin]";
- mes "Did you see my";
- mes "daddy at the lab?";
- mes "Tell him I said hi!";
- set bioeth,6;
- close;
- }
- mes "[Golin]";
- mes "Where's daddy?";
- mes "I really want";
- mes "daddy to come back";
- mes "from the lab.";
- close;
} \ No newline at end of file
diff --git a/npc/quests/skills/alchemist_skills.txt b/npc/quests/skills/alchemist_skills.txt
index a18ca4504..53589b1dd 100644
--- a/npc/quests/skills/alchemist_skills.txt
+++ b/npc/quests/skills/alchemist_skills.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= Lupus, Reddozen
//===== Current Version: =====================================
-//= 1.3a
+//= 1.4
//===== Compatible With: =====================================
//= eAthena Revision 3800+
//===== Description: =========================================
@@ -18,6 +18,8 @@
//= 1.3 Fixed bugs and minor typos. Optimized [Lupus]
//= 1.3a fixed an item ID typo, thx 2Spiritual Kid
//= 1.3b Splitted into different files [DracoRPG]
+//= 1.4 Added Creators + Baby Alchemists can pass Bio Ethics
+//= Quest too [Lupus]
//============================================================
@@ -26,18 +28,18 @@
//============================================================
yuno_in04.gat,33,108,5 script Pislik 750,{
mes "[Pislik]";
- if(BaseJob!=Job_Alchem) goto L_noalche;
+ if(BaseJob != Job_Alchem) goto L_noalche;
if(countitem(7434)) goto L_alreadyhave;//Items: Elemental_Potion_Creation_Guide,
if(JobLevel<40) goto L_nojob;
mes "I'll teach you all I know, but";
mes "you have to bring me some things";
mes "first.";
- mes "5 Yellow Gemstones";
- mes "4 Empty Potion Bottles";
- mes "10 Hearts of Mermaid";
- mes "10 Moth Dust";
- mes "20 Maneater Blossoms";
+ mes "5 Yellow Gemstones,";
+ mes "4 Empty Potion Bottles,";
+ mes "10 Hearts of Mermaid,";
+ mes "10 Moth Dust,";
+ mes "20 Maneater Blossoms and";
mes "1 Geek Glasses";
next;
@@ -82,3 +84,369 @@ L_nojob:
mes "more about being an Alchemist.";
close;
}
+
+//============================================================
+// ALCHEMIST - Bio Ethics Quest (Homunculi Skill Branch)
+//============================================================
+
+//=====================Requires Bug Testing=====================
+lhz_in01.gat,46,125,6 script Rekenber Guard 867,{
+ mes "[Rekenber Guard]";
+ if(getequipid(9) == 2243){
+ mes "......................";
+ next;
+ switch(select("Nice day, huh?","Cancel")){
+ case 1:
+ mes "[Rekenber Guard]";
+ mes "...";
+ close2;
+ warp "lhz_in01.gat",282,172;
+ end;
+ break;
+ case 2:
+ close;
+ break;
+ }
+ }
+ else{
+ mes "...";
+ close;
+ }
+}
+lhz_in01.gat,282,172,0 script BioEthTrg1::BETrg1 -1,1,1{
+ OnTouch:
+ mes "[Researcher]";
+ mes "This is a restricted";
+ mes "area. Please leave";
+ mes "immediately.";
+ close2;
+ warp "lhz_in01.gat",199,131;
+ end;
+}
+
+lhz_in01.gat,285,169,7 script Researcher 865,{
+//Unknown Text
+ mes "[Researcher]";
+ mes "Hmm... I wonder...";
+ close;
+}
+lhz_in01.gat,199,137,8 script Scientist 865,{
+ mes "[Scientist]";
+ mes "Whoa whoa~!";
+ mes "Please! Don't";
+ mes "touch anything!";
+ mes "I'm dealing with highly";
+ mes "volatile chemicals here!";
+ close;
+}
+lhz_in01.gat,204,138,6 script Keshibien 750,{
+ if(bioeth >= 2){
+ //Unofficial text
+ mes "[Keshibien]";
+ mes "Hello there~";
+ mes "Are you looking for";
+ mes "more information about";
+ mes "homunculus?";
+ next;
+ mes "[Keshibien]";
+ mes "I shouldn't say";
+ mes "anything, but look";
+ mes "for someone named";
+ mes "Bringel in Lighthalzen.";
+ if(bioeth == 2) set bioeth,3;
+ close;
+ //Unofficial text end
+ }
+ mes "[Keshibien]";
+ mes "Hello there~";
+ mes "You must be from";
+ mes "Rune-Midgarts, right?";
+ mes "It's nice to meet you.";
+ next;
+ mes "[Keshibien]";
+ mes "I hear that the";
+ mes "Alchemists from";
+ mes "over there are pretty";
+ mes "skilled. I wonder if I'll";
+ mes "ever get the change to";
+ mes "collaborate with any of them...";
+ close;
+}
+lhz_in01.gat,203,123,8 script Scientist 750,{
+ mes "[Scientist]";
+ mes "Alright. Pull one test";
+ mes "tube out of the machine,";
+ mes "replace the other test";
+ mes "tube over here and then";
+ mes "clean the first test tube?";
+ next;
+ mes "[Scientist]";
+ mes "Or do I clean the test tube,";
+ mes "put it into the machine and";
+ mes "then replace the other one?";
+ mes "I'm so confused with this";
+ mes "procedure! If only I didn't";
+ mes "lose the instructions...";
+ close;
+}
+lhz_in01.gat,221,131,3 script Scientist 865,{
+ mes "[Scientist]";
+ mes "It takes so long for";
+ mes "this device to process";
+ mes "all the data and give me";
+ mes "the results. Still, the wait";
+ mes "heightens my anticipation...";
+ close;
+}
+lhz_in01.gat,218,141,0 script Alchemist 98,{
+ mes "[Alchemist]";
+ mes "Out of all humans,";
+ mes "I believe Kellasus is";
+ mes "the one who has come";
+ mes "closest to discovering";
+ mes "the secrets of life. He";
+ mes "never fails to amaze me...";
+ next;
+ mes "[Alchemist]";
+ mes "I'm also impressed by the";
+ mes "fact that he doesn't let his";
+ mes "work keep him from being the";
+ mes "best father and husband that";
+ mes "he can for his family. He's";
+ mes "an example for all of us.";
+ next;
+ mes "[Alchemist]";
+ mes "Kellasus really is";
+ mes "an amazing person.";
+ mes "There isn't one Alchemist";
+ mes "that I know who doesn't look";
+ mes "up to him in the realms of";
+ mes "both science and personal life.";
+ close;
+}
+lhz_in01.gat,224,140,8 script Kellasus 57,{
+ if(MISC_QUEST&64){
+ mes "[Kellasus]";
+ mes "I already taught you";
+ mes "skills of the homunculus...";
+ if(getskilllv(238) == 0 && BaseJob == Job_Alchem) skill 238,1,0;
+ close;
+ }
+ switch(bioeth){
+ case 4:
+ mes "[Kellasus]";
+ mes "...You're really hard to handle.";
+ mes "I don't think I should";
+ mes "teach you biotechnology.";
+ mes "Besides that, you know";
+ mes "nothing about homunculus!";
+ next;
+ menu "I've learned that",-;
+ mes "[Kellasus]";
+ mes "Oh really?";
+ mes "I will have to test you";
+ mes "on your knowledge of";
+ mes "homunculus then.";
+ next;
+ mes "[Kellasus]";
+ mes "First question.";
+ mes "What is the skill that lets the";
+ mes "homunculus stay in peace?";
+ input @kelques$;
+ next;
+ mes "[Kellasus]";
+ if(@kelques$ != "Rest"){
+ mes "Hmpf. I knew you had";
+ mes "no knowledge on";
+ mes "homunculus.";
+ close;
+ }
+ mes "That's right. Second question.";
+ mes "What is the item";
+ mes "that is required to";
+ mes "summon or create";
+ mes "a homunculus?";
+ input @kelques$;
+ next;
+ mes "[Kellasus]";
+ if(@kelques$ != "Germination Breed"){
+ mes "Hmpf. I knew you had";
+ mes "no knowledge on";
+ mes "homunculus.";
+ close;
+ }
+ mes "Correct. But this is not the end yet.";
+ mes "What is the name";
+ mes "of a skill";
+ mes "that could let you";
+ mes "revive a homunculus?";
+ input @kelques$;
+ next;
+ mes "[Kellasus]";
+ if(@kelques$ != "Resurrect Homunculus"){
+ mes "Hmpf. I knew you had";
+ mes "no knowledge on";
+ mes "homunculus.";
+ close;
+ }
+ mes "After all these discussions,";
+ mes "I won't teach anyone";
+ mes "the skills of homunculus.";
+ mes "The decision is final";
+ mes "and that's it!";
+ set bioeth,5;
+ close;
+ break;
+ case 5:
+ mes "[Kellasus]";
+ mes "After all these discussions,";
+ mes "I won't teach anyone";
+ mes "the skills of homunculus.";
+ mes "The decision is final";
+ mes "and that's it!";
+ close;
+ break;
+ case 6:
+ //Unofficial text and story -.-;
+ mes "[Kellasus]";
+ mes "Oh it's you again? You're really determined.";
+ mes "Well most of the Alchemist";
+ mes "are people who never";
+ mes "let go of their dreams";
+ next;
+ menu "Let's talk about others",-;
+ mes "[Kellasus]";
+ mes "You've spoke to my son?";
+ mes "What did he say?";
+ next;
+ mes "[Kellasus]";
+ mes "...";
+ next;
+ mes "[Kellasus]";
+ mes "I guess I could teach you a few skills..";
+ //Gives player bio ethics and sets bitshift for quest finished
+ if(BaseJob == Job_Alchem) skill 238,1,0;
+ set MISC_QUEST,MISC_QUEST|64;
+ set bioeth,0;
+ close;
+ default:
+ break;
+ }
+ switch(@keltalk){
+ case 1:
+ //No official text to put here, so I just repeated first text
+ mes "[Kellasus]";
+ mes "Hmm. Who decides what";
+ mes "is right and wrong? What is";
+ mes "meant to be known and what";
+ mes "secrets were never intended";
+ mes "for mankind to understand?";
+ set @keltalk,2;
+ close;
+ break;
+ case 2:
+ mes "[Kellasus]";
+ mes "Haven't I told you not to come back again?";
+ mes "Please leave now!";
+ mes "No matter what you do.";
+ mes "I won't teach you anything about homunculus";
+ set @keltalk,3;
+ set bioeth,1;
+ close;
+ break;
+ case 3:
+ mes "[Kellasus]";
+ mes "Haven't I told you not to come back again?";
+ mes "Please leave now!";
+ mes "No matter what you do.";
+ mes "I won't teach you anything about homunculus";
+ close;
+ break;
+ default:
+ mes "[Kellasus]";
+ mes "Hmm. Who decides what";
+ mes "is right and wrong? What is";
+ mes "meant to be known and what";
+ mes "secrets were never intended";
+ mes "for mankind to understand?";
+ if(BaseJob == Job_Alchem) set @keltalk,1;
+ close;
+ break;
+ }
+}
+lhz_in01.gat,217,121,6 script Repairman 851,{
+ mes "[Repairman]";
+ mes "No wonder these things";
+ mes "break all the time! These";
+ mes "machines have been totally";
+ mes "abused! Ugh, there's no";
+ mes "appreciation for all of this";
+ mes "convenient technology...";
+ next;
+ mes "[Repairman]";
+ mes "Yeah, all of this lab";
+ mes "equipment is really sensitive,";
+ mes "not to mention expensive. If";
+ mes "you ever handle this stuff, you";
+ mes "need to be extra cautious.";
+ close;
+}
+lhz_in01.gat,225,122,4 script Skrajiad 754,{
+ mes "[Skrajiad]";
+ mes "Alchemy is wondrous...";
+ mes "It incorporates every";
+ mes "science and many other";
+ mes "fields of knowledge that";
+ mes "it's not enough to be jack";
+ mes "of all trades... No...";
+ next;
+ mes "[Skrajiad]";
+ mes "In a sense, you must";
+ mes "be a master of all trades";
+ mes "to be proficient in Alchemy";
+ mes "But it's incredibly rewarding to";
+ mes "those of us who never stop askins";
+ mes "how and why our world works.";
+ if(bioeth == 1) set bioeth,2;
+ close;
+}
+lhz_in02.gat,269,273,4 script Bringel 709,{
+//Unofficial Text
+ if(bioeth > 3 || MISC_QUEST&64){
+ if(getskilllv(247) == 0 && BaseJob == Job_Alchem) skill 247,1,0;
+ }
+ if(bioeth == 3){
+ mes "[Bringel]";
+ mes "I see you're here to";
+ mes "learn about homunculus...";
+ mes "I will teach you a";
+ mes "valuable skill to use.";
+ //Learn res homun
+ if(BaseJob == Job_Alchem) skill 247,1,0;
+ set bioeth,4;
+ close;
+ }
+ mes "[Bringel]";
+ mes "Isn't this hotel great?";
+ mes "I can relax on the couch";
+ mes "And not care about what I";
+ mes "did in the past...";
+ close;
+}
+lhz_in03.gat,106,34,4 script Golin 706,{
+//Unofficial text
+ if(bioeth == 5){
+ mes "[Golin]";
+ mes "Did you see my";
+ mes "daddy at the lab?";
+ mes "Tell him I said hi!";
+ set bioeth,6;
+ close;
+ }
+ mes "[Golin]";
+ mes "Where's daddy?";
+ mes "I really want";
+ mes "daddy to come back";
+ mes "from the lab.";
+ close;
+} \ No newline at end of file