PHPackages                             konstantin-kuklin/stream-defense-bot - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. konstantin-kuklin/stream-defense-bot

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

konstantin-kuklin/stream-defense-bot
====================================

0.1.1(8y ago)05PHPPHP ^7.1.3

Since Mar 19Pushed 8y ago1 watchersCompare

[ Source](https://github.com/KonstantinKuklin/StreamDefenseBot)[ Packagist](https://packagist.org/packages/konstantin-kuklin/stream-defense-bot)[ RSS](/packages/konstantin-kuklin-stream-defense-bot/feed)WikiDiscussions master Synced yesterday

READMEChangelogDependencies (12)Versions (3)Used By (0)

StreamDefenseBot - One bot to rule them all
===========================================

[](#streamdefensebot---one-bot-to-rule-them-all)

StreamDefenseBot helps you to manage your accounts in hard fights of [streamdefense.com](http://streamdefense.com)

[![Build Status](https://camo.githubusercontent.com/4a37d8ca9c727ccab6a022285676411a41e498e77257e3d4d7743dc3cbf849be/68747470733a2f2f7472617669732d63692e6f72672f4b6f6e7374616e74696e4b756b6c696e2f53747265616d446566656e7365426f742e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/KonstantinKuklin/StreamDefenseBot)[![Minimum PHP Version](https://camo.githubusercontent.com/03ce977719db84e99595edfd7abc337ebd7d37ca57d1d0dc21a2254d58052155/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f6b6f6e7374616e74696e2d6b756b6c696e2f73747265616d2d646566656e73652d626f742e737667)](https://php.net/)[![License](https://camo.githubusercontent.com/8cbfc9a97f041aaa7846a88a5ead1c375f16750a28b2b4e07544f4f148ced64c/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f6b6f6e7374616e74696e2d6b756b6c696e2f73747265616d2d646566656e73652d626f742e737667)](https://github.com/KonstantinKuklin/StreamDefenseBot/blob/master/LICENSE)

[![bot screen](https://raw.githubusercontent.com/KonstantinKuklin/StreamDefenseBot/master/bot_screen.png)](https://raw.githubusercontent.com/KonstantinKuklin/StreamDefenseBot/master/bot_screen.png)

Installation / Usage
--------------------

[](#installation--usage)

Install PHP 7.1.3 or above. [PHP.net](http://php.net/manual/en/install.php).

Download SdBot.phar file [here](https://raw.githubusercontent.com/KonstantinKuklin/StreamDefenseBot/master/sdbot.phar).

Update the bot to the latest version:

```
php sdbot.phar self-update

```

Create `config.yaml` file near the sdbot.phar file. File signature example with descriptions /config/config.yml.dst

That is it! The bot is ready:

```
php sdbot.phar run

```

Documentation
-------------

[](#documentation)

Bot knows about 4 message types:

- message from bot `owner` (set owner in config.yml)
- message from bot `leader` (set follow\_to in config.yml)
- message from anybody else (always will be ignored)
- special messages from TTDbot

Owner
-----

[](#owner)

You can't become a bot owner except by config.yml. You have additional bot command which are always starts from special char `$`:

- Follow command variations allowed if the bot not yet following somebody:
    - `$follow` all the bots for whom you own the owner will repeat your messages
    - `@bot1 $follow` the concrete `bot1` will repeat your messages if you are the owner for it
    - `@bot1 $follow @somebody` the concrete `bot1` will start following `somebody` if your are the owner of `bot1`
    - `group$follow` each bot in `group` will start following you if your are his owner (so if in chat 2 different bot have group OP, but different owners - behavior will be different, I hope I was clear here in explanation)
    - `group$follow @somebody` same as previous, but will follow `somebody`
- Unfollow command has the same syntax
- `$init` all your bots init their game by writing `!class` message from `config.yml`

Game commands:

- You have all grants as a leader plus !leave for bot.
- If your twitch nick has owner+leader grants when you !leave the bot will leave too.

Leader
------

[](#leader)

As a leader of some bots you can:

- `$unfollow` to stop following all bots from you
- `@bot $unfollow` to stop following you for concrete `bot`
- `group$unfollow` each bot in `group` stop following you if you are his leader

All followed you bots will repeat that commands:

- !t !train
- !p !pd !sp
- !1 !2 !3 !4 !5 !6 !7 !8 !9 !10 !11 !12
- !a !altar
- !fill
- ! - simple ping command

Also you are able to give an order:

- `@bot1 !a` just `bot1` will repeat `!a` if you are his leader
- `group!a` each bot in `group` repeat `!a` if you are his leader

The allowed order list is all commands from repeat section plus:

- !map1 !map2 !map3 !map4 !map5 !map6 !map7 !map8 !map9
- !archer !bard !frostmage !firemage !rogue !alchemist
- !hireshade !hireicelo !hireadara !hiremoor !hiremolan !hiregunnar !hirejubal !hirecortez
- !mfollow !unfollow
- !mfill !ma !mt !m1 !m2 !m3 !m4 !m5 !m6 !m7 !m8 !m9 !m10 !m11 !m12
- !mp !mpd !msp

Afterword
---------

[](#afterword)

It may not stable in some cases, because was written like in hackathon style without spending lot times. So feel free to open bug issues or ask questions! Have a good game!

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity49

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~2 days

Total

2

Last Release

2974d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/14bf2bc19526615387e37a0e04bb5110ec344663a6bc8e95c3b9947cd5b9808c?d=identicon)[KonstantinKuklin](/maintainers/KonstantinKuklin)

---

Top Contributors

[![KonstantinKuklin](https://avatars.githubusercontent.com/u/573586?v=4)](https://github.com/KonstantinKuklin "KonstantinKuklin (9 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/konstantin-kuklin-stream-defense-bot/health.svg)

```
[![Health](https://phpackages.com/badges/konstantin-kuklin-stream-defense-bot/health.svg)](https://phpackages.com/packages/konstantin-kuklin-stream-defense-bot)
```

###  Alternatives

[shopware/platform

The Shopware e-commerce core

3.3k1.5M3](/packages/shopware-platform)[prestashop/prestashop

PrestaShop is an Open Source e-commerce platform, committed to providing the best shopping cart experience for both merchants and customers.

9.0k15.4k](/packages/prestashop-prestashop)[phpro/soap-client

A general purpose SoapClient library

8885.6M46](/packages/phpro-soap-client)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

595.2M386](/packages/shopware-core)[ec-cube/ec-cube

EC-CUBE EC open platform.

78527.0k1](/packages/ec-cube-ec-cube)[shlinkio/shlink

A self-hosted and PHP-based URL shortener application with CLI and REST interfaces

4.8k4.3k](/packages/shlinkio-shlink)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
