Hullsweeper is Minesweeper in a non-Euclidean 2D space - the surface of a 3D voxel mesh. Each visible face of each cube is a tile that may contain a mine. Tiles without mines will have a number denoting the number of mines present in adjacent tiles. Uncovering a mine will lose you the game. The goal is to uncover all tiles without mines.

It is recommended to know how to play standard Minesweeper before playing this.

The game is playable on mobile, though the controls are bare-bones and not very fluid.

Controls (note: Shift, Ctrl, and Esc are disabled in the browser version):

  • Esc or Backspace - pause menu
  • WASD - horizontal movement
  • Space or E - move up
  • Ctrl or Q - move down
  • Shift or R - fast movement (toggle by default - can be changed in options)
  • Left Mouse Button - uncover tile
  • Right Mouse Button - flag/unflag tile as mine
  • Middle Mouse Button (POV camera mode) - chord tile (reveal all unflagged adjacent tiles if the number of adjacent flagged tiles is equal to the number on the chorded tile).
  • Middle Mouse Button (Orbital camera mode) - rotate camera around orbit
  • Left Mouse Button (double click) - alternate binding for chording. can be enabled in options.
  • O - toggle UI visibility
  • P - take screenshot
  • Alt + Enter - toggle fullscreen (desktop version only)

The behavior of vertical and horizontal movement in relation to the camera's facing direction can be adjusted in the options menu.

How are tile adjacencies determined?

  • The short version: If you can trace a path over the surface, from one tile to another, without going over other tiles or phasing through other tiles, then those two tiles are considered adjacent.
  • The long version: For a given tile, side-adjacencies are tiles that share an edge (one of the 4 sides of the square) with it. There's always exactly 4 - one for each edge. Tiles "behind walls" aren't side-adjacencies, even if they have an edge that's in the same spatial location. For corner-adjacencies, imagine an ant walking on the surface of the tile. It starts by picking a side, then walking forward onto the side-adjacent tile that side connects to. It then turns 90 degrees to its left, and walks forward again to the next side-adjacent tile. It repeats this process until it returns to the original tile. It then does that for all 4 sides of the original tile. Any tile the ant walked over during this process is considered adjacent to the original tile.

This game is currently in beta. Some planned features include:

  • In-game timer, and tracking of best times
  • Level editor, and importer/exporter
  • The ability to save progress on a run in order to resume it later
  • Linux build if there's any demand for one
  • Reducing the game's file size if I can figure out how (95% of it is engine things)
  • Sound effects (maybe)

Known bugs:

  • None as of v0.2.1.7

Any feedback is appreciated. If you find any bugs, do let me know in the comments.

Updated 1 day ago
Published 6 days ago
StatusIn development
PlatformsHTML5, Windows
Rating
Rated 4.5 out of 5 stars
(2 total ratings)
AuthorZortexxx
GenrePuzzle
Made withGodot
Tags3D, Difficult, Godot, Minesweeper, Singleplayer
Average sessionAbout a half-hour
LanguagesEnglish
InputsKeyboard, Mouse

Download

Download
Hullsweeper v0.2.1.7-windows.zip 32 MB
Download
Hullsweeper v0.2-windows.zip 32 MB
Download
Hullsweeper v0.1.1-windows.zip 31 MB

Install instructions

For the Windows version, download the attached .zip file with the -window suffix, extract the zip file (preferably to its own folder), and run Hullsweeper.exe to launch the game. Generated game files (config, saves, screenshots) are generated in the same directory as the executable.

Development log

Comments

Log in with itch.io to leave a comment.

(+1)

Pretty cool game. As a fellow enjoyer of Non Euclidean geometry (and Minesweeper) this  is pretty nice!

If you are planning on continuing to work on the game I would like to note a bug I found where restarting does not actually revert the number of mines found. If I start a game it will say 30 mines are present, if I flag 10 mines it will say that 20 are present. if I then restart, it will go back to 30, but when I then flag a mine, it will jump back to 19 mines.

I also think some better camera controls could help the game. I think the flying controls work okay, but I think it would be nice to have the option to spin the model around with the mouse as well (maybe scrolling moves the camera in and out, and pressing the middle mouse button lets you pan around).

These are somewhat minor nitpicks and I will definitely be playing some more!

Thank you for your feedback. I'm glad you enjoyed the game.

I noticed this bug as well yesterday while I was de-spaghettifying the code. It seems I was resetting the number displayed at the top upon restarting, but not the actual internal flag count. It'll be fixed in v0.2, thanks for reporting it.

As for an alternate camera control like that, I hadn't thought about it. In my experience it gets tricky to navigate tight spaces with controls like that (in programs like Blender), but I suppose most of the levels here don't have that. I thought a while about what control scheme would work best, and I think something like what you described would work best:

Camera is stationary by default, and any tile in view can be clicked. Holding right mouse lets you spin the camera around some orbit point (initially at the center of the level). Holding middle mouse lets you pan the camera perpendicular to its view direction, which also moves the orbit point. Scroll wheel would allow the camera to move closer to or farther away from the orbit point. This can be combined with the flight movement for finer control if need be.

Does this sound good?

(+1)

I feel like being able to move the pivot point with RMB is too convoluted. Maybe moving with WASD+QE moves the pivot point, LMB checks if tile is a mine, RMB flags the tile, Scrolling zooms into or out from the pivot point, and middle mouse button pans around the pivot point. I think on most normal shapes just being able to pan around should be enough, being able to move the pivot would only really be necessary on custom boards.

Ah, I see. I misunderstood what you meant by panning originally. That does sound much nicer, and would avoid the issue of RMB doing two things. I could also add the ability to double click LMB for chording (which iirc Win7 minesweeper did), so middle mouse is free for camera movement

That would be cool!

(+1)

i love this! 

Um..... This happens every time I try to start a  game...

(1 edit)

That's unexpected. can you tell me what OS and browser you are using?

So I just tried loading the game on my phone and have the same issue. Honestly I didn't think browser games on this site would even be playable on phones, so I guess that's a newbie mistake on my part. Even without the graphical error, there's no way to use most of the controls without a keyboard, so phones are not supported for this game right now. I'll try to get it fixed and working in the next update.

Of course, I'm only guessing you're also on a phone. If you're not, it might be cause you're on an older device, I'm not sure. But I think fixing it for phones ought to fix it for that as well.

Thanks for leaving a comment, it was majorly helpful!

(+1)

Well, I'm not on a phone but i'm on a Chromebook, the phone of computers so ya.

(+1)

game is so nice, but would be great if you could not start it with a bomb 

(+1)

will definitely be one of the things I add for the next update