summaryrefslogtreecommitdiff
path: root/npc/001-1_Tulimshar
diff options
context:
space:
mode:
Diffstat (limited to 'npc/001-1_Tulimshar')
-rw-r--r--npc/001-1_Tulimshar/_import.txt22
-rw-r--r--npc/001-1_Tulimshar/_mobs.txt7
-rw-r--r--npc/001-1_Tulimshar/_warps.txt5
-rw-r--r--npc/001-1_Tulimshar/banker.txt4
-rw-r--r--npc/001-1_Tulimshar/barber.txt9
-rw-r--r--npc/001-1_Tulimshar/bard.txt10
-rw-r--r--npc/001-1_Tulimshar/bleacher.txt126
-rw-r--r--npc/001-1_Tulimshar/children.txt105
-rw-r--r--npc/001-1_Tulimshar/constable.txt7
-rw-r--r--npc/001-1_Tulimshar/elanore.txt90
-rw-r--r--npc/001-1_Tulimshar/guards.txt74
-rw-r--r--npc/001-1_Tulimshar/guide.txt162
-rw-r--r--npc/001-1_Tulimshar/man.txt22
-rw-r--r--npc/001-1_Tulimshar/merchant.txt1
-rw-r--r--npc/001-1_Tulimshar/monster_guide.txt35
-rw-r--r--npc/001-1_Tulimshar/monsters.txt26
-rw-r--r--npc/001-1_Tulimshar/rewards_master.txt87
-rw-r--r--npc/001-1_Tulimshar/rules.txt7
-rw-r--r--npc/001-1_Tulimshar/sandra.txt81
-rw-r--r--npc/001-1_Tulimshar/soul-menhir.txt6
-rw-r--r--npc/001-1_Tulimshar/vincent.txt102
-rw-r--r--npc/001-1_Tulimshar/workers.txt13
22 files changed, 1001 insertions, 0 deletions
diff --git a/npc/001-1_Tulimshar/_import.txt b/npc/001-1_Tulimshar/_import.txt
new file mode 100644
index 00000000..7c475922
--- /dev/null
+++ b/npc/001-1_Tulimshar/_import.txt
@@ -0,0 +1,22 @@
+map: 001-1.gat
+npc: npc/001-1_Tulimshar/workers.txt
+npc: npc/001-1_Tulimshar/vincent.txt
+npc: npc/001-1_Tulimshar/soul-menhir.txt
+npc: npc/001-1_Tulimshar/sandra.txt
+npc: npc/001-1_Tulimshar/rules.txt
+npc: npc/001-1_Tulimshar/rewards_master.txt
+npc: npc/001-1_Tulimshar/monsters.txt
+npc: npc/001-1_Tulimshar/monster_guide.txt
+npc: npc/001-1_Tulimshar/merchant.txt
+npc: npc/001-1_Tulimshar/man.txt
+npc: npc/001-1_Tulimshar/guide.txt
+npc: npc/001-1_Tulimshar/guards.txt
+npc: npc/001-1_Tulimshar/elanore.txt
+npc: npc/001-1_Tulimshar/constable.txt
+npc: npc/001-1_Tulimshar/children.txt
+npc: npc/001-1_Tulimshar/bleacher.txt
+npc: npc/001-1_Tulimshar/bard.txt
+npc: npc/001-1_Tulimshar/barber.txt
+npc: npc/001-1_Tulimshar/banker.txt
+npc: npc/001-1_Tulimshar/_warps.txt
+npc: npc/001-1_Tulimshar/_mobs.txt
diff --git a/npc/001-1_Tulimshar/_mobs.txt b/npc/001-1_Tulimshar/_mobs.txt
new file mode 100644
index 00000000..db1ae2e8
--- /dev/null
+++ b/npc/001-1_Tulimshar/_mobs.txt
@@ -0,0 +1,7 @@
+// 001-1 Tulimshar mobs
+
+
+
+001-1.gat,0,0,0 script Mob001-1 -1,{
+ end;
+}
diff --git a/npc/001-1_Tulimshar/_warps.txt b/npc/001-1_Tulimshar/_warps.txt
new file mode 100644
index 00000000..7e8af69d
--- /dev/null
+++ b/npc/001-1_Tulimshar/_warps.txt
@@ -0,0 +1,5 @@
+// 001-1 Tulimshar warps
+
+001-1.gat,44,88 warp ToSandstorm 3,-1,002-1.gat,58,17
+001-1.gat,32,71 warp ToInn -1,-1,001-2.gat,25,34
+001-1.gat,75,41 warp ToHouse -1,-1,001-2.gat,71,72
diff --git a/npc/001-1_Tulimshar/banker.txt b/npc/001-1_Tulimshar/banker.txt
new file mode 100644
index 00000000..9431f5cc
--- /dev/null
+++ b/npc/001-1_Tulimshar/banker.txt
@@ -0,0 +1,4 @@
+new_3-1.gat,57,52,0 script Tybalt 107,{
+ set @npcName$, "Tybalt";
+ callfunc "Banker";
+}
diff --git a/npc/001-1_Tulimshar/barber.txt b/npc/001-1_Tulimshar/barber.txt
new file mode 100644
index 00000000..bd6b148e
--- /dev/null
+++ b/npc/001-1_Tulimshar/barber.txt
@@ -0,0 +1,9 @@
+new_3-1.gat,53,38,0 script Nicolas 100,{
+ mes "[Nicolas the Barber]";
+ mes "\"Do you need a barber?\"";
+ next;
+ callfunc "Barber";
+ mes "[Nicolas the Barber]";
+ mes "\"Come again!\"";
+ close;
+}
diff --git a/npc/001-1_Tulimshar/bard.txt b/npc/001-1_Tulimshar/bard.txt
new file mode 100644
index 00000000..dcb56424
--- /dev/null
+++ b/npc/001-1_Tulimshar/bard.txt
@@ -0,0 +1,10 @@
+//
+
+new_3-1.gat,50,44,0 script Bard 152,{
+ setarray @songs$, "\"There once was a bard, who had it hard, because a man in dark green, was very mean.\"",
+ "\"At Hurnscald inn, there was a person of fairest skin, declining wedding bands from quite a many hands.\"",
+ "\"As the Sun sets down in the forest's brown, she whom the fragrance holds counts her gold.\"";
+ set @id, rand(3);
+ mes @songs$[@id];
+ close;
+}
diff --git a/npc/001-1_Tulimshar/bleacher.txt b/npc/001-1_Tulimshar/bleacher.txt
new file mode 100644
index 00000000..6a15e273
--- /dev/null
+++ b/npc/001-1_Tulimshar/bleacher.txt
@@ -0,0 +1,126 @@
+//
+
+new_3-1.gat,27,53,0 script Candide 156,{
+ mes "[Candide]";
+ mes "\"I've figured out how that volcanic ash bleaches cloth.";
+ mes "I could do it for you, but I'll need three piles of ash and 5,000 GP for supplies per item.\"";
+ next;
+
+ if (countitem(701) < 3) goto L_no_ash;
+
+ if (zeny < 5000) goto L_no_money;
+
+ menu "I'd like to bleach something", -,
+ "No thanks", L_close;
+
+L_bleach_menu:
+ mes "[Candide]";
+ mes "\"What would you like to bleach?\"";
+ next;
+
+ menu "Cotton shirt", L_cottonshirt,
+ "V-Neck sweater", L_vneck,
+ "Turtleneck sweater", L_tneck,
+ "Cotton shorts", L_shorts,
+ "Cotton skirt", L_skirt,
+ "Tank top ", L_tanktop,
+ "Short tank top", L_tanktop_short,
+ "Silk robe", L_robe,
+ "Nevermind", -;
+ goto L_close;
+
+L_cottonshirt: set @normal, 1202;
+ set @dyeBase, 2050;
+ goto L_choose_color;
+
+L_vneck: set @normal, 624;
+ set @dyeBase, 2060;
+ goto L_choose_color;
+
+L_tneck: set @normal, 564;
+ set @dyeBase, 2070;
+ goto L_choose_color;
+
+L_shorts: set @normal, 586;
+ set @dyeBase, 2110;
+ goto L_choose_color;
+
+L_skirt: set @normal, 632;
+ set @dyeBase, 2100;
+ goto L_choose_color;
+
+L_tanktop: set @normal, 688;
+ set @dyeBase, 2090;
+ goto L_choose_color;
+
+L_tanktop_short: set @normal, 689;
+ set @dyeBase, 2120;
+ goto L_choose_color;
+
+L_robe: set @normal, 720;
+ set @dyeBase, 2080;
+ goto L_choose_color;
+
+L_choose_color:
+ mes "[Candide]";
+ mes "\"And the color?\"";
+ next;
+
+ menu "Red", -,
+ "Green", -,
+ "Dark Blue", -,
+ "Yellow", -,
+ "Light Blue", -,
+ "Pink", -,
+ "Black", -,
+ "Orange", -,
+ "Purple", -,
+ "Dark Green", -;
+
+ set @del, @dyeBase + @menu - 1;
+
+ if (countitem(@del) == 0) goto L_no_item;
+
+ if (countitem(701) < 3) goto L_no_ash;
+
+ if (zeny < 5000) goto L_no_money;
+
+ delitem @del, 1;
+ getitem @normal, 1;
+ delitem 701, 3;
+ set zeny, zeny - 5000;
+
+L_again:
+ mes "[Candide]";
+ mes "\"Would you like to bleach something else?\"";
+ next;
+
+ menu "Yes", L_bleach_menu,
+ "No", L_close;
+
+L_no_item:
+ mes "[Candide]";
+ mes "\"You don't have one of those.\"";
+ next;
+
+ goto L_again;
+
+L_no_ash:
+ mes "[Candide]";
+ mes "\"You don't have enough ash for me to bleach anything.";
+ mes "I need three piles.\"";
+ next;
+
+ goto L_close;
+
+L_no_money:
+ mes "[Candide]";
+ mes "\"You don't have enough gold for me to bleach anything.";
+ mes "I need 5,000 GP for supplies.\"";
+ next;
+
+L_close:
+ mes "[Candide]";
+ mes "\"Come again.\"";
+ close;
+}
diff --git a/npc/001-1_Tulimshar/children.txt b/npc/001-1_Tulimshar/children.txt
new file mode 100644
index 00000000..40efb233
--- /dev/null
+++ b/npc/001-1_Tulimshar/children.txt
@@ -0,0 +1,105 @@
+new_3-1.gat,94,27,0 script Aisha 108,{
+ set @TEMP,rand(9);
+ if(@TEMP == 0) goto L_1;
+ if(@TEMP == 1) goto L_1;
+ if(@TEMP == 2) goto L_2;
+ if(@TEMP == 3) goto L_3;
+ if(@TEMP == 4) goto L_4;
+ if(@TEMP == 5) goto L_5;
+ if(@TEMP == 6) goto L_6;
+ if(@TEMP == 7) goto L_7;
+ if(@TEMP == 8) goto L_8;
+
+L_1:
+ mes "[Aisha]";
+ mes "\"Maggots are soo slimey!\"";
+ close;
+
+L_2:
+ mes "[Aisha]";
+ mes "\"Want to play ball with me?\"";
+ close;
+
+L_3:
+ mes "[Aisha]";
+ mes "\"There are so many monsters; I hate scorpions!\"";
+ close;
+
+L_4:
+ mes "[Aisha]";
+ mes "\"When I grow up, I want to be strong enough to kill a scorpion!\"";
+ close;
+
+L_5:
+ mes "[Aisha]";
+ mes "\"Mommy told me that you can drop the things that monsters sell.\"";
+ close;
+
+L_6:
+ mes "[Aisha]";
+ mes "\"Have you tried to eat a roasted maggot? They are sooo yummy! And you feel much healthier afterwards, too!\"";
+ close;
+
+L_7:
+ mes "[Aisha]";
+ mes "\"I want to be a Doctor when i grow up!\"";
+ close;
+
+L_8:
+ mes "[Aisha]";
+ mes "\"That volcano was sooo scary! The earth was shaking and everything was breaking down... but now they have rebuilt everything.\"";
+ close;
+}
+
+new_3-1.gat,39,67,0 script Nina 103,{
+ set @TEMP,rand(8);
+ if(@TEMP == 0) goto L_1;
+ if(@TEMP == 1) goto L_1;
+ if(@TEMP == 2) goto L_2;
+ if(@TEMP == 3) goto L_3;
+ if(@TEMP == 4) goto L_4;
+ if(@TEMP == 5) goto L_5;
+ if(@TEMP == 6) goto L_6;
+ if(@TEMP == 7) goto L_7;
+ if(@TEMP == 8) goto L_8;
+
+L_1:
+ mes "[Nina]";
+ mes "\"If I learned anything from school, Grenxen founded Tulimshar.\"";
+ close;
+
+L_2:
+ mes "[Nina]";
+ mes "\"When I was picking rocks from the field, I saw a red scorpion.\"";
+ close;
+
+L_3:
+ mes "[Nina]";
+ mes "\"Its polite to state your name before talking to anyone.\"";
+ close;
+
+L_4:
+ mes "[Nina]";
+ mes "\"I have a Scorpion Doll!\"";
+ close;
+
+L_5:
+ mes "[Nina]";
+ mes "\"I always take some spare Cactus Juices with me on the field. They are heavy, though.\"";
+ close;
+
+L_6:
+ mes "[Nina]";
+ mes "\"When you are feeling bad, eating something can usually help you heal faster.\"";
+ close;
+
+L_7:
+ mes "[Nina]";
+ mes "\"Grenxen is the Demon that founded Tulimshar.\"";
+ close;
+
+L_8:
+ mes "[Nina]";
+ mes "That volcano eruption was terrifying; much of Tulimshar was destroyed. Fortunately the mayor had everything rebuilt quickly.";
+ close;
+}
diff --git a/npc/001-1_Tulimshar/constable.txt b/npc/001-1_Tulimshar/constable.txt
new file mode 100644
index 00000000..673ff0a0
--- /dev/null
+++ b/npc/001-1_Tulimshar/constable.txt
@@ -0,0 +1,7 @@
+//
+
+new_3-1.gat,37,35,0 script Constable Perry Graf 150,{
+// set @npcName$, "Constable Perry Graf";
+ set @canSkip, 1;
+ callfunc "GameRules";
+}
diff --git a/npc/001-1_Tulimshar/elanore.txt b/npc/001-1_Tulimshar/elanore.txt
new file mode 100644
index 00000000..cc474ca0
--- /dev/null
+++ b/npc/001-1_Tulimshar/elanore.txt
@@ -0,0 +1,90 @@
+//Heal NPC costs 100 money
+
+new_3-1.gat,58,68,0 script Elanore 108,{
+
+ if (baselevel > 10) goto L_NoHeal;
+
+ set @TEMP,rand(4);
+
+ if(@TEMP == 0) goto Heal1;
+ if(@TEMP == 1) goto Heal2;
+ if(@TEMP == 2) goto Heal3;
+ if(@TEMP == 3) goto Heal4;
+
+Heal1:
+
+ mes "[Elanore the Healer]";
+ mes "\"You don't look too well; let me treat your wounds.\"";
+ next;
+ goto Heal_L;
+
+Heal2:
+
+ mes "[Elanore the Healer]";
+ mes "\"I will make quick work of your wounds.\"";
+ next;
+ goto Heal_L;
+
+Heal3:
+
+ mes "[Elanore the Healer]";
+ mes "\"Need a healing?\"";
+ next;
+ goto Heal_L;
+
+Heal4:
+
+ mes "[Elanore the Healer]";
+ mes "\"Sometimes you just need to run from battle.\"";
+ next;
+ goto Heal_L;
+
+Heal_L:
+
+ set @TEMP,rand(3);
+
+ if(@TEMP == 0) goto Heal_1;
+ if(@TEMP == 1) goto Heal_2;
+ if(@TEMP == 2) goto Heal_3;
+ if(@TEMP == 3) goto Heal_4;
+
+Heal_1:
+
+ mes "[Elanore the Healer]";
+ mes "\"Here you go!\"";
+ heal 10000,10000;
+ close;
+
+Heal_2:
+
+ mes "[Elanore the Healer]";
+ mes "\"Painless, wasn't it?";
+ mes "Here you go!\"";
+ heal 10000,10000;
+ close;
+
+Heal_3:
+
+ mes "[Elanore the Healer]";
+ mes "\"You should be more careful.\"";
+ heal 10000,10000;
+ close;
+
+Heal_4:
+
+ mes "[Elanore the Healer]";
+ mes "\"Much better, right?!\"";
+ heal 10000,10000;
+ close;
+
+L_NoHeal:
+
+ mes "[Elanore the Healer]";
+ mes "\"I'm sorry but unless you are young and in need, I can't help you, and your level is already higher than ten.";
+ mes "With so many people still injured from the earthquake, I really have no time to help.";
+ mes "You can get some rest in the inn near here.\"";
+
+ close;
+
+}
+
diff --git a/npc/001-1_Tulimshar/guards.txt b/npc/001-1_Tulimshar/guards.txt
new file mode 100644
index 00000000..158a00a1
--- /dev/null
+++ b/npc/001-1_Tulimshar/guards.txt
@@ -0,0 +1,74 @@
+new_3-1.gat,48,79,0 script Ekinu 104,{
+ mes "[Ekinu the Town Guard]";
+ mes "\"What a disaster... I can't believe that we managed to rebuild the town so fast, though.\"";
+ next;
+ menu "Can you give me any tips?", L_Tip,
+ "Do you have information?", L_Info,
+ "What disaster?", L_disaster;
+
+L_Tip:
+ set @TEMP,rand(7);
+ if(@TEMP == 0) goto L_0;
+ if(@TEMP == 1) goto L_1;
+ if(@TEMP == 2) goto L_2;
+ if(@TEMP == 3) goto L_3;
+ if(@TEMP == 4) goto L_4;
+ if(@TEMP == 5) goto L_5;
+ if(@TEMP == 6) goto L_6;
+L_1:
+ mes "[Ekinu the Town Guard]";
+ mes "\"Try to carry spare food when on fields or in dungeons, they will come in handy. I always take beer, but don't tell the Sergeant...\"";
+ close;
+L_2:
+ mes "[Ekinu the Town Guard]";
+ mes "\"Always carry a map of where you are, ask the Guides in most towns to get one.\"";
+ close;
+L_3:
+ mes "[Ekinu the Town Guard]";
+ mes "\"When in a dungeon, monsters are more aggressive than if they were outside.\"";
+ close;
+L_4:
+ mes "[Ekinu the Town Guard]";
+ mes "\"When gambling for money in casinos, make sure you have enough emergency money.\"";
+ close;
+L_5:
+ mes "[Ekinu the Town Guard]";
+ mes "\"Never underestimate the enemy.\"";
+ close;
+L_6:
+ mes "[Ekinu the Town Guard]";
+ mes "\"When fighting more than one enemy, try to focus on one at a time.\"";
+ close;
+L_0:
+ mes "[Ekinu the Town Guard]";
+ mes "\"Let me think of something... Oh! Do NOT attack Red scorpions unless you can kill it for sure!\"";
+ close;
+
+L_Info:
+ mes "[Ekinu the Town Guard]";
+ mes "\"Everyone wants information... you won't get it, at least not here. I'm not even sure what you mean, to be honest.\"";
+ close;
+
+L_disaster:
+ mes "[Ekinu the Town Guard]";
+ mes "\"What do you mean, `what disaster'? Weren't you there? That huge huge volcano ex...rusion... whatever they call it, and the earthquake!\"";
+ next;
+
+ mes "[Ekinu the Town Guard]";
+ mes "\"Half the town was reduced to rubble! Somehow, no-one was seriously injured though, so I guess we were lucky...\"";
+ next;
+
+ mes "[Ekinu the Town Guard]";
+ mes "\"Well, the mayor rebuilt everything quickly, but I have no idea where he got the GP from...\"";
+ close;
+}
+
+new_3-1.gat,40,79,0 script Ryan 104,{
+ mes "[Ryan the Town Guard]";
+ mes "ZzzZzzZ...";
+ next;
+ mes "[Ryan the Town Guard]";
+ mes "\"Hmmmmmmh...?";
+ mes "Oh, I wasn't sleeping, I was just resting my eyes!\"";
+close;
+}
diff --git a/npc/001-1_Tulimshar/guide.txt b/npc/001-1_Tulimshar/guide.txt
new file mode 100644
index 00000000..b1458919
--- /dev/null
+++ b/npc/001-1_Tulimshar/guide.txt
@@ -0,0 +1,162 @@
+new_3-1.gat,33,27,0 script Ian 102,{
+ if (TUT_var & 1 == 1 && TUT_var & 2 == 0 && BaseLevel >= 10) callsub S_Grad;
+ mes "[Ian the Guide]";
+ mes "\"Would you like to know about something?\"";
+ next;
+
+L_Menu_A:
+ menu "Fighting", L_Fight,
+ "Items", L_Items,
+ "Monsters", L_Monster,
+ "Stylist", L_Style,
+ "Quests", L_Quests,
+ "NPCs", L_NPC,
+ "Commands", L_Comm,
+ "Attributes", L_Stats,
+ "Magic", L_Magic,
+ "Quick Keys", L_Key,
+ "Laws", L_Laws,
+ "I know everything!", L_Know;
+ close;
+
+L_Fight:
+ mes "[Ian the Guide]";
+ mes "\"People live in this world by living off of monsters.";
+ mes "You can fight monsters and even players by hitting the [CTRL] key, or left mouse click.\"";
+ next;
+ mes "[Ian the Guide]";
+ mes "\"If you get tired of pressing the key too much, you can also type [SHIFT]+[CTRL].";
+ mes "This will make your character attack continuously for the time you are inactive.\"";
+ next;
+ goto L_Menu_A;
+
+L_Items:
+ mes "[Ian the Guide]";
+ mes "\"There are three types of items.";
+ mes "They can be Consumables, Equipment, or Miscellaneous\"";
+ next;
+ mes "[Ian the Guide]";
+ mes "\"Consumable items such as Potions, can be used only once.";
+ mes "After use, they will disappear from your inventory.\"";
+ next;
+ mes "[Ian the Guide]";
+ mes "\"Equipment items like Armors, Weapons, Accessories";
+ mes "can be equipped for fashionable purposes or to raise your status.\"";
+ next;
+ mes "[Ian the Guide]";
+ mes "\"Miscellaneous items such as maggot slime, are used";
+ mes "in creating other items, or just to trade and sell.\"";
+ next;
+ goto L_Menu_A;
+
+L_Monster:
+ mes "[Ian the Guide]";
+ mes "\"In every world, there are beasts. Monsters can be found almost anywhere!~";
+ mes "To fight them, please read [Fighting] if you do not know how.\"";
+ next;
+ mes "\"There a several types of monsters, Aggressive, Neutral, and Assistants.\"";
+ next;
+ mes "[Ian the Guide]";
+ mes "\"Aggressive monsters know that they are always in danger";
+ mes "so therefore they always keep their guard up,";
+ mes "making them attack anybody in sight.\"";
+ next;
+ mes "[Ian the Guide]";
+ mes "\"Neutral monsters tend to just lounge around until attacked.";
+ mes "They will leave everything alone unless they are threatened.\"";
+ next;
+ mes "[Ian the Guide]";
+ mes "\"Assistants are monsters who help each other.";
+ mes "You should always check how many are around you before attacking a single one!\"";
+ next;
+ goto L_Menu_A;
+
+L_Style:
+ mes "[Ian the Guide]";
+ mes "\"The stylist NPCs will cut and perm your hair!";
+ mes "They are known for their hair growth formula\"";
+ next;
+ goto L_Menu_A;
+
+L_Quests:
+ mes "[Ian the Guide]";
+ mes "\"There are people in the world in need of help!";
+ mes "Most of these people aren't afraid to give rewards to those who help them.";
+ mes "So be nice and help people along the way!\"";
+ next;
+ goto L_Menu_A;
+
+L_NPC:
+ mes "[Ian the Guide]";
+ mes "\"NPCs [Non Playable Characters] are people who are always in the game,";
+ mes "tending to many varieties of services from just chatting to helping others.\"";
+ next;
+ goto L_Menu_A;
+
+L_Comm:
+ mes "[Ian the Guide]";
+ mes "\"/clear clears the text box.\"";
+ mes "\"/help displays the client commands (ones starting with a /) in the chat box.\"";
+ mes "\"/whisper [name] allows you to message someone privately.\"";
+ mes "\"/who displays the current number of online users.\"";
+ mes "\"/where displays the current map's name.\"";
+ next;
+ goto L_Menu_A;
+
+L_Stats:
+ mes "[Ian the Guide]";
+ mes "\"People vary greatly by how much strength, agility, dexterity, intelligence, vitality, and luck they have.\"";
+ next;
+ mes "[Ian the Guide]";
+ mes "\"Strength helps you carry items, and it also allows you to hit harder-- but it is not too helpful if you focus on missile weapons.";
+ mes "More agility allows you to attack faster, and to dodge attacks more easily.";
+ mes "Your dexterity determines how likely you are to hit a monster, and how effective you are with missile weapons.\"";
+ next;
+ mes "[Ian the Guide]";
+ mes "\"Vitality determines how resistant to injuries you are, and how much damage you can take before you die.";
+ mes "Intelligence is useful for alchemy and magic, but there are few opportunities for either at the moment.";
+ mes "Luck determines many small things, but, to be honest, I don't think that it is very useful.\"";
+ next;
+ mes "[Ian the Guide]";
+ mes "\"I recommend that you practice your dexterity, since some of the more dangerous monsters are very hard to hit otherwise.";
+ mes "Don't bother trying to work on your luck, and your intelligence is probably not something anyone cares about either.\"";
+ next;
+ goto L_Menu_A;
+
+L_Magic:
+ mes "[Ian the Guide]";
+ mes "\"In decades past, there was a Mana Seed south of Tulimshar, from which people could draw magical energies. Unfortunately, the seed is gone.";
+ mes "Until we find a new Mana Seed, there will be no magic, except for those who already possess magical powers.\"";
+ next;
+ goto L_Menu_A;
+
+L_Key:
+ mes "[Ian the Guide]";
+ mes "\"There are many key combinations, press F1 for a short list of them!\"";
+ next;
+ goto L_Menu_A;
+
+L_Laws:
+ mes "[Ian the Guide]";
+ mes "\"Lady Platyna, the Overseer, has decreed the following rules:";
+ mes "1. Do not abuse others (insult, swear etc.)";
+ mes "2. No bots.";
+ mes "3. No spamming/flooding.";
+ mes "4. No begging.";
+ mes "5. Speak English.";
+ next;
+ goto L_Menu_A;
+
+L_Know:
+ close;
+
+S_Grad:
+ mes "[Ian the Guide]";
+ mes "\"Hey, you've been doing good, let me give you this.\"";
+ next;
+
+ getitem 675, 1;
+ set TUT_var, TUT_var | 2;
+
+ return;
+}
diff --git a/npc/001-1_Tulimshar/man.txt b/npc/001-1_Tulimshar/man.txt
new file mode 100644
index 00000000..f2638a51
--- /dev/null
+++ b/npc/001-1_Tulimshar/man.txt
@@ -0,0 +1,22 @@
+new_3-1.gat,108,55,0 script Luca 102,{
+ mes "[Luca the Hunter]";
+ mes "\"Ouch! It hurts, this wound I got from battle.\"";
+ next;
+ menu "Tell me about it",L_Exp,"Nevermind",L_Nev;
+
+L_Exp:
+ mes "[Luca the Hunter]";
+ mes "\"I was fighting scorpions for experience and I bumped into a RED one. I had NEVER seen it before!\"";
+ next;
+ mes "[Luca the Hunter]";
+ mes "\"Luckily i had a camera with me! Here's a picture of it... Let me find it, I put it in my pocket somewhere...\"";
+ next;
+ mes "[Luca the Hunter]";
+ mes "\"Oh man! My pockets have been ripped clean off!\"";
+ close;
+
+L_Nev:
+ mes "[Luca the Hunter]";
+ mes "\"Hmpf!\"";
+ close;
+}
diff --git a/npc/001-1_Tulimshar/merchant.txt b/npc/001-1_Tulimshar/merchant.txt
new file mode 100644
index 00000000..186365d6
--- /dev/null
+++ b/npc/001-1_Tulimshar/merchant.txt
@@ -0,0 +1 @@
+new_3-1.gat,39,52,0 shop Neko 101,501:50,502:60,1201:100,522:300,521:1000,656:250,1202:1000,523:8000,603:-1
diff --git a/npc/001-1_Tulimshar/monster_guide.txt b/npc/001-1_Tulimshar/monster_guide.txt
new file mode 100644
index 00000000..3b2d8b6f
--- /dev/null
+++ b/npc/001-1_Tulimshar/monster_guide.txt
@@ -0,0 +1,35 @@
+new_3-1.gat,48,52,0 script Aidan 102,{
+ if(MPQUEST == 0) goto Register;
+ mes "[Aidan the Monster Guide]";
+ mes "You currently have " +Mobpt+ " Monster Points. These points are acquired while killing monsters";
+ close;
+Register:
+ mes "[Aidan the Monster Guide]";
+ mes "Oh my, you dont seem to be registered as a Quest Participant, would you like to register?";
+ next;
+Choice:
+ menu "Register",L_R,"Not at the moment",L_N,"Information",L_I;
+L_R:
+ mes "[Aidan the Monster Guide]";
+ mes "Give me a second to look over your paperwork.";
+ next;
+ mes "[Monster Guide]";
+ mes "Well, looks like you qualify!";
+ mes "Welcome to the questing world!";
+ set MPQUEST,1;
+ close;
+L_N:
+ mes "[Aidan the Monster Guide]";
+ mes "Very well, you dont know what your missing.";
+ close;
+L_I:
+ mes "[Aidan the Monster Guide]";
+ mes "Here in The Mana World, there are certain rewards for your vanquishing of foes.";
+ mes "For example, there are Monster Points, every monster you kill has a certain amount of points that get added to your account.";
+ mes "The more points you have, the more expensive things you can buy using them.";
+ next;
+ mes "[Monster Guide]";
+ mes "So whaddya say, sign up won't you?";
+ next;
+ goto Choice;
+}
diff --git a/npc/001-1_Tulimshar/monsters.txt b/npc/001-1_Tulimshar/monsters.txt
new file mode 100644
index 00000000..1a17628f
--- /dev/null
+++ b/npc/001-1_Tulimshar/monsters.txt
@@ -0,0 +1,26 @@
+// Map: new_3-1
+// This is Tulimshar the city -- southern part with market and casino/inn.
+//
+
+new_3-1.gat,0,0,0,0 monster Maggot 1002,35,2000,0,Mob3::OnMaggot
+new_3-1.gat,0,0,0,0 monster Scorpion 1003,25,2500,0,Mob3::OnScorpion
+new_3-1.gat,0,0,0,0 monster Firegoblin 1011,20,2500,0,Mob3::OnFireGoblin
+
+new_3-1.gat,0,0,0 script Mob3 -1,{
+OnMaggot:
+ set @mobID, 1002;
+ callfunc "MobPoints";
+ break;
+
+OnScorpion:
+ set @mobID, 1003;
+ callfunc "MobPoints";
+ break;
+
+OnFireGoblin:
+ set @mobID, 1011;
+ callfunc "MobPoints";
+ break;
+
+ end;
+}
diff --git a/npc/001-1_Tulimshar/rewards_master.txt b/npc/001-1_Tulimshar/rewards_master.txt
new file mode 100644
index 00000000..9c0ddb43
--- /dev/null
+++ b/npc/001-1_Tulimshar/rewards_master.txt
@@ -0,0 +1,87 @@
+new_3-1.gat,50,53,0 script Ishi 106,{
+ if (MPQUEST == 0) goto L_Register;
+ if (tvis == 0) set tvis, 1;
+ if (Mobpt < tvis) goto L_NotEnough;
+
+ setarray @Items, 502, 502, 503, 504, 505, 506, 507, 508, 509, 510, 586, 512, 513, 514, 515, 516, 517, 518, 519, 520;
+
+ mes "[Ishi the Rewards Master]";
+ mes "\"Welcome! I see you have " + Mobpt + " Monster Points. Would you like to exchange some of those for items?\"";
+ next;
+
+ set @i, 0;
+ setarray @Menu$, "", "", "", "", "", "", "", "", "", "", "";
+ callsub SUB_prep_menu;
+
+ menu
+ @Menu$[0], -,
+ @Menu$[1], -,
+ @Menu$[2], -,
+ @Menu$[3], -,
+ @Menu$[4], -,
+ @Menu$[5], -,
+ @Menu$[6], -,
+ @Menu$[7], -,
+ @Menu$[8], -,
+ @Menu$[9], -,
+ @Menu$[10], -;
+
+ if (@menu > @i) close;
+
+ set @req, @menu;
+ set @rec, 0;
+
+L_Item_Loop:
+ if (@rec == @req || Mobpt < tvis) goto L_Item_Done;
+
+ callsub SUB_give_item;
+ set @rec, @rec + 1;
+ goto L_Item_Loop;
+
+L_Item_Done:
+ if (@rec < @req) mes "It looks like your Monster Points were over estimated.";
+ close;
+
+L_Register:
+ mes "[Ishi the Rewards Master]";
+ mes "\"Hey, it seems like you didn't register as a quest participant yet! You can sign up with Aidan.\"";
+ close;
+
+L_NotEnough:
+ mes "[Ishi the Rewards Master]";
+ mes "\"You don't have enough Monster Points for a reward. You'll need to kill some more monsters first.\"";
+ close;
+
+//////////////////////////////////////////////////
+// Subroutines
+//////////////////////////////////////////////////
+
+SUB_prep_menu:
+ set @pts, Mobpt;
+ set @dif, tvis;
+
+L_Menu_Loop:
+ if (@pts < @dif || @i == 10) goto L_Menu_Done;
+
+ set @Menu$[@i], @i + 1;
+
+ set @i, @i + 1;
+ set @pts, @pts - @dif;
+ set @dif, @dif + 1;
+
+ goto L_Menu_Loop;
+L_Menu_Done:
+ set @Menu$[@i], "No thanks";
+ return;
+
+SUB_give_item:
+ set Mobpt, Mobpt - tvis;
+ set tvis, tvis + 1;
+ set @ID, @Items[rand(getarraysize(@Items))];
+
+ getitem @ID, 1;
+
+ mes "You received one " + getitemname(@ID) + "!";
+
+ return;
+}
diff --git a/npc/001-1_Tulimshar/rules.txt b/npc/001-1_Tulimshar/rules.txt
new file mode 100644
index 00000000..70917804
--- /dev/null
+++ b/npc/001-1_Tulimshar/rules.txt
@@ -0,0 +1,7 @@
+//
+
+new_3-1.gat,29,28,0 script #Rules 127,1,1,{
+ if (TUT_var & 1 == 1) close;
+ callfunc "GameRules";
+ mes "Ian, the trainer, can help you get to know the game.";
+}
diff --git a/npc/001-1_Tulimshar/sandra.txt b/npc/001-1_Tulimshar/sandra.txt
new file mode 100644
index 00000000..4922bd60
--- /dev/null
+++ b/npc/001-1_Tulimshar/sandra.txt
@@ -0,0 +1,81 @@
+new_3-1.gat,110,71,0 script Sandra 114,{
+ if(Scorp == 2) goto done;
+ if(Scorp == 1) goto reas;
+ set @TEMP,rand(3);
+ if(@TEMP == 1) goto L_1;
+ if(@TEMP == 2) goto L_2;
+ if(@TEMP == 3) goto L_3;
+ if(@TEMP == 0) goto L_4;
+L_1:
+ mes "[Sandra]";
+ mes "\"In the outskirts of Tulimshar, there wanders a red scorpion. I need a favor, please help me.\"";
+ next;
+ goto red;
+L_2:
+ mes "[Sandra]";
+ mes "\"When you venture in the outskirts of Tulimshar, you can spot a red scorpion. Will you help me kill one?\"";
+ next;
+ goto red;
+L_3:
+ mes "[Sandra]";
+ mes "\"The red scorpion stinger carries many properties used in potions.\"";
+ next;
+ goto red;
+L_4:
+ mes "[Sandra]";
+ mes "\"You look sturdy enough, will you help me get something?\"";
+ next;
+ goto red;
+red:
+ menu "Yes",L_kl,"No",L_N;
+L_kl:
+ if(@TEMP == 1) goto K_1;
+ if(@TEMP == 2) goto K_2;
+ if(@TEMP == 3) goto K_3;
+ if(@TEMP == 0) goto K_1;
+K_1:
+ mes "[Sandra]";
+ mes "\"I need you to slaughter the red scorpion found outside of Tulimshar and bring me 5 [Red Stingers].\"";
+ next;
+ goto set1;
+K_2:
+ mes "[Sandra]";
+ mes "\"I heard a while ago that the stinger of a red scorpion can be used for medical purposes. I need you to help me get 5 [Red Stingers].\"";
+ next;
+ goto set1;
+K_3:
+ mes "[Sandra]";
+ mes "\"Bring me 5 [Red Stingers] and i will reward you greatly.\"";
+ next;
+ goto set1;
+set1:
+ set Scorp,1;
+ mes "[Sandra]";
+ mes "\"Please bring me them!\"";
+ close;
+reas:
+ if(countitem(517) >= 5) goto have;
+ mes "[Sandra]";
+ mes "\"Please hurry and bring me 5 [Red Stingers].\"";
+ close;
+have:
+ mes "[Sandra]";
+ mes "\"Excellent!";
+ mes "You brought me 5 [Red Stingers]!\"";
+ delitem 517,5;
+ next;
+ mes "[Sandra]";
+ mes "\"Here you go, your reward!\"";
+ mes "+Got Bow";
+ mes "+Got Arrows 100";
+ getitem 1200,1;
+ getitem 1199,100;
+ set Scorp,2;
+ close;
+done:
+ mes "[Sandra]";
+ mes "\"Thank you for all your help!\"";
+ close;
+L_N:
+ close;
+}
diff --git a/npc/001-1_Tulimshar/soul-menhir.txt b/npc/001-1_Tulimshar/soul-menhir.txt
new file mode 100644
index 00000000..147ed63d
--- /dev/null
+++ b/npc/001-1_Tulimshar/soul-menhir.txt
@@ -0,0 +1,6 @@
+new_3-1.gat,38,69,0 script Soul Menhir 144, {
+ set @map$, "new_3-1.gat";
+ set @x, 38;
+ set @y, 70;
+ callfunc "SoulMenhir";
+}
diff --git a/npc/001-1_Tulimshar/vincent.txt b/npc/001-1_Tulimshar/vincent.txt
new file mode 100644
index 00000000..4e2a0926
--- /dev/null
+++ b/npc/001-1_Tulimshar/vincent.txt
@@ -0,0 +1,102 @@
+new_3-1.gat,135,42,0 script Vincent 113,{
+ if(Bugleg == 1) goto L_Reas;
+ if(Bugleg == 2) goto L_Done;
+ set @TEMP, rand(4);
+ if(@TEMP == 0) goto L_1;
+ if(@TEMP == 1) goto L_2;
+ if(@TEMP == 2) goto L_3;
+ if(@TEMP == 3) goto L_4;
+
+L_1:
+ mes "[Vincent]";
+ mes "\"I just need 30 more [Bug Legs] to finish my action figure!\"";
+ next;
+ goto L_Ask;
+
+L_2:
+ mes "[Vincent]";
+ mes "\"This maggot action figure is awesome! I just need to attach [30 Part A{Bug Leg}]\"";
+ next;
+ goto L_Ask;
+
+L_3:
+ mes "[Vincent]";
+ mes "\"This is a great action figure! A must have! All I need is a few parts...\"";
+ goto L_Ask;
+
+L_4:
+ mes "[Vincent]";
+ mes "\"Can you get me 30 [Bug Legs]? I need them to replace the action figure parts.\"";
+ next;
+ goto L_Ask;
+
+L_Ask:
+ mes "[Vincent]";
+ mes "\"Will you help me find 30 [Bug Legs]?\"";
+ next;
+ menu
+ "Yes", L_Sure,
+ "No", -;
+ close;
+
+L_Sure:
+ set Bugleg, 1;
+ set @TEMP,rand(4);
+ if(@TEMP == 0) goto J_1;
+ if(@TEMP == 1) goto J_2;
+ if(@TEMP == 2) goto J_3;
+ if(@TEMP == 3) goto J_4;
+
+J_1:
+ mes "[Vincent]";
+ mes "\"Thank you!\"";
+ next;
+ goto L_Wait;
+
+J_2:
+ mes "[Vincent]";
+ mes "\"I don't know how to thank you enough!\"";
+ next;
+ goto L_Wait;
+
+J_3:
+ mes "[Vincent]";
+ mes "\"I will thank you when I get them!\"";
+ next;
+ goto L_Wait;
+
+J_4:
+ mes "[Vincent]";
+ mes "\"I'm sure I will give a small reward. :D\"";
+ next;
+ goto L_Wait;
+
+L_Wait:
+ mes "[Vincent]";
+ mes "\"Now please go get me 30 [Bug Legs]\"";
+ close;
+
+L_Reas:
+ if(countitem(518) >= 30) goto L_Have;
+ mes "[Vincent]";
+ mes "\"Please help me collect 30 [Bug Legs]!\"";
+ close;
+
+L_Have:
+ delitem 518, 30;
+ mes "[Vincent]";
+ mes "\"Excellent! Finally I can complete the model!!\"";
+ next;
+ mes "[Vincent]";
+ mes "\"Here you go, a little of my appreciation!\"";
+ next;
+ set zeny, zeny + 1000;
+ set Bugleg, 2;
+ close;
+
+L_Done:
+ mes "[Vincent]";
+ mes "\"Thanks for your help!\"";
+ close;
+}
+
diff --git a/npc/001-1_Tulimshar/workers.txt b/npc/001-1_Tulimshar/workers.txt
new file mode 100644
index 00000000..31c6afa3
--- /dev/null
+++ b/npc/001-1_Tulimshar/workers.txt
@@ -0,0 +1,13 @@
+//
+
+new_3-1.gat,45,21,0 script Construction Worker 155,{
+ mes "[Construction worker]";
+ mes "\"I can't let you beyond this gate. The area is closed for renovation; most of it was destroyed during the earthquake.\"";
+ close;
+}
+
+new_3-1.gat,124,21,0 script Construction Worker 155,{
+ mes "[Construction worker]";
+ mes "\"Move along.\"";
+ close;
+}