{ "info": { "author": "Yuval Wyborski", "author_email": "yvw.bor@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "Welcome to HTP Client\n=====================\n\nThis is an attempt to modify the `Go Text Protocol`_ to be competible\nwith the Hecks game created by Maayan Bloom, and to make a suitable\nclient using it for the game\u2019s main site at https://hecks.space.\n\nInstallation\n============\n\nOption 1\n~~~~~~~~\n\n- Make sure you have python 3.4.2 or greated installed (not tested with\n other versions).\n- Download the source code from github and navigate a command line to\n it\u2019s folder.\n- Run ``pip install -r requirments.txt`` (hopefully in a virtual\n environment)\n\nOption 2\n~~~~~~~~\n\n- Make sure you have python 3.4.2 or greated installed (not tested with\n other versions).\n- Run ``pip install htp-client``\n- Use your new cli command ``htpplay``. The signature is the same as in\n the usage section below.\n\nTroubleshooting\n---------------\n\nFor any issues with Selenium, use google, since it\u2019s black magic for me.\nFor any other issues feel free to send me a message.\n\nThe protocol\n============\n\nThe Protocol will use the following notation for the vertices of the board:\nThe rows created by taking all points in the lower half of each hexagon in the lower half of the board and upper half of\neach hexagon in the upper half of the board (Giving zizagged lines) will be denoted by letters from 'a' to 'j' from\nbottom to top.\nThe leftmost vertex of each row will be denoted with 1, with numbers increasing sequentially along the row to the right.\n\nWhen writing the moves,letters precede numbers. I.E. \u201ca3\u201d is a valid move while \u201c3a\u201d is\nnot.\n\nA few things to note here are:\n\n- The notation is case insensitive. \"B5\" and \"b5\" are the same vertex.\n- Not all rows have the same number of vertices. \"e19\" is a valid move, but \"a19\" is not.\n- We abolish the Go convention of skipping I in the notation, I comes\n before J as it should.\n- Same as the GTP, \u201cpass\u201d will denote passing one\u2019s turn and \u201cresign\u201d a\n game resignation. These are also considered vertices for all purposes\n\nThe colors will be annotated as \u201cR\u201d or \u201cRED\u201d for the red player and \u201cB\u201d\nor \u201cBLUE\u201d for the blue player.\n\nA move is a color, followed by a vertex. They should be separated by a space\n\nCurrently supported commands (emitted by the controller) are:\n\n- genmove [color]\n\n - Ask the engine to generate a move by itself and play it\n internally.\n - Argument: color to generate move for.\n - Success response: = [Vertex]\n - Fail reasons: Game not initialized in engine. Not current player\n turn (this is optional as the enging is not required to keep track\n of turns).\n\n- play [Move]\n\n - Ask the engine to play a move internally.\n - Argument: Move to play.\n - Fail reasons: Illegal move.\n\n- clearboard\n \n - Ask the engine to clear the board and prepare for a new game\n - Fail reasons: None.\n\n- quit\n\n - Tells the engine to quit.\n\nUsage\n=====\n\nIf you are running directly from source, from the main directory run:\n\n``python htpplay.py \"Command to run your engine\" \"username\" \"password\"``\n\nIf you installed using pip, run:\n\n``htpplay \"Command to run your engine\" \"username\" \"password\"``\n\n| As of right now, these are set in stone. Might change later. Don\u2019t\n forget to encase in quotes when necessary.\n| Note that this command will run as a shell script with all relevant\n privilages! Be careful not to use \u201ccd /; rm -rf \\*\" as your engine\n command!\n\nThe engine should expect HTP commands through stdin and write responses\nto stdout.\n\nFor now a new folder called \u201clogs\u201d will be created, which will include\nall logs, in the future support for custom log levels will be added.\n\nNotice\n======\n\nThe Client requires Selenium webdrivers to run. In case you take the\nsource code directly make sure to run pip install on the requirments.txt\nfile.\n\nRequired features before release 1.0.0\n======================================\n\n+ Multiple games per session, with default to infinite - Decided by CLI options or settings file.\n+ Infinite game search, the site seems to stop the search after not finding a match for a while. (Bug on developer's site)\n+ Close the program gracefully by sending quit to the engine. (Added in version 0.4.3)\n+ Support for changing of time controls - Decided by CLI options or settings file.\n+ Suport for resuming mid games - Maybe sending the kifu at the start of a new game somehow. At the engine side this is just sending \"play move color\" for all already played moves. This is also required for engine analysis.\n+ Commands: clear_board, time_settings, time_left (clear_board added in version 0.4.3)\n\nPossible features for the future\n================================\n\n+ Support for reg_genmove command and emission for game analysis.\n+ CLI options to make calls to the showboard command.\n+ Support for named pipes and sockets.\n\n.. _Go Text Protocol: http://www.lysator.liu.se/~gunnar/gtp/\n\n.. |ScreenShot| image:: http://i.imgur.com/JHoGBal.jpg", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/unc0mm0n/htp-client.git", "keywords": null, "license": "WTFPL", "maintainer": null, "maintainer_email": null, "name": "htp-client", "package_url": "https://pypi.org/project/htp-client/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/htp-client/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://github.com/unc0mm0n/htp-client.git" }, "release_url": "https://pypi.org/project/htp-client/0.5.3/", "requires_dist": null, "requires_python": null, "summary": "Make a Hecks engine using the HTP protocol play on the hecks.space website", "version": "0.5.3" }, "last_serial": 2399019, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "d5ded03e20b5aabc90773efb6527944f", "sha256": "e5a4c07c83b6cc57e1d20b7748883d038a2e89964e8b83cd07c0e1b0ec3835dd" }, "downloads": -1, "filename": "htp-client-0.0.1.zip", "has_sig": false, "md5_digest": "d5ded03e20b5aabc90773efb6527944f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14536, "upload_time": "2016-10-01T00:31:39", "url": "https://files.pythonhosted.org/packages/1a/45/28b03b433f92e652a1e5e9219951af1250d453fd7ba05dc9cfb9c12fa5ac/htp-client-0.0.1.zip" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "eeba1a333b96921fb95155832044b29c", "sha256": "d9912c1bbfe52df7a470f0c0cec4d4ca1236fe9d4ef66e71cdb24f810994cd49" }, "downloads": -1, "filename": "htp-client-0.1.0.zip", "has_sig": false, "md5_digest": "eeba1a333b96921fb95155832044b29c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16253, "upload_time": "2016-10-01T00:34:13", "url": "https://files.pythonhosted.org/packages/74/b5/cc539bb1b514708becab052f170a01daf6c778e3a476cd17a96d3fc1652b/htp-client-0.1.0.zip" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "9dd727a10750286a15a5eb90745fe733", "sha256": "a97fa8a13fe243b97bf6213c134c739c8bb74228a9c05dee0a81f66950a2daaa" }, "downloads": -1, "filename": "htp-client-0.1.1.zip", "has_sig": false, "md5_digest": "9dd727a10750286a15a5eb90745fe733", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16261, "upload_time": "2016-10-01T00:40:17", "url": "https://files.pythonhosted.org/packages/c5/4c/c3d0c1f72a1f1609fadc1453720229b84594769079339061a2cfd3a21473/htp-client-0.1.1.zip" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "fa564fa32c162589ea47e7bbd24bee87", "sha256": "ef8b406356b0351c85d6e5ebe6b92f81330f36fecf132e2cea8e447be59abc47" }, "downloads": -1, "filename": "htp-client-0.1.2.zip", "has_sig": false, "md5_digest": "fa564fa32c162589ea47e7bbd24bee87", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16624, "upload_time": "2016-10-01T00:50:29", "url": "https://files.pythonhosted.org/packages/16/03/f70f446719178f0a9812a52924df526919bc72ed05e7d40dae8042d0be83/htp-client-0.1.2.zip" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "d45474e5c773a2e0f542ad75440a6332", "sha256": "a5c62ba195027d0cd2c5228971970015f7c1194b5d2879b919373d0cf02449e2" }, "downloads": -1, "filename": "htp-client-0.1.3.zip", "has_sig": false, "md5_digest": "d45474e5c773a2e0f542ad75440a6332", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 159479, "upload_time": "2016-10-01T00:52:08", "url": "https://files.pythonhosted.org/packages/f5/69/20df23400d5f91ad16d4c37644d40658554aaca8c200692302905c6e2f23/htp-client-0.1.3.zip" } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "e02256ce746f22460cb1f0f8451c0035", "sha256": "464fa98fc6187f8151e7bb294cbbbf7adab89529ffa5da75488aa48b520a25e1" }, "downloads": -1, "filename": "htp-client-0.4.3.zip", "has_sig": false, "md5_digest": "e02256ce746f22460cb1f0f8451c0035", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6639118, "upload_time": "2016-10-04T15:46:18", "url": "https://files.pythonhosted.org/packages/69/b6/29074510096654e4268e51950714dd6ba19c2b7497d0dbd27b5fc2241c87/htp-client-0.4.3.zip" } ], "0.5.3": [ { "comment_text": "", "digests": { "md5": "fb33f5216a26ac822d696179fa64fc02", "sha256": "9f3b6369a48fb268d216b7022754a650b55d765d9a259082ffaab3734239a279" }, "downloads": -1, "filename": "htp-client-0.5.3.zip", "has_sig": false, "md5_digest": "fb33f5216a26ac822d696179fa64fc02", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6639956, "upload_time": "2016-10-14T09:37:22", "url": "https://files.pythonhosted.org/packages/52/44/99311099f75a164a8579ffe06c84ef08857805d46b7fbca78b75f0031ea4/htp-client-0.5.3.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "fb33f5216a26ac822d696179fa64fc02", "sha256": "9f3b6369a48fb268d216b7022754a650b55d765d9a259082ffaab3734239a279" }, "downloads": -1, "filename": "htp-client-0.5.3.zip", "has_sig": false, "md5_digest": "fb33f5216a26ac822d696179fa64fc02", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6639956, "upload_time": "2016-10-14T09:37:22", "url": "https://files.pythonhosted.org/packages/52/44/99311099f75a164a8579ffe06c84ef08857805d46b7fbca78b75f0031ea4/htp-client-0.5.3.zip" } ] }