2019-08-10 17:30:21 +00:00
// Hyperbolic Rogue -- items, monsters, walls, and lands
2019-03-23 15:42:17 +00:00
// Copyright (C) 2011-2018 Zeno Rogue, see 'hyper.cpp' for details
2019-08-10 17:30:21 +00:00
/** \file content.cpp
* \ brief X - macros for items , monsters , walls , and lands
*
* Add new content at ' add new content here ' so that constants do not change .
* Old things are sorted according to type , but this is not necessary for new content .
*/
2019-03-23 15:42:17 +00:00
# ifndef MONSTER
# define MONSTER(a,b,c,d,e,f,g,h)
# endif
# ifndef WALL
# define WALL(a,b,c,d,e,f,g,h,i)
# endif
# ifndef ITEM
# define ITEM(a,b,c,d,e,f,g,h,i)
# endif
# ifndef LAND
# define LAND(a,b,c,d,e,f,g)
# endif
2019-04-11 19:33:17 +00:00
# ifndef NATIVE
# define NATIVE(x)
# endif
# ifndef REQ
# define REQ(x)
# define REQAS(x,y)
# endif
2019-03-23 15:42:17 +00:00
2019-03-24 00:26:43 +00:00
MONSTER ( 0 , 0 , " no monster " , moNone , ZERO | CF_NOGHOST | CF_NOBLOW , RESERVED , moNone , NULL )
2019-04-20 22:57:24 +00:00
MONSTER ( ' Y ' , 0x4040FF , " Yeti " , moYeti , CF_FACE_UP , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" A big and quite intelligent monster living in the Icy Land. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' W ' , 0xD08040 , " Icewolf " , moWolf , CF_FACE_SIDE , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" A nasty predator from the Icy Land. Contrary to other monsters, "
" it tracks its prey by their heat. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' W ' , 0xD08040 , " Icewolf " , moWolfMoved , CF_MOVED | CF_FACE_SIDE , RESERVED , moNone , " " )
MONSTER ( ' R ' , 0xFF8000 , " Ranger " , moRanger , CF_FACE_UP , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" Rangers take care of the magic mirrors in the Land of Mirrors. "
" They know that rogues like to break these mirrors... so "
" they will attack you! "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' T ' , 0xD0D0D0 , " Rock Troll " , moTroll , CF_FACE_UP | CF_TROLL , RESERVED , moYeti , trollhelp )
MONSTER ( ' G ' , 0x20D020 , " Goblin " , moGoblin , CF_FACE_UP , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" A nasty creature native to the Living Caves. They don't like you "
" for some reason. "
)
2019-03-24 00:26:43 +00:00
MONSTER ( ' S ' , 0xE0E040 , " Sand Worm " , moWorm , ZERO | CF_NOGHOST | CF_NOBLOW | CF_MOUNTABLE | CF_MULTITILE | CF_WORM , RESERVED , moNone , wormdes )
MONSTER ( ' s ' , 0x808000 , " Sand Worm Tail " , moWormtail , ZERO | CF_NOGHOST | CF_NOBLOW | CF_MOUNTABLE | CF_MULTITILE | CF_WORM | CF_INACTIVE , RESERVED , moNone , wormdes )
MONSTER ( ' S ' , 0x808000 , " Sand Worm W " , moWormwait , ZERO | CF_NOGHOST | CF_NOBLOW | CF_MOUNTABLE | CF_MULTITILE | CF_WORM | CF_INACTIVE , RESERVED , moNone , wormdes )
2019-04-20 22:57:24 +00:00
MONSTER ( ' H ' , 0x80FF00 , " Hedgehog Warrior " , moHedge , CF_FACE_UP , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" These warriors of the Forest wield exotic weapons called hedgehog blades. "
" These blades protect them from a frontal attack, but they still can be 'stabbed' "
" easily by moving from one place next to them to another. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' M ' , 0x806050 , " Desert Man " , moDesertman , CF_FACE_UP , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" A tribe of men native to the Desert. They have even tamed the huge Sandworms, who won't attack them. " )
2019-03-24 00:26:43 +00:00
MONSTER ( ' C ' , 0x00FFFF , " Ivy Root " , moIvyRoot , ZERO | CF_NOGHOST | CF_NOBLOW | CF_IGNORE_SMELL | CF_MULTITILE | CF_ANYIVY | CF_IVY | CF_INACTIVE , RESERVED , moNone , ivydes )
MONSTER ( ' C ' , 0xFFFF00 , " Active Ivy " , moIvyHead , ZERO | CF_NOGHOST | CF_NOBLOW | CF_PART | CF_IGNORE_SMELL | CF_MULTITILE | CF_ANYIVY | CF_IVY , RESERVED , moNone , ivydes )
MONSTER ( ' C ' , 0x40FF00 , " Ivy Branch " , moIvyBranch , ZERO | CF_NOGHOST | CF_NOBLOW | CF_PART | CF_IGNORE_SMELL | CF_MULTITILE | CF_ANYIVY | CF_IVY , RESERVED , moNone , ivydes )
MONSTER ( ' C ' , 0x006030 , " Dormant Ivy " , moIvyWait , ZERO | CF_NOGHOST | CF_NOBLOW | CF_PART | CF_NOHIGHLIGHT | CF_IGNORE_SMELL | CF_MULTITILE | CF_ANYIVY | CF_IVY | CF_INACTIVE , RESERVED , moNone , ivydes )
MONSTER ( ' C ' , 0x804000 , " Dead Ivy " , moIvyNext , ZERO | CF_NOGHOST | CF_NOBLOW | CF_PART | CF_NOHIGHLIGHT | CF_IGNORE_SMELL | CF_MULTITILE | CF_ANYIVY | CF_IVY | CF_INACTIVE , RESERVED , moNone , ivydes )
MONSTER ( ' C ' , 0x800000 , " Dead Ivy " , moIvyDead , ZERO | CF_NOGHOST | CF_NOBLOW | CF_PART | CF_NOHIGHLIGHT | CF_IGNORE_SMELL | CF_MULTITILE | CF_ANYIVY | CF_IVY | CF_INACTIVE , RESERVED , moNone , ivydes )
2019-04-20 22:57:24 +00:00
MONSTER ( ' M ' , 0x804000 , " Giant Ape " , moMonkey , CF_FACE_UP , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" This giant ape thinks that you are an enemy. " )
2019-04-20 22:57:24 +00:00
MONSTER ( ' B ' , 0x909000 , " Slime Beast " , moSlime , CF_FACE_UP | CF_NOBLOW | CF_SLIME | CF_IGNORE_SMELL , RESERVED , moSlime , slimehelp )
MONSTER ( ' @ ' , 0xFF80FF , " Mimic " , moMimic , CF_FACE_UP | CF_NOGHOST | CF_NOBLOW | CF_MIMIC | CF_NONLIVING | CF_FRIENDLY | CF_FACING , RESERVED , moNone ,
2019-03-23 15:42:17 +00:00
" A magical being which copies your movements. "
" You feel that it would be much more useful in an Euclidean space. "
)
MONSTER ( ' @ ' , 0xFF8080 , " Mirage (REMOVED) " , moREMOVED , ZERO , RESERVED , moNone ,
" A magical being which copies your movements. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' @ ' , 0x509050 , " Golem " , moGolem , CF_FACE_UP | CF_NOGHOST | CF_GOK | CF_NONLIVING | CF_FRIENDLY | CF_FACING , RESERVED , moNone ,
2019-03-23 15:42:17 +00:00
" You can summon these friendly constructs with a magical process. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' @ ' , 0x509050 , " Golem " , moGolemMoved , CF_FACE_UP | CF_NOGHOST | CF_GOK | CF_NONLIVING | CF_FRIENDLY | CF_FACING | CF_MOVED , RESERVED , moNone ,
2019-03-23 15:42:17 +00:00
" You can summon these friendly constructs with a magical process. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' E ' , 0xD09050 , " Eagle " , moEagle , CF_FACE_SIDE | CF_BIRD | CF_FLYING | CF_IGNORE_PLATE , RESERVED , moEagle ,
2019-03-23 15:42:17 +00:00
" A majestic bird, who is able to fly very fast. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' S ' , 0xFF8080 , " Seep " , moSeep , CF_FACE_SIDE | CF_NOBLOW | CF_SLIME | CF_IGNORE_SMELL , RESERVED , moSlime ,
2019-03-23 15:42:17 +00:00
" A monster who is able to live inside the living cave wall. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' Z ' , 0x804000 , " Zombie " , moZombie , CF_FACE_UP | CF_NONLIVING , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" A typical Graveyard monster. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' G ' , 0xFFFFFF , " Ghost " , moGhost , CF_FACE_SIDE | CF_NOBLOW | CF_NONLIVING | CF_GHOST | CF_FLYING | CF_ATTACK_THRU_VINE | CF_ATTACK_NONADJACENT | CF_IGNORE_PLATE | CF_IGNORE_SMELL | CF_GHOSTMOVER , RESERVED , moGhost ,
2019-03-23 15:42:17 +00:00
" A typical monster from the Graveyard, who moves through walls. \n \n "
" There are also wandering Ghosts. They will appear "
" if you do not explore any new places for a long time (about 100 turns). "
" They can appear anywhere in the game. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' N ' , 0x404040 , " Necromancer " , moNecromancer , CF_FACE_UP , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" Necromancers can raise ghosts and zombies from fresh graves. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' S ' , 0x404040 , " Shadow " , moShadow , CF_FACE_UP | CF_NOBLOW | CF_NONLIVING , RESERVED , moNone ,
2019-03-23 15:42:17 +00:00
" A creepy monster who follows you everywhere in the Graveyard. "
)
2019-03-24 00:26:43 +00:00
MONSTER ( ' T ' , 0x40E040 , " Tentacle " , moTentacle , ZERO | CF_NOGHOST | CF_NOBLOW | CF_MOUNTABLE | CF_MULTITILE | CF_WORM , RESERVED , moNone , tentdes )
MONSTER ( ' t ' , 0x008000 , " Tentacle Tail " , moTentacletail , ZERO | CF_NOGHOST | CF_NOBLOW | CF_MOUNTABLE | CF_MULTITILE | CF_WORM | CF_INACTIVE , RESERVED , moNone , tentdes )
MONSTER ( ' T ' , 0x008000 , " Tentacle W " , moTentaclewait , ZERO | CF_NOGHOST | CF_NOBLOW | CF_MOUNTABLE | CF_MULTITILE | CF_WORM | CF_INACTIVE , RESERVED , moNone , tentdes )
MONSTER ( ' z ' , 0xC00000 , " Tentacle (withdrawing) " , moTentacleEscaping , ZERO | CF_NOGHOST | CF_NOBLOW | CF_MOUNTABLE | CF_MULTITILE | CF_WORM , RESERVED , moNone , tentdes )
2019-04-20 22:57:24 +00:00
MONSTER ( ' P ' , 0xFF8000 , " Cultist " , moCultist , CF_FACE_UP , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" People worshipping Cthulhu. They are very dangerous. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' P ' , 0xFFFF00 , " Fire Cultist " , moPyroCultist , CF_FACE_UP , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" People worshipping Cthulhu. This one is especially dangerous, "
" as he is armed with a weapon which launches fire from afar. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' D ' , 0xFF0000 , " Greater Demon " , moGreater , CF_FACE_UP | CF_DEMON | CF_SLOWMOVER , RESERVED , moYeti , gdemonhelp )
MONSTER ( ' D ' , 0x800000 , " Greater Demon " , moGreaterM , CF_FACE_UP | CF_DEMON | CF_INACTIVE , RESERVED , moLesser , gdemonhelp )
MONSTER ( ' d ' , 0xFF2020 , " Lesser Demon " , moLesser , CF_FACE_UP | CF_DEMON | CF_SLOWMOVER , RESERVED , moYeti , ldemonhelp )
MONSTER ( ' d ' , 0x802020 , " Lesser Demon " , moLesserM , CF_FACE_UP | CF_DEMON | CF_INACTIVE , RESERVED , moLesser , ldemonhelp )
MONSTER ( ' S ' , 0x2070C0 , " Ice Shark " , moShark , CF_FACE_SIDE | CF_SHARK , RESERVED , moShark ,
2019-03-23 15:42:17 +00:00
" This dangerous predator has killed many people, and has been sent to Cocytus. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' W ' , 0xFFFFFF , " Running Dog " , moRunDog , CF_FACE_SIDE , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" This white dog is able to run all the time. It is the only creature "
" able to survive and breed in the Land of Eternal Motion. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' S ' , 0xC00040 , " Demon Shark " , moGreaterShark , CF_FACE_SIDE | CF_NOBLOW | CF_SHARK | CF_IGNORE_SMELL | CF_GHOSTMOVER , RESERVED , moGreaterShark ,
2019-03-23 15:42:17 +00:00
" Demons of Hell do not drown when they fall into the lake in Cocytus. "
" They turn into demonic sharks, enveloped in a cloud of steam. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' S ' , 0xC00040 , " Fire Fairy " , moFireFairy , CF_FACE_UP , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" These fairies would rather burn the forest, than let you get some Fern Flowers. "
" The forest is infinite, after all... \n \n "
" Fire Fairies transform into fires when they die. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' C ' , 0x4000C0 , " Crystal Sage " , moCrystalSage , CF_FACE_UP | CF_UNARMED , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" This being radiates an aura of wisdom. "
" It is made of a beautiful crystal, you would love to take it home. "
" But how is it going to defend itself? Better not to think of it, "
" thinking causes your brain to go hot... \n \n "
" Crystal Sages melt at -30 °C, and they can rise the temperature around you from afar. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' P ' , 0x4040C0 , " Pikeman " , moLancer , CF_FACE_UP , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" When Pikemen move, they attack all cells which are now adjacent to them. "
" Luckily, they can be killed in the same way. \n \n "
" They never move if this would attack their friends. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' F ' , 0xC04040 , " Flail Guard " , moFlailer , CF_FACE_UP , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" This guard of the Emerald Mine is wielding a huge flail. "
" You cannot attack him directly, as the flail would still hit you then. "
" Luckily, you have learned a trick: if you step away from him, "
" he will hit himself with the flail! "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' M ' , 0x404040 , " Miner " , moMiner , CF_FACE_UP , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" Miners have special tools for dealing with the Living Cave. "
" When they die, these tools activate, destroying the living cave "
" around them. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' V ' , 0x421C52 , " Vine Beast " , moVineBeast , CF_FACE_SIDE , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" A beast made of vines! \n \n "
" Vine Beasts turn into vines when they die. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' V ' , 0xFFC0C0 , " Vine Spirit " , moVineSpirit , CF_FACE_SIDE | CF_NOBLOW | CF_SLIME | CF_ATTACK_THRU_VINE | CF_IGNORE_SMELL , RESERVED , moSlime ,
2019-03-23 15:42:17 +00:00
" A spirit living in the vines! \n \n "
" Vine Spirits destroy the vines when they die. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' T ' , 0x803030 , " Dark Troll " , moDarkTroll , CF_FACE_UP | CF_TROLL , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" A Troll without the power of Life. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' E ' , 0xFFFF40 , " Earth Elemental " , moEarthElemental , CF_FACE_UP | CF_NONLIVING , RESERVED , moEarthElemental ,
2019-03-23 15:42:17 +00:00
" A rare unliving construct from the Dead Caves. "
" It instantly destroys cave walls next to its path, and also leaves "
" an impassable wall behind it. You suppose that this impassable wall helps it to "
" escape from some threats. You hope you won't meet these threats... "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' B ' , 0xC04040 , " Red Hyperbug " , moBug0 , CF_FACE_SIDE | CF_BUG | CF_FACING , RESERVED , moBug0 , hivehelp )
MONSTER ( ' B ' , 0x40C040 , " Green Hyperbug " , moBug1 , CF_FACE_SIDE | CF_BUG | CF_FACING , RESERVED , moBug1 , hivehelp )
MONSTER ( ' B ' , 0x4040C0 , " Blue Hyperbug " , moBug2 , CF_FACE_SIDE | CF_BUG | CF_FACING , RESERVED , moBug2 , hivehelp )
MONSTER ( ' W ' , 0x404040 , " Witch Apprentice " , moWitch , CF_FACE_UP | CF_WITCH | CF_POWER , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" A Witch without any special powers. But watch out! She will "
" pick up any basic Orbs on her path, and use their powers. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' W ' , 0xFF4040 , " Speed Witch " , moWitchSpeed , CF_FACE_UP | CF_WITCH | CF_POWER , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" A Witch with a Speed spell. She moves twice as fast as you. Unless you "
" have an Orb of Speed too, of course! "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' W ' , 0xFFFFFF , " Flash Witch " , moWitchFlash , CF_FACE_UP | CF_WITCH | CF_POWER , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" A Witch with a Flash spell. Very dangerous! \n \n "
" Luckily, she never uses the spell if it would kill her friends. "
" She could destroy an Evil Golem, though. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' W ' , 0xFF8000 , " Fire Witch " , moWitchFire , CF_FACE_UP | CF_WITCH | CF_POWER , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" A Witch with a Fire spell. She will leave a trail of fire behind her. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' W ' , 0x8080FF , " Winter Witch " , moWitchWinter , CF_FACE_UP | CF_WITCH | CF_IGNORE_SMELL | CF_GHOSTMOVER | CF_POWER , RESERVED , moWitchWinter ,
2019-03-23 15:42:17 +00:00
" A Witch with a Winter spell. She is able to move through fire. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' W ' , 0x808080 , " Aether Witch " , moWitchGhost , CF_FACE_UP | CF_NOBLOW | CF_WITCH | CF_IGNORE_SMELL | CF_GHOSTMOVER | CF_POWER , RESERVED , moWitchGhost ,
2019-03-23 15:42:17 +00:00
" A Witch with an Aether spell. She is able to move through fire and walls. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' @ ' , 0x905050 , " Evil Golem " , moEvilGolem , CF_FACE_UP | CF_NONLIVING | CF_POWER , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" Somebody has summoned these evil constructs with a magical process. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' @ ' , 0x8080FF , " Knight " , moKnight , CF_FACE_UP | CF_NOGHOST | CF_GOK | CF_FRIENDLY | CF_FACING , RESERVED , moNone , camelothelp )
MONSTER ( ' P ' , 0xD10000 , " Cult Leader " , moCultistLeader , CF_FACE_UP | CF_LEADER , RESERVED , moPirate ,
2019-03-23 15:42:17 +00:00
" These Cultists can push the statues, just like you. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' B ' , 0x909000 , " Slime Beast " , moSlimeNextTurn , CF_FACE_UP , RESERVED , moNone , slimehelp )
MONSTER ( ' @ ' , 0x8080FF , " Knight " , moKnightMoved , CF_FACE_SIDE | CF_NOGHOST | CF_GOK | CF_FRIENDLY | CF_FACING | CF_MOVED , RESERVED , moNone , camelothelp )
MONSTER ( ' @ ' , 0x8B4513 , " Illusion " , moIllusion , CF_FACE_SIDE | CF_NOGHOST | CF_NONLIVING | CF_FRIENDLY | CF_FACING | CF_IGNORE_PLATE , RESERVED , moNone ,
2019-03-23 15:42:17 +00:00
" Illusions are targeted "
" by most monsters, just like yourself, Thumpers, and your friends. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' P ' , 0xD00000 , " Pirate " , moPirate , CF_FACE_UP | CF_LEADER , RESERVED , moPirate ,
2019-03-23 15:42:17 +00:00
" Just a typical hyperbolic pirate. " )
2019-04-20 22:57:24 +00:00
MONSTER ( ' S ' , 0x8080C0 , " Shark " , moCShark , CF_FACE_SIDE | CF_SHARK , RESERVED , moShark , " Just a nasty shark. " )
MONSTER ( ' P ' , 0x0000FF , " Parrot " , moParrot , CF_FACE_SIDE | CF_NOBLOW | CF_SLIME | CF_IGNORE_SMELL , RESERVED , moSlime , " Parrots feel safe in the forests of Caribbean, so they "
2019-03-23 15:42:17 +00:00
" never leave them. But they will help the Pirates by attacking the intruders. " )
2019-03-24 00:26:43 +00:00
MONSTER ( ' S ' , 0xE09000 , " Rock Snake " , moHexSnake , ZERO | CF_NOGHOST | CF_NOBLOW | CF_MOUNTABLE | CF_IGNORE_SMELL | CF_MULTITILE | CF_WORM , RESERVED , moNone , redsnakedes )
MONSTER ( ' s ' , 0xE09000 , " Rock Snake Tail " , moHexSnakeTail , ZERO | CF_NOGHOST | CF_NOBLOW | CF_MOUNTABLE | CF_MULTITILE | CF_WORM | CF_INACTIVE , RESERVED , moNone , redsnakedes )
2019-04-20 22:57:24 +00:00
MONSTER ( ' T ' , 0xC02020 , " Red Troll " , moRedTroll , CF_FACE_UP | CF_TROLL , RESERVED , moYeti , " A kind of Troll native to the Red Rock Valley. " )
MONSTER ( ' B ' , 0xA00000 , " Bomberbird " , moBomberbird , CF_FACE_SIDE | CF_BIRD | CF_FLYING | CF_IGNORE_PLATE , RESERVED , moEagle ,
2019-03-23 15:42:17 +00:00
" Dark red birds who have created the minefield. \n \n "
" They create a mine on the spot where they are killed, provided "
" that the terrain is suitable. Also note that mines are triggered "
" by dead birds falling on them. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' A ' , 0xFFFFFF , " Albatross " , moAlbatross , CF_FACE_SIDE | CF_BIRD | CF_FLYING | CF_IGNORE_PLATE , RESERVED , moEagle ,
2019-03-23 15:42:17 +00:00
" Those large seabirds attack you for some reason. At least they are not "
" as fast as Eagles... "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' B ' , 0x40C000 , " Tame Bomberbird " , moTameBomberbird , CF_FACE_SIDE | CF_NOGHOST | CF_GOK | CF_FRIENDLY | CF_FACING | CF_BIRD | CF_FLYING | CF_IGNORE_PLATE , RESERVED , moTameBomberbird , tamebomberdesc )
MONSTER ( ' B ' , 0x40C000 , " Tame Bomberbird " , moTameBomberbirdMoved , CF_FACE_SIDE | CF_NOGHOST | CF_GOK | CF_FRIENDLY | CF_FACING | CF_BIRD | CF_FLYING | CF_IGNORE_PLATE | CF_MOVED , RESERVED , moTameBomberbird , tamebomberdesc )
MONSTER ( ' G ' , 0xFF0000 , " Palace Guard " , moPalace , CF_FACE_UP | CF_STUNNABLE | CF_HP , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" You have to hit Palace Guards several times to kill them. After each hit, they "
" are pushed away and stunned for some time. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' G ' , 0xC06000 , " Fat Guard " , moFatGuard , CF_FACE_UP | CF_STUNNABLE | CF_HP , RESERVED , moYeti , " Fat guards are too heavy to be pushed away by your hits. " )
MONSTER ( ' G ' , 0xFFFFFF , " Skeleton " , moSkeleton , CF_FACE_UP | CF_NONLIVING | CF_STUNNABLE , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" Skeletons work similar to Palace Guards, but they won't die no matter how many "
" times you hit them. Well, you have to be more creative... \n \n "
" Skeletons attacked outside of their native land, Palace, are stunned for a longer time. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' G ' , 0xC000C0 , " Vizier " , moVizier , CF_FACE_UP | CF_STUNNABLE | CF_HP , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" Viziers are neither pushed away nor stunned. However, you attack them automatically when "
" escaping from them. " )
2019-04-20 22:57:24 +00:00
MONSTER ( ' V ' , 0xC0C0C0 , " Viking " , moViking , CF_FACE_UP | CF_LEADER , RESERVED , moPirate , " Mighty warriors from the Fjord, who can use boats. " )
MONSTER ( ' T ' , 0x00FFFF , " Fjord Troll " , moFjordTroll , CF_FACE_UP | CF_TROLL , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" Fjord Trolls leave a wall when they die, causing the living fjord to rise around it. "
" Contrary to Rock Trolls, items around are not destroyed. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' E ' , 0x0000FF , " Water Elemental " , moWaterElemental , CF_FACE_UP | CF_NOBLOW | CF_NONLIVING , RESERVED , moWaterElemental ,
2019-03-23 15:42:17 +00:00
" Wherever this powerful being goes, the living fjord "
" sinks below water, non-magical boats are destroyed, and fires are extinguished. \n \n "
" As a special case, you can attack the Water Elemental from the water, without drowning immediately. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' M ' , 0xD0D0D0 , " Mouse " , moMouse , CF_FACE_SIDE | CF_NOGHOST | CF_GOK | CF_FRIENDLY | CF_FACING | CF_UNARMED | CF_IGNORE_PLATE , RESERVED , moNone , princessdesc )
MONSTER ( ' M ' , 0xD0D0D0 , " Mouse " , moMouseMoved , CF_FACE_SIDE | CF_NOGHOST | CF_GOK | CF_FRIENDLY | CF_FACING | CF_UNARMED | CF_MOVED , RESERVED , moNone , princessdesc )
MONSTER ( ' P ' , 0xFF80FF , " Prince " , moPrincess , CF_FACE_UP | CF_NOGHOST | CF_PRINCESS | CF_GOK | CF_STUNNABLE | CF_HP | CF_FRIENDLY | CF_FACING | CF_UNARMED , RESERVED , moNone , princessdesc )
MONSTER ( ' P ' , 0xFF80FF , " Princess " , moPrincessMoved , CF_FACE_UP | CF_NOGHOST | CF_PRINCESS | CF_GOK | CF_STUNNABLE | CF_HP | CF_FRIENDLY | CF_FACING | CF_UNARMED | CF_MOVED , RESERVED , moNone , princessdesc )
MONSTER ( ' P ' , 0xFF80FF , " Prince " , moPrincessArmed , CF_FACE_UP | CF_NOGHOST | CF_PRINCESS | CF_GOK | CF_STUNNABLE | CF_HP | CF_FRIENDLY | CF_FACING , RESERVED , moNone , princessdesc )
MONSTER ( ' P ' , 0xFF80FF , " Princess " , moPrincessArmedMoved , CF_FACE_UP | CF_NOGHOST | CF_PRINCESS | CF_GOK | CF_STUNNABLE | CF_HP | CF_FRIENDLY | CF_FACING | CF_MOVED , RESERVED , moNone , princessdesc )
MONSTER ( ' F ' , 0xD03000 , " Familiar " , moFamiliar , CF_FACE_SIDE , RESERVED , moYeti , " A simple servant of the master of the Ivory Tower. " )
MONSTER ( ' B ' , 0x707070 , " Gargoyle " , moGargoyle , CF_FACE_SIDE | CF_BIRD | CF_FLYING | CF_IGNORE_PLATE , RESERVED , moEagle , gargdesc )
MONSTER ( ' E ' , 0xFF0000 , " Fire Elemental " , moFireElemental , CF_FACE_UP , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" This monster leaves a trail of fire behind. " )
2019-04-20 22:57:24 +00:00
MONSTER ( ' E ' , 0xC0C0FF , " Air Elemental " , moAirElemental , CF_FACE_UP | CF_FLYING | CF_IGNORE_PLATE , RESERVED , moAirElemental , " An Air Elemental looks like a live tornado. Once you are three (or less) cells from it, "
2019-03-23 15:42:17 +00:00
" it is impossible to move closer, due to strong winds. You can stand and wait, though. "
" This also affects most monsters. " )
2019-04-20 22:57:24 +00:00
MONSTER ( ' D ' , 0xC06000 , " Striped Dog " , moOrangeDog , CF_FACE_SIDE , RESERVED , moYeti , " A predator native to the Zebra. " )
MONSTER ( ' G ' , 0xFFFFFF , " Tentacle+Ghost " , moTentacleGhost , CF_FACE_SIDE | CF_NOGHOST | CF_NOBLOW | CF_GHOST | CF_FLYING | CF_ATTACK_THRU_VINE | CF_ATTACK_NONADJACENT | CF_IGNORE_PLATE | CF_IGNORE_SMELL | CF_MULTITILE | CF_WORM | CF_GHOSTMOVER , RESERVED , moNone , tentdes )
MONSTER ( ' B ' , 0x8080C0 , " Metal Beast " , moMetalBeast , CF_FACE_SIDE | CF_METAL | CF_STUNNABLE | CF_SLOWMOVER , RESERVED , moYeti , elecdesc )
MONSTER ( ' B ' , 0xC060C0 , " Rich Metal Beast " , moMetalBeast2 , CF_FACE_SIDE | CF_METAL | CF_STUNNABLE | CF_SLOWMOVER , RESERVED , moYeti , elecdesc )
MONSTER ( ' O ' , 0xA06020 , " Outlaw " , moOutlaw , CF_FACE_UP , RESERVED , moYeti , wildwestdesc )
MONSTER ( ' C ' , 0xC0C060 , " Mutant Ivy " , moMutant , CF_NOGHOST | CF_NOBLOW | CF_PART | CF_IGNORE_SMELL | CF_MULTITILE | CF_ANYIVY | CF_MUTANTIVY , RESERVED , moNone , overdesc )
MONSTER ( ' T ' , 0x0080FF , " Storm Troll " , moStormTroll , CF_FACE_UP | CF_TROLL , RESERVED , moYeti , elecdesc )
MONSTER ( ' T ' , 0x00C080 , " Forest Troll " , moForestTroll , CF_FACE_UP | CF_TROLL , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" Forest Trolls create an impassable wall when they die. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' F ' , 0xC35817 , " Giant Fox " , moRedFox , CF_FACE_SIDE , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" What is freedom for you? A situation when you can walk wherever you want? "
" Or a situation when you do not have to work, since you have as much tasty food "
" as you want? \n \n "
" Well, this creature has chosen the second option. It won't be happy "
" if you destroy its prison. \n "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' C ' , 0x8080FF , " Wind Crow " , moWindCrow , CF_FACE_SIDE | CF_BIRD | CF_FLYING | CF_IGNORE_PLATE , RESERVED , moEagle ,
2019-03-23 15:42:17 +00:00
" A large bird who likes strong winds. Just as you, it can fly quickly in the wind. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' G ' , 0xC0FFC0 , " Friendly Ghost " , moFriendlyGhost , CF_FACE_SIDE | CF_NOGHOST | CF_GOK | CF_FRIENDLY | CF_FACING | CF_GHOST | CF_FLYING | CF_ATTACK_THRU_VINE | CF_ATTACK_NONADJACENT | CF_IGNORE_PLATE , RESERVED , moFriendlyGhost ,
2019-03-23 15:42:17 +00:00
" Friendly ghosts are friendly beings who can go through any obstacles. However, "
" unlike most friends, they tend to fly away from you. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' R ' , 0x906030 , " Ratling " , moRatling , CF_FACE_UP | CF_LEADER | CF_RATLING , RESERVED , moPirate ,
2019-03-23 15:42:17 +00:00
" These warped humanoids are skilled warriors and sailors, and they "
" feel at home at the Warped Coast. Their battle experience has taught them "
" that enemies who wait without moving or attacking anything are the most deadly. "
" If they see such an enemy, they become extremely suspicious, and they also wait. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' F ' , 0xC00000 , " False Princess " , moFalsePrincess , CF_FACE_UP , RESERVED , moYeti , GENDERSWITCH )
MONSTER ( ' R ' , 0x500050 , " Rose Lady " , moRoseLady , CF_FACE_UP | CF_IGNORE_SMELL , RESERVED , moYeti , GENDERSWITCH )
MONSTER ( ' R ' , 0xF0A0D0 , " Rose Beauty " , moRoseBeauty , CF_FACE_UP , RESERVED , moYeti , GENDERSWITCH )
MONSTER ( ' R ' , 0x806040 , " Ratling Avenger " , moRatlingAvenger , CF_FACE_UP | CF_LEADER | CF_RATLING , RESERVED , moPirate ,
2019-03-23 15:42:17 +00:00
" So, you have killed a Ratling on the unwarped sea? You will be punished for this! "
" Luckily, if you run away from the Warped Sea quickly, the Ratling Avengers will lose track of you. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' T ' , 0x487830 , " Tortoise " , moTortoise , CF_FACE_SIDE | CF_STUNNABLE | CF_SLOWMOVER , RESERVED , moYeti , tortoisedesc )
2019-03-24 00:26:43 +00:00
MONSTER ( ' D ' , 0xC03000 , " Dragon " , moDragonHead , ZERO | CF_NOGHOST | CF_NOBLOW | CF_STUNNABLE | CF_MOUNTABLE | CF_FLYING | CF_IGNORE_PLATE | CF_MULTITILE | CF_DRAGON | CF_WORM , RESERVED , moDragonHead , dragondesc )
MONSTER ( ' d ' , 0xC03000 , " Dragon " , moDragonTail , ZERO | CF_NOGHOST | CF_NOBLOW | CF_STUNNABLE | CF_MOUNTABLE | CF_PART | CF_FLYING | CF_IGNORE_PLATE | CF_MULTITILE | CF_DRAGON | CF_WORM , RESERVED , moDragonHead , dragondesc )
2019-04-20 22:57:24 +00:00
MONSTER ( ' F ' , 0x909090 , " Gadfly " , moGadfly , CF_FACE_SIDE | CF_BIRD | CF_FLYING | CF_IGNORE_PLATE , RESERVED , moEagle , " Annoying insects. They can awaken Sleeping Bulls. " )
2019-03-23 15:42:17 +00:00
MONSTER ( ' Y ' , 0xFF8000 , " Yendorian Researcher " , moResearcher , ZERO , RESERVED , moYeti ,
" These people study gravity and infinite trees. "
" They have no special features, other than wearing a strange hat. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' K ' , 0xA8A8A8 , " Sparrowhawk " , moSparrowhawk , CF_FACE_SIDE | CF_BIRD | CF_FLYING | CF_IGNORE_PLATE , RESERVED , moEagle ,
2019-03-23 15:42:17 +00:00
" A bird who hunts in the treetops of Yendorian Forest. "
)
2019-03-30 12:35:03 +00:00
MONSTER ( ' K ' , 0xD0A0A0 , " Kraken " , moKrakenH , ZERO | CF_NOGHOST | CF_NOBLOW | CF_MULTITILE | CF_KRAKEN | CF_FACING , RESERVED , moNone , krakendesc )
2019-03-24 00:26:43 +00:00
MONSTER ( ' K ' , 0xC07070 , " Kraken Tentacle " , moKrakenT , ZERO | CF_NOGHOST | CF_NOBLOW | CF_PART | CF_MULTITILE | CF_KRAKEN , RESERVED , moNone , krakendesc )
2019-04-20 22:57:24 +00:00
MONSTER ( ' D ' , 0xF09090 , " Draugr " , moDraugr , CF_FACE_UP | CF_NONLIVING | CF_SLOWMOVER , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" Animated corpses of ancient Viking warriors. They are immune to mundane weapons, "
" but they can be destroyed by your Orb of the Sword. "
)
2019-09-30 01:05:47 +00:00
MONSTER ( ' C ' , 0xC08000 , " Friendly Ivy " , moFriendlyIvy , ZERO | CF_NOGHOST | CF_NOBLOW | CF_FRIENDLY | CF_FACING | CF_ANYIVY , RESERVED , moNone , naturedesc )
2019-04-20 22:57:24 +00:00
MONSTER ( ' V ' , 0xC000C0 , " Vampire Bat " , moVampire , CF_FACE_SIDE | CF_BIRD | CF_FLYING | CF_UNARMED | CF_IGNORE_PLATE , RESERVED , moEagle ,
2019-03-23 15:42:17 +00:00
" Vampire Bats don't attack normally, but they drain your magical powers if "
" they are at distance at most 2 from you. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' B ' , 0x404040 , " Bat " , moBat , CF_FACE_SIDE | CF_BIRD | CF_FLYING | CF_UNARMED | CF_IGNORE_PLATE , RESERVED , moEagle ,
2019-03-23 15:42:17 +00:00
" Someone has told you that one can get battle experience safely by "
" killing tons of essentially harmless creatures, such as Bats. But "
" does this make any sense?... \n \n "
" It does not. Bats cannot hurt you, but may block your movement, or "
" toggle switches if they fall on them. " )
2019-04-20 22:57:24 +00:00
MONSTER ( ' R ' , 0x8080C0 , " Reptile " , moReptile , CF_FACE_SIDE | CF_STUNNABLE , RESERVED , moReptile , reptiledesc )
MONSTER ( ' B ' , 0x606020 , " Herd Bull " , moHerdBull , CF_FACE_SIDE | CF_BULL | CF_FACING , RESERVED , moRagingBull ,
2019-03-23 15:42:17 +00:00
" Herds of these Bulls are running long distances for some reason. They become Raging Bulls if something stops them. " )
2019-04-20 22:57:24 +00:00
MONSTER ( ' B ' , 0xA03000 , " Raging Bull " , moRagingBull , CF_FACE_SIDE | CF_BULL | CF_FACING , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" Raging Bulls charge in a straight line: on heptagons, when they can choose one of two possible directions, "
" they choose one closer to your current location. In the case of a tie, the cell where more neighbors is "
" closer to your current location is chosen; if still a tie, past locations are considered. "
" They can attack you in any direction, and monsters on their way are attacked even if friendly. "
" When they crash into something, the obstacle is usually destroyed, and they are stunned for three turns, after "
" which they charge at you again (in any direction). "
" Raging Bulls cannot be killed or stunned conventionally. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' B ' , 0xB07000 , " Sleeping Bull " , moSleepBull , CF_FACE_SIDE | CF_BULL | CF_FACING , RESERVED , moRagingBull ,
2019-03-23 15:42:17 +00:00
" Sleeping bulls wake up when you get into distance of two cells from them. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' S ' , 0xFFD500 , " Butterfly " , moButterfly , CF_FACE_SIDE | CF_BIRD | CF_FLYING | CF_IGNORE_PLATE | CF_FACING , RESERVED , moButterfly , bulldashdesc )
MONSTER ( ' N ' , 0xFFFF80 , " Narcissist " , moNarciss , CF_FACE_UP , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" This person loves to look at their own reflection in the mirror. "
" He believes himself to be one of the most important creatures in this world, "
" and hates those who do not admire him. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' M ' , 0xFFC0FF , " Mirror Spirit " , moMirrorSpirit , CF_FACE_UP , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" A long time ago a mighty warrior was guarding the mirrors from being broken. "
" While this warrior is no longer alive, his reflections have gained life of "
" their own, and will punish the intruders. \n \n "
" If you attack a Mirror Spirit physically, it is delayed, but not destroyed -- "
" more reflections will come out of the mirror. Use Mimics to destroy them. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' W ' , 0x202020 , " Hunting Dog " , moHunterDog , CF_FACE_SIDE , RESERVED , moYeti , huntingdesc )
MONSTER ( ' T ' , 0xE2725B , " Terracotta Warrior " , moTerraWarrior , CF_FACE_UP | CF_NONLIVING | CF_STUNNABLE | CF_HP , RESERVED , moYeti , terradesc )
MONSTER ( ' J ' , 0x50A030 , " Jiangshi " , moJiangshi , CF_FACE_UP | CF_NONLIVING , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" You think this was one of the people who have constructed the Terracotta Warriors and the arrow traps. "
" They have been locked inside, so that they will never divulge the secrets of the mausoleum. They would like to return their homes and families, though. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' B ' , 0xA00000 , " Void Beast " , moVoidBeast , CF_FACE_UP | CF_NONLIVING , RESERVED , moVoidBeast ,
2019-03-23 15:42:17 +00:00
" Are creatures of Void actual monsters, or just monster-shaped holes in the air? \n \n Void Beasts move simply by letting the air move into their current location -- "
" the hole will move to the place where the air came from! Void Beasts are great at moving against the wind, but they have problems "
" moving with the wind. " )
2019-04-20 22:57:24 +00:00
MONSTER ( ' W ' , 0xA00000 , " Lava Wolf " , moLavaWolf , CF_FACE_SIDE , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" While Ice Wolves love heat, their instincts usually will not let them leave the Icy Lands -- "
" they are afraid that they will be unable to get back home, and that they will lose track of their prey. "
" However, they find the Volcanic Wasteland so hot and attractive that they abandon their natural instincts... "
" and try to track their prey using their other senses and intelligence. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' W ' , 0x202020 , " Hunting Dog (guarding) " , moHunterGuard , CF_FACE_SIDE , RESERVED , moYeti , huntingdesc )
MONSTER ( ' G ' , 0xC0C0FF , " Ice Golem " , moIceGolem , CF_FACE_UP | CF_NONLIVING , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" The Ice Golems are powered by intense magical coldness. When destroyed in the Blizzard or another icy land, they become "
" ice walls, and freeze the land around them. " )
2019-04-20 22:57:24 +00:00
MONSTER ( ' B ' , 0xC0C0FF , " Sand Bird " , moSandBird , CF_FACE_SIDE , RESERVED , moNone , NODESC )
MONSTER ( ' S ' , 0xA00000 , " Salamander " , moSalamander , CF_FACE_SIDE | CF_STUNNABLE , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" Salamanders are tough lizard-like creatures. Their tough skin protects them "
" from both physical attacks and heat. Salamanders "
" are stunned for a longer time if you push them into lava, fire, or a solid obstacle. " )
MONSTER ( ' W ' , 0x202020 , " Hunting Dog (regrouping) " , moHunterChanging , ZERO , RESERVED , moYeti ,
" When your plan has clearly failed, it is better to abandon it and go to a safe place, to have a chance of succeeding next time. This dog clearly knows this. " )
2019-03-30 12:35:03 +00:00
MONSTER ( ' B ' , 0xC00000 , " North Pole " , moNorthPole , ZERO | CF_MAGNETIC | CF_FACING , RESERVED , moYeti , NODESCYET )
MONSTER ( ' B ' , 0x0000C0 , " South Pole " , moSouthPole , ZERO | CF_MAGNETIC | CF_FACING , RESERVED , moYeti , NODESCYET )
2019-04-20 22:57:24 +00:00
MONSTER ( ' P ' , 0xC03000 , " Red Raider " , moPair , CF_FACE_UP | CF_RAIDER | CF_FACING , RESERVED , moYeti , " Red Raiders travel in pairs. They have promised to always watch another one's back. They are able to destroy walls on their way. " )
MONSTER ( ' H ' , 0xC0C0C0 , " Gray Raider " , moHexDemon , CF_FACE_UP | CF_RAIDER , RESERVED , moHexDemon , " Gray Raiders never step on gray cells. " )
MONSTER ( ' A ' , 0x80B080 , " Green Raider " , moAltDemon , CF_FACE_UP | CF_RAIDER , RESERVED , moAltDemon , " Green Raiders never step from one green cell to another. " )
MONSTER ( ' M ' , 0x904000 , " Brown Raider " , moMonk , CF_FACE_UP | CF_RAIDER , RESERVED , moMonk , " Brown Raiders never move adjacent to an item. " )
MONSTER ( ' C ' , 0x0060E0 , " Blue Raider " , moCrusher , CF_FACE_UP | CF_RAIDER , RESERVED , moYeti , " Blue Raiders have a powerful attack which takes two turns to complete, and also makes the Blue Raider stunned "
2019-03-23 15:42:17 +00:00
" for a long time. This attack can destroy other Raiders if it hits them. " )
2019-04-20 22:57:24 +00:00
MONSTER ( ' @ ' , 0xC00000 , " Red Jelly " , moSwitch1 , CF_FACE_SIDE | CF_SWITCH | CF_FACING , RESERVED , moYeti , jellydesc )
MONSTER ( ' @ ' , 0x0000C0 , " Blue Jelly " , moSwitch2 , CF_FACE_SIDE | CF_SWITCH | CF_FACING , RESERVED , moYeti , jellydesc )
MONSTER ( ' B ' , 0xE07000 , " Bronze Beast " , moBrownBug , CF_FACE_SIDE | CF_STUNNABLE , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" A large bug native to the Brown Islands. Cannot be killed easily due to their tough armor; still, they can be killed by pushing them into water or from great heights. "
" Bronze Beasts are very bad at descending slopes -- it takes them extra time to get down, and they are stunned for a longer time if you push them down. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' B ' , 0xE07060 , " Acid Gull " , moAcidBird , CF_FACE_SIDE | CF_BIRD | CF_FLYING | CF_IGNORE_PLATE , RESERVED , moEagle ,
2019-03-23 15:42:17 +00:00
" Where did this strange bird come from?... \n \n "
" Acid Gulls dissolve the land on which they fall when they die. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' W ' , 0xA04060 , " Mutant " , moVariantWarrior , CF_FACE_UP , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" These guys look a bit strange, but they have no special properties. "
)
2019-04-20 22:57:24 +00:00
MONSTER ( ' W ' , 0x707080 , " Falling Dog " , moFallingDog , CF_FACE_SIDE , RESERVED , moYeti ,
2019-03-23 15:42:17 +00:00
" Distant relatives of the Running Dogs. " )
2019-04-20 22:57:24 +00:00
MONSTER ( ' B ' , 0xC0C040 , " Western Hawk " , moWestHawk , CF_FACE_SIDE | CF_BIRD | CF_FLYING | CF_IGNORE_PLATE , RESERVED , moEagle ,
2019-03-23 15:42:17 +00:00
" Some readers misinterpreted the early maps of Free Fall, thinking that it is a land to the west from some wall. "
" The name Western Hawks remained. " )
ITEM ( 0 , 0 , " no item " , itNone , - 1 , ZERO | IF_FIREPROOF , RESERVED , osNone , NULL )
ITEM ( ' * ' , 0xFFFFFF , " Ice Diamond " , itDiamond , IC_TREASURE , ZERO , RESERVED , osNone ,
" Cold white gems, found in the Icy Land. "
)
ITEM ( ' $ ' , 0xFFD700 , " Gold " , itGold , IC_TREASURE , ZERO , RESERVED , osNone ,
" An expensive metal from the Living Caves. For some reason "
" gold prevents the living walls from growing close to it. "
)
ITEM ( ' ; ' , 0xFF4000 , " Spice " , itSpice , IC_TREASURE , ZERO , RESERVED , osNone ,
" A rare and expensive substance found in the Desert. "
" It is believed to extend life and raise special psychic powers. "
)
ITEM ( ' * ' , 0xC00000 , " Ruby " , itRuby , IC_TREASURE , ZERO , RESERVED , osNone ,
" A beautiful gem from the Jungle. "
)
ITEM ( ' ! ' , 0xFFFF00 , " Elixir of Life " , itElixir , IC_TREASURE , ZERO , RESERVED , osNone ,
" A wonderful beverage, apparently obtained by mixing red and blue slime. You definitely feel more "
" healthy after drinking it, but you still feel that one hit of a monster is enough to kill you. " )
ITEM ( ' % ' , 0xFF00FF , " Shard " , itShard , IC_TREASURE , ZERO , RESERVED , osNone ,
" A piece of a magic mirror, or a mirage cloud, that can be used for magical purposes. Only mirrors and clouds "
" in the Land of Mirrors leave these. " )
ITEM ( ' / ' , 0xFF8000 , " Necromancer's Totem " , itBone , IC_TREASURE , ZERO , RESERVED , osNone ,
" These sinister totems contain valuable gems. " )
ITEM ( ' % ' , 0x00D000 , " Demon Daisy " , itHell , IC_TREASURE , ZERO , RESERVED , osNone ,
" These star-shaped flowers native to Hell are a valuable alchemical component. " )
ITEM ( ' / ' , 0x00FF00 , " Statue of Cthulhu " , itStatue , IC_TREASURE , ZERO , RESERVED , osNone ,
" This statue is made of materials which cannot be found in your world. " )
ITEM ( ' * ' , 0xFF8000 , " Phoenix Feather " , itFeather , IC_TREASURE , ZERO , RESERVED , osNone ,
" One of few things that does not cause the floor in the Land of Eternal Motion to collapse. Obviously they are quite valuable. "
)
ITEM ( ' * ' , 0x8080FF , " Ice Sapphire " , itSapphire , IC_TREASURE , ZERO , RESERVED , osNone ,
" Cold blue gems, found in the Cocytus. "
)
ITEM ( ' * ' , 0xEEFF20 , " Hyperstone " , itHyperstone , IC_TREASURE , ZERO , RESERVED , osNone ,
" These bright yellow gems can be found only by those who have mastered the Crossroads. "
)
ITEM ( ' [ ' , 0x8080FF , " Key " , itKey , IC_OTHER , ZERO , RESERVED , osNone ,
" That's all you need to unlock the Orb of Yendor! Well... as long as you are able to return to the Orb that this key unlocks... \n \n "
" Each key unlocks only the Orb of Yendor which led you to it. "
)
ITEM ( ' o ' , 0x306030 , " Dead Orb " , itGreenStone , IC_OTHER , ZERO , RESERVED , osNone ,
" These orbs can be found in the Graveyard. You think that they were once powerful magical orbs, but by now, their "
" power is long gone. No way to use them, you could as well simply drop them... \n \n "
)
ITEM ( ' o ' , 0xFF20FF , " Orb of Yendor " , itOrbYendor , IC_OTHER , ZERO , RESERVED , osNone ,
" This wonderful Orb can only be collected by those who have truly mastered this hyperbolic universe, "
" as you need the right key to unlock it. Luckily, your psychic abilities will let you know "
" where the key is after you touch the Orb. " )
ITEM ( ' o ' , 0xFFFF00 , " Orb of Storms " , itOrbLightning , IC_ORB , ZERO , RESERVED , osOffensive ,
" This orb can be used to invoke the lightning spell, which causes lightning bolts to shoot from you in all directions. " )
ITEM ( ' o ' , 0xFFFFFF , " Orb of Flash " , itOrbFlash , IC_ORB , ZERO , RESERVED , osOffensive ,
" This orb can be used to invoke a flash spell, which destroys almost everything in radius of 2. " )
ITEM ( ' o ' , 0x8080FF , " Orb of Winter " , itOrbWinter , IC_ORB , ZERO | IF_FIREPROOF | IF_PROTECTION | IF_EMPATHY , RESERVED , osNone ,
" This orb can be used to invoke a wall of ice. It also protects you from fires. " )
ITEM ( ' o ' , 0xFF6060 , " Orb of Speed " , itOrbSpeed , IC_ORB , ZERO | IF_EMPATHY , RESERVED , osUtility ,
" This orb can be used to move faster for some time. " )
ITEM ( ' o ' , 0x90B090 , " Orb of Life " , itOrbLife , IC_ORB , ZERO | IF_SHMUPLIFE | IF_REVIVAL , RESERVED , osFriend ,
" This orb can be used to summon friendly golems. It is used instantly when you pick it up. " )
ITEM ( ' o ' , 0x60D760 , " Orb of Shielding " , itOrbShield , IC_ORB , ZERO | IF_PROTECTION | IF_EMPATHY , RESERVED , osNone ,
" This orb can protect you from damage. " )
ITEM ( ' o ' , 0x606060 , " Orb of Earth " , itOrbDigging , IC_ORB , ZERO | IF_EMPATHY , RESERVED , osUtility ,
" This orb lets you go through living walls. It also has powers in some of the other lands. " )
ITEM ( ' o ' , 0x20FFFF , " Orb of Teleport " , itOrbTeleport , IC_ORB , ZERO | IF_RANGED , RESERVED , osRanged ,
" This orb lets you instantly move to another location on the map. Just click a location which "
" is not next to you to teleport there. "
)
ITEM ( ' o ' , 0xA0FF40 , " Orb of Safety " , itOrbSafety , IC_ORB , ZERO , RESERVED , osUtility ,
" This orb lets you instantly move to a safe faraway location. Knowing the nature of this strange world, you doubt "
" that you will ever find the way back... \n \n "
" Your game will be saved if you quit the game while the Orb of Safety is still powered. \n \n "
" Technical note: as it is virtually impossible to return, this Orb recycles memory used for the world so far (even if you do not use it to save the game). "
)
ITEM ( ' o ' , 0x40C000 , " Orb of Thorns " , itOrbThorns , IC_ORB , ZERO | IF_EMPATHY , RESERVED , osOffensive ,
" This orb allows attacking Hedgehog Warriors directly, as well as stabbing other monsters. \n "
)
ITEM ( ' % ' , 0x0000FF , " Fern Flower " , itFernFlower , IC_TREASURE , ZERO , RESERVED , osNone ,
" This flower brings fortune to the person who finds it. \n "
)
ITEM ( ' ! ' , 0x900000 , " Wine " , itWine , IC_TREASURE , ZERO , RESERVED , osNone ,
" Wine grown under hyperbolic sun would be extremely prized in your home location. "
)
ITEM ( ' o ' , 0x706070 , " Orb of Aether " , itOrbAether , IC_ORB , ZERO | IF_EMPATHY , RESERVED , osUtility ,
" This orb allows one to pass through all kinds of walls and chasms. "
)
ITEM ( ' $ ' , 0xFFFFC0 , " Silver " , itSilver , IC_TREASURE , ZERO , RESERVED , osNone ,
" A precious metal from the Dead Caves. "
)
ITEM ( ' o ' , 0x005050 , " Orb of the Mind " , itOrbPsi , IC_ORB , ZERO | IF_RANGED , RESERVED , osRanged ,
" This orb allows you to instantly kill a non-adjacent enemy by clicking it. "
" Each use drains 30 charges. "
)
ITEM ( ' ! ' , 0xE2B227 , " Royal Jelly " , itRoyalJelly , IC_TREASURE , ZERO , RESERVED , osNone ,
" This is what Hyperbug Queens eat. Very tasty and healthy. "
)
ITEM ( ' * ' , 0x60C060 , " Emerald " , itEmerald , IC_TREASURE , ZERO , RESERVED , osNone ,
" A precious green gem from the Emerald Mines. "
)
ITEM ( ' o ' , 0x421C52 , " Orb of Invisibility " , itOrbInvis , IC_ORB , ZERO | IF_PROTECTION | IF_EMPATHY , RESERVED , osNone ,
" When you have this Orb, most monsters won't see you, unless "
" you are standing still, attacking, or picking up items. "
)
ITEM ( ' * ' , 0xFFFF00 , " Powerstone " , itPower , IC_TREASURE , ZERO , RESERVED , osNone ,
" A Stone from the Land of Power. You are not sure what it is exactly, but "
" as the Powerstones are kept in crystal cabinets, they are surely valuable. "
)
ITEM ( ' o ' , 0xFF4000 , " Orb of Fire " , itOrbFire , IC_ORB , ZERO | IF_FIREPROOF | IF_EMPATHY , RESERVED , osNone ,
" When you have this Orb, you will leave a trail of fire behind you. "
)
ITEM ( ' ! ' , 0xFFFF00 , " Holy Grail " , itHolyGrail , IC_OTHER , ZERO , RESERVED , osNone , camelothelp )
ITEM ( ' ? ' , 0x00FF00 , " Grimoire " , itGrimoire , IC_TREASURE , ZERO , RESERVED , osNone ,
" The Grimoires contain many secrets of the Great Old Ones. "
" Each new inner circle in the Temple of Cthulhu contains new Grimoires, with new secrets. "
" You hope to read them when you return home, and to learn many things. "
" The knowledge is valuable to you, but it is rather pointless to try to get "
" several copies of the same Grimoire... "
)
ITEM ( ' o ' , 0xFF8000 , " Orb of the Dragon " , itOrbDragon , IC_ORB , ZERO | IF_FIREPROOF | IF_RANGED , RESERVED , osRanged ,
" This Orb allows you to throw fire, just like the Fire Cultists. \n \n "
" Each fire drains 5 charges. You are not allowed to throw fire into adjacent cells. "
)
ITEM ( ' o ' , 0x8B4513 , " Orb of Trickery " , itOrbIllusion , IC_ORB , ZERO | IF_RANGED , RESERVED , osRanged ,
" This Orb allows you to create illusions of yourself. Illusions are targeted "
" by most monsters, just like yourself, Thumpers, and your friends. \n \n "
" Each illusion takes 5 charges to create, and one extra charge "
" per turn. You can also click your illusion to take it away, restoring 4 charges. \n \n "
" If you have both Orb of Teleport and Orb of Trickery, Illusion is cast "
" first -- you can then teleport on your Illusion to switch places with it. "
)
ITEM ( ' x ' , 0xFF0000 , " Pirate Treasure " , itPirate , IC_TREASURE , ZERO , RESERVED , osNone , " Ye wonder where did th' Pirates find all these riches... " )
ITEM ( ' ? ' , 0xFFFFFF , " Compass " , itCompass , IC_OTHER , ZERO , RESERVED , osNone ,
" The hyperbolic pirates have no use for treasure maps. However, they have found "
" out that a compass points to the center of the island. So they just go as "
" far towards the center as they can, and hide their treasure there. "
)
ITEM ( ' * ' , 0xFF8080 , " Red Gem " , itRedGem , IC_TREASURE , ZERO , RESERVED , osNone , " A gem from the Red Rock Valley. " )
ITEM ( ' o ' , 0x6060FF , " Orb of Time " , itOrbTime , IC_ORB , ZERO , RESERVED , osUtility ,
" Normally, the power of most Orbs slowly fades away, even when "
" you are not actively using them. This Orb prevents this. \n \n "
" When you have the Orb of Time, Orbs which are not active won't lose their power. "
" Orbs are considered active if they have a continuous power which has actually "
" affected something in the last turn. \n \n "
" Orbs of Shielding remain active after being activated (even if you are no longer "
" attacked), and Orbs of Time have a bigger cap inside their native Caribbean than "
" outside. "
)
ITEM ( ' o ' , 0x40C0C0 , " Orb of Space " , itOrbSpace , IC_ORB , ZERO | IF_RANGED , RESERVED , osRanged ,
" This Orb is able to bring faraway items to your location, even if there are "
" monsters or barriers on the way. The cost of "
" bringing an item (in charges) equals the square of its distance to you. Contrary "
" to some other Orbs, usage is not allowed if you have not enough power left. "
)
ITEM ( ' ! ' , 0xFF8080 , " Bomberbird Egg " , itBombEgg , IC_TREASURE , ZERO , RESERVED , osNone ,
" Bomberbird eggs are big and tasty, and thus valuable. "
" They can hatch when left alone for some time (but this will never happen "
" if you are watching). "
)
ITEM ( ' * ' , 0xFFBF00 , " Amber " , itCoast , IC_TREASURE , ZERO , RESERVED , osNone ,
" When the tide is away, beautiful ambers can be found on the hyperbolic beaches. "
" Perhaps there used to be a forest here? "
)
ITEM ( ' $ ' , 0xFFFFFF , " Pearl " , itWhirlpool , IC_TREASURE , ZERO , RESERVED , osNone ,
" You do not know exactly why, but there are valuable pearls on many boats "
" in the whirlpool. "
)
ITEM ( ' o ' , 0x306000 , " Orb of Friendship " , itOrbFriend , IC_ORB , ZERO | IF_SHMUPLIFE | IF_REVIVAL , RESERVED , osFriend ,
" This Orb summons a friendly Bomberbird. "
)
ITEM ( ' o ' , 0x000060 , " Orb of Water " , itOrbWater , IC_ORB , ZERO | IF_EMPATHY , RESERVED , osNone ,
" This Orb allows your boat to go against the current, "
" and also to go into the land, creating water on the way. "
)
ITEM ( ' o ' , 0xC0C0FF , " Orb of Air " , itOrbAir , IC_ORB , ZERO | IF_RANGED , RESERVED , osRanged ,
" This Orb allows you to blow your enemies away. \n \n "
" Click a monster to blow it one cell away. It cannot be used against mimics, ghosts, sharks and other monsters restricted to a specific terrain, and multi-tile monsters. "
)
ITEM ( ' ? ' , 0x802000 , " Hypersian Rug " , itPalace , IC_TREASURE , ZERO , RESERVED , osNone ,
" Nice, a hyperbolic rug! It will not fit very well on your flat Euclidean floor, but who cares? " )
2020-02-25 23:56:06 +00:00
ITEM ( ' o ' , 0x60A060 , " Orb of the Frog " , itOrbFrog , IC_ORB , ZERO | IF_RANGED , RESERVED , osFrog ,
2019-03-23 15:42:17 +00:00
" This Orb lets you jump to a place which is two cell away from you, in a single turn. "
" You can jump over water, chasms and fire, but not over walls. " )
ITEM ( ' * ' , 0x800000 , " Garnet " , itFjord , IC_TREASURE , ZERO , RESERVED , osNone , " Vikings believe that garnets improve their strength. " )
ITEM ( ' o ' , 0x0070C0 , " Orb of the Fish " , itOrbFish , IC_ORB , ZERO | IF_EMPATHY , RESERVED , osNone ,
" This Orb lets you dive into the water. While diving, you are able to see and collect underwater treasures, "
" while being invisible to monsters yourself. You are afraid of jumping into the water straight from a boat, so usually you won't do it. "
)
ITEM ( ' o ' , 0xC00000 , " Orb of Discord " , itOrbDiscord , IC_ORB , ZERO , RESERVED , osFriend ,
" Causes most monsters to attack other monsters, not only you and your friends. " )
ITEM ( ' P ' , 0x00FF00 , " SAVE " , itSavedPrincess , IC_NAI , ZERO , RESERVED , osNone , princessdesc )
ITEM ( ' o ' , 0xFF208F , " Orb of Love " , itOrbLove , IC_ORB , ZERO | IF_SHMUPLIFE , RESERVED , osLove ,
" Love takes time, but it heals all wounds, and transcends time and space. \n \n "
" The Orb of Love is worth 30$$$, if you end the game with it. \n "
)
ITEM ( ' / ' , 0xFFFFE0 , " Ivory Figurine " , itIvory , IC_TREASURE , ZERO , RESERVED , osNone ,
" A beautiful figurine, made of ivory. Figurines close to the base of the Tower "
2019-04-11 20:17:56 +00:00
" tend to disappear after you have collected many of them. "
2019-03-23 15:42:17 +00:00
)
ITEM ( ' * ' , 0x606060 , " Onyx " , itZebra , IC_TREASURE , ZERO , RESERVED , osNone , " A black gem with white stripes. It is beautiful. " )
ITEM ( ' % ' , 0xFF8000 , " Fire Shard " , itFireShard , IC_OTHER , ZERO | IF_SHARD , RESERVED , osNone , elemdesc )
ITEM ( ' % ' , 0x8080C0 , " Air Shard " , itAirShard , IC_OTHER , ZERO | IF_SHARD , RESERVED , osNone , elemdesc )
ITEM ( ' % ' , 0x80C080 , " Earth Shard " , itEarthShard , IC_OTHER , ZERO | IF_SHARD , RESERVED , osNone , elemdesc )
ITEM ( ' % ' , 0x0000C0 , " Water Shard " , itWaterShard , IC_OTHER , ZERO | IF_SHARD , RESERVED , osNone , elemdesc )
ITEM ( ' * ' , 0xF0F0F0 , " Elemental Gem " , itElemental , IC_TREASURE , ZERO , RESERVED , osNone , elemdesc )
ITEM ( ' o ' , 0x309060 , " Orb of Summoning " , itOrbSummon , IC_ORB , ZERO | IF_RANGED , RESERVED , osRanged ,
" This orb allows you to summon monsters. Usually, they are either Elementals or "
" native creatures. While the monsters do not like being summoned, and will "
" attack you once they recover from summoning sickness, such summoning "
" often has its uses. "
)
ITEM ( ' o ' , 0x306090 , " Orb of Matter " , itOrbMatter , IC_ORB , ZERO | IF_RANGED , RESERVED , osRanged ,
2019-09-13 16:13:39 +00:00
" This Orb allows one to temporarily create impassable matter, either to block paths or "
2019-03-23 15:42:17 +00:00
" to build bridges across chasms and waters. " )
ITEM ( ' * ' , 0xF0F000 , " Bounty " , itBounty , IC_TREASURE , ZERO , RESERVED , osNone , wildwestdesc )
ITEM ( ' [ ' , 0xC0C0C0 , " Revolver " , itRevolver , IC_OTHER , ZERO | IF_RANGED , RESERVED , osRanged , wildwestdesc )
ITEM ( ' * ' , 0xF0F080 , " Fulgurite " , itFulgurite , IC_TREASURE , ZERO , RESERVED , osNone , elecdesc )
ITEM ( ' % ' , 0xFFFFFF , " Mutant Sapling " , itMutant , IC_TREASURE , ZERO , RESERVED , osNone , overdesc )
ITEM ( ' o ' , 0xA08000 , " Orb of Stunning " , itOrbStunning , IC_ORB , ZERO | IF_RANGED , RESERVED , osRanged ,
" This Orb allows you to target monsters to stun them. "
" 10 charges are used to stun for 5 turns. Does not "
" work against multi-tile monsters. " )
ITEM ( ' o ' , 0xC00000 , " Orb of Luck " , itOrbLuck , IC_ORB , ZERO , RESERVED , osUtility ,
" This Orb allows you to find new lands more easily. "
" Lands where you have already collected less treasure, "
" and especially the Crossroads, are more likely to "
" spawn while you have this. Additionally, Orbs of Safety "
" are more likely to spawn in the Whirlpool. "
)
ITEM ( ' % ' , 0xD03030 , " Mutant Fruit " , itMutant2 , IC_TREASURE , ZERO , RESERVED , osNone , cleardesc )
ITEM ( ' o ' , 0xC00000 , " Orb of Freedom " , itOrbFreedom , IC_ORB , ZERO , RESERVED , osOffensive ,
" This orb is activated if you are unable to escape (radius 4) "
" without making illegal moves or "
" going through cells which are currently adjacent to enemy monsters. "
" Most game over situations are covered by this, but generally, "
" this orb is oversensitive... \n \n "
" When activated, it creates a Flash effect of radius 5. "
)
ITEM ( ' % ' , 0x606060 , " Black Lotus " , itLotus , IC_TREASURE , ZERO , RESERVED , osNone ,
" This beautiful flower is greatly prized by wizards, as it allows them to cast powerful magical spells "
" without preparation. \n "
)
ITEM ( ' o ' , 0x505050 , " Orb of Undeath " , itOrbUndeath , IC_ORB , ZERO | IF_EMPATHY | IF_SHMUPLIFE | IF_REVIVAL , RESERVED , osFriend ,
" Monsters slain by you in melee are turned into friendly ghosts, "
" Does not affect plants and friends. "
)
ITEM ( ' * ' , 0x8080FF , " White Dove Feather " , itWindstone , IC_TREASURE , ZERO , RESERVED , osNone ,
" This feather is truly beautiful and strong. "
)
ITEM ( ' o ' , 0xC00060 , " Orb of Empathy " , itOrbEmpathy , IC_ORB , ZERO | IF_SHMUPLIFE , RESERVED , osFriend ,
" This Orb lets your allies to share your Orb powers. \n \n "
" The following Orbs are affected: "
)
ITEM ( ' > ' , 0x0000FF , " strong wind " , itStrongWind , IC_NAI , ZERO , RESERVED , osNone ,
" In the Windy Plains, you can let the wind carry you, "
" causing you to move two cells with the wind in a single turn. "
" This cannot be done if you are standing at distance at most 2 "
" from the Air Elemental, or if any of the three cells on the way "
" has two wind directions. \n \n "
" Press 't' or click the destination to activate. "
)
ITEM ( ' x ' , 0xFF00FF , " buggy item " , itBuggy , IC_NAI , ZERO , RESERVED , osNone ,
" Please report this as a bug. "
)
ITEM ( ' x ' , 0xFFFF00 , " buggy item " , itBuggy2 , IC_NAI , ZERO , RESERVED , osNone ,
" Please report this as a bug. "
)
ITEM ( ' % ' , 0x744c7c / 4 + 0x800000 , " Thornless Rose " , itRose , IC_TREASURE , ZERO , RESERVED , osNone ,
" A big, beautiful, magical flower. "
)
ITEM ( ' * ' , 0xFF40A0 , " Coral " , itCoral , IC_TREASURE , ZERO , RESERVED , osNone ,
" Corals have a somewhat hyperbolic structure even in your home world, "
" but natural corals from the Warped Sea have truly beautiful shapes. "
" Ratlings know the value of corals, and thus keep them in boats for safety. "
)
ITEM ( ' o ' , 0x764e7c * 2 , " Orb of Beauty " , itOrbBeauty , IC_ORB , ZERO , RESERVED , osNone ,
" This Orb makes you stunningly beautiful. "
" Monsters which come next to you will be stunned for one turn. "
" Multi-tile monsters are not affected. Additionally, it makes you immune to "
" beauty. "
)
ITEM ( ' o ' , 0xFFFF80 , " Orb of the Warp " , itOrb37 , IC_ORB , ZERO , RESERVED , osWarping ,
" This Orb creates a warped zone of radius 5 around you, "
" and also allows you to move diagonally in warped zones. "
)
ITEM ( ' o ' , 0xFFFF80 , " Orb of Energy " , itOrbEnergy , IC_ORB , ZERO , RESERVED , osUtility ,
" This Orb halves the power usage of orbs which cost some "
" charges with each activation. It even affects the "
" one-shot orbs such as Flash or Teleport. If such an activation "
" normally costs x charges, it costs only x/2 (rounded up) "
" if you have an Orb of Energy. "
)
ITEM ( ' t ' , 0x487830 , " Baby Tortoise " , itBabyTortoise , IC_TREASURE , ZERO , RESERVED , osNone , tortoisedesc )
ITEM ( ' o ' , 0x487830 , " Orb of the Shell " , itOrbShell , IC_ORB , ZERO | IF_PROTECTION , RESERVED , osNone ,
" This Orb protects you from physical attacks. "
" It lasts for more turns than the Orb of Shielding, but "
" 10 charges are lost whenever you are attacked. "
" It also does not protect you from fires, scents, and being eaten. "
)
ITEM ( ' ! ' , 0xc00000 , " Apple " , itApple , IC_TREASURE , ZERO , RESERVED , osNone , " A fruit from the Yendorian Forest. " )
ITEM ( ' ! ' , 0xFF6000 , " Dragon Scale " , itDragon , IC_TREASURE , ZERO | IF_FIREPROOF , RESERVED , osNone ,
" Dragon Scales are a prized material for armors. "
" They are also prized by collectors, who would like to boast "
" about how they have killed a Dragon. \n \n "
" Dragon Scales disappear after 500 turns. "
)
ITEM ( ' o ' , 0x900000 , " Orb of Domination " , itOrbDomination , IC_ORB , ZERO | IF_RANGED | IF_SHMUPLIFE , RESERVED , osRanged ,
" This Orb lets you ride Dragons and other worm-like creatures. "
" Simply move onto such a creature to ride them; while riding, you are protected from dangerous terrains "
" and partially from attacks (they cause you to lose half of your Domination power), "
" but you cannot collect items. \n \n "
/*When only one charge is left, "
" you have to dismount this turn -- be very careful to make this possible, "
" as your mount could attack you immediately! \n \n " */
" While riding, "
" click on a location to order your mount to move or attack there. "
)
ITEM ( ' o ' , 0xFFFF80 , " Orb of the Sword " , itOrbSword , IC_ORB , ZERO , RESERVED , osDirectional ,
" This Orb gives you a weapon made of pure magical energy. You do not hold "
" it, it simply floats in the air next to you. When you go, the energy sword moves "
" with you, pointing at the same relative angle it pointed before -- you cannot "
" move or rotate it otherwise. Most monsters can be killed by moving the sword into them, "
" and won't move into the spot with the sword. "
)
ITEM ( ' x ' , 0x4040FF , " Sunken Treasure " , itKraken , IC_TREASURE , ZERO , RESERVED , osNone ,
" Cargo of a ship which was once destroyed by a Kraken. " )
ITEM ( ' o ' , 0xFF8040 , " Orb of the Sword II " , itOrbSword2 , IC_ORB , ZERO , RESERVED , osDirectional ,
" An alternative version of Orb of the Sword. If you have both of them, "
" you have two energy swords, facing in opposite directions. "
)
ITEM ( ' * ' , 0xFFFF80 , " Ancient Jewelry " , itBarrow , IC_TREASURE , ZERO , RESERVED , osNone ,
" Precious belongings of ancient Viking heroes. Your Orb of the Sword can be "
" used to dig these treasures out of the barrows. "
)
ITEM ( ' ! ' , 0xFFD700 , " Golden Egg " , itTrollEgg , IC_TREASURE , ZERO , RESERVED , osNone ,
" Trolls of Trollheim are descendants of a bridge Troll, who collected "
" payments from people crossing the bridge. One of them paid with "
" golden eggs. The bridge Troll found the eggs beautiful, but he quickly lost them. "
" Golden eggs are still revered by Trolls, and you can find them in their "
" caves. "
)
ITEM ( ' ! ' , 0xFF0000 , " Warning " , itWarning , IC_NAI , ZERO , RESERVED , osNone , warningdesc
)
ITEM ( ' o ' , 0x808080 , " Orb of the Stone " , itOrbStone , IC_ORB , ZERO | IF_EMPATHY , RESERVED , osNone ,
" Trolls turn into stone walls when they die. When you have this Orb, "
" this happens to every monster you defeat. Statues created from this Orb "
" have slightly different properties than Trolls who petrify naturally. "
)
ITEM ( ' o ' , 0xC08000 , " Orb of Nature " , itOrbNature , IC_ORB , ZERO | IF_RANGED | IF_SHMUPLIFE , RESERVED , osRanged , naturedesc )
ITEM ( ' % ' , 0x800080 , " Treat " , itTreat , IC_TREASURE , ZERO | IF_FIREPROOF , RESERVED , osNone , halloweendesc )
ITEM ( ' % ' , 0x30A030 , " Slime Mold " , itSlime , IC_TREASURE , ZERO , RESERVED , osNone ,
" A very interesting species of slime mold. "
)
ITEM ( ' * ' , 0xFF00FF , " Amethyst " , itAmethyst , IC_TREASURE , ZERO , RESERVED , osNone , " A beatiful purple gem from the Lost Mountain. " )
ITEM ( ' o ' , 0xC00040 , " Orb of Recall " , itOrbRecall , IC_ORB , ZERO , RESERVED , osNone ,
" When the charges on this Orb expire, "
" you will be automatically returned to the place where you have found it. "
" Extra Orbs of Recall delay this without changing the recall location. "
" Pick up an Orb of Safety causes an immediate recall. " )
ITEM ( ' ] ' , 0x8080FF , " Dodecahedron " , itDodeca , IC_TREASURE , ZERO , RESERVED , osNone ,
" These dodecahedra made of a mysterious material are the Reptiles' favorite toy. "
)
2020-02-25 23:56:06 +00:00
ITEM ( ' o ' , 0x8080FF , " Orb of Vaulting " , itOrbDash , IC_ORB , ZERO | IF_RANGED , RESERVED , osFrog ,
2019-03-23 15:42:17 +00:00
" This Orb allows you to jump over an adjacent monster, killing or stunning it. "
" You can only vault in a roughly straight line. "
" Target a cell on the other side to use it. "
)
ITEM ( ' $ ' , 0x80FF80 , " Green Grass " , itGreenGrass , IC_TREASURE , ZERO , RESERVED , osNone , prairiedesc )
ITEM ( ' o ' , 0xC09090 , " Orb of Horns " , itOrbHorns , IC_ORB , ZERO , RESERVED , osDirectional ,
" After you move while having this Orb, you immediately attack the next cell in the straight line "
" (or two cells, when moving on a heptagon). This attack is slightly stronger than your normal "
" attack: it can stun some of the monsters which cannot be killed or stunned normally. "
)
ITEM ( ' o ' , 0xA05020 , " Orb of the Bull " , itOrbBull , IC_ORB , ZERO , RESERVED , osDirectional ,
" You get the powers of Shield, Horns, and Thorns after you move two moves in a straight line "
" with this Orb. " )
ITEM ( ' $ ' , 0xC060C0 , " Spinel " , itBull , IC_TREASURE , ZERO , RESERVED , osNone , bulldashdesc )
ITEM ( ' o ' , 0xC0C0FF , " Orb of the Mirror " , itOrbMirror , IC_ORB , ZERO , RESERVED , osNone ,
" Use Orb of the Mirror to gain copies of one of your Orbs; "
" mirroring weaker Orbs usually yields more copies. "
" It can only be used once per Orb type, "
" and only when you are next to a mirror. "
)
ITEM ( ' O ' , 0xF0F0F0 , " your orbs " , itInventory , IC_OTHER , ZERO , RESERVED , osNone ,
" Click this to see your orbs. " )
ITEM ( ' % ' , 0xE0E000 , " Lava Lily " , itLavaLily , IC_TREASURE , ZERO | IF_FIREPROOF , RESERVED , osNone ,
" This plant, able to survive in the extreme conditions of the Volcanic Wasteland, "
" is a valuable alchemical ingredient. "
)
ITEM ( ' * ' , 0x40E0D0 , " Turquoise " , itHunting , IC_TREASURE , ZERO , RESERVED , osNone ,
" Hunters believe that wearing a Turquoise amulet will improve their accuracy. "
" This one has been lost, but the hunting dogs are guarding it until the owner returns. " )
ITEM ( ' * ' , 0x009090 , " Forgotten Relic " , itBlizzard , IC_TREASURE , ZERO , RESERVED , osNone , blizzarddesc )
ITEM ( ' ( ' , 0xFFE080 , " Ancient Weapon " , itTerra , IC_TREASURE , ZERO , RESERVED , osNone ,
" This ancient weapon is beautifully encrusted with precious gems, but you prefer your own -- it is much lighter. " )
ITEM ( ' o ' , 0x307080 , " Orb of Slashing " , itOrbSide1 , IC_ORB , ZERO | IF_EMPATHY , RESERVED , osOffensive ,
" Whenever you attack with this Orb, you also hit the monsters adjacent both to you and the monster you originally attacked. " )
ITEM ( ' o ' , 0x30A080 , " Orb of the Triangle " , itOrbSide2 , IC_ORB , ZERO | IF_EMPATHY , RESERVED , osOffensive ,
" Whenever you attack with this Orb, you also hit the monsters adjacent to you which are neither adjacent nor opposite to the monster "
" you originally attacked. " )
ITEM ( ' o ' , 0x30D080 , " Orb of Ferocity " , itOrbSide3 , IC_ORB , ZERO | IF_EMPATHY , RESERVED , osOffensive ,
" Whenever you attack with this Orb, you also hit the monsters adjacent to you and opposite to the monster you originally attacked. " )
ITEM ( ' o ' , 0xD08030 , " Orb of Lava " , itOrbLava , IC_ORB , ZERO | IF_FIREPROOF , RESERVED , osUtility ,
" This Orb summons a minor volcanic activity around you. "
" All the heptagonal cells adjacent to enemies in distance at most 5 to you "
" will be set on fire. Does not affect the cell you are on, and enemies resistant to fire. " )
ITEM ( ' o ' , 0x3080D0 , " Orb of Change " , itOrbMorph , IC_ORB , ZERO | IF_RANGED , RESERVED , osRanged ,
" This ranged Orb will transform the target monster into one without any special powers. It also stuns them for one turn. "
" Does not affect multi-tile monsters. " )
ITEM ( ' ! ' , 0x80FF00 , " Glowing Crystal " , itGlowCrystal , IC_TREASURE , ZERO , RESERVED , osNone , crystaldesc )
ITEM ( ' ! ' , 0x80FF80 , " Snake Oil " , itSnake , IC_TREASURE , ZERO , RESERVED , osNone , " Made of actual snakes! " )
ITEM ( ' ! ' , 0x80FF80 , " Sea Glass " , itDock , IC_TREASURE , ZERO , RESERVED , osNone , NODESCYET )
ITEM ( ' * ' , 0xBBCC99 , " Chrysoberyl " , itRuins , IC_TREASURE , ZERO , RESERVED , osNone , " Fragment of the past glory. " )
ITEM ( ' * ' , 0x80FF80 , " Monopole " , itMagnet , IC_TREASURE , ZERO , RESERVED , osNone , NODESCYET )
ITEM ( ' ! ' , 0xFF00FF , " Tasty Jelly " , itSwitch , IC_TREASURE , ZERO , RESERVED , osNone , " A tasty byproduct of the Jelly Revolution. " )
2020-02-26 00:05:05 +00:00
ITEM ( ' o ' , 0xFFFF80 , " Orb of Phasing " , itOrbPhasing , IC_ORB , ZERO , RESERVED , osFrog ,
2019-03-23 15:42:17 +00:00
" This orb lets you pass through walls (one cell wide), and also through monsters, as long as they will not attack you in transit. " )
ITEM ( ' o ' , 0xFFFF80 , " Orb of Magnetism " , itOrbMagnetism , IC_ORB , ZERO , RESERVED , osNone , NODESCYET )
ITEM ( ' o ' , 0x202020 , " Orb of Slaying " , itOrbSlaying , IC_ORB , ZERO | IF_EMPATHY , RESERVED , osOffensive ,
" This Orb lets you defeat Raiders and other tough single-cell monsters in melee. "
)
ITEM ( ' * ' , 0xFFA860 , " Tiger's Eye " , itBrownian , IC_TREASURE , ZERO , RESERVED , osNone ,
" A brown gem. "
)
ITEM ( ' $ ' , 0xF0C0C0 , " Meteorite " , itWest , IC_TREASURE , ZERO , RESERVED , osNone ,
" These rocks falling from the sky have been captured to fall forever in the artificial gravity. Meteorite iron is believed to be a valuable material for magical weapons. " )
ITEM ( ' * ' , 0x30FF30 , " Torbernite " , itVarTreasure , IC_TREASURE , ZERO , RESERVED , osNone ,
" Crystals emiting magical radiation. " )
ITEM ( ' o ' , 0x703800 , " Orb of Intensity " , itOrbIntensity , IC_ORB , ZERO , RESERVED , osNone ,
" When you have this, initial and maximal charge amounts of all Orbs are increased by 20%. "
)
ITEM ( ' o ' , 0x80D080 , " Orb of Gravity " , itOrbGravity , IC_ORB , ZERO | IF_SHMUPLIFE , RESERVED , osWarping ,
" This Orb lets you magically control gravity around you. In lands with unusual gravity, the options are: usual gravity (no change, except that it may disrupt birds), "
" anti-gravity (causes the direction of gravity to be reversed), levitation (you can move in directions which are neither up nor down, "
" or between cells if one of them has a wall in a 'neutral' direction). In lands with standard gravity, levitation lets creatures to avoid traps, chasms, "
" and water, while anti-gravity makes it possible to move only when next to a wall (movement between cells without adjacent walls is not allowed). "
" For each move, the gravity is based on what you do, and all enemies in the effective range are affected (for example, if you move next to a wall in a non-gravity land, "
" anti-gravity kicks in and monsters will not be able to move in open space). "
)
ITEM ( ' o ' , 0xD08080 , " Orb of Choice " , itOrbChoice , IC_ORB , ZERO , RESERVED , osNone ,
" Did you know that it is possible to break a magical sphere into finitely many parts, and then, out of the parts obtained, to make two magical spheres, just like the original? "
" Hyperbolic geometry makes this even easier! \n \n "
" When you pick up another Orb, it will not disappear from the ground -- Orb of Choice will be drained instead. "
)
2019-04-13 11:07:23 +00:00
//ITEM( '*', 0x26619C, "Lapis Lazuli", itLapisLazuli, IC_TREASURE, ZERO, RESERVED, osNone, NODESCYET)
2019-03-23 15:42:17 +00:00
WALL ( ' . ' , 0xFF00FF , " no wall " , waNone , ZERO | WF_HEATCOLOR , RESERVED , 0 , sgNone , NULL )
WALL ( ' # ' , 0x8080FF , " ice wall " , waIcewall , WF_WALL | WF_HIGHWALL | WF_HEATCOLOR , RESERVED , 0 , sgNone ,
" Ice Walls melt after some time has passed. "
)
WALL ( ' # ' , 0xC06000 , " great wall " , waBarrier , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone , barrierhelp )
WALL ( ' + ' , 0x900030 , " red slime " , waFloorA , ZERO | WF_ALCHEMY , RESERVED , 0 , sgFloorA , slimehelp )
WALL ( ' + ' , 0x300090 , " blue slime " , waFloorB , ZERO | WF_ALCHEMY , RESERVED , 0 , sgFloorB , slimehelp )
WALL ( ' # ' , 0xA0D0A0 , " living wall " , waCavewall , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgCave , cavehelp )
WALL ( ' . ' , 0x306060 , " living floor " , waCavefloor , ZERO , RESERVED , 0 , sgNone , cavehelp )
WALL ( ' # ' , 0xD03030 , " dead rock troll " , waDeadTroll , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone , trollhelp )
WALL ( ' # ' , 0xCDA98F , " sand dune " , waDune , WF_WALL | WF_HIGHWALL | WF_CONE , RESERVED , 0 , sgNone ,
" A natural terrain feature of the Desert. "
)
WALL ( ' % ' , 0xC0C0FF , " Magic Mirror " , waMirror , WF_WALL , RESERVED , 0 , sgNone ,
" You can go inside the Magic Mirror, and produce some mirror images to help you. "
)
WALL ( ' % ' , 0xFFC0C0 , " Cloud of Mirage " , waCloud , WF_WALL , RESERVED , 0 , sgNone ,
" Tiny droplets of magical water. You see images of yourself inside them. "
" Go inside the cloud, to make these images help you. " )
WALL ( ' ^ ' , 0x8D694F , " Thumper " , waThumperOff , WF_WALL | WF_ACTIVABLE | WF_THUMPER , RESERVED , 0 , sgNone , thumpdesc )
WALL ( ' ^ ' , 0x804000 , " Fire " , waFire , WF_FIRE | WF_TIMEOUT , RESERVED , 0 , sgNone ,
" This cell is on fire. Most beings and items cannot survive. "
)
WALL ( ' + ' , 0xC0C0C0 , " ancient grave " , waAncientGrave , WF_WALL | WF_HIGHWALL | WF_GRAVE , RESERVED , 0 , sgNone ,
" An ancient grave. "
)
WALL ( ' + ' , 0xD0D080 , " fresh grave " , waFreshGrave , WF_WALL | WF_HIGHWALL | WF_GRAVE , RESERVED , 0 , sgNone ,
" A fresh grave. Necromancers like those. "
)
WALL ( ' # ' , 0x00FFFF , " column " , waColumn , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone ,
" A piece of architecture typical to R'Lyeh. "
)
WALL ( ' = ' , 0xFFFF00 , " lake of sulphur " , waSulphurC , ZERO | WF_CHASM | WF_SULPHURIC , RESERVED , 0 , sgNone , lakeDesc )
WALL ( ' = ' , 0xFFFF00 , " lake of sulphur " , waSulphur , ZERO | WF_CHASM | WF_SULPHURIC , RESERVED , 0 , sgNone , lakeDesc )
WALL ( ' = ' , 0x000080 , " lake " , waLake , WF_WATER | WF_HEATCOLOR , RESERVED , 0 , sgWater ,
" An impassable lake in Cocytus. "
)
WALL ( ' _ ' , 0x000080 , " frozen lake " , waFrozenLake , ZERO | WF_HEATCOLOR , RESERVED , 0 , sgNone , cocytushelp )
WALL ( ' > ' , 0x101010 , " chasm " , waChasm , ZERO | WF_CHASM , RESERVED , 0 , sgNone ,
" It was a floor... until something walked on it. "
)
WALL ( ' > ' , 0x101010 , " chasmD " , waChasmD , WF_WALL , RESERVED , 0 , sgNone ,
" It was a floor... until something walked on it. "
)
WALL ( ' # ' , 0x60C000 , " big tree " , waBigTree , WF_WALL | WF_HIGHWALL | WF_STDTREE | WF_CONE , RESERVED , 0 , sgNone , foresthelp )
WALL ( ' # ' , 0x006000 , " tree " , waSmallTree , WF_WALL | WF_HIGHWALL | WF_STDTREE | WF_CONE , RESERVED , 0 , sgNone , foresthelp )
WALL ( ' # ' , 0x421C52 * 2 , " vine " , waVinePlant , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgVine , vinehelp )
WALL ( ' : ' , 0x006000 , " vine " , waVineHalfA , ZERO | WF_NOFLIGHT | WF_HALFVINE , RESERVED , 0 , sgVine , hvinehelp )
WALL ( ' ; ' , 0x006000 , " vine " , waVineHalfB , ZERO | WF_NOFLIGHT | WF_HALFVINE , RESERVED , 0 , sgVine , hvinehelp )
WALL ( ' ^ ' , 0x804000 , " partial fire " , waPartialFire , WF_FIRE | WF_TIMEOUT , RESERVED , 0 , sgNone , " This cell is partially on fire. " )
WALL ( ' # ' , 0xA07070 , " dead wall " , waDeadwall , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgCave , deadcavehelp )
WALL ( ' . ' , 0x401010 , " dead floor " , waDeadfloor , ZERO , RESERVED , 0 , sgNone , deadcavehelp )
WALL ( ' . ' , 0x905050 , " rubble " , waDeadfloor2 , ZERO , RESERVED , 1 , sgNone , " Dead floor, with some rubble. " )
WALL ( ' # ' , 0xD0D010 , " weird rock " , waWaxWall , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone ,
" A weirdly colored rock. Hyperentomologists claim that the "
" Hyperbug armies use these rocks to navigate back home after a victorious battle. "
)
WALL ( ' # ' , 0x8080C0 , " crystal cabinet " , waGlass , WF_WALL , RESERVED , 0 , sgNone ,
" Witches use these crystal cabinets to protect Powerstones, as well as the more "
" expensive Orbs. They are partially protected from thieves: they are too strong "
" to be smashed by conventional attacks, and if you try to steal the item "
" using an Orb of Aether, your Aether power will be completely drained. "
)
WALL ( ' # ' , 0xC0C0C0 , " wall of Camelot " , waCamelot , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone , camelothelp )
WALL ( ' + ' , 0xA06000 , " Round Table " , waRoundTable , WF_WALL , RESERVED , 1 , sgNone , camelothelp )
WALL ( ' = ' , 0x0000A0 , " moat of Camelot " , waCamelotMoat , WF_WATER , RESERVED , 0 , sgWater , camelothelp )
WALL ( ' + ' , 0x606060 , " big statue of Cthulhu " , waBigStatue , WF_WALL , RESERVED , 0 , sgNone ,
" These statues of Cthulhu are too large to carry, and they don't look too "
" valuable anyway. Most monsters will never go through them... they probably have "
" their reasons. But you can go! When you move into the cell containing "
" a statue, you push the statue to the cell you left. \n "
)
WALL ( ' = ' , 0x0000A0 , " sea " , waSea , WF_WATER , RESERVED , 0 , sgWater , caribbeanhelp )
WALL ( ' + ' , 0x0000A0 , " boat " , waBoat , ZERO | WF_BOAT | WF_NOFLIGHT , RESERVED , 0 , sgNone ,
" Hyperbolic pirates do not need huge ships, since so many lands to conquest "
" are so close. These small boats are enough for them. \n \n "
" Boats allow you to go through water. If you are in a boat, you can move into "
" a water cell (and the boat will come with you). "
)
WALL ( ' . ' , 0x00FF00 , " island " , waCIsland , ZERO | WF_CISLAND , RESERVED , 0 , sgNone , cislandhelp )
WALL ( ' . ' , 0x80C060 , " island " , waCIsland2 , ZERO | WF_CISLAND , RESERVED , 0 , sgNone , cislandhelp )
WALL ( ' # ' , 0x006000 , " tree " , waCTree , WF_WALL | WF_HIGHWALL | WF_CONE | WF_CISLAND , RESERVED , 0 , sgTree ,
" The forests of Caribbean are too dense to be traversed by humans, "
" and they are hard to burn. Many colorful parrots can be found there. "
)
WALL ( ' , ' , 0x800000 , " rock I " , waRed1 , ZERO | WF_RED , RESERVED , 1 , sgNone , redrockhelp )
WALL ( ' : ' , 0xC00000 , " rock II " , waRed2 , ZERO | WF_RED , RESERVED , 2 , sgNone , redrockhelp )
WALL ( ' ; ' , 0xFF0000 , " rock III " , waRed3 , ZERO | WF_RED , RESERVED , 3 , sgNone , redrockhelp )
WALL ( ' . ' , 0xD0D0D0 , " minefield " , waMineUnknown , ZERO , RESERVED , 0 , sgNone , minedesc )
WALL ( ' . ' , 0xD0D0D0 , " minefield " , waMineMine , ZERO , RESERVED , 0 , sgNone , minedesc )
WALL ( ' . ' , 0x909090 , " cell without mine " , waMineOpen , ZERO , RESERVED , 0 , sgNone , minedesc )
WALL ( ' + ' , 0x808000 , " stranded boat " , waStrandedBoat , ZERO | WF_BOAT | WF_NOFLIGHT , RESERVED , 0 , sgNone ,
" This boat cannot go through the sand. But if you sit inside and "
" wait for the tide, you will be able to use it to travel through the Ocean. "
)
WALL ( ' # ' , 0xFFD500 , " palace wall " , waPalace , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone , palacedesc )
WALL ( ' + ' , 0xFFFFFF , " closed gate " , waClosedGate , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone , gatedesc )
WALL ( ' - ' , 0x404040 , " open gate " , waOpenGate , ZERO , RESERVED , 0 , sgNone , gatedesc )
WALL ( ' _ ' , 0xC00000 , " closing plate " , waClosePlate , ZERO , RESERVED , 0 , sgNone , gatedesc )
WALL ( ' _ ' , 0x00C050 , " opening plate " , waOpenPlate , ZERO , RESERVED , 0 , sgNone , gatedesc )
WALL ( ' _ ' , 0x202020 , " trapdoor " , waTrapdoor , ZERO , RESERVED , 0 , sgNone , " This floor will fall after someone goes there. Go quickly! " )
WALL ( ' + ' , 0xFF0000 , " giant rug " , waGiantRug , ZERO , RESERVED , 0 , sgNone ,
" This is the biggest Hypersian Rug you have ever seen! "
" Unfortunately, it is too large to take it as a trophy. " )
WALL ( ' # ' , 0xfffff0 , " platform " , waPlatform , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone , " You can stand here. " )
WALL ( ' # ' , 0x909090 , " stone gargoyle " , waGargoyle , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone , gargdesc )
WALL ( ' . ' , 0xB0B0B0 , " stone gargoyle floor " , waGargoyleFloor , ZERO , RESERVED , 1 , sgNone , gargdesc )
WALL ( ' . ' , 0x909090 , " rubble " , waRubble , ZERO , RESERVED , 1 , sgNone , " Some rubble. " )
WALL ( ' + ' , 0x804000 , " ladder " , waLadder , ZERO , RESERVED , 0 , sgNone ,
" You can use this ladder to climb the Tower. "
)
WALL ( ' # ' , 0xC0C0C0 , " limestone wall " , waStone , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone , " Simply a wall. Mostly. " )
WALL ( ' ^ ' , 0x804000 , " Bonfire " , waBonfireOff , WF_WALL | WF_ACTIVABLE , RESERVED , 0 , sgNone ,
" A heap of wood that can be used to start a fire. Everything is already here, you just need to touch it to fire it. "
)
WALL ( ' ^ ' , 0x8D694F , " Thumper " , waThumperOn , WF_WALL | WF_TIMEOUT | WF_PUSHABLE | WF_THUMPER , RESERVED , 0 , sgNone ,
" A device that attracts sandworms and other enemies. You need to activate it. " )
WALL ( ' ^ ' , 0x804000 , " Eternal Fire " , waEternalFire , WF_FIRE , RESERVED , 0 , sgNone ,
" This fire never burns out. "
)
WALL ( ' . ' , 0x909090 , " stone gargoyle bridge " , waGargoyleBridge , ZERO , RESERVED , 1 , sgNone , gargdesc )
WALL ( ' # ' , 0x309060 , " temporary wall " , waTempWall , WF_WALL | WF_HIGHWALL | WF_TIMEOUT , RESERVED , 0 , sgNone , twdesc )
WALL ( ' . ' , 0x309060 , " temporary floor " , waTempFloor , ZERO | WF_TIMEOUT , RESERVED , 1 , sgNone , twdesc )
WALL ( ' . ' , 0x309060 , " temporary bridge " , waTempBridge , ZERO | WF_TIMEOUT , RESERVED , 1 , sgNone , twdesc )
WALL ( ' # ' , 0x3030FF , " charged wall " , waCharged , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone , elecdesc )
WALL ( ' # ' , 0xFF3030 , " grounded wall " , waGrounded , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone , elecdesc )
WALL ( ' # ' , 0xA0A060 , " sandstone wall " , waSandstone , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone , elecdesc )
WALL ( ' # ' , 0x704000 , " saloon wall " , waSaloon , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone , wildwestdesc )
WALL ( ' # ' , 0x90C0C0 , " metal wall " , waMetal , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone , elecdesc )
WALL ( ' # ' , 0x607030 , " dead troll " , waDeadTroll2 , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone , trollhelpX )
WALL ( ' + ' , 0xC0C0FF , " fan " , waFan , WF_WALL , RESERVED , 0 , sgNone , winddesc )
WALL ( ' ? ' , 0xFF00FF , " <temporary> " , waTemporary , WF_WALL , RESERVED , 0 , sgNone , NODESC )
WALL ( ' ? ' , 0xFF00FF , " <earth d " , waEarthD , WF_WALL , RESERVED , 0 , sgNone , NODESC )
WALL ( ' ? ' , 0xFF00FF , " <elemental tmp> " , waElementalTmp , WF_WALL , RESERVED , 0 , sgNone , NODESC )
WALL ( ' ? ' , 0xFF00FF , " <elemental d> " , waElementalD , WF_WALL , RESERVED , 0 , sgNone , NODESC )
WALL ( ' + ' , 0x00F000 , " green slime " , waSlime1 , ZERO , RESERVED , 0 , sgNone , NODESC )
WALL ( ' + ' , 0xF0F000 , " yellow slime " , waSlime2 , ZERO , RESERVED , 0 , sgNone , NODESC )
WALL ( ' # ' , 0x764e7c , " rosebush " , waRose , WF_WALL | WF_HIGHWALL | WF_THORNY , RESERVED , 0 , sgNone , roselanddesc )
WALL ( ' # ' , 0xC0C000 , " warp gate " , waWarpGate , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone ,
" This gate separates the warped area from the normal land. " )
WALL ( ' + ' , 0x804000 , " trunk " , waTrunk , ZERO | WF_NOFLIGHT , RESERVED , 0 , sgNone , " The skeleton of a tree. " )
WALL ( ' - ' , 0x402000 , " solid branch " , waSolidBranch , ZERO , RESERVED , 0 , sgNone , " Branches here could bear your weight easily. " )
WALL ( ' : ' , 0x804000 , " weak branch " , waWeakBranch , ZERO , RESERVED , 0 , sgNone ,
" Branches here will bear you weight, but if you use them to move (not fall) to an unstable place, they will break. " )
WALL ( ' + ' , 0x60C060 , " canopy " , waCanopy , ZERO , RESERVED , 0 , sgNone ,
" Only thin twigs and leaves here. They may bear fruits, but for you, these cells count "
" as unstable. "
)
WALL ( ' # ' , 0xD0C060 , " barrow wall " , waBarrowWall , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone , " This wall is quite strong. You will need another way in. " )
WALL ( ' # ' , 0x90A060 , " barrow " , waBarrowDig , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone , " Your Orb of the Sword can be used to dig here. " )
WALL ( ' # ' , 0xE0E0E0 , " stone statue " , waPetrified , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone , " A petrified creature. " )
WALL ( ' . ' , 0xE8E8E8 , " tower of Camelot " , waTower , ZERO , RESERVED , 3 , sgNone , camelothelp )
WALL ( ' - ' , 0x402000 , " big bush " , waBigBush , ZERO | WF_NOFLIGHT , RESERVED , 0 , sgNone ,
" You can hold this bush to climb the Lost Mountain. "
" Bushes block the movement of birds. "
)
WALL ( ' : ' , 0x804000 , " small bush " , waSmallBush , ZERO | WF_NOFLIGHT , RESERVED , 0 , sgNone ,
" You can hold this bush to climb the Lost Mountain, "
" but it is not very strong -- it will get destroyed "
" if you climb from it into an unstable location. "
" Bushes block the movement of birds. " )
WALL ( ' . ' , 0xFFFF00 , " Reptile floor " , waReptile , ZERO | WF_REPTILE , RESERVED , 0 , sgNone , reptiledesc )
WALL ( ' . ' , 0xFFFF00 , " Reptile bridge " , waReptileBridge , ZERO | WF_REPTILE , RESERVED , 0 , sgNone , reptiledesc )
WALL ( ' . ' , 0xFFFF00 , " invisible floor " , waInvisibleFloor , ZERO , RESERVED , 0 , sgNone , NODESCYET )
WALL ( ' # ' , 0xC0C0FF , " mirror wall " , waMirrorWall , WF_WALL , RESERVED , 0 , sgNone , mirroreddesc )
WALL ( ' . ' , 0xE0E0E0 , " stepping stones " , waPetrifiedBridge , ZERO , RESERVED , 1 , sgNone , " A petrified creature. " )
WALL ( ' # ' , 0x309060 , " temporary wall " , waTempBridgeBlocked , WF_WALL | WF_HIGHWALL | WF_TIMEOUT , RESERVED , 0 , sgNone , twdesc )
WALL ( ' S ' , 0xB0B0B0 , " warrior statue " , waTerraWarrior , WF_WALL , RESERVED , 0 , sgNone , terradesc )
WALL ( ' = ' , 0xB0B0B0 , " bubbling slime " , waBubble , ZERO | WF_CHASM , RESERVED , 0 , sgNone , NODESC )
WALL ( ' ^ ' , 0xD00000 , " arrow trap " , waArrowTrap , ZERO , RESERVED , 0 , sgNone , arrowtrapdesc )
WALL ( ' = ' , 0xE2E2E2 , " mercury river " , waMercury , ZERO | WF_CHASM , RESERVED , 0 , sgNone , " A river of mercury. " )
WALL ( ' & ' , 0xD00000 , " lava " , waMagma , ZERO , RESERVED , 1 , sgNone , lavadesc )
WALL ( ' = ' , 0x804000 , " dock " , waDock , ZERO , RESERVED , 0 , sgNone , " A dock. " )
WALL ( ' ^ ' , 0xFF8000 , " burning dock " , waBurningDock , WF_FIRE | WF_TIMEOUT , RESERVED , 0 , sgNone , " A burning dock. " )
WALL ( ' # ' , 0xE04030 , " ruin wall " , waRuinWall , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone , ruindesc )
WALL ( ' # ' , 0xA04060 , " Brownian generator " , waBrownian , WF_WALL | WF_HIGHWALL , RESERVED , 0 , sgNone , NODESC )
WALL ( ' ^ ' , 0xC05000 , " fire trap " , waFireTrap , ZERO , RESERVED , 0 , sgNone ,
" This trap will explode when stepped on, setting all the adjacent cells on fire. However, this happens on the next turn, "
" so you can safely escape if you are fast enough. " )
WALL ( ' ^ ' , 0xFD692F , " Explosive Barrel " , waExplosiveBarrel , WF_WALL | WF_PUSHABLE , RESERVED , 0 , sgNone ,
" These barrels can be pushed, and they will explode if next to a fire, or under some attacks. "
)
WALL ( ' # ' , 0xC0C0C0 , " editable statue " , waEditStatue , WF_WALL , RESERVED , 0 , sgNone ,
" A statue. "
)
WALL ( ' + ' , 0x804000 , " trunk " , waTrunk3 , WF_WALL , RESERVED , 0 , sgNone , " The skeleton of a tree. " )
LAND ( 0xFF00FF , " ??? " , laNone , ZERO | LF_TECHNICAL , itNone , RESERVED , " " )
2019-04-11 19:33:17 +00:00
NATIVE ( 0 )
REQ ( NEVER )
2019-03-23 15:42:17 +00:00
LAND ( 0xC06000 , " Great Wall " , laBarrier , ZERO | LF_TECHNICAL , itNone , RESERVED , " " )
2019-04-11 19:33:17 +00:00
NATIVE ( 0 )
REQ ( NEVER )
2019-03-23 15:42:17 +00:00
LAND ( 0xFF0000 , " Crossroads " , laCrossroads , ZERO , itHyperstone , RESERVED ,
" This land is a quick gateway to other lands. It is very easy to find other lands "
" from the Crossroads. Which means that you find monsters from most other lands here! \n \n "
" As long as you have found enough treasure in their native lands, you can "
" find magical items in the Crossroads. Mirror Land brings mirrors and clouds, "
" and other land types bring magical orbs. \n \n "
" A special treasure, Hyperstone, can be found on the Crossroads, but only "
" after you have found 10 of every other treasure. "
)
2019-04-11 19:33:17 +00:00
NATIVE ( 0 )
REQ ( ALWAYS )
2019-03-23 15:42:17 +00:00
LAND ( 0xCDA98F , " Desert " , laDesert , ZERO , itSpice , RESERVED ,
" A hot land, full of sand dunes, mysterious Spice, and huge and dangerous sand worms. "
)
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moDesertman | | m = = moWorm ) ? 2 : 0 )
REQ ( ALWAYS )
2019-03-23 15:42:17 +00:00
LAND ( 0x8080FF , " Icy Land " , laIce , ZERO | LF_ICY , itDiamond , RESERVED ,
" A very cold land, full of ice walls. Your mere presence will cause these ice walls to "
" melt, even if you don't want it. "
)
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moWolf | | m = = moWolfMoved | | m = = moYeti ) ? 2 : 0 )
REQ ( ALWAYS )
2019-03-23 15:42:17 +00:00
LAND ( 0x306060 , " Living Cave " , laCaves , ZERO | LF_TROLL , itGold , RESERVED , cavehelp )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moGoblin | | m = = moTroll ) ? 2 : m = = moSeep ? 1 : 0 )
REQ ( ALWAYS )
2019-03-23 15:42:17 +00:00
LAND ( 0x00C000 , " Jungle " , laJungle , ZERO , itRuby , RESERVED ,
" A land filled with huge ivy plants and dangerous animals. "
)
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moIvyRoot | | m = = moMonkey ) ? 2 : ( isIvy ( m ) | | m = = moEagle | | m = = moMonkey ) ? 1 : 0 )
REQ ( ALWAYS )
2019-03-23 15:42:17 +00:00
LAND ( 0x900090 , " Alchemist Lab " , laAlchemist , ZERO , itElixir , RESERVED , slimehelp )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moSlime ) ? 2 : 0 )
REQ ( ALWAYS )
2019-03-23 15:42:17 +00:00
LAND ( 0x704070 , " Hall of Mirrors " , laMirror , ZERO | LF_MIRROR , itShard , RESERVED ,
" A strange land filled with mirrors. "
" Break magic mirrors and mirage clouds to "
" gain treasures and helpful Mimics. "
)
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moMirrorSpirit | | m = = moNarciss | | m = = moMimic ) ? 1 : 0 )
REQ ( GOLD ( R30 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x404070 , " Graveyard " , laGraveyard , ZERO , itBone , RESERVED ,
" All the monsters you kill are carried to this strange land, and buried. "
" Careless Rogues are also carried here... "
)
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moZombie | | m = = moNecromancer ) ? 2 : m = = moGhost ? 1 : 0 )
REQ ( KILLS ( R100 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x00FF00 , " R'Lyeh " , laRlyeh , ZERO , itStatue , RESERVED ,
" An ancient sunken city which can be reached only when the stars are right. \n \n "
" You can find Temples of Cthulhu in R'Lyeh once you collect five Statues of Cthulhu. "
)
2019-04-11 19:33:17 +00:00
NATIVE (
( m = = moCultist | | m = = moTentacle | | m = = moPyroCultist ) ? 2 :
( m = = moCultistLeader | | isIvy ( m ) ) ? 1 : 0 )
REQ ( ACCONLYF ( laOcean ) GOLD ( R60 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xC00000 , " Hell " , laHell , ZERO , itHell , RESERVED ,
" A land filled with demons and molten sulphur. Abandon all hope ye who enter here! "
)
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moLesser | | m = = moGreater ) ? 2 : 0 )
REQ ( NUMBER ( orbsUnlocked ( ) , 9 , XLAT ( " Finished lands required: %1 (collect %2 treasure) \n " , " 9 " , its ( R10 ) ) ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x00FF00 , " Cocytus " , laCocytus , ZERO | LF_ICY , itSapphire , RESERVED ,
cocytushelp
)
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moShark | | m = = moGreaterShark | | m = = moCrystalSage ) ? 2 : m = = moYeti ? 1 : 0 )
REQ ( ITEMS ( itHell , U10 ) ITEMS ( itDiamond , U10 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xFFFF00 , " Land of Eternal Motion " , laMotion , ZERO , itFeather , RESERVED ,
" A land where you cannot stop, because every piece of floor is extremely unstable. Only monsters who "
" can run forever are able to survive there, and only phoenix feathers are so light that they do not disturb "
" the floor. \n "
)
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moRunDog ) ? 2 : 0 )
REQ ( ALWAYS )
2019-03-23 15:42:17 +00:00
LAND ( 0x008000 , " Dry Forest " , laDryForest , ZERO , itFernFlower , RESERVED , foresthelp )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moHedge | | m = = moFireFairy ) ? 2 : 0 )
REQ ( GOLD ( R60 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x60C060 , " Emerald Mine " , laEmerald , ZERO , itEmerald , RESERVED ,
" Evil people are mining for emeralds in this living cave. "
" It does not grow naturally, but it is dug out in a regular "
" pattern, which is optimal according to the evil engineers. "
)
2019-09-27 14:46:47 +00:00
NATIVE ( ( m = = moFlailer | | m = = moLancer | | m = = moMiner ) ? 2 : among ( m , moHedge , moSeep ) ? 1 : 0 )
2019-04-11 19:33:17 +00:00
REQ ( ORD ( AKILL ( moVizier , laPalace ) , ITEMS ( itFernFlower , U5 ) ITEMS ( itGold , U5 ) ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x421C52 , " Vineyard " , laWineyard , ZERO , itWine , RESERVED , vinehelp )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moVineSpirit | | m = = moVineBeast ) ? 2 : 0 )
REQ ( GOLD ( R60 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x104040 , " Dead Cave " , laDeadCaves , ZERO | LF_TROLL , itSilver , RESERVED , deadcavehelp )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moEarthElemental | | m = = moDarkTroll ) ? 2 : ( m = = moGoblin | | m = = moSeep ) ? 1 : 0 )
2019-11-27 23:09:07 +00:00
REQ ( GOLD ( R60 ) ITEMS ( itGold , U10 ) )
2019-04-11 19:33:17 +00:00
2019-03-23 15:42:17 +00:00
LAND ( 0x705020 , " Hive " , laHive , ZERO , itRoyalJelly , RESERVED , hivehelp )
2019-04-11 19:33:17 +00:00
NATIVE ( isBug ( m ) ? 1 : 0 )
REQ ( KILLS ( R100 ) GOLD ( R60 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xFFFF00 , " Land of Power " , laPower , ZERO , itPower , RESERVED ,
" The Land of Power is filled with everburning fire, magical Orbs, and guarded by "
" witches and golems. There are basic orbs lying everywhere, and more prized ones "
" are kept in crystal cabinets. \n \n "
" Witches are allowed to use all the powers of the "
" basic orbs against intruders. These powers never expire, but a Witch "
" can use only one power at a time (not counting Orbs of Life). \n \n "
" Witches and Golems don't pursue you into other Lands. Also, most Orb powers "
" are drained when you leave the Land of Power. "
)
2019-04-11 19:33:17 +00:00
NATIVE ( ( isWitch ( m ) | | m = = moEvilGolem ) ? 1 : 0 )
REQ ( ITEMS ( itHell , U10 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xD0D0D0 , " Camelot " , laCamelot , ZERO | LF_CYCLIC , itHolyGrail , RESERVED , camelothelp )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moKnight | | m = = moHedge | | m = = moFlailer | | m = = moLancer ) ? 1 : 0 )
REQ ( ITEMS ( itEmerald , U5 ) ACCONLY2 ( laCrossroads , laCrossroads3 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xD000D0 , " Temple of Cthulhu " , laTemple , ZERO | LF_CYCLIC , itGrimoire , RESERVED , templehelp )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moTentacle | | m = = moCultist | | m = = moPyroCultist | | m = = moCultistLeader ) ? 1 : 0 )
REQ ( ACCONLY ( laRlyeh ) ITEMS ( itStatue , U5 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xFF8000 , " Crossroads II " , laCrossroads2 , ZERO , itHyperstone , RESERVED ,
" An alternate layout of the Crossroads. It is more dense and more regular, "
" although you won't find the castle of Camelot here. "
)
2019-04-11 19:33:17 +00:00
NATIVE ( 0 )
REQ ( GOLD ( R60 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x0000FF , " Caribbean " , laCaribbean , ZERO | LF_SEA | LF_PURESEA , itPirate , RESERVED , caribbeanhelp )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moPirate | | m = = moParrot | | m = = moCShark ) ? 1 : 0 )
REQAS ( laOcean , )
2019-03-23 15:42:17 +00:00
LAND ( 0x400000 , " Red Rock Valley " , laRedRock , ZERO | LF_TROLL , itRedGem , RESERVED , redrockhelp )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moRedTroll | | m = = moHexSnake ) ? 2 : 0 )
REQ ( GOLD ( R60 ) ITEMS ( itSpice , 10 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xD0D0D0 , " Minefield " , laMinefield , ZERO , itBombEgg , RESERVED , minedesc )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moBomberbird | | m = = moTameBomberbird ) ? 1 : 0 )
REQ ( GOLD ( R30 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x2020FF , " Ocean " , laOcean , ZERO | LF_EQUI | LF_SEA | LF_COASTAL , itCoast , RESERVED ,
" You can collect some valuable Ambers on the coast, but beware the tides! \n \n "
" You can also take one of the boats and venture into the Ocean, "
" to find other coasts, dangerous whirlpools, and islands inhabited by Pirates. "
)
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moBomberbird | | m = = moTameBomberbird ) ? 1 : 0 )
REQ ( GOLD ( R30 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x0000C0 , " Whirlpool " , laWhirlpool , ZERO | LF_CYCLIC | LF_SEA , itWhirlpool , RESERVED ,
" Many lost boats are spinning in this whirlpool. Some of them contain treasures "
" and Pirates. \n \n "
" Unmanned boats will go one cell clockwise in each turn. Sharks and manned boats "
" are only allowed to go with the current, that is, towards the center, or clockwise. "
)
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moPirate | | m = = moCShark ) ? 1 : 0 )
REQAS ( laOcean , ACCONLY ( laOcean ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xFFD500 , " Palace " , laPalace , ZERO , itPalace , RESERVED , palacedesc )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moPalace | | m = = moFatGuard | | m = = moSkeleton | | m = = moVizier ) ? 2 :
m = = moSkeleton ? 1 : 0 )
REQ ( GOLD ( R30 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xC0C000 , " Living Fjord " , laLivefjord , ZERO | LF_SEA | LF_COASTAL | LF_TROLL , itFjord , RESERVED ,
" A coastal area, from where you can get both to the inland worlds and to the Ocean. "
" Each turn, each cell will become water or earth, based on the majority of cells around it. "
" Contrary to the Living Caves, this process is not affected by most items and monsters, "
" but elementals, dead Trolls, and cells outside of the Living Fjord have "
" a very powerful effect. "
)
2019-04-11 19:33:17 +00:00
NATIVE ( m = = moViking ? 2 : ( m = = moFjordTroll | | m = = moWaterElemental ) ? 1 : 0 )
REQAS ( laOcean , )
2019-03-23 15:42:17 +00:00
LAND ( 0xFFFFE0 , " Ivory Tower " , laIvoryTower , ZERO | LF_GRAVITY | LF_EQUI , itIvory , RESERVED , " Powerful wizards claimed this part of the world, to perform their magical "
" experiments in peace and solitude. They have changed the direction of gravity, "
" to make it even harder for intruders to reach them. \n \n "
" Gravity works as follows: cells are unstable if they are empty, and there is "
" no cell immediately below them which contains a wall. It is impossible to move "
" from one unstable cell to another, except if moving down. " )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moFamiliar | | m = = moGargoyle ) ? 2 : 0 )
REQ ( GOLD ( R30 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x606060 , " Zebra " , laZebra , ZERO , itZebra , RESERVED , " Everything in this Land has black and white stripes. " )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moOrangeDog ) ? 2 : 0 )
REQ ( GOLD ( R30 ) ITEMS ( itFeather , U10 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xC08080 , " Plane of Fire " , laEFire , ZERO | LF_ELEMENTAL , itElemental , RESERVED , elemdesc )
2019-09-27 14:47:09 +00:00
NATIVE ( m = = moFireElemental ? 2 : isNative ( laElementalWall , m ) )
2019-04-11 19:33:17 +00:00
REQAS ( laElementalWall , )
2019-03-23 15:42:17 +00:00
LAND ( 0x808080 , " Plane of Air " , laEAir , ZERO | LF_ELEMENTAL , itElemental , RESERVED , elemdesc )
2019-09-27 14:47:09 +00:00
NATIVE ( m = = moAirElemental ? 2 : isNative ( laElementalWall , m ) )
2019-04-11 19:33:17 +00:00
REQAS ( laElementalWall , )
2019-03-23 15:42:17 +00:00
LAND ( 0x80C080 , " Plane of Earth " , laEEarth , ZERO | LF_ELEMENTAL , itElemental , RESERVED , elemdesc )
2019-09-27 14:47:09 +00:00
NATIVE ( m = = moEarthElemental ? 2 : isNative ( laElementalWall , m ) )
2019-04-11 19:33:17 +00:00
REQAS ( laElementalWall , )
2019-03-23 15:42:17 +00:00
LAND ( 0x8080C0 , " Plane of Water " , laEWater , ZERO | LF_ELEMENTAL , itElemental , RESERVED , elemdesc )
2019-09-27 14:47:09 +00:00
NATIVE ( m = = moWaterElemental ? 2 : isNative ( laElementalWall , m ) )
2019-04-11 19:33:17 +00:00
REQAS ( laElementalWall , )
2019-03-23 15:42:17 +00:00
LAND ( 0x4040FF , " Crossroads III " , laCrossroads3 , ZERO , itHyperstone , RESERVED ,
" An alternate layout of the Crossroads. Great Walls cross here at right angles. "
)
2019-04-11 19:33:17 +00:00
NATIVE ( 0 )
REQ ( NUMBER ( orbsUnlocked ( ) , 9 , XLAT ( " Finished lands required: %1 (collect %2 treasure) \n " , " 9 " , its ( R10 ) ) ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x4040C0 , " Sea Border " , laOceanWall , ZERO | LF_TECHNICAL | LF_SEA , itNone , RESERVED , " Border between seas. " )
2019-04-11 19:33:17 +00:00
// REQAS(laOcean,)
REQ ( NEVER )
NATIVE ( 0 )
2019-03-23 15:42:17 +00:00
LAND ( 0x4040C0 , " Elemental Planes " , laElementalWall , ZERO | LF_ELEMENTAL , itElemental , RESERVED , elemdesc )
2019-09-27 14:47:09 +00:00
NATIVE ( ( m = = moAirElemental | | m = = moEarthElemental | | m = = moWaterElemental | | m = = moFireElemental ) ? 1 : 0 )
2019-04-11 19:33:17 +00:00
REQ ( KILL ( moAirElemental , laWhirlwind ) KILL ( moWaterElemental , laLivefjord ) KILL ( moEarthElemental , laDeadCaves ) KILL ( moFireElemental , laDragon ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xE08020 , " Canvas " , laCanvas , ZERO | LF_TECHNICAL , itNone , RESERVED , " A fake Land with colored floors. " )
2019-04-11 19:33:17 +00:00
NATIVE ( 0 )
REQ ( NEVER )
2019-03-23 15:42:17 +00:00
LAND ( 0x00C000 , " Palace Quest " , laPrincessQuest , ZERO , itSavedPrincess , RESERVED , princessdesc ) // fake
2019-04-11 19:33:17 +00:00
NATIVE ( isNative ( laPalace , m ) )
REQ ( ACCONLY ( laPalace ) KILL ( moVizier , laPalace ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xD0D060 , " Wild West " , laWildWest , ZERO , itBounty , RESERVED , wildwestdesc )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moOutlaw ) ? 2 : 0 )
REQ ( NEVER )
2020-02-26 00:05:05 +00:00
LAND ( 0x80A080 , " Land of Storms " , laStorms , ZERO | LF_TROLL | LF_ELECTRIC , itFulgurite , RESERVED , elecdesc )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moMetalBeast | | m = = moMetalBeast2 | | m = = moStormTroll ) ? 1 : 0 )
REQ ( GOLD ( R60 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x20A050 , " Overgrown Woods " , laOvergrown , ZERO | LF_TROLL , itMutant , RESERVED , overdesc )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moMutant | | m = = moForestTroll ) ? 1 : 0 )
REQ ( GOLD ( R60 ) ITEMS ( itRuby , U10 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x20D050 , " Clearing " , laClearing , ZERO | LF_CYCLIC , itMutant2 , RESERVED , cleardesc )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moMutant | | m = = moRedFox ) ? 1 : 0 )
REQ ( ACCONLY ( laOvergrown ) ITEMS ( itMutant , U5 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x303030 , " Haunted Woods " , laHaunted , ZERO | LF_EQUI | LF_HAUNTED , itLotus , RESERVED , hauntdesc )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moGhost | | m = = moFriendlyGhost ) ? 1 : 0 )
REQ ( ACCONLY ( laGraveyard ) ITEMS ( itBone , U10 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x303030 , " Haunted Woods " , laHauntedWall , ZERO | LF_EQUI | LF_TECHNICAL | LF_HAUNTED , itLotus , RESERVED , hauntdesc )
2019-04-11 19:33:17 +00:00
NATIVE ( isNative ( laHaunted , m ) )
REQAS ( laHaunted , )
2019-03-23 15:42:17 +00:00
LAND ( 0x303030 , " Haunted Woods " , laHauntedBorder , ZERO | LF_EQUI | LF_TECHNICAL | LF_HAUNTED , itLotus , RESERVED , hauntdesc )
2019-04-11 19:33:17 +00:00
NATIVE ( isNative ( laHaunted , m ) )
REQAS ( laHaunted , )
2019-03-23 15:42:17 +00:00
LAND ( 0xC0C0FF , " Windy Plains " , laWhirlwind , ZERO , itWindstone , RESERVED , winddesc )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moAirElemental | | m = = moWindCrow ) ? 2 : 0 )
REQ ( GOLD ( R60 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x764e7c * 2 , " Rose Garden " , laRose , ZERO , itRose , RESERVED , roselanddesc )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moFalsePrincess | | m = = moRoseBeauty | | m = = moRoseLady ) ? 2 : 0 )
REQ ( GOLD ( R60 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xFFD580 , " Warped Coast " , laWarpCoast , ZERO | LF_WARPED | LF_COASTAL , itCoral , RESERVED , warplanddesc )
2019-04-11 19:33:17 +00:00
NATIVE ( m = = moRatling ? 2 : m = = moRatlingAvenger ? 1 : 0 )
REQAS ( laOcean , )
2019-03-23 15:42:17 +00:00
LAND ( 0xFFD580 , " Warped Sea " , laWarpSea , ZERO | LF_WARPED | LF_SEA | LF_COASTAL , itCoral , RESERVED , warplanddesc )
2019-04-11 19:33:17 +00:00
NATIVE ( isNative ( laWarpCoast , m ) )
REQAS ( laWarpCoast , )
2019-03-23 15:42:17 +00:00
LAND ( 0xC08080 , " Crossroads IV " , laCrossroads4 , ZERO , itHyperstone , RESERVED ,
" An alternate layout of the Crossroads, without walls. "
)
2019-04-11 19:33:17 +00:00
NATIVE ( 0 )
REQ ( GOLD ( R200 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xFFD580 , " Yendorian Forest " , laEndorian , ZERO | LF_GRAVITY | LF_EQUI , itApple , RESERVED ,
" This forest was planted by one of the wizards from the Ivory Tower "
" to conduct experiments with gravity. "
)
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moResearcher | | m = = moSparrowhawk ) ? 2 : 0 )
REQ ( ITEMS ( itIvory , U10 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x487830 , " Galápagos " , laTortoise , ZERO , itBabyTortoise , RESERVED , tortoisedesc )
2019-04-11 19:33:17 +00:00
NATIVE ( m = = moTortoise ? 1 : 0 )
REQ ( COND ( tortoise : : seek ( ) , XLAT ( " Find a %1 in %the2. " , itBabyTortoise , laDragon ) ) ACCONLY ( laDragon ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xD04000 , " Dragon Chasms " , laDragon , ZERO , itDragon , RESERVED , dragondesc )
2019-04-11 19:33:17 +00:00
NATIVE ( ( isDragon ( m ) | | m = = moFireElemental ) ? 1 : 0 )
REQ ( NUMBER ( killtypes ( ) , R20 , XLAT ( " Different kills required: %1. \n " , its ( R20 ) ) ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xD04000 , " Kraken Depths " , laKraken , ZERO | LF_SEA | LF_PURESEA , itKraken , RESERVED ,
" A long time ago, this was a trade route. But then, Krakens have risen out of the "
" depths. Many trading ships sank here. Legend says that you can uncover the secret "
" of a magical weapon spell somewhere in the depths... \n \n "
" You can find Sunken Treasures here, but they won't appear until you have killed "
" a Kraken. You will also need Orb of the Fish to get the treasures, luckily you can "
" steal one from the Viking treasure hunters. "
)
2019-04-11 19:33:17 +00:00
NATIVE ( m = = moKrakenH ? 2 : ( m = = moViking | | m = = moKrakenT ) ? 1 : 0 )
REQ ( ITEMS ( itFjord , U10 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x804020 , " Burial Grounds " , laBurial , ZERO , itBarrow , RESERVED ,
" Ancient Viking heroes were buried here. Their graves have barrows raised over "
" them, and are guarded by Draugar, animated corpses who are immune to mundane weapons. "
" You will need to use a magical weapon spell to defeat them, and to rob the "
" ancient jewelry buried in the graves. "
)
2019-04-11 19:33:17 +00:00
NATIVE ( m = = moDraugr ? 1 : 0 )
2019-05-15 08:22:35 +00:00
REQ ( ITEMS ( itKraken , U10 ) )
2019-04-11 19:33:17 +00:00
2019-03-23 15:42:17 +00:00
LAND ( 0x90A548 , " Trollheim " , laTrollheim , ZERO , itTrollEgg , RESERVED ,
" Many clans of Trolls spend their lives in this kingdom. You can find many "
" statues of Trolls here. You suppose that they are not actually statues, but simply "
" elderly Trolls, who have petrified upon death. Or maybe you have killed "
" these Trolls yourself? "
)
2019-04-11 19:33:17 +00:00
NATIVE ( isTroll ( m ) ? 1 : 0 )
REQ ( KILL ( moTroll , laCaves ) KILL ( moDarkTroll , laDeadCaves ) KILL ( moRedTroll , laRedRock ) KILL ( moStormTroll , laStorms ) KILL ( moForestTroll , laOvergrown ) KILL ( moFjordTroll , laLivefjord ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xFF7518 , " Halloween " , laHalloween , ZERO , itTreat , RESERVED , halloweendesc )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moGhost | | m = = moZombie | | m = = moWitch | |
m = = moLesser | | m = = moGreater | |
m = = moVampire | | m = = moDraugr | |
m = = moSkeleton | | m = = moWitchFire | |
m = = moFlailer | | m = = moPyroCultist | |
m = = moFatGuard | | m = = moHedge | |
m = = moLancer | | m = = moFireFairy | |
m = = moBomberbird | | m = = moRatlingAvenger | |
m = = moVineBeast | | m = = moDragonHead | | m = = moDragonTail ) ? 1 : 0 )
REQ ( NEVER )
2019-03-23 15:42:17 +00:00
LAND ( 0x605040 , " Dungeon " , laDungeon , ZERO | LF_GRAVITY | LF_EQUI , itSlime , RESERVED ,
" The result of a collaboration of the Great Vizier and the Wizard of the Ivory Tower. "
)
2019-04-11 19:33:17 +00:00
NATIVE ( m = = moBat ? 2 : m = = moSkeleton | | m = = moGhost ? 1 : 0 )
REQ ( ITEMS ( itPalace , U5 ) ITEMS ( itIvory , U5 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x603000 , " Lost Mountain " , laMountain , ZERO | LF_GRAVITY | LF_CYCLIC , itAmethyst , RESERVED ,
" Gravitational anomalies in the Jungle create mountains "
" overgrown with ivies and bushes. "
" Will you dare to climb the ivies to get the amethysts hidden above? \n \n "
" Cells adjacent to Ivies count as stable (but Ivies "
" cannot climb themselves or other Ivies). " )
2019-04-11 19:33:17 +00:00
NATIVE ( m = = moEagle | | m = = moMonkey | | isIvy ( m ) | | m = = moFriendlyIvy ? 1 : 0 )
REQ ( ITEMS ( itRuby , U5 ) ITEMS ( itIvory , U5 ) ACCONLY ( laJungle ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xFFFF00 , " Reptiles " , laReptile , ZERO , itDodeca , RESERVED , reptiledesc )
2019-04-11 19:33:17 +00:00
NATIVE ( m = = moReptile ? 1 : 0 )
REQ ( GOLD ( R30 ) ITEMS ( itElixir , U10 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x0000D0 , " Prairie " , laPrairie , ZERO , itGreenGrass , RESERVED , prairiedesc )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moRagingBull | | m = = moHerdBull | | m = = moGadfly ) ? 1 : 0 )
REQ ( GOLD ( R90 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x800080 , " Bull Dash " , laBull , ZERO , itBull , RESERVED , bulldashdesc )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moSleepBull | | m = = moRagingBull | | m = = moButterfly | | m = = moGadfly ) ? 1 : 0 )
REQ ( GOLD ( R90 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xC000C0 , " Crossroads V " , laCrossroads5 , ZERO , itHyperstone , RESERVED , " Extremely narrow Crossroads layout. \n " )
2019-04-11 19:33:17 +00:00
NATIVE ( 0 )
REQ ( GOLD ( R300 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xC0C0C0 , " Cellular Automaton " , laCA , ZERO | LF_TECHNICAL , itNone , RESERVED , cadesc )
2019-04-11 19:33:17 +00:00
NATIVE ( 0 )
REQ ( NEVER )
2019-03-23 15:42:17 +00:00
LAND ( 0xC0C0FF , " Mirror Wall " , laMirrorWall , ZERO | LF_TECHNICAL | LF_INMIRRORORWALL , itShard , RESERVED , mirroreddesc )
2019-04-11 19:33:17 +00:00
NATIVE ( isNative ( laMirror , m ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xC8C8FF , " Reflection " , laMirrored , ZERO | LF_TECHNICAL | LF_INMIRROR | LF_INMIRRORORWALL , itShard , RESERVED , mirroreddesc )
2019-04-11 19:33:17 +00:00
NATIVE ( isNative ( laMirror , m ) )
REQAS ( laMirror , )
2019-03-23 15:42:17 +00:00
LAND ( 0xC0C0FF , " Reflection " , laMirrorWall2 , ZERO | LF_TECHNICAL | LF_INMIRROR | LF_INMIRRORORWALL , itShard , RESERVED , mirroreddesc )
2019-04-11 19:33:17 +00:00
NATIVE ( isNative ( laMirror , m ) )
REQAS ( laMirror , )
2019-03-23 15:42:17 +00:00
LAND ( 0xC8C8FF , " Reflection " , laMirrored2 , ZERO | LF_TECHNICAL | LF_INMIRROR | LF_INMIRRORORWALL , itShard , RESERVED , mirroreddesc )
2019-04-11 19:33:17 +00:00
NATIVE ( isNative ( laMirror , m ) )
REQAS ( laMirror , )
2019-03-23 15:42:17 +00:00
LAND ( 0xC8C8FF , " Mirror Land " , laMirrorOld , ZERO | LF_MIRROR , itShard , RESERVED ,
" A strange land which contains mirrors and mirages, protected by Mirror Rangers. " )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moEagle | | m = = moRanger | | m = = moMimic ) ? 1 : 0 )
REQ ( GOLD ( R30 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xA06000 , " Volcanic Wasteland " , laVolcano , ZERO , itLavaLily , RESERVED , lavadesc )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moLavaWolf | | m = = moSalamander ) ? 2 : 0 )
REQ ( GOLD ( R60 ) ITEMS ( itElixir , U10 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x8080FF , " Blizzard " , laBlizzard , ZERO | LF_ICY , itBlizzard , RESERVED , blizzarddesc )
2019-04-11 19:33:17 +00:00
NATIVE ( ( m = = moVoidBeast | | m = = moIceGolem ) ? 2 : 0 )
REQ ( ITEMS ( itDiamond , U5 ) ITEMS ( itWindstone , U5 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x207068 , " Hunting Ground " , laHunting , ZERO , itHunting , RESERVED , huntingdesc )
2019-04-11 19:33:17 +00:00
NATIVE ( m = = moHunterDog ? 1 : 0 )
REQ ( ALWAYS )
2019-03-23 15:42:17 +00:00
LAND ( 0xE2725B , " Terracotta Army " , laTerracotta , ZERO , itTerra , RESERVED , terraldesc )
2019-04-11 19:33:17 +00:00
NATIVE ( m = = moJiangshi ? 2 : m = = moTerraWarrior ? 1 : 0 )
REQ ( GOLD ( R90 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xE2725B , " Terracotta Army " , laMercuryRiver , ZERO | LF_TECHNICAL , itTerra , RESERVED , terraldesc )
2019-04-11 19:33:17 +00:00
NATIVE ( isNative ( laTerracotta , m ) )
REQAS ( laTerracotta , )
2019-03-23 15:42:17 +00:00
LAND ( 0x80FF00 , " Crystal World " , laDual , ZERO , itGlowCrystal , RESERVED , crystaldesc )
2019-04-11 19:33:17 +00:00
NATIVE ( m = = moRatling ? 2 : 0 )
REQ ( GOLD ( R90 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x306030 , " Snake Nest " , laSnakeNest , ZERO , itSnake , RESERVED , NODESCYET )
2019-04-11 19:33:17 +00:00
NATIVE ( m = = moHexSnake ? 2 : 0 )
REQ ( GOLD ( R90 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x80FF00 , " Docks " , laDocks , ZERO | LF_SEA , itDock , RESERVED , NODESCYET )
2019-04-11 19:33:17 +00:00
NATIVE ( among ( m , moRatling , moPirate , moCShark , moAlbatross , moFireFairy ) ? 2 : 0 )
REQAS ( laOcean , )
2019-03-23 15:42:17 +00:00
LAND ( 0x306030 , " Ruined City " , laRuins , ZERO , itRuins , RESERVED , ruindesc )
2019-05-20 11:41:08 +00:00
NATIVE ( among ( m , moPair , moHexDemon , moAltDemon , moMonk , moCrusher ) ? 2 : m = = moSkeleton ? 1 : 0 )
2019-04-11 19:33:17 +00:00
REQ ( KILL ( moSkeleton , laPalace ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x306030 , " Magnetosphere " , laMagnetic , ZERO , itMagnet , RESERVED , NODESCYET )
2019-04-11 19:33:17 +00:00
NATIVE ( isMagneticPole ( m ) ? 2 : 0 )
REQ ( NEVER )
2019-03-23 15:42:17 +00:00
LAND ( 0x306030 , " Jelly Kingdom " , laSwitch , ZERO , itSwitch , RESERVED , jellydesc )
2019-04-11 19:33:17 +00:00
NATIVE ( m = = moSwitch1 | | m = = moSwitch2 ? 2 : 0 )
REQ ( GOLD ( R30 ) ITEMS ( itElixir , U10 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0xFF00FF , " Lost Memory " , laMemory , ZERO | LF_TECHNICAL , itNone , RESERVED ,
" Because of the properties of hyperbolic geometry, it is extremely unlikely to randomly "
" get back to a faraway place you have been to. However, you have managed to get there "
" somehow. In the meantime, its memory has been cleared, since the 'remove faraway cells from the memory' "
" option was on. "
)
2019-04-11 19:33:17 +00:00
NATIVE ( 0 )
REQ ( NEVER )
2019-03-23 15:42:17 +00:00
LAND ( 0x804000 , " Brown Island " , laBrownian , ZERO | LF_PURESEA , itBrownian , RESERVED ,
" The Brown Islands have been generated by ancient underground creatures, who moved randomly and raised lands in their path... "
" adults spawned larvae in each move, which also moved randomly and also raised lands in their path, and eventually became adults and spawned their own larvae. "
" The creatures spawned exponentially, but the space they lived in still grew faster, so there was enough space for the whole spawn... \n \n "
" That was a long time ago. Now, the mountainous Brown Islands are inhabited by strange monsters. Good luck adventuring! \n \n "
" Parts of the Brown Islands have different elevations, from 0 to 3. It is impossible to gain two or more levels, "
" or to lose three levels, in a single move, (attacks are possible at any "
" difference, though). Killed Bronze Beasts rise the land by one level. "
)
2019-04-11 19:33:17 +00:00
NATIVE ( among ( m , moBrownBug , moAcidBird ) ? 2 : 0 )
REQAS ( laOcean , )
2019-03-23 15:42:17 +00:00
LAND ( 0x211F6F , " Free Fall " , laWestWall , ZERO | LF_GRAVITY | LF_EQUI , itWest , RESERVED ,
" What on one side looks to be a normal (well, infinite) horizontal wall, on to the other side turns out to be the vertical wall "
" of an infinitely high tower. Jump from the window, and let the magical gravity carry you... "
)
2019-04-11 19:33:17 +00:00
NATIVE ( among ( m , moWestHawk , moFallingDog ) ? 2 : 0 )
REQ ( ITEMS ( itFeather , 5 ) ITEMS ( itIvory , 5 ) )
2019-03-23 15:42:17 +00:00
LAND ( 0x30FF30 , " Irradiated Field " , laVariant , ZERO , itVarTreasure , RESERVED ,
" These fields are ravaged with many kinds of magical radiation, which not only make the ground glow nicely in various colors, "
" but also cause the inhabitants to protect the treasures of their land in various ways. In some areas of the Irradiated Fields, "
" you will meet powerful enemies; in other areas, you will find arrow traps, fire traps, or pools, which can kill you if you are "
" careless, or help you if you know how to use them to your advantage. Will you walk through the Irradiated Fields randomly, or "
" try to find areas where treasures are common but nasty monsters are not, and keep to them? It is your choice! \n \n "
)
2019-04-11 19:33:17 +00:00
NATIVE (
m = = moVariantWarrior ? 2 :
among ( m , moMonk , moCrusher , moSkeleton , moHedge , moLancer , moFlailer , moCultist , moPyroCultist , moNecromancer , moGhost , moZombie , moRatling ) ? 1 :
isIvy ( m ) ? 1 : 0 )
# define LST {itRuins, itEmerald, itBone}
REQ ( ITEMS_TOTAL ( LST , variant_unlock_value ( ) ) )
# undef LST
2019-03-23 15:42:17 +00:00
// add new content here
2019-04-04 12:54:55 +00:00
LAND ( 0x202020 , " Space Rocks " , laAsteroids , ZERO , itAsteroid , RESERVED , rock_description )
ITEM ( ' ! ' , 0xFFD0D0 , " Fuel " , itAsteroid , IC_TREASURE , ZERO , RESERVED , osNone , rock_description )
MONSTER ( ' A ' , 0x606040 , " Space Rock " , moAsteroid , ZERO , RESERVED , moAsteroid , rock_description )
2019-04-11 19:33:17 +00:00
NATIVE ( m = = moAsteroid ? 2 : 0 )
REQ ( NEVER )
2020-02-26 00:05:05 +00:00
LAND ( 0x00C0C0 , " Wetland " , laWet , ZERO , itWet , RESERVED , NODESCYET )
ITEM ( ' % ' , 0xFFD500 , " Water Lily " , itWet , IC_TREASURE , ZERO , RESERVED , osNone , NODESCYET )
WALL ( ' = ' , 0x00C0C0 , " shallow water " , waShallow , ZERO , RESERVED , 0 , sgWater , NODESCYET )
WALL ( ' = ' , 0x0000A0 , " deep water " , waDeepWater , WF_WATER , RESERVED , 0 , sgWater , NODESCYET )
MONSTER ( ' P ' , 0xC08080 , " Pike " , moPike , CF_FACE_SIDE | CF_SHARK , RESERVED , moShark ,
" You remembler anglers from your hometown showing the impressive pikes they have caught. This one is much larger. "
)
MONSTER ( ' S ' , 0xC0C080 , " Yellow Skipper " , moYellowSkipper , CF_FACE_SIDE | CF_SHARK , RESERVED , moShark , " Just a nasty shark. " ) /* unused */
MONSTER ( ' R ' , 0x4040C0 , " Rusałka " , moRusalka , CF_FACE_SIDE | CF_SHARK , RESERVED , moShark ,
" A water spirit. When killed, she will try to drown you, by changing dry land to shallow water and shallow water to deep water. " )
2020-02-26 01:49:35 +00:00
ITEM ( ' o ' , 0x808080 , " Orb of Plague " , itOrbPlague , IC_ORB , ZERO , RESERVED , osOffensive , NODESCYET )
2020-02-26 00:05:05 +00:00
NATIVE ( among ( m , moPike , moRusalka ) ? 2 : 0 )
REQ ( GOLD ( R30 ) )
LAND ( 0x6FA136 , " Frog Park " , laFrog , ZERO , itFrog , RESERVED , NODESCYET )
ITEM ( ' $ ' , 0xFFD520 , " Gold Ball " , itFrog , IC_TREASURE , ZERO , RESERVED , osNone , NODESCYET )
ITEM ( ' o ' , 0x808080 , " Orb of Impact " , itOrbImpact , IC_ORB , ZERO , RESERVED , osUtility , NODESCYET )
WALL ( ' # ' , 0x00C000 , " shrub " , waShrub , WF_WALL | WF_HIGHWALL | WF_STDTREE | WF_CONE , RESERVED , 0 , sgNone , NODESCYET )
MONSTER ( ' F ' , 0x60A060 , " Giant Frog " , moFrog , ZERO , RESERVED , moFrog , NODESCYET )
MONSTER ( ' F ' , 0xFFFF80 , " Yellow Frog " , moPhaser , ZERO , RESERVED , moPhaser , NODESCYET )
MONSTER ( ' F ' , 0x8080FF , " Blue Frog " , moVaulter , ZERO , RESERVED , moVaulter , NODESCYET )
NATIVE ( among ( m , moFrog , moPhaser , moVaulter ) ? 2 : 0 )
# define LST {itDodeca, itZebra, itSwitch}
REQ ( ITEMS_TOTAL ( LST , variant_unlock_value ( ) ) )
# undef LST
2020-02-26 00:34:43 +00:00
LAND ( 0xC0C0FF , " Eclectic City " , laEclectic , LF_ICY | LF_ELECTRIC , itEclectic , RESERVED , NODESCYET )
2020-02-26 00:05:05 +00:00
MONSTER ( ' W ' , 0xA04060 , " Mutant2 " , moVariantWarrior2 , CF_FACE_UP , RESERVED , moYeti ,
" These guys look a bit strange, but they have no special properties. "
)
ITEM ( ' * ' , 0x303090 , " Lapis Lazuli " , itEclectic , IC_TREASURE , ZERO , RESERVED , osNone ,
" A beautiful blue stone. " )
ITEM ( ' o ' , 0x808080 , " Orb of Chaos " , itOrbChaos , IC_ORB , ZERO , RESERVED , osUtility , NODESCYET )
NATIVE ( among ( m , moRedTroll , moMiner , moTroll , moFireFairy , moMetalBeast , moPalace , moWolf , moIceGolem , moPair ) ? 1 : 0 )
# define LST {itDiamond, itFulgurite, itPalace, itSilver}
REQ ( ITEMS_TOTAL ( LST , variant_unlock_value ( ) * 4 / 3 ) )
# undef LST
2019-03-30 16:51:37 +00:00
2019-03-23 15:42:17 +00:00
//shmupspecials
2019-04-20 22:57:24 +00:00
MONSTER ( ' @ ' , 0xC0C0C0 , " Rogue " , moPlayer , CF_FACE_UP | CF_PLAYER , RESERVED , moNone , " In the Shoot'em Up mode, you are armed with thrown Knives. " )
2019-03-24 00:26:43 +00:00
MONSTER ( ' * ' , 0xC0C0C0 , " Knife " , moBullet , ZERO | CF_BULLET , RESERVED , moNone , " A simple, but effective, missile, used by rogues. " )
MONSTER ( ' * ' , 0xFF0000 , " Flail " , moFlailBullet , ZERO | CF_BULLET , RESERVED , moNone , " This attack is likely to hit the attacker. " )
MONSTER ( ' * ' , 0xFFFF00 , " Fireball " , moFireball , ZERO | CF_BULLET , RESERVED , moNone , " This magical missile burns whatever it hits. " )
MONSTER ( ' * ' , 0xFFFF00 , " Tongue " , moTongue , ZERO | CF_BULLET , RESERVED , moNone , " Some monsters have long tongues, which allow them to attack enemies in nearby cells. " )
MONSTER ( ' * ' , 0xFFFFFF , " Airball " , moAirball , ZERO | CF_BULLET , RESERVED , moNone , " This magical missile pushes back whatever it hits. " )
MONSTER ( ' * ' , 0x0060E0 , " Blueball " , moCrushball , ZERO | CF_BULLET , RESERVED , moNone , " A powerful missile from a Blue Raider. " )
2019-03-23 15:42:17 +00:00
//technical/temporary
2019-03-24 00:26:43 +00:00
MONSTER ( ' ? ' , 0x00C000 , " dead bug " , moDeadBug , ZERO | CF_TECHNICAL , RESERVED , moNone , NODESC )
2019-03-23 15:42:17 +00:00
// appears as 'killed by electric discharge'
2019-03-24 00:26:43 +00:00
MONSTER ( ' ? ' , 0xFFFF00 , " electric discharge " , moLightningBolt , ZERO | CF_TECHNICAL , RESERVED , moNone , elecdesc )
MONSTER ( ' ? ' , 0xE06000 , " dead bird " , moDeadBird , ZERO | CF_TECHNICAL , RESERVED , moNone , NODESC )
MONSTER ( ' ? ' , 0xE06000 , " Energy Sword " , moEnergySword , ZERO | CF_TECHNICAL , RESERVED , moNone , NODESC )
MONSTER ( ' ! ' , 0xFF0000 , " Warning " , moWarning , ZERO | CF_TECHNICAL , RESERVED , moNone , warningdesc )
MONSTER ( ' ! ' , 0xFF0000 , " arrow trap " , moArrowTrap , ZERO | CF_BULLET | CF_TECHNICAL , RESERVED , moNone , arrowtrapdesc )
MONSTER ( ' * ' , 0 , " vertex " , moRogueviz , ZERO | CF_TECHNICAL , RESERVED , moNone , " A vertex from rogueviz. " )
2019-03-23 15:42:17 +00:00
# undef MONSTER
# undef LAND
# undef WALL
# undef ITEM
2019-04-11 19:33:17 +00:00
# undef NATIVE
# undef REQ
# undef REQAS
2019-03-23 15:42:17 +00:00
2019-04-11 19:33:17 +00:00
# undef GOLD
# undef ITEMS
# undef NEVER
# undef ALWAYS
# undef KILLS
# undef KILL
# undef AKILL
# undef ORD
# undef NUMBER
# undef COND
# undef ITEMS_TOTAL
# undef ACCONLY
# undef ACCONLY2
# undef ACCONLYF