This commit is contained in:
Sakimori 2020-12-27 18:07:31 -05:00
commit 0cc9b9f9a2
3 changed files with 45 additions and 42 deletions

4
.github/FUNDING.yml vendored
View File

@ -1,9 +1,9 @@
# These are supported funding model platforms # These are supported funding model platforms
github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2] github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
patreon: # Replace with a single Patreon username patreon: sixteen
open_collective: # Replace with a single Open Collective username open_collective: # Replace with a single Open Collective username
ko_fi: sixteen ko_fi: #sixteen
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username liberapay: # Replace with a single Liberapay username

View File

@ -5,51 +5,54 @@ blaseball, blaseball, is back! in an unofficial capacity.
custom players, custom teams, custom leagues (that last one is coming soon™) all in discord! custom players, custom teams, custom leagues (that last one is coming soon™) all in discord!
we've also got things like player idolization, custom team creation, easy setup for your teams to play against each other, and quick pick-up games featuring any players you like, all powered by this bot and onomancer.
accepting pull requests, check the issues for to-dos.
we've also got things like player idolization, easy setup for quick pick-up games featuring any players you like (including those not on a team), and onomancer lookup ## commands: (everything here is case sensitive, and can be prefixed with either m; or m!)
accepting pull requests, check the issues for to-dos ### team commands:
## commands: (literally everything here is case sensitive, and can be prefixed with either m; or m!)
- m;idolize [name]
- records any name as your idol, used elsewhere. there's a limit of 70 characters. that should be *plenty*.
- m;showidol
- displays your idol's name and stars in a nice discord embed.
- m;showplayer [name]
- displays any name's stars in a similar embed.
- m;setupgame
- begins setting up a 3-inning pickup game. pitchers, lineups, and team names are given during the setup process by anyone able to type in that channel. idols are easily signed up via emoji during the process. the game will start automatically after setup.
- m;saveteam - m;saveteam
- to save an entire team, send this command at the top of a list, with lines seperated by newlines (shift+enter in discord, or copy+paste from notepad) - saves a team to the database allowing it to be used for games. send this command at the top of a list, with entries seperated by new lines (shift+enter in discord, or copy+paste from notepad).
- the first line of the list is your team's name (cannot contain emoji) - the first line of the list is your team's name (cannot contain emoji).
- the second is your team's slogan - the second line is your team's icon and slogan, this should begin with an emoji followed by a space, followed by a short slogan.
- the rest of the lines are your players' names - the next lines are your batters' names in the order you want them to appear in your lineup, lineups can contain any number of batters between 1 and 12.
- the last player is designated your pitcher - the final line is your pitcher's name.
- if you did it correctly, you'll get a team embed with a prompt to confirm. hit the 👍 and it'll be saved. - if you did it correctly, you'll get a team embed with a prompt to confirm. hit the 👍 and it'll be saved.
- m;showteam [name] - m;showteam [name]
- you can view any saved team with this command - shows information about any saved team.
- m;showallteams - m;showallteams
- this displays a paginated list of all teams available for `startgame` - shows a paginated list of all teams available for games which can be scrolled through.
- m;searchteams [searchterm] - m;searchteams [searchterm]
- displays paginated list of all teams whose names contain `searchterm` - shows a paginated list of all teams whose names contain the given search term.
- m;startgame ### player commands:
- to start a game with premade teams, use this command at the top of a list as above - m;showplayer [name]
- the first line is the away team's name - displays any name's stars, there's a limit of 70 characters. that should be *plenty*. note: if you want to lookup a lot of different players you can do it on onomancer instead of spamming this command a bunch and clogging up discord: https://onomancer.sibr.dev/reflect
- the second is the home team's name - m;idolize [name]
- the third is the number of innings, which must be greater than 2. - records any name as your idol, mostly for fun but also can be used for pickup games.
- m;showidol
- m;credit - displays your idol's name and stars.
- shows artist credit for matteo's avatar.
### game commands:
- m;startgame
- starts a game with premade teams made using saveteam, use this command at the top of a list followed by each of these in a new line:
- the away team's name.
- the home team's name.
- and finally, optionally, the number of innings, which must be greater than 2 and less than 31. if not included it will default to 9.
- m;setupgame
- begins setting up a 3-inning pickup game. pitchers, lineups, and team names are given during the setup process by anyone. idols are easily signed up via emoji during the process. the game will start automatically after the setup is completed.
### other commands:
- m;help [command]
- shows the instuctions from here for given command. if no command is provided, it will instead provide a list of all of the commands that instructions can be provided for.
- m;credit
- shows artist credit for matteo's avatar.
- m;roman [number] - m;roman [number]
- converts any natural number less than 4,000,000 into roman numerals. this one is just for fun. - converts any natural number less than 4,000,000 into roman numerals, this one is just for fun.
## patreon!
these folks are helping me a *ton* via patreon, and i cannot possibly thank them enough:
- Ale Humano

View File

@ -361,7 +361,7 @@ async def start_game(channel):
async def setup_game(channel, owner, newgame): async def setup_game(channel, owner, newgame):
newgame.owner = owner newgame.owner = owner
await channel.send(f"Game sucessfully created!\nStart any commands for this game with `{newgame.name}` so I know who's talking about what.") await channel.send(f"Game sucessfully created!\nStart any commands for this game with `{newgame.name}` so we know who's talking about what.")
await asyncio.sleep(1) await asyncio.sleep(1)
await channel.send("Who's pitching for the away team?") await channel.send("Who's pitching for the away team?")
@ -401,7 +401,7 @@ async def setup_game(channel, owner, newgame):
await channel.send("Uh.") await channel.send("Uh.")
#pitchers assigned! #pitchers assigned!
team_join_message = await channel.send(f"""Now, the lineups! I need somewhere between 1 and 12 batters. Cloning helps a lot with this sort of thing. team_join_message = await channel.send(f"""Now, the lineups! We need somewhere between 1 and 12 batters. Cloning helps a lot with this sort of thing.
React to this message with 🔼 to have your idol join the away team, or 🔽 to have them join the home team. React to this message with 🔼 to have your idol join the away team, or 🔽 to have them join the home team.
You can also enter names like you did for the pitchers, with a slight difference: `away [name]` or `home [name]` instead of just the name. You can also enter names like you did for the pitchers, with a slight difference: `away [name]` or `home [name]` instead of just the name.
@ -705,7 +705,7 @@ async def save_team_batch(message, command):
await message.channel.send("Message received. Pumping brakes, turning this car around. Try again, chief.") await message.channel.send("Message received. Pumping brakes, turning this car around. Try again, chief.")
return return
except asyncio.TimeoutError: except asyncio.TimeoutError:
await message.channel.send("Look, I don't have all day. 20 seconds is long enough, right? Try again.") await message.channel.send("Look, we don't have all day. 20 seconds is long enough, right? Try again.")
return return
#except: #except:
#await message.channel.send("uh.") #await message.channel.send("uh.")