Releases: colcrunch/killbot
v2.1
New Features
- Thera Alerts Extension - Notifies you when a thera hole opens in a system/constellation/region that you are interested in.
- Jabber Ping Relay Extension - Posts jabber pings to a discord channel.
- EVE News Extension - Posts news, patch notes, and dev blogs to a discord channel.
Improvements
- SDE Notifications - If the version of the Static Data Export that you have installed is out of date, the bot will notify you (the owner of the application registered on discord) up to once per day.
- Improve Cache Efficiency by caching ids using Tickers and Names, as well as caching just about all ESI requests.
- Admin command added to return cache stats for debugging (or fun)
- Added commands and checks to allow bot and guild owners to add bot admins on a guild-by-guild basis. This does not have much use at the moment, but it is a feature that is there for future development.
- Removed discord.py from requirements.txt to make installing requirements faster.
- THIS IS STILL NEEDED. USE
python3 -m pip install -U git+https://github.com/Rapptz/discord.py@rewrite
TO INSTALL IT.
- THIS IS STILL NEEDED. USE
- Can tell LinkListener extension to ignore a channel. (Have to be owner/admin)
Fixes
- Fixed eve-who links in info embeds.
Updating
If you are coming from v2.0 or v2.0.1, you will have to update discord.py as there have been some breaking changes that the bot now requires. (python3 -m pip install -U git+https://github.com/Rapptz/discord.py@rewrite
) You will also have to create/update the bot database, which you can do by running python3 launcher.py migrate
. (if you are on ubuntu 16.04 use python3.6
instead)
Installation
Installation instructions remain the same as previous versions.
v2.0.1
Patch with minor fixes
Fixes
- Threat command now accounts for the event that someone has not lost or has not destroyed anything in the current month.
- Fixes to setup command/launcher.py
Installation
Major Dependencies
- python3.6
- f-strings are not supported on earlier versions.
- discord.py 1.0.0a0 (rewrite)
- This branch is not technically production yet. To install it
python3 -m pip install -U git+https://github.com/Rapptz/discord.py@rewrite
- This branch is not technically production yet. To install it
- aiohttp
- requests
- python-memcached (and a memcache server)
Bot
Firstly, the bot does not ship with a copy of the Static Data Export. Secondly, the config file has to be copied and edited.
You will need to copy config.py.example
in utils
to config.py
and fill it out.
Using the setup command python3 launcher.py setup
will download the SDE and make the log directory.
(In the future I might allow editing the config file through launcher commands.)
If the SDE is out of date, and you need to update it, run python3 launcher.py update
and the launcher will fetch and unzip the SDE for you.
Config
addons
this is where you list all the addons you would like to use.- Default is
[]
- Add
'extensions.extension',
where extension is one of the extensions listed in the extensions directory. - Recommended minimum extensions are
'extensions.AdminCommands',
and'extensions.BotCommands'
- Default is
token
is your bot token from the discord site.prefix
is the symbol that will come before all your commands.- Default is
/
- Default is
msg
this is the message that you would like to see in the bot's "playing" status.- Default is
''
. - This can also be set after the bot has been started with the
/presence
command by the bot owner.
- Default is
app
is the name of your bot. (include a link to your github if you made any changes.)- Default is
''
- Default is
contact
is your contact information to be sent in HTTP headers to CCP and zKillboard in case something goes wrong and they need to contact you.- Default is
''
- Good options are discord tag, tweetfleet slack id, email, and eve name.
- Default is
logginglevel
is the level of information to log.- Default is
'DEBUG'
- Options are
CRITICAL
,ERROR
,WARNING
,INFO
, andDEBUG
- Default is
kill_channel
is the channel to post the kills into.- Default is
''
. When set remove the''
- Default is
kill_ids
is the list of ids to watch for.- Default is
{'alliance_id': [], 'corporation_id': [], 'character_id': [], 'ship_type_id': []}
- Example
{'alliance_id': ['12345', '12234'], 'corporation_id': [], 'character_id': [], 'ship_type_id': []}
- Default is
Killbot v2.0 (rewrite)
Major rewrite of the bot.
New Features
- Extensions - Allows you to load and unload extensions, creating a modular experience.
- This includes commands to enable and disable extensions on the fly. (Currently only available to the user that "owns" the bot)
- Caching - ESI requests are now cached to increase speed and reduce bandwidth use.
- New and Improved Embeds! - No more guessing what the alien emoji means. All commands have embeds laid out in a way that makes the information you are looking for easy to find.
- Link Parsing - When a user posts an evemarketer link or zkillboard link (currently supported zkill links include kills and characters) the bot will check relevant APIs and return an embed packed with information from the linked content.
Installation
Major Dependencies
- python3.6
- f-strings are not supported on earlier versions.
- discord.py 1.0.0a0 (rewrite)
- This branch is not technically production yet. To install it
python3 -m pip install -U git+https://github.com/Rapptz/discord.py@rewrite
- This branch is not technically production yet. To install it
- aiohttp
- requests
- python-memcached (and a memcache server)
Bot
Firstly, the bot does not ship with a copy of the Static Data Export. Secondly, the config file has to be copied and edited.
You will need to copy config.py.example
in utils
to config.py
and fill it out.
Do git pull
before setup to get a minor bug fix so you can use the setup command.
Using the setup command python3 launcher.py setup
will download the SDE and make the log directory.
(In the future I might allow editing the config file through launcher commands.)
If the SDE is out of date, and you need to update it, run python3 launcher.py update
and the launcher will fetch and unzip the SDE for you.
Config
addons
this is where you list all the addons you would like to use.- Default is
[]
- Add
'extensions.extension',
where extension is one of the extensions listed in the extensions directory. - Recommended minimum extensions are
'extensions.AdminCommands',
and'extensions.BotCommands'
- Default is
token
is your bot token from the discord site.prefix
is the symbol that will come before all your commands.- Default is
/
- Default is
msg
this is the message that you would like to see in the bot's "playing" status.- Default is
''
. - This can also be set after the bot has been started with the
/presence
command by the bot owner.
- Default is
app
is the name of your bot. (include a link to your github if you made any changes.)- Default is
''
- Default is
contact
is your contact information to be sent in HTTP headers to CCP and zKillboard in case something goes wrong and they need to contact you.- Default is
''
- Good options are discord tag, tweetfleet slack id, email, and eve name.
- Default is
logginglevel
is the level of information to log.- Default is
'DEBUG'
- Options are
CRITICAL
,ERROR
,WARNING
,INFO
, andDEBUG
- Default is
kill_channel
is the channel to post the kills into.- Default is
''
. When set remove the''
- Default is
kill_ids
is the list of ids to watch for.- Default is
{'alliance_id': [], 'corporation_id': [], 'character_id': [], 'ship_type_id': []}
- Example
{'alliance_id': ['12345', '12234'], 'corporation_id': [], 'character_id': [], 'ship_type_id': []}
- Default is
v1.0 (async)
This is the first release of killbot using discord.py 0.16.
Config
Remember to rename config.py.empty
to config.py
, and to fill it in.
BOT_TOKEN
: You get this from the discord bot app that you make. More specifically it comes from the bot user you make to go along with your app.PREFIX
: This is the symbol that you want to have before all the commands. Use something that is easy to type, but not all that common.- Default is
]
- Default is
APP
is the name you want to use in the header that is sent out with HTTP requests.- Default is
killbot
- Default is
CONTACT
is your contact information sent with HTTP requests (i.e email, eve character name, tweetfleet slack tag) in case something goes wrong and CCP or zkill need to contact you.- Default is
''
- Default is
msg
is the message that you would like to have in the playing status of your bot.- Default is
''
. In order to show the full message, and help command please limit your message to 12 characters.
- Default is
KILLWATCH_ENABLED
: Set this to TRUE to watch zkill for kills!- Default is
FALSE
- Default is
KILLWATCH_CHANNEL
: This is where you set the channel id that you want to have kills posted in.- Default is
''
however when you set it there should be no quotes. EX:KILLWATCH_CHANNEL = 1234546
- Default is
watchids
: This is a dict of lists of IDs for the bot to watch for on zkill.- Note: All IDs should be in string format, and separated with commas. EX:
'corps': ["1234","5678"]
- Note: All IDs should be in string format, and separated with commas. EX:
system_cmd
: This is where you set whether or not you want to pull from the esi for the last hour, or set up a cron job and (in 24 short hours) be able to have info for the past 24 hours.- Default is
ESI
- If you would like to use the cron option you will want to use
0 * * * * cd /PATH/TO/killbot && /usr/bin/python3 /PATH/TO/syscron.py > /PATH/TO/killbot/logs/syscron.log 2>&1
- Default is