Showing posts with label video. Show all posts
Showing posts with label video. Show all posts

Wednesday, 27 December 2023

HyperRogue 13.0

HyperRogue version 13.0 is released on Steam and itch.io!

Again, it was quite a long time since the last major update (12.0, from 2021). Of course, the work never stopped -- improvements were continuously added to the game, so if you were following HyperRogue closely, you have seen these. For less active followers, here is a summary of the most interesting new stuff.

Dangerous to go in a line. Take a Crossbow!

Many roguelikes ensure their longevity by providing ways many different ways to play the game. This is done both by having many possible inventory-based builds (as reflected in HyperRogue's Orb Strategy Mode), but also by giving a choice of playing multiple kinds of characters, with different strengths and weaknesses; for example, the five different characters in Hydra Slayer, or 27 different species in Dungeon Crawl Stone Soup, further augmented by specialization and deity choices. However, this kind of specialization often relies on changing the damage produced by various kinds of attacks -- HyperRogue, with its focus on geometry and one-hit combat, was relatively lacking in this area. Could we still have something similar while still maintaining the focus on geometry?

HyperRogue 13.0 includes an option to play the game with another weapon: a crossbow instead of the classic blade! A classic traditional roguelike strategy is: when attacked by an overwhelming force of multiple enemies, move into a corridor, forcing them to attack one by one; HyperRogue combines this idea with hyperbolic geometry, making this strategy work even in open space, due to the geometry of the world itself. But why use your blade to attack them one by one, when you could also have a penetrating attack that kills the whole straight line of enemies in a single shot? As a counterbalance, the crossbow takes several turns to reload.

Rethinking the concept of a straight line was fundamental for the development of non-Euclidean geometries; in HyperRogue, it becomes even more sophisticated, because this geometric concept needs to be interpreted in terms of grid tactics. Some roguelikes let you fire your ranged attack at any point, while in some, they work a bit like a Queen in chess: ranged attacks can be aimed only cardinally or diagonally. And in some, it depends on the type of ranged attack used. So, the crossbow could actually be a few different weapons. A crossbow which shoots only in "bull lines" is less universal than one that can shoot along any tile-based approximation of a hyperbolic straight line, but it takes less time to reload. There is also a third option, but we will just let you see for yourself.

New modes, geometries, and land structures

Of course, while the character in HyperRogue does not change that much, neither by player's customization nor by gaining in-world experience, HyperRogue focuses on changing the world itself, or the rules of the game. There is not much new in terms of whole new modes -- unless we count new options for the real-time multiplayer mode of HyperRogue, such as PvP or split screen or using dual focus projections -- but one of the things that can be changed is the geometry of the world... or, at least, the tiling.



Probably the most popular mathematical discovery of 2023 was the discovery of hat and Spectre tiles, which can tile the whole Euclidean plane by themselves, but only in non-periodic ways. Soon after this discovery, this tiling became available in HyperRogue.
While the rules of HyperRogue are specially designed for hyperbolic geometry, you can e.g. play the Minefield land in the Hat/Spectre tiling, to get a more original variation on Minesweeper. There are more options to customize the geometry of the world -- for example, the format to specify arbitrary periodic or some horocycle-based 2D tilings has been extended, three-dimensional geometries no longer include only regular hyperbolic and spherical honeycombs but their cells can be subdivided, and there is an option to play only on a finite portion of an infinite geometry. These are likely less balanced, but still cool for experimentation or visualization.

If you do not want to change the geometry of the world, you can still change how it is structured... New options shown in the images above replace the usual HyperRogue land structure (lands separated mostly by hyperbolic straight lines) with alternative ones. In one, every land is bounded by a horocycle (a shape existing only in non-Euclidean geometry that looks a bit like a cirle but is actually infinite)...


In another, the hyperbolic plane is subdivided into lands like in a Voronoi tessellation -- some points are chosen as centers, every tile gets assigned to a land depending on which center is closest to it -- but where the centers are very rare... so rare that they are infinitely away.

Visualization





HyperRogue is not only about great roguelike gameplay, but also about non-Euclidean visualization! Since 2019, we could play in Thurston geometries; however, roguelikes were designed to be played in 2D, and most people find them less fun when you can move in three dimensions. Also since 2019 we could play the usual 2D game of HyperRogue, but view it in full 3D. However, this 3D view was restricted to use the 3D version of that 2D geometry: hyperbolic plane in three-dimensional hyperbolic space, sphere in three-dimensional spherical space, etc. Now, the HyperRogue engine features a large list of embeddings. Unfortunately, for the standard "hyperbolic soccerball tiling" that HyperRogue plays best in, only 3-dimensional hyperbolic space, and the "product space" where the third dimension is added in the Euclidean way, works. However, a sphere can be embedded in 3D Euclidean and hyperbolic geometry, and for the Euclidean plane, especially when wrapped in flat torus, there are lots of options -- including all Thurston geometries, and more! These are explored in this video.



Another new thing is an option to create a world with portals between different geometries; we have shown this in this video with over 1M views, and the HyperRogue engine can be used to create spaces likes this, by placing bricks in different geometries like in Minecraft, connecting them with portals, and exploring them in VR. There is no real gameplay in these worlds, but hopefully we inspire other game developers to try new stuff!

Have fun!

On top of that, there was of course a large number of minor bugfixes and improvements. The Android version is not updated yet, but hopefully should be updated soon too.

To get updates on HyperRogue and our other projects faster, join the HyperRogue discord server or other discussion places, or follow us on Mathstodon or X/Twitter or YouTube. Also wishlist RogueViz Collection on Steam for a collection of smaller non-Euclidean games. Have fun, and good luck!

Thursday, 3 June 2021

HyperRogue 12.0: Dice, Curses, and VR

Quite a long time since the last update! Version 12.0, released on Steam and itch.io, fixes this. It includes two new lands, VR support, and has many other feature and improvements!


Is HyperRogue the only game where tessellations of non-Euclidean spaces play a major role? Well, no -- while the wonders of hyperbolic tessellations are rarely used, spherical tessellations can be found in any game using dice! When you roll a die and see how the numbers change, interesting things happen as a result of the difference in the geometries of the die and the surface. Many HyperRogue players are dice collectors. Why not have both?

Meet the sentient dice in the Dice Reserve! They like to be in the position where the highest number is on top, but some bad guys rolled some of them into other positions. Will you help them?

Dice Reserve can be found when you have at least 90 (150 in Orb Strategy Mode) treasure.


Every land in HyperRogue comes with a new Orb -- a sphere of beneficial magical power. The Cursed Canyon is a land full of Curses. Curses are similar to Orbs, but their powers are mostly negative. You may get weaker, slower, powerless, or afraid of water. You get cursed by moving over curses, or when attacked by a Canyon Hag. You are also pursued by the Shadow, already known from the Graveyard. Will you be able to survive and profit despite all the debuffs and nasty enemies?

Cursed Canyon can be found when you have at least 36 (90 in Orb Strategy Mode) Elixirs of Life, Pirate Treasures, Chrysoberyls, Tiger's Eyes, or Powerstones.


When HyperRogue was first released, it had only the traditional-style roguelike "graphics": # for walls, letters for monsters, dots for empty spaces. These visuals were truly amazing: easy to read, and let your imagination run wild, better than any graphics. But art is needed to, to feed the imagination. How would a non-Euclidean space really look? HyperRogue took a rather surprising path, starting with vector-based 2D graphics, then 3D effects, experiments with full 3D geometries, ultimately becoming a rather universal engine for non-Euclidean visualization.

Now, the RogueViz engine supports Virtual Reality (SteamVR)! This brings a new twist to HyperRogue, as well as the non-Euclidean falling block game Bringris and the RogueViz demos. Turn HyperRogue's FPP mode into the immersive experience. There are many interesting choices when designing non-Euclidean VR visualizations. The geometry works differently in a non-Euclidean space, so some obvious things in Euclidean visualizations (including tons of so-called "non-Euclidean" videos which have nothing to do with non-Euclidean geometry) are, well, no longer obvious. Should the relative headset movements be translated exactly to the virtual space? If so, if you move to another place in VR and return to where you started, you are probably NOT in the place where you started in the real world. And vice versa. This is because the geometry works differently! How should the binocular vision work? Should we just render the inner view from two points? If so, distances are not perceived correctly, and in the recently introduced even weirder geometries this does not even work, so we might want to use other methods. The engine lets you configure various details, such as the above, the length of the absolute unit (i.e. the scale of the non-Euclidean space), and so on. Hyperbolic crochets are much better in real life than any images or videos can show -- but you can get some of the fun by playing HyperRogue on the Hypersian Rug in VR. The 3D models are still not great (roguelike players do not need this stuff), but if you want to play FPP mode with monsters shown as letters, or view the classic Poincaré disk or any other 2D or 3D model in VR, this works too, of course!

There is more!

There have been also lots of minor bugfixes and improvements. For people who want to fully explore the world of HyperRogue but are less familiar with roguelikes, there is a "casual" mode which lets you save the game after collecting an Orb of Safety and load it many times. For even less challenge, there is the cheat mode and puzzle/exploration mode as usual. Get HyperRogue version 12.0 from Steam, itch.io, or play the online demo, or [to be updated soon] Android or iOS versions. As usual, the Steam version is updated more frequently, includes achievements and leaderboards, and extra modes such as the Strange Challenge. Mobile versions should be updated soon. Join the HyperRogue Discord, follow ZenoRogue on Twitter, and have fun!

Friday, 13 September 2019

HyperRogue 11.2: Thurston geometries (free update!)


The latest version of HyperRogue let us play three-dimensional non-Euclidean worlds. The animation above shows the three-dimensional hyperbolic geometry ℍ³; it feels as if it was expanding in all directions as you move through it; the video above feels a bit like zooming. The video above is a construction based on Penrose's kite-and-dart tiling. This tiling of the plane is constructed recursively — we start with a single kite or dart, and then, in each iteration, we replace this shape with two or three new, smaller shapes. In ℍ³, we can put these two or three shapes are on the next level — since the space is expanding, this allows them to be of the same size as the original one!

However, ℍ³ is very similar to the hyperbolic plane ℍ² — it just has more dimensions, basically. If you know how ℍ² and the Euclidean 3-dimensional space 𝔼³ work, there is not much new here. In two dimensions, we have just three geometries: hyperbolic ℍ², Euclidean 𝔼², and spherical 𝕊². (Note that most games claiming to use "non-Euclidean geometry" use the term incorrectly: they do weird things to topology or physics or whatever, but the geometry, which is about the sum of angles of a triangle, Pythagorean theorem, etc., is still Euclidean.) Can we do something more interesting in three dimensions?


We can! In the video above we are travelling through the Solv geometry. While ℍ³ expanded in all directions, Solv expands in one direction, but contracts in the other one. You know this puzzle about a bear who went 1 km to the south, 1 km to the west, 1 km to the north, and was back where it started? Well, this one is more complicated. If you go 1 step upwards, 1 step north, and 1 step downwards, you are now 2 steps to the north. If you go 1 step downwards, 1 step east, 1 step upwards, you are now 2 steps to the east. Sounds easy enough? Well, let's think how we could reach a point 1024 N 1024 E. We could just make 1024√2 steps NE, but there is a much quicker way: 10 U 1 N 10 D (which takes us 1024 steps N) 10 D 1 E 10 U (which takes us 1024 steps E). This route is more complicated, but it is shorter, and as we know, light always takes the shortest route, so it looks quite complex from the outside. In many places in the video above, you can see shapes that look like donuts — they are actually infinite planes of constant z coordinate (they visually wrap into donuts for the following reason: whether you want to see something far north or something far south, you should look roughly upwards, and whether you want to see something far east or far west, you should look roughly downwards). This sounds like a space that would make Cthulhu himself confused... in 2002, Jeff Weeks wrote "This [Solv geometry] is the real weird [...] I don’t know any good intrinsic way to understand it." (though we surely understand it better now). Hyperbolic space is like an exponentially growing tree — in a very curved hyperbolic space, a sphere of radius of 20 meters will have the same area as Earth, and a sphere of radius of 100 meters will be already larger than the observable Universe. If people lived on this hyperbolic Earth and wanted to travel quickly, they all would have to go through the center... and there would be not enough space for all of them. Solv geometry is also growing exponentially, but in a more interesting, non-tree-like way. Up to our knowledge, HyperRogue is one of the first real-time visualizations of Solv (the awesome SolvView by MagmaMcFry was made a few days earlier), so you can be one of the first explorers of this amazing space! The tree-like nature of hyperbolic space has recently found applications in data science — many kinds of data can be faithfully represented in ℍ²; maybe Solv could eventually find some applications too?

ℍ³ and Solv are two of the famous eight geometries which appear in the Thurston's geometrization conjecture (proven in 2003 by Grigori Perelman, who famously refused the 1000000$ dollar prize for this). These geometries are all homogeneous manifolds (which means they look the same in every point); ℍ³ is isotropic (it looks the same in every direction) but Solv is not. What are the others?


Probably the simplest non-isotropic geometry is ℍ²×𝔼 — hyperbolic planes stacked in an Euclidean way. This space expands in one direction, but stays the same in the other one. This can be seen in the video above — faraway walls are very thin, because the space expanded horizontally faster than vertically.


We also have 𝕊²×𝔼 — spheres stacked in Euclidean way. This is the geometry of the surface of a spherinder (like a cylinder, but based on a sphere instead of a circle). In this geometry, a small brick, when watched from a specific location, will look like a huge ring around you... more precisely, not one ring, but a series of concentric rings.


If you are familiar with 3D graphics, you may have seen that rotations are often represented as quaternions. These are unit quaternions, i.e., points [x,y,z,w] such that x²+y²+z²+w²=1. The set of unit quaternions is a three-dimensional sphere 𝕊³ (surface of the four-dimensional ball). In the video above, we are flying through this space of rotations: rotation matching the current camera position is shown in the corner, and beams in the rotation space correspond to bumps on the sphere. The opposite points of the sphere are identified, as they represent the same rotation. (See here for an interactive version of the video above.)


Quaternions are sometimes criticized, and HyperRogue does not use them either (outside of the video above) — rotations of the hyperbolic plane are not represented by quaternions (they are represented by split-quaternions, but HyperRogue generally prefers matrix representations). Anyway, the space of rotations of the hyperbolic plane, PSL(2,ℝ), is an example of yet another (non-isotropic) Thurston geometry (actually, the Thurston geometry itself is the universal cover of it). Remember how the screen in HyperRogue is usally rotated after we return to the same space? In particular, if we make a tiny loop on a small triangle, we end up rotated by the angle 360°/42 — this equals the difference between the sum of angles of this triangle (60° + 60° + 360°/7) and the Euclidean 180°. This means that, in PSL(2,ℝ), when we make a loop via "hyperbolic" translations, we end up a bit higher than we were originally. This is the reason the bricks in the space above have small Penrose staircases on their top and bottom faces. (Likewise, on a sphere, the sum of angles of a similar triangle is 60° + 60° + 72°, and every beam in the video above was subdivided into 360°/12° = 30 bricks.) (See also this video for the space of rotations rendered in a similar way to the previous video.)


Euclidean geometry is less confusing than hyperbolic or spherical geometry — the sum of angles of a triangle is always 180 degrees, so the space of rotations is rather boring. However, we can still achieve the loop effect. In Nil geometry, when we walk one step to the north, one step to the west, one step to the south, one step to the east, we end up one step above where we started. In general, when we go in the north-west-south-east direction and make a loop which would make us return to the starting point in the Euclidean plane, the Nil counterpart of this loop makes us end up directly above or below the starting point, with the distance proportional to the area of the loop. Interestingly, as can be seen from the area property, while the hyperbolic space grows exponentially with the radius, and 𝔼³ grows like the cube of the radius, Nil grows like the fourth power.

All the geometries above are available in HyperRogue 11.2 (special modes -> experiment with geometry -> dimensions:3). The last Thurston geometry is of course the Euclidean geometry 𝔼³ — nothing changed there (while ℍ³ and 𝕊³ got the new tessellations shown above in 11.2), but you can see it e.g. here. See Geometries in HyperRogue for more details and references. Thanks to MagmaMcFry for SolvView and some discussions regarding Solv and other Thurston geometries.

Since this release does not introduce new gameplay and is rather for scientific/educational purposes, and we believe that ideally science/education should be freely available, it is released for free (in the GPL sense). (We get some funding from scientific sources anyway.) Features from 11.0 and 11.1 are also included, but as usual, the paid Steam version includes social and competitive features such as achievements, online leaderboards in the main game and the special game modes, the Strange Challenge, and more frequent updates. According to the results of the poll on HyperRogue discord, our fans are the most interested in (1) making it easier to use HyperRogue's unique non-Euclidean geometry engine to create mods and variants, (2, roughly ex aequo) making HyperRogue's unique roguelike gameplay even better (new lands with unique mechanics), (3) new game modes, (4) new geometries and visualizations. (True to the roguelike spirit, almost noone cared about graphics and production value.) Thus, the next update is planned to focus on (1) and will also be free, and the next one is planned to focus on (2) — there are lots of new gameplay ideas to explore, both in ℍ² and in Solv (and in other geometries). Have fun!

Tuesday, 18 June 2019

HyperRogue version 11.1 is released!

While this release does not change the gameplay in the main mode, it lets you experiment with new display modes, new geometries, and new game modes.

HyperRogue takes place in a world where things such as rectangles and parallel lines do not exist. Lines will never run together forever "in parallel", the space between them will spawn new directions by itself, making our lines diverge. While the world of HyperRogue is presented as a flat thing, it is actually larger than anything Euclidean, in any number of dimensions. But what if we take it into three hyperbolic dimensions?



While HyperRogue had basic 3D features for some time, they were very limited -- the 3D models were designed only for the top-down view, and also the trick used to display a 3D world using a ℍ² engine could only work with top-down angles.

This release introduces a full non-Euclidean 3D engine. A 3D engine in a roguelike may sound a bit weird -- roguelikes were always more about great, innovative gameplay, in particular boardgame-like gameplay working better in 2D than in 3D; for this reason, roguelike developers are typically not interested in making 3D models and programming 3D engines, instead focusing on the player's imagination, clarity, and making the game run quickly. However, imagination needs some fuel... and it is hard to imagine what the non-Euclidean world of HyperRogue would look like. Many things about our space which are obvious to us work completely differently in a hyperbolic world. HyperRogue players have been wondering for a long time what the "hyperbolic sun" of Vineyard is -- as the Sun we know does not seem to work in hyperbolic geometry at all? Well, now there is an official interpretation. In our world, the stars can be seen from half the planet, and can be used for navigation; that could not work in the world of HyperRogue, where the hyperbolic stars are seen only from a small part of the world. Climbing a hill lets us see a bigger part of the world, while in the world of HyperRogue, a small hill in the Red Rock Valley or the Brown Island will evoke a huge fear of heights, as you look below and see how tiny everything is. The perspective itself works very differently too, whith things in distance disappearing or appearing much more quickly than we are used to, as if the ground was curving upwards (which is actually the case -- the "eye level" is a "flat" hyperbolic plane, which means that the ground level, being a fixed distance below the "eye level", is curved). The Great Walls in the video look just a bit larger than the normal walls -- in fact they are infinitely high, but the curvature of the space makes them look short.

Crossroads in the elliptic plane (as a subspace of the 3D elliptic space)


First person perspective usually does not work very well in roguelikes -- they are heavily based on positioning, and fighting monsters both in front of you and behind you. Given that HyperRogue focuses on geometry, positioning is even more important here. Luckily, the FPP mode features an ASCII mini-map, like in classic roguelikes. But if you would rather to play a hyperbolic first-person shooter instead of a hyperbolic roguelike, you can do this too -- just enable both the first-person perspective and 'shmup mode' at once!

Enable the first person perspective mode from menu -> settings -> 3D settings -> configure FPP.

Icy Land in the {4,3,5} honeycomb


The last section was about playing the standard HyperRogue map using a 3D display. If you are willing to go deeper with your experiments with geometry, there is more.

You can also play a game in a hyperbolic world when you can move freely in three dimensions. These three-dimensional geometries use the same rules as the classic, two-dimensional HyperRogue, except that you are playing in a three-dimensional tessellation (aka honeycomb) rather than a two-dimensional one. Thus, there is no gravity in the sense we are used to, except the HyperRogue lands which feature gravity. Note that the standard HyperRogue has features such as water and heights -- 3D geometries still have them, apparently taking use of the fourth dimension. If you count time, the Minkowski dimension used to model hyperbolic geometry, or you assume that the world is curved in some extra dimensions (more than one -- ℍ³ does not embed in ℝ⁴ even locally), you get more dimensions. Anyway, this does not matter -- even the plain old hyperbolic plane used in HyperRogue by default is more complex and rich than the Euclidean space in any number of dimensions.

Temple of Cthulhu in the "rectangles on horospheres" geometry


The standard roguelike gameplay tends to be rather annoying with extra dimensions -- it seems that humans are not actually that great at working in three dimensions, except the situations that we know from real life, which are much simpler than full-freedom 3D allows. However, all the extra features also work in 3D (if they make sense). You can see the world of HyperRogue as viewed from the fourth dimension (Poincaré ball model) or experiment with the 3D variants of other available projections. You can play the shmup mode, for a six-degree-of-freedom experience. You can enable the graphics editor for a simple hyperbolic 3D modeller, or the map editor to create hyperbolic buildings, as it if was a hyperbolic Minecraft. You do not get to view your buildings from a large distance, but it should be understandable -- in the world of HyperRogue, a ball of radius of 20 meters would have greater area than our Earth! It is hard to imagine a hyperbolic engine which would make this work. (Note: the sight range in the animations in this post is a bit larger than what is possible in real time with the current HyperRogue engine on current Euclidean computers.)

Or you can just explore the non-Euclidean architecture. While mathematical visualizations of regular hyperbolic honeycombs existed, they typically show only the edges of the cells, causing our Euclidean brains to interpret them incorrectly; in HyperRogue, they are filled with actual architecture, helping your brain to notice that something is different. HyperRogue also lets you play on honeycombs based on horospheres. It is not clear how well H. P. Lovecraft did understand non-Euclidean geometry when he wrote "surfaces too great to belong to any thing right or proper for this earth" or "an angle of masonry which shouldn’t have been there; an angle which was acute, but behaved as if it were obtuse", but these passages describe the experiences of exploring the {4,3,5} honeycomb (in the animation above it may appear that some walls are flat squares -- in fact, they are all "cubes", but they have acute angles, so one may not see the other wall where it would be expected), Temple of Cthulhu or Emerald Mine quite well.

Enable this from menu -> special modes -> experiment with geometry -> dimensions.

Space Rocks in Macbeath Surface


OK, let's go back to 2D now. Or stay in 3D, whatever you prefer. The Space Rocks is a new bonus land which lacks originality, and is exclusive for shmup mode in bounded geometries. There was a 1979 game with very similar gameplay and synonymous name, where the space was a manifold without boundary -- after you went through the right edge of the screen, you appeared on the left edge. (Some gamers call such warped spaces "non-Euclidean geometry" but this is not a correct mathematical term, the correct term is manifold.) Not only that, many people have experimented with the classic formula, putting the same gameplay in other manifolds. Not all the manifolds and projections available in HyperRogue have been used though, so you can still have some new fun shooting at rocks in hyperbolic manifolds. You can also run the Space Rocks in the racing mode, for some non-Euclidean friction-less racing. Speaking of classic games, the Minefield got an upgrade -- in the normal HyperRogue world, the original rules of Minesweeper have been changed heavily to make it fit in a game and be playable in an exponentially infinite world, but if you play it in a bounded geometry, you get to play a game following the rules of the classic Minesweeper more faithfully.

To enable this: enable the shmup mode (in special modes), then enable "experiment with geometry" (also in special modes), choose one of the bounded geometries (Macbeath Surface and chamfered Klein Quartic in the quotient spaces are good choices). Also in "experiment with geometry", choose the Space Rocks land.



Recently, VR developers are experimenting with using impossible spaces to let you explore a large virtual world, while in fact, in the real world, you are in fact only walking through a small room. Again, they often call this "non-Euclidean geometry", but it has nothing to do with the mathematical meaning of the term -- that solution could work only in flat, Euclidean manifolds; in a non-Euclidean VR simulation, since the sum of angles of a triangle is no longer 180 degrees in the virtual world, the two world would quickly lose any synchronization of their orientation.

Anyway, the dual geometry mode is a puzzle game mode which tries to exploit this. You play two games at once, however, one of them takes place in an Euclidean world, and the other one is hyperbolic; and you perform the same modes in both geometries. Imagine that, in the Euclidean world, you are on the corner of an empty 8x8 chessboard and you want to get to the other corner -- if you move in cardinal directions and only towards your goal, you could do that in 3432 ways, but it does not matter which way you take. However, each of these 3432 ways would take you to a different place in the hyperbolic world! For a 30x30 chessboard, that would be quadrillions of locations. And that is only because you walked towards your goal -- in general, a 3x2 chessboard would allow you to get basically anywhere in the exponentially infinite hyperbolic world. This mode could be probably used to design some new Sokoban-style puzzles, and the Map Editor lets you design one yourself, but HyperRogue is a roguelike, so it is more about generating the challenges procedurally.



Each of more than 60 lands in HyperRogue introduces new mechanics. While hyperbolic geometry magically allows all of them to exist in the same level, some players want them to interact even more. The Chaos mode is for these players -- it makes the lands change much more often, so you need to be careful about everything. While the Chaos mode exists for some time, it has just got new submodes. These submodes are even more chaotic -- the patches of each land become smaller; in the "total chaos" mode, suggested on the HyperRogue Discord server, every cell belongs to its own land. Combine with the Orb Strategy mode to get access of inventory of Orbs to use at tough situations, or with any other modes. The possibilities are endless!

Dual geometry mode and chaos mode are available from the special modes menu.



Also there is a new way to discuss HyperRogue -- join us in the HyperRogue Lounge on Discord! Our server is very active, and (contrary to the Steam forums) it does not require a Steam account to access. Have fun! Thanks to Christopher King, Daniel111111222222, ekisacik, KittyTac, rdococ, SpriteGuard, Teal Knight, tehora, and Violet Ugly for their suggestions and bug reports.

Get HyperRogue version 11.1 from Steam and itch.io! See the full changelog on the HyperRogue website. Mobile versions will come later (an option to use the mobile VR goggles to view the 3D worlds in VR is planned).

Friday, 5 January 2018

HyperRogue 10.3: more lands, more geometry!

HyperRogue version 10.3 is released on Steam and itch.io! This big update continues the geometry experiment theme of HyperRogue 10.2, and also includes four new lands (two of which are included in the main game and two of which are for special geometries only).

Some of the Slime Beasts have decided to revolt against the color rules in the Alchemist Lab. They have changed their shape and consistency, declared independence, and established their own Jelly Kingdom. This land is based on simple, but unique mechanics -- Jellies switch between being a wall and being a monster after every treasure you pick.

Once a beautiful city... but now overrun by the mighty Raiders of unknown origin.

Raiders (and Skeletons, who also dwell in the Ruined City) cannot be harmed with mundane weapons, but each of the five colors has its own movement restrictions. Choose a path that gives you an advantage to run away from them! (Hyperbolic geometry will help, of course!)

The Docks have no new mechanics, but they feature an interesting tree-like structure that works in the octagonal geometry, but has no natural counterpart in other geometries. For this reason it does not appear in a standard game of HyperRogue. The picture should explain everything :)

The Snake Nest is another land not in the standard game. It is a version of Red Rock Valley, but where every cell is colored in one of the three colors. The snakes also come in three types -- each of which is restricted to two colors. It is exclusive to geometries where cells can be nicely colored this way. (Visit the Red Rock Valley in the current session, or obtain a highscore of 25+ Red Gems, to unlock this in the land list for the Octagons geometry.)

HyperRogue did not previously include the most common and boring tiling in games -- the square grid. The square grid is included now, and it comes in some more interesting variations, too! After bitruncating, we get a tiling made of octagons and squares, which is definitely less standard: from a large cell in the picture you can move to eight adjacent cells, while you can move only to four adjacent cells from a small cell. You can also play on a Klein bottle now -- that's why you see a mirror image of yourself on the left!

More of artistic than of "gaming" nature, the new texture mode lets you easily draw nice tesselations of the hyperbolic plane (or any other geometry supported by HyperRogue), in a way similar to Paint-like programs. Draw some lines, and it often ends up looking great! This is much easier to use, and in some ways more powerful, than the old vector graphics editor. The screenshot above shows drawing directly on the Hypersian Rug. The obtained picture can then be explored, played on, or saved.

After drawing a tesselation, it is also possible to convert it to another geometry. For example, the picture above is the spherical version of the tesselation from the last picture. Thus, it is possible, for example, to load Circle Limit IV by M. C. Escher, change its base tiling to another hyperbolic tiling, and walk on it, or view the result in the Hypersian Rug mode. This is inspired by the hyperbolic versions of M. C. Escher's tesselations created by Jos Leys.

Speaking of the Hypersian Rug -- this mode has also been extended. Previously, you could view a fragment of a hyperbolic plane embedded into the Euclidean space; now, it works with any geometry on both sides. You can now also explore the model in first person perspective. The animated picture above shows an Euclidean square embedded into a 3-sphere -- although the square is actually flat, it appears to be curved negatively, because the space itself is curved positively! Flying inside a 3-sphere is an interesting experience, as things close to the antipodal point, or things just behind you, will appear as if they were very close to you. See this video for more details.

Thanks to Fulgur14, Patashu, tehora, and tricosahedron for their ideas for new lands, themes, and features. Android and iOS versions should be updated soon. This version also includes many minor bugfixes and interface improvements; the full changelog is on Steam forums or the website.

Follow the newly created HyperRogue page on Facebook and @ZenoRogue on Twitter. Get HyperRogue 10.3 on Steam and itch.io, and have fun!

Thursday, 1 December 2016

HyperRogue 9.2: 3D hyperbolic animations!

HyperRogue 9.2 is released on Steam and itch.io!


This is again a release with no new lands -- however, it includes several upgrades aimed at making HyperRogue look more like a modern game.
  • Three dimensional view. How would the world of HyperRogue look if viewed from above? You can witness this yourself now! See legs of monsters, when looking from an angle, sides of walls, and chasms. For hyperbolic geometry nerds: this view is roughly accurate if we assume that the surface is actually an equidistant, not a plane. ("Roughly" because formulas are not yet perfectly adjusted for stacking items (e.g. Dragon riding or climbing Red Rock), and sizes of objects are arbitrary.) The 3D view is the default setting now, if you have saved your configuration in an older version, you have to set the "wall display mode" and "monster display mode" to one of the 3D modes.
  • Movement animations. Monster movement is animated now. You can watch these dogs run! Also particle effects when things are destroyed.
  • Sound effects. When a dangerous enemy such as an Eagle comes, you can hear it now! There are also sound effects when you fight, colelct items, and in several other situations. Some sound effects are still to be recorded :)
As usual, the full changelog and further minor updates are reported on the Steam forum. Mobile versions will be updated later. Enough talking, let's play. Have fun!

Friday, 6 May 2016

Brogue 1.7.4, ported to NotEye


This is a new port of Brogue to NotEye. It includes tiles by Oryx and audio by LazyCat. Also thanks to Lanhash for asking me to finally do this, and for testing!

This is much better than the old port from 2012. Now, Brogue communicates with NotEye directly, without using Libtcod. This approach is much more convenient (no longer two windows) and much more robust (NotEye can get information about the placement of windows directly -- previously it could not, which caused some glitches).

Get it here, and have fun playing!

PS: I would love to also create a NotEye port of DCSS, using the DCSS tiles. Currently my preferred way of playing DCSS is to play the ASCII version of DCSS via NotEye. But somehow I found it hard to understand how tiles are drawn in DCSS -- if you have any ideas about how this could be done, please contact me :)

Wednesday, 23 December 2015

HyperRogue 8.1: happy holidays!

HyperRogue 8.1 is released on Steam!

The first new land is the Clearing in the Overgrown Woods. Basically, one infinite Mutant Ivy. And some small annoying foxes.

The Haunted Woods is a subzone of the Graveyard. A dark forest filled with ghosts and graves. But there is also treasure hidden deep within... But don't let greed make you stray from your path, as you can get lost!

This land is based on an idea of wonderfullizardofoz, although there are some small differences.

Someone has put air fans in these plains, causing strong winds everywhere. You think that the purpose is to harness the magical power of Air Elementals, but you are not sure.

This land is inspired by an idea of snowyowl0, although again, there are some differences (winds blow according to a pattern).


Also, there have been some improvements to the Shmup mode. Separate scoreboards have been added for coop shmup, pure tactics mode (single and two-player shmup). Since four players are supported now, all player characters can now be customized separately, and some new characters have been added (cat, dog, and Prince/Princess if you have completed the quest -- these new characters work in the normal mode too). You can assign a key for targetting special orb powers (previously you could only target with the mouse, which was inconvenient in multiplayer).

Other changes include new shapes for Orbs (so that it is easier to tell them apart), and four new Yendor challenges. Have fun playing, and happy holidays!

More changes:
  • more shmup bugfixes: all players get boats in the tactical Whirlpool; missiles destroyed with Orb of Flash no longer appear in your kill list; Hedgehog rotation and missiles are now affected by the Orb of Speed in the shmup mode; "pan up/pan down" commands work as expected
  • Red/Dark Trolls no longer turn into rocks when killed in an unstable land
  • fixed the description of Palace (did not choose prince/princess correctly)
  • in the kill list, different messages are displayed when hovering over friends, constructs, and monster parts
  • fixed yet another inconsistency in the sealing of Land of Power
  • a smaller font is used for the list of items collected; more space for items in portrait mode
  • fixed unlocking information in the description for Temple etc.
  • Graveyard did become (very slightly) harder when monsters were killed -- this effect is removed
  • slime no longer spills against wind
  • when entering the Elemental Planes, you can enter planes based on the types of elementals you have killed
  • monsters in the Ivory Tower no longer can stay in midair when they can't reach you
  • added the Icy Lands as a prerequisite for Cocytus -- thus, each basic land now has an advanced version
As usual, there will be probably some patches -- they will be announced in the Steam thread first.

Monday, 26 October 2015

a paper model of the world of HyperRogue

After looking at some hyperbolic footballs, we have decided to make a paper model of a part of the world of HyperRogue! Such a model should give us some insight about how to imagine this world.

 
This is the HyperRogue scene that the model is based on. The model represents all the cells within radius 3 from the player character, which is 50 cells (35 hexagons and 15 heptagons). It appears curved because of the negative curvature of the hyperbolic plane -- the perimeter of a circle grows exponentially with its radius, not linearly as is common in the Euclidean world, so the edge has to twist a lot to fit everything, and the larger the model, the more curved it becomes. I was afraid that a larger region could be harder to fit in Euclidean space, or require too much work to complete, but probably one or two layers more would still be fine.

Based on the scene, HyperRogue rendered the net above. Print the net on four pages, cut out all the shapes, and glue the white triangles together — letters say which white triangle should be glued to which one -- actually, we have been using a small stapler for this, not glue. If I recall correctly, 85 pairs of white triangles had to be stapled.

This is how the model looks in motion.

If you would like to create your own model of your favorite land in HyperRogue, the next version of HyperRogue is going to create a net for you, based on the current scene around the player character! At the moment, HyperRogue is only programmed to create a net for 50 cells around the player on a heptagon -- of course, as we already know, the 50 cell pattern tiles the hyperbolic plane, so maybe one could create larger models simply by gluing the fifty-cell models together?

Have fun!

UPDATE: HyperRogue 8.0 has this feature -- please post a comment on the Steam forum, YouTube, or this blog if you make your own models! :)

Monday, 20 July 2015

HyperRogue 7.1: mines and whirlpools

HyperRogue 7.1 is released on Steam!

In this version, after collecting 30 $$$ you can go to the beach and, if you can survive the attacks from Albatrosses and escape from the tides, collect some Ambers. The Ocean is the first land in HyperRogue which features equidistant curves prominently.

You can also take one of the boats, and go into the Ocean. From there, you can reach other coasts, access Caribbean, the land of Pirates (Caribbean was already there in 7.0, but now, it is only accessible via the Ocean), or the infinite Whirlpool, where your boat is only allowed to go with the current, and you have to defend from Sharks and Pirates, and capture treasures from other boats caught into the whirlpool.

Another place where you can go after collecting 30 $$$ is the Minefield, based on a well known game. Stepping on a mine is usually game over, but you know the number of mines next to you, so hopefully you will know where not to step!

The ideas for these lands were not mine -- Ocean and Whirlpool are wonderfullizardofoz's ideas, and the Minefield is Piotr Migdał's idea. Please send me ideas for new lands, and they might be added to HyperRogue at some point! (Although I already have some ideas...)

Version 7.1 also has some other features. Press 'v' or click the 'menu' button to see the new main menu, which conveniently lists all the features of HyperRogue. Also, a FAQ (Frequently Asked Questions) written by Fulgur14 is now available on the website. These two features should make it easier to fully enjoy HyperRogue. Also, the shmup mode correctly says that the number of knifes is counted (not the number of turns), fires are burning off and heat dissipates even offscreen (previously, many of the speed runs abused the fact that heat did not dissipate offscreen), Fire Cultists can attack more terrain types, another message is used for Sandworm explosions when you see no spice created, and a bug which caused the Icy Land to become too hot in the shmup mode has been fixed.

Also, the German translation should be available soon. Have fun!

By the way, I have recently recorded a new trailer for Hydra Slayer. Please vote for Hydra Slayer on Greenlight, if you have not done this yet! Versions 7.1a/b fixed: - "(v) menu" instead of "(v) config" - blow into water/fire/mines - the PC could just stand in place during high tide and not drown - fixed the "escaped Whirlpool" achievement - fixed the Restart key - in the very unlikely scenario when the Key is generated in the Whirlpool, it is protected by a Pirate party with Orbs of Water, so it hopefully does not run away and you can escape the Whirlpool Version 7.1c fixes: - you can no longer use Orb of Air against sharks, seeps, and other restricted monsters. - but you can use Orb of Air to blow monsters into chasms. - made the Ocean less bright in the plain mode (still brighter than LoEM), and the Minefield slightly brighter (to make it more different from the Land of Mirrors). Also, made the fire graphically calmer in the Land of Power. - Orb of Aether now protects you from mine explosions, but also makes you unable to detect mines. - for thematic reasons, R'Lyeh is now more likely to be adjacent to Ocean (and less likely elsewhere). - Fixed the Hyperstone Quest message to include new lands. - Two new achievements added ("Black Mark" and "Nasty Pet") - Fixed a bug with Space/Safety (the game was trying to calculate the cost after Safety acted -- this is fixed, hopefully this fixes the crash too) - Fixed a bug with Crossroads II/Ocean border - mine marks now appear above the PC/monsters. Version 7.1d fixes: - bug with Crossroads II generation which also caused the game to stop generating lands fixes. - saving the new treasures/kills. - Euclidean mode supports the new land, as well as the gameboard modes (pick the gameboard mode you want, and then pick Euclidean mode, to activate an Euclidean gameboard). Version 7.1e fixes: - collecting OoY works. Version 7.1f fixes: - Tame Bomberbirds now fly over chasms. - Forgetting old kills during saving, this is fixed.

Thursday, 2 October 2014

The Indie Ocean's Top 10 Roguelikes


The Indie Ocean has posted his top 10 roguelikes ever (so far) on YouTube. The list features my HyperRogue and Vapors of Insanity, as well as NotEye (as used by PRIME). Also several good, original, and less known roguelikes are covered, such as The Slimy Lichmummy (which I have tried already) or TraumaRL (which I still have to try). Watching recommended. Have fun!

Friday, 11 October 2013

HyperRogue 4.0! (music and other features)



HyperRogue version 4.0 is hereby released!

This version includes music, by Neon Corridor. You can now listen to a canon which plays in reverse in the Land of Mirrors, a mysterious tune in R'Lyeh which always gets lower and lower, and many more great tunes on your way to the Orbs of Yendor! Also some things have been improved (Crossroads treasure added, Ivies improved...), and some exploits have been removed (thanks to Adam Borowski for noticing these).

The full changelog is below:
  • music support added
  • Ivies have been greatly improved: they shrink if an active branch sees no good move (except at the root), they are now active as long as there is at least one segment in view, and they no longer go to the Alchemist Lab (as this caused bugs). Also, if you cut an active Ivy just after root or another branching point, it immediately regrows and spins (previously it regrew without spinning at the root, and caused bugs at other branching points)
  • Worms are now active as long as there is at least one segment in view, they now destroy walls and thumpers around them when they explode (so if you find a good place for killing worms, it is hard to use it more than once), and worms and tentacles can go to other lands now, except Motion and Alchemist (but worms produce spice on explosion only in the Desert)
  • After getting 10 Demon Daisies, Crossroads get a unique treasure to be found (Hyperstones), so the player has some point to spend time there (should be fun, since you are likely to meet almost all monsters and orbs on the Crossroads)
  • the cheat mode has been extended (press F2 F4 to start cheating, then press shift+letter for various effects)
  • Cocytus works now (but is still available only via cheating or by getting an insane score)
  • if you collect a lot of items in a single land, this increases the spawning rate of wandering monsters in all lands, so you are no longer relatively safe by walking at the edge
  • when used on a location containing both an item and a monster, context help now shows information about the monster
  • added some flavor messages, and replaced "ESC to quit" with "ESC for menu/quest", to make it more clear to the players that there is more about the game than hunting for treasure
  • pressing F1 or right clicking while looking at the context help now displays the general help screen
  • Fixed the Crossroads description (there are no longer Crossroad Rangers and big holes in the ground)
  • improved the general help screen
  • improved the handling of non-qwerty keyboards (movement is done according to the QWERTY layout as previously, but other menus take the layout into account correctly)
  • Alchemist Lab: the description is more detailed now, killing lots of slimes no longer degenerates the Alchemist's Lab into pure treasure, slime beasts now destroy items around them when killed, and dead orbs no longer cause the slime to spill
  • Living Caves: Foreign monsters and objects affect the Living Caves now, and cave trolls now destroy items around them when killed
  • Graveyard: killing graveyard monsters slowly increases the initial monster rate in the graveyard (so grinding for Dead Orbs is harder), and necromancers can go outside the Graveyard now
  • renamed Icy Lands and Living Caves to singular (for better grammar)
Have fun!

HyperRogue homepage
download source+Windows binary+music (44 MB)

Sunday, 20 January 2013

NotEye 6.5 + Hydra Slayer 14.5

Game Hunter has made several more videos about Hydra Slayer and NotEye. Go watch them!



Of course, some bugs and feature requests were discovered on the way...

Necklace of the Eye 6.5:
  • Some fixes from 6.4 did not actually make it to the release (which actually made NotEye 6.4 unusable with DoomRL and some other games)
  • NotEye now explains what is OpenGL good and bad for
And, on the more technical side:
  • File generic.noe is no longer such a chaotic file, with functions related to many different features of NotEye (view modes, sounds, reading the map, running the game, keyboard input, and fonts). It has been split into several files . Also some stuff has been rearranged.
  • Added some comments in the common/*.noe files.
  • Some sound-related functions added (playsoundloop, playmusicloop, mixsetdistance, mixsetpanning, mixunregisteralleffects) (not yet used, but requested for ADOM)
  • Added 'getobjectinfo' to get info about an object, as a Lua table (for example, using getobjectinfo on a simple image tile will currently return all the values used to create the tile (image, origin, size, transparency key) and the number of empty rows at the bottom)
Hydra Slayer 14.5 (thanks again to Game Hunter for his videos, and Ben Franzluebbers for reporting several bugs):
  • Fixed a bug which sometimes caused hangups on entering the new level in the 4-directional mode
  • invisible walls now look like dark walls, and unknown cells are simply black now
  • shadow hydras are now remembered after you save the game
  • pick axes have been upgraded slightly: they are now doublers (like bows and spears), not stunners, are more powerful (e.g. they work instantly at size 5), have new names and growth messages
  • Mushroom staff now remembers mushroom displacement stats (and is displayed in the weapon history if used only for that)
  • Titans now can press Shift+G to quickly move weapons from the ground to their extended inventory
  • Potion of Knowledge now displays the weapon '0' correctly
  • Fixed a bug which sometimes caused crashes when using knowledge/growth on vampires
  • Updated the onsite feature list to the new theme
Download here, and have fun!

Saturday, 9 June 2012

HyperRogue III video

For those who have not played HyperRogue III yet, I have made a video. It shows all the lands available, but it does not try to win the game (the final message shows what remains... this was intentional as it requires some spoily tactics, I want players to discover them for themselves instead of watching the video). I wanted the video to be relatively short, so it is also a speed run of sort. Moving that fast is risky...

Sunday, 1 April 2012

HyperRogue II in news and videos

Recently there have been some news and videos featuring HyperRogue. It has been mentioned on the Roguelike Radio in its 7DRL 2012 episode. I think it was Jeff Lait who has noticed that, due to the special structure of the map, monsters chasing you will usually form a line. Indeed, this is a result of the hyperbolic nature of the world: you cannot have several monsters moving on parallel lines, unless they are on the same line. And I thought that it was just a result of simplifications in my pathfinding algorithm. ;) A nice observation, thanks!

Geek New Wave has a review of HyperRogue II (as well as of the original Hyperbolic Rogue), and also an interview with me. Have fun reading it :)

There are also some guys who post videos featuring recent 7DRLs. Game Hunter is blind running all of them, and here is how he sees HyperRogue:
I see that he has missed some important things in his blind run. You can mouse over the map, which explains what is what. This is most useful while having mirror images, as you can also see their cursors, which shows you where they would go. He did not visit the Desert, only touched the Living Caves, and ignored the Jungle (I think he confused it with Living Caves and thought he had already been there). Quite unfortunate, I think these areas are more fun than Alchemists Lab and the Land of Mirrors that he visited. Of course he did not see most of the magical orbs, but it is understandable in such a short try.

Also, dewaldo is posting videos of 7DRLs after becoming more familiar with them:
This video explains more about the game. I think it is a bit funny how he thought that he cannot do any move, while he actually had one (he could press '.' to wait for the slime beasts to move next to him). The game always informs you when you can no longer move.

Thanks to all the authors, and to you for reading this. :)

Sunday, 15 January 2012

Hydra Slayer + NotEye video


Another video! This one presents Hydra Slayer as viewed through NotEye. It presents the various graphical modes available through NotEye (one important thing which is not shown on the video is that you can change to a bigger resolution to see a bigger part of the map), and Hydra Slayer's various geometries. Have fun!

Friday, 13 January 2012

Noteye version 5.0 released!

NotEye version 5.0 is released! This is a rather big release, with many new features:

  • Isometric view.
  • Mini-tiles view. This is similar to the roguelike's normal ASCII view, except that the ASCII map is replaced with tiles.
  • Sound effects, based on messages from the game.
  • You can now change fonts in NotEye. This also changes the resolution, so more tiles will fit if the font is larger. A nice VGA-like 32x16 font from VoI is included.
  • A custom libtcod 1.5.1, so you will be able to connect to libtcod roguelikes.
  • A config for Brogue. All graphic modes and sounds.
  • More configuration options in config.lua.
  • Objects in 3D no longer float over the ground.
  • Additional optional input methods: Shift/Ctrl+Left/Right arrow for diagonal movement, and VI keys.
  • Keypresses now know their "unicode" meaning, not only key symbol, which should make development easier, and more portable to different keyboard layouts.
  • NotEye Menus (and webpage) now display a logo.
  • Curses output. Could be useful to watch recordings of 16-color roguelikes on simple terminals, but not recommended for things like Brogue (the colors are very bad).
  • Faster (SDL's blit functions are now used where they were not, much more efficient hashing of tiles, some additional hardcoded functions).
Also I have created a video showing NotEye in action (with DoomRL). 

Hydra Slayer itself has not been updated, but NotEye gives new options to it (sounds, new fonts, isometric and mini-tile views).

Plans for the future include finally writing the documentation (I suppose adapting NotEye for new games might be quite hard now due to the lack of docs), and probably improvements to the FPP mode (using OpenGL's hardware acceleration instead of drawing by own calculations should be much faster, also new ways of placing the 3D objects).

Good luck to all (B)Rogues and Hydra Slayers!

Tuesday, 6 December 2011

Hyperbolic Rogue in action

This video by ortoslon shows Hyperbolic Rogue in action, and how to get a score of 138$. Thanks!


My current high score is 163$. Other scores I have seen posted in Internet seem to be around $60. Are there any better scores?

I am planning to write a bigger game based on Hyperbolic Rogue geometry one day, but it will have to wait (I am thinking about the next 7DRL challenge)...

Tuesday, 2 August 2011

Hydra Slayer 12.7

I have watched a "Let's Play" video about Hydra Slayer. Thanks!



I have noticed some bugs in this video, so they are fixed in version 12.7 (and also some other issues):
  • Shield damage was displayed incorrectly
  • Hot key to control both twins was shown incorrectly on the race selection screen
  • Twin was displayed incorrectly in the hex mode
  • Fighting messages were incorrect (incorrectly stated who does what)
  • Added missing messages about GPL to source and help
Link: Hydra Slayer