A Telegram bot that provides real-time multiplayer games that can be played in any chat.
You can see the bot in action by messaging @inlinegamesbot.
The bot is currently hosted at DOM Cloud.
- Tic-Tac-Toe
- Tic-Tac-Four (@DO97)
- Elephant XO (@DO97)
- Connect Four
- Rock-Paper-Scissors
- Rock-Paper-Scissors-Lizard-Spock (@DO97)
- Russian Roulette
- Checkers
- Pool Checkers
Instructions
Use this button to begin deployment:
Assuming everything was entered correctly your bot should be instantly working - if it's not you should try running php bin/console post-install
inside the app.
You will also want to add Heroku Scheduler addon and set up a hourly task to run the following command to clean up expired games from the database:
php bin/console cron
If this command times out too fast try using something like this instead: php -d max_execution_time=2700 bin/console cron
Instructions
- Install dependencies with
composer install
- Copy
env_variables.example.yaml
intoenv_variables.yaml
and fill out the details - Run the deployment command:
gcloud app deploy --project YOUR-PROJECT-NAME-HERE app.yaml cron.yaml
- Visit
https://YOUR-PROJECT-NAME-HERE.appspot.com/admin?a=post-install
to perform post-install tasks
Instructions
flyctl apps create
flyctl volumes create data --size=1
flyctl secrets set BOT_TOKEN=
flyctl secrets set BOT_USERNAME=
flyctl secrets set BOT_WEBHOOK=YOUR-APP-NAME.fly.dev
flyctl secrets set BOT_SECRET=
- If you want to use web+worker setup you have to replace
web:
line inProcfile
flyctl deploy
Instructions
- Copy
.env.example
into.env
and fill out the details - Upload
.env
andcrontab
to/home/<your-website-name>/config
directory on the FTPcrontab
will require modifications - use full paths to the script - e.g.:/home/<your-website-name>/public_html/bin/console
- Run this deployment task:
source: 'https://github.com/jacklul/inlinegamesbot'
commands:
- 'test -f ../config/.env && cp -f ../config/.env .'
- 'test -f ../config/config.php && cp -f ../config/config.php . || exit 0'
- 'composer install --no-dev --optimize-autoloader --ignore-platform-reqs'
- 'php bin/console install'
- 'php bin/console set'
- 'test -f ../config/crontab && cat ../config/crontab | crontab - || exit 0'
features:
- ssl
- 'php 7.4'
Translations support is implemented but it is not used mainly because translated text would be displayed to both players - this could be problematic in "gaming" groups - people setting language that other player can't understand!
See CONTRIBUTING for more information.
See LICENSE.