Compare commits
No commits in common. "master" and "v0.1.7" have entirely different histories.
37
README.md
37
README.md
|
|
@ -2,7 +2,34 @@
|
||||||
|
|
||||||
# Clients
|
# Clients
|
||||||
|
|
||||||
Send link to `http://localhost:17072`
|
## Distribute `rusty-pipe`
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# https://www.reddit.com/r/rust/comments/5k8uab/crosscompiling_from_ubuntu_to_windows_with_rustup/
|
||||||
|
(
|
||||||
|
echo '[target.x86_64-pc-windows-gnu]'
|
||||||
|
echo 'linker = "x86_64-w64-mingw32-gcc"'
|
||||||
|
echo 'ar = "x86_64-w64-mingw32-gcc-ar"'
|
||||||
|
) >> $HOME/.cargo/config
|
||||||
|
sudo apt install mingw-w64
|
||||||
|
rustup target add x86_64-pc-windows-gnu
|
||||||
|
echo windows
|
||||||
|
cargo build --release --target x86_64-pc-windows-gnu
|
||||||
|
rm target/x86_64-pc-windows-gnu/release/rusty-pipe-signed.exe
|
||||||
|
read -p ".crt? " CERT
|
||||||
|
osslsigncode sign \
|
||||||
|
-certs ${CERT%.crt}.crt -key ${CERT%.crt}.key \
|
||||||
|
-n Rusty-Pipe -i https://whois.home.blapointe.com \
|
||||||
|
-in target/x86_64-pc-windows-gnu/release/rusty-pipe.exe -out target/x86_64-pc-windows-gnu/release/rusty-pipe-signed.exe
|
||||||
|
echo local
|
||||||
|
cargo install --path ./
|
||||||
|
```
|
||||||
|
|
||||||
|
Each client needs 1 executable and 1 config file
|
||||||
|
|
||||||
|
The server cannot be a client because sending, listening, and typing keyboard is bad. Maybe a VM on the client as a server would work tho.
|
||||||
|
|
||||||
|
See `./config.d/rusty-pipe.d`
|
||||||
|
|
||||||
# Server
|
# Server
|
||||||
|
|
||||||
|
|
@ -13,3 +40,11 @@ Send link to `http://localhost:17072`
|
||||||
## Game Playing
|
## Game Playing
|
||||||
|
|
||||||
Foreground
|
Foreground
|
||||||
|
|
||||||
|
#### Discord
|
||||||
|
|
||||||
|
Yep
|
||||||
|
|
||||||
|
#### Dolphin
|
||||||
|
|
||||||
|
Yep
|
||||||
|
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
||||||
#! /bin/bash
|
|
||||||
|
|
||||||
curl -sS http://mp.home.blapointe.com:17071/gm/rpc/elect
|
|
||||||
|
|
@ -1,14 +1,11 @@
|
||||||
export DEBUG=true
|
export DEBUG=true
|
||||||
export MAIN_INTERVAL_DURATION=5ms
|
export MAIN_INTERVAL_DURATION=5ms
|
||||||
|
|
||||||
|
export RAW_UDP=17070
|
||||||
|
|
||||||
export PARSE_V01=true
|
export PARSE_V01=true
|
||||||
cp ./config.d/mayhem-party.d/v01{"",-live}.yaml
|
export V01_CONFIG=./config.d/mayhem-party.d/v01.yaml
|
||||||
export V01_CONFIG=./config.d/mayhem-party.d/v01-live.yaml
|
|
||||||
|
|
||||||
export WRAP_REFRESH_ON_SIGUSR1=true
|
export WRAP_REFRESH_ON_SIGUSR1=true
|
||||||
|
|
||||||
export OUTPUT_KEYBOARD=${OUTPUT_KEYBOARD:-false}
|
export OUTPUT_KEYBOARD=false
|
||||||
|
|
||||||
#export RAW_UDP=17070
|
|
||||||
export RAW_WS_PROXY_URL=http://localhost$(cat config.d/mayhem-party.d/v01-live.yaml | grep -A 10 feedback | grep addr: | awk '{print $NF}')
|
|
||||||
export RAW_WS=17072
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +0,0 @@
|
||||||
#! /bin/bash
|
|
||||||
|
|
||||||
curl \
|
|
||||||
-X POST \
|
|
||||||
-i -sS \
|
|
||||||
http://mp.home.blapointe.com:17071/gm/rpc/fillNonPlayerAliases \
|
|
||||||
-d "[$(cat ./hotwords.txt | tr '\n' ' ')]"
|
|
||||||
|
|
@ -1,16 +0,0 @@
|
||||||
mario
|
|
||||||
luigi
|
|
||||||
peach
|
|
||||||
daisy
|
|
||||||
wario
|
|
||||||
waluigi
|
|
||||||
bowser
|
|
||||||
junior
|
|
||||||
koopa
|
|
||||||
shyguy
|
|
||||||
boo
|
|
||||||
toad
|
|
||||||
toadette
|
|
||||||
minigame
|
|
||||||
win
|
|
||||||
lose
|
|
||||||
|
|
@ -1,173 +0,0 @@
|
||||||
advance
|
|
||||||
aliasing
|
|
||||||
amiibo
|
|
||||||
analoguestick
|
|
||||||
animalcrossing
|
|
||||||
artstyle
|
|
||||||
battleroyal
|
|
||||||
bigbrainacademy
|
|
||||||
birdo
|
|
||||||
bitgenerations
|
|
||||||
bluetoad
|
|
||||||
board
|
|
||||||
boardgame
|
|
||||||
boo
|
|
||||||
boss
|
|
||||||
bowser
|
|
||||||
brainage
|
|
||||||
capcom
|
|
||||||
cardboardcutout
|
|
||||||
cardgame
|
|
||||||
category
|
|
||||||
chainchomp
|
|
||||||
characters
|
|
||||||
charlesmartinet
|
|
||||||
cpus
|
|
||||||
customrobo
|
|
||||||
destructoid
|
|
||||||
diddykong
|
|
||||||
die
|
|
||||||
donkeykong
|
|
||||||
ds
|
|
||||||
editlinks
|
|
||||||
educationalgames
|
|
||||||
eurogamer
|
|
||||||
famicomdetectiveclub
|
|
||||||
fawful
|
|
||||||
firebreath
|
|
||||||
fireemblem
|
|
||||||
fossilfighters
|
|
||||||
gamebooks
|
|
||||||
gameboyadvance
|
|
||||||
gamecube
|
|
||||||
gamemodes
|
|
||||||
gamepro
|
|
||||||
gamerevolution
|
|
||||||
gamespot
|
|
||||||
gametrailers
|
|
||||||
goldensun
|
|
||||||
goomba
|
|
||||||
gr
|
|
||||||
hammerbro
|
|
||||||
healthpoints
|
|
||||||
hepburn
|
|
||||||
homeconsole
|
|
||||||
hudsonsoft
|
|
||||||
ign
|
|
||||||
intellectuallydisabled
|
|
||||||
isbn
|
|
||||||
islandtour
|
|
||||||
items
|
|
||||||
japanese
|
|
||||||
joystiq
|
|
||||||
kamek
|
|
||||||
kidicarus
|
|
||||||
kirby
|
|
||||||
kojikondo
|
|
||||||
koopatroopa
|
|
||||||
kotaku
|
|
||||||
lcdgames
|
|
||||||
leaderboards
|
|
||||||
legosupermario
|
|
||||||
listofvideogamesfeaturingmario
|
|
||||||
luigi
|
|
||||||
mahitoyokota
|
|
||||||
mario
|
|
||||||
marioartist
|
|
||||||
marioclash
|
|
||||||
mariokart
|
|
||||||
mariopaint
|
|
||||||
marioparty
|
|
||||||
mariopartyadvance
|
|
||||||
mariopartyds
|
|
||||||
mariopartylegacy
|
|
||||||
mariopartysuperstars
|
|
||||||
mariopowertennis
|
|
||||||
mattcasamassina
|
|
||||||
mc
|
|
||||||
metroid
|
|
||||||
mii
|
|
||||||
minigame
|
|
||||||
minigames
|
|
||||||
minusworld
|
|
||||||
mother
|
|
||||||
motioncontrol
|
|
||||||
mushroomkingdom
|
|
||||||
ndcube
|
|
||||||
nintendo
|
|
||||||
nintendocomicssystem
|
|
||||||
nintendods
|
|
||||||
nintendolife
|
|
||||||
nintendoswitch
|
|
||||||
nintendowire
|
|
||||||
onlinemultiplayer
|
|
||||||
othermedia
|
|
||||||
pal
|
|
||||||
papermario
|
|
||||||
party
|
|
||||||
partyvideogame
|
|
||||||
pauline
|
|
||||||
peaches
|
|
||||||
pikmin
|
|
||||||
pilotwings
|
|
||||||
piranhaplant
|
|
||||||
pokémon
|
|
||||||
polygon
|
|
||||||
princessdaisy
|
|
||||||
princesspeach
|
|
||||||
professorelvingadd
|
|
||||||
puzzlegames
|
|
||||||
puzzleleague
|
|
||||||
racinggames
|
|
||||||
rainbowroad
|
|
||||||
raymanravingrabbids
|
|
||||||
replayvalue
|
|
||||||
ringmaster
|
|
||||||
rosalina
|
|
||||||
rumblepak
|
|
||||||
ryandavis
|
|
||||||
satoruiwata
|
|
||||||
shigerumiyamoto
|
|
||||||
shyguy
|
|
||||||
siliconera
|
|
||||||
spinyshell
|
|
||||||
splatoon
|
|
||||||
sportsgames
|
|
||||||
starfox
|
|
||||||
starrush
|
|
||||||
storycampaign
|
|
||||||
super
|
|
||||||
supermario
|
|
||||||
supermarioadventures
|
|
||||||
supermarioparty
|
|
||||||
supermariosunshine
|
|
||||||
supermarioworld
|
|
||||||
superprincesspeach
|
|
||||||
superstars
|
|
||||||
takashitezuka
|
|
||||||
techradar
|
|
||||||
thelegendarystarfy
|
|
||||||
thelegendofzelda
|
|
||||||
theverge
|
|
||||||
toad
|
|
||||||
toadette
|
|
||||||
toadsworth
|
|
||||||
touchscreen
|
|
||||||
trustedreviews
|
|
||||||
unofficialmedia
|
|
||||||
variety
|
|
||||||
videogamesportal
|
|
||||||
vivian
|
|
||||||
waluigi
|
|
||||||
wario
|
|
||||||
wars
|
|
||||||
wii
|
|
||||||
wiiparty
|
|
||||||
wiiremote
|
|
||||||
wiiu
|
|
||||||
wiiugamepad
|
|
||||||
yasuhisayamamura
|
|
||||||
yearofluigi
|
|
||||||
yōichikotabe
|
|
||||||
yoshi
|
|
||||||
yoshiakikoizumi
|
|
||||||
|
|
@ -1,173 +0,0 @@
|
||||||
advance
|
|
||||||
aliasing
|
|
||||||
amiibo
|
|
||||||
analoguestick
|
|
||||||
animalcrossing
|
|
||||||
artstyle
|
|
||||||
battleroyal
|
|
||||||
bigbrainacademy
|
|
||||||
birdo
|
|
||||||
bitgenerations
|
|
||||||
bluetoad
|
|
||||||
board
|
|
||||||
boardgame
|
|
||||||
boo
|
|
||||||
boss
|
|
||||||
bowser
|
|
||||||
brainage
|
|
||||||
capcom
|
|
||||||
cardboardcutout
|
|
||||||
cardgame
|
|
||||||
category
|
|
||||||
chainchomp
|
|
||||||
characters
|
|
||||||
charlesmartinet
|
|
||||||
cpus
|
|
||||||
customrobo
|
|
||||||
destructoid
|
|
||||||
diddykong
|
|
||||||
die
|
|
||||||
donkeykong
|
|
||||||
ds
|
|
||||||
editlinks
|
|
||||||
educationalgames
|
|
||||||
eurogamer
|
|
||||||
famicomdetectiveclub
|
|
||||||
fawful
|
|
||||||
firebreath
|
|
||||||
fireemblem
|
|
||||||
fossilfighters
|
|
||||||
gamebooks
|
|
||||||
gameboyadvance
|
|
||||||
gamecube
|
|
||||||
gamemodes
|
|
||||||
gamepro
|
|
||||||
gamerevolution
|
|
||||||
gamespot
|
|
||||||
gametrailers
|
|
||||||
goldensun
|
|
||||||
goomba
|
|
||||||
gr
|
|
||||||
hammerbro
|
|
||||||
healthpoints
|
|
||||||
hepburn
|
|
||||||
homeconsole
|
|
||||||
hudsonsoft
|
|
||||||
ign
|
|
||||||
intellectuallydisabled
|
|
||||||
isbn
|
|
||||||
islandtour
|
|
||||||
items
|
|
||||||
japanese
|
|
||||||
joystiq
|
|
||||||
kamek
|
|
||||||
kidicarus
|
|
||||||
kirby
|
|
||||||
kojikondo
|
|
||||||
koopatroopa
|
|
||||||
kotaku
|
|
||||||
lcdgames
|
|
||||||
leaderboards
|
|
||||||
legosupermario
|
|
||||||
listofvideogamesfeaturingmario
|
|
||||||
luigi
|
|
||||||
mahitoyokota
|
|
||||||
mario
|
|
||||||
marioartist
|
|
||||||
marioclash
|
|
||||||
mariokart
|
|
||||||
mariopaint
|
|
||||||
marioparty
|
|
||||||
mariopartyadvance
|
|
||||||
mariopartyds
|
|
||||||
mariopartylegacy
|
|
||||||
mariopartysuperstars
|
|
||||||
mariopowertennis
|
|
||||||
mattcasamassina
|
|
||||||
mc
|
|
||||||
metroid
|
|
||||||
mii
|
|
||||||
minigame
|
|
||||||
minigames
|
|
||||||
minusworld
|
|
||||||
mother
|
|
||||||
motioncontrol
|
|
||||||
mushroomkingdom
|
|
||||||
ndcube
|
|
||||||
nintendo
|
|
||||||
nintendocomicssystem
|
|
||||||
nintendods
|
|
||||||
nintendolife
|
|
||||||
nintendoswitch
|
|
||||||
nintendowire
|
|
||||||
onlinemultiplayer
|
|
||||||
othermedia
|
|
||||||
pal
|
|
||||||
papermario
|
|
||||||
party
|
|
||||||
partyvideogame
|
|
||||||
pauline
|
|
||||||
peaches
|
|
||||||
pikmin
|
|
||||||
pilotwings
|
|
||||||
piranhaplant
|
|
||||||
pokémon
|
|
||||||
polygon
|
|
||||||
princessdaisy
|
|
||||||
princesspeach
|
|
||||||
professorelvingadd
|
|
||||||
puzzlegames
|
|
||||||
puzzleleague
|
|
||||||
racinggames
|
|
||||||
rainbowroad
|
|
||||||
raymanravingrabbids
|
|
||||||
replayvalue
|
|
||||||
ringmaster
|
|
||||||
rosalina
|
|
||||||
rumblepak
|
|
||||||
ryandavis
|
|
||||||
satoruiwata
|
|
||||||
shigerumiyamoto
|
|
||||||
shyguy
|
|
||||||
siliconera
|
|
||||||
spinyshell
|
|
||||||
splatoon
|
|
||||||
sportsgames
|
|
||||||
starfox
|
|
||||||
starrush
|
|
||||||
storycampaign
|
|
||||||
super
|
|
||||||
supermario
|
|
||||||
supermarioadventures
|
|
||||||
supermarioparty
|
|
||||||
supermariosunshine
|
|
||||||
supermarioworld
|
|
||||||
superprincesspeach
|
|
||||||
superstars
|
|
||||||
takashitezuka
|
|
||||||
techradar
|
|
||||||
thelegendarystarfy
|
|
||||||
thelegendofzelda
|
|
||||||
theverge
|
|
||||||
toad
|
|
||||||
toadette
|
|
||||||
toadsworth
|
|
||||||
touchscreen
|
|
||||||
trustedreviews
|
|
||||||
unofficialmedia
|
|
||||||
variety
|
|
||||||
videogamesportal
|
|
||||||
vivian
|
|
||||||
waluigi
|
|
||||||
wario
|
|
||||||
wars
|
|
||||||
wii
|
|
||||||
wiiparty
|
|
||||||
wiiremote
|
|
||||||
wiiu
|
|
||||||
wiiugamepad
|
|
||||||
yasuhisayamamura
|
|
||||||
yearofluigi
|
|
||||||
yōichikotabe
|
|
||||||
yoshi
|
|
||||||
yoshiakikoizumi
|
|
||||||
|
|
@ -1,7 +0,0 @@
|
||||||
#! /bin/bash
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
bash ./shuffle.sh
|
|
||||||
bash ./fill.sh
|
|
||||||
bash ./players.sh
|
|
||||||
|
|
@ -1,2 +0,0 @@
|
||||||
#! /bin/bash
|
|
||||||
curl -sS -i http://mp.home.blapointe.com:17071/
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
||||||
#! /bin/bash
|
|
||||||
curl -sS -i http://mp.home.blapointe.com:17071/gm/rpc/shuffle
|
|
||||||
bash ./players.sh
|
|
||||||
|
|
@ -1,64 +0,0 @@
|
||||||
feedback:
|
|
||||||
addr: :17071
|
|
||||||
ttsurl: http://localhost:15002
|
|
||||||
users: {}
|
|
||||||
players:
|
|
||||||
- transformation:
|
|
||||||
"1": "1" # a
|
|
||||||
"2": "2" # b
|
|
||||||
"3": "3" # x
|
|
||||||
"4": "4" # y
|
|
||||||
"5": "5" # start
|
|
||||||
w: "6" # stickUp
|
|
||||||
a: "7" # stickLeft
|
|
||||||
s: "8" # stickDown
|
|
||||||
d: "9" # stickRight
|
|
||||||
e: "0" # r
|
|
||||||
q: "-" # l
|
|
||||||
- transformation:
|
|
||||||
"1": "q" # a
|
|
||||||
"2": "w" # b
|
|
||||||
"3": "e" # x
|
|
||||||
"4": "r" # y
|
|
||||||
"5": " " # "t" # start
|
|
||||||
w: "y" # stickUp
|
|
||||||
a: "u" # stickLeft
|
|
||||||
s: "i" # stickDown
|
|
||||||
d: "o" # stickRight
|
|
||||||
e: "p" # r
|
|
||||||
q: "=" # l
|
|
||||||
- transformation:
|
|
||||||
"1": "a" # a
|
|
||||||
"2": "s" # b
|
|
||||||
"3": "d" # x
|
|
||||||
"4": "f" # y
|
|
||||||
"5": " " # "g" # start
|
|
||||||
w: "h" # stickUp
|
|
||||||
a: "j" # stickLeft
|
|
||||||
s: "k" # stickDown
|
|
||||||
d: "l" # stickRight
|
|
||||||
e: ";" # r
|
|
||||||
q: "g" # l
|
|
||||||
- transformation:
|
|
||||||
"1": "z" # a
|
|
||||||
"2": "x" # b
|
|
||||||
"3": "c" # x
|
|
||||||
"4": "v" # y
|
|
||||||
"5": " " # "b" # start
|
|
||||||
w: "n" # stickUp
|
|
||||||
a: "m" # stickLeft
|
|
||||||
s: "," # stickDown
|
|
||||||
d: "." # stickRight
|
|
||||||
e: "/" # r
|
|
||||||
q: "b" # l
|
|
||||||
quiet: false
|
|
||||||
broadcast:
|
|
||||||
message: "#early access"
|
|
||||||
gm:
|
|
||||||
hotwords:
|
|
||||||
star:
|
|
||||||
call: tap
|
|
||||||
args: ['<']
|
|
||||||
coin:
|
|
||||||
call: tap
|
|
||||||
args: ['>']
|
|
||||||
|
|
@ -1,64 +1,41 @@
|
||||||
feedback:
|
feedback:
|
||||||
addr: :17071
|
addr: :17071
|
||||||
ttsurl: http://localhost:15002
|
ttsurl: http://localhost:15002
|
||||||
users: {}
|
users:
|
||||||
|
bel:
|
||||||
|
meta:
|
||||||
|
lasttsms: 1680371007738
|
||||||
|
lastlag: 0
|
||||||
|
state:
|
||||||
|
player: 1
|
||||||
|
message: ""
|
||||||
|
gm:
|
||||||
|
alias: ""
|
||||||
|
lastalias: ""
|
||||||
|
vote: ""
|
||||||
|
zach:
|
||||||
|
meta:
|
||||||
|
lasttsms: 1679978514018
|
||||||
|
lastlag: 0
|
||||||
|
state:
|
||||||
|
player: 0
|
||||||
|
message: ""
|
||||||
|
gm:
|
||||||
|
alias: ""
|
||||||
|
lastalias: ""
|
||||||
|
vote: ""
|
||||||
players:
|
players:
|
||||||
- transformation:
|
- transformation:
|
||||||
"1": "1" # a
|
"1": "5"
|
||||||
"2": "2" # b
|
"2": "6"
|
||||||
"3": "3" # x
|
"3": "7"
|
||||||
"4": "4" # y
|
"4": "8"
|
||||||
"5": "5" # start
|
a: f
|
||||||
w: "6" # stickUp
|
d: h
|
||||||
a: "7" # stickLeft
|
e: "y"
|
||||||
s: "8" # stickDown
|
q: r
|
||||||
d: "9" # stickRight
|
s: g
|
||||||
e: "0" # r
|
w: t
|
||||||
q: "-" # l
|
|
||||||
- transformation:
|
|
||||||
"1": "q" # a
|
|
||||||
"2": "w" # b
|
|
||||||
"3": "e" # x
|
|
||||||
"4": "r" # y
|
|
||||||
"5": " " # "t" # start
|
|
||||||
w: "y" # stickUp
|
|
||||||
a: "u" # stickLeft
|
|
||||||
s: "i" # stickDown
|
|
||||||
d: "o" # stickRight
|
|
||||||
e: "p" # r
|
|
||||||
q: "=" # l
|
|
||||||
- transformation:
|
|
||||||
"1": "a" # a
|
|
||||||
"2": "s" # b
|
|
||||||
"3": "d" # x
|
|
||||||
"4": "f" # y
|
|
||||||
"5": " " # "g" # start
|
|
||||||
w: "h" # stickUp
|
|
||||||
a: "j" # stickLeft
|
|
||||||
s: "k" # stickDown
|
|
||||||
d: "l" # stickRight
|
|
||||||
e: ";" # r
|
|
||||||
q: "g" # l
|
|
||||||
- transformation:
|
|
||||||
"1": "z" # a
|
|
||||||
"2": "x" # b
|
|
||||||
"3": "c" # x
|
|
||||||
"4": "v" # y
|
|
||||||
"5": " " # "b" # start
|
|
||||||
w: "n" # stickUp
|
|
||||||
a: "m" # stickLeft
|
|
||||||
s: "," # stickDown
|
|
||||||
d: "." # stickRight
|
|
||||||
e: "/" # r
|
|
||||||
q: "b" # l
|
|
||||||
quiet: false
|
quiet: false
|
||||||
broadcast:
|
broadcast:
|
||||||
message: "#early access"
|
message: ""
|
||||||
gm:
|
|
||||||
hotwords:
|
|
||||||
star:
|
|
||||||
call: tap
|
|
||||||
args: ['<']
|
|
||||||
coin:
|
|
||||||
call: tap
|
|
||||||
args: ['>']
|
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,6 @@ streams:
|
||||||
b: '2'
|
b: '2'
|
||||||
x: '3'
|
x: '3'
|
||||||
y: '4'
|
y: '4'
|
||||||
start: '5'
|
|
||||||
output:
|
output:
|
||||||
debug: false
|
debug: false
|
||||||
engine:
|
engine:
|
||||||
|
|
@ -22,7 +22,6 @@ streams:
|
||||||
b: '2'
|
b: '2'
|
||||||
x: '3'
|
x: '3'
|
||||||
y: '4'
|
y: '4'
|
||||||
start: '5'
|
|
||||||
output:
|
output:
|
||||||
debug: false
|
debug: false
|
||||||
engine:
|
engine:
|
||||||
|
|
@ -22,7 +22,6 @@ streams:
|
||||||
b: '2'
|
b: '2'
|
||||||
x: '3'
|
x: '3'
|
||||||
y: '4'
|
y: '4'
|
||||||
start: '5'
|
|
||||||
output:
|
output:
|
||||||
debug: false
|
debug: false
|
||||||
engine:
|
engine:
|
||||||
|
|
@ -22,7 +22,6 @@ streams:
|
||||||
b: '2'
|
b: '2'
|
||||||
x: '3'
|
x: '3'
|
||||||
y: '4'
|
y: '4'
|
||||||
start: '5'
|
|
||||||
output:
|
output:
|
||||||
debug: false
|
debug: false
|
||||||
engine:
|
engine:
|
||||||
|
|
@ -22,7 +22,6 @@ streams:
|
||||||
b: '2'
|
b: '2'
|
||||||
x: '3'
|
x: '3'
|
||||||
y: '4'
|
y: '4'
|
||||||
start: '5'
|
|
||||||
output:
|
output:
|
||||||
debug: false
|
debug: false
|
||||||
engine:
|
engine:
|
||||||
|
|
@ -22,7 +22,6 @@ streams:
|
||||||
b: '2'
|
b: '2'
|
||||||
x: '3'
|
x: '3'
|
||||||
y: '4'
|
y: '4'
|
||||||
start: '5'
|
|
||||||
output:
|
output:
|
||||||
debug: false
|
debug: false
|
||||||
engine:
|
engine:
|
||||||
|
|
@ -22,7 +22,6 @@ streams:
|
||||||
b: '2'
|
b: '2'
|
||||||
x: '3'
|
x: '3'
|
||||||
y: '4'
|
y: '4'
|
||||||
start: '5'
|
|
||||||
output:
|
output:
|
||||||
debug: false
|
debug: false
|
||||||
engine:
|
engine:
|
||||||
|
|
@ -1,16 +0,0 @@
|
||||||
#! /bin/bash
|
|
||||||
|
|
||||||
echo source ./package.sh
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
cd ${based%/*}
|
|
||||||
tar_f=${based##*/}.tar
|
|
||||||
rm -f "$tar_f"
|
|
||||||
tar -cf "$tar_f" ${based##*/}
|
|
||||||
cleanup() { rm "$tar_f"; }
|
|
||||||
trap cleanup EXIT
|
|
||||||
|
|
||||||
scp_scratch.sh "$tar_f" squeaky2x3@192.168.0.86:/volume1/video/FTP/
|
|
||||||
ssh_scratch.sh ls /volume1/video/FTP/"$tar_f"
|
|
||||||
|
|
||||||
|
|
@ -1,20 +0,0 @@
|
||||||
#! /bin/bash
|
|
||||||
|
|
||||||
test -f ./rusty-pipe-signed.exe || exit 1
|
|
||||||
|
|
||||||
based=$(mktemp -d)
|
|
||||||
for f in ./*.yaml; do
|
|
||||||
d="$based/${f%.yaml}.d"
|
|
||||||
mkdir -p "$d"
|
|
||||||
cp "$f" "$d"/rusty-pipe.yaml
|
|
||||||
cp "$(realpath ./rusty-pipe-signed.exe)" "$d"/rusty-pipe-windows.exe
|
|
||||||
cp "$(realpath ./rusty-pipe-notwindows.bin)" "$d"/rusty-pipe-notwindows.bin
|
|
||||||
done
|
|
||||||
pushd "$based"
|
|
||||||
for d in ./*/; do
|
|
||||||
zip -r -7 ${d%/}.zip $d
|
|
||||||
rm -rf "$d"
|
|
||||||
done
|
|
||||||
popd
|
|
||||||
echo "$based"
|
|
||||||
du -sh "$based"/*
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
../../../rusty-pipe.d/target/release/rusty-pipe
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
../../../rusty-pipe.d/target/x86_64-pc-windows-gnu/release/rusty-pipe-signed.exe
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
Subproject commit b89ed62036e8c40575f9aa996f3aad4729ca9f80
|
Subproject commit e864f2a9f58463b4119606f196257a40b480ac17
|
||||||
|
|
@ -1 +1 @@
|
||||||
Subproject commit 31bdb6d92e40103c4be000f46ebcf5d2e2ff5920
|
Subproject commit 37566c4413b106d402fa61492d66bd87671d0ac5
|
||||||
|
|
@ -1 +1 @@
|
||||||
Subproject commit b4d3e5a27cbdecfd70f6601d7b51ab9a07a045f7
|
Subproject commit 63fe8e7e9e1c68fd3f284bac6666ae5e5f970b6b
|
||||||
61
server.sh
61
server.sh
|
|
@ -36,22 +36,11 @@ log() {
|
||||||
}
|
}
|
||||||
|
|
||||||
_discord() {
|
_discord() {
|
||||||
(
|
read -p "pls start discord"
|
||||||
export HOME="$PWD/mnt.d/discord.d"
|
|
||||||
if ! snap list discord; then
|
|
||||||
sudo snap install discord
|
|
||||||
fi
|
|
||||||
(
|
|
||||||
exec snap run discord
|
|
||||||
) &> /tmp/mayhem-party.discord.log &
|
|
||||||
disown
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
_dolphin() {
|
_dolphin() {
|
||||||
echo
|
|
||||||
read -p "pls start dolphin"
|
read -p "pls start dolphin"
|
||||||
echo
|
|
||||||
}
|
}
|
||||||
|
|
||||||
_mayhem_party() {
|
_mayhem_party() {
|
||||||
|
|
@ -92,39 +81,31 @@ _stt() {
|
||||||
| awk "{print \$NF}" \
|
| awk "{print \$NF}" \
|
||||||
| head -n 1
|
| head -n 1
|
||||||
)
|
)
|
||||||
if ! test -f /etc/asound.conf || ! grep "$device" /etc/asound.conf; then
|
(
|
||||||
(
|
echo "pcm.pulse_monitor {"
|
||||||
echo "pcm.pulse_monitor {"
|
echo " type pulse"
|
||||||
echo " type pulse"
|
echo " device $device"
|
||||||
echo " device $device"
|
echo "}"
|
||||||
echo "}"
|
echo "ctl.pulse_monitor {"
|
||||||
echo "ctl.pulse_monitor {"
|
echo " type pulse"
|
||||||
echo " type pulse"
|
echo " device $device"
|
||||||
echo " device $device"
|
echo "}"
|
||||||
echo "}"
|
) | sudo tee /etc/asound.conf
|
||||||
) | sudo tee /etc/asound.conf
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -n "$PACTL_RESET" ]; then
|
for i in $(pactl list short modules | grep secret | cut -f1); do
|
||||||
for i in $(pactl list short modules | grep secret | cut -f1); do
|
pactl unload-module $i
|
||||||
pactl unload-module $i
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
name='my_secret_sink'
|
|
||||||
for i in 1 2; do
|
|
||||||
if ! pactl list | grep -q $name$i; then
|
|
||||||
pactl load-module module-null-sink sink_name=$name$i channels=1
|
|
||||||
pactl load-module module-remap-source master=$name$i.monitor source_name=shared-$name$i source_properties="device.description=shared-$name$i"
|
|
||||||
mic_name="$(pactl list | grep -A 100 Name:.$name$i.monitor | grep device.description.=. | head -n 1 | sed 's/.* = //' | tr -d '"') Monitor"
|
|
||||||
fi
|
|
||||||
done
|
done
|
||||||
|
name='my_secret_sink'
|
||||||
|
if ! pactl list | grep -q $name; then
|
||||||
|
pactl load-module module-null-sink sink_name=$name channels=1
|
||||||
|
pactl load-module module-remap-source master=$name.monitor source_name=shared-$name source_properties="device.description=shared-$name" #channels=1
|
||||||
|
mic_name="$(pactl list | grep -A 100 Name:.$name.monitor | grep device.description.=. | head -n 1 | sed 's/.* = //' | tr -d '"') Monitor"
|
||||||
|
fi
|
||||||
|
|
||||||
echo
|
read -p "pavucontrol to change input to $mic_name, ok? "
|
||||||
read -p "pavucontrol to change input to $name, ok? "
|
|
||||||
echo
|
|
||||||
log launching stt
|
log launching stt
|
||||||
(
|
(
|
||||||
export HOTWORDS=../../config.d/mayhem-party.d/v01-live.yaml@.users[].state.gm.alias,.gm.hotwords.KEYS
|
export HOTWORDS=../../config.d/mayhem-party.d/v01.yaml@.users[].state.gm.alias
|
||||||
export MIC_TIMEOUT=2
|
export MIC_TIMEOUT=2
|
||||||
export URL=http://localhost:17071/gm/rpc/broadcastSomeoneSaidAlias?message={{hotword}}
|
export URL=http://localhost:17071/gm/rpc/broadcastSomeoneSaidAlias?message={{hotword}}
|
||||||
export HEADERS=say="Eye herd {{hotword}}"
|
export HEADERS=say="Eye herd {{hotword}}"
|
||||||
|
|
|
||||||
48
todo.yaml
48
todo.yaml
|
|
@ -1,9 +1,21 @@
|
||||||
todo:
|
todo:
|
||||||
- instructions how to spin up with pulseaudio GUI
|
- trigger a vote
|
||||||
- rpc fill aliases UI
|
- trigger an election
|
||||||
- rpc elect UI
|
- trigger a shuffle for init
|
||||||
- display election results
|
- assign aliases
|
||||||
|
- display vote progress
|
||||||
- trigger dolphin pause via query param mapping to a button that is a pause hotkey
|
- trigger dolphin pause via query param mapping to a button that is a pause hotkey
|
||||||
|
- todo: rotation triggers
|
||||||
|
subtasks:
|
||||||
|
- ui for election start, election votes, election end stuff
|
||||||
|
- todo: stdin
|
||||||
|
subtasks:
|
||||||
|
- minigame end
|
||||||
|
- todo: voice recognition of hotwords to vote who dun it
|
||||||
|
subtasks:
|
||||||
|
- random word from cur wikipedia page
|
||||||
|
- only spectators have hotwords and must get a player to speak it
|
||||||
|
- tribunal to vote who said it
|
||||||
scheduled: []
|
scheduled: []
|
||||||
done:
|
done:
|
||||||
- todo: sticky keyboard input mode for enable/disable explicitly
|
- todo: sticky keyboard input mode for enable/disable explicitly
|
||||||
|
|
@ -163,31 +175,3 @@ done:
|
||||||
ts: Fri Mar 31 22:45:58 MDT 2023
|
ts: Fri Mar 31 22:45:58 MDT 2023
|
||||||
- todo: audio pipes; can i send discord output to a pipe for stt?
|
- todo: audio pipes; can i send discord output to a pipe for stt?
|
||||||
ts: Sat Apr 1 11:20:27 MDT 2023
|
ts: Sat Apr 1 11:20:27 MDT 2023
|
||||||
- todo: public gui script
|
|
||||||
ts: Sun Apr 2 11:50:42 MDT 2023
|
|
||||||
- todo: trigger a vote
|
|
||||||
ts: Sun Apr 2 11:50:42 MDT 2023
|
|
||||||
- todo: display vote progress
|
|
||||||
ts: Sun Apr 2 11:50:42 MDT 2023
|
|
||||||
- todo: audio dolhpin+tts, video dolphin to OBS to discord share
|
|
||||||
ts: Sun Apr 2 12:36:51 MDT 2023
|
|
||||||
- todo: server gui script
|
|
||||||
ts: Sun Apr 2 12:36:51 MDT 2023
|
|
||||||
- todo: trigger an election
|
|
||||||
ts: Sun Apr 2 12:36:51 MDT 2023
|
|
||||||
- todo: trigger a shuffle for init
|
|
||||||
ts: Sun Apr 2 12:36:51 MDT 2023
|
|
||||||
- todo: assign aliases
|
|
||||||
ts: Sun Apr 2 12:36:51 MDT 2023
|
|
||||||
- todo: rotation triggers
|
|
||||||
subtasks:
|
|
||||||
- ui for election start, election votes, election end stuff
|
|
||||||
- todo: stdin
|
|
||||||
subtasks:
|
|
||||||
- minigame end
|
|
||||||
- todo: voice recognition of hotwords to vote who dun it
|
|
||||||
subtasks:
|
|
||||||
- random word from cur wikipedia page
|
|
||||||
- only spectators have hotwords and must get a player to speak it
|
|
||||||
- tribunal to vote who said it
|
|
||||||
ts: Sun Apr 2 12:36:51 MDT 2023
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue