Sokobot is a Discord bot written with JDA that lets you play Sokoban, the classic box-pushing puzzle game.
The maps in Sokobot are randomly generated, increasing in difficulty as you progress.
Sokobot has multiple control options to improve the player's experience, including reactions and wasd commands!
Thanks to the power of Java HashMaps™️, multiple users can use the bot at the same time without interfering with one another.
To prevent Sokobot from conflicting with other bots, admins can choose any single-character prefix to preface Sokobot's commands.
!play
can be used to start a game if you are not currently in one.!stop
can be used to stop your active game at any time.!info
provides some useful details about the bot and rules of the game.
!prefix [character]
can be used to change the prefix the bot responds to in the current server.
Sokobot is available on top.gg and can be added to your server in one click!
Grab the latest .jar or build it yourself. Then, create a Discord Bot Application here and paste the bot token into token.txt
. Then, ensure the two files are in the same directory and run the .jar file.
Please note, this bot differs a bit from the public bot. For example, there is no voting rewards (custom emotes are always unlocked), no leaderboard, no progress saving, etc.
Install Java 8 JDK and Gradle.
In the root folder of the project, execute gradlew shadowJar
.
The compiled .jar file will be located in build/libs
.
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change. Feel free to create a fork and use the code for any noncommercial purposes.