# Hosting a Mayhem Party ## Requirements 1. [`rusty-pipe`](https://gogs.inhome.blapointe.com/bel/rusty-pipe) 1. [`mayhem-party`](https://gogs.inhome.blapointe.com/bel/mayhem-party) 1. [`stt`](https://gogs.inhome.blapointe.com/bel/stt) # Clients ## Distribute `rusty-pipe` ```bash rustup target add x86_64-pc-windows-gnu echo windows cargo build --target x86_64-pc-windows-gnu && ls target/x86_64-pc-windows-gnu/release/rusty-pipe.exe echo local cargo install --path ./ ``` Each client needs 1 executable and 1 env file with a unique set of buttons > 10 buttons per player > `go doc key Undef | grep Key | grep -v Undef | wc -l` total (51) The server cannot be a client because math. Maybe a VM on the client as a server would work tho. See `./config.d/rusty-pipe.d` # Server ## `rusty-pipe` `INPUT_NAME=udp INPUT_UDP_PORT=port rusty-pipe | ...` ## `mayhem-party` ### Configs `cd ./config.d/mayhem-party.d/remap.d; bash ./rotate.sh` > rotate anytime via stdin or `pkill -SIGUSR1 -f rotate.sh` ### Binary `... | bash -c 'true; source ./config.d/mayhem-party.d/env.env; mayhem-party'` ## Game Playing Foreground ## `stt` TODO pipe stt detecting relevant strings -> change the `./config.d/mayhem-party.d/remap.d/live.yaml` link -> `SIGUSR1` to `mayhem-party`