diff options
-rw-r--r-- | README.md (renamed from README.rst) | 112 | ||||
-rw-r--r-- | pyproject.toml | 4 |
2 files changed, 48 insertions, 68 deletions
diff --git a/README.rst b/README.md index 0a90678..9609b33 100644 --- a/README.rst +++ b/README.md @@ -1,10 +1,8 @@ -Brutal Maze -=========== +# Brutal Maze Brutal Maze is a thrilling shoot 'em up game with minimalist art style. -.. image:: https://brutalmaze.rtfd.io/_images/screenshot.png - :target: https://brutalmaze.rtfd.io/recplayer.html +![Screenshot](https://brutalmaze.rtfd.io/_images/screenshot.png) The game features a trigon trapped in an infinite maze. As our hero tries to escape, the maze's border turns into aggressive squares trying to stop per. @@ -24,40 +22,30 @@ Brutal Maze has a few notable features: * Recordable in JSON (some kind of silent screencast). * Remote control through TCP/IP socket (can be used in AI researching). -Installation ------------- +## Installation -Brutal Maze is written in Python and is compatible version 3.6 and above. +Brutal Maze is written in Python and is compatible version 3.7 and above. The installation procedure should be as simple as follows: -* Install Python and pip_. Make sure the directory for `Python scripts`_ - is in your ``$PATH``. -* Open Terminal or Command Prompt and run ``pip install --user brutalmaze``. +* Install Python and [pip]. Make sure the directory for [Python scripts] + is in your `$PATH`. +* Open Terminal or Command Prompt and run `pip install --user brutalmaze`. -For more information, see Installation_ page from the documentation. +For more information, see [Installation] page in the documentation. After installation, you can launch the game by running the command -``brutalmaze``. Below are the default bindings, which can be configured as +`brutalmaze`. Below are the default bindings, which can be configured as shown in the next section: -F2 - New game. -``p`` - Toggle pause. -``m`` - Toggle mute. -``a`` - Move left. -``d`` - Move right. -``w`` - Move up. -``s`` - Move down. -Left Mouse - Long-range attack. -Right Mouse - Close-range attack, also dodge from bullets. +* `F2`: new game +* `p`: toggle pause +* `m`: toggle mute +* `a`: move left +* `d`: move right +* `w`: move up +* `s`: move down +* Left mouse: long-range attack +* Right mouse: close-range attack, also dodge from bullets Additionally, Brutal Maze also supports touch-friendly control. In this mode, touches on different grid (empty, wall, enemy, hero) send different signals @@ -66,8 +54,7 @@ implemented using *mouse button up* event, touch control is not a solution for mouse-only input, but an attempt to support mobile GNU/Linux distribution such as postmarketOS, i.e. it's meant to be played using two thumbs :-) -Configuration -------------- +## Configuration Brutal Maze supports both configuration file and command-line options. Apparently, while settings for graphics, sound and socket server can be set @@ -76,30 +63,33 @@ to configuration file only. Settings are read in the following order: -0. Default configuration [1]_ -1. System-wide configuration file [2]_ -2. Local configuration file [2]_ -3. Manually set configuration file [3]_ -4. Command-line arguments +0. Default configuration (this can be copied to desired location + by `brutalmaze --write-config PATH`. `brutalmaze --write-config` alone + will print the file to stdout) +1. System-wide and local configuration file (these will be listed + as fallback config in `brutalmaze --help`; see the [Configuration] + documentation for more info) +2. Manually specified configuration file (via `brutalmaze --config PATH`) +3. Command-line arguments Later-read preferences will override previous ones. -Remote control --------------- +## Remote control -If you enable the socket server [4]_, Brutal Maze will no longer accept +If you enable the socket server, Brutal Maze will no longer accept direct input from your mouse or keyboard, but wait for a client to connect. -The I/O format is explained in details in the `Remote Control`_ page. +This can be done by either editing option *Enable* in section *Server* +in the configuration file or launching the game via `brutalmaze --server`. +The I/O format is explained in details in the [Remote Control] page. -Game recording --------------- +## Game recording Either game played by human or client script can be recorded to JSON format. -This can be enabled by setting the output directory to a non-empty string [5]_. -Recordings can be played using Brutal Maze `HTML5 record player`_. +This can be enabled by setting the output directory to a non-empty string: +`brutalmaze --record-dir DIR`. Navigate to [Configuration] for more options. +Recordings can be played using Brutal Maze [HTML5 record player]. -Copying -------- +## Copying Brutal Maze's source code and its icon are released under GNU Affero General Public License version 3 or later. This means if you run a modified program on @@ -108,22 +98,12 @@ allow them to download the source code corresponding to the modified version running there. This project also uses Tango color palette and several sound effects, whose -authors and licenses are listed in the Copying_ page in our documentation. - -.. [1] This can be copied to desired location by ``brutalmaze --write-config - PATH``. ``brutalmaze --write-config`` alone will print the file to stdout. -.. [2] These will be listed as fallback config in the help message - (``brutalmaze --help``). See the Configuration_ documentation for more info. -.. [3] If specified by ``brutalmaze --config PATH``. -.. [4] This can be done by either editing option *Enable* in section *Server* - in the configuration file or launching the game via ``brutalmaze --server``. -.. [5] ``brutalmaze --record-dir DIR``. Navigate to Configuration_ - to see more options. - -.. _pip: https://pip.pypa.io/en/latest/ -.. _Python scripts: https://docs.python.org/3/install/index.html#alternate-installation-the-user-scheme -.. _Installation: https://brutalmaze.rtfd.io/install.html -.. _Remote Control: https://brutalmaze.rtfd.io/remote.html -.. _HTML5 record player: https://brutalmaze.rtfd.io/recplayer.html -.. _Copying: https://brutalmaze.rtfd.io/copying.html -.. _Configuration: https://brutalmaze.rtfd.io/config.html +authors and licenses are listed in the [Copying] page in our documentation. + +[pip]: https://pip.pypa.io/en/latest/ +[Python scripts]: https://docs.python.org/3/install/index.html#alternate-installation-the-user-scheme +[Installation]: https://brutalmaze.rtfd.io/install.html +[Remote Control]: https://brutalmaze.rtfd.io/remote.html +[HTML5 record player]: https://brutalmaze.rtfd.io/recplayer.html +[Copying]: https://brutalmaze.rtfd.io/copying.html +[Configuration]: https://brutalmaze.rtfd.io/config.html diff --git a/pyproject.toml b/pyproject.toml index 05d26cf..77e06aa 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,5 +1,5 @@ [build-system] -requires = ['flit_core >=2,<3'] +requires = ['flit_core >=2,<4'] build-backend = 'flit_core.buildapi' [tool.flit.metadata] @@ -21,7 +21,7 @@ classifiers = [ 'Programming Language :: Python', 'Programming Language :: Python :: 3 :: Only', 'Topic :: Games/Entertainment :: Arcade'] -requires-python = '>=3.6' +requires-python = '>=3.7' keywords = 'pygame,shmup,maze,ai-challenges' license = 'AGPLv3+' |