{"id":16865444,"url":"https://github.com/pocc/bosspiles","last_synced_at":"2025-03-18T17:37:36.630Z","repository":{"id":94867830,"uuid":"266198791","full_name":"pocc/bosspiles","owner":"pocc","description":"A discord bot to automate bosspiles on the BGA bosspile server https://en.boardgamearena.com/group?id=2047909.","archived":false,"fork":false,"pushed_at":"2022-02-10T10:09:17.000Z","size":304,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-24T21:12:00.597Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pocc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-05-22T20:10:52.000Z","updated_at":"2024-11-07T21:26:51.000Z","dependencies_parsed_at":"2023-07-29T14:45:50.155Z","dependency_job_id":null,"html_url":"https://github.com/pocc/bosspiles","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pocc%2Fbosspiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pocc%2Fbosspiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pocc%2Fbosspiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pocc%2Fbosspiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pocc","download_url":"https://codeload.github.com/pocc/bosspiles/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244271577,"owners_count":20426592,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-13T14:47:06.884Z","updated_at":"2025-03-18T17:37:36.591Z","avatar_url":"https://github.com/pocc.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# bosspiles\n\nA discord bot for the BGA bosspiles group: https://en.boardgamearena.com/group?id=2047909. \n\n## What are bosspiles?\n\nThe Bosspile is a discord ladder system designed for 2 player games.\n\n### Rules [work in progress]\n\n* Active players will challenge an inactive player above them to a 1v1 game set with 2 moves per day timer\n* This challenge is an attempt at climbing above the defending player in the pile\n* The winner will be active after the game ends and the loser will be inactive (meaning they will need to win as the challenged player before they can attempt climbing higher)\n* The highest player in the ladder is the boss and will win diamonds for successfully defeating a challenge\n* When the boss is defeated, that player drops one extra place for each diamond they won as the boss\n* After 5 :small_orange_diamond: they are changed into a :large_orange_diamond: and when losing that boss drops ALL the way to the bottom of the pile\n* But the :large_orange_diamond: s do not count on future runs as the boss\nThe lowest player on the pile is always active\n* They can challenge the next lowest player provided that player is not already active and attempting to climb\n* They must wait for that match to end and can challenge the loser immediately\n\n### Requirements for a bosspile\n\nEach pile needs a seperate channel for different games and those will be created when 3+ players express interest in that game.\n\n### Contact\n\nHave fun and feel free to private message turtler7 on BGA if you have any questions or want your favorite game to have its own pile!\n\n## Setup\n\nRun this on a VPS with autotools:\n\n```bash\n$ make install\n$ make run\n```\n\n## Test\n\n```bash\n$ make test\n```\n\n## Usage\n\n*Content in usage and examples is the same as the help document when you type `$$`.*\n\nThis bot needs to manage its own pinned message. If it finds a pinned bosspile,\nit will repin it as its own message. A pinned bosspile must have a crown and climber.\nReset this bot's bosspile by deleting its pinned message, ensuring there is a bosspile\npinned by a person and then run `$$p`.\n\n\n### Available Commands\n\nShorten a command to the first letter like `$$w` for `$$ win`.\n\n**win**: Updates the bosspile with a win by player 1 over player 2 \n\n    win \u003cplayer 1\u003e \u003cplayer 2\u003e\n               \n**new**: Add a player to the bottom of the bosspile \n\n    new \u003cplayer\u003e\n\n**edit**: Change the line for a player to the new one. \n\n    edit \"\u003cnew player line\u003e\"\n\n**remove**: Remove a player from the bosspile\n    \n    remove \u003cplayer\u003e\n\n**active**: Change the status of a player to active or inactive (timer icon)\n    \n    active \u003cplayer\u003e \u003cTrue|False\u003e\n\n**print**: Prints the current bosspile as a new message.\n    \n    print\n\n\n## Examples\n\nYour discord name is `Alice` in these examples, all of which change the bosspile.\n\n### win\nYou won against Bob. (You don't need to include his name because of players with ⏫):\n    \n    $$ win Alice\n\nExpected Output includes result, as well as all new matches:\n\n    Alice defeats Bob\n    Frank ⚔ Georgia\n    Harriett ⚔ Ian\n\n### new\nYou want to add player Charlie:\n    \n    $$ new Charlie\n    \nExpected Output:\n    \n    Charlie has been added.\n\n### edit\nYou want to edit player \"Bob\" to add a large blue diamond and climbing\n\n    $$ edit \"🔷Bob⏫\"\n\nExpected Output:\n\n    Bob ➡️ 🔷Bob⏫\n\n### remove\n\nYou want to remove player Dan:\n    \n    $$ remove Dan\n    \nExpected Output:\n\n    Dan has been removed.\n\n### active\n    \nYou want to make Eddie inactive and put a timer before his name:\n\n    $$ active Eddie false\n\nExpected Output:\n\n    Eddie is now inactive.\n\n## Contributing/Bugs\n\nMake a github issue with your bug/feature, and PR as appropriate.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpocc%2Fbosspiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpocc%2Fbosspiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpocc%2Fbosspiles/lists"}