Releases: knkwebservices/ts6-roadie
Release list
v0.21.0: Once Human and Icarus lookups
What's new
Once Human (oncehuman cog)
!oh <name>(or!oncehuman): look up weapons, armor, mods, attachments, items, deviations, memetics, recipes and more- Shows the best match with its stats (damage, fire rate, magazine, rarity and so on), the link, and other matches you can ask for
- Data from Once Human DB
Icarus (icarus cog)
!icarus <name>(or!ic): look up items, creatures, recipes, talents and more- Shows the best match, its stats, how to craft it (station and ingredients), the link, and other matches
- Data from Icarus Database
How it works
Neither site has a public API, so Roadie looks things up live the same way a visitor would, using each site's normal search and entry pages. Both sites allow bots, and Roadie stays a polite visitor: at most one request a second per site, a clear User-Agent, answers remembered for an hour, and it never uses Once Human DB's /api/ folder. Every reply credits the site.
Upgrading
Add "oncehuman" and/or "icarus" to the cogs list in your config and restart (or deploy). No other settings needed.
v0.20.0: Fallout 76 nuke codes and Minerva
What's new
Fallout 76 (fallout76 cog)
For Fallout 76 communities. Add "fallout76" to the cogs list in your config and restart. No other setup needed.
Nuke codes
!nukes: this week's Alpha, Bravo and Charlie codes, and when they change!nukes alpha/!nukes bravo/!nukes charlie: just one silo- Codes come from NukaCrypt, credited in every reply. Thanks to them for their public API.
- The bot fetches the codes once a week and keeps them, so NukaCrypt isn't asked every time someone types
!nukes - After the weekly change, it checks every 15 minutes until the new codes are posted, and says they're on the way instead of showing last week's
Minerva
!minerva: where Minerva is right now and when she leaves, or where and when she shows up next!minerva list: her next few visits- Her published schedule through January 2027 is built in (noon to noon US Eastern, daylight saving handled)
- Admins can keep it current:
!minerva add 2027-02-01 Foundation 17and!minerva remove 2026-10-19
Upgrading
Add "fallout76" to cogs in data/config.json and restart (or deploy). See the README's "Fallout 76: nuke codes and Minerva" section.
v0.19.0: Event reminders, announcements, nickname filter
What's new
Event reminders (events cog)
Schedule game nights and community events right from chat.
!event add Friday 8pm | Raid night: add an event (admins by default)!event add weekly Tuesday 9pm | Fallout 76 night: repeats every week- Understands times like
tonight 9pm,tomorrow 7:30pm,10/15 8pm,in 2h !eventslists what's coming up;!event 1shows who's going!going 1/!notgoing 1: sign up for an event- The bot posts a reminder before the event starts (60 minutes by default), sends a private reminder to everyone going, and pokes them when it starts
Rotating announcements
!announce add Join our Discord at ...: add a message!announce every 60: how often to post (minutes)!announce on/!announce off/!announce now- Only posts while someone is online
Nickname filter (nickfilter cog)
Keeps names on your server clean. Off by default.
!nickfilter add <word>/!nickfilter remove <word>- Catches common tricks like
l33tspelling and extra symbols - Warns the person with a poke and a private message, then after a grace period (60 seconds by default) either tells the admins, moves them to a channel, or kicks them:
!nickfilter action warn|move|kick - Server groups can be exempted in the config
Other changes
!record reset(admin): sets the online record back to the current count- The deploy smoke-test client no longer shows up in user lists, counts, or greetings
- CI updated to the latest GitHub Actions versions
Upgrading
Add "events" and/or "nickfilter" to the cogs list in your config. See config.example.json and the README for every setting.
Posts go to the bot's channel by default (postTo: "channel"), because the TeamSpeak 6 client doesn't currently show server-wide chat.
v0.18.0: Ranks and protected groups
A new opt-in grouptools cog: add "grouptools" to cogs in config.json and restart.
- Ranks for time online (
!ranks, admins):!ranks add 10 9 Regulargives server group 9 after 10 hours online, then!ranks on. Time isn't counted while away or in the AFK Room. Reaching a rank adds its group, takes away the lower rank, and congratulates the person.!ranks give <name> <hours>credits long-time members. Everyone can check progress with!rank. - Protected server groups (
!protect, admins): only listed people (plus bot admins) may be in a protected group. Starts in warn mode, which only messages the online bot admins;!protect mode removemakes the bot take people out. - Every group change is checked against the server's real groups first, because TeamSpeak 6 doesn't report group changes to connected clients.
The bot needs permission to add and remove server group members. Ranks tested on a real TeamSpeak 6 server (6.0.0-beta13.1).
Full details in the README and CHANGELOG.
v0.17.0: Temporary rooms
A new opt-in rooms cog: add "rooms" to cogs in config.json, restart, then !rooms on.
- Temporary rooms: join a "Create a Room" channel and the bot makes you a private channel of your own ("Ann's Room"), moves you in, and makes you its channel admin so you can rename it or set a password.
- The server deletes empty rooms by itself after 60 seconds (
rooms.deleteDelaySeconds), so cleanup never depends on the bot. - Joining again takes you back to your room, and
!roommoves you there from anywhere. - Admins:
!rooms on|off,!rooms channel <name>,!rooms under <channel>,!rooms name <template>. - Limits: one new room per person every 30 seconds, and at most 25 rooms open at once.
The bot needs permission to create temporary channels, move people, and assign channel groups. Tested on a real TeamSpeak 6 server (6.0.0-beta13.1).
Full details in the README and CHANGELOG.
v0.16.0: Server tools
A new opt-in servertools cog: add "servertools" to cogs in config.json and restart.
- Support notifier (
!notify, admins): when someone joins a chosen channel, the online members of chosen server groups get a private message.!notify add Support Room | 12, then!notify on. - Live channel names (
!livename, admins): keeps a channel's name up to date, like[cspacer]Online: {online}. Also{record}and{song}. Needs the bot to have permission to change channel names. !seen <name>(everyone): online now and where, or when someone was last seen.!record(everyone): the most people ever online at once.
Also: [cspacer] and other spacer markers are no longer stripped from chat commands, and deploy.mjs --no-service no longer prints misleading service stop/start lines.
Full details in the README and CHANGELOG.
v0.15.0
New twitch cog (opt-in: add "twitch" to cogs and restart): posts in the channel when someone you're tracking goes live on Twitch. Needs a free app from https://dev.twitch.tv/console/apps (twitch.clientId / twitch.clientSecret). !twitch add <channel> [label] tracks a channel, plain !twitch (or !live) lists everyone tracked and who's live, !twitch on|off|interval <seconds>|check (admins) control it. Only goes live is announced — restarting the bot never re-announces a stream already running.
v0.14.0
New analytics cog (opt-in: add "analytics" to cogs and restart): tracks peak times, the busiest channels, the most-played songs, and uptime. !analytics (or !stats) gives everyone a summary; !analytics hours|channels|songs [count] drill into each one; !analytics on|off|interval <seconds>|reset|check (admins) control it. Song counts are pulled from the audio cog's own play history, so they need "audio" loaded too. Uptime is tracked across restarts, so nothing is lost.
0.13.0: Steam status tracking
New steam cog (opt-in): tells the channel when a tracked Steam player starts or switches a game. Add "steam" to cogs, get a free key from https://steamcommunity.com/dev/apikey, and set steam.apiKey. See the README's Steam status section and CHANGELOG for details.
TS6 Roadie v0.12.0
New
- Community cog (opt-in: add "community" to cogs in config.json and restart):
- AFK mover (
!afk, admins only). Someone who has been away, muted or idle for 30 minutes (configurable) is moved to a channel of your choice (default "AFK Room"), warned by private message a minute before and told afterwards. When they are active again they are moved back to where they were, even after a bot restart. Bot admins, chosen server groups and chosen channels are never moved, and people who choose the AFK channel themselves are left alone. - Welcome message (
!welcome, admins only): a private message to everyone each time they join, with {name} replaced by their nickname. People already there when the bot connects are not greeted, and quick reconnects are not greeted twice. - Both can be switched on from the dashboard's new Community card on the Admin tab, and the settings are remembered.
- AFK mover (
- A public widget for your website (
!widget on, off by default):/widgetis a page to embed and/widget.jsonis the data. It shows what is playing and who is online by name and channel (or only counts). Anyone can leave their name off with!hideme. Only websites you list inweb.widget.originscan embed it or read the data. Read-only, rate limited, and the rest of the dashboard is as closed as before.
Updating an existing install
node scripts\deploy.mjs --root C:\tsbot --from https://github.com/knkwebservices/ts6-roadie.git --ref v0.12.0
Nothing changes for existing setups until you switch the new features on. To use the AFK mover and welcome message, add "community" to cogs in config.json. Full changes are in CHANGELOG.md.