Skip to content

Cross-platform terminal based minesweeper. Because I was bored.

License

Notifications You must be signed in to change notification settings

gazpachoking/minesweeper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Minesweeper

Simple terminal based minesweeper. Python 3 required.

minesweeper

Features

  • Cross platform
  • Kaboom mode:
    • Cruel but fair, where guessing is punished, but when only guesses are left you are guaranteed not to be wrong.
    • Based on the blog post here.
  • Keyboard or mouse (or hybrid) control
  • Standard and Knight's move modes
  • Double-width characters (if your terminal supports it)
  • QoL features:
    • Highlight adjacent tiles
    • Clear all adjacent
    • Mark all adjacent
    • Shows spaces that were provably empty after a loss (marked with yellow)

Controls

  • N New game
  • Q Quit
  • Right-click/M Mark mine/mark all adjacent
  • Click/Space Reveal tile
  • Double-click/Space Reveal all adjacent (except marked mines)

Legend

  • ░ Unrevealed tile
  • # Marked as mine
  • 1-8 Number of adjacent mines
  • * Unmarked mine (after game end)
  • X Incorrect mark (after game end)

CLI

  • --size X Y Specify field size
  • --mines N Specify number (or fraction of board) of mines
  • --niceness cruel|normal|fair|nice
    • nice Any click that could result in an empty tile is an empty tile.
    • fair If guessing is the only move available, you will not guess wrong.
    • normal Traditional minesweeper.
    • cruel Any click that could result in a mine is a mine. (Except when guessing is the only move available.)
  • --style single|double double mode uses full width unicode characters to double the cell size. Use single if this causes problems with your terminal.

About

Cross-platform terminal based minesweeper. Because I was bored.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published

Languages