{ "info": { "author": "Riccardo Metere", "author_email": "rick@metere.it", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Intended Audience :: Education", "Intended Audience :: End Users/Desktop", "Intended Audience :: Science/Research", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Natural Language :: English", "Operating System :: POSIX", "Programming Language :: Python", "Programming Language :: Python :: 3", "Topic :: Software Development", "Topic :: Software Development :: Libraries", "Topic :: Utilities" ], "description": "(m,n,k)-Game\n============\n\n**mnkgame** - Library and user interfaces for (m,n,k)+g?-games.\n\n\nOverview\n--------\n\nThis software provides a library and user interfaces for `(m,n,k)-games `__, including optional *gravity* and simple search-tree algorithms.\n\nThe **(m,n,k)-game** family of games are played in a rectangular grid of size ``m x n`` (where *m* is the number of rows and *n* is the number of columns).\nEach player position a piece (typically **X** and **O**) on the grid in alternating turns until one of the player manages to align *k* pieces either horizontally, vertically or diagonally.\nThe first player to achieve this wins the game.\n\nA variant of this game, called **gravity**, is when the pieces cannot be put anywhere in the grid but must *fall* toward the lower horizontal edge of the grid, so that each piece must be placed either at such edge or on top of another piece.\n\n\nPopular such games are:\n\n - (m=3, n=3, k=3): `tic-tac-toe `__\n - (m=15, n=15, k=5): `gomoku `__\n - (m=6, n=7, k=4, gravity): `connect4 `__\n\nThe following user interfaces are provided:\n\n - a Command-Line Interface (CLI) - with optional coloring from `blessed `__ / `blessings `__.\n - a Text User Interface (TUI) - planned to be implemented with `asciimatics `__.\n - a Graphical User Interface (GUI) - implemented with `tkinter `__.\n\nFor a more comprehensive list of changes see ``CHANGELOG.rst`` (automatically\ngenerated from the version control system).\n\n\nQuick Start\n-----------\n\nOnce installed on a properly set-up system, running the software is as simple as typing:\n\n.. code:: bash\n\n $ mnk-game\n\nwhich will default to the best user interface (UI) the system can handle.\n\nTo specify a certain UI, just use the first positional argument, e.g. for the CLI:\n\n.. code:: bash\n\n $ mnk-game cli\n\n\nTo get information on the command-line option, just type:\n\n.. code:: bash\n\n $ mnk-game --help\n\nwhich produces:\n\n.. code::\n\n usage: mnk-game.py [-h] [--ver] [-v] [-q] [-m N] [-n N] [-k N] [-g] [-a MODE]\n [-t X] [-c]\n [USER_INTERFACE]\n\n (m,n,k)-game: command-line interface.\n\n positional arguments:\n USER_INTERFACE select the user interfact [auto|(auto, gui, tui, cli)]\n\n optional arguments:\n -h, --help show this help message and exit\n --ver, --version show program's version number and exit\n -v, --verbose increase the level of verbosity [1]\n -q, --quiet override verbosity settings to suppress output [False]\n -m N, --rows N number of rows for the board [3]\n -n N, --cols N number of cols for the board [3]\n -k N, --aligned N number of aligned pieces required for winning [3]\n -g, --gravity use gravitataion-rule variant [False]\n -a MODE, --ai_mode MODE\n AI mode [alphabeta_jit|(alphabeta_jit, alphabeta,\n negamax, pvs, alphabeta_hashing, random)]\n -t X, --ai_time_limit X\n time limit for AI move in sec [4.0]\n -c, --computer_plays computer plays first move of first game [False]\n\n v.0.0.0.4 - Riccardo Metere \n License: GNU General Public License version 3 (GPLv3)\n\n\nInstallation\n------------\n\nThe recommended way of installing the software is through `PyPI `__:\n\n.. code:: bash\n\n $ pip install mnkgame\n\nAlternatively, you can clone the source repository from `Bitbucket `__:\n\n.. code:: bash\n\n $ git clone git@bitbucket.org:norok2/mnkgame.git\n $ cd mnkgame\n $ pip install -e .\n\n\nLicense\n-------\n\nThis work is licensed through the terms and conditions of the `GPLv3+ `__.\nSee the accompanying ``LICENSE.rst`` for more details.\n\n\nAcknowledgements\n----------------\n\nThis software is a spin-off of a Python course held in 2018 at the `Donders Institute `__, part of the `Radboud University Nijmegen `__ (neither of which is involved or in any way affiliated with this).\n\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://bitbucket.org/norok2/mnkgame", "keywords": "geometry,geometric,raster,shape,pixel,voxel,render,mask", "license": "GPLv3+", "maintainer": "", "maintainer_email": "", "name": "mnkgame", "package_url": "https://pypi.org/project/mnkgame/", "platform": "", "project_url": "https://pypi.org/project/mnkgame/", "project_urls": { "Homepage": "https://bitbucket.org/norok2/mnkgame" }, "release_url": "https://pypi.org/project/mnkgame/0.0.0.4/", "requires_dist": [ "appdirs", "asciimatics", "blessed", "numpy", "scipy", "setuptools", "blessings; extra == 'blessings'" ], "requires_python": "", "summary": "Library and user interfaces for (m,n,k)+g?-games.", "version": "0.0.0.4" }, "last_serial": 5829179, "releases": { "0.0.0.1": [ { "comment_text": "", "digests": { "md5": "3f1d43e5dda59d5a24dc719dd0e0f8cb", "sha256": "62ffdc33f0c958db3d07532ff6834db0f017ea53298a98d27efbb96563e4dbe0" }, "downloads": -1, "filename": "mnkgame-0.0.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3f1d43e5dda59d5a24dc719dd0e0f8cb", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 43952, "upload_time": "2019-07-25T20:36:21", "url": "https://files.pythonhosted.org/packages/69/0d/de8f674fe500d21ef85bb2820242bee683d7eab59fa064384e8c195220ed/mnkgame-0.0.0.1-py2.py3-none-any.whl" } ], "0.0.0.2": [ { "comment_text": "", "digests": { "md5": "a022791ac9e914b2a5acceea86b97dd3", "sha256": "83efc053b64932b3d29f6976182c52f769d705c56836a18b8eabf65e22cf1391" }, "downloads": -1, "filename": "mnkgame-0.0.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a022791ac9e914b2a5acceea86b97dd3", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 43933, "upload_time": "2019-07-25T20:38:01", "url": "https://files.pythonhosted.org/packages/7a/39/b483ccd59a2dfded0ba089181e8172c5f26aaa18bf1c9953602fffe3c8db/mnkgame-0.0.0.2-py2.py3-none-any.whl" } ], "0.0.0.3": [ { "comment_text": "", "digests": { "md5": "df521e08257a647171c2e0c46bce9fe5", "sha256": "a38eb9914744cac7473d9b78c07ba895222195e88a9a4fa16907dacca542094b" }, "downloads": -1, "filename": "mnkgame-0.0.0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "df521e08257a647171c2e0c46bce9fe5", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 34684, "upload_time": "2019-07-25T22:31:19", "url": "https://files.pythonhosted.org/packages/23/e8/128e6b30df01661b9ec0bc023df8e1290c9c95f0ebb6785c481d9aa64c9a/mnkgame-0.0.0.3-py2.py3-none-any.whl" } ], "0.0.0.4": [ { "comment_text": "", "digests": { "md5": "430a08f8902d377ea7ceb1de73afdbac", "sha256": "51fc659a6ed31fe9480ad975449aa0a3237ba739b56b41cb6cc54ef4abc00dd3" }, "downloads": -1, "filename": "mnkgame-0.0.0.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "430a08f8902d377ea7ceb1de73afdbac", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 34672, "upload_time": "2019-09-14T12:30:19", "url": "https://files.pythonhosted.org/packages/c6/ff/46c4db5fe13bf204c5f9f04bf407b8ffccf802a911fdf8243362b96a4119/mnkgame-0.0.0.4-py2.py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "430a08f8902d377ea7ceb1de73afdbac", "sha256": "51fc659a6ed31fe9480ad975449aa0a3237ba739b56b41cb6cc54ef4abc00dd3" }, "downloads": -1, "filename": "mnkgame-0.0.0.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "430a08f8902d377ea7ceb1de73afdbac", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 34672, "upload_time": "2019-09-14T12:30:19", "url": "https://files.pythonhosted.org/packages/c6/ff/46c4db5fe13bf204c5f9f04bf407b8ffccf802a911fdf8243362b96a4119/mnkgame-0.0.0.4-py2.py3-none-any.whl" } ] }