{ "info": { "author": "Phil S. Stein", "author_email": "phil.s.stein@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "========\nHanabIRC\n========\n\nAn IRC bot that organizes and plays the card game Hanabi.\n\nInstalling and running the hanabot:\n-----------------------------------\nTo run the game on your own channel do the following:\n\nDownload and install hanabIRC and dependencies:\n\n> sudo pip install hanabIRC\n\nGenerate a default configuration file:\n\n> sudo hanabIRC --makeconf > /etc/hanabIRC.conf\n\nEdit the default configuration:\n\n> vi /etc/hanabIRC.conf\n\nRun the bot:\n\n> hanabIRC\n\nYou may want to run the bot in screen or tmux.\n\n> tmux \n> hanabIRC 2>&1 | tee hanabot.log\n> ^B-d # to unattach from tmux.\n\nHistory\n=======\n* 2014-06-16 - Version 1.2.05 - devoice on !delete\n* 2014-04-06 - Version 1.2.04 - bug fix for unsolvable 5 deck\n* 2014-04-06 - Version 1.2.03 - Give a warning when playing with solvable_rainbow_5 option as the shuffle may be stacked. \n* 2014-04-06 - Version 1.2.02 - Minor phrasing change. Added 'solvable_rainbow_5' option. If True, do not let bottom of deck be a rainbow 1, 2, 3, or 4 when playing a rainbow_5 game.\n* 2014-03-04 - Version 1.2.01 - use notice to chan when replacing nicks in an active game. \n* 2014-03-04 - Version 1.2 - hanbot tracks nicks in the game and replaces them as needed. \n* 2014-02-11 - Version 1.1.04 - Sort !hands in player turn order instead of alphabetically. \n* 2014-01-07 - Version 1.1.03 - bugfix for new !last syntax.\n* 2014-01-06 - Version 1.1.02 - added optional 3rd arg to !last, a pattern. If given only display game strings that contain that pattern.\n* 2013-11-29 - Version 1.1.0001 - Stop abuse of !last by Chank.\n* 2013-11-04 - Version 1.1.0 - Bold the Table line in addition to underline to make it stand out.\n* 2013-10-31 - Version 1.0.99 - Revert auto-join, was causing odd effects. Use light cyan for blue color. \n* 2013-10-30 - Version 1.0.98 - Use mIRC black color for all color backgrounds. Easier for non-black-background clients.\n* 2013-10-29 - Version 1.0.97 - Fixed, hopefully, the notice about no hints remaining. \n* 2013-10-29 - Version 1.0.96 - Do not add obviously unplayed games to game history log.\n* 2013-10-29 - Version 1.0.95 - Devoice on game end. Devoice on !leave always.\n* 2013-10-29 - Version 1.0.94 - !Join will start a new game if there is not one in the channel already. voice/devoice fixes.\n\t\t\t\t\t\t\t Disable !die command.\n* 2013-10-29 - Version 1.0.93 - Remove !die command. Voice players in game. Add note when thre are no hints remaining.\n* 2013-10-01 - Version 1.0.91 - Fix another speling error.\n* 2013-09-17 - Version 1.0.9 - Fix speling error.\n* 2013-09-09 - Version 1.0.8 - Do not show whose turn it is if not in game. \n* 2013-09-09 - Version 1.0.7 - Do not allow someone to both watch and play the game!\n* 2013-09-07 - Version 1.0.6 - Reformat date in !last listing\n - Added !watch command so people can observer the game (see the hands as they change)\n use !leave to leave the game as an observer.\n* 2013-09-06 - Version 1.0.5 - added rate limiting to bot output. should ease the bot-kicked-from-flooding problem.\n - added timestamps to game history listing\n* 2013-08-03 - Version 1.0.4 - Added support for showing all hints given by doing \"!hints all\". \n* 2013-08-02 - Version 1.0.3 - End game with zero points when all storms flipped.\n* 2013-07-25 - Version 1.0.2 - Show game type in !last output. \n* 2013-07-21 - Version 1.0.1 - Show !last only to nick that requested it in order to not ping people in channel. \n* 2013-07-21 - Version 1.0.0 - Same as 0.2.5\n* 2013-07-21 - Version 0.2.50 - !last n command added: show results for the last N games. History is persistant across restarts. \n* 2013-07-18 - Version 0.2.40 - Can have multiple home channels now.\n* 2013-07-17 - Version 0.2.35 - Make repeat_backs == False the default.\n* 2013-07-13 - Version 0.2.34 - Tweak to !hints to fix oddness when used before game starts.\n* 2013-07-13 - Version 0.2.33 - New command !hints shows all hints given to the user during current game.\n* 2013-07-12 - Version 0.2.32 - Handle card back wrap around correctly in A-Z case.\n* 2013-07-12 - Version 0.2.31 - added game options. one option so far: repeat_backs. If False use A-Z for card backs, else A-E\n* 2013-07-07 - Version 0.2.3 - Fix empty command (\"!\") error. \n* 2013-06-21 - Version 0.2.2 - Fix underline control code - 0x1f instead of 0x15. Also use lighter blue and green to make a little more visible.\n* 2013-06-20 - Version 0.2.1 - Underline \"Table\" line to make it stand out a bit more.\n* 2013-05-31 - Version 0.2.0 - Fix misspeling.\n* 2013-05-28 - Version 0.1.25 - Do not show turn or hands privately on last turn. \n* 2013-05-28 - Version 0.1.24 - Show turns remaining on table once deck is empty.\n* 2013-05-28 - Version 0.1.23 - Make rainbow card display consistant: \"RNBW\".\n* 2013-05-27 - Version 0.1.22 - Only people in the game can !stop it. \n* 2013-05-27 - Version 0.1.21 - More rainbow updates. Delete a game at !stop.\n* 2013-05-27 - Version 0.1.20 - Rainbow updates. Display chan name in !games. Correctly delete a game when it's over. \n* 2013-05-27 - Version 0.1.19 - Bug fix for rainbow game.\n* 2013-05-24 - Version 0.1.18 - Fix partial colors given as clues handling. Order hands alphabetically. \n* 2013-05-24 - Version 0.1.17 - Allow \"invalid\" hints to be given and count them as a real hint.\n* 2013-05-22 - Version 0.1.16 - Fix (again) fencepost error of last turns at game end. Count hint as a turn in last turns.\n* 2013-05-15 - Version 0.1.15 - Show hands of all players at end of game.\n* 2013-05-14 - Version 0.1.14 - Fix fencepost error when computing end of game due to end of deck.\n* 2013-05-07 - Version 0.1.13 - Use /msg for table display soas to not disturb people in the channel, but not playing. Sort table and discard piles in the same way.\n* 2013-04-18 - Version 0.1.12 - Bug fix. \n* 2013-04-17 - Version 0.1.11 - Bug fix in !game and !games command.\n* 2013-04-17 - Version 0.1.10 - Display table in same compact form as the discard pile. New command !stop immediately stops and scores the game. Only players can !stop a game. \n* 2013-04-12 - Version 0.1.9 - Dicard pile display is more compact. Can add 5 or 10 rainbow cards (instead of just 5). Post-game action bug squashed. Do not prefix # to channel in !new if it is already there.\n* 2013-04-12 - Version 0.1.8 - sort discard pile, notes, and storms. \n* 2013-03-11 - Version 0.1.7 - notify channel works. If \"notify_channel\" given in the configuration file, that channel will get a notification when a new game begins (regardless of which channel it starts in.) \n* 2013-03-10 - Version 0.1.6 - everyone now gets one more turn when the deck empties before the game ends.\n* 2013-02-24 - Version 0.1.5 - added support for hanabot talking to all players during move. Current player notified when it is his/her turn. Fixed bug that caused Hanabot to ignore privmsgs. Everyone now gets notified of all player's hands at the start of a turn.\n* 2013-02-14 - Version 0.1.4 - added support for rainbow cards. When starting a game, add \"rainbow\" to start command to use them: \"!start rainbow\".\n* 2013-02-14 \n\t- Added mutli-channel support. Hanbot can now run in multiple channels, keeping track of multiple games.\n\t- Enforce one person per game\n\t- Use NOTICE instead of prvimsg to display text inline to user/channel.\n* 2013-02-13 - Interface updates after user feedback.\n* 2013-02-13 - Initial creation. (See git logs for history.)\n\nTODO:\n-----\n- do not print hint to channel if given in a PRIVMSG\n- add total time game took at end game?\n- keep stats?\n- add user-configured color to the bot\n- add !replace command to replace people in-game\n- add actual rules text\n- make sure when a player leaves, they do not still get PMs.\n- remove redundant need to specify player name in !hint command in two player games.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/philsstein/hanabIRC", "keywords": null, "license": "FreeBSD License", "maintainer": null, "maintainer_email": null, "name": "HanabIRC", "package_url": "https://pypi.org/project/HanabIRC/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/HanabIRC/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/philsstein/hanabIRC" }, "release_url": "https://pypi.org/project/HanabIRC/1.2.05/", "requires_dist": null, "requires_python": null, "summary": "An IRC bot that organizes and plays the card game Hanabi.", "version": "1.2.05" }, "last_serial": 1126963, "releases": { "1.0.96": [ { "comment_text": "", "digests": { "md5": "391630597c64a55f177028a6fea23bf3", "sha256": "3d70df73f1ef11afb09a9ee08c21ed362dc898dfc0e8c02bd67da11fb5984923" }, "downloads": -1, "filename": "HanabIRC-1.0.96.tar.gz", "has_sig": false, "md5_digest": "391630597c64a55f177028a6fea23bf3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25405, "upload_time": "2013-10-30T00:11:19", "url": "https://files.pythonhosted.org/packages/c8/f4/66b0e5c12fe23ab2e0296952128d0fd4127f980e36204cda03b639928eea/HanabIRC-1.0.96.tar.gz" } ], "1.0.97": [ { "comment_text": "", "digests": { "md5": "40a19e3a02c0bf0937f16db1e1868e6f", "sha256": "44f4a9f00f57bb6dfcad4926b89e3b487c2be9f92699b401ddafd34ae553515f" }, "downloads": -1, "filename": "HanabIRC-1.0.97.tar.gz", "has_sig": false, "md5_digest": "40a19e3a02c0bf0937f16db1e1868e6f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25465, "upload_time": "2013-10-30T00:44:15", "url": "https://files.pythonhosted.org/packages/89/59/f1b2ef65494a467a20beee4fe9a9b7bc9e5867a6edc1f5cc35aec523030c/HanabIRC-1.0.97.tar.gz" } ], "1.0.98": [ { "comment_text": "", "digests": { "md5": "acd2de2d4b6c3130bab6fb609a336b11", "sha256": "0b15b17f55d810b11919584f5c9bc7b9a45348c06ef71d411f3c21eceb912c2a" }, "downloads": -1, "filename": "HanabIRC-1.0.98.tar.gz", "has_sig": false, "md5_digest": "acd2de2d4b6c3130bab6fb609a336b11", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25603, "upload_time": "2013-10-30T17:35:23", "url": "https://files.pythonhosted.org/packages/44/87/2b377565fe20ac4f18fd70323a42e8cd2cfde4e927157f84dd936a19e6fa/HanabIRC-1.0.98.tar.gz" } ], "1.0.99": [ { "comment_text": "", "digests": { "md5": "4b20403bddc7554f1b222fe81c09e593", "sha256": "ad50e5bf00505c5eb0d77cfae4beca99cf49e3b752da573efc36adf735c6ee10" }, "downloads": -1, "filename": "HanabIRC-1.0.99.tar.gz", "has_sig": false, "md5_digest": "4b20403bddc7554f1b222fe81c09e593", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25704, "upload_time": "2013-10-31T18:21:30", "url": "https://files.pythonhosted.org/packages/6d/7d/0601c4523c253669a796e884d15afb3be1d553ce59c3beed816b85f0e0b1/HanabIRC-1.0.99.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "70ee5a5789190ade661970e7c15b4a88", "sha256": "c6aa4d502e55afb760b6440b677634dee4a307690e62f3864699c631641a99d9" }, "downloads": -1, "filename": "HanabIRC-1.1.0.tar.gz", "has_sig": false, "md5_digest": "70ee5a5789190ade661970e7c15b4a88", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25774, "upload_time": "2013-11-04T16:17:41", "url": "https://files.pythonhosted.org/packages/c4/f9/5a789a2947c657346729c6c7f74528062f3139a87e3cacb40fb8d8107bc2/HanabIRC-1.1.0.tar.gz" } ], "1.1.0001": [ { "comment_text": "", "digests": { "md5": "e75e65722293171480c21c04d35c2edf", "sha256": "149d66c16ae8e4e4542b11365800534bc04732e5445ea3d5f505ff56b862abb3" }, "downloads": -1, "filename": "HanabIRC-1.1.0001.tar.gz", "has_sig": false, "md5_digest": "e75e65722293171480c21c04d35c2edf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23792, "upload_time": "2013-11-29T17:55:15", "url": "https://files.pythonhosted.org/packages/b6/42/5c5b9d80f33eddabc07a35d4640304d65cfc4ff0bbeb1c2fe4788a105acc/HanabIRC-1.1.0001.tar.gz" } ], "1.1.02": [ { "comment_text": "", "digests": { "md5": "efa9425d1337d3d211887208f65ee2bd", "sha256": "7962ff21680a751fd742cbed21e70ff355a0e7539e3be5b1c8e1be7f50074360" }, "downloads": -1, "filename": "HanabIRC-1.1.02.tar.gz", "has_sig": false, "md5_digest": "efa9425d1337d3d211887208f65ee2bd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26272, "upload_time": "2014-01-07T16:32:58", "url": "https://files.pythonhosted.org/packages/7d/b1/51183acf4ab1b4dde1f6be325d60226abd8ef93201e32acb97ee80decfdc/HanabIRC-1.1.02.tar.gz" } ], "1.1.03": [ { "comment_text": "", "digests": { "md5": "1774f1bba16b6b9fa96a43cc87c825c4", "sha256": "5a0bcec7fc194a1dd4419c71764b52af7639aad603e223bcad1d3ebf182b76cf" }, "downloads": -1, "filename": "HanabIRC-1.1.03.tar.gz", "has_sig": false, "md5_digest": "1774f1bba16b6b9fa96a43cc87c825c4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26333, "upload_time": "2014-01-07T17:01:49", "url": "https://files.pythonhosted.org/packages/d6/c7/1f515ede17dd5d87cf17bbe607839dad68879cecbd2ceb987e51a51dccef/HanabIRC-1.1.03.tar.gz" } ], "1.1.04": [ { "comment_text": "", "digests": { "md5": "434ebcb99345f5c7e5acb4cb9f29a422", "sha256": "dc82fee71c12e50bca398ba4101b676a372e559768c61a7b4539d815a5a68b44" }, "downloads": -1, "filename": "HanabIRC-1.1.04.tar.gz", "has_sig": false, "md5_digest": "434ebcb99345f5c7e5acb4cb9f29a422", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26384, "upload_time": "2014-02-11T21:41:54", "url": "https://files.pythonhosted.org/packages/38/b8/0888997795ae6b9fceceb0bc3d15c2dedf924907409f2eb048e9b9efcf4f/HanabIRC-1.1.04.tar.gz" } ], "1.2": [ { "comment_text": "", "digests": { "md5": "d479b4dd317a2b97ffd794eb09bd2604", "sha256": "3fa334981e055588ad1e29bf9def12f4abe5c43995be7d024a76e7ddcf932ba9" }, "downloads": -1, "filename": "HanabIRC-1.2.tar.gz", "has_sig": false, "md5_digest": "d479b4dd317a2b97ffd794eb09bd2604", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26645, "upload_time": "2014-03-04T18:59:23", "url": "https://files.pythonhosted.org/packages/9e/04/0380df904e914243ccd598e646ee70700bd2f33dd70d0afd05b9891d20ce/HanabIRC-1.2.tar.gz" } ], "1.2.01": [ { "comment_text": "", "digests": { "md5": "00ea01421adad11d1111ec08b51f8083", "sha256": "ab4c1f5712b7afff2a6de6171c41840e72551eb530b332b5f9761947764cdd27" }, "downloads": -1, "filename": "HanabIRC-1.2.01.tar.gz", "has_sig": false, "md5_digest": "00ea01421adad11d1111ec08b51f8083", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26723, "upload_time": "2014-03-04T19:38:25", "url": "https://files.pythonhosted.org/packages/1f/7f/7de1849fce87f69f719459352c183350a82b2669183076c14e12938f95a3/HanabIRC-1.2.01.tar.gz" } ], "1.2.02": [ { "comment_text": "", "digests": { "md5": "8f0f39ceeca5fe763a170b7f2fd9c654", "sha256": "1665158073fd9f6166f379a1fc4a75946618f8ff1398f3014e4866ddb652c4d1" }, "downloads": -1, "filename": "HanabIRC-1.2.02.tar.gz", "has_sig": false, "md5_digest": "8f0f39ceeca5fe763a170b7f2fd9c654", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27052, "upload_time": "2014-04-08T20:28:49", "url": "https://files.pythonhosted.org/packages/ca/5a/eabe7967c45c78c18c84e344f6e535983153716a92377ba78ff77fd01130/HanabIRC-1.2.02.tar.gz" } ], "1.2.03": [ { "comment_text": "", "digests": { "md5": "5c0e5ed8453c793f3f2726bb5e902e0c", "sha256": "7d7bce5dc5d89f6b7f7add6b282301802fb207fbf9a9db49aa9d36200db0bf4c" }, "downloads": -1, "filename": "HanabIRC-1.2.03.tar.gz", "has_sig": false, "md5_digest": "5c0e5ed8453c793f3f2726bb5e902e0c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27260, "upload_time": "2014-04-09T02:58:58", "url": "https://files.pythonhosted.org/packages/89/c1/6cb14b9af1ae8fb4d7dabca8c5052d21f94fa689ccbc466285c58fbb93e9/HanabIRC-1.2.03.tar.gz" } ], "1.2.04": [ { "comment_text": "", "digests": { "md5": "0cdeaa03eefcb11d7638946cc41ca98f", "sha256": "7b2ab5be4c8c1c451d795101d7f0812e0306c717cab4fda6230675bb5ac7f008" }, "downloads": -1, "filename": "HanabIRC-1.2.04.tar.gz", "has_sig": false, "md5_digest": "0cdeaa03eefcb11d7638946cc41ca98f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24914, "upload_time": "2014-04-16T15:18:21", "url": "https://files.pythonhosted.org/packages/84/49/9a670865232dcc7b1c6db5d6fca51fe416c51b802b8570e2b4a62ee8a18d/HanabIRC-1.2.04.tar.gz" } ], "1.2.05": [ { "comment_text": "", "digests": { "md5": "6d7b06ae4ee7cd066d2a44c65da573fc", "sha256": "0879225e3f02e8a8de6f291d170cd544b15915d28d3d1dec5ce1b4452cc408e6" }, "downloads": -1, "filename": "HanabIRC-1.2.05.tar.gz", "has_sig": false, "md5_digest": "6d7b06ae4ee7cd066d2a44c65da573fc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27335, "upload_time": "2014-06-16T21:19:29", "url": "https://files.pythonhosted.org/packages/d0/19/ca1fc6c01be11f8cc489b635c2d0db1b1ad752066a809b2cabfcf1b167d6/HanabIRC-1.2.05.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6d7b06ae4ee7cd066d2a44c65da573fc", "sha256": "0879225e3f02e8a8de6f291d170cd544b15915d28d3d1dec5ce1b4452cc408e6" }, "downloads": -1, "filename": "HanabIRC-1.2.05.tar.gz", "has_sig": false, "md5_digest": "6d7b06ae4ee7cd066d2a44c65da573fc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27335, "upload_time": "2014-06-16T21:19:29", "url": "https://files.pythonhosted.org/packages/d0/19/ca1fc6c01be11f8cc489b635c2d0db1b1ad752066a809b2cabfcf1b167d6/HanabIRC-1.2.05.tar.gz" } ] }