Trigger input commands using messages from multiple users via IRC.
Build the app.
Create a Config JSON to connect to the IRC channel you want to hook up to.
To hook up to a Twitch channel's chat see [Twitch's IRC help page] (http://help.twitch.tv/customer/portal/articles/1302780-twitch-irc). Channel names should be lowercase otherwise you won't join the same IRC channel as the one on your live channel page.
Create a Key Mapping JSON to map words to specific keys.
Run the app.
$ ./gradlew build ./build/libs/crowd-play-<version>.jar
$ java -jar crowd-play.jar --help usage: java -jar crowd-play.jar --config <config json> --keys <keys json> -b,--blank hide setup logging when ready -c,--config <arg> configuration json -h,--help this help -k,--keys <arg> key mapping json -v,--version version number
./config for example JSON files.
If you're using your personal computer, I suggest running it within a virtual machine such as VirtualBox) so that inputs aren't triggered directly on your machine.
You can map words to keyboard keys by defining a key configuration.
Keys should map to [static KeyEvent fields]
(http://docs.oracle.com/javase/7/docs/api/java/awt/event/KeyEvent.html), that is
anything prefixed with
VK_. Example key configurations can be found under
In chat, you can use prefixes to perform different tasks other than single key
presses. For example
hold a will hold the
||Hold a key until the next command is received|
||Continuously press a key until the next command is received|
This project was heavily inspired by TwitchPlaysPokemon.
I'm open to pull requests, issues and any other form of contribution.