battleship-tui


Namebattleship-tui JSON
Version 0.13.0 PyPI version JSON
download
home_pagehttps://github.com/Klavionik/battleship-tui
SummaryBattleship TUI is an implementation of the popular paper-and-pen Battleship game for your terminal.
upload_time2024-05-12 13:14:54
maintainerNone
docs_urlNone
authorRoman Vlasenko
requires_python<3.13,>=3.10
licenseGPL-2.0-or-later
keywords battleship game tui
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ![Battle](screenshots/battle.png)

[<img src="https://uptime.klavionik.dev/api/badge/1/status?upLabel=online&downLabel=offline">](https://uptime.klavionik.dev/status/battleship)

# Battleship TUI
Battleship TUI is an implementation of the popular paper-and-pen Battleship game for 
your terminal. You can play against the AI or a real player via the Internet, 
customize game options and appearance, keep track of your achievements, and more.

## Features
* Singleplayer mode  
* Multiplayer mode (via Internet)
* Customizable game rules
* Customizable UI
* Launch via CLI
* Game statistics

## Planned features
* Ranking system
* Account management

## Requirements
* A terminal (Windows PowerShell is fine too, see below)
* Python 3.10 or higher

> [!NOTE]
> If you're on Windows, **make sure** to install [the newer Windows Terminal](https://apps.microsoft.com/detail/9N0DX20HK701?hl=en-us&gl=US). 
> The older Windows PowerShell can't properly display some symbols. 

## Installation
If you're on Linux or macOS, most probably you already have Python installed. You can verify it by 
running `$ python --version`. If your Python version is lower than required, try installing the 
latest operating system updates.

If you're on Windows, you can download and install the latest Python release from the 
[official site](https://www.python.org/downloads/windows/).

The recommended way to install and update the game is via 
[pipx](https://pypa.github.io/pipx/) (especially if you don't know anything about 
virtual environments).

Install `pipx`, then install the game.

```shell
pipx install battleship-tui[client]
```

`battleship-tui` is merely a Python package and is distributed via PyPI. You can 
install it via `pip` too, but make sure it installs into a venv so that you're not 
messing with the system interpreter.

## Play
Once the game is installed you can use the `battleship` command to run it. This 
command will launch the user interface and present you with the main menu.

### Play via CLI
You can launch the game via CLI subcommands too, especially if you want to skip some 
in-game menus.

For example, if your favorite game mode is singleplayer, salvo variant, you can 
quickly get into battle by running `battleship play single --salvo`.

Run `battleship play --help` to discover available options.

## Multiplayer
You can play Battleship TUI with your friends or colleagues via the Internet. Choose 
**Multiplayer** option in the main menu to do this.

### Game account
You may sign up for a multiplayer account or try multiplayer with guest access.

To sign up, run `battleship account signup`. You'll be prompted with your email, 
desired nickname, and a password. Your nickname will be displayed in-game. It should 
contain 7 to 20 characters and be unique. Your password should contain at least 9 
characters.

> [!NOTE]
> Guests given an autogenerated nickname, their game statistics isn't saved. Guest 
> access will work until you log off.


## Screenshots
<details>
<summary>Expand to see more screenshots</summary>

### Main menu
![Main menu](screenshots/main_menu.png)

### Game summary
![Summary](screenshots/summary.png)

### Starting a multiplayer session
![Awaiting](screenshots/multiplayer.png)

### List of game sessions to join
![Sessions](screenshots/sessions.png)
</details>

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/Klavionik/battleship-tui",
    "name": "battleship-tui",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<3.13,>=3.10",
    "maintainer_email": null,
    "keywords": "battleship, game, tui",
    "author": "Roman Vlasenko",
    "author_email": "klavionik@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/cc/8f/913bfd1e04af73e7a7dee8dad4fcaecba9f86ebe0184759a81c1e121ef25/battleship_tui-0.13.0.tar.gz",
    "platform": null,
    "description": "![Battle](screenshots/battle.png)\n\n[<img src=\"https://uptime.klavionik.dev/api/badge/1/status?upLabel=online&downLabel=offline\">](https://uptime.klavionik.dev/status/battleship)\n\n# Battleship TUI\nBattleship TUI is an implementation of the popular paper-and-pen Battleship game for \nyour terminal. You can play against the AI or a real player via the Internet, \ncustomize game options and appearance, keep track of your achievements, and more.\n\n## Features\n* Singleplayer mode  \n* Multiplayer mode (via Internet)\n* Customizable game rules\n* Customizable UI\n* Launch via CLI\n* Game statistics\n\n## Planned features\n* Ranking system\n* Account management\n\n## Requirements\n* A terminal (Windows PowerShell is fine too, see below)\n* Python 3.10 or higher\n\n> [!NOTE]\n> If you're on Windows, **make sure** to install [the newer Windows Terminal](https://apps.microsoft.com/detail/9N0DX20HK701?hl=en-us&gl=US). \n> The older Windows PowerShell can't properly display some symbols. \n\n## Installation\nIf you're on Linux or macOS, most probably you already have Python installed. You can verify it by \nrunning `$ python --version`. If your Python version is lower than required, try installing the \nlatest operating system updates.\n\nIf you're on Windows, you can download and install the latest Python release from the \n[official site](https://www.python.org/downloads/windows/).\n\nThe recommended way to install and update the game is via \n[pipx](https://pypa.github.io/pipx/) (especially if you don't know anything about \nvirtual environments).\n\nInstall `pipx`, then install the game.\n\n```shell\npipx install battleship-tui[client]\n```\n\n`battleship-tui` is merely a Python package and is distributed via PyPI. You can \ninstall it via `pip` too, but make sure it installs into a venv so that you're not \nmessing with the system interpreter.\n\n## Play\nOnce the game is installed you can use the `battleship` command to run it. This \ncommand will launch the user interface and present you with the main menu.\n\n### Play via CLI\nYou can launch the game via CLI subcommands too, especially if you want to skip some \nin-game menus.\n\nFor example, if your favorite game mode is singleplayer, salvo variant, you can \nquickly get into battle by running `battleship play single --salvo`.\n\nRun `battleship play --help` to discover available options.\n\n## Multiplayer\nYou can play Battleship TUI with your friends or colleagues via the Internet. Choose \n**Multiplayer** option in the main menu to do this.\n\n### Game account\nYou may sign up for a multiplayer account or try multiplayer with guest access.\n\nTo sign up, run `battleship account signup`. You'll be prompted with your email, \ndesired nickname, and a password. Your nickname will be displayed in-game. It should \ncontain 7 to 20 characters and be unique. Your password should contain at least 9 \ncharacters.\n\n> [!NOTE]\n> Guests given an autogenerated nickname, their game statistics isn't saved. Guest \n> access will work until you log off.\n\n\n## Screenshots\n<details>\n<summary>Expand to see more screenshots</summary>\n\n### Main menu\n![Main menu](screenshots/main_menu.png)\n\n### Game summary\n![Summary](screenshots/summary.png)\n\n### Starting a multiplayer session\n![Awaiting](screenshots/multiplayer.png)\n\n### List of game sessions to join\n![Sessions](screenshots/sessions.png)\n</details>\n",
    "bugtrack_url": null,
    "license": "GPL-2.0-or-later",
    "summary": "Battleship TUI is an implementation of the popular paper-and-pen Battleship game for your terminal.",
    "version": "0.13.0",
    "project_urls": {
        "Homepage": "https://github.com/Klavionik/battleship-tui"
    },
    "split_keywords": [
        "battleship",
        " game",
        " tui"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fad53b42080ff3a14657810a7ea1340c4a4d6802e674ef85ccb951ba245f09f7",
                "md5": "05a2778617fb26d92a15024df2f161d1",
                "sha256": "bf3ac9533896a60a19a4784d0f90967888a0077ccd8333beb88b2802a5727bc6"
            },
            "downloads": -1,
            "filename": "battleship_tui-0.13.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "05a2778617fb26d92a15024df2f161d1",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<3.13,>=3.10",
            "size": 90045,
            "upload_time": "2024-05-12T13:14:52",
            "upload_time_iso_8601": "2024-05-12T13:14:52.296582Z",
            "url": "https://files.pythonhosted.org/packages/fa/d5/3b42080ff3a14657810a7ea1340c4a4d6802e674ef85ccb951ba245f09f7/battleship_tui-0.13.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "cc8f913bfd1e04af73e7a7dee8dad4fcaecba9f86ebe0184759a81c1e121ef25",
                "md5": "b915a4cbb06bae67f62dc603196c3056",
                "sha256": "0098d6b5a6a53a1509591a811ee558552ae24258d1d12d1442fe5d3c62328877"
            },
            "downloads": -1,
            "filename": "battleship_tui-0.13.0.tar.gz",
            "has_sig": false,
            "md5_digest": "b915a4cbb06bae67f62dc603196c3056",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<3.13,>=3.10",
            "size": 64562,
            "upload_time": "2024-05-12T13:14:54",
            "upload_time_iso_8601": "2024-05-12T13:14:54.208648Z",
            "url": "https://files.pythonhosted.org/packages/cc/8f/913bfd1e04af73e7a7dee8dad4fcaecba9f86ebe0184759a81c1e121ef25/battleship_tui-0.13.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-05-12 13:14:54",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Klavionik",
    "github_project": "battleship-tui",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "battleship-tui"
}
        
Elapsed time: 0.31890s