Setting up EnergyMech
EnergyMech is the other classic IRC bot — a contemporary of eggdrop, smaller, faster to set up, and still developed. Where eggdrop is a platform you script, EnergyMech is a bot that does channel management out of the box: op protection, bans, greets, seen, trivia, and about thirty other features you switch on at compile time.
Build it
ss-build-energymech
Ten seconds, peaking at 64 MB. It lands in ~/energymech with a sample configuration alongside it.
EnergyMech's ./configure is a questionnaire — thirty-odd yes/no questions about which features to compile in. The helper answers them: everything stable is on, and Perl, Python and TCL scripting are off, because they add linkage most bots never use. To turn one on, configure by hand:
cd ~/.cache/shadowshells/energymech-src/energymech ft_default=y ft_tcl=y ./configure make cp src/energymech ~/energymech/
No port needed
This is the difference between a bot and a bouncer, and it is worth being clear about: a bot makes outgoing connections. It dials IRC; nothing dials it. So EnergyMech needs no port assigned to it and nothing opened on the firewall.
You only need a port if you turn on its telnet or web interface — and if you do, request one from the Ports page and configure exactly that number.
Configure it
The helper copies sample.conf to mech.conf. Open it and change the parts that matter:
nano ~/energymech/mech.conf
set servergroup/serverlines- The sample ships with Undernet servers. Replace them with your network's. Format is
server <host> [port] [@group] ["password"]. nick/userfile- The bot's nick, and the file where it keeps its users.
channellines- What it joins on connect, with per-channel modes.
userentries- Who controls it, and what they may do. Start with yourself as the master.
The comments in the sample are genuinely good — read them rather than skimming past. ~/energymech/help/ has the command reference.
Run it
cd ~/energymech screen -dmS mech ./energymech mech.conf screen -r mech # to look at it later
Two background processes against your plan: screen and the bot. A running EnergyMech is around 10 MB, so it fits comfortably in any tier — it is the build that needs headroom, not the bot.
Surviving a reboot
@reboot sleep 30 && /usr/bin/screen -dmS mech -d -m /bin/sh -c "cd $HOME/energymech && ./energymech mech.conf"
Add it with crontab -e.
Behave
A bot that floods, mass-deops, evades bans or gets into wars is the fastest way to have the whole ShadowShells address banned from a network — which affects everyone else here, not just you. The rules are explicit about this, and about it being the account, not the bot, that gets suspended.
If you are new to running a bot, the eggdrop guide covers the same ground from the other direction, and much of the etiquette carries over.