Time to continue this blogpost series! So, without further ado...
First, let's talk a bit not about real lands, but rather "technical lands" that exists for technical reasons, and that typical players are not supposed to find. The world of HyperRogue is very large: a circle of radius r has about 3r/2 tiles; about 1000 new tiles are generated every step. This means that HyperRogue may use lots of memory, which may turn out to be a problem, especially on mobile devices where the memory is limited. So a "memory saving mode" has been introduced, which clears some map cells on the way, if the player is not likely to ever find these areas. But what happens if they manage to find them anyway? Such cells are then regenerated, but since we no longer know what was originally there, they are not the original ones -- and to clearly mark that this happened, they use a special land which is called Lost Memory, and they are generally empty (not even floor is there).
The land of Lost Memory has been also later reused for another purpose. Every cell in HyperRogue knows its "distance" from the start. This distance is a 16-bit signed integer, so it can only have values up to 32767. It is not likely that a normal player
goes that far -- such a long trip would take quite a lot of real-world time as well as memory of your computer. However, if they did, the next tile would report its distance as -32768, which could potentially cause problems for some HyperRogue algorithms. It would be easy to fix this
issue: just use a largest integer type, for example 32-bit, which could reach over 2 billions. However, why not do something weird instead? There is a similar issue in Minecraft, called "Far Lands": Minecraft is an open-world game, but if you did go extremely far from (0,0),
the world starts to act very weird, again because of the problems with accurately representing large numbers in computers. So, as a reference to this, the world also starts to "fall apart" once you go about 32000 steps from the starting point. This is represented
by more and more randomly placed floorless tiles, as well as the "world turtles", which are a reference to the old legends about turtles which hold the world on their backs. We also think that giving the size of HyperRogue world as "a number with about 7000 digits", rather
than simply infinite, makes it more comparable to other game worlds -- usually "the largest game ever" rankings are won by some game like No Man's Sky, with its meager 20 digits, and where (contrary to HyperRogue) that huge size is not actually used for interesting gameplay.
(One another interesting fun fact is that, as a consequence of hyperbolic geometry, even if typical players never meet the World Turtles, they are in fact the most common monster in the HyperRogue world!) The "Lost Memory" is reused for this, although the "Far Lands" are a different concept.
The name of Brown Island refers to the Brownian Motion. The terrain generation here is based on the random walk process (sometimes called Brownian motion, although that more often refers to a specific case of random walk). It is well known that random walk almost surely returns to its starting point in the Euclidean plane; on the other hand, this is not the case in hyperbolic geometry, and the land highlights this fact (the land generation method used would not work in Euclidean geometry, there would be land everywhere). The bronze beasts takes some inspiration from some submitted land ideas about lands combining the Ocean and Red Rock Valley mechanics, and monsters that would have to be killed by pushing them off great heights; this inspiration seems very remote, though. Tiger's Eye is just a new gem; nothing special about them, other than both Bronze Beasts and treasure had to fit the brown color theme. The description of Orb of Choice refers to Banach-Tarski paradox: a sphere can be subdivided into a finite number of subsets, which can then be rearranged to make two spheres of the original size. The Banach-Tarski paradox relies on the Axiom of Choice, hence the name of the orb. (We could use another set of axioms for mathematics, for instance include the Axiom of Determinacy; taking AD instead of AC means that Banach-Tarski paradox is impossible.) It is also possible to subdivide a hyperbolic plane into two hyperbolic planes, even without Axiom of Choice, although this feels less paradoxical since the hyperbolic plane is infinite.
The land Free Fall was originally named "West Wall" -- in Jet Set Willy there are a bunch of levels which form a wall of Willy's mansion, with names such as "East Wall Base" and "Half Way Up the East Wall". I imagined this land something similar. This is still visible
in the internal name of this land, as well as the native monster name "Western Hawk". The land has no special map features, so we reuse the theme of "dogs" used in other empty lands -- this time, we have "falling dogs". (Should the Pirates in Whirlpool be called "Sea Dogs"?)
Iron coming from meteorite has magical properties in some fantasy worlds (including the Witcher saga and Hydra Slayer), and it falls from the sky, so meteorite was an obvious candidate for treasure here.
Irradiated Field takes a bit of inspiration from the older land of Galápagos -- in Galápagos, there are gradual changes to the environment, which slightly affects the map generation, as well as the shape of tortoises, who "mutate" to be better adapted to the map.
The Irradiated Field takes this general idea, and also the "mutation" theme, but this time, the effects are more relevant to the gameplay -- what monsters and what terrain features can be found varies much more strongly. There is a popular trope of mutations being caused
by radiation -- while it is based on the effect of real-world radiation on DNA, the way it is used in pop culture (say, the Nuclear Throne game), where radiation immediately causes affected creatures to gain new powers, is not very similar to the actual evolution, which
happens over thousands of generations, necessary to eliminate the majority of mutants, most of whom receive bad mutations. Anyway, we used this trope -- hence "irradiated" in the land name, a real-world radioactive mineral Tobernite as a treasure, and the weirdly glowing
water, to represent the Cherenkov radiation. Most of the variations are based on including monsters from the previously existing lands, but we also have "mutants" (every land needs to introduce a new monster, at least a basic one, so that treasure generation could be based on its kill count), and some new features, like the fire traps and explosive barrels. Barrels are another popular videogame trope, for some weird reason video games tend to be full of barrels (explosive or not), the notable examples of explosive barrels being Doom and its roguelike adaptation, DRL.
Wetland is based on the idea of Teal Knight in the HyperRogue discord server. As already mentioned in the first part, most lands in HyperRogue include some anti-camping feature, that is, some way to make it impossible to find a spot where the monsters can come from only one direction, which thus becomes a safe spot. The original idea did not include anything like that, so we have added water spirits who can drown the player character. Always good to have more Slavic folklore in video games; I have seen "rusalki" in Betrayal at Krondor but it was annoying, since "rusalki" is a plural form. We are using the Polish spelling Rusałka; in Polish "ł" is pronounced like the English W, and Russian русалка has a similar pronounciation, although most English sources use the Czech name (as popularized wordwide in an opera by Antonín Dvořák) which is simply "rusalka". Rusałki are typically feminine, so (depending on your settings) you may instead meet the male form, called Topielec; these guys could be also met in The Witcher games. The original idea included "skippers"; to reinforce the Slavic theme, we have instead chosen fish that could be found in Polish fresh waters -- hence the "pikes". Wetland are often regarded as bad places -- often cursed in video games, filled with mosquitoes, or dangerous due to the diseases carried by those mosquitoes ("swamp fever") -- so the Orb of Plague fit. Coincidentally, this land was released close to the start of the COVID pandemic (the idea for the Orb of Plague was older).
Sprite Guard mentioned many times that we had Orb of the Frog in the game but no actual frogs, and Frog Park fixes this. We also had three similar orbs -- Frog, Vaulting, and Phasing -- so it was cool to have a land highlighting the different tactical uses of the three. The "Gold Ball" treasure is of course a reference to the Frog Prince fairy tale. I did not remember the golden ball from that fairy tale, but it was also referenced in ADOM, where frogs can give you golden balls.
The players consider the Irradiated Field to be one of the best lands in HyperRogue, so it was good to include another land combining features of many earlier ones. Additionally, one of our friends has suggested at some (early) time a land combining the ice mechanics of the Icy Land
and the electricity of Land of Storms -- well, the electricity mechanics was interesting, but definitely underused. Neither electricity nor ice melting would fit the design of Irradiated Field, but they both could fit a new land. Eclectic City is such a land -- "eclectic" means just that (combining features of many styles) but it is also a play on "Electricity". I read about the "Wave Function Collapse" algorithm used for procedural generation, which was bound to have some interesting properties in hyperbolic plane -- the most interesting one for me was
that such local constraint satisfaction problem could be solved in polynomial time, while being NP-complete in Euclidean plane. So the land generation in Eclectic City was based on something similar to these ideas. (Not the polynomial thing, the degree of that polynomial
would be too high for practical use, and not really the original WFC algorithm, which was taken more as a loose inspiration.) This kind of lands feels quite chaotic, just like the Chaos mode, so "Orb of Chaos" became the native Orb. Tehora wanted the Lapis Lazuli treasure to appear,
but we did not want simply another gem, so Lazurite Figurines became the treasure.
The idea for Cursed Canyon could come from many sources -- "cursed" items with negative effects are a common roguelike feature, after all. However, the inspiration comes mainly from deckbuilders, where you usually make your deck better and better as the game
progresses, but you can also get "curses", cards which give you negative points, and even worse, block your deck. Primarily the original Dominion, although it appears in other deckbuilders too, like Slay the Spire. (If you liked Slay the Spire but have not played Dominion,
fix this! You can play online for free, both against bots and other players.) Many Orbs could have their "bad" counterparts, that have a reverse effect. The idea was quite old; I remember telling Marek14 about it, who suggested that it could be themed around mushrooms -- a rather nice idea since there is no mushroom theme in HyperRogue yet, although I was not sure how to fill the details. I also wanted the Shadow to reappear -- this mechanics was so far used only in Graveyard, but it could be more interesting in a place full of narrow passages, and as a mechanics forcing movement -- both of which were also great in a Curse-based land! The specific curses were just reversals of existing Orbs. The treasure started as something boring ("Cursed Gem" or something like that) but as Tehora saw it, she got really disappointed and went to her bookshelf, conjuring an ancient book on witchcraft out of nowhere. She said she got it from her father. The book mentioned capon stones, so we have used that; the Polish description is a quote from a famous Polish dictionary from the nineteenth century, unfortunately we could not find a similar quote in English, so Wikipedia is used for now. The name "Orb of Purity" comes from the common trope of purity and religion warding one against evil magic, but it is also a nod to "weapons of purity" in Unexplored, especially liked by Tehora since tehora means purity in Jewish.
The somewhat abstract nature of Dice Reserve did arise as a combination of many ideas. It seems that interests in hyperbolic geometry and dice are strongly correlated; for example, we (Zeno and Tehora Rogue) have independently started dice collections and interest in hyperbolic geometry, and Henry Segerman, known by many readers from his work on many visualizations of non-Euclidean geometry, is also involved in creating mathematically interesting dice. This is not surprising -- dice are essentially spherical tessellations. Furthermore, many people have noticed the interesting patterns happening when you roll a die on a tessellation, and have created puzzles based on that (see e.g. this paper for a list of references). The reason why these interesting patterns arise is the difference of geometry between the die (spherical) and the ground (usually Euclidean); we could imagine other combinations too, like rolling a horo-die on the hyperbolic plane. So adding dice to HyperRogue was a natural
idea. This naturally combined with another idea, which was to have a Sokoban-style block pushing puzzle in HyperRogue; could we have a nice procedurally generated one? After some experimentation, it turned out that Sokoban-style puzzle would not really work as one of lands in our game. At heart, HyperRogue is a fast-paced exploration game, while in interesting Sokoban puzzles you would spend time roughly at a single place, pushing blocks around, so it would not really fit. Thus, to obtain a better fit to the HyperRogue gameplay, the dice are pushing themselves on their
own! The land is named Dice Reserve; a place where the dice could calmly rest after being thrown. The dice like to show the highest value as a contrary to dice shaming, and they are angered once they are turned over. The treasure is "crystal die" -- we had no rock crystal as a treasure yet, and one of the popular styles of polyhedral dice is called "crystal". Overgrown Woods already had the Orb of Luck -- while the orb itself was based on a nice idea, its placement in Overgrown Wood was quite unthematic. So naturally, the Orb of Luck was moved to the Dice Reserve, where it was a perfect thematical fit. Overgrown Woods got Orb of the Woods instead (the name a bit inspired by the Jethro Tull song, Songs from the Wood).
Somewhere on the way, the special land Space Rocks was added. There is not much to talk about it, it is just a clone of the classic game Asteroids (as even the name suggests). Anybody interesting in classic games should know Asteroids; being played on a torus,
it is also interesting from the point of view of topology, so many mathematicians use Asteroids as example to explain these things, and also many mathematicians create Asteroids clone to explain things in geometry and topology (see e.g. here and here). So while the idea is not very original, the magic of HyperRogue engine, RogueViz, meant that the game would be immediately available in all 2D and 3D geometries and topologies and projections supported by the engine. It does not really match HyperRogue though (working reasonably only in closed manifolds
and real time), so a similar idea today would probably be released as a separate game (like Bringris, Nil Rider and Relative Hell).
That's all the lands existing in HyperRogue at the moment! Since HyperRogue is still developed, it is likely that new lands might be added, and we will need to explain the references in them. Possibly a new episode of this series will come sooner, though -- focusing on minor features which were somehow forgotten, on features which are not related to a specific land (e.g., special modes), or maybe ideas for lands that were considered and experimented with but did not work for some reason. Until then, thanks for reading!
Showing posts with label sources. Show all posts
Showing posts with label sources. Show all posts
Friday, 17 February 2023
Saturday, 8 October 2022
Sources of HyperRogue, part VI
The last post of this series was in 2017! So it is high time to continue with the lands added in 10.x.
This was also in 2017, so we are not sure whether we remember all the influences! So please comment if anything is missing.
The Hall of Mirrors replaces the older Land of Mirrors. The original Land of Mirrors did show that mimics who copy the player's movement are not very useful in hyperbolic space, and thus was a rather uninteresting land. But we could do so much more with the concept by adding mirror walls! wonderfullizardofoz and bluetailedgnat talked about such ideas in the suggestion thread. The monsters also got replaced. No more Eagles -- fast-moving monsters are not that fun. The basic enemy, the Narcissists, are of course a reference to the myth of Narcissus, who fell in love with his own mirror image. The Narcissists are naked, again, as a reference to the classic Greek and Roman sculptures. They have narcissus flowers in their hands, interpreted as "hand mirrors" by some players. The name and the description refers to the popular undestanding of "narcissist"; all kinds of bad guys are popularly called "narcissists", so they make a good enemy. The Mirror Spirit is an enemy with a special abitity referring to the mirrors; for a bit of extra creepiness, their mirror reflection always looks at the player (as suggested by the players). Some players interpreted the Mirror Spirits as spirits of the Rangers who were the inhabitants of the original Land of Mirrors (and no longer exist in the game); they use a very similar graphics. This was not a conscious reference, but still a very nice interpretation :)
The original idea of Blizzard was based on a suggestion by Toph (credited in HyperRogue as snowyowl0), although only the basic idea is used, the monster/Orb details are changed. One problem with this original idea is that we need to generate a "flow" which has no sources or sinks, and being somewhat interesting (rather than just random). HyperRogue uses a kind of cellular automaton to find such a flow; as suggested by tricosahedron, such a flow is constructed in a quotient space and then repeated (since it is the Field Quotient, players are not likely to notice the repetition). I think Christopher King has also suggested a similar approach to find such a flow (although IIRC it was after it was already implemented). The description of the land has been written by Tehora. It contains a subtle nod to Game of Thrones (however, nothing more than the famous catchy phrase), and to the trope of religious leaders abusing their power (Corrupt Church on TVTropes would be the most similar). There is also a play on the concept of counterfactual theories of causation (as in philosophy and statistics) -- we cannot say whether the winter came because the priests had stolen the jewels. The idea of a "void beast" is inspired by the concepts in physics, such as the electron hole. The Ice Golems and the Forgotten Relics are not really a reference to anything. We just wanted to add something to the lore.
The Volcanic Wasteland is another land using the "flow" construction. The release post credits wonderfullizardofoz, although this post seems to be only a very remote inspiration. The old roguelike Ragnarok (aka Valhalla) has a level named Wasteland, which needs to be explored quickly because of an exploding volcano. (Do you remember another HyperRogue land whose name was taken from a level of Ragnarok?) Lava Lilies are of course inspired by Water Lilies; Lava Wolves are the same wolves as Icy Wolves who somehow got more intelligent due to the exposure to heat. That was because Tehora did not like the description of Yetis in the Icy Land, which claims they are "quite intelligent". This refers to them actually using a pathfinding algorithm, while the Ice Wolves use heat-seeking to track the player, apparently making them "less intelligent". Tehora claimed that in the case of Ice Wolves, it was not a matter of their intelligence, but their dramatic struggle for warmth. So she insisted on making Wolves more intelligent once the environment was warm enough for them. In real life, a Salamander is a small lizard-like amphibian, however, in many video games, Salamanders are large lizard-like creatures with some affinity to fire (Wikipedia gives an interesting explanation for this Ancient Roman myth).
The idea of the Hunting Ground comes from a comment under some video about HyperRogue -- we are unable to find that video, but the commenter complained about being attacked by a group of Running Dogs from several directions at once, and thought that situation was impossible to survive. I have noticed that while such a situation would indeed be impossible to survive in Euclidean mode, in HyperRogue we could still escape because of all the extra directions available. So I did some experiments to confirm these expectations, and I found out that it could make a good land to teach the basic HyperRogue strategies to new players. So, a bit paradoxically, such an introductory, important land has appeared quite late in the life of HyperRogue. This land completes a trio of dog-based lands with different compositions of unstable ground (fully unstable Land of Eternal Motion, fully stable Hunting Ground, and the mixed Zebra). Again, the dogs here are more intelligent than most HyperRogue monsters -- they escape when their ambush has failed. This is done to avoid the less interesting part of the puzzle and to reduce the number of kills, so you won't get Graveyard unlocked simply because you finished the Hunting Grounds. The theme is inspired by the Native American concept of afterlife; coincidentally, the Polish name of this concept translates as "The Land of Eternal Hunting", which again matches the "The Land of Eternal Motion". We have chosen turquoise as the treasure because of its importance in the Native American culture, which is referred to in the description. Hunting Ground is the only basic land which does not have any "advanced" version, which would be unlocked by collecting its treasure; some players have suggested to change this. However, Hunting Ground has no advanced version for a reason -- it is very scripted, so it is not very interesting to replay; so after the player has learned the skill, there is no need to do the puzzles again, except to finish all the lands for the Hyperstone Quest. (Potentially, it could have an advanced version which would be another scripted land, or maybe "the places where the hunter spirits and game are" referred to in the description could be added later.)
The Terracotta Army was suggested by Kojiguchi Kazuki, who wanted HyperRogue to include ideas based on the Far Eastern culture. It is of course based on the real-world Terracotta Army, a collection of statues buried with the Emperor of China. According to some account, the treasures in the tomb were protected by traps, and it featured mercury rivers -- these features were consequently included in the HyperRogue land. We have learned about Jiangshi from Spelunky; Jiangshi have stiff bodies and thus hop rather than move normally, which is reflected in their movement animation.
Somewhere on the way, we also got new lands which are not in the main game because they are primarily designed for other tilings. Crystal World is one such land; it takes a lot from a Catacombs suggestion posted by Patashu, although it does not take the theme (mostly because we wanted the tiles to actually be triangles, rather than be simulated Graveyard-style). The treasure is called "glowing crystal" because crystals often glow in video games, even though the real-life crystals do not emit their own light. The Docks are based on the map and idea posted by Patashu; you can read the Wikipedia article about sea glass. And the Snake Nest is based on the idea of Fulgur14. The treasure is called "snake oil", referring to the term used for deceptive marketing.
Version 10.3 includes also two new lands for the main game: the Ruined City and the Jelly Kingdom. The Ruined City is based mostly on the suggestions of Patashu and wonderfullizardofoz. There is a Polish slang word koksu, originally referring to unhealthy bodybuilding (using drugs), meaning basically overpowered. Some people called both me and Tehora koksus (referring to our programming/academic performance rather than bodies), which we found quite funny, so we wanted to include similar koksus in HyperRogue. The Raiders are larger than most monsters, to represent their overpoweredness. The internal names of the Raiders come from before the "raider" theming was introduced, and they might look a bit surprising. For example, Brown Raiders are internally called "monks", as a reference to the trope of monks avoiding material wealth due to their vows of poverty, prominent e.g. in the Crypt of NecroDancer, where the "monk" character dies when he steps on gold. Green/gray raiders are internally called alt/hex "demons" -- HyperRogue demons are slow, and the original idea was to have demons which are slow in a different way. The Red Raider's description is a reference to the "gentle giant" trope -- a literal, bromantic interpretation of the "Watch Each Other's Back" idiom. The pairing mechanics was originally implemented for the "Magnetosphere" land, which included "north poles" and "south poles" behaving in a similar way; the "magnetosphere" is still unfinished, but the pairing mechanics has been reused for the Red Raiders. The appearance of the Raiders, especially Blue Raiders, also took a bit of inspiration from the Hammering Giants in Golden Axe. Nothing special about the Chrysoberyl treasure, we just wanted another gem, and Chrysoberyls were not used yet.
We needed a land to act as the "advanced version" of Alchemist Lab; previous versions of HyperRogue used Ivory Tower or Reptiles, but the similarity was rather far-fetched. The Jelly Kingdom is based on a suggestion by tricosahedron. It is a rather simple idea from 2015, which has not been implemented right away probably because of a somewhat confusing reference to Alchemist Lab (it seems both me and Fulgur14 imagined that half of the land would be filled with monsters, just like half of Alchemist Lab is filled with "wall-like" slime, and did not understand how such a land could work). While the Raiders of Ruined City are overpowered, the jellies are just the opposite: they are represented as underpowered cowards ("shaking like a jelly"), that would be rather considered "food" by others. As we know, weak creatures like to refer to themselves using strong words, hence the land is called a "Kingdom", and "Jelly Revolution" used in the description of the "Tasty Jelly" treasure.
That is all in 10.x! The next part will talk about the new lands in 11.x and 12.x, and hopefully will appear sooner than after 5 years.
The Hall of Mirrors replaces the older Land of Mirrors. The original Land of Mirrors did show that mimics who copy the player's movement are not very useful in hyperbolic space, and thus was a rather uninteresting land. But we could do so much more with the concept by adding mirror walls! wonderfullizardofoz and bluetailedgnat talked about such ideas in the suggestion thread. The monsters also got replaced. No more Eagles -- fast-moving monsters are not that fun. The basic enemy, the Narcissists, are of course a reference to the myth of Narcissus, who fell in love with his own mirror image. The Narcissists are naked, again, as a reference to the classic Greek and Roman sculptures. They have narcissus flowers in their hands, interpreted as "hand mirrors" by some players. The name and the description refers to the popular undestanding of "narcissist"; all kinds of bad guys are popularly called "narcissists", so they make a good enemy. The Mirror Spirit is an enemy with a special abitity referring to the mirrors; for a bit of extra creepiness, their mirror reflection always looks at the player (as suggested by the players). Some players interpreted the Mirror Spirits as spirits of the Rangers who were the inhabitants of the original Land of Mirrors (and no longer exist in the game); they use a very similar graphics. This was not a conscious reference, but still a very nice interpretation :)
The original idea of Blizzard was based on a suggestion by Toph (credited in HyperRogue as snowyowl0), although only the basic idea is used, the monster/Orb details are changed. One problem with this original idea is that we need to generate a "flow" which has no sources or sinks, and being somewhat interesting (rather than just random). HyperRogue uses a kind of cellular automaton to find such a flow; as suggested by tricosahedron, such a flow is constructed in a quotient space and then repeated (since it is the Field Quotient, players are not likely to notice the repetition). I think Christopher King has also suggested a similar approach to find such a flow (although IIRC it was after it was already implemented). The description of the land has been written by Tehora. It contains a subtle nod to Game of Thrones (however, nothing more than the famous catchy phrase), and to the trope of religious leaders abusing their power (Corrupt Church on TVTropes would be the most similar). There is also a play on the concept of counterfactual theories of causation (as in philosophy and statistics) -- we cannot say whether the winter came because the priests had stolen the jewels. The idea of a "void beast" is inspired by the concepts in physics, such as the electron hole. The Ice Golems and the Forgotten Relics are not really a reference to anything. We just wanted to add something to the lore.
The Volcanic Wasteland is another land using the "flow" construction. The release post credits wonderfullizardofoz, although this post seems to be only a very remote inspiration. The old roguelike Ragnarok (aka Valhalla) has a level named Wasteland, which needs to be explored quickly because of an exploding volcano. (Do you remember another HyperRogue land whose name was taken from a level of Ragnarok?) Lava Lilies are of course inspired by Water Lilies; Lava Wolves are the same wolves as Icy Wolves who somehow got more intelligent due to the exposure to heat. That was because Tehora did not like the description of Yetis in the Icy Land, which claims they are "quite intelligent". This refers to them actually using a pathfinding algorithm, while the Ice Wolves use heat-seeking to track the player, apparently making them "less intelligent". Tehora claimed that in the case of Ice Wolves, it was not a matter of their intelligence, but their dramatic struggle for warmth. So she insisted on making Wolves more intelligent once the environment was warm enough for them. In real life, a Salamander is a small lizard-like amphibian, however, in many video games, Salamanders are large lizard-like creatures with some affinity to fire (Wikipedia gives an interesting explanation for this Ancient Roman myth).
The idea of the Hunting Ground comes from a comment under some video about HyperRogue -- we are unable to find that video, but the commenter complained about being attacked by a group of Running Dogs from several directions at once, and thought that situation was impossible to survive. I have noticed that while such a situation would indeed be impossible to survive in Euclidean mode, in HyperRogue we could still escape because of all the extra directions available. So I did some experiments to confirm these expectations, and I found out that it could make a good land to teach the basic HyperRogue strategies to new players. So, a bit paradoxically, such an introductory, important land has appeared quite late in the life of HyperRogue. This land completes a trio of dog-based lands with different compositions of unstable ground (fully unstable Land of Eternal Motion, fully stable Hunting Ground, and the mixed Zebra). Again, the dogs here are more intelligent than most HyperRogue monsters -- they escape when their ambush has failed. This is done to avoid the less interesting part of the puzzle and to reduce the number of kills, so you won't get Graveyard unlocked simply because you finished the Hunting Grounds. The theme is inspired by the Native American concept of afterlife; coincidentally, the Polish name of this concept translates as "The Land of Eternal Hunting", which again matches the "The Land of Eternal Motion". We have chosen turquoise as the treasure because of its importance in the Native American culture, which is referred to in the description. Hunting Ground is the only basic land which does not have any "advanced" version, which would be unlocked by collecting its treasure; some players have suggested to change this. However, Hunting Ground has no advanced version for a reason -- it is very scripted, so it is not very interesting to replay; so after the player has learned the skill, there is no need to do the puzzles again, except to finish all the lands for the Hyperstone Quest. (Potentially, it could have an advanced version which would be another scripted land, or maybe "the places where the hunter spirits and game are" referred to in the description could be added later.)
The Terracotta Army was suggested by Kojiguchi Kazuki, who wanted HyperRogue to include ideas based on the Far Eastern culture. It is of course based on the real-world Terracotta Army, a collection of statues buried with the Emperor of China. According to some account, the treasures in the tomb were protected by traps, and it featured mercury rivers -- these features were consequently included in the HyperRogue land. We have learned about Jiangshi from Spelunky; Jiangshi have stiff bodies and thus hop rather than move normally, which is reflected in their movement animation.
Somewhere on the way, we also got new lands which are not in the main game because they are primarily designed for other tilings. Crystal World is one such land; it takes a lot from a Catacombs suggestion posted by Patashu, although it does not take the theme (mostly because we wanted the tiles to actually be triangles, rather than be simulated Graveyard-style). The treasure is called "glowing crystal" because crystals often glow in video games, even though the real-life crystals do not emit their own light. The Docks are based on the map and idea posted by Patashu; you can read the Wikipedia article about sea glass. And the Snake Nest is based on the idea of Fulgur14. The treasure is called "snake oil", referring to the term used for deceptive marketing.
Version 10.3 includes also two new lands for the main game: the Ruined City and the Jelly Kingdom. The Ruined City is based mostly on the suggestions of Patashu and wonderfullizardofoz. There is a Polish slang word koksu, originally referring to unhealthy bodybuilding (using drugs), meaning basically overpowered. Some people called both me and Tehora koksus (referring to our programming/academic performance rather than bodies), which we found quite funny, so we wanted to include similar koksus in HyperRogue. The Raiders are larger than most monsters, to represent their overpoweredness. The internal names of the Raiders come from before the "raider" theming was introduced, and they might look a bit surprising. For example, Brown Raiders are internally called "monks", as a reference to the trope of monks avoiding material wealth due to their vows of poverty, prominent e.g. in the Crypt of NecroDancer, where the "monk" character dies when he steps on gold. Green/gray raiders are internally called alt/hex "demons" -- HyperRogue demons are slow, and the original idea was to have demons which are slow in a different way. The Red Raider's description is a reference to the "gentle giant" trope -- a literal, bromantic interpretation of the "Watch Each Other's Back" idiom. The pairing mechanics was originally implemented for the "Magnetosphere" land, which included "north poles" and "south poles" behaving in a similar way; the "magnetosphere" is still unfinished, but the pairing mechanics has been reused for the Red Raiders. The appearance of the Raiders, especially Blue Raiders, also took a bit of inspiration from the Hammering Giants in Golden Axe. Nothing special about the Chrysoberyl treasure, we just wanted another gem, and Chrysoberyls were not used yet.
We needed a land to act as the "advanced version" of Alchemist Lab; previous versions of HyperRogue used Ivory Tower or Reptiles, but the similarity was rather far-fetched. The Jelly Kingdom is based on a suggestion by tricosahedron. It is a rather simple idea from 2015, which has not been implemented right away probably because of a somewhat confusing reference to Alchemist Lab (it seems both me and Fulgur14 imagined that half of the land would be filled with monsters, just like half of Alchemist Lab is filled with "wall-like" slime, and did not understand how such a land could work). While the Raiders of Ruined City are overpowered, the jellies are just the opposite: they are represented as underpowered cowards ("shaking like a jelly"), that would be rather considered "food" by others. As we know, weak creatures like to refer to themselves using strong words, hence the land is called a "Kingdom", and "Jelly Revolution" used in the description of the "Tasty Jelly" treasure.
That is all in 10.x! The next part will talk about the new lands in 11.x and 12.x, and hopefully will appear sooner than after 5 years.
Friday, 25 August 2017
Sources of HyperRogue, part V
This is the fifth post in the series, describing new lands in versions 9.x.
We will start with the three lands added in 9.0, all of which have a significant
Norse theme.
If you are learning about hyperbolic geometry from popular mathematical sources, one of the first things you learn is how the sum of the angles of the triangle is less than 180 degrees. This affects the gameplay -- in fact, this is the reason why the world is often rotated differently when you return to the same location -- but for a long time I wanted to create a land which requires a bit more understanding of this phenomenon, where the player has to learn how to calculate the defect quickly. Burial Grounds is such a land. The original inspiration for the theme was the Barrows from Lord of the Rings; however, we have read that the Barrow Wights here were inspired by Draugar from the Norse mythology, and we have decided to use Draugar directly. Draugar were also one of the interesting monsters in Ragnarok/Valhalla.
One more ingredient is missing here -- since the land requires Orb of the Sword, how does one obtain it in the first place? This is solved by another land, the Kraken Depths. The idea of an underwater land where Orb of the Fish is necessary to do anything comes from the ideas thread (Fulgur14's post, I think there were also similar ideas by other people). The Kraken appears to be the widest creature that can move in the hyperbolic plane in a reasonable way, and its movement foreshadows the Orb of the Sword. Krakens come from the Norse legends, thus making the Living Fjord, Kraken Depths, and Burial Grounds a sequence of lands which are different, but yet thematically and mechanically related.
It was previously said how the Elemental Planes were designed because there were already several Elementals of various kinds. Trollheim is the same, but for Trolls. Some time in the future we might see a land of birds, a land of canines, or a land of sharks. :) In many lands, the Trolls are monsters which aim to hurt the player, but they usually end up actually helping them; again in Trollheim, you have to use the Trolls' special wall-creation property to your favor. The name Trollheim is made to sound typical to Norse mythology (like Jotunheim, the land of giants). We have been searching for an appropriate "troll treasure" but we could not find anything too exciting -- one weird idea was to have "golden crowns", inspired by a popular Polish song which says "twelve heavy crowns of pure gold adorn my head" -- ultimately we have chosen the "golden eggs", referring to the first troll treasure you find (Gold); people who have played Colossal Cave Adventure should also notice and understand another reference.
Some time after version 9.0 has released, I have received an information from Steam about the Halloween sale event, aimed at the games with Halloween-like themes. At first, I did not want to participate in this -- HyperRogue had some monsters which fit the theme, but this was not the general theme of the game; adding a Halloween land would be redundant and probably not that exciting from the event's point of view. However, I was working on the spherical geometry mode at the time. Spherical geometry is very different from hyperbolic -- it is bounded, which allows interesting resource management -- and I thought that a new land specific for this geometry would be great; and Halloween fit perfectly, with the natural motivation for being played on a sphere (surface of a jack'o'lantern).
The Dungeon is based on a post of wonderfullizardofoz, to get more mileage of the new 3D perspective in the gravity lands. It takes the general idea of a gravity trap land, skeletons, and ghosts; also Slime Molds as a treasure (a reference to a food item in Rogue -- I had no other ideas for treasure anyway). Banshees were replaced by my own idea (bats, which I have invented some time earlier as a weaker version of Eagles, but I had no good idea where to put them). Since Skeletons were there, this made sense as an extension of the Palace (with some influence from an earlier idea of Fulgur14) -- especially that the mechanics of pressure plates from the Palace could make an interesting return in a gravity land. The Orb of Recall comes from the first post in the Orb idea thread, by wonderfullizardofoz and Fulgur14. (Ideas for new orbs and enemies are welcome, not only for lands!) As a fan of Steven Universe, Fulgur14 expected Amethysts in HyperRogue since Pearls and Garnets were there -- but gem names are just gem names, mostly.
The general idea for the Mountain comes from the same post of wonderfullizardofoz. Before implementing these two lands, I have already implemented the Orb of Nature, and I wanted to put it in some land. Since wonderfullizardofoz's idea already included the Eagles, I have decided to include Ivy too (and make it possible to use the dormant Ivies to climb the mountain), and make it a subzone of the Jungle.
Long time ago, tricosahedron posted his idea of a land inspired by Reptiles by M.C. Escher. The idea was very interesting, but I did not believe that Escher's pattern could be adapted to hyperbolic geometry -- it seemed that something had to have a threefold or sevenfold symmetry, and thus look nothing like a reptile. Some time later, tehora said she wants a land where reptiles rise from the floor as in Escher's work, and I have decided to try harder -- and obtained quite a nice reptile tesselation -- with some gaps with threefold symmetry as expected, but still, they did not make the tesselation bad. To the surprise of tehora, the release post listed this as based on an idea of tricosahedron (I thought she was referring to tricosahedron's idea, but apparently she had the same idea independently). Reptiles by M.C.Escher depicts not only the Reptiles themselves, but also many other interesting things; probably the most interesting one is a dodecahedron, so it has been chosen as the treasure of this land. (We also collect dice -- from the standard ones based on Platonic solids, to more exotic ones -- so collecting dodecahedra feels very nice to us.)
Contrary to HyperRogue, David Madore's hyperbolic maze does not take place in the full infinite hyperbolic plane, but rather a finite part of it (of size of 88110 tiles) whose edges has been stitched together, to make a space without boundaries; stitching is done in a very regular way, based on matrices over a finite field. For 9.4 I have decided to implement something similar to Madore's method -- even though the most unique things about HyperRogue is its infinite and exponentially expanding world, a special geometry where the world is actually finite could make for an interesting educational feature, and it could be also used as a pattern -- similar to the existing Vineyard, Zebra and Palace patterns, but very huge compared to them (huge, yet highly regular, though in a rather incomprehensible way). The pattern of 5676 heptagons (18920 cells in total) was big enough to fit large circles and multiple non-crossing straight lines -- so for the first land based on this pattern I have decided to use wonderfullizardofoz's idea of Amazon River, where you have to cross a river without touching the crocodiles in it, who just go with the current without pursuing you, unless you are on adjacent cell; however, I have decided that a river land with objects moving with the current felt too similar to the Whirlpool, so I have rethemed it as the Prairie, where you have to get on the other side of a herd of charging beasts. Of course, both ideas -- crossing a road filled with cars, and a river filled with crocodiles -- have been used in the classic game Frogger (hotdogPi also had a similar idea, but when Prairie was already there.) Previously I was thinking to do this not on a bundle of straight lines/equidistants, but on a bundle of randomly generated adjacent curves -- maybe such a land will be added in the future. The regular pattern turned out to have one more interesting property: after placing the charging paths and the Great Walls (also incorporated in the pattern), it allowed yet another straight line, which was far away from both the charging paths and the Great Walls. I have tried to put another charging path there at first, but this did not work well because of a different structure of the central straight line; thus, since this line was separate from everything, I have decided to make it a "safe spot", with no monsters appearing, an alternate source of Orbs of Safety, and an interesting property that these Orbs of Safety throw you into a location which looks exactly the same. And what kind of treasure could one find in the prairie, on the other side (of the herd of bulls)? Of course, the grass is always greener on the other side.
Yet another idea that many different people came up with independently was a land based on the Boulder Dash game from 1984 (some readers might know newer games heavily inspired by Boulder Dash, such as Emerald Mine or Supaplex, or their open source combination, Rocks'n'Diamonds). Like roguelikes, Boulder Dash is grid based and turn based -- however, turns happened automatically and very quickly, making it more about timing the keypresses precisely (like a very fast version of Crypt of the NecroDancer...). One of the iconic features of Boulder Dash were Butterflies, who did not pursue the player -- they simply moved along the walls -- and turned into a 3x3 square of Diamonds when killed by a falling boulder; I thought that an interesting HyperRogue land could be based on this, and so thought CtrlAltDestroy and Simon Clarkstone. However, it was not clear how should the gravity be implemented (like in Ivory Tower or like in Dungeon? where should the boulders fall if there are multiple choices? how should this work in the HyperRogue grid in general?), so I have decided to replace gravity with charging bulls -- together with the Prairie, the 9.4 update was all about Bulls. A later update added a special tiling, heavily inspired by Butterfly (No. 70) by M. C. Escher, and its hyperbolic version by Doug Dunham -- however, the butterflies had to be "broken" a bit to make the lines separating tiles clear. Since "diamonds" were already taken, another gem name had to be chosen -- the name spinel comes from the Latin spina (arrow), but sounds a bit like the English word spin too, so spinels are appropriate for gems obtained by shooting bulls at the spinning butterflies.
The Crossroads V are also based on an old idea -- this time an idea of Fulgur14, so old that it was called Crossroads III at the time. :) Not sure why this was not used immediately.
Some people consider HyperRogue to be a hard game. I think that HyperRogue is as hard as it needs to be -- if it was easier, it would not force the player to learn. When Ptolemy I asked Euclid if there was a shorter road to learning geometry than reading Euclid's Elements, he replied that There is no royal road in geometry; I believe the same is true not only with mathematics, but also with games such as Chess, Go, or HyperRogue. Furthermore, just as most players of Chess or Go player do not have hope to every beat the grand master, many people play difficult roguelikes without caring about whether they will ever win -- this is because the point of roguelikes is not necessarily to win, but to have fun while playing a complex game, and getting better and better in it. This is similar to what Carl Friedrich Gauss said in a letter to Farkas Bolyai: It is not knowledge, but the act of learning, not possession but the act of getting there, which grants the greatest enjoyment. Gauss and Bolyai have been discussing the nature of parallellness, and whether it is possible ot prove Euclid's fifth axiom from the other ones, for a long time without success; many years later, Bolyai's son, János, has discovered the hyperbolic geometry, and then they learned that Gauss has discovered the same things on its own, but he did not publish the results. Hyperbolic geometry was also independently discovered by Nikolai Lobachevsky, who is quoted to write There is no branch of mathematics, however abstract, which may not some day be applied to phenomena of the real world -- and indeed, non-euclidean geometry has found many applications, for example in physics, and more recently in art (M.C. Escher), game design, data visualization and social network analysis; and even HyperRogue itself can be applied as a powerful engine to work with applied hyperbolic geometry (see RogueViz). Speaking of M.C. Escher, here is a quote of him: We live in a beautiful and orderly world, not in a chaos without norms, as we sometimes seem to, which is also relevant to HyperRogue -- as an important thing that sets it apart from other geometrically weird games, such as Antichamber or Monument Valley, is that HyperRogue's geometry, although weird, is completely logical, and can be reasoned about; and gaining a deep understanding of this geometry is important for the game, and why it needs to be hard. In our opinion, Monument Valley is very easy compared to HyperRogue, but also it is more shallow mathematically, which does not prevent Monument Valley and Escher's works it is based on to be great works of art. Which brings us back to the start of this long paragraph.
Since all these classic quotes not only come from people whose work was very important for the development of HyperRogue, but are also very relevant to the game itself, they have been added as the Knights of Camelot's lines in HyperRogue 9.1. (Interestingly, if you want to get from A to B in the world of HyperRogue, there is a "royal road", one such that every other path is significantly longer than it...) It was not mentioned in the last part, but since 8.3, the Knights end their speech in the way similar to one used by Sprite Guard in his YouTube channel. It is not known what new features will be added in versions 10.x and described in the next post in this series. So, until then, thank you very much for reading, and have a great rest of your day!
If you are learning about hyperbolic geometry from popular mathematical sources, one of the first things you learn is how the sum of the angles of the triangle is less than 180 degrees. This affects the gameplay -- in fact, this is the reason why the world is often rotated differently when you return to the same location -- but for a long time I wanted to create a land which requires a bit more understanding of this phenomenon, where the player has to learn how to calculate the defect quickly. Burial Grounds is such a land. The original inspiration for the theme was the Barrows from Lord of the Rings; however, we have read that the Barrow Wights here were inspired by Draugar from the Norse mythology, and we have decided to use Draugar directly. Draugar were also one of the interesting monsters in Ragnarok/Valhalla.
One more ingredient is missing here -- since the land requires Orb of the Sword, how does one obtain it in the first place? This is solved by another land, the Kraken Depths. The idea of an underwater land where Orb of the Fish is necessary to do anything comes from the ideas thread (Fulgur14's post, I think there were also similar ideas by other people). The Kraken appears to be the widest creature that can move in the hyperbolic plane in a reasonable way, and its movement foreshadows the Orb of the Sword. Krakens come from the Norse legends, thus making the Living Fjord, Kraken Depths, and Burial Grounds a sequence of lands which are different, but yet thematically and mechanically related.
It was previously said how the Elemental Planes were designed because there were already several Elementals of various kinds. Trollheim is the same, but for Trolls. Some time in the future we might see a land of birds, a land of canines, or a land of sharks. :) In many lands, the Trolls are monsters which aim to hurt the player, but they usually end up actually helping them; again in Trollheim, you have to use the Trolls' special wall-creation property to your favor. The name Trollheim is made to sound typical to Norse mythology (like Jotunheim, the land of giants). We have been searching for an appropriate "troll treasure" but we could not find anything too exciting -- one weird idea was to have "golden crowns", inspired by a popular Polish song which says "twelve heavy crowns of pure gold adorn my head" -- ultimately we have chosen the "golden eggs", referring to the first troll treasure you find (Gold); people who have played Colossal Cave Adventure should also notice and understand another reference.
Some time after version 9.0 has released, I have received an information from Steam about the Halloween sale event, aimed at the games with Halloween-like themes. At first, I did not want to participate in this -- HyperRogue had some monsters which fit the theme, but this was not the general theme of the game; adding a Halloween land would be redundant and probably not that exciting from the event's point of view. However, I was working on the spherical geometry mode at the time. Spherical geometry is very different from hyperbolic -- it is bounded, which allows interesting resource management -- and I thought that a new land specific for this geometry would be great; and Halloween fit perfectly, with the natural motivation for being played on a sphere (surface of a jack'o'lantern).
The Dungeon is based on a post of wonderfullizardofoz, to get more mileage of the new 3D perspective in the gravity lands. It takes the general idea of a gravity trap land, skeletons, and ghosts; also Slime Molds as a treasure (a reference to a food item in Rogue -- I had no other ideas for treasure anyway). Banshees were replaced by my own idea (bats, which I have invented some time earlier as a weaker version of Eagles, but I had no good idea where to put them). Since Skeletons were there, this made sense as an extension of the Palace (with some influence from an earlier idea of Fulgur14) -- especially that the mechanics of pressure plates from the Palace could make an interesting return in a gravity land. The Orb of Recall comes from the first post in the Orb idea thread, by wonderfullizardofoz and Fulgur14. (Ideas for new orbs and enemies are welcome, not only for lands!) As a fan of Steven Universe, Fulgur14 expected Amethysts in HyperRogue since Pearls and Garnets were there -- but gem names are just gem names, mostly.
The general idea for the Mountain comes from the same post of wonderfullizardofoz. Before implementing these two lands, I have already implemented the Orb of Nature, and I wanted to put it in some land. Since wonderfullizardofoz's idea already included the Eagles, I have decided to include Ivy too (and make it possible to use the dormant Ivies to climb the mountain), and make it a subzone of the Jungle.
Long time ago, tricosahedron posted his idea of a land inspired by Reptiles by M.C. Escher. The idea was very interesting, but I did not believe that Escher's pattern could be adapted to hyperbolic geometry -- it seemed that something had to have a threefold or sevenfold symmetry, and thus look nothing like a reptile. Some time later, tehora said she wants a land where reptiles rise from the floor as in Escher's work, and I have decided to try harder -- and obtained quite a nice reptile tesselation -- with some gaps with threefold symmetry as expected, but still, they did not make the tesselation bad. To the surprise of tehora, the release post listed this as based on an idea of tricosahedron (I thought she was referring to tricosahedron's idea, but apparently she had the same idea independently). Reptiles by M.C.Escher depicts not only the Reptiles themselves, but also many other interesting things; probably the most interesting one is a dodecahedron, so it has been chosen as the treasure of this land. (We also collect dice -- from the standard ones based on Platonic solids, to more exotic ones -- so collecting dodecahedra feels very nice to us.)
Contrary to HyperRogue, David Madore's hyperbolic maze does not take place in the full infinite hyperbolic plane, but rather a finite part of it (of size of 88110 tiles) whose edges has been stitched together, to make a space without boundaries; stitching is done in a very regular way, based on matrices over a finite field. For 9.4 I have decided to implement something similar to Madore's method -- even though the most unique things about HyperRogue is its infinite and exponentially expanding world, a special geometry where the world is actually finite could make for an interesting educational feature, and it could be also used as a pattern -- similar to the existing Vineyard, Zebra and Palace patterns, but very huge compared to them (huge, yet highly regular, though in a rather incomprehensible way). The pattern of 5676 heptagons (18920 cells in total) was big enough to fit large circles and multiple non-crossing straight lines -- so for the first land based on this pattern I have decided to use wonderfullizardofoz's idea of Amazon River, where you have to cross a river without touching the crocodiles in it, who just go with the current without pursuing you, unless you are on adjacent cell; however, I have decided that a river land with objects moving with the current felt too similar to the Whirlpool, so I have rethemed it as the Prairie, where you have to get on the other side of a herd of charging beasts. Of course, both ideas -- crossing a road filled with cars, and a river filled with crocodiles -- have been used in the classic game Frogger (hotdogPi also had a similar idea, but when Prairie was already there.) Previously I was thinking to do this not on a bundle of straight lines/equidistants, but on a bundle of randomly generated adjacent curves -- maybe such a land will be added in the future. The regular pattern turned out to have one more interesting property: after placing the charging paths and the Great Walls (also incorporated in the pattern), it allowed yet another straight line, which was far away from both the charging paths and the Great Walls. I have tried to put another charging path there at first, but this did not work well because of a different structure of the central straight line; thus, since this line was separate from everything, I have decided to make it a "safe spot", with no monsters appearing, an alternate source of Orbs of Safety, and an interesting property that these Orbs of Safety throw you into a location which looks exactly the same. And what kind of treasure could one find in the prairie, on the other side (of the herd of bulls)? Of course, the grass is always greener on the other side.
Yet another idea that many different people came up with independently was a land based on the Boulder Dash game from 1984 (some readers might know newer games heavily inspired by Boulder Dash, such as Emerald Mine or Supaplex, or their open source combination, Rocks'n'Diamonds). Like roguelikes, Boulder Dash is grid based and turn based -- however, turns happened automatically and very quickly, making it more about timing the keypresses precisely (like a very fast version of Crypt of the NecroDancer...). One of the iconic features of Boulder Dash were Butterflies, who did not pursue the player -- they simply moved along the walls -- and turned into a 3x3 square of Diamonds when killed by a falling boulder; I thought that an interesting HyperRogue land could be based on this, and so thought CtrlAltDestroy and Simon Clarkstone. However, it was not clear how should the gravity be implemented (like in Ivory Tower or like in Dungeon? where should the boulders fall if there are multiple choices? how should this work in the HyperRogue grid in general?), so I have decided to replace gravity with charging bulls -- together with the Prairie, the 9.4 update was all about Bulls. A later update added a special tiling, heavily inspired by Butterfly (No. 70) by M. C. Escher, and its hyperbolic version by Doug Dunham -- however, the butterflies had to be "broken" a bit to make the lines separating tiles clear. Since "diamonds" were already taken, another gem name had to be chosen -- the name spinel comes from the Latin spina (arrow), but sounds a bit like the English word spin too, so spinels are appropriate for gems obtained by shooting bulls at the spinning butterflies.
The Crossroads V are also based on an old idea -- this time an idea of Fulgur14, so old that it was called Crossroads III at the time. :) Not sure why this was not used immediately.
Some people consider HyperRogue to be a hard game. I think that HyperRogue is as hard as it needs to be -- if it was easier, it would not force the player to learn. When Ptolemy I asked Euclid if there was a shorter road to learning geometry than reading Euclid's Elements, he replied that There is no royal road in geometry; I believe the same is true not only with mathematics, but also with games such as Chess, Go, or HyperRogue. Furthermore, just as most players of Chess or Go player do not have hope to every beat the grand master, many people play difficult roguelikes without caring about whether they will ever win -- this is because the point of roguelikes is not necessarily to win, but to have fun while playing a complex game, and getting better and better in it. This is similar to what Carl Friedrich Gauss said in a letter to Farkas Bolyai: It is not knowledge, but the act of learning, not possession but the act of getting there, which grants the greatest enjoyment. Gauss and Bolyai have been discussing the nature of parallellness, and whether it is possible ot prove Euclid's fifth axiom from the other ones, for a long time without success; many years later, Bolyai's son, János, has discovered the hyperbolic geometry, and then they learned that Gauss has discovered the same things on its own, but he did not publish the results. Hyperbolic geometry was also independently discovered by Nikolai Lobachevsky, who is quoted to write There is no branch of mathematics, however abstract, which may not some day be applied to phenomena of the real world -- and indeed, non-euclidean geometry has found many applications, for example in physics, and more recently in art (M.C. Escher), game design, data visualization and social network analysis; and even HyperRogue itself can be applied as a powerful engine to work with applied hyperbolic geometry (see RogueViz). Speaking of M.C. Escher, here is a quote of him: We live in a beautiful and orderly world, not in a chaos without norms, as we sometimes seem to, which is also relevant to HyperRogue -- as an important thing that sets it apart from other geometrically weird games, such as Antichamber or Monument Valley, is that HyperRogue's geometry, although weird, is completely logical, and can be reasoned about; and gaining a deep understanding of this geometry is important for the game, and why it needs to be hard. In our opinion, Monument Valley is very easy compared to HyperRogue, but also it is more shallow mathematically, which does not prevent Monument Valley and Escher's works it is based on to be great works of art. Which brings us back to the start of this long paragraph.
Since all these classic quotes not only come from people whose work was very important for the development of HyperRogue, but are also very relevant to the game itself, they have been added as the Knights of Camelot's lines in HyperRogue 9.1. (Interestingly, if you want to get from A to B in the world of HyperRogue, there is a "royal road", one such that every other path is significantly longer than it...) It was not mentioned in the last part, but since 8.3, the Knights end their speech in the way similar to one used by Sprite Guard in his YouTube channel. It is not known what new features will be added in versions 10.x and described in the next post in this series. So, until then, thank you very much for reading, and have a great rest of your day!
Thursday, 8 December 2016
Sources of HyperRogue: part IV
This is the fourth post in the series, about the lands from versions 8.x.
There is not much to say about Wild West. Revolvers, and hunting outlaws for bounties, are among the most common tropes in westerns. It does not really match the rest of the game, so it is available as the bonus land only.
Snowyowl0 had an idea on the HyperRogue forum about a land called "The Eternal Storm", which was a land with strong winds, and with Fulgurite as a treasure. I read what Fulgurite was — a mineraloid created when lightning hits sand, and also a nice reference to Fulgur14, one of the most prominent members of the HyperRogue community — and found it more appropriate for the land that I had rough idea for since some time, where you had to kill monsters by creating electric connections out of them. So that's how the Land of Storms was created. The monsters you created electric connections of had to be something metallic (so that it is a conductor), slow (so that you actually have time to create connections), and heavily armored (so that it cannot be destroyed in normal way). My first drawing of the Metal Beast created something like a Trilobite, and they remained like that. They were joined by Storm Trolls, since it was interesting to also have monsters creating conductible walls when they die.
Ivy was one of the first monsters unique to HyperRogue, but now I have invented a potentially more interesting variant of it, growing much more quickly. I found the Mutant Ivy work well in two cases: in a forest (where you could chop down trees to reach the root), and in the open space, where it moved only on hexagons. I have restricted the movement of the Mutant Ivy to hexagons outside of the Overgrown Woods, so we have both cases in the same monster. You could cut trees to get access to the root, but it was also useful to be able to restrict the growth by placing barriers too — so the Mutant Ivy was joined by yet another Troll. Thus, the Trolls in the Living Fjord, Land of Storms, and Overgrown Woods (and to lesser extent Red Rock Valley) are all primarily intended not as something that can kill you, but something that helps you — as we say with Princess Tehora, "the trolls only want to help". The Orb of the Overgrown Woods is the Orb of Luck, which notably loses some charges when you kill an Albatross, as a reference to the superstition that killing albatrosses brings bad luck, as suggested by simon_clarkstone.
And the hex-restricted Mutant Ivy grew quite nicely in the open space, covering everything nearby — this was used in a Yendor challenge, but also a special land, the Clearing, was created for it. Fighting an infinite monster gives me a very epic mental image, especially when you notice that, when you move towards the root, you actually destroy trillions of Ivy leaves with a single strike (even though the game does not count that). Giant Fox was an appropriate monster here — as a omnivore it could both eat the mutant fruits and attack the player character, and there were already some canines (I like reusing families of monsters, like birds and Trolls). Orb of Freedom is a reference to the description of the Giant Fox, which is quite hard to see, since it is hard to actually meet a Giant Fox — even though it has no special properties, in combination with the giant Mutant Ivy I believe that it actually makes the land much harder, so you won't actually meet them unless going for high score.
Haunted Woods are based on an idea of wonderfullizardofoz. The general idea, shape, and location of the Haunted Woods are taken directly from this idea. No specific ideas about monsters, treasures and terrain features were given, so I have decided to make it Haunted Woods, a forest filled with Ghosts, inspired by a card in the Dominion deck-building game, which also gives a mental image of being lost in the woods, and the treasure name is inspired by the most expensive card in the famous collectible card game Magic: the Gathering. The Friendly Ghosts created by Orb of Undeath were initially greenish, but in 9.2 they were recolored on tehora's request to match the Playmobil toy (video).
As I have mentioned, Snowyowl0 had an idea about a land called "The Eternal Storm" — the Land of Storms took the name and treasure from this idea, but not really the general idea (land with strong winds), or the monsters (crows and air elementals). Windy Plains are based on these remaining ideas. I wanted a treasure which would be carried by the strong winds, and a feather was a natural candidate yet again (after the phoenix feather from the Land of Eternal Motion). White dove feather as a reference to the song by Bob Dylan, Blowing in the Wind. Tehora helped with the color scheme.
She has also helped a lot with the Rose Garden — here is her story: "There were multiple sources of idea of Rose Garden — probably the most personal land in the game. The earliest I recall was when Zeno made few buttons and fridge magnets with HyperRogue theme. I told him that HyperRogue lacked in a land that would have been incredibly light, pastel, sweet and pink. A bit disturbing and psychedelic. I do not remember who came first with the exact name of Rose Garden — probably me after Zeno told me about one of his favorite roguelike monsters — the nicely smelling rosebush from Alphaman. I got extremely excited with that idea, even more because I personally dislike roses, so they made perfect "monsters" for that land. And then I populated Rose Garden with False Princesses and Princes — a delicate reference to "The Little Prince" by Antoine de Saint-Exupéry and the related Polish song by Kasia Sobczyk. There has been already lost Princess/Prince, that was a real love of our Rogue, but... how to love only one person, when there are many other appealing? This loosely reflects my personal demon, too — to me every other girl would be a better match for Zeno. Digging further in the love-theme, we introduced the Rose Beauties and Handsome Gardeners who would be "too pretty to be killed" — I suggested them during a walk in the break during our friends' doctoral defenses. Actually, the suspenders of Handsome Gardeners were inspired by the outfit of one of our friends on that day. I liked Rose Beauties, because of association with my original understanding of The Sick Rose by William Blake. The very first time I heard this poem in Protagonist's song (thanks KosGD!) it triggered an image of an extremely beautiful but coldhearted evil lady, that nobody expects to be dangerous (of course, many years later I encountered so called "proper analysis" of this poem, but I reject it!). Gardeners tend to be "default lovers" in fairytales — e.g. we thought about Muzzy in Gondoland where the Princess ran away with a Gardener — a cartoon from our childhood. And the last fun fact — when I urged Zeno to create new appearance for Rose Beauties our first attempt ended up as the new look for Witches... And the tiling for that land was prepared to satisfy my moaning that Zeno made a great tiling for Galápagos, and Rose Garden had an inherited one. The initial orb's name suggested by Zeno was Orb of the Skunk and I strongly disliked it. We spend reasonably too much time discussing it, and eventually ended up with Orb of Beauty with the same effect, although motivated differently (gives you stunning appearance, not stink)."
In roguelikes such as Zaga-33 and Ending, the concept of "parity" is crucial — if you have four way movement on a chessboard, and skipping turns not allowed, it is predetermined whether you hit the monster first or it hits you, unless you find some way to disrupt the parity. IMHO games centered around parity get old quite quickly, but I have found it quite fun in Crypt of the Necrodancer — as you have to deal with parity only for a very small number of monsters here — so I have decided to do a bit similar in HyperRogue — have a single land based on parity. The usual HyperRogue tiling has no parity, but it could be recovered by forbidding movement between hexagons, or even better, using another tiling equivalent to such a rule. The intended solution to the problem of killing an incorrectly aligned monster has been influenced by the CotD solution. When showing an early draft to Fulgur14, with trees, lakes, and monsters temporarily named Sloths, he has noticed that the "warped tiling" actually had straight lines, and suggested that they could be used for shorelines — which was a very nice idea, so it turned into a Warped Coast. A new sailor creature was required (after Pirates and Vikings), and Ratlings (from ADOM) were chosen, because of the association of rats with ships and pirates. Their suspiciousness of enemies who do not move was a result of my e-mail discussion with Michael Brough, the author of Zaga-33, about the parity rule. In the first version, the land was solved far too easy by killing Ratlings on a sea boundary, so we have decided with tricosahedron that Ratling Avengers would be created when a player tries to abuse that strategy — and Fulgur14 and tehora wanted them to have capes, because Avengers always wear capes. Corals are a reference to the crochet coral reef project.
Also, the Crossroads IV were created, to reuse the straight line separating Warped Sea and Warped Coast in other situations. Wonderfullizardofoz had this idea too.
Fulgur14 had the idea of a gravity-based land with infinite trees. I think he has suggested apples as treasure, as a reference to the apple which, according to the legend, fell on Isaac Newton's head and thus influenced creation of the theory of gravity. But how to name yet another land of trees, after Jungle, Dry Forest, Overgrown Woods, and Haunted Woods? I remembered that Manic Miner, a classic platformer from 1983, had a level named Endorian Forest. The theme is a result of merging all three themes — Manic Miner's Endorian forest (EF for short), wizardry theme of Ivory Tower, and the theme of research. The land is named Yendorian Forest, as a reference to EF and the Wizard of Yendor in NetHack. EF had green (stable) and red (crumbling) branch platforms, and thus the Yendorian Forest has strong and weak branches. Sparrowhawk is simply a bird who likes to catch prey on trees; tehora did not like using the default bird shape for them, with their "shanks" sticking out, so she was forced to draw a new shape. It is not completely clear what the creatures in EF were supposed to be (probably EF is a reference to the Endorian Forest in Star Wars, and the creatures would be Ewoks, but still, they look different), and how they look from the above — tehora interpreted them as wearing hats similar to ones worn in ancient Aztec reliefs, so that's what we see in HyperRogue. Their bright saturated colors are also a reference to EF. Their name is a reference to Isaac Newton's gravity research, and "infinite trees" in their description are one of research subjects in theoretical computer science.
As mentioned in the first post in this series, originally I had a different idea for the main quest in HyperRogue — every place in the world had environmental/civilizational parameters (temperature, humidity, whatever) which slowly changed as you travelled, and you had to find the location with specific parameters, and probably come back. I did not have a precise idea about how to implement this, and I found that even simpler ideas are fun enough in the hyperbolic plane anyway. At that time, I had no good idea about how to develop this, but when I have mentioned this in that post, I thought that it would be fun to try this now, with all the new experience. I wanted slow creatures whose properties would adapt to the changing environment as you were travelling. This reminded me of Galápagos — tortoises in different islands have different properties to adapt to their environments, which was noticed by Charles Darwin during his Beagle trip, and contributed to the theory of evolution. The land could be called "Land of Tortoises", but Galápagos means "tortoises" in Spanish, so it is better. The text message you get when you find a Baby Tortoise ("Aww, poor Baby Tortoise.") is a reference to Penance, the roguelike webcomic.
A long time ago, Fulgur14 had a idea of a worm-like Dragon, who would be killed by damaging all its segments. I wanted to implement Dragon Chasms some time ago, but the idea for generating it (horocyclic chasms) turned out to be more appropriate for an archipelago, so Caribbean was created instead. Environmental parameters introduced for Galápagos had another application, of creating procedurally generated height maps — so I have decided to create Dragon Chasms with a new algorithm, where chasms were based on such a heightmap. It was quite lucky that Galápagos and Dragon Chasms were created together — I had no idea who would steal Baby Tortoises from their families, and how the Dragons could do anything evil despite being so slow — and making the Dragons steal Tortoises solved both problems! Fire Elementals were added as a simple monster to complement the Dragons — they were already in the Elemental Planes and they should appear somewhere else, and Dragon Chasms sounded appropriate. One bad thing about that is that all other Elementals are very strong in their lands (but weak in the Elemental Planes), and Fire Elemental is still rather weak in the Dragon Chasms — maybe something will be changed in the future. The Orb of Domination has its own story... when we have been showing HyperRogue to one of our friends a year ago, he went to the Desert, and he said "Wow, a Sandworm! Is it possible to ride it?!". It was high time to actually implement Sandworm riding.
This is all in HyperRogue 8.x. The next episode will be about HyperRogue 9.x, and it will take some time — it is still not known what will be there! :)
There is not much to say about Wild West. Revolvers, and hunting outlaws for bounties, are among the most common tropes in westerns. It does not really match the rest of the game, so it is available as the bonus land only.
Snowyowl0 had an idea on the HyperRogue forum about a land called "The Eternal Storm", which was a land with strong winds, and with Fulgurite as a treasure. I read what Fulgurite was — a mineraloid created when lightning hits sand, and also a nice reference to Fulgur14, one of the most prominent members of the HyperRogue community — and found it more appropriate for the land that I had rough idea for since some time, where you had to kill monsters by creating electric connections out of them. So that's how the Land of Storms was created. The monsters you created electric connections of had to be something metallic (so that it is a conductor), slow (so that you actually have time to create connections), and heavily armored (so that it cannot be destroyed in normal way). My first drawing of the Metal Beast created something like a Trilobite, and they remained like that. They were joined by Storm Trolls, since it was interesting to also have monsters creating conductible walls when they die.
Ivy was one of the first monsters unique to HyperRogue, but now I have invented a potentially more interesting variant of it, growing much more quickly. I found the Mutant Ivy work well in two cases: in a forest (where you could chop down trees to reach the root), and in the open space, where it moved only on hexagons. I have restricted the movement of the Mutant Ivy to hexagons outside of the Overgrown Woods, so we have both cases in the same monster. You could cut trees to get access to the root, but it was also useful to be able to restrict the growth by placing barriers too — so the Mutant Ivy was joined by yet another Troll. Thus, the Trolls in the Living Fjord, Land of Storms, and Overgrown Woods (and to lesser extent Red Rock Valley) are all primarily intended not as something that can kill you, but something that helps you — as we say with Princess Tehora, "the trolls only want to help". The Orb of the Overgrown Woods is the Orb of Luck, which notably loses some charges when you kill an Albatross, as a reference to the superstition that killing albatrosses brings bad luck, as suggested by simon_clarkstone.
And the hex-restricted Mutant Ivy grew quite nicely in the open space, covering everything nearby — this was used in a Yendor challenge, but also a special land, the Clearing, was created for it. Fighting an infinite monster gives me a very epic mental image, especially when you notice that, when you move towards the root, you actually destroy trillions of Ivy leaves with a single strike (even though the game does not count that). Giant Fox was an appropriate monster here — as a omnivore it could both eat the mutant fruits and attack the player character, and there were already some canines (I like reusing families of monsters, like birds and Trolls). Orb of Freedom is a reference to the description of the Giant Fox, which is quite hard to see, since it is hard to actually meet a Giant Fox — even though it has no special properties, in combination with the giant Mutant Ivy I believe that it actually makes the land much harder, so you won't actually meet them unless going for high score.
Haunted Woods are based on an idea of wonderfullizardofoz. The general idea, shape, and location of the Haunted Woods are taken directly from this idea. No specific ideas about monsters, treasures and terrain features were given, so I have decided to make it Haunted Woods, a forest filled with Ghosts, inspired by a card in the Dominion deck-building game, which also gives a mental image of being lost in the woods, and the treasure name is inspired by the most expensive card in the famous collectible card game Magic: the Gathering. The Friendly Ghosts created by Orb of Undeath were initially greenish, but in 9.2 they were recolored on tehora's request to match the Playmobil toy (video).
As I have mentioned, Snowyowl0 had an idea about a land called "The Eternal Storm" — the Land of Storms took the name and treasure from this idea, but not really the general idea (land with strong winds), or the monsters (crows and air elementals). Windy Plains are based on these remaining ideas. I wanted a treasure which would be carried by the strong winds, and a feather was a natural candidate yet again (after the phoenix feather from the Land of Eternal Motion). White dove feather as a reference to the song by Bob Dylan, Blowing in the Wind. Tehora helped with the color scheme.
She has also helped a lot with the Rose Garden — here is her story: "There were multiple sources of idea of Rose Garden — probably the most personal land in the game. The earliest I recall was when Zeno made few buttons and fridge magnets with HyperRogue theme. I told him that HyperRogue lacked in a land that would have been incredibly light, pastel, sweet and pink. A bit disturbing and psychedelic. I do not remember who came first with the exact name of Rose Garden — probably me after Zeno told me about one of his favorite roguelike monsters — the nicely smelling rosebush from Alphaman. I got extremely excited with that idea, even more because I personally dislike roses, so they made perfect "monsters" for that land. And then I populated Rose Garden with False Princesses and Princes — a delicate reference to "The Little Prince" by Antoine de Saint-Exupéry and the related Polish song by Kasia Sobczyk. There has been already lost Princess/Prince, that was a real love of our Rogue, but... how to love only one person, when there are many other appealing? This loosely reflects my personal demon, too — to me every other girl would be a better match for Zeno. Digging further in the love-theme, we introduced the Rose Beauties and Handsome Gardeners who would be "too pretty to be killed" — I suggested them during a walk in the break during our friends' doctoral defenses. Actually, the suspenders of Handsome Gardeners were inspired by the outfit of one of our friends on that day. I liked Rose Beauties, because of association with my original understanding of The Sick Rose by William Blake. The very first time I heard this poem in Protagonist's song (thanks KosGD!) it triggered an image of an extremely beautiful but coldhearted evil lady, that nobody expects to be dangerous (of course, many years later I encountered so called "proper analysis" of this poem, but I reject it!). Gardeners tend to be "default lovers" in fairytales — e.g. we thought about Muzzy in Gondoland where the Princess ran away with a Gardener — a cartoon from our childhood. And the last fun fact — when I urged Zeno to create new appearance for Rose Beauties our first attempt ended up as the new look for Witches... And the tiling for that land was prepared to satisfy my moaning that Zeno made a great tiling for Galápagos, and Rose Garden had an inherited one. The initial orb's name suggested by Zeno was Orb of the Skunk and I strongly disliked it. We spend reasonably too much time discussing it, and eventually ended up with Orb of Beauty with the same effect, although motivated differently (gives you stunning appearance, not stink)."
In roguelikes such as Zaga-33 and Ending, the concept of "parity" is crucial — if you have four way movement on a chessboard, and skipping turns not allowed, it is predetermined whether you hit the monster first or it hits you, unless you find some way to disrupt the parity. IMHO games centered around parity get old quite quickly, but I have found it quite fun in Crypt of the Necrodancer — as you have to deal with parity only for a very small number of monsters here — so I have decided to do a bit similar in HyperRogue — have a single land based on parity. The usual HyperRogue tiling has no parity, but it could be recovered by forbidding movement between hexagons, or even better, using another tiling equivalent to such a rule. The intended solution to the problem of killing an incorrectly aligned monster has been influenced by the CotD solution. When showing an early draft to Fulgur14, with trees, lakes, and monsters temporarily named Sloths, he has noticed that the "warped tiling" actually had straight lines, and suggested that they could be used for shorelines — which was a very nice idea, so it turned into a Warped Coast. A new sailor creature was required (after Pirates and Vikings), and Ratlings (from ADOM) were chosen, because of the association of rats with ships and pirates. Their suspiciousness of enemies who do not move was a result of my e-mail discussion with Michael Brough, the author of Zaga-33, about the parity rule. In the first version, the land was solved far too easy by killing Ratlings on a sea boundary, so we have decided with tricosahedron that Ratling Avengers would be created when a player tries to abuse that strategy — and Fulgur14 and tehora wanted them to have capes, because Avengers always wear capes. Corals are a reference to the crochet coral reef project.
Also, the Crossroads IV were created, to reuse the straight line separating Warped Sea and Warped Coast in other situations. Wonderfullizardofoz had this idea too.
Fulgur14 had the idea of a gravity-based land with infinite trees. I think he has suggested apples as treasure, as a reference to the apple which, according to the legend, fell on Isaac Newton's head and thus influenced creation of the theory of gravity. But how to name yet another land of trees, after Jungle, Dry Forest, Overgrown Woods, and Haunted Woods? I remembered that Manic Miner, a classic platformer from 1983, had a level named Endorian Forest. The theme is a result of merging all three themes — Manic Miner's Endorian forest (EF for short), wizardry theme of Ivory Tower, and the theme of research. The land is named Yendorian Forest, as a reference to EF and the Wizard of Yendor in NetHack. EF had green (stable) and red (crumbling) branch platforms, and thus the Yendorian Forest has strong and weak branches. Sparrowhawk is simply a bird who likes to catch prey on trees; tehora did not like using the default bird shape for them, with their "shanks" sticking out, so she was forced to draw a new shape. It is not completely clear what the creatures in EF were supposed to be (probably EF is a reference to the Endorian Forest in Star Wars, and the creatures would be Ewoks, but still, they look different), and how they look from the above — tehora interpreted them as wearing hats similar to ones worn in ancient Aztec reliefs, so that's what we see in HyperRogue. Their bright saturated colors are also a reference to EF. Their name is a reference to Isaac Newton's gravity research, and "infinite trees" in their description are one of research subjects in theoretical computer science.
As mentioned in the first post in this series, originally I had a different idea for the main quest in HyperRogue — every place in the world had environmental/civilizational parameters (temperature, humidity, whatever) which slowly changed as you travelled, and you had to find the location with specific parameters, and probably come back. I did not have a precise idea about how to implement this, and I found that even simpler ideas are fun enough in the hyperbolic plane anyway. At that time, I had no good idea about how to develop this, but when I have mentioned this in that post, I thought that it would be fun to try this now, with all the new experience. I wanted slow creatures whose properties would adapt to the changing environment as you were travelling. This reminded me of Galápagos — tortoises in different islands have different properties to adapt to their environments, which was noticed by Charles Darwin during his Beagle trip, and contributed to the theory of evolution. The land could be called "Land of Tortoises", but Galápagos means "tortoises" in Spanish, so it is better. The text message you get when you find a Baby Tortoise ("Aww, poor Baby Tortoise.") is a reference to Penance, the roguelike webcomic.
A long time ago, Fulgur14 had a idea of a worm-like Dragon, who would be killed by damaging all its segments. I wanted to implement Dragon Chasms some time ago, but the idea for generating it (horocyclic chasms) turned out to be more appropriate for an archipelago, so Caribbean was created instead. Environmental parameters introduced for Galápagos had another application, of creating procedurally generated height maps — so I have decided to create Dragon Chasms with a new algorithm, where chasms were based on such a heightmap. It was quite lucky that Galápagos and Dragon Chasms were created together — I had no idea who would steal Baby Tortoises from their families, and how the Dragons could do anything evil despite being so slow — and making the Dragons steal Tortoises solved both problems! Fire Elementals were added as a simple monster to complement the Dragons — they were already in the Elemental Planes and they should appear somewhere else, and Dragon Chasms sounded appropriate. One bad thing about that is that all other Elementals are very strong in their lands (but weak in the Elemental Planes), and Fire Elemental is still rather weak in the Dragon Chasms — maybe something will be changed in the future. The Orb of Domination has its own story... when we have been showing HyperRogue to one of our friends a year ago, he went to the Desert, and he said "Wow, a Sandworm! Is it possible to ride it?!". It was high time to actually implement Sandworm riding.
This is all in HyperRogue 8.x. The next episode will be about HyperRogue 9.x, and it will take some time — it is still not known what will be there! :)
Sunday, 17 April 2016
Sources of HyperRogue: part III
This is the third post in the series, about the lands from versions 7.x.
I think it was Fulgur14 who wanted a beach with many horocycling seas. I have implemented this, but it turned out to be more convincing as a sea with horocyclic islands, so I have decided that this will be a pirate-themed land, with pirate treasures to be found in the islands. I have named this land the Caribbean, since that's where the Pirates usually roam, and I had no other ideas for another name of a pirate-themed land. (I didn't like the famous Disney film series that much, but I like the Secret of Monkey Island, which is based on the same thing.) One of the treasures in Colossal Cave Adventure is simply called the Pirate treasure, and I am referring to this in HyperRogue's Caribbean somewhat :) The theme has Parrots and treasures, I wanted to have treasure maps too, but as the description says, maps are useless in the hyperbolic plane. So there are compasses. The first time I encountered a compass which points to some specific goal (not just North) was the Secret of Monkey Island, but this also appears in Spelunky and the Disney movie. The Orb was supposed to be described "affect all Orbs which do not affect anything", to keep with the self-referential theme of Escher (see the Eternal Golden Braid), but finally I had to write a more precise description.
The Red Rock Valley started with the snake. I wanted a monster who could walk only on hexagons, and since this provided another way to have a slow monster (but still faster than one moving once per two turns), a snake variant was interesting. I have tried this, and managed to kill the hex snake with its own tail -- but just before killing it, I noticed that the snake has created a very nice structure, which could be used for something. Meanwhile in the forums, tricosahedron had a idea of a land where cells had several elevations, and I have combined the two -- creating steps and structures out of the dead enemies became the theme of the land. The theme, and the Valley part of the name, is based on the Monument Valley, but I preferred a more generic name -- although there is actually the Red Rock Canyon in Nevada, and I have been there.
While the Caribbean was already implemented, but not yet released, wonderfullizardofoz contacted me, and told me about his ideas of the Ocean, with beaches ravaged with tides, whirlpools, and pirates who could use boats. Interestingly, his idea for Pirates and Boats were just like what I have already implemented for Caribbean :) Anyway, Ocean and Whirlpool were great ideas too, so I have implemented them. The treasure of the Ocean is named Amber, because that's what you can find on the beaches in the Baltic region. And Pearl is a typical sea treasure, so it was used for the Whirlpool.
In 2012 I have been discussing hyperbolic geometry in HyperRogue with Piotr Migdał. I did not know Piotr in person then, although we did have some common friends -- for some time, I wanted to meet him and own up to talking to him anonymously, and this eventually happened, with the help of tehora. It turned out that Piotr did not know about how HyperRogue had grown in the meantime. After learning the news, Piotr has sent me some ideas for new lands, including one which I found very interesting: one based on the popular Minesweeper game. A Minesweeper game without any enemies would be quite bland though -- and the best enemies would be ones that could ignore mines, but interact with them somehow, and that's how the Bomberbirds were born (or hatched). And what could the Bomberbirds protect? Obviously, the Bomberbird eggs! Additionally, this has solved a potential problem with this land -- one could go back to the old part of the map, which was generated when the player did not yet collect many treasures and thus contained not too many mines -- and since the treasure was Eggs, they would hatch if you tried to do this. The Angry Birds were probably a slight inspiration too, with eggs as a treasure, and bomb birds -- although not a very strong one, since the Angry Birds have no wings, and they look different in general.
One time, we were discussing with tehora where we will meet. Both of us insisted on their own suggestions of the meeting place and none of us wanted to change their mind. Some time later, tehora said said that she did not like my suggestion, but she felt that she would likely change her opinion in a hour. Knowing that she liked Prince of Persia (the original from 1989), I have said something about conjuring a hourglass, and explained her that, contrary to the propaganda spread by the evil rebel, the Grand Vizier Jaffar in Prince of Persia was actually a good guy, and the hourglass was just a tool to help the Princess decide to marry the man she loved in reasonable time. Then, she said that she wanted a golden palace... Not a real golden palace, but a land in HyperRogue based on Prince of Persia, and this was a great idea, since Prince of Persia had so many features which could work greatly in the HyperRogue world: gates and pressure plates, and guards which could be killed with your sword or pushed into the collapsing floors. The unique enemies of Prince of Persia -- Skeleton, Fat Guard, and Vizier -- also could be turned into interesting enemies. The pattern is based on a pattern made out of circles of radius 3, invented by Fulgur14. The treasure is the Hypersian rug, which is a pun based of Persian rug (I have again used Colossal Cave Adventure as a source of ideas for names of treasures... and there were golden eggs there too, by the way). Since jumping is also a big part of Prince of Persia, Orb of the Frog has been added.
I also wanted a land based on the Living Caves algorithm, but with water instead of caves, so you could also take a boat and go through water. The result looked more convincing as a Fjord than the Emerald Mines, so I have called it the Living Fjord, and created Vikings as enemies who could use boats -- a better match for the Fjord than the Pirates -- also a new species of Troll who could be used to create bridges (since Trolls come from the Norse mythology and are related to bridges, they were quite a good match), and Water Elementals who could connect bodies of water. The treasure has been chosen to be Garnet, as apparently that's what the Vikings prized.
Initially, the Princess was simply mentioned in the description of Palace as another reference to Prince of Persia, but in 7.3 I have decided to add a quest to actually save the Princess. I like how, when attempting to get to the Key in Hell, lakes of sulphur can be large, but they can be circumvented with probability 1 -- but, since this was not actually the easiest way to solve the Yendor Quest, I wanted another quest which exhibited this even better. Testing revealed that I had to make the quest part of the Palace a bit easier with respect to gates (it was still solvable with normal distribution, but just too hard -- so I made this a separate Princess Challenge), and that a Mouse which could open or close plates would be too annoying -- a bit against the original Prince of Persia, where stepping on a pressure plate to open a gate was the only thing that the mouse did. To avoid the (quite sick) "damsel in distress" trope, the Princess/Prince has been made quite a powerful ally. The description of the Orb of Love comes from sayings about love: one is "love heals all wounds", and another is "love transcends time and space", which is inspired by the movie Interstellar.
As already mentioned above, there were some discussions on the Steam forums about how the third dimension could work in the hyperbolic world; in particular, while three levels of rock in the Red Rock Valley is still quite fine, higher altitudes should have hyperbolic effects of its own, since vertical lines supposedly should also diverge. I have decided to explore this further -- with a platformer-style level, with gravity. The first time I have seen a platformer level in a normally top-down game was Legend of Zelda: Link's Awakening; there were also several small platformer 7DRLs (like Earl Spork by Eden Howard, Fuel by Ido Yehieli, and Bump! by Aaron Steed). I have initially called this land the Edge (like, the world ends, but gravity pulls you back), but I was not convinced -- I have shown the draft to Fulgur14, and he suggested the Tower and the Gravity Well, which I also liked, but I felt that Gravity Well was too abstract, and Tower does not explain why does it stand in place. Finally, I have called it Ivory Tower -- a traditional place where scientists (and wizards, in fantasy settings) perform their experiments disconnected from the world, and I felt that the description explains the changed gravity quite well. Gargoyle is a flying fantasy creature, which is made of stone and likes high buildings (based on the architectural element of the same name), so they were a natural idea for the monster there.
The trapdoors in the Palace made me really want to create a land similar to the Land of Eternal Motion, but with only 50% floors unstable. Initially, floors were supposed to be random, but then zelda0x181e posted a very nice pattern in the "Suggestions for the new lands" thread, and I have decided to use that instead. I have decided the monsters to be just the basic type, to refer to the Land of Eternal Motion once more -- and I think the land obtained is very nice, as you have to really use the land to your advantage to success there. Unfortunately, I had no good idea for the theme, and finally I have decided for the "Zebra" theme, with everything in black and white stripes (amusingly, "Zebra" was close to "Zelda", which was the inital name of the land, based on the nick of the designer of the pattern). Onyx is a mineral with a similar structure. I still had no idea for the Orb -- I have added Orb of Discord first (which was initially implemented for the Living Fjord before deciding that Orb of the Fish will be a better match, but was still unused), but then decided that Orb of the Frog was a better match for the land where jumping is very useful, and the Orb of Discord is great for the Palace too, so I have switched the native orbs of Palace and Zebra -- still keeping lots of Orbs of the Frog in the Palace.
After having two Elementals in the game -- the Earth Elemental from the Dead Caves, and the Water Elemental from the Living Fjord -- I thought that there should be some relation between them, like they should fight each other, or appear in the common land based on the classical four elements. When I first saw Fulgur14's fifty cell pattern painted with four colors, I thought that it would be good for such a land -- but I was still unconvinced, as Earth and Water elementals make more sense in infinite areas. Then Fulgur14 told me about his idea of using crossing Great Walls as a way to separate the four elements, and I found this very interesting, so I used this. I have been testing the crossing Great Walls in the Crossroads, and I liked the effect too, and that's how Crossroads III were created. The four Elements are not symmetrical -- I think it is more interesting that way.
And that's all in Versions 7.x! The next part will describe the lands and features from versions 8.x. Since this major version is not yet complete, it will be probably some time before part IV is posted :)
I think it was Fulgur14 who wanted a beach with many horocycling seas. I have implemented this, but it turned out to be more convincing as a sea with horocyclic islands, so I have decided that this will be a pirate-themed land, with pirate treasures to be found in the islands. I have named this land the Caribbean, since that's where the Pirates usually roam, and I had no other ideas for another name of a pirate-themed land. (I didn't like the famous Disney film series that much, but I like the Secret of Monkey Island, which is based on the same thing.) One of the treasures in Colossal Cave Adventure is simply called the Pirate treasure, and I am referring to this in HyperRogue's Caribbean somewhat :) The theme has Parrots and treasures, I wanted to have treasure maps too, but as the description says, maps are useless in the hyperbolic plane. So there are compasses. The first time I encountered a compass which points to some specific goal (not just North) was the Secret of Monkey Island, but this also appears in Spelunky and the Disney movie. The Orb was supposed to be described "affect all Orbs which do not affect anything", to keep with the self-referential theme of Escher (see the Eternal Golden Braid), but finally I had to write a more precise description.
The Red Rock Valley started with the snake. I wanted a monster who could walk only on hexagons, and since this provided another way to have a slow monster (but still faster than one moving once per two turns), a snake variant was interesting. I have tried this, and managed to kill the hex snake with its own tail -- but just before killing it, I noticed that the snake has created a very nice structure, which could be used for something. Meanwhile in the forums, tricosahedron had a idea of a land where cells had several elevations, and I have combined the two -- creating steps and structures out of the dead enemies became the theme of the land. The theme, and the Valley part of the name, is based on the Monument Valley, but I preferred a more generic name -- although there is actually the Red Rock Canyon in Nevada, and I have been there.
While the Caribbean was already implemented, but not yet released, wonderfullizardofoz contacted me, and told me about his ideas of the Ocean, with beaches ravaged with tides, whirlpools, and pirates who could use boats. Interestingly, his idea for Pirates and Boats were just like what I have already implemented for Caribbean :) Anyway, Ocean and Whirlpool were great ideas too, so I have implemented them. The treasure of the Ocean is named Amber, because that's what you can find on the beaches in the Baltic region. And Pearl is a typical sea treasure, so it was used for the Whirlpool.
In 2012 I have been discussing hyperbolic geometry in HyperRogue with Piotr Migdał. I did not know Piotr in person then, although we did have some common friends -- for some time, I wanted to meet him and own up to talking to him anonymously, and this eventually happened, with the help of tehora. It turned out that Piotr did not know about how HyperRogue had grown in the meantime. After learning the news, Piotr has sent me some ideas for new lands, including one which I found very interesting: one based on the popular Minesweeper game. A Minesweeper game without any enemies would be quite bland though -- and the best enemies would be ones that could ignore mines, but interact with them somehow, and that's how the Bomberbirds were born (or hatched). And what could the Bomberbirds protect? Obviously, the Bomberbird eggs! Additionally, this has solved a potential problem with this land -- one could go back to the old part of the map, which was generated when the player did not yet collect many treasures and thus contained not too many mines -- and since the treasure was Eggs, they would hatch if you tried to do this. The Angry Birds were probably a slight inspiration too, with eggs as a treasure, and bomb birds -- although not a very strong one, since the Angry Birds have no wings, and they look different in general.
One time, we were discussing with tehora where we will meet. Both of us insisted on their own suggestions of the meeting place and none of us wanted to change their mind. Some time later, tehora said said that she did not like my suggestion, but she felt that she would likely change her opinion in a hour. Knowing that she liked Prince of Persia (the original from 1989), I have said something about conjuring a hourglass, and explained her that, contrary to the propaganda spread by the evil rebel, the Grand Vizier Jaffar in Prince of Persia was actually a good guy, and the hourglass was just a tool to help the Princess decide to marry the man she loved in reasonable time. Then, she said that she wanted a golden palace... Not a real golden palace, but a land in HyperRogue based on Prince of Persia, and this was a great idea, since Prince of Persia had so many features which could work greatly in the HyperRogue world: gates and pressure plates, and guards which could be killed with your sword or pushed into the collapsing floors. The unique enemies of Prince of Persia -- Skeleton, Fat Guard, and Vizier -- also could be turned into interesting enemies. The pattern is based on a pattern made out of circles of radius 3, invented by Fulgur14. The treasure is the Hypersian rug, which is a pun based of Persian rug (I have again used Colossal Cave Adventure as a source of ideas for names of treasures... and there were golden eggs there too, by the way). Since jumping is also a big part of Prince of Persia, Orb of the Frog has been added.
I also wanted a land based on the Living Caves algorithm, but with water instead of caves, so you could also take a boat and go through water. The result looked more convincing as a Fjord than the Emerald Mines, so I have called it the Living Fjord, and created Vikings as enemies who could use boats -- a better match for the Fjord than the Pirates -- also a new species of Troll who could be used to create bridges (since Trolls come from the Norse mythology and are related to bridges, they were quite a good match), and Water Elementals who could connect bodies of water. The treasure has been chosen to be Garnet, as apparently that's what the Vikings prized.
Initially, the Princess was simply mentioned in the description of Palace as another reference to Prince of Persia, but in 7.3 I have decided to add a quest to actually save the Princess. I like how, when attempting to get to the Key in Hell, lakes of sulphur can be large, but they can be circumvented with probability 1 -- but, since this was not actually the easiest way to solve the Yendor Quest, I wanted another quest which exhibited this even better. Testing revealed that I had to make the quest part of the Palace a bit easier with respect to gates (it was still solvable with normal distribution, but just too hard -- so I made this a separate Princess Challenge), and that a Mouse which could open or close plates would be too annoying -- a bit against the original Prince of Persia, where stepping on a pressure plate to open a gate was the only thing that the mouse did. To avoid the (quite sick) "damsel in distress" trope, the Princess/Prince has been made quite a powerful ally. The description of the Orb of Love comes from sayings about love: one is "love heals all wounds", and another is "love transcends time and space", which is inspired by the movie Interstellar.
As already mentioned above, there were some discussions on the Steam forums about how the third dimension could work in the hyperbolic world; in particular, while three levels of rock in the Red Rock Valley is still quite fine, higher altitudes should have hyperbolic effects of its own, since vertical lines supposedly should also diverge. I have decided to explore this further -- with a platformer-style level, with gravity. The first time I have seen a platformer level in a normally top-down game was Legend of Zelda: Link's Awakening; there were also several small platformer 7DRLs (like Earl Spork by Eden Howard, Fuel by Ido Yehieli, and Bump! by Aaron Steed). I have initially called this land the Edge (like, the world ends, but gravity pulls you back), but I was not convinced -- I have shown the draft to Fulgur14, and he suggested the Tower and the Gravity Well, which I also liked, but I felt that Gravity Well was too abstract, and Tower does not explain why does it stand in place. Finally, I have called it Ivory Tower -- a traditional place where scientists (and wizards, in fantasy settings) perform their experiments disconnected from the world, and I felt that the description explains the changed gravity quite well. Gargoyle is a flying fantasy creature, which is made of stone and likes high buildings (based on the architectural element of the same name), so they were a natural idea for the monster there.
The trapdoors in the Palace made me really want to create a land similar to the Land of Eternal Motion, but with only 50% floors unstable. Initially, floors were supposed to be random, but then zelda0x181e posted a very nice pattern in the "Suggestions for the new lands" thread, and I have decided to use that instead. I have decided the monsters to be just the basic type, to refer to the Land of Eternal Motion once more -- and I think the land obtained is very nice, as you have to really use the land to your advantage to success there. Unfortunately, I had no good idea for the theme, and finally I have decided for the "Zebra" theme, with everything in black and white stripes (amusingly, "Zebra" was close to "Zelda", which was the inital name of the land, based on the nick of the designer of the pattern). Onyx is a mineral with a similar structure. I still had no idea for the Orb -- I have added Orb of Discord first (which was initially implemented for the Living Fjord before deciding that Orb of the Fish will be a better match, but was still unused), but then decided that Orb of the Frog was a better match for the land where jumping is very useful, and the Orb of Discord is great for the Palace too, so I have switched the native orbs of Palace and Zebra -- still keeping lots of Orbs of the Frog in the Palace.
After having two Elementals in the game -- the Earth Elemental from the Dead Caves, and the Water Elemental from the Living Fjord -- I thought that there should be some relation between them, like they should fight each other, or appear in the common land based on the classical four elements. When I first saw Fulgur14's fifty cell pattern painted with four colors, I thought that it would be good for such a land -- but I was still unconvinced, as Earth and Water elementals make more sense in infinite areas. Then Fulgur14 told me about his idea of using crossing Great Walls as a way to separate the four elements, and I found this very interesting, so I used this. I have been testing the crossing Great Walls in the Crossroads, and I liked the effect too, and that's how Crossroads III were created. The four Elements are not symmetrical -- I think it is more interesting that way.
And that's all in Versions 7.x! The next part will describe the lands and features from versions 8.x. Since this major version is not yet complete, it will be probably some time before part IV is posted :)
Tuesday, 29 March 2016
Sources of HyperRogue: part II
This is the second post in the series, about the lands from versions 5.x-6.x.
While HyperRogue was not yet on Steam, Maciej Chojecki has sent me a bunch of ideas for new lands. One of the ideas was about a forest -- with forest ghosts which can walk on trees, and "timbermans" who can destroy trees and drop "axe orbs" on death, which could allow you to destroy trees too. I liked the idea of a maze of trees, but I was somewhat afraid of static mazes then (you could just run into a dead end and slay any followers easily), so I thought that there should be some anti-camping mechanism -- and what anti-camping mechanism fits the theme of a maze of trees? Bushfires sounded great, especially if you could cut the trees to make the fire spread slower! I have tried several approaches, but finally it worked as I wanted (two types of trees were required so that escaping from the fire, and stopping it by removing trees, was balanced well). Also, in the meantime I have played Hoplite, which is another small tactical roguelike. I loved some of the great ideas here, such as the stabbing mechanics -- possibly HyperRogue would develop in a different way if I had played Hoplite before... In Hoplite your character has a choice of learning one of possible skills, allowing the player to develop their character in many different ways. I miss this in HyperRogue somewhat, but on the other hand, I find the extremely simple rules of HyperRogue nice too -- and new lands would be harder to balance if multiple builds were possible. Hoplite is newer than the early versions of HyperRogue, so maybe it took some inspiration? I don't know. :) Anyway, I have copied the stabbing mechanics, and created HyperRogue's Hedgehog Warriors. In the Slavic mythology, ferns blossomed only on the summer solstice, and the Fern Flowers brought wealth to whoever found them. Seemed like a great treasure for the forest land. Interestingly, after finishing the Dry Forest, I read Maciej Chojecki's e-mail again and found out that he had the same idea for the name of the treasure.
Cocytus, the hellish version of the Icy Lands where heat creates immovable terrain instead of destroying it, was partially created before LoEM. The idea for the mechanics is somewhat inspired by Stanisław Lem's Three Electroknights, a short story where a knight steals the precious gems from an extremely cold planet, until his heat melts the ground below him. The problem with heat-based lands is that it is somewhat hard to plan your next moves here, as it is hard to tell whether a cell will melt in the given turn or not. Thus, I have decided to make it an unfinished land, only accessible to cheaters (or by getting 2000 $$$ -- which was actually possible in some versions, by using exploits). As for the name, Cocytus was one of the four rivers in Hades in the Greek mythology, a frozen lake in the ninth circle of Hell in Dante's Divine Commedy, and the ice-themed part of Hell in Dungeon Crawl -- I guess Dante is the closest to HyperRogue here. After adding the Dry Forest, I have decided to finish Cocytus too -- I have added the missing graphics, and also added the Crystal Sages. I wonder how people interpret their weird gestures? I think nobody has commented about that. Anyway, read Three Electroknights for an explanation -- the gestures come from there.
Thus, 5.x included two new lands. Version 6.0 started with five new lands...
I have already mentioned the forest idea by Maciej Chojecki. While I did not want a static maze because I was afraid of camping, his ideas actually solved the problem -- the "timbermans", and also somewhat the monsters moving through walls only, would prevent you from just waiting in a dead end. Thus I have decided to create a new land based on the mechanics, just changed the theme to a cave -- and thus the Dead Cave was created, reusing Seeps for the Forest Ghosts, and with Earth Elementals instead of timbermans, still dropping orbs providing means to go through the walls. HyperRogue already contained Orbs of Digging, which worked only in the Living Cave -- I have made them work in both lands and also in some other lands, and renamed them to Orbs of Earth. Also renamed Orb of Lightning to Orb of Storms. (Speaking of orbs, the name Orb of the Flash from the Icy Lands is based on a spell from Diablo.)
Some players on Steam wondered how a war game would work in the hyperbolic plane, and that's how the Hive was born -- and they wanted ants, so the Hyperbugs who fight there are ant-like creatures. Royal Jelly is the food of baby bee queens, and it appears as a quite valuable item in many roguelikes (ADOM, NetHack, older versions of DCSS, Spelunky HD). Again, I have tried several attempts -- in some of them Hyperbugs were invincible, in some you only received Royal Jelly by killing the Hyperbug queens, and in some there were actually three sublands, for the different Hyperbug races -- before finally settling for circles of radius 9. Note that this was before horocycles were added to the game, and even circles of radius 9 were somewhat a challenge for me at the moment... they were (and they still are) generated completely when they were created -- I think that the reason for the sparsity of Hive is that I did not want walking through Hive to use too much memory (even though it probably actually uses more memory as it is, since you have to walk longer before finding a nest).
I don't remember how I got an idea of a more complicated repeating pattern... possibly it came from a discussion with Fulgur14. I think I wanted a dense regular pattern of ultraparalell lines, to make a better use of the hyperbolic geometry. I have called it the Vineyard, since that's what dense paralell lines remind me of. (Also see some regular graveyards from the real life.) Vine Beasts appear in some addons for Battle for Wesnoth.
Satisfied with the Hedgehog Warriors, I have created some more monsters requiring special means of killing -- ones which were killed when you approached them (again a bit like in Hoplite), and ones which were killed when you moved away from them (somewhat inspired by the game Ultima, which is a chess-like game where pieces differ mostly by the way they attack, rather than their movement capabilities -- I have never actually played it, but I find the idea interesting). Also, it turned out that I could create several interesting repetitive patterns by changing the vineyard one a bit. I wanted a sea land for a long time, so I wanted to combine all these ideas into one -- a "fjord" with a regular pattern and filled with Hedgehog Warriors, Pikemen, and Flail Guards. However, this turned out extremely unconvincing, so I have dropped the fjord theme, and it became the Emerald Mines instead -- a maze of small twisty passages, all alike. (By the way, that quote about small twisty passages is from the classic adventure game, Colossal Cave Adventure -- not used in HyperRogue, but Hydra Slayer quotes another line from CCA.)
I was somewhat unhappy with the relatively low usefulness of the early Orbs, so I have created the Land of Power, where the Orbs were essential. Initially it was supposed to have fires arranged in a way similar to the ice walls in the Icy Lands, but finally, I have decided to use another rearrangement of the Vineyard pattern. The enemies were called Witches so that we have more female enemies, to complement the choice of playing a female character, which was also introduced somewhere around that time. By the way, a bit of history about this choice: players have been asking to translate HyperRogue to their languages. At first, I did not want to add translations to HyperRogue -- I did not believe in translations too much, since programs are usually translated very badly to Polish, where nouns can be in several cases based on their role in their sentence, and verbs and adjectives change depending on the genus of the noun. Most translation engines cannot handle that -- instead, they cheat by using forms which are always correct, but very ugly and unnatural. But then, I thought, let's show them how to create a beautiful Polish translation -- so I have created an engine which created nice Polish sentences, and even cared about the gender of the player character correctly.
That was HyperRogue 6.0. Then, tricosahedron has asked on the Steam forums about large and infinite circles -- he believed that the placement of Great Walls in the HyperRogue world was static, and thus there would be fixed large circles made of a specific land, and wanted to know how to find a center of such a circle. Actually, great walls are placed randomly (not based on any circles), so this question does not make much sense -- but still, his question seemed to be an interesting challenge, and that's how Camelot was born in HyperRogue 6.2. Camelot, the Knights of the Round Table, and the Holy Grail obviously come from the English legends.
Camelot required HyperRogue to be able to create made of billions of cells, which could not fit in the computer's memory. Changing these routines to also enable infinite structures -- that is, horocycles -- was relatively easy. It was Fulgur14 who wanted horocycles to appear in the game -- and the first land featuring them was the Temple of Cthulhu, greatly improving the previously quite boring R'Lyeh. I wanted the player to have to go deeply into the infinite sequence of horocycles to obtain a big amount treasures. There are many famous fictional books of magic in the Cthulhu mythos, such as the Necronomicon -- to force the player to go deep into the horocycle, I have decided that these books would be the treasure, with more valuable ones deeper in the temple, but no point to collect two copies of the same Grimoire. With the ultraparalell lines of the Vineyard, medium circles of the Hive, large circles of Camelot, and infinitely nested horocycles of Cthulhu, the hyperbolic theme of HyperRogue became much stronger -- thanks to Fulgur14 for discussing the hyperbolic geometry :)
To be continued, with the lands from versions 7.x...
While HyperRogue was not yet on Steam, Maciej Chojecki has sent me a bunch of ideas for new lands. One of the ideas was about a forest -- with forest ghosts which can walk on trees, and "timbermans" who can destroy trees and drop "axe orbs" on death, which could allow you to destroy trees too. I liked the idea of a maze of trees, but I was somewhat afraid of static mazes then (you could just run into a dead end and slay any followers easily), so I thought that there should be some anti-camping mechanism -- and what anti-camping mechanism fits the theme of a maze of trees? Bushfires sounded great, especially if you could cut the trees to make the fire spread slower! I have tried several approaches, but finally it worked as I wanted (two types of trees were required so that escaping from the fire, and stopping it by removing trees, was balanced well). Also, in the meantime I have played Hoplite, which is another small tactical roguelike. I loved some of the great ideas here, such as the stabbing mechanics -- possibly HyperRogue would develop in a different way if I had played Hoplite before... In Hoplite your character has a choice of learning one of possible skills, allowing the player to develop their character in many different ways. I miss this in HyperRogue somewhat, but on the other hand, I find the extremely simple rules of HyperRogue nice too -- and new lands would be harder to balance if multiple builds were possible. Hoplite is newer than the early versions of HyperRogue, so maybe it took some inspiration? I don't know. :) Anyway, I have copied the stabbing mechanics, and created HyperRogue's Hedgehog Warriors. In the Slavic mythology, ferns blossomed only on the summer solstice, and the Fern Flowers brought wealth to whoever found them. Seemed like a great treasure for the forest land. Interestingly, after finishing the Dry Forest, I read Maciej Chojecki's e-mail again and found out that he had the same idea for the name of the treasure.
Cocytus, the hellish version of the Icy Lands where heat creates immovable terrain instead of destroying it, was partially created before LoEM. The idea for the mechanics is somewhat inspired by Stanisław Lem's Three Electroknights, a short story where a knight steals the precious gems from an extremely cold planet, until his heat melts the ground below him. The problem with heat-based lands is that it is somewhat hard to plan your next moves here, as it is hard to tell whether a cell will melt in the given turn or not. Thus, I have decided to make it an unfinished land, only accessible to cheaters (or by getting 2000 $$$ -- which was actually possible in some versions, by using exploits). As for the name, Cocytus was one of the four rivers in Hades in the Greek mythology, a frozen lake in the ninth circle of Hell in Dante's Divine Commedy, and the ice-themed part of Hell in Dungeon Crawl -- I guess Dante is the closest to HyperRogue here. After adding the Dry Forest, I have decided to finish Cocytus too -- I have added the missing graphics, and also added the Crystal Sages. I wonder how people interpret their weird gestures? I think nobody has commented about that. Anyway, read Three Electroknights for an explanation -- the gestures come from there.
Thus, 5.x included two new lands. Version 6.0 started with five new lands...
I have already mentioned the forest idea by Maciej Chojecki. While I did not want a static maze because I was afraid of camping, his ideas actually solved the problem -- the "timbermans", and also somewhat the monsters moving through walls only, would prevent you from just waiting in a dead end. Thus I have decided to create a new land based on the mechanics, just changed the theme to a cave -- and thus the Dead Cave was created, reusing Seeps for the Forest Ghosts, and with Earth Elementals instead of timbermans, still dropping orbs providing means to go through the walls. HyperRogue already contained Orbs of Digging, which worked only in the Living Cave -- I have made them work in both lands and also in some other lands, and renamed them to Orbs of Earth. Also renamed Orb of Lightning to Orb of Storms. (Speaking of orbs, the name Orb of the Flash from the Icy Lands is based on a spell from Diablo.)
Some players on Steam wondered how a war game would work in the hyperbolic plane, and that's how the Hive was born -- and they wanted ants, so the Hyperbugs who fight there are ant-like creatures. Royal Jelly is the food of baby bee queens, and it appears as a quite valuable item in many roguelikes (ADOM, NetHack, older versions of DCSS, Spelunky HD). Again, I have tried several attempts -- in some of them Hyperbugs were invincible, in some you only received Royal Jelly by killing the Hyperbug queens, and in some there were actually three sublands, for the different Hyperbug races -- before finally settling for circles of radius 9. Note that this was before horocycles were added to the game, and even circles of radius 9 were somewhat a challenge for me at the moment... they were (and they still are) generated completely when they were created -- I think that the reason for the sparsity of Hive is that I did not want walking through Hive to use too much memory (even though it probably actually uses more memory as it is, since you have to walk longer before finding a nest).
I don't remember how I got an idea of a more complicated repeating pattern... possibly it came from a discussion with Fulgur14. I think I wanted a dense regular pattern of ultraparalell lines, to make a better use of the hyperbolic geometry. I have called it the Vineyard, since that's what dense paralell lines remind me of. (Also see some regular graveyards from the real life.) Vine Beasts appear in some addons for Battle for Wesnoth.
Satisfied with the Hedgehog Warriors, I have created some more monsters requiring special means of killing -- ones which were killed when you approached them (again a bit like in Hoplite), and ones which were killed when you moved away from them (somewhat inspired by the game Ultima, which is a chess-like game where pieces differ mostly by the way they attack, rather than their movement capabilities -- I have never actually played it, but I find the idea interesting). Also, it turned out that I could create several interesting repetitive patterns by changing the vineyard one a bit. I wanted a sea land for a long time, so I wanted to combine all these ideas into one -- a "fjord" with a regular pattern and filled with Hedgehog Warriors, Pikemen, and Flail Guards. However, this turned out extremely unconvincing, so I have dropped the fjord theme, and it became the Emerald Mines instead -- a maze of small twisty passages, all alike. (By the way, that quote about small twisty passages is from the classic adventure game, Colossal Cave Adventure -- not used in HyperRogue, but Hydra Slayer quotes another line from CCA.)
I was somewhat unhappy with the relatively low usefulness of the early Orbs, so I have created the Land of Power, where the Orbs were essential. Initially it was supposed to have fires arranged in a way similar to the ice walls in the Icy Lands, but finally, I have decided to use another rearrangement of the Vineyard pattern. The enemies were called Witches so that we have more female enemies, to complement the choice of playing a female character, which was also introduced somewhere around that time. By the way, a bit of history about this choice: players have been asking to translate HyperRogue to their languages. At first, I did not want to add translations to HyperRogue -- I did not believe in translations too much, since programs are usually translated very badly to Polish, where nouns can be in several cases based on their role in their sentence, and verbs and adjectives change depending on the genus of the noun. Most translation engines cannot handle that -- instead, they cheat by using forms which are always correct, but very ugly and unnatural. But then, I thought, let's show them how to create a beautiful Polish translation -- so I have created an engine which created nice Polish sentences, and even cared about the gender of the player character correctly.
That was HyperRogue 6.0. Then, tricosahedron has asked on the Steam forums about large and infinite circles -- he believed that the placement of Great Walls in the HyperRogue world was static, and thus there would be fixed large circles made of a specific land, and wanted to know how to find a center of such a circle. Actually, great walls are placed randomly (not based on any circles), so this question does not make much sense -- but still, his question seemed to be an interesting challenge, and that's how Camelot was born in HyperRogue 6.2. Camelot, the Knights of the Round Table, and the Holy Grail obviously come from the English legends.
Camelot required HyperRogue to be able to create made of billions of cells, which could not fit in the computer's memory. Changing these routines to also enable infinite structures -- that is, horocycles -- was relatively easy. It was Fulgur14 who wanted horocycles to appear in the game -- and the first land featuring them was the Temple of Cthulhu, greatly improving the previously quite boring R'Lyeh. I wanted the player to have to go deeply into the infinite sequence of horocycles to obtain a big amount treasures. There are many famous fictional books of magic in the Cthulhu mythos, such as the Necronomicon -- to force the player to go deep into the horocycle, I have decided that these books would be the treasure, with more valuable ones deeper in the temple, but no point to collect two copies of the same Grimoire. With the ultraparalell lines of the Vineyard, medium circles of the Hive, large circles of Camelot, and infinitely nested horocycles of Cthulhu, the hyperbolic theme of HyperRogue became much stronger -- thanks to Fulgur14 for discussing the hyperbolic geometry :)
To be continued, with the lands from versions 7.x...
Saturday, 19 March 2016
Sources of HyperRogue: part I
This is the first post in the series which attempts to list all the cultural references and sources of ideas in HyperRogue. I always want to read such things, so I write one myself too :) (especially for historical fiction, which I often find somewhat annoying because I don't know what is history and what is fiction)
Starting from the basics: HyperRogue is a roguelike set in a hyperbolic world. I wanted to create a hyperbolic game since I have learned about it, like 20 years ago. First it was supposed to be some kind of a shooter, then I got involved with roguelikes, but I was unable to find a grid which could work well (each grid works only with one specific size of tiles, and all of them appeared too large for a roguelike). Then, I have found the "hyperbolic football" pattern, and that just was what I needed!
HyperRogue started as a weird mathematical experiment, I have implemented the hyperbolic grid, some wall/treasure/monster generation, and the simplest combat system. I had some rough ideas for a quest (coming to think of it, maybe a good idea for a new land...), but this simple thing already turned out to be surprisingly good when moved to hyperbolic geometry! But one thing I did not like about the combat system: the player could just camp in a place with just one passable adjacent cell, and destroy all the enemies easily. So, inspired by the theme of Frozen Depths somewhat, I have introduced the heat mechanics, and yet another enemy which tracked its prey by heat. That was the first version of Hyperbolic Rogue, and also that's why the game always starts in the Icy Lands.
For the 7DRL challenge (version 2.0), I have decided to extend the game, and create more lands...
A desert with huge worms is referred to in JRR Tolkien's Hobbit, but Thumpers, Spice and Sandworms are a reference to Frank Herbert's Dune. Mechanically, Sandworms come from the popular "snake" games (most famous one is the Nokia, but the concept is older), and more directly, from DROD. Also, they work as an anti-camping mechanism -- every land attempts to have one. In the earlier versions, sandworms were not allowed to leave the Desert.
I also wanted some cavernous region, and I got the idea that a cellular automaton might generate nice caves. Trolls and Goblins are typical fantasy monsters living in the caves, and Seeps come from DROD again. Translators always seem to ask what a Seep is...
The roguelike Ragnarok (aka Valhalla) has a monster called the ivy creeper. All other monsters in Ragnarok took just one cell, but the ivy creeper could grow. Sadly, it was extremely rare, and thus not very prominent. Shame for such an interesting idea -- but the Jungle in HyperRogue brings Ivies back their deserved glory. In the early versions, Ivies were rarer (you would usually see just one), and thus it did not look much like a Jungle. This was changed in the later versions (4.x?), also making the Jungle the hardest early land -- although some of the hardness was apparently caused by creating Eagles more frequently than intended due to a bug on MS Windows. Later (8.x?), this was somewhat toned down again, by not generating double Ivies (two adjacent roots -- much harder than the normal ones) if the player has not yet collected many Rubies.
Ragnarok also had a level called the Crossroads, which allowed travelling between the different places quickly. Hyperbolic geometry makes this work better :)
Slimes are typical RPG monsters, and the elixir of life is the typical objective of alchemy. So, nothing really special about the Alchemist Lab, but note that HyperRogue was still an ASCII only game at that point (there were only graphical effects for Orbs, and Sandworm/Ivy segments were connected with lines). If I recall correctly, the reason why we have a rule that cells containing Elixirs of Life (or other items) are considered to belong to both colors is because it was impossible to show the color of slime beneath the item in the typical roguelike ASCII display. HyperRogue still has an ASCII option, but I no longer care much about tailoring the rules so that the ASCII display is 100% playable.
DROD also has Mimics, which try to repeat your moves, leading to quite interesting puzzles. I wanted to see how this mechanics works in the hyperbolic grid, and that's how the Mirror Land was born.
This was the last land in the 7DRL version of HyperRogue. Later came Version 3.0, which introduced graphics, and some new lands. The graphics are inspired by M.C. Escher, most notably the Circle Limit series, which are based on hyperbolic geometry.
Graveyard was the first land with a regular pattern, and Ghosts move through walls, as everyone knows. Zombies come from the Haitian folklore, and are everywhere in the fantasy works nowadays. It always felt strange for me in e.g. ADOM that a necromancer can turn a dead body either into a ghost or a zombie -- shouldn't creating a ghost require just the soul, leaving the soulless body to create a zombie? So, in HyperRogue, Necromancers are able to create both a ghost and a zombie from a single grave. Graveyard also features an invincible Shadow who follows you everywhere, somewhat inspired by Darren Grey's 2DRL, Run from the Shadow. However, the Shadow turned out to be not very interesting, just creepy. Some time later (around 5.0), Ghosts have started to appear whenever the player stopped exploring the world -- this was originally intended as a way to force the game to actually end when the player is stuck in the Living Cave, but it also brings some new interesting tactical insights of its own.
People playing the early versions of HyperRogue said that the non-Euclidean geometry reminds them of works of H. P. Lovecraft. I have not yet actually read anything by Lovecraft at that time (other than playing a RPG session in the Call of Cthulhu system long ago, which somehow turned into a math joke and had nothing to do with the actual Cthulhu mythos...), so I have read the Call of Cthulhu: swallowed up by an angle of masonry which shouldn’t have been there; an angle which was acute, but behaved as if it were obtuse. (Well, in HyperRogue and hyperbolic geometry in general, an acute angle is always acute, no matter how you look at it.... I guess Lovecraft's geometry was even stranger, or maybe he did not know how hyperbolic geometry works). Anyway, I have added R'Lyeh, with Cultists, tentacles and statues, typical things from the Cthulhu mythos (I am not an expert in these mythos --- the Call of Cthulhu remains the only book by Lovecraft I have read --- but it is hard to not know about the tentacles and cultists of Cthulhu, or the Necronomicon). IMHO R'Lyeh was the most boring land for a long time, but this changed when the Temples of Cthulhu were introduced.
Many RPGs use a rather weird system: on one hand, getting experience or powerful items makes you stronger, but on the other hand, it also brings stronger enemies. In the end, getting stronger does not actually make you more able to fight the enemies you meet, and in some cases, it is actually much better to avoid getting powerful (for example, in IVAN items which increase your hitpoints are believed to be actually counterproductive, since they attract powerful enemies, and the rest of your equipment is not sufficient for handling them). Hell's demon fighting mechanics parody that. Orb of Yendor obviously comes from the Amulet of Yendor, which is what you have to collect in many roguelikes (such as Rogue itself, NetHack, and Brogue). And the Demon Daisy was a nasty herb in ADOM, I liked the name, so it became the treasure in Hell. The pavement in Hell is somewhat inspired with M. C. Escher's Circle Limit IV (although, according to the Polish proverb, the Hell is paved with good intentions).
Disappearing floors appear in many games, DROD is again the most direct reference here. The Land of Eternal Motion was the last land added to pre-Steam HyperRogue. Feathers were chosen for the treasure, since something which would not disrupt the land was required. Phoenix feather is a powerful material in IVAN, possibly the best thing to have your legs made of.
Versions 4.x did not introduce any new lands, but they introduced music by Shawn Parrotte (4.0) and an improved graphics engine (4.2 -- it turned out that OpenGL works with the Minkowski hyperboloid model very well). There were two cases when I have asked Shawn for a somewhat specific type of music -- since Escher's art is an inspiration for the graphics in HyperRogue, I wanted music based on similar ideas of paradox and repetition, inspired by Douglas Hofstadter's Gödel, Escher, Bach: the Eternal Golden Braid somewhat. One of them was a variant of the crab canon for the Mirror Land -- a canon that is the same forward and backward, very appropriate for this place. The other one was a variant of the Shepard tone, used for R'Lyeh -- a tone which seems to get lower and lower infinitely (very appropriate for the Temple of Cthulhu which came later). Both crab canons and Shepard tones can be understood as musical counterparts of Escher's art.
That's all the lands and important features that were there before HyperRogue got accepted for Steam. To be continued!
Starting from the basics: HyperRogue is a roguelike set in a hyperbolic world. I wanted to create a hyperbolic game since I have learned about it, like 20 years ago. First it was supposed to be some kind of a shooter, then I got involved with roguelikes, but I was unable to find a grid which could work well (each grid works only with one specific size of tiles, and all of them appeared too large for a roguelike). Then, I have found the "hyperbolic football" pattern, and that just was what I needed!
HyperRogue started as a weird mathematical experiment, I have implemented the hyperbolic grid, some wall/treasure/monster generation, and the simplest combat system. I had some rough ideas for a quest (coming to think of it, maybe a good idea for a new land...), but this simple thing already turned out to be surprisingly good when moved to hyperbolic geometry! But one thing I did not like about the combat system: the player could just camp in a place with just one passable adjacent cell, and destroy all the enemies easily. So, inspired by the theme of Frozen Depths somewhat, I have introduced the heat mechanics, and yet another enemy which tracked its prey by heat. That was the first version of Hyperbolic Rogue, and also that's why the game always starts in the Icy Lands.
For the 7DRL challenge (version 2.0), I have decided to extend the game, and create more lands...
A desert with huge worms is referred to in JRR Tolkien's Hobbit, but Thumpers, Spice and Sandworms are a reference to Frank Herbert's Dune. Mechanically, Sandworms come from the popular "snake" games (most famous one is the Nokia, but the concept is older), and more directly, from DROD. Also, they work as an anti-camping mechanism -- every land attempts to have one. In the earlier versions, sandworms were not allowed to leave the Desert.
I also wanted some cavernous region, and I got the idea that a cellular automaton might generate nice caves. Trolls and Goblins are typical fantasy monsters living in the caves, and Seeps come from DROD again. Translators always seem to ask what a Seep is...
The roguelike Ragnarok (aka Valhalla) has a monster called the ivy creeper. All other monsters in Ragnarok took just one cell, but the ivy creeper could grow. Sadly, it was extremely rare, and thus not very prominent. Shame for such an interesting idea -- but the Jungle in HyperRogue brings Ivies back their deserved glory. In the early versions, Ivies were rarer (you would usually see just one), and thus it did not look much like a Jungle. This was changed in the later versions (4.x?), also making the Jungle the hardest early land -- although some of the hardness was apparently caused by creating Eagles more frequently than intended due to a bug on MS Windows. Later (8.x?), this was somewhat toned down again, by not generating double Ivies (two adjacent roots -- much harder than the normal ones) if the player has not yet collected many Rubies.
Ragnarok also had a level called the Crossroads, which allowed travelling between the different places quickly. Hyperbolic geometry makes this work better :)
Slimes are typical RPG monsters, and the elixir of life is the typical objective of alchemy. So, nothing really special about the Alchemist Lab, but note that HyperRogue was still an ASCII only game at that point (there were only graphical effects for Orbs, and Sandworm/Ivy segments were connected with lines). If I recall correctly, the reason why we have a rule that cells containing Elixirs of Life (or other items) are considered to belong to both colors is because it was impossible to show the color of slime beneath the item in the typical roguelike ASCII display. HyperRogue still has an ASCII option, but I no longer care much about tailoring the rules so that the ASCII display is 100% playable.
DROD also has Mimics, which try to repeat your moves, leading to quite interesting puzzles. I wanted to see how this mechanics works in the hyperbolic grid, and that's how the Mirror Land was born.
This was the last land in the 7DRL version of HyperRogue. Later came Version 3.0, which introduced graphics, and some new lands. The graphics are inspired by M.C. Escher, most notably the Circle Limit series, which are based on hyperbolic geometry.
Graveyard was the first land with a regular pattern, and Ghosts move through walls, as everyone knows. Zombies come from the Haitian folklore, and are everywhere in the fantasy works nowadays. It always felt strange for me in e.g. ADOM that a necromancer can turn a dead body either into a ghost or a zombie -- shouldn't creating a ghost require just the soul, leaving the soulless body to create a zombie? So, in HyperRogue, Necromancers are able to create both a ghost and a zombie from a single grave. Graveyard also features an invincible Shadow who follows you everywhere, somewhat inspired by Darren Grey's 2DRL, Run from the Shadow. However, the Shadow turned out to be not very interesting, just creepy. Some time later (around 5.0), Ghosts have started to appear whenever the player stopped exploring the world -- this was originally intended as a way to force the game to actually end when the player is stuck in the Living Cave, but it also brings some new interesting tactical insights of its own.
People playing the early versions of HyperRogue said that the non-Euclidean geometry reminds them of works of H. P. Lovecraft. I have not yet actually read anything by Lovecraft at that time (other than playing a RPG session in the Call of Cthulhu system long ago, which somehow turned into a math joke and had nothing to do with the actual Cthulhu mythos...), so I have read the Call of Cthulhu: swallowed up by an angle of masonry which shouldn’t have been there; an angle which was acute, but behaved as if it were obtuse. (Well, in HyperRogue and hyperbolic geometry in general, an acute angle is always acute, no matter how you look at it.... I guess Lovecraft's geometry was even stranger, or maybe he did not know how hyperbolic geometry works). Anyway, I have added R'Lyeh, with Cultists, tentacles and statues, typical things from the Cthulhu mythos (I am not an expert in these mythos --- the Call of Cthulhu remains the only book by Lovecraft I have read --- but it is hard to not know about the tentacles and cultists of Cthulhu, or the Necronomicon). IMHO R'Lyeh was the most boring land for a long time, but this changed when the Temples of Cthulhu were introduced.
Many RPGs use a rather weird system: on one hand, getting experience or powerful items makes you stronger, but on the other hand, it also brings stronger enemies. In the end, getting stronger does not actually make you more able to fight the enemies you meet, and in some cases, it is actually much better to avoid getting powerful (for example, in IVAN items which increase your hitpoints are believed to be actually counterproductive, since they attract powerful enemies, and the rest of your equipment is not sufficient for handling them). Hell's demon fighting mechanics parody that. Orb of Yendor obviously comes from the Amulet of Yendor, which is what you have to collect in many roguelikes (such as Rogue itself, NetHack, and Brogue). And the Demon Daisy was a nasty herb in ADOM, I liked the name, so it became the treasure in Hell. The pavement in Hell is somewhat inspired with M. C. Escher's Circle Limit IV (although, according to the Polish proverb, the Hell is paved with good intentions).
Disappearing floors appear in many games, DROD is again the most direct reference here. The Land of Eternal Motion was the last land added to pre-Steam HyperRogue. Feathers were chosen for the treasure, since something which would not disrupt the land was required. Phoenix feather is a powerful material in IVAN, possibly the best thing to have your legs made of.
Versions 4.x did not introduce any new lands, but they introduced music by Shawn Parrotte (4.0) and an improved graphics engine (4.2 -- it turned out that OpenGL works with the Minkowski hyperboloid model very well). There were two cases when I have asked Shawn for a somewhat specific type of music -- since Escher's art is an inspiration for the graphics in HyperRogue, I wanted music based on similar ideas of paradox and repetition, inspired by Douglas Hofstadter's Gödel, Escher, Bach: the Eternal Golden Braid somewhat. One of them was a variant of the crab canon for the Mirror Land -- a canon that is the same forward and backward, very appropriate for this place. The other one was a variant of the Shepard tone, used for R'Lyeh -- a tone which seems to get lower and lower infinitely (very appropriate for the Temple of Cthulhu which came later). Both crab canons and Shepard tones can be understood as musical counterparts of Escher's art.
That's all the lands and important features that were there before HyperRogue got accepted for Steam. To be continued!
Subscribe to:
Posts (Atom)