From 30dd04a2236b7c5378606f103d773300f67d015a Mon Sep 17 00:00:00 2001 From: Jared Adams Date: Mon, 5 Jan 2009 14:06:13 +0000 Subject: Disable death penalty --- conf/battle_athena.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conf/battle_athena.conf b/conf/battle_athena.conf index 3419fc80..474fcfd3 100644 --- a/conf/battle_athena.conf +++ b/conf/battle_athena.conf @@ -149,7 +149,7 @@ pvp_exp: yes // 0 = No penalty. // 1 = Lose % of current level when killed. // 2 = Lose % of total experience when killed. -death_penalty_type: 1 +death_penalty_type: 0 // Base exp. penalty rate (Each 100 is 1% of their exp) death_penalty_base: 100 -- cgit v1.2.3-60-g2f50 From ab2a210e755470ce0db1b25d59ce234119aad9fc Mon Sep 17 00:00:00 2001 From: Bjørn Lindeijer Date: Mon, 5 Jan 2009 22:11:57 +0100 Subject: Some client news fixes Empty lines should have a single space on them because the browser box will hide them otherwise. Also some rewrapping. --- news.txt | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/news.txt b/news.txt index 798fc3f0..f7dd2f13 100644 --- a/news.txt +++ b/news.txt @@ -1,6 +1,6 @@ ##3 Open Testing on Official Test Server ##3 2009-01-04 through 2009-01-11 - + ##0 A testing period on enigma (our official test ##0 server) has started. Experience and drop rates ##0 are 10 times higher than normal during this @@ -10,31 +10,31 @@ ##0 currently supported clients are welcome. Please ##0 direct all feedback to the appropriate thread on ##0 the forums. - + ##0 To participate in this testing, set your server ##0 to enigma.dy.fi. Enigma shouldn't be used between ##0 open test periods, as the content may be in an ##0 unusable state. Characters and accounts may be ##0 wiped at any time between testing periods. - + ##3 Monster Mutations and Experience Point Changes ##3 2008-12-10 - + ##0 We have rebalanced monster experience points -##0 and added two new mechanisms to make the game -##0 more challenging: monster mutations, by which -##0 monster attributes (and experience points) are -##0 slightly modified for each individual monster, -##0 and increased boni for shared kills: killing a -##0 monster with a group of fighters now yields -##0 significantly more experience points than -##0 killing it alone. To adjust for the latter +##0 and added two new mechanisms to make the +##0 game more challenging: monster mutations, by +##0 which monster attributes (and experience points) +##0 are slightly modified for each individual +##0 monster, and increased boni for shared kills: +##0 killing a monster with a group of fighters now +##0 yields significantly more experience points than +##0 killing it alone. To adjust for the latter ##0 increase, we have reduced base experience points ##0 for low and medium-level monsters, though we ##0 expect levelling to be easier overall. - + ##2 The TMW development team - + ##3 Mines and weddings! ##3 2008-10-11 -- cgit v1.2.3-60-g2f50 From 64f98b45c853e6f7a21eb0289206f81a8183bf01 Mon Sep 17 00:00:00 2001 From: Jared Adams Date: Wed, 7 Jan 2009 06:21:05 +0000 Subject: Fix some text in Milly's script --- npc/009-1_Hurnscald/milly.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/npc/009-1_Hurnscald/milly.txt b/npc/009-1_Hurnscald/milly.txt index 82b5cb6a..2935d314 100644 --- a/npc/009-1_Hurnscald/milly.txt +++ b/npc/009-1_Hurnscald/milly.txt @@ -9,7 +9,7 @@ L_NohMask: menu "Have you seen anything strange lately?", L_NohMask_Strange, "Do you know anything about the recent robberies?", L_NohMask_Robbery, - "Yes, it is.", -; + "Hello", -; close; L_NohMask_Strange: -- cgit v1.2.3-60-g2f50 From 4d49c25bc4b6ac2ad690aaa3408d98e94aaf89ad Mon Sep 17 00:00:00 2001 From: Jared Adams Date: Sun, 11 Jan 2009 11:29:18 +0000 Subject: Add black and cotton boots --- db/item_db.txt | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/db/item_db.txt b/db/item_db.txt index 721db3ee..4cce8027 100644 --- a/db/item_db.txt +++ b/db/item_db.txt @@ -219,6 +219,9 @@ 727, Iten, Iten, 3, 0, 0, 100, , , , , , , , , , , , {}, {} // RESERVED 731, AssassinPants, Assassin Pants, 5, 10000, 3000, 10, , 5, , -5, 0, 10477567, 2, 1, , 0, 0, {}, {} +// RESERVED +734, BlackBoots, Black Boots, 5, 20000, 3000, 35, , 4, , -10, 0, 10477567, 2, 64, , 0, 0, {}, {} +735, WhiteCottonBoots, WhiteCottonBoots, 5, 2000, 500, 10, , 1, , 1, 0, 10477567, 2, 64, , 0, 0, {}, {} #ID, Name, Label, Type, Price, Sell, Weight, ATK, DEF, Range, Mbonus, Slot, Job, Gender, Loc, wLV, eLV, View, {UseScript}, {EquipScript} 1198, JackOSoul, Jack O Soul, 3, 100000, 1, 1, , , , , , , , , , , , {}, {} @@ -361,3 +364,15 @@ 2147, OrangeCottonHeadBand, Orange Cotton Head Band, 5, 3000, 500, 5, , 2, , 0, 0, 10477567, 2, 256, , 0, 0, {}, {} 2148, PurpleCottonHeadBand, Purple Cotton Head Band, 5, 3000, 500, 5, , 2, , 0, 0, 10477567, 2, 256, , 0, 0, {}, {} 2149, DarkGreenCottonHeadBand, Dark Green Cotton Head Band, 5, 3000, 500, 5, , 2, , 0, 0, 10477567, 2, 256, , 0, 0, {}, {} + +#ID, Name, Label, Type, Price, Sell, Weight, ATK, DEF, Range, Mbonus, Slot, Job, Gender, Loc, wLV, eLV, View, {UseScript}, {EquipScript} +2150, RedCottonBoots, Red Cotton Boots, 5, 2000, 500, 10, , 1, , 1, 0, 10477567, 2, 64, , 0, 0, {}, {} +2151, GreenCottonBoots, Green Cotton Boots, 5, 2000, 500, 10, , 1, , 1, 0, 10477567, 2, 64, , 0, 0, {}, {} +2152, DarkBlueCottonBoots, Dark Blue Cotton Boots, 5, 2000, 500, 10, , 1, , 1, 0, 10477567, 2, 64, , 0, 0, {}, {} +2153, YellowCottonBoots, Yellow Cotton Boots, 5, 2000, 500, 10, , 1, , 1, 0, 10477567, 2, 64, , 0, 0, {}, {} +2154, LightBlueCottonBoots, Light Blue Cotton Boots, 5, 2000, 500, 10, , 1, , 1, 0, 10477567, 2, 64, , 0, 0, {}, {} +2155, PinkCottonBoots, Pink Cotton Boots, 5, 2000, 500, 10, , 1, , 1, 0, 10477567, 2, 64, , 0, 0, {}, {} +2156, BlackCottonBoots, Black Cotton Boots, 5, 2000, 500, 10, , 1, , 1, 0, 10477567, 2, 64, , 0, 0, {}, {} +2157, OrangeCottonBoots, Orange Cotton Boots, 5, 2000, 500, 10, , 1, , 1, 0, 10477567, 2, 64, , 0, 0, {}, {} +2158, PurpleCottonBoots, Purple Cotton Boots, 5, 2000, 500, 10, , 1, , 1, 0, 10477567, 2, 64, , 0, 0, {}, {} +2159, DarkGreenCottonBoots, Dark Green Cotton Boots, 5, 2000, 500, 10, , 1, , 1, 0, 10477567, 2, 64, , 0, 0, {}, {} \ No newline at end of file -- cgit v1.2.3-60-g2f50 From 10ee468a1f3b73f867a1496fb4e9d0b7b274f3b9 Mon Sep 17 00:00:00 2001 From: Bjørn Lindeijer Date: Sun, 11 Jan 2009 18:13:55 +0100 Subject: Some improvements to usage instructions --- tools/tmwcon/README | 27 +++++++++++++++++++++++++++ tools/tmwcon/usage | 16 ---------------- 2 files changed, 27 insertions(+), 16 deletions(-) create mode 100644 tools/tmwcon/README delete mode 100644 tools/tmwcon/usage diff --git a/tools/tmwcon/README b/tools/tmwcon/README new file mode 100644 index 00000000..a48fc836 --- /dev/null +++ b/tools/tmwcon/README @@ -0,0 +1,27 @@ +Dependencies: + + * ant (recent version) + * J2SE 5 or higher (or equivalent) + * Tiled or Tiled core jar file (in this directory) + * TMW Tiled plugin jar (in this directory or the plugins directory) + +Compilation: + + Run ant from this directory. + +Usage: + + * Create a directory called tmwdata containing the client data + (can be symlink) + + * Output will be in a directory called server-data + (usually you make this a symlink to eathena-data) + + * If the aforementioned jar files are in class path you can run the + converter jar file directly: + + java -jar converter.jar + + Otherwise, the Converter class can handle that for you: + + java Converter diff --git a/tools/tmwcon/usage b/tools/tmwcon/usage deleted file mode 100644 index f8fc8d8b..00000000 --- a/tools/tmwcon/usage +++ /dev/null @@ -1,16 +0,0 @@ -Dependancies: - ant (recent version) - J2SE 5 or higher (or equivalent) - Tiled or Tiled core jar file (in this directory) - TMW Tiled plugin jar (in this directory or the plugins directory) - -Compilation: - Run ant from this directory. - -Usage: - a directory called tmwdata containing the client data - output will be in a directory called server-data - if the aforementioned jar files are in class path you can run the converter jar file directly: - java jar converter.jar - otherwise, the Converter class can handle that for you: - java Converter -- cgit v1.2.3-60-g2f50 From 4366a268eef0dcb1cc823596add73c83d2984914 Mon Sep 17 00:00:00 2001 From: Bjørn Lindeijer Date: Sun, 11 Jan 2009 21:32:46 +0100 Subject: Added quest to get the cat ears Done together with Katze --- data/015-1.wlk | Bin 16804 -> 16804 bytes data/015-3.wlk | Bin 0 -> 4100 bytes data/resnametable.txt | 1 + npc/015-1_Woodland/_import.txt | 1 + npc/015-1_Woodland/_warps.txt | 1 + npc/015-1_Woodland/alice.txt | 51 ++++++++-- npc/015-1_Woodland/barrier.txt | 7 ++ npc/015-3/_import.txt | 6 ++ npc/015-3/_mobs.txt | 27 ++++++ npc/015-3/_warps.txt | 3 + npc/015-3/barrier.txt | 29 ++++++ npc/015-3/katze.txt | 207 +++++++++++++++++++++++++++++++++++++++++ npc/015-3/pot.txt | 111 ++++++++++++++++++++++ npc/_import.txt | 1 + 14 files changed, 437 insertions(+), 8 deletions(-) create mode 100644 data/015-3.wlk create mode 100644 npc/015-1_Woodland/barrier.txt create mode 100644 npc/015-3/_import.txt create mode 100644 npc/015-3/_mobs.txt create mode 100644 npc/015-3/_warps.txt create mode 100644 npc/015-3/barrier.txt create mode 100644 npc/015-3/katze.txt create mode 100644 npc/015-3/pot.txt diff --git a/data/015-1.wlk b/data/015-1.wlk index f3e7bbc9..8d13a5b3 100644 Binary files a/data/015-1.wlk and b/data/015-1.wlk differ diff --git a/data/015-3.wlk b/data/015-3.wlk new file mode 100644 index 00000000..9a01b2e2 Binary files /dev/null and b/data/015-3.wlk differ diff --git a/data/resnametable.txt b/data/resnametable.txt index c7c65430..02c33d6d 100644 --- a/data/resnametable.txt +++ b/data/resnametable.txt @@ -30,6 +30,7 @@ 014-1.gat#014-1.wlk# 014-3.gat#014-3.wlk# 015-1.gat#015-1.wlk# +015-3.gat#015-3.wlk# 016-1.gat#016-1.wlk# 017-1.gat#017-1.wlk# 018-1.gat#018-1.wlk# diff --git a/npc/015-1_Woodland/_import.txt b/npc/015-1_Woodland/_import.txt index d92e0749..b7b63b22 100644 --- a/npc/015-1_Woodland/_import.txt +++ b/npc/015-1_Woodland/_import.txt @@ -2,4 +2,5 @@ map: 015-1.gat npc: npc/015-1_Woodland/_mobs.txt npc: npc/015-1_Woodland/_warps.txt npc: npc/015-1_Woodland/alice.txt +npc: npc/015-1_Woodland/barrier.txt npc: npc/015-1_Woodland/monsters.txt diff --git a/npc/015-1_Woodland/_warps.txt b/npc/015-1_Woodland/_warps.txt index c6ca1856..cb9044e9 100644 --- a/npc/015-1_Woodland/_warps.txt +++ b/npc/015-1_Woodland/_warps.txt @@ -1,3 +1,4 @@ // 015-1 Woodland warps 015-1.gat,93,55 warp ToWoodland -1,0,010-1.gat,15,55 +015-1.gat,59,31 warp to 015_3 -1,-1,015-3.gat,31,36 diff --git a/npc/015-1_Woodland/alice.txt b/npc/015-1_Woodland/alice.txt index b9ce5831..629cfed5 100644 --- a/npc/015-1_Woodland/alice.txt +++ b/npc/015-1_Woodland/alice.txt @@ -1,16 +1,23 @@ -//################################################################################# -//# # -//# A herb collector giving the players some hints about finding and brewing # -//# herbs # -//# # -//################################################################################# - +// A herb collector giving the players some hints about finding and brewing +// herbs. 015-1.gat,52,53,0 script Alice 106, { mes "[Alice]"; mes "\"Greeting, fellow wanderer."; mes "Are you collecting herbs, too?\""; next; + if (LastHiss == 2 && Katze < 4) + menu + "Yes, sure.", L_findmany, + "Herbs?", L_herbs, + "Nope, just enjoying the scenery.", close, + "I saw the cat, but it doesn't like me.", L_cat; + if (LastHiss == 1) + menu + "Yes, sure.", L_findmany, + "Herbs?", L_herbs, + "Nope, just enjoying the scenery.", close, + "There is a monster in that cave!", L_cave; menu "Yes, sure.", L_findmany, "Herbs?", L_herbs, @@ -35,7 +42,6 @@ L_plenty: mes "Good brewers get much better healing potions from them."; mes "The most important characteristic of a good brewer is intelligence.\""; close; - L_herbs: mes "[Alice]"; @@ -43,4 +49,33 @@ L_herbs: mes "Caul in Hurnscald found a way to brew magical healing potions from them, and I have heard a rumor that they may also be good for making colors."; mes "Now everyone is running around in the woods to harvest the herbs.\""; close; + +L_cave: + mes "[Alice]"; + mes "\"Haha, that is no monster! It's just a sweet little cat.\""; + next; + menu + "But it wanted to kill me!", -, + "A cat!? I'll go and kill it!", -; + mes "[Alice]"; + mes "\"No no, I'm sure it was only frightened. It gets upset when you've got clothes or weapons on you.\""; + next; + menu + "Ok, let's try it without clothes then", -, + "What a stupid cat!", -; + mes "[Alice]"; + mes "\"Please don't do her any harm. See you later!\""; + next; + close; + +L_cat: + mes "[Alice]"; + mes "\"You would have to tame her first. Maybe she's thirsty or hungry. Cats also tend to get bored without something to play with. Good luck!\""; + next; + menu "Thank you so much!", close, + "Are you crazy? Taming a cat?", -; + mes "[Alice]"; + mes "\"Well, it's up to you.\""; + next; + close; } diff --git a/npc/015-1_Woodland/barrier.txt b/npc/015-1_Woodland/barrier.txt new file mode 100644 index 00000000..beeeb976 --- /dev/null +++ b/npc/015-1_Woodland/barrier.txt @@ -0,0 +1,7 @@ +// This barrier is for checking whether the player went outside after +// progressing with the cat quest. + +015-1.gat,59,32,0 script #CatOutsideBarrier 127,1,1,{ + set KatzeBeenOutside, 1; + close; +} diff --git a/npc/015-3/_import.txt b/npc/015-3/_import.txt new file mode 100644 index 00000000..ad76971d --- /dev/null +++ b/npc/015-3/_import.txt @@ -0,0 +1,6 @@ +map: 015-3.gat +npc: npc/015-3/_mobs.txt +npc: npc/015-3/_warps.txt +npc: npc/015-3/barrier.txt +npc: npc/015-3/katze.txt +npc: npc/015-3/pot.txt diff --git a/npc/015-3/_mobs.txt b/npc/015-3/_mobs.txt new file mode 100644 index 00000000..7ed7bc67 --- /dev/null +++ b/npc/015-3/_mobs.txt @@ -0,0 +1,27 @@ +// 015-3 mobs + +015-3.gat,21,25,3,4 monster Bats 1017,2,0,0,Mob015-3::On1017 +015-3.gat,29,31,2,2 monster Maggots 1002,2,0,0,Mob015-3::On1002 +015-3.gat,23,19,1,1 monster Maggots 1002,1,0,0,Mob015-3::On1002 +015-3.gat,40,19,1,1 monster Spider 1012,1,0,0,Mob015-3::On1012 +015-3.gat,29,35,2,1 monster Spider 1012,1,0,0,Mob015-3::On1012 + + +015-3.gat,0,0,0 script Mob015-3 -1,{ +On1002: + set @mobID, 1002; + callfunc "MobPoints"; + break; + +On1012: + set @mobID, 1012; + callfunc "MobPoints"; + break; + +On1017: + set @mobID, 1017; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/015-3/_warps.txt b/npc/015-3/_warps.txt new file mode 100644 index 00000000..90107d63 --- /dev/null +++ b/npc/015-3/_warps.txt @@ -0,0 +1,3 @@ +// 015-3 warps + +015-3.gat,31,37 warp to 015-1 -1,-1,015-1.gat,59,32 diff --git a/npc/015-3/barrier.txt b/npc/015-3/barrier.txt new file mode 100644 index 00000000..d532a473 --- /dev/null +++ b/npc/015-3/barrier.txt @@ -0,0 +1,29 @@ +// You can only enter the cat cave naked, otherwise the cat's reaction scares +// you away. Wearing a ring or amulet should be ok, but no checks are in for +// that yet. + +015-3.gat,31,36,0 script #CatCaveBarrier 127,1,1,{ + + if ((getequipid(equip_head) > 0 && getequipid(equip_head) != 1217) || + getequipid(equip_shield) > 0 || + getequipid(equip_hand1) > 0 || + getequipid(equip_hand2) > 0 || + getequipid(equip_gloves) > 0 || + getequipid(equip_shoes) > 0 || + getequipid(equip_misc1) > 0 || + getequipid(equip_misc2) > 0 || + getequipid(equip_torso) > 0 || + getequipid(equip_legs) > 0) goto L_Not_Naked; + + if (LastHiss != 2) mes "\"Hissss...\""; + set LastHiss, 2; + close; + +L_Not_Naked: + warp "015-1.gat", 60, 32; + set LastHiss, 1; + mes "\"GRAAUWL! Hissss...\""; + mes "Scared of what you hear, you flee back outside."; + next; + close; +} diff --git a/npc/015-3/katze.txt b/npc/015-3/katze.txt new file mode 100644 index 00000000..c24a9f80 --- /dev/null +++ b/npc/015-3/katze.txt @@ -0,0 +1,207 @@ +// Katze doesn't like the player at first, needs following: +// +// 1. Some milk +// 2. Some steak or chicken leg +// 3. Some fur +// +// Now the cat starts to speak, still needs: +// +// 4. Some wood for scratching +// 5. Some stuff for making somethings nice for the player: +// +// * 2 Snake skins +// * 2 Snake tongues +// * 2 Maggot slimes +// * 2 White furs +// * 2 Hard spikes +// * 2 Tiny potions + +015-3.gat,32,25,0 script Katze 172, { + + if (Katze == 1 && KatzeBeenOutside == 1) goto L_NeedsFood; + if (Katze == 1) goto L_PreNeedsFood; + + if (Katze == 2 && KatzeBeenOutside == 1) goto L_NeedsFur; + if (Katze == 2) goto L_PreNeedsFur; + + if (Katze == 3) goto L_NeedsWood; + + if (Katze == 4 && KatzeBeenOutside == 1) goto L_NeedsStuff; + if (Katze == 4) goto L_PreNeedsStuff; + + if (Katze == 5) goto L_NeedsStuff2; + + if (Katze == 6 && KatzeBeenOutside == 1) goto L_GainEars; + if (Katze == 6) goto L_PreGainEars; + + if (Katze == 7) goto L_Finished; + +L_NeedsMilk: + mes "[Katze]"; + mes "\"Meow.\""; + next; + menu "Throw a stone at the cat", L_ThrowStone, + "Leave the cat alone", -; + close; + +L_ThrowStone: + set Katze, 0; + // Maybe make sure not to kill the player, since this has an issue. The + // text below will remain in the NPC dialog until it is used again. + heal -100,0; + warp "015-1.gat", 60, 32; + mes "\"GRAAUWL! Hissss...\""; + mes "Yikes, the cat attacked you! Your whole body is scratched. Maybe throwing a stone wasn't such a great idea..."; + next; + close; + +L_PreNeedsFood: +L_NeedsFood: + mes "[Katze]"; + mes "\"Meow, prrrr...\""; + next; + menu "Throw a stone at the cat", L_ThrowStone, + "Leave the cat alone", -; + close; + +L_PreNeedsFur: +L_NeedsFur: + mes "[Katze]"; + mes "\"Prrr. Meow, prrr...\""; + next; + + if (countitem(611) > 0) // White Fur + menu "Make funny movements with the fur near the ground", L_MoveFur, + "Throw a stone at the cat", L_ThrowStone, + "Leave the cat alone", -; + if (countitem(611) == 0) + menu "Throw a stone at the cat", L_ThrowStone, + "Leave the cat alone", -; + close; + +L_MoveFur: + delitem 611, 1; // Cat takes the white fur + set Katze, 3; + mes "The cat jumps at the fur! You quickly let go of it. The cat happily returns to its spot, carrying the fur in its mouth."; + next; + mes "The cat drops the fur and looks at you with half opened eyes. Suddenly she starts talking, and says: \"That was very kind of you.\" She seems to be smiling."; + next; + close; + +L_NeedsWood: + mes "[Katze]"; + mes "\"Prrrr, now I'd like something to sharpen my claws on.\""; + next; + + if (countitem(569) > 0) // Raw log + menu "Want this piece of wood?", L_GiveWood, + "Ok, see you later", -; + close; + +L_GiveWood: + mes "[Katze]"; + mes "\"Sure! Please put it next to the pot.\""; + next; + close; + +L_PreNeedsStuff: + mes "The cat is still eyeing the piece of wood. She probably needs to be left alone for a bit again."; + next; + close; + +L_NeedsStuff: + set Katze, 5; + mes "[Katze]"; + mes "\"You've been really kind to me. I can make you something nice, but I will need"; + mes "2 snake skins,"; + mes "2 snake tongues,"; + mes "2 maggot slimes,"; + mes "2 white furs,"; + mes "2 hard spikes and"; + mes "2 tiny healing potions.\""; + next; + close; + +L_NeedsStuff2: + mes "[Katze]"; + mes "\"Did you bring what I asked you for?\""; + next; + menu "Look here", L_CatChecksStuff, + "What do you need again?", L_WhatsNeeded, + "No, I haven't got everything yet", -; + close; + +L_WhatsNeeded: + mes "[Katze]"; + mes "\"Actually, you should have remembered yourself.\""; + next; + menu "Please tell me", L_Please, + "Never mind", -; + close; + +L_Please: + mes "[Katze]"; + mes "\"Alright... [the cat glares at you] it was"; + mes "2 snake skins,"; + mes "2 snake tongues,"; + mes "2 maggot slimes,"; + mes "2 white furs,"; + mes "2 hard spikes and"; + mes "2 tiny healing potions.\""; + next; + close; + +L_CatChecksStuff: + if (countitem(641) > 1 && // Snake skin + countitem(710) > 1 && // Snake tongue + countitem(505) > 1 && // Maggot slime + countitem(611) > 1 && // White fur + countitem(613) > 1 && // Hard spike + countitem(684) > 1) // Tiny healing potion + goto L_GiveStuff; + mes "[Katze]"; + mes "\"You don't seem to have everything yet. Come back later when you do.\""; + next; + close; + +L_GiveStuff: + delitem 641, 2; + delitem 710, 2; + delitem 505, 2; + delitem 611, 2; + delitem 613, 2; + delitem 684, 2; + set Katze, 6; + set KatzeBeenOutside, 0; + mes "[Katze]"; + mes "\"Nicely done! Now leave me alone for a while, I need some time to prepare your present.\""; + next; + close; + +L_PreGainEars: + mes "[Katze]"; + mes "\"Please leave me alone for a while, so I can prepare your present.\""; + next; + close; + +L_GainEars: + getitem 1217, 1; // Cat ears + set @xpval, 5000; + getexp @xpval, 0; + set Katze, 7; + mes "[Katze]"; + mes "\"Look what I made for you! It makes you look a bit like me! Maybe it will give you a feeling of what it is like to be a cat.\""; + mes "The cat winks at you."; + mes "[You gain " + @xpval + " experience points]"; + next; + close; + +L_Finished: + mes "[Katze]"; + if (getequipid(equip_head) == 1217) // Cat ears + mes "\"Meow, fellow cat.\""; + if (getequipid(equip_head) != 1217) + mes "\"Meow. Lost your ears?\""; + next; + close; +} diff --git a/npc/015-3/pot.txt b/npc/015-3/pot.txt new file mode 100644 index 00000000..bf3bd945 --- /dev/null +++ b/npc/015-3/pot.txt @@ -0,0 +1,111 @@ +// The pot where the player can deposit stuff for the cat. + +015-3.gat,37,29,0 script Pot 127, { + + if (Katze > 0) + mes "It's that old pot again."; + if (Katze == 0) + mes "It's a pot."; + next; + + if (Katze == 1 && KatzeBeenOutside == 1) goto L_NeedsFood; + if (Katze == 1) goto L_HasMilk; + + if (Katze == 2 && KatzeBeenOutside == 1) goto L_NeedsFur; + if (Katze == 2) goto L_HasFood; + + if (Katze == 3) goto L_NeedsWood; + + if (Katze == 4 && KatzeBeenOutside == 0) goto L_HasWood; + if (Katze >= 4) goto L_Finished; + +L_NeedsMilk: + if (countitem(527) > 0) + menu + "Pour in some milk", L_GiveMilk, + "Leave it alone", -; + close; + +L_GiveMilk: + delitem 527, 1; + set Katze, 1; + set KatzeBeenOutside, 0; + close; + +L_HasMilk: + mes "There is milk in it."; + next; + close; + +L_NeedsFood: + mes "The milk is gone!"; + next; + + if (countitem(562) > 0 && countitem(676) > 0) + menu + "Put in a chicken leg", L_GiveChicken, + "Put in a steak", L_GiveSteak, + "Leave it alone", -; + if (countitem(562) > 0 && countitem(676) == 0) + menu + "Put in a chicken leg", L_GiveChicken, + "Leave it alone", -; + if (countitem(562) == 0 && countitem(676) > 0) + menu + "Put in a steak", L_GiveSteak, + "Leave it alone", -; + close; + +L_GiveChicken: + delitem 562, 1; + set Katze, 2; + set KatzeBeenOutside, 0; + close; + +L_GiveSteak: + delitem 676, 1; + set Katze, 2; + set KatzeBeenOutside, 0; + close; + +L_HasFood: + mes "There is some food in it."; + next; + close; + +L_NeedsFur: + mes "And it's empty!"; + next; + + if (countitem(611) > 0) // White Fur + menu "Put a white fur next to the pot", L_GiveFur, + "Leave it alone", -; + close; + +L_GiveFur: + mes "You put down the fur, but the cat doesn't seem to take any notice. Maybe there's something else you could do. You pick the fur up again."; + next; + close; + +L_NeedsWood: + if (countitem(569) > 0) // Raw log + menu "Put a wooden log next to the pot", L_GiveWood, + "Leave it alone", -; + close; + +L_GiveWood: + delitem 569, 1; + set Katze, 4; + set KatzeBeenOutside, 0; + mes "You put the wooden log next to the pot. The cat eyes it suspiciously, but remains on her spot."; + next; + close; + +L_HasWood: + mes "A wooden log is patiently lying next to it."; + next; + close; + +L_Finished: + close; +} diff --git a/npc/_import.txt b/npc/_import.txt index 626ecc37..142fd3ec 100644 --- a/npc/_import.txt +++ b/npc/_import.txt @@ -29,6 +29,7 @@ import: npc/013-3_Cave/_import.txt import: npc/014-1_Woodland/_import.txt import: npc/014-3_Cave/_import.txt import: npc/015-1_Woodland/_import.txt +import: npc/015-3/_import.txt import: npc/016-1_Woodland/_import.txt import: npc/017-1_Woodland_hills/_import.txt import: npc/018-1_Woodland_mining_camp/_import.txt -- cgit v1.2.3-60-g2f50 From a991a5d8865c9b4c058d1900e8c4a07a09f31081 Mon Sep 17 00:00:00 2001 From: Bjørn Lindeijer Date: Sun, 11 Jan 2009 21:37:28 +0100 Subject: eathena.sh and eathena-monitor corrections When the monitor didn't find the configuration, it didn't print out the path it actually tried. The shell script was modified to actually pass the path to the configuration to the monitor, otherwise it can't find this itself when the 'workdir' doesn't match its default value. --- eathena-monitor.c | 2 +- eathena.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/eathena-monitor.c b/eathena-monitor.c index 3ab7f0f2..8e9d985c 100644 --- a/eathena-monitor.c +++ b/eathena-monitor.c @@ -79,7 +79,7 @@ int read_config(char *filename) { int errors = 0; if ( !(input = fopen(filename,"r")) && !(input = fopen (config, "r"))) { - fprintf (stderr, "ERROR: Config file doesn't exist (%s and %s), using builtin defaults\n",filename,CONFIG); + fprintf (stderr, "ERROR: Config file doesn't exist (%s and %s), using builtin defaults\n", filename, config); return -1; } diff --git a/eathena.sh b/eathena.sh index edfabf9c..31c3a860 100755 --- a/eathena.sh +++ b/eathena.sh @@ -20,7 +20,7 @@ cd ${SRVHOMEDIR} eathena_start() { if [ -x ${SRVHOMEDIR}/eathena-monitor ]; then echo "Starting eathena monitor..." - ${SRVHOMEDIR}/eathena-monitor + ${SRVHOMEDIR}/eathena-monitor ${SRVHOMEDIR}/conf/eathena-monitor.conf else echo "Eathena monitor binary is not executable or not found." fi } -- cgit v1.2.3-60-g2f50 From 89032c4b8eda2d1bf03a8543d8e413d908bb9f56 Mon Sep 17 00:00:00 2001 From: Jared Adams Date: Sun, 11 Jan 2009 14:16:10 +0000 Subject: Add new hair styles to the barber. --- npc/functions/barber.txt | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/npc/functions/barber.txt b/npc/functions/barber.txt index 0edaab73..57c3c598 100644 --- a/npc/functions/barber.txt +++ b/npc/functions/barber.txt @@ -6,10 +6,9 @@ function script Barber { "Change my color", L_Color, "Nah, I'm fine", L_Done; + goto L_Done; + L_Style: - if (Sex == 0) goto L_Style_Female; - -L_Style_Male: menu "Bald", -, "Ponytail", -, @@ -18,27 +17,18 @@ L_Style_Male: "Emo", -, "Mohawk", -, "Pompadour", -, - "Center parting", -, - "Supprise me", -, - "Nah, I'm fine", close; - goto L_Process_Style; - -L_Style_Female: - menu - "Bald", -, + "Center parting/Short and slick", -, "Long and slick", -, "Short and curly", -, - "Ponytail", -, - "Pigtails", -, "Long and curly", -, + "Pigtails", -, "Parted", -, - "Short and slick", -, "Supprise me", -, "Nah, I'm fine", L_Done; L_Process_Style: set @style, @menu - 1; - if (@style == 8) set @style, rand(8); + if (@style == 13) set @style, rand(13); setlook 1, @style; return; -- cgit v1.2.3-60-g2f50 From e2c6be1af4ef8749412d153805bb1e8da97630e8 Mon Sep 17 00:00:00 2001 From: Bjørn Lindeijer Date: Sun, 11 Jan 2009 23:24:57 +0100 Subject: Always allow entering cave when wearing cat ears Regardless of other equipment. --- npc/015-3/barrier.txt | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/npc/015-3/barrier.txt b/npc/015-3/barrier.txt index d532a473..4039e9f5 100644 --- a/npc/015-3/barrier.txt +++ b/npc/015-3/barrier.txt @@ -1,10 +1,9 @@ // You can only enter the cat cave naked, otherwise the cat's reaction scares -// you away. Wearing a ring or amulet should be ok, but no checks are in for -// that yet. +// you away. You can also get in while wearing the cat ears. 015-3.gat,31,36,0 script #CatCaveBarrier 127,1,1,{ - if ((getequipid(equip_head) > 0 && getequipid(equip_head) != 1217) || + if (getequipid(equip_head) != 1217 && (getequipid(equip_head) > 0 || getequipid(equip_shield) > 0 || getequipid(equip_hand1) > 0 || getequipid(equip_hand2) > 0 || @@ -13,7 +12,7 @@ getequipid(equip_misc1) > 0 || getequipid(equip_misc2) > 0 || getequipid(equip_torso) > 0 || - getequipid(equip_legs) > 0) goto L_Not_Naked; + getequipid(equip_legs) > 0)) goto L_Not_Naked; if (LastHiss != 2) mes "\"Hissss...\""; set LastHiss, 2; -- cgit v1.2.3-60-g2f50 From 5db6cb7d6c09dbb091edbdf21a3e0e3feae3175a Mon Sep 17 00:00:00 2001 From: Jared Adams Date: Sun, 11 Jan 2009 16:47:18 +0000 Subject: Add cotton boots to Selim and Candide --- npc/001-1_Tulimshar/bleacher.txt | 6 ++++++ npc/009-2_Hurnscald/selim.txt | 7 +++++++ 2 files changed, 13 insertions(+) diff --git a/npc/001-1_Tulimshar/bleacher.txt b/npc/001-1_Tulimshar/bleacher.txt index 48b5c6c6..67ea1497 100644 --- a/npc/001-1_Tulimshar/bleacher.txt +++ b/npc/001-1_Tulimshar/bleacher.txt @@ -29,6 +29,7 @@ L_bleach_menu: "Silk robe", L_robe, "Cotton headband", L_cotton_headband, "Desert hat", L_desert_hat, + "Cotton boots", L_cotton_boots, "Nevermind", -; goto L_close; @@ -74,6 +75,11 @@ L_desert_hat: set @normal, 723; set @dyeBase, 2130; goto L_choose_color; + +L_cotton_boots: + set @normal, 735; + set @dyeBase, 2150; + goto L_choose_color; L_choose_color: mes "[Candide]"; diff --git a/npc/009-2_Hurnscald/selim.txt b/npc/009-2_Hurnscald/selim.txt index cc7a8863..14eac5b9 100644 --- a/npc/009-2_Hurnscald/selim.txt +++ b/npc/009-2_Hurnscald/selim.txt @@ -28,6 +28,7 @@ L_clothes_choice: "Silk robe", L_robe, "Cotton headband", L_headband, "Desert hat", L_desert_hat, + "Cotton boots", L_cottonboots, "I'm fine for now, thanks.", -; close; @@ -93,6 +94,12 @@ L_desert_hat: set @name$, "desert hat"; goto L_picked_item; +L_cottonboots: + set @del, 735; + set @new, 2150; + set @name$, "cotton boots"; + goto L_picked_item; + L_picked_item: if (countitem(@del) == 0) goto L_havenone; L_colour: -- cgit v1.2.3-60-g2f50 From f91d834dbf58b44af5a6fc8e903aa8f4d654c496 Mon Sep 17 00:00:00 2001 From: Jared Adams Date: Mon, 12 Jan 2009 11:35:42 +0000 Subject: Adjust Sandra to need 5 normal stingers and 1 red Inventory size check was also adjusted to be smarter about arrows and more consice. --- npc/001-1_Tulimshar/sandra.txt | 56 ++++++++++++++++++++++-------------------- 1 file changed, 29 insertions(+), 27 deletions(-) diff --git a/npc/001-1_Tulimshar/sandra.txt b/npc/001-1_Tulimshar/sandra.txt index 048bfa19..314e009a 100644 --- a/npc/001-1_Tulimshar/sandra.txt +++ b/npc/001-1_Tulimshar/sandra.txt @@ -4,31 +4,31 @@ if(Scorp == 2) goto L_Done; if(Scorp == 1) goto L_Progress; - set @TEMP,rand(3); + set @TEMP, rand(4); + if(@TEMP == 0) goto L_Opening0; if(@TEMP == 1) goto L_Opening1; if(@TEMP == 2) goto L_Opening2; if(@TEMP == 3) goto L_Opening3; - if(@TEMP == 0) goto L_Opening4; -L_Opening1: +L_Opening0: mes "[Sandra]"; - mes "\"In the outskirts of Tulimshar, there wanders a red scorpion. I need a favor, please help me. Will you?\""; + mes "\"In the outskirts of Tulimshar, there are some scorpions. I need a favor, please help me. Will you?\""; next; goto L_Ask; -L_Opening2: +L_Opening1: mes "[Sandra]"; - mes "\"When you venture in the outskirts of Tulimshar, you can spot a red scorpion. Will you help me kill one?\""; + mes "\"When you venture in the outskirts of Tulimshar, you can spot scorpions. Will you help me kill some?\""; next; goto L_Ask; -L_Opening3: +L_Opening2: mes "[Sandra]"; - mes "\"The red scorpion stinger carries many properties used in potions. Will you get some for me?\""; + mes "\"The scorpion stinger carries many properties used in potions. Will you get some for me?\""; next; goto L_Ask; -L_Opening4: +L_Opening3: mes "[Sandra]"; mes "\"You look sturdy enough, will you help me get something?\""; next; @@ -40,26 +40,26 @@ L_Ask: "No", L_No; L_Yes: - if(@TEMP == 1) goto L_Req1; - if(@TEMP == 2) goto L_Req2; - if(@TEMP == 3) goto L_Req3; + set @TEMP, rand(3); if(@TEMP == 0) goto L_Req1; + if(@TEMP == 1) goto L_Req2; + if(@TEMP == 2) goto L_Req3; -L_Req1: +L_Req0: mes "[Sandra]"; - mes "\"I need you to slaughter the red scorpion found outside of Tulimshar and bring me 5 [Red Stingers].\""; + mes "\"I need 5 [Scorpion Stingers] and 1 [Red Scoprion Stinger].\""; next; goto L_Set; -L_Req2: +L_Req1: 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].\""; + mes "\"I heard a while ago that scorpion stingers can be used for medical purposes. I need you to help me get 5 [Scorpion Stingers] and 1 [Red Scoprion Stinger].\""; next; goto L_Set; -L_Req3: +L_Req2: mes "[Sandra]"; - mes "\"Bring me 5 [Red Stingers] and i will reward you greatly.\""; + mes "\"Bring me 5 [Scorpion Stingers] and 1 [Red Scoprion Stinger]. I'll give you something if you do.\""; next; goto L_Set; @@ -70,23 +70,25 @@ L_Set: close; L_Progress: - if (countitem(517) >= 5) goto L_Have; - mes "[Sandra]"; - mes "\"Please hurry and bring me 5 [Red Stingers].\""; - close; - -L_Have: + if (countitem(507) < 5) goto L_NotEnough; + if (countitem(517) < 1) goto L_NotEnough; mes "[Sandra]"; mes "\"Excellent!"; - mes "You brought me 5 [Red Stingers]!\""; + mes "You brought me 5 [Scorpion Stingers] and 1 [Red Scoprion Stinger]!\""; getinventorylist; - if (@inventorylist_count == 100 && countitem(517) > 5) goto L_TooMany; - delitem 517, 5; + if ((@inventorylist_count - (countitem(507) == 5) - (countitem(517) == 1)) > 99 - (countitem(1199) == 0)) goto L_TooMany; + delitem 507, 5; + delitem 517, 1; getitem 1200, 1; getitem 1199, 100; set Scorp, 2; close; +L_NotEnough: + mes "[Sandra]"; + mes "\"Please hurry and bring me 5 [Scorpion Stingers] and 1 [Red Scoprion Stinger].\""; + close; + L_Done: mes "[Sandra]"; mes "\"Thank you for all your help!\""; -- cgit v1.2.3-60-g2f50 From d66e5af9f0024f897a8d239aa5100b30c487a45b Mon Sep 17 00:00:00 2001 From: Bjørn Lindeijer Date: Mon, 12 Jan 2009 20:57:52 +0100 Subject: Added long corridor to cat cave So that you can't click on the pot while standing in the entrance. Also removed one spider since getting killed while talking to an NPC is buggy on the client. --- data/015-3.wlk | Bin 4100 -> 4100 bytes npc/015-1_Woodland/_warps.txt | 2 +- npc/015-3/_mobs.txt | 1 - npc/015-3/_warps.txt | 2 +- npc/015-3/barrier.txt | 2 +- 5 files changed, 3 insertions(+), 4 deletions(-) diff --git a/data/015-3.wlk b/data/015-3.wlk index 9a01b2e2..25ef46b1 100644 Binary files a/data/015-3.wlk and b/data/015-3.wlk differ diff --git a/npc/015-1_Woodland/_warps.txt b/npc/015-1_Woodland/_warps.txt index cb9044e9..75e377a4 100644 --- a/npc/015-1_Woodland/_warps.txt +++ b/npc/015-1_Woodland/_warps.txt @@ -1,4 +1,4 @@ // 015-1 Woodland warps 015-1.gat,93,55 warp ToWoodland -1,0,010-1.gat,15,55 -015-1.gat,59,31 warp to 015_3 -1,-1,015-3.gat,31,36 +015-1.gat,59,31 warp to 015_3 -1,-1,015-3.gat,31,42 diff --git a/npc/015-3/_mobs.txt b/npc/015-3/_mobs.txt index 7ed7bc67..1c1d9941 100644 --- a/npc/015-3/_mobs.txt +++ b/npc/015-3/_mobs.txt @@ -4,7 +4,6 @@ 015-3.gat,29,31,2,2 monster Maggots 1002,2,0,0,Mob015-3::On1002 015-3.gat,23,19,1,1 monster Maggots 1002,1,0,0,Mob015-3::On1002 015-3.gat,40,19,1,1 monster Spider 1012,1,0,0,Mob015-3::On1012 -015-3.gat,29,35,2,1 monster Spider 1012,1,0,0,Mob015-3::On1012 015-3.gat,0,0,0 script Mob015-3 -1,{ diff --git a/npc/015-3/_warps.txt b/npc/015-3/_warps.txt index 90107d63..8b8a83d7 100644 --- a/npc/015-3/_warps.txt +++ b/npc/015-3/_warps.txt @@ -1,3 +1,3 @@ // 015-3 warps -015-3.gat,31,37 warp to 015-1 -1,-1,015-1.gat,59,32 +015-3.gat,31,43 warp to 015-1 -1,-1,015-1.gat,59,32 diff --git a/npc/015-3/barrier.txt b/npc/015-3/barrier.txt index 4039e9f5..3abffbb1 100644 --- a/npc/015-3/barrier.txt +++ b/npc/015-3/barrier.txt @@ -1,7 +1,7 @@ // You can only enter the cat cave naked, otherwise the cat's reaction scares // you away. You can also get in while wearing the cat ears. -015-3.gat,31,36,0 script #CatCaveBarrier 127,1,1,{ +015-3.gat,31,42,0 script #CatCaveBarrier 127,1,1,{ if (getequipid(equip_head) != 1217 && (getequipid(equip_head) > 0 || getequipid(equip_shield) > 0 || -- cgit v1.2.3-60-g2f50