|
1 |
| -# RoboStats Bot |
2 |
| -(Readme is a work in progress) |
| 1 | +# RoboStats |
| 2 | +A discord bot for retrieving information regarding robootics competitions and teams. |
3 | 3 |
|
4 |
| -Welcome to the official repository of the RoboStats Discord Bot! This community-driven project is designed to serve as a replacement for the currently non-functional Vexibot project. |
5 |
| -> Want a place to chat with the devs and other users? Join our [discord server](https://discord.gg/pCHr7XZUTj). |
6 |
| -
|
7 |
| -## License |
8 |
| -This project is licensed under the MIT license. Check [LICENSE](https://github.com/LemLib/V5-Sim-//blob/main/LICENSE) for more details. |
| 4 | +[![server badge][]][server link] [![invite badge][]][invite link] [![build badge][]][build link] |
9 | 5 |
|
10 | 6 | ## Features
|
11 |
| -- The ability to look up information about teams. |
12 |
| -- Integration with [VRC Data Analysis](https://vrc-data-analysis.com/) to pull a team's [TrueSkill](https://www.microsoft.com/en-us/research/project/trueskill-ranking-system/) value and rank. |
| 7 | + |
| 8 | +The following features are currently supported: |
| 9 | +- The ability to look up information about teams on RobotEvents for all program types (basic info, awards, event attendance). |
| 10 | +- Integration with [VRC Data Analysis](https://vrc-data-analysis.com/) to pull a VRC team's [TrueSkill](https://www.microsoft.com/en-us/research/project/trueskill-ranking-system/) value and rank. |
13 | 11 | - The ability to look up articles on the [Purdue Sigbots wiki](wiki.purduesigbots.com/).
|
| 12 | +- The ability to predict VRC match results, again using [VRC Data Analysis](https://vrc-data-analysis.com/). |
14 | 13 |
|
15 | 14 | Additionally, the following features are in-development or planned:
|
| 15 | +- The ability to view information about specific events. |
16 | 16 | - The ability to perform lookups in documentation for other LemLib projects.
|
17 | 17 | - The ability to look up specific VRC game rules (and potentially Q&A responses).
|
18 |
| -- The ability to predict match results, again using VRC Data Analysis. |
19 | 18 |
|
20 |
| -## FAQ |
21 |
| -_**1. Is this VRC legal?**_ |
22 |
| -Yes. |
| 19 | +## Development |
| 20 | + |
| 21 | +This bot is written in [Rust](https://www.rust-lang.org/) using the [serenity framework](https://docs.rs/serenity/) for interacting with the Discord API. It is deployed through [Shuttle](https://shuttle.rs/). |
| 22 | + |
| 23 | +### Prerequisites |
| 24 | +- Git |
| 25 | +- `rustc` and a valid Rust toolchain for your platform's target. |
| 26 | +- Command line of your choice. |
| 27 | +- A [RobotEvents v2 API bearer token](https://www.robotevents.com/api/v2/). |
| 28 | +- A discord application token. |
| 29 | + |
| 30 | +Tokens should be placed in `Secrets.toml` and `Secrets.dev.toml` files in the repository's root directory. Example file: |
| 31 | + |
| 32 | +```toml |
| 33 | +DISCORD_TOKEN = '' |
| 34 | +ROBOTEVENTS_TOKEN = '' |
| 35 | +``` |
| 36 | + |
| 37 | +> `Secrets.dev.toml` will be used for local deployments while `Secrets.toml` will be used for deployments to the actual shuttle service. |
| 38 | +
|
| 39 | +### Testing the bot on a local instance |
| 40 | +This will temporarily deploy the bot using your local machine as a server for testing purposes: |
| 41 | +```sh |
| 42 | +cargo shuttle run |
| 43 | +``` |
| 44 | + |
| 45 | +### Deploying the bot to Shuttle |
| 46 | +This will deploy the bot to a shuttle project. Doing this will require a shuttle account login and a valid project name in [Shuttle.toml](./Shuttle.toml) |
| 47 | +```sh |
| 48 | +cargo shuttle deploy |
| 49 | +``` |
| 50 | + |
| 51 | +## License |
| 52 | +This project is licensed under the MIT license. Check [LICENSE](https://github.com/LemLib/V5-Sim-//blob/main/LICENSE) for more details. |
23 | 53 |
|
24 | 54 | ## Documentation
|
25 | 55 |
|
26 | 56 | ## Contributing
|
27 | 57 |
|
28 | 58 | ## Code of Conduct
|
29 | 59 | See the [Code of Conduct](https://github.com/LemLib/robostats/blob/main/.github/CODE_OF_CONDUCT.md) on how to behave like an adult.
|
| 60 | + |
| 61 | +[server badge]: https://img.shields.io/badge/discord-join-green?serverId=1094397185141002340&label=Discord%20Server&logo=discord&logoColor=e6edf3&labelColor=30363d&color=2f81f7&style=for-the-badge |
| 62 | +[server link]: https://discord.gg/yXPytbW9TC |
| 63 | +[invite badge]: https://img.shields.io/badge/Invite-238636?style=for-the-badge&label=Invite%20Bot&labelColor=30363d&color=238636&logo=discord&logoColor=e6edf3 |
| 64 | +[invite link]: https://discord.com/api/oauth2/authorize?client_id=1181453354677850172&permissions=414464657472&scope=bot+applications.commands |
| 65 | +[build badge]: https://img.shields.io/github/actions/workflow/status/LemLib/robostats/rust.yml?style=for-the-badge&labelColor=30363d&logo=rust&logoColor=e6edf3 |
| 66 | +[build link]: https://github.com/LemLib/robostats/actions |
0 commit comments