67 lines
2.5 KiB
Markdown
67 lines
2.5 KiB
Markdown
# copper
|
|
|
|
Copper is a smart MultiPlayerPiano bot written in Rust.
|
|
|
|
It features Austin's (nitsua) midi parser and player, which is meant for high-performance and to be able to parse black midis.
|
|
|
|
## Warning
|
|
Clone this repository with `git clone --recursive https://git.sad.ovh/sophie/copper`.
|
|
|
|
## Features
|
|
- 2 billion note per second parser with all modern midi features supported
|
|
- Full economy system written using `sqlx` and postgres
|
|
- Lots of generic MPP bot features such as following, moving between rooms, et cetera
|
|
- Suggestions via NTFY
|
|
- Very good argument system
|
|
|
|
## Todo
|
|
- No todo :3
|
|
|
|
## Running
|
|
1. Requirements: Rust Nightly, should be automatically used when you do cargo run.
|
|
2. `cargo install`
|
|
3. Add config.hocon, example:
|
|
```hocon
|
|
database {
|
|
url: "postgres://user:pass@ip:port/database"
|
|
}
|
|
|
|
commands {
|
|
prefix: "r"
|
|
name: "Copper"
|
|
|
|
copyparty: "https://files.sad.ovh/public/midis"
|
|
|
|
playlists {
|
|
chill_music: [
|
|
"https://files.sad.ovh/public/midis/A/autumn_leaves2-G85.mid",
|
|
"https://files.sad.ovh/public/midis/B/blue_bossa-kenny-dorham_dz.mid",
|
|
"https://files.sad.ovh/public/midis/J/Jobim_Desafinado.mid",
|
|
"https://files.sad.ovh/public/midis/J/Jobim_Wave.mid",
|
|
"https://files.sad.ovh/public/midis/J/Jobim_corcovado.mid",
|
|
"https://files.sad.ovh/public/midis/I/ipanema.mid",
|
|
"https://files.sad.ovh/public/midis/J/Jobim_Meditacao2.mid",
|
|
"https://files.sad.ovh/public/midis/S/so_what.mid",
|
|
"https://files.sad.ovh/public/midis/T/take_five2-Gb176-davebrubeck.mid",
|
|
"https://files.sad.ovh/public/midis/M/My_Funny_Valentine.mid",
|
|
"https://files.sad.ovh/public/midis/A/all_the_things_you_are-2_dm.mid",
|
|
"https://files.sad.ovh/public/midis/J/Johnny_Mathis_Misty.mid",
|
|
"https://files.sad.ovh/public/midis/H/HOWARD.Fly me to the moon.mid",
|
|
"https://files.sad.ovh/public/midis/R/Ray Charles - Georgia On My Mind.mid",
|
|
"https://files.sad.ovh/public/midis/B/blue_in_green.mid",
|
|
"https://files.sad.ovh/public/midis/S/Stella-By-Starlight-1.mid",
|
|
"https://files.sad.ovh/public/midis/F/FITZGERALD.Summertime K.mid",
|
|
"https://files.sad.ovh/public/midis/M/Moon River.mid",
|
|
"https://files.sad.ovh/public/midis/A/autumn_in_new_york2-Bb84.mid",
|
|
"https://files.sad.ovh/public/midis/J/Jobim_One_Note_Samba.mid",
|
|
]
|
|
}
|
|
}
|
|
|
|
client {
|
|
token: "token"
|
|
ws: "wss://mppclone.com"
|
|
room: "cheez"
|
|
}
|
|
```
|
|
4. Simple as that, `cargo run`.
|