diff options
author | wushin <pasekei@gmail.com> | 2016-04-21 15:37:05 -0500 |
---|---|---|
committer | wushin <pasekei@gmail.com> | 2016-04-23 18:53:23 -0500 |
commit | 3f175b590d284ef413be0be25c7f74392523414b (patch) | |
tree | 2af26d2602696e6623c75dd54bd28a32e0767c0b /world | |
parent | cab5e80475f0fa1370b8587c519bb6b6b7c6190a (diff) | |
download | serverdata-3f175b590d284ef413be0be25c7f74392523414b.tar.gz serverdata-3f175b590d284ef413be0be25c7f74392523414b.tar.bz2 serverdata-3f175b590d284ef413be0be25c7f74392523414b.tar.xz serverdata-3f175b590d284ef413be0be25c7f74392523414b.zip |
Deadmere - Undead Town
Diffstat (limited to 'world')
68 files changed, 179 insertions, 209 deletions
diff --git a/world/map/data/002-2.wlk b/world/map/data/002-2.wlk Binary files differindex 6528a49d..6fabf246 100644 --- a/world/map/data/002-2.wlk +++ b/world/map/data/002-2.wlk diff --git a/world/map/data/015-1.wlk b/world/map/data/015-1.wlk Binary files differindex 3d6b56ec..423858e6 100644 --- a/world/map/data/015-1.wlk +++ b/world/map/data/015-1.wlk diff --git a/world/map/data/016-1.wlk b/world/map/data/016-1.wlk Binary files differindex 0f295b52..c08298a4 100644 --- a/world/map/data/016-1.wlk +++ b/world/map/data/016-1.wlk diff --git a/world/map/data/025-1.wlk b/world/map/data/025-1.wlk Binary files differindex 3338087b..7f2e8c05 100644 --- a/world/map/data/025-1.wlk +++ b/world/map/data/025-1.wlk diff --git a/world/map/data/026-1.wlk b/world/map/data/026-1.wlk Binary files differindex d8beef9c..d232da71 100644 --- a/world/map/data/026-1.wlk +++ b/world/map/data/026-1.wlk diff --git a/world/map/data/026-2.wlk b/world/map/data/026-2.wlk Binary files differnew file mode 100644 index 00000000..6c76df0e --- /dev/null +++ b/world/map/data/026-2.wlk diff --git a/world/map/data/027-2.wlk b/world/map/data/027-2.wlk Binary files differindex bcf88a56..ec3dfafa 100644 --- a/world/map/data/027-2.wlk +++ b/world/map/data/027-2.wlk diff --git a/world/map/data/resnametable.txt b/world/map/data/resnametable.txt index 50a7b029..99852a33 100644 --- a/world/map/data/resnametable.txt +++ b/world/map/data/resnametable.txt @@ -61,6 +61,7 @@ 025-3#025-3.wlk# 025-4#025-4.wlk# 026-1#026-1.wlk# +026-2#026-2.wlk# 027-1#027-1.wlk# 027-2#027-2.wlk# 027-3#027-3.wlk# diff --git a/world/map/npc/001-2/_nodes.txt b/world/map/npc/001-2/_nodes.txt index 5a5cdeac..9d4b5dab 100644 --- a/world/map/npc/001-2/_nodes.txt +++ b/world/map/npc/001-2/_nodes.txt @@ -6,8 +6,8 @@ end; OnInit: setarray .m$, "_N-Alchemy", "001-2", "001-2", "001-2", "001-2"; - setarray .x1, "_N-Alchemy", 98, 92, 98, 92; - setarray .y1, "_N-Alchemy", 76, 76, 89, 89; + setarray .x1, "_N-Alchemy", 92, 98, 92, 98; + setarray .y1, "_N-Alchemy", 76, 89, 89, 76; setarray .x2, "_N-Alchemy", 0, 0, 0, 0; setarray .y2, "_N-Alchemy", 0, 0, 0, 0; setarray .id, "_N-Alchemy", 0, 0, 0, 0; diff --git a/world/map/npc/002-2/_import.txt b/world/map/npc/002-2/_import.txt index 3f90a1d8..e6688c6a 100644 --- a/world/map/npc/002-2/_import.txt +++ b/world/map/npc/002-2/_import.txt @@ -9,7 +9,6 @@ npc: npc/002-2/barber.txt npc: npc/002-2/bleacher.txt npc: npc/002-2/casino.txt npc: npc/002-2/dedication.txt -npc: npc/002-2/eurni.txt npc: npc/002-2/hetchel.txt npc: npc/002-2/imec.txt npc: npc/002-2/inya.txt diff --git a/world/map/npc/002-2/_warps.txt b/world/map/npc/002-2/_warps.txt index c1c72ce6..b3db1c6d 100644 --- a/world/map/npc/002-2/_warps.txt +++ b/world/map/npc/002-2/_warps.txt @@ -11,8 +11,6 @@ 002-2,37,20|warp|-1,-1,002-2,72,31 002-2,72,32|warp|-1,-1,002-2,37,21 002-2,79,70|warp|-1,-1,002-2,34,21 -002-2,40,20|warp|-1,-1,002-2,126,35 -002-2,126,36|warp|-1,-1,002-2,40,21 002-2,75,101|warp|-1,-1,002-1,109,46 002-2,83,101|warp|-1,-1,002-1,115,46 002-2,78,132|warp|-1,-1,002-1,114,36 diff --git a/world/map/npc/002-2/barber.txt b/world/map/npc/002-2/barber.txt index 0ed69626..3de89005 100644 --- a/world/map/npc/002-2/barber.txt +++ b/world/map/npc/002-2/barber.txt @@ -1,5 +1,5 @@ // A barber (later we can make it so certain styles need to come from him, for a price) -002-2,117,30,0|script|Issay|156 +002-2,22,77,0|script|Issay|156 { mes "[Issay the Barber]"; mes "\"Want to change your hairstyle?\""; diff --git a/world/map/npc/002-2/eurni.txt b/world/map/npc/002-2/eurni.txt deleted file mode 100644 index 7e7254ed..00000000 --- a/world/map/npc/002-2/eurni.txt +++ /dev/null @@ -1,49 +0,0 @@ -// - -002-2,22,77,0|script|Eurni|136 -{ - set @halloween_npc_id, $@halloween_npc_eurni; - callfunc "TrickOrTreat"; - - mes "[Eurni the Surgeon]"; - mes "\"Are you tired of who you are?\""; - next; - mes "\"Would you be interested in changing your sex?\""; - next; - - menu - "Please do.", L_Change_Menu, - "Leave my family treasures alone!", L_Close; - -L_Change_Menu: - menu - "Female.", L_Female, - "Male.", L_Male, - "Non-binary.", L_NonBinary; - -L_Female: - set @sex, 0; - goto L_Change; - -L_Male: - set @sex, 1; - goto L_Change; - -L_NonBinary: - set @sex, 3; - goto L_Change; - -L_Change: - if (Sex == @sex) - goto L_Already_Change; - set Sex, @sex; - close; - -L_Already_Change: - mes "[Eurni the Surgeon]"; - mes "\"Umm, you are that gender already.\""; - close; - -L_Close: - close; -} diff --git a/world/map/npc/002-2/mapflags.txt b/world/map/npc/002-2/mapflags.txt index b33ced4f..8f0bef6b 100644 --- a/world/map/npc/002-2/mapflags.txt +++ b/world/map/npc/002-2/mapflags.txt @@ -1 +1,2 @@ 002-2|mapflag|resave|001-1,60,105 +002-2|mapflag|town diff --git a/world/map/npc/015-1/mapflags.txt b/world/map/npc/015-1/mapflags.txt index 7e6513cf..fbf1ed0d 100644 --- a/world/map/npc/015-1/mapflags.txt +++ b/world/map/npc/015-1/mapflags.txt @@ -1 +1,2 @@ 015-1|mapflag|resave|010-1,27,97 +015-1|mapflag|outside diff --git a/world/map/npc/016-1/_import.txt b/world/map/npc/016-1/_import.txt index 63751660..45ca5d79 100644 --- a/world/map/npc/016-1/_import.txt +++ b/world/map/npc/016-1/_import.txt @@ -6,3 +6,4 @@ npc: npc/016-1/_nodes.txt npc: npc/016-1/_warps.txt npc: npc/016-1/gwendolyn.txt npc: npc/016-1/mapflags.txt +npc: npc/016-1/rossy.txt diff --git a/world/map/npc/016-1/_mobs.txt b/world/map/npc/016-1/_mobs.txt index 91c4d96c..f87db1cc 100644 --- a/world/map/npc/016-1/_mobs.txt +++ b/world/map/npc/016-1/_mobs.txt @@ -5,7 +5,6 @@ 016-1,0,0,0,0|monster|Butterfly|1055,10,30ms,20ms 016-1,0,0,0,0|monster|Squirrel|1038,30,20ms,10ms 016-1,0,0,0,0|monster|Mouboo|1028,5,0ms,0ms -016-1,0,0,0,0|monster|Scorpion|1003,15,0ms,0ms 016-1,0,0,0,0|monster|MauvePlant|1029,3,0ms,0ms 016-1,0,0,0,0|monster|MauvePlant|1029,4,270000ms,180000ms 016-1,0,0,0,0|monster|CobaltPlant|1030,3,0ms,0ms diff --git a/world/map/npc/016-1/gwendolyn.txt b/world/map/npc/016-1/gwendolyn.txt index 8276de08..a257e905 100644 --- a/world/map/npc/016-1/gwendolyn.txt +++ b/world/map/npc/016-1/gwendolyn.txt @@ -21,7 +21,7 @@ // 5, state5: you are ready to do the targeting minigame // 6, state6: you did the minigame -016-1,33,45,0|script|Gwendolyn|182 +016-1,91,54,0|script|Gwendolyn|182 { // schoolfee in gp set @SCHOOLFEE, 25000; diff --git a/world/map/npc/016-1/mapflags.txt b/world/map/npc/016-1/mapflags.txt index 4c31651b..90dc43f6 100644 --- a/world/map/npc/016-1/mapflags.txt +++ b/world/map/npc/016-1/mapflags.txt @@ -1 +1,2 @@ 016-1|mapflag|resave|010-1,27,97 +016-1|mapflag|outside diff --git a/world/map/npc/025-1/rossy.txt b/world/map/npc/016-1/rossy.txt index 139781b7..126dd8b9 100644 --- a/world/map/npc/025-1/rossy.txt +++ b/world/map/npc/016-1/rossy.txt @@ -1,6 +1,6 @@ // Authors: alastrim, Ali-g, Dark Mage -025-1,80,88,0|script|Rossy|114 +016-1,32,44,0|script|Rossy|114 { set @child_number, 6; callfunc "XmasList"; diff --git a/world/map/npc/025-1/_import.txt b/world/map/npc/025-1/_import.txt index 9c4af1aa..d5e71948 100644 --- a/world/map/npc/025-1/_import.txt +++ b/world/map/npc/025-1/_import.txt @@ -7,4 +7,3 @@ npc: npc/025-1/_warps.txt npc: npc/025-1/barrier.txt npc: npc/025-1/mapflags.txt npc: npc/025-1/reset.txt -npc: npc/025-1/rossy.txt diff --git a/world/map/npc/025-1/_mobs.txt b/world/map/npc/025-1/_mobs.txt index 259f0568..64c4e62a 100644 --- a/world/map/npc/025-1/_mobs.txt +++ b/world/map/npc/025-1/_mobs.txt @@ -4,10 +4,10 @@ 025-1,100,60,56,79|monster|CloverPatch|1037,3,30000ms,10000ms 025-1,56,96,13,5|monster|CloverPatch|1037,1,1200000ms,10000ms 025-1,56,35,77,33|monster|AlizarinPlant|1032,2,240000ms,12000ms -025-1,55,62,24,13|monster|Snail|1041,7,30000ms,12000ms 025-1,38,84,37,31|monster|Silkworm|1035,18,40000ms,300ms 025-1,96,47,63,55|monster|LogHead|1025,14,18000ms,3000ms 025-1,0,0,0,0|monster|PinkFlower|1014,34,20000ms,5000ms -025-1,0,0,0,0|monster|SpikyMushroom|1019,40,90000ms,500ms -025-1,101,53,55,65|monster|Squirrel|1038,18,60000ms,9000ms -025-1,26,61,15,85|monster|Scorpion|1003,12,100000ms,50000ms +025-1,41,86,35,26|monster|GrassSnake|1034,3,100000ms,50000ms +025-1,78,46,23,28|monster|GrassSnake|1034,3,100000ms,50000ms +025-1,73,84,38,16|monster|GrassSnake|1034,3,100000ms,50000ms +025-1,53,33,59,17|monster|GrassSnake|1034,4,100000ms,50000ms diff --git a/world/map/npc/025-1/mapflags.txt b/world/map/npc/025-1/mapflags.txt index ec0bef1a..8e3a046f 100644 --- a/world/map/npc/025-1/mapflags.txt +++ b/world/map/npc/025-1/mapflags.txt @@ -1 +1,2 @@ -025-1|mapflag|resave|025-1,33,50 +025-1|mapflag|resave|016-1,94,30 +025-1|mapflag|outside diff --git a/world/map/npc/026-1/_import.txt b/world/map/npc/026-1/_import.txt index 72d1a275..ce06afc8 100644 --- a/world/map/npc/026-1/_import.txt +++ b/world/map/npc/026-1/_import.txt @@ -1,8 +1,13 @@ -// Map 026-1: Swamp +// Map 026-1: Deadmere // This file is generated automatically. All manually added changes will be removed when running the Converter. map: 026-1 npc: npc/026-1/_mobs.txt npc: npc/026-1/_nodes.txt npc: npc/026-1/_warps.txt +npc: npc/026-1/evil_guard.txt +npc: npc/026-1/headless_man.txt +npc: npc/026-1/husband.txt npc: npc/026-1/mapflags.txt npc: npc/026-1/sign.txt +npc: npc/026-1/soul-menhir.txt +npc: npc/026-1/traveler.txt diff --git a/world/map/npc/026-1/_mobs.txt b/world/map/npc/026-1/_mobs.txt index 9f4d8325..de57d933 100644 --- a/world/map/npc/026-1/_mobs.txt +++ b/world/map/npc/026-1/_mobs.txt @@ -1,14 +1,17 @@ // This file is generated automatically. All manually added changes will be removed when running the Converter. -// Swamp mobs +// Deadmere mobs 026-1,0,0,0,0|monster|Wisp|1040,34,120000ms,40000ms 026-1,0,0,0,0|monster|Spectre|1042,34,120000ms,40000ms 026-1,0,0,0,0|monster|Poltergeist|1047,34,120000ms,40000ms 026-1,0,0,0,0|monster|Silkworm|1035,10,300000ms,60000ms -026-1,0,0,0,0|monster|Scorpion|1003,15,300000ms,30000ms 026-1,0,0,0,0|monster|LogHead|1025,8,300000ms,40000ms -026-1,46,74,35,26|monster|GrassSnake|1034,2,100000ms,50000ms -026-1,88,36,35,26|monster|GrassSnake|1034,2,100000ms,50000ms -026-1,35,36,18,16|monster|GrassSnake|1034,2,100000ms,50000ms -026-1,66,33,73,17|monster|GrassSnake|1034,4,100000ms,50000ms -026-1,60,76,61,31|monster|GrassSnake|1034,4,100000ms,50000ms +026-1,49,31,56,14|monster|DrunkenSkeleton|1077,4,100000ms,30000ms +026-1,50,31,52,11|monster|TipsySkeleton|1078,4,100000ms,30000ms +026-1,56,77,66,30|monster|DrunkenSkeleton|1077,4,100000ms,30000ms +026-1,57,77,59,23|monster|TipsySkeleton|1078,4,100000ms,30000ms +026-1,110,59,31,74|monster|DrunkenSkeleton|1077,4,100000ms,30000ms +026-1,110,59,28,71|monster|TipsySkeleton|1078,4,100000ms,30000ms +026-1,110,59,31,74|monster|DrunkenLadySkeleton|1079,4,100000ms,30000ms +026-1,57,79,69,32|monster|DrunkenLadySkeleton|1079,4,100000ms,30000ms +026-1,48,31,54,12|monster|DrunkenLadySkeleton|1079,4,100000ms,30000ms diff --git a/world/map/npc/026-1/_nodes.txt b/world/map/npc/026-1/_nodes.txt index 47e3199f..0fb7a7bf 100644 --- a/world/map/npc/026-1/_nodes.txt +++ b/world/map/npc/026-1/_nodes.txt @@ -1,4 +1,4 @@ // This file is generated automatically. All manually added changes will be removed when running the Converter. -// Swamp nodes +// Deadmere nodes // (no nodes) diff --git a/world/map/npc/026-1/_warps.txt b/world/map/npc/026-1/_warps.txt index 7158b0cb..af945881 100644 --- a/world/map/npc/026-1/_warps.txt +++ b/world/map/npc/026-1/_warps.txt @@ -1,5 +1,8 @@ // This file is generated automatically. All manually added changes will be removed when running the Converter. -// Swamp warps +// Deadmere warps 026-1,63,16|warp|-1,-1,027-1,63,105 026-1,129,66|warp|-1,-1,025-1,20,66 +026-1,48,39|warp|-1,-1,026-2,29,33 +026-1,43,24|warp|-1,-1,026-2,31,128 +026-1,25,20|warp|-1,-1,026-2,22,95 diff --git a/world/map/npc/027-2/evil_guard.txt b/world/map/npc/026-1/evil_guard.txt index d035295c..22288b5c 100644 --- a/world/map/npc/027-2/evil_guard.txt +++ b/world/map/npc/026-1/evil_guard.txt @@ -1,4 +1,4 @@ -027-2,100,43,0|script|Blackwin|316 +026-1,50,32,0|script|Blackwin|316 { mes "..."; next; @@ -12,7 +12,7 @@ close; } -027-2,112,37,0|script|Forwin|316 +026-1,29,28,0|script|Forwin|316 { mes "[Evil Guard]"; mes "\"" + strcharinfo(0) + "...\""; diff --git a/world/map/npc/027-2/headless_man.txt b/world/map/npc/026-1/headless_man.txt index fafa17ef..f922406d 100644 --- a/world/map/npc/027-2/headless_man.txt +++ b/world/map/npc/026-1/headless_man.txt @@ -5,7 +5,7 @@ // state 2: items delivered, return for reward and followup story // state 3: quest completed -027-2,22,76,0|script|Thurstan|318 +026-1,34,30,0|script|Thurstan|318 { set @Graveyard_Inn_MASK, NIBBLE_6_MASK; set @Graveyard_Inn_SHIFT, NIBBLE_6_SHIFT; @@ -27,7 +27,7 @@ if (@state == 2) goto L_Quest_finished; if (@state == 1) goto L_Quest_progress; - mes "You see a man, propped up against the foot of the bed."; + mes "You see a man, propped up against the foot of the tree."; mes "In his hand, he is holding what you assume to be his own head."; next; mes "You jump back a bit, startled, as the head starts talking to you!"; diff --git a/world/map/npc/027-2/husband.txt b/world/map/npc/026-1/husband.txt index 8897e697..6dac42a3 100644 --- a/world/map/npc/027-2/husband.txt +++ b/world/map/npc/026-1/husband.txt @@ -9,7 +9,7 @@ // state 6: is set in reid, gives as reward a special bowler hat // state 7: done -027-2,22,84,0|script|Hamond|319 +026-1,40,41,0|script|Hamond|319 { set @Graveyard_Inn_MASK, NIBBLE_3_MASK; set @Graveyard_Inn_SHIFT, NIBBLE_3_SHIFT; @@ -48,7 +48,7 @@ if (@state == 1) goto L_Ice_Cube; mes "[Pale Man]"; - mes "\"Hello, I hope you're enjoying your time in Reid's Inn. My name is Hamond, and I'm running this inn together with my beautiful wife Reid. If there is anything I can do for you, please let me know.\""; + mes "\"Hello, My name is Hamond. I run the inn together with my beautiful wife Reid. If there is anything I can do for you, please let me know.\""; if (BaseLevel < @minLevel) goto L_Close; next; @@ -72,7 +72,7 @@ L_Next: next; mes "\"How can I be dead if I am walking around and talking? This is very strange. \""; next; - mes "\"But nevertheless, I will continue to run this inn and do my best to make all our patrons happy and satisfied - be they alive or dead.\""; + mes "\"But nevertheless, I will continue to run the inn and do my best to make all our patrons happy and satisfied - be they alive or dead.\""; next; menu "Can I help with that?", L_Continue; @@ -121,7 +121,7 @@ L_Check_Ice: mes "[Hamond]"; mes "\"Yes, wonderful! That's exactly what I need.\""; next; - mes "\"I put all my effort in making this inn a well running place for my beloved Reid.\""; + mes "\"I put all my effort in making the inn a run well for my beloved Reid.\""; next; mes "\"You know, she had a very hard childhood.\""; next; diff --git a/world/map/npc/026-1/mapflags.txt b/world/map/npc/026-1/mapflags.txt index 137d6a1c..1a059118 100644 --- a/world/map/npc/026-1/mapflags.txt +++ b/world/map/npc/026-1/mapflags.txt @@ -1 +1,2 @@ -026-1|mapflag|resave|025-1,33,50 +026-1|mapflag|resave|026-1,28,35 +026-1|mapflag|outside diff --git a/world/map/npc/026-1/soul-menhir.txt b/world/map/npc/026-1/soul-menhir.txt new file mode 100644 index 00000000..9b1b87b4 --- /dev/null +++ b/world/map/npc/026-1/soul-menhir.txt @@ -0,0 +1,17 @@ +// + +026-1,29,34,0|script|Soul Menhir#deadmire|351 +{ + set @map$, "026-1"; + setarray @Xs, 28, 29, 30, 28, 30, 28, 30; + setarray @Ys, 32, 33, 34, 32, 34, 32, 34; + set @x, 0; + set @y, 0; + callfunc "SoulMenhir"; + set @map$, ""; + cleararray @Xs[0], 0, 7; + cleararray @Ys[0], 0, 7; + set @x, 0; + set @y, 0; + close; +} diff --git a/world/map/npc/027-1/traveler.txt b/world/map/npc/026-1/traveler.txt index 0c8bb753..de743c14 100644 --- a/world/map/npc/027-1/traveler.txt +++ b/world/map/npc/026-1/traveler.txt @@ -2,7 +2,7 @@ // Author: Wombat, wushin // cost depending on level and adapted to new scripting guidelines: Jenalya -027-1,83,84,0|script|Styx the Traveler|103 +026-1,49,46,0|script|Styx the Traveler|103 { set @npcname$, "Styx"; set @NpcTravelBit, $@graveyard_bit; diff --git a/world/map/npc/026-2/_import.txt b/world/map/npc/026-2/_import.txt new file mode 100644 index 00000000..7cca6e43 --- /dev/null +++ b/world/map/npc/026-2/_import.txt @@ -0,0 +1,19 @@ +// Map 026-2: Swamp Indoors +// This file is generated automatically. All manually added changes will be removed when running the Converter. +map: 026-2 +npc: npc/026-2/_mobs.txt +npc: npc/026-2/_nodes.txt +npc: npc/026-2/_warps.txt +npc: npc/026-2/barman.txt +npc: npc/026-2/cerhan.txt +npc: npc/026-2/crying_child.txt +npc: npc/026-2/diary.txt +npc: npc/026-2/door.txt +npc: npc/026-2/eurni.txt +npc: npc/026-2/golbenez.txt +npc: npc/026-2/gy_inn_shops.txt +npc: npc/026-2/innkeeper.txt +npc: npc/026-2/lover.txt +npc: npc/026-2/mapflags.txt +npc: npc/026-2/testnpcs.txt +npc: npc/026-2/werewolf.txt diff --git a/world/map/npc/026-2/_mobs.txt b/world/map/npc/026-2/_mobs.txt new file mode 100644 index 00000000..a467be33 --- /dev/null +++ b/world/map/npc/026-2/_mobs.txt @@ -0,0 +1,3 @@ +// This file is generated automatically. All manually added changes will be removed when running the Converter. +// Swamp Indoors mobs + diff --git a/world/map/npc/026-2/_nodes.txt b/world/map/npc/026-2/_nodes.txt new file mode 100644 index 00000000..05780dcc --- /dev/null +++ b/world/map/npc/026-2/_nodes.txt @@ -0,0 +1,4 @@ +// This file is generated automatically. All manually added changes will be removed when running the Converter. +// Swamp Indoors nodes + +// (no nodes) diff --git a/world/map/npc/026-2/_warps.txt b/world/map/npc/026-2/_warps.txt new file mode 100644 index 00000000..f9dd3e7e --- /dev/null +++ b/world/map/npc/026-2/_warps.txt @@ -0,0 +1,14 @@ +// This file is generated automatically. All manually added changes will be removed when running the Converter. +// Swamp Indoors warps + +026-2,30,35|warp|2,-1,026-1,48,40 +026-2,23,25|warp|0,-1,026-2,66,25 +026-2,66,26|warp|0,-1,026-2,23,27 +026-2,26,55|warp|0,-1,026-2,23,31 +026-2,23,33|warp|0,-1,026-2,26,56 +026-2,22,96|warp|-1,-1,026-1,25,21 +026-2,41,82|warp|0,-1,026-2,83,95 +026-2,84,96|warp|0,-1,026-2,41,83 +026-2,23,58|warp|-1,-1,026-2,81,57 +026-2,82,57|warp|-1,-1,026-2,24,58 +026-2,31,129|warp|-1,-1,026-1,43,25 diff --git a/world/map/npc/027-2/barman.txt b/world/map/npc/026-2/barman.txt index 6e6b2294..87e28859 100644 --- a/world/map/npc/027-2/barman.txt +++ b/world/map/npc/026-2/barman.txt @@ -1,4 +1,4 @@ -027-2,103,22,0|script|Bennet|310 +026-2,37,24,0|script|Bennet|310 { mes "[Bennet]"; mes "\"Hi there, stranger! My name is Bennet, the bartender here.\""; diff --git a/world/map/npc/027-2/cerhan.txt b/world/map/npc/026-2/cerhan.txt index d2ca3e65..3104e34f 100644 --- a/world/map/npc/027-2/cerhan.txt +++ b/world/map/npc/026-2/cerhan.txt @@ -1,6 +1,6 @@ // Author: Jenalya -027-2,70,77,0|script|Cerhan|311 +026-2,38,118,0|script|Cerhan|311 { mes "[Cerhan]"; mes "\"Ah, hello! It's good to see another normal human at this strange place!\""; diff --git a/world/map/npc/027-2/crying_child.txt b/world/map/npc/026-2/crying_child.txt index 0a7b2396..e65dc716 100644 --- a/world/map/npc/027-2/crying_child.txt +++ b/world/map/npc/026-2/crying_child.txt @@ -2,7 +2,7 @@ // love triangle quest, involved npcs: Reid's Ghost, Hamond, Savaric, Aldred, Golbenez // Jenalya: some changes about variables (setting to zero if only used locally, naming) -027-2,50,92,0|script|Aldred|314 +026-2,67,86,0|script|Aldred|314 { // Crying Child subquest // Variable states: diff --git a/world/map/npc/027-2/diary.txt b/world/map/npc/026-2/diary.txt index e660e992..e5d18ad3 100644 --- a/world/map/npc/027-2/diary.txt +++ b/world/map/npc/026-2/diary.txt @@ -1,7 +1,11 @@ // Author: Jenalya -027-2,26,97,0|script|#Diary|400 +026-2,76,85,0|script|#Diary|400 { + set @npc_distance, 3; + callfunc "PCtoNPCRange"; + if(@npc_check) end; + set @Graveyard_Inn_MASK, NIBBLE_0_MASK; set @Graveyard_Inn_SHIFT, NIBBLE_0_SHIFT; diff --git a/world/map/npc/027-2/door.txt b/world/map/npc/026-2/door.txt index 8452d118..12429a41 100644 --- a/world/map/npc/027-2/door.txt +++ b/world/map/npc/026-2/door.txt @@ -1,4 +1,4 @@ -027-2,25,100,0|script|#DoorIn|45,1,1 +026-2,77,92,0|script|#DoorIn|45,0,0 { set @Graveyard_Inn_MASK, NIBBLE_0_MASK; set @Graveyard_Inn_SHIFT, NIBBLE_0_SHIFT; @@ -10,14 +10,14 @@ end; L_Warp: - warp "027-2", 27, 99; + warp "026-2", 77, 89; set @reid, 0; end; } // TODO replace this with a plain warp -027-2,26,99,0|script|#DoorOut-gyinn|45,1,1 +026-2,77,90,0|script|#DoorOut-gyinn|45,0,0 { - warp "027-2", 23, 98; + warp "026-2", 77, 93; end; } diff --git a/world/map/npc/026-2/eurni.txt b/world/map/npc/026-2/eurni.txt new file mode 100644 index 00000000..d20b64e8 --- /dev/null +++ b/world/map/npc/026-2/eurni.txt @@ -0,0 +1,17 @@ +// + +026-2,20,124,0|script|Eurni|136 +{ + set @halloween_npc_id, $@halloween_npc_eurni; + callfunc "TrickOrTreat"; + + mes "[Eurni the Surgeon]"; + mes "\"Are you tired of who you are?\""; + next; + mes "\"Would you be interested in changing your appearance?\""; + next; + callfunc "Barber"; + mes "[Eurni the Surgeon]"; + mes "\"Come back any time!\""; + close; +} diff --git a/world/map/npc/027-2/golbenez.txt b/world/map/npc/026-2/golbenez.txt index 48e8f828..6cf76de1 100644 --- a/world/map/npc/027-2/golbenez.txt +++ b/world/map/npc/026-2/golbenez.txt @@ -9,7 +9,7 @@ // state 6: wants jackOsouls, random chance of 1/50 to success, small amount of exp for fail // state 7: done -027-2,39,91,0|script|Golbenez|307 +026-2,60,57,0|script|Golbenez|307 { set @Graveyard_Inn_MASK, NIBBLE_4_MASK; set @Graveyard_Inn_SHIFT, NIBBLE_4_SHIFT; diff --git a/world/map/npc/027-2/gy_inn_shops.txt b/world/map/npc/026-2/gy_inn_shops.txt index 20f03d3a..3663d15f 100644 --- a/world/map/npc/027-2/gy_inn_shops.txt +++ b/world/map/npc/026-2/gy_inn_shops.txt @@ -6,13 +6,10 @@ // receptionist: function, // banker: function +026-2,30,56,0|shop|Chef#graveyard|300,ZombieNachos:*1,LadyFingers:*1,JellAhh:*1,Snapple:*1 +026-2,38,30,0|shop|Estrilda|301,BeetleJuice:*1,GutBuster:*1,BloodWine:*1 -027-2,75,22,0|shop|Chef#graveyard|300,ZombieNachos:*1,LadyFingers:*1,JellAhh:*1,Snapple:*1 -027-2,90,36,0|shop|Estrilda|301,BeetleJuice:*1,GutBuster:*1,BloodWine:*1 -027-2,93,22,0|shop|Umfrey|302,BoneArrows:*1,ShockSweet:*1 -027-2,56,99,0|shop|Leofwin|304,CactusDrink:*1,CactusPotion:*1,BugLeg:*1,SmallMushroom:*1,IronPotion:*1,ConcentrationPotion:*1,HardSpike:*1,DarkCrystal:*1,Root:*1,WispPowder:*1,SpectrePowder:*1,PoltergeistPowder:*1 - -027-2,106,22,0|script|Edwin|309 +026-2,40,24,0|script|Edwin|309 { set @npcname$, "Edwin"; @@ -24,7 +21,7 @@ } // Inn -027-2,107,39,0|script|Barbara Grey|320 +026-2,75,23,0|script|Barbara Grey|320 { set @npcname$, "Barbara Grey"; set @cost, 1000; @@ -37,8 +34,11 @@ close; } +026-2,31,119,0|shop|Leofwin|304,CactusDrink:*1,CactusPotion:*1,BugLeg:*1,SmallMushroom:*1,IronPotion:*1,ConcentrationPotion:*1,HardSpike:*1,DarkCrystal:*1,Root:*1,WispPowder:*1,SpectrePowder:*1,PoltergeistPowder:*1 + +026-2,22,120,0|shop|Umfrey|302,BoneArrows:*1,ShockSweet:*1 // Bank and Storage -027-2,88,22,0|script|J.P. Morbid|321 +026-2,25,120,0|script|J.P. Morbid|321 { set @npcname$, "J.P. Morbid"; callfunc "Banker"; diff --git a/world/map/npc/027-2/innkeeper.txt b/world/map/npc/026-2/innkeeper.txt index ac4e867a..b0ff338c 100644 --- a/world/map/npc/027-2/innkeeper.txt +++ b/world/map/npc/026-2/innkeeper.txt @@ -13,7 +13,7 @@ // state 10: she spoke with hamond and savaric, gives reward mylarin dust (needed for a crafting quest in thermin) // state 11: done, can ask about mylarin dust again -027-2,104,39,0|script|Reid's Ghost|315 +026-2,35,84,0|script|Reid's Ghost|315 { set @Graveyard_Inn_MASK, NIBBLE_0_MASK; set @Graveyard_Inn_SHIFT, NIBBLE_0_SHIFT; diff --git a/world/map/npc/027-2/lover.txt b/world/map/npc/026-2/lover.txt index d1ab2a56..f7d84ed5 100644 --- a/world/map/npc/027-2/lover.txt +++ b/world/map/npc/026-2/lover.txt @@ -9,7 +9,7 @@ // state 6: waiting for youl, if @golbanez >= 7 got it, giving sorcerer robe // state 7: done -027-2,43,73,0|script|Savaric|317 +026-2,80,31,0|script|Savaric|317 { set @Graveyard_Inn_MASK, NIBBLE_1_MASK; set @Graveyard_Inn_SHIFT, NIBBLE_1_SHIFT; diff --git a/world/map/npc/026-2/mapflags.txt b/world/map/npc/026-2/mapflags.txt new file mode 100644 index 00000000..36cc5ce9 --- /dev/null +++ b/world/map/npc/026-2/mapflags.txt @@ -0,0 +1,2 @@ +026-1|mapflag|resave|026-1,28,35 +026-2|mapflag|town diff --git a/world/map/npc/027-2/testnpcs.txt b/world/map/npc/026-2/testnpcs.txt index 0d79ef88..8bac0ab0 100644 --- a/world/map/npc/027-2/testnpcs.txt +++ b/world/map/npc/026-2/testnpcs.txt @@ -1,6 +1,6 @@ //several NPCs in the Reid's Inn -027-2,80,34,0|script|Lovers|303 +026-2,64,32,0|script|Lovers|303 { mes "You see a man and a woman holding each other very tight."; next; @@ -12,7 +12,7 @@ close; } -027-2,75,29,0|script|Archibald|306 +026-2,34,59,0|script|Archibald|306 { //the broken grammar is intentional mes "[Archibald]"; @@ -22,7 +22,7 @@ close; } -027-2,77,40,0|script|Darnel|308 +026-2,41,30,0|script|Darnel|308 { set @drunker, rand(4); if (@drunker == 0) goto L_0; @@ -52,7 +52,7 @@ L_Close: close; } -027-2,110,23,0|script|Nigel|312 +026-2,33,29,0|script|Nigel|312 { mes "[Nigel]"; mes "\"Ohh... My head is killing me! I have to stop " diff --git a/world/map/npc/027-2/werewolf.txt b/world/map/npc/026-2/werewolf.txt index 1ecb403c..79701dbb 100644 --- a/world/map/npc/027-2/werewolf.txt +++ b/world/map/npc/026-2/werewolf.txt @@ -1,6 +1,6 @@ // author: Jenalya -027-2,118,23,0|script|Wolfgang|305 +026-2,30,23,0|script|Wolfgang|305 { set @Graveyard_Inn_MASK, NIBBLE_5_MASK; set @Graveyard_Inn_SHIFT, NIBBLE_5_SHIFT; diff --git a/world/map/npc/027-1/_import.txt b/world/map/npc/027-1/_import.txt index 66d24392..7a50aaf6 100644 --- a/world/map/npc/027-1/_import.txt +++ b/world/map/npc/027-1/_import.txt @@ -5,7 +5,5 @@ npc: npc/027-1/_mobs.txt npc: npc/027-1/_nodes.txt npc: npc/027-1/_warps.txt npc: npc/027-1/crypt.txt -npc: npc/027-1/golbenez.txt npc: npc/027-1/graves.txt npc: npc/027-1/mapflags.txt -npc: npc/027-1/traveler.txt diff --git a/world/map/npc/027-1/_mobs.txt b/world/map/npc/027-1/_mobs.txt index 51ce6174..4b422ea6 100644 --- a/world/map/npc/027-1/_mobs.txt +++ b/world/map/npc/027-1/_mobs.txt @@ -17,4 +17,3 @@ 027-1,104,64,31,20|monster|Skeleton|1043,2,60000ms,8000ms 027-1,104,64,31,21|monster|LadySkeleton|1044,2,60000ms,8000ms 027-1,70,40,100,20|monster|VampireBat|1066,15,100000ms,30000ms -027-1,99,90,34,16|monster|GrassSnake|1034,3,100000ms,50000ms diff --git a/world/map/npc/027-1/_warps.txt b/world/map/npc/027-1/_warps.txt index 583d6890..9922f47f 100644 --- a/world/map/npc/027-1/_warps.txt +++ b/world/map/npc/027-1/_warps.txt @@ -1,5 +1,5 @@ // This file is generated automatically. All manually added changes will be removed when running the Converter. // Graveyard warps -027-1,88,84|warp|-1,-1,027-2,26,33 +027-1,88,84|warp|-1,-1,027-2,46,33 027-1,63,106|warp|-1,-1,026-1,63,17 diff --git a/world/map/npc/027-1/crypt.txt b/world/map/npc/027-1/crypt.txt index c6f6a63f..2a67ff24 100644 --- a/world/map/npc/027-1/crypt.txt +++ b/world/map/npc/027-1/crypt.txt @@ -2,7 +2,7 @@ { if (BaseLevel < 60) goto L_Weak; - warp "027-2", 112, 110; + warp "027-2", 36, 110; end; L_Weak: diff --git a/world/map/npc/027-1/golbenez.txt b/world/map/npc/027-1/golbenez.txt deleted file mode 100644 index cfa09fdb..00000000 --- a/world/map/npc/027-1/golbenez.txt +++ /dev/null @@ -1,39 +0,0 @@ -027-1,68,89,0|script|#Golbenez#_M|204 -{ - set @fee, 666; - - mes "[Golbenez]"; - mes "\"Welcome mortal. I finished the creation of the place of leisure.\""; - next; - if (BaseLevel < 60) - goto L_Weak; - mes "\"I will bring you there for a small fee of " + @fee + "GP.\""; - menu - "What? You already got so much money!",L_SoMuchSwag, - "Ok, bring me there.",L_Warp; - -L_SoMuchSwag: - mes "[Golbenez]"; - mes "\"Come back when you've changed your mind. It's a wonderful place.\""; - close; - -L_Warp: - if (Zeny < @fee) - goto L_No_Money; - set Zeny, Zeny - @fee; - warp "027-2", 105, 44; - close; - -L_No_Money: - mes "[Golbenez]"; - mes "\"Don't try to betray me, pitiful human.\""; - next; - mes "\"Come back when you can pay my service.\""; - close; - -L_Weak: - mes "\"It is astonishing how WEAK you humans can be.\""; - next; - mes "\"Come back when you're a bit more experienced.\""; - close; -} diff --git a/world/map/npc/027-1/mapflags.txt b/world/map/npc/027-1/mapflags.txt index ed13545d..790b44a9 100644 --- a/world/map/npc/027-1/mapflags.txt +++ b/world/map/npc/027-1/mapflags.txt @@ -1 +1,2 @@ -027-1|mapflag|resave|025-1,33,50 +027-1|mapflag|resave|026-1,28,35 +027-1|mapflag|outside diff --git a/world/map/npc/027-2/_import.txt b/world/map/npc/027-2/_import.txt index 4cacd2c1..b6bb21d8 100644 --- a/world/map/npc/027-2/_import.txt +++ b/world/map/npc/027-2/_import.txt @@ -5,20 +5,6 @@ npc: npc/027-2/_mobs.txt npc: npc/027-2/_nodes.txt npc: npc/027-2/_warps.txt npc: npc/027-2/alacrius.txt -npc: npc/027-2/barman.txt npc: npc/027-2/caretaker.txt -npc: npc/027-2/cerhan.txt -npc: npc/027-2/crying_child.txt -npc: npc/027-2/diary.txt -npc: npc/027-2/door.txt -npc: npc/027-2/evil_guard.txt -npc: npc/027-2/golbenez.txt -npc: npc/027-2/gy_inn_shops.txt -npc: npc/027-2/headless_man.txt -npc: npc/027-2/husband.txt -npc: npc/027-2/innkeeper.txt -npc: npc/027-2/lover.txt npc: npc/027-2/mapflags.txt -npc: npc/027-2/testnpcs.txt npc: npc/027-2/thurston.txt -npc: npc/027-2/werewolf.txt diff --git a/world/map/npc/027-2/_mobs.txt b/world/map/npc/027-2/_mobs.txt index 1c5a6d51..b0a3cb57 100644 --- a/world/map/npc/027-2/_mobs.txt +++ b/world/map/npc/027-2/_mobs.txt @@ -1,13 +1,7 @@ // This file is generated automatically. All manually added changes will be removed when running the Converter. // Graveyard Indoor mobs -027-2,81,41,11,9|monster|DrunkenSkeleton|1077,1,100000ms,30000ms -027-2,102,99,9,19|monster|TipsySkeleton|1078,1,100000ms,30000ms -027-2,110,26,11,11|monster|TipsySkeleton|1078,1,100000ms,30000ms -027-2,104,28,11,9|monster|DrunkenSkeleton|1077,1,100000ms,30000ms -027-2,89,34,11,9|monster|DrunkenLadySkeleton|1079,1,100000ms,30000ms -027-2,116,26,11,9|monster|DrunkenLadySkeleton|1079,1,100000ms,30000ms -027-2,112,88,28,39|monster|VampireBat|1066,15,100000ms,30000ms -027-2,102,99,9,19|monster|DrunkenSkeleton|1077,1,100000ms,30000ms -027-2,102,99,9,19|monster|TipsySkeleton|1078,1,100000ms,30000ms -027-2,89,34,11,9|monster|TipsySkeleton|1078,1,100000ms,30000ms +027-2,25,99,9,19|monster|TipsySkeleton|1078,1,100000ms,30000ms +027-2,35,88,28,39|monster|VampireBat|1066,15,100000ms,30000ms +027-2,25,99,9,19|monster|DrunkenSkeleton|1077,1,100000ms,30000ms +027-2,25,99,9,19|monster|TipsySkeleton|1078,1,100000ms,30000ms diff --git a/world/map/npc/027-2/_nodes.txt b/world/map/npc/027-2/_nodes.txt index 78bbb5b6..cbf43fea 100644 --- a/world/map/npc/027-2/_nodes.txt +++ b/world/map/npc/027-2/_nodes.txt @@ -1,16 +1,4 @@ // This file is generated automatically. All manually added changes will be removed when running the Converter. // Graveyard Indoor nodes -027-2,0,0,0|script|Node027-2|32767 -{ - end; -OnInit: - setarray .m$, "_N-Alchemy", "027-2"; - setarray .x1, "_N-Alchemy", 51; - setarray .y1, "_N-Alchemy", 100; - setarray .x2, "_N-Alchemy", 0; - setarray .y2, "_N-Alchemy", 0; - setarray .id, "_N-Alchemy", 0; - donpcevent "_N-Alchemy::OnMaybeStart"; - destroy; -} +// (no nodes) diff --git a/world/map/npc/027-2/_warps.txt b/world/map/npc/027-2/_warps.txt index f0ffbfc3..47aaef8b 100644 --- a/world/map/npc/027-2/_warps.txt +++ b/world/map/npc/027-2/_warps.txt @@ -1,9 +1,6 @@ // This file is generated automatically. All manually added changes will be removed when running the Converter. // Graveyard Indoor warps -027-2,26,34|warp|-1,-1,027-1,88,85 -027-2,128,35|warp|0,-1,027-2,75,93 -027-2,76,95|warp|0,-1,027-2,128,36 -027-2,106,46|warp|0,-1,027-1,68,89 -027-2,113,111|warp|4,-1,027-1,28,68 -027-2,113,78|warp|4,-1,027-3,25,68 +027-2,36,111|warp|4,-1,027-1,28,68 +027-2,36,78|warp|4,-1,027-3,25,68 +027-2,46,34|warp|-1,-1,027-1,88,85 diff --git a/world/map/npc/027-2/alacrius.txt b/world/map/npc/027-2/alacrius.txt index d8025a2c..d05f9b54 100644 --- a/world/map/npc/027-2/alacrius.txt +++ b/world/map/npc/027-2/alacrius.txt @@ -1,7 +1,7 @@ // Author: wushin //Starts Crypt Quest -027-2,122,105,0|script|Alacrius|313 +027-2,45,105,0|script|Alacrius|313 { mes "[Alacrius]"; mes "\"Hello, I'm Alacrius. \""; diff --git a/world/map/npc/027-2/caretaker.txt b/world/map/npc/027-2/caretaker.txt index 58d77489..d5e364d4 100644 --- a/world/map/npc/027-2/caretaker.txt +++ b/world/map/npc/027-2/caretaker.txt @@ -2,7 +2,7 @@ // TODO: add dialog/code for giving more letters // Airlia supports receiving an infinate number of letters -027-2,24,25,0|script|Caretaker|159 +027-2,44,25,0|script|Caretaker|159 { set @halloween_npc_id, $@halloween_npc_caretaker; callfunc "TrickOrTreat"; @@ -109,7 +109,7 @@ L_Give_New_Letter_Real: L_Close: close; } -027-2,28,22,0|script|Joan|409 +027-2,48,22,0|script|Joan|409 { mes "[Joan]"; mes "..."; diff --git a/world/map/npc/027-2/mapflags.txt b/world/map/npc/027-2/mapflags.txt index 09b5d28a..6f419bf4 100644 --- a/world/map/npc/027-2/mapflags.txt +++ b/world/map/npc/027-2/mapflags.txt @@ -1 +1,2 @@ -027-2|mapflag|resave|025-1,33,50 +027-2|mapflag|resave|026-1,28,35 +026-2|mapflag|town diff --git a/world/map/npc/027-2/thurston.txt b/world/map/npc/027-2/thurston.txt index ce72104c..a1865797 100644 --- a/world/map/npc/027-2/thurston.txt +++ b/world/map/npc/027-2/thurston.txt @@ -1,6 +1,6 @@ // Vampire Bat Wings Daily -027-2,100,105,0|script|Thurston|302 +027-2,23,105,0|script|Thurston|302 { set @dq_level, 60; set @dq_cost, 45; diff --git a/world/map/npc/027-3/_warps.txt b/world/map/npc/027-3/_warps.txt index 0cfb9f91..d2f23685 100644 --- a/world/map/npc/027-3/_warps.txt +++ b/world/map/npc/027-3/_warps.txt @@ -1,5 +1,5 @@ // This file is generated automatically. All manually added changes will be removed when running the Converter. // Crypt Basement warps -027-3,26,67|warp|2,-1,027-2,112,77 +027-3,26,67|warp|2,-1,027-2,36,77 027-3,126,98|warp|1,-1,027-4,125,18 diff --git a/world/map/npc/055-1/_nodes.txt b/world/map/npc/055-1/_nodes.txt index e6da33ea..4abefb02 100644 --- a/world/map/npc/055-1/_nodes.txt +++ b/world/map/npc/055-1/_nodes.txt @@ -6,10 +6,10 @@ end; OnInit: setarray .m$, "_N-Pumpkin", "055-1", "055-1", "055-1"; - setarray .x1, "_N-Pumpkin", 129, 133, 41; - setarray .y1, "_N-Pumpkin", 23, 27, 22; - setarray .x2, "_N-Pumpkin", 135, 139, 47; - setarray .y2, "_N-Pumpkin", 26, 33, 30; + setarray .x1, "_N-Pumpkin", 129, 41, 133; + setarray .y1, "_N-Pumpkin", 23, 22, 27; + setarray .x2, "_N-Pumpkin", 135, 47, 139; + setarray .y2, "_N-Pumpkin", 26, 30, 33; setarray .id, "_N-Pumpkin", 0, 0, 0; donpcevent "_N-Pumpkin::OnMaybeStart"; destroy; diff --git a/world/map/npc/_import.txt b/world/map/npc/_import.txt index 3d4c89e2..66c59de1 100644 --- a/world/map/npc/_import.txt +++ b/world/map/npc/_import.txt @@ -63,6 +63,7 @@ import: npc/025-1/_import.txt import: npc/025-3/_import.txt import: npc/025-4/_import.txt import: npc/026-1/_import.txt +import: npc/026-2/_import.txt import: npc/027-1/_import.txt import: npc/027-2/_import.txt import: npc/027-3/_import.txt diff --git a/world/map/npc/functions/travelers.txt b/world/map/npc/functions/travelers.txt index aec700d0..c1b7f3fd 100644 --- a/world/map/npc/functions/travelers.txt +++ b/world/map/npc/functions/travelers.txt @@ -121,9 +121,9 @@ L_TravelPlayer: L_TravelGraveyard: set @NextLocationBit, $@graveyard_bit; set @NextLocationCost, (@Cost * $@graveyard_cost); - set @NextLocationMap$, "027-1"; - set @NextLocationX, 84; - set @NextLocationY, 86; + set @NextLocationMap$, "026-1"; + set @NextLocationX, 49; + set @NextLocationY, 45; goto L_TravelChecks; L_TravelMagicHouse: |