An open API service indexing awesome lists of open source software.

https://github.com/semih-turan/mine-sweeper-game

The first project of the full stack web developer bootcamp at Patika Plus. It is a text-based minefield game created by taking the game difficulty from the user.
https://github.com/semih-turan/mine-sweeper-game

minesweeper minesweeper-game patika-dev patika-plus

Last synced: about 1 year ago
JSON representation

The first project of the full stack web developer bootcamp at Patika Plus. It is a text-based minefield game created by taking the game difficulty from the user.

Awesome Lists containing this project

README

          

# Mine-Sweeper-Game
The first project of the full stack web developer bootcamp at Patika Plus. It is a text-based minefield game created by taking the game difficulty from the user.

[![Semih Turan Github Account](/readmeAssets/logo.png "Semih Turan Github Account")](https://github.com/semih-turan)

## Purpose

This repository serves as a comprehensive record of my learning journey, designed to document progress and provide a reference point for personal reflection and potential collaboration. Through its centralized structure, I aim to create an organized and accessible archive of my coding pursuits.

## Getting Started

1- Clone the repository
``` bash
git clone https://github.com/semih-turan/Mine-Sweeper-Game.git
```
2- Navigate to the repository
``` bash
cd MineSweeperGame/src
```
3- Compile the project
``` bash
javac Main.java
```
4- Run the project
``` bash
java Main.java
```

---

## How to play

***Minesweeper*** is a logic puzzle game typically played as a computer game. The objective of the game is to clear all non-mine tiles on a grid-based field without detonating any mines.

Here are the basic rules of Minesweeper:

**Minefield:** The game is played on a grid-based field. This grid can vary in size, typically ranging from 9x9, 16x16, or 16x30, among others. A minimum grid size of 2x2 can be selected.

**Mines:** At the start of the game, some tiles contain mines. The positions of the mines are randomly determined.

**Player Moves:** In each turn, the player selects and reveals a tile. The revealed tiles provide information to the player.

**Numbers and Empty Spaces:** If a revealed tile contains a number, it indicates the number of mines adjacent to that tile. If a revealed tile does not contain a number and does not hide a mine, it and the adjacent empty tiles are revealed.

**Flagging:** Players can mark a tile by placing a flag on it if they suspect there is a mine. This should be taken into account when opening other tiles. (Flagging is not included in this game.)

**Mine Detection:** If a tile containing a mine is revealed, the game is lost.

**Game Completion:** The game is completed when all non-mine tiles are revealed and all mine tiles are flagged.

---
## Screenshots
##### Welcome Screen
[![Welcome Screen](/readmeAssets/welcome.png "Welcome Screen")](https://github.com/semih-turan)

##### Win Condition
[![Win Screen](/readmeAssets/win.png "Win Screen")](https://github.com/semih-turan)

##### Failed Condition
[![Fail Screen](/readmeAssets/failed.png "Fail Screen")](https://github.com/semih-turan)

---

## Requirements
- Java JDK 21.0.2

### Usage Rights

All projects and practice exercises are freely available for use. You are welcome to explore, modify, and share them as you wish. If you have any questions, please don't hesitate to contact me.