• Register

You are a lone adventurer in a strange, non-Euclidean world. Gather as much treasure as you can before the nasty monsters get you. Explore about 50 different lands, each with its own unique treasures, enemies, and terrain obstacles. Your quest is to find the legendary treasure, the Orbs of Yendor. Collect one of them to win! Or just ignore your quest and collect smaller treasures.

The twist is the unique, unusual geometry of the world: it is one of just few games which takes place on the hyperbolic plane. Witness a grid composed of hexagons and heptagons, straight lines which seem to be parallel, but then they diverge and never cross, triangles whose angles add up to less than 180 degrees, how extremely unlikely is it to reach the same place twice due to practically infinite size of the world (centillions of locations in just 700 steps from the starting point), and how the world seems to be rotated when you do return. All this matters for the gameplay. The game is inspired by the roguelike genre (although in a very minimalist way), works of M. C. Escher, and by puzzle games such as Deadly Rooms of Death.

HyperRogue can be played for free from its website. The Steam version adds online achievements, online leaderboards, trading cards, and convenience. Also, as the game is constantly updated, the Steam version includes the newest features, such as new lands with new mechanics, or new game modes -- see Gallery for the current differences.

  • View media
  • View media
  • View media
  • View media
  • View media
  • View media
Post article RSS Articles


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!

HyperRogue 11.1 is released!

HyperRogue 11.1 is released!

News 1 comment

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...

HyperRogue 11.0 is released!

HyperRogue 11.0 is released!

News 2 comments

HyperRogue version 11.0 is released! Explore mountainous islands and irradiated fields, fall in the magical gravity, race in non-Euclidean space, listen...

HyperRogue 10.4 released!

HyperRogue 10.4 released!

News

After an extremely long series of patch/preview versions (10.3a to 10.3v), it is time to release HyperRogue 10.4! While there are no new lands (they are...

HyperRogue version 10.3 is released!

HyperRogue version 10.3 is released!

News

Version 10.3 of the mind-bending non-Euclidean roguelike HyperRogue is released! This big update continues the geometry experiment theme of HyperRogue...

Comments
Jerikøh
Jerikøh

Peculiar game, has her charm. Played on Android time ago.

Reply Good karma Bad karma+3 votes
trianglegames
trianglegames

Mac OS, unfortunately. If you do find out more about that, let me know

Reply Good karma Bad karma+3 votes
zenorogue Creator
zenorogue

A binary package for OSX is available on the website :)

Reply Good karma+4 votes
trianglegames
trianglegames

Thanks!

Reply Good karma Bad karma+3 votes
trianglegames
trianglegames

This game looks awesome! Too bad you have to fuss around with makefiles and stuff. I have no idea how to do that!

Reply Good karma Bad karma+2 votes
zenorogue Creator
zenorogue

Thanks! What operating system are you using? A Windows executable is included, and instructions for Linux should be easy to follow. Unfortunately I have no access to MacOS, I only know that someone was able to compile one of the previous versions... so I cannot help you there for now.

Reply Good karma+2 votes
Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.

Follow Report Profile
Icon
HyperRogue
Platforms
Windows, Mac, Linux, Android
Creator
zenorogue
Engine
Custom
Contact
Send Message
Homepage
Roguetemple.com
Release date
Game watch
Follow
Share
Purchase
Community Rating

Average

6.3

3 votes submitted.

You Say

-

Ratings closed.

Style
Genre
Roguelike
Theme
Fantasy
Players
Single & Co-op
Project
Indie
Boxart
Boxart
Twitter

Latest tweets from @zenorogue

Some people wanted a VR version of the Geometronaut tweet. For now, here is a VR video! We visualize several 4-dime… T.co

Oct 19 2019

RT @adom_dev: Yay! #ADOM again made it to the @rockpapershot list of the best PC #RPGs in 2019: Rockpapershotgun.com Spot 36 i… T.co

Oct 15 2019

How should a person exploring exotic geometries be called? A geometronaut? T.co

Oct 11 2019

Surfaces of constant 'z' in Solv. Shown in a Poincaré-like projection (geodesics through the center mapped azimutha… T.co

Oct 5 2019

RT @Dmitri145: "Elsevier journal editors resign, start rival open-access journal." Insidehighered.com Hackernews:… T.co

Oct 4 2019

(ds)² = (2ᶻdx)² + (3ᶻdy)² + (dz)² (I do not know whether this has an official name) Like hyperbolic space but non-… T.co

Oct 1 2019

A rubbery object in non-isotropic geometry (e.g.Nil) should have its preferred orientation which minimizes its pote… T.co

Sep 29 2019

Embed Buttons
Link to HyperRogue by selecting a button and using the embed code provided more...
HyperRogue
Statistics
Last Update
Watchers
19 members
Articles
8