PolyMarsDev / Sokobot

A Discord bot that lets you play Sokoban
254 stars 135 forks source link
discord-bot jda jda-bot sokoban

Sokobot

Sokobot is a Discord bot written with JDA that lets you play Sokoban, the classic box-pushing puzzle game.

Screenshots

Level 1 Level 2

Features

Infinite levels

The maps in Sokobot are randomly generated, increasing in difficulty as you progress.

Varied controls

Sokobot has multiple control options to improve the player's experience, including reactions and wasd commands!

Simultaneous games

Thanks to the power of Java HashMaps™️, multiple users can use the bot at the same time without interfering with one another.

Custom prefixes New!

To prevent Sokobot from conflicting with other bots, admins can choose any single-character prefix to preface Sokobot's commands.

Commands

User

Usage

Public host New!

Sokobot is available on top.gg and can be added to your server in one click!

Self-hosting

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.

Compiling

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.

Contributing

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.