SCVODArchives Stream Bot
Starting in 2014, SCVODArchives began as a community project whose sole purpose is to preserve StarCraft II esports history, focused mainly on Korean esports tournaments. This is done by creating archives of tournaments from the beginning of SC2 to current. With the help from community member we've been able to archive nearly all major Korean tournaments including GSL, GSTL, Proleague, Starleague, and more. Multiple backups of all VODs as well as torrents help keep these VODs available to everyone that wants them. As of 11/2020 there are over 15,000 VODs archived.
Not only is the project to preserve VODs but also to host a stream on Twitch showcasing some of the VODs that have been archived. The stream is not for profit and any funds generated by the stream are put back into project to cover costs of the dedicated streaming server, off-site backups, power consumption, and continued development/archiving.
CONTRIBUTORS AND SPECIAL THANK YOUS
- Chris_Havoc (Owner/Operator of SC2 Esports Anthology) - Sorting, renaming, and locating VODs and playlists. Chris has helped with so many things over the years, I can't remember them all. He has contributed so much of his time to help this project. Thank you so much!
- Mannekino - Helping keep all the torrents alive!
- pinball777 - Donated hundreds of missing VODs from 2011 that had been missing.
- And everyone else kind enough to donate, subscribe, or cheer on the channel - The stream wouldn't be around if it weren't for all the support of the community.
PURPOSE OF BOT
This bot was created for the purpose of handling all elements of the SCVODArchives stream including updating Twitch stream info, chat commands, and alerts. The goal of this bot is make all aspects of the stream autonomous allowing it to run 24/7 without interaction.
- Twitch API
- Twitch Pubsub
- Twitter API
- VLC API
- StreamElements API
- OBS Websocket
- Aligulac API
- Detection of VOD changes
- Parses all information from VOD such as tournament, players, match, set, etc.
- Updating of Twitch title and chat commands
- Automated commercial break
- Twitch & Discord chat bot that handles all commands for the stream
- Alerts for subscriptions, cheers, hosts, raids, and donations
- Get player information or player match-up data via Aligulac
- Update website, https://starcraftvods.com, with stream information
- Custom channel point redemptions
- SMS notifications/alerts via SMS email addresses
- Notifies admin via SMS if OBS is dropping frames or if stream disconnects
- Auto-reconnect & auto-pause/resume video when stream is offline
- Custom dashboard to monitor chat/alerts
!anthology - Link to Chris Havoc's SC2 Esports Anthology Youtube Channel.
!archivereq - Form to request VODs to be archived.
!available - Link to all the VODs archived.
!chrome - Download SCVODArchives Chrome Extension.
!discord - Link to the SCVODArchives Discord server.
!donate - How to donate to the stream.
!download - Link to downloads page of the SCVODArchives website.
!downloadlink - Magnet link for the currently playing tournment.
!expansion - Show the current expansion being played.
!followage - Returns the date the requester followed the channel. (MOD ONLY) Can take one parameter to get follow age of a user.
!followernum - (MOD ONLY) Takes one parameter (e.g. !followernum 1000) to get user who was X follower of the channel.
!giveaway - Info on the currently running giveaway. Not always active.
!liquipedia or !bracket - Link to the TeamLiquid wikipedia for the tournament being shown.
!matchfixing - Link to Liquipedia article about 2015 matchfixing scandal.
!nextmatch - Shows the upcoming matches (Potential spoilers).
!nexttournament - Estimates when the next tournament will start.
!playlist - Current playlist information.
!playlistorder - The order of tournaments in the playlist.
!rule - (MOD ONLY) Takes 2 parameters, rule number and user to warn.
!rule 2 [username]
!timeleft - Estimated time remaining on the current playlist.
!uptime - See when the current run playlist started.
!whenis - Check when a player is playing next. Will NOT WORK with GSTL matches.