jasonp / botspade Goto Github PK
View Code? Open in Web Editor NEWA Twitch Chat Bot
A Twitch Chat Bot
Looking at YOU, etheco...
Getting complex enough that it needs tests. What to test?
bot responds to !points
bot responds to !uptime
bot accepts correctly formatted !bet
bot rejects incorrectly formatted !bet
bot responds to !stats
bot does !update profile
bot does !lookup profile/index
bot does !checkin if more than 12 hours have passed
bot rejects !checkin if fewer than 12 hours have passed
etc,
so:
if bot receives !points
db retrieves user, points displayed
if bot receives !bet 15 win
bot IDs user and
bot records 15 point bet
etc
Basic PHP web page that connects to the db (need to input file path) and either a) lists points holders in order or b) provides a search box to fetch points, or c) provides a list with a filter search box.
Add "inventory" to user db; field with item IDs. Add Item table to db with prices, etc. Allow for "ownable" or not. e.g.
Items
This requires moving all existing built-in commands to helper methods, and creating the db table for user-generated commands, then building a catch-all listen loop and a processing helper method.
also check all db_write & access functions for a failure point if user returns nil from db
!bet 2 lose
etheco: Bet recorded.
!reportgame loss
Bets tallied. 0 Spade Points won by 0 gambler(s).
for initial admin check - once in DB, works ok.
To turn off/on notifications that can be chat spammy with large viewer counts
so !talkative can avoid listing profile info in chat as well
In some cases but not all cases. Review and fix.
Investigate if a viewer's time on stream can be tracked (w or w/o !checkin)
store all bets in the database incase of bot crash.
Add a field in the "options" table (TBB) for "initialized" - if 0, run a method that pre-populates the db with required things, commands, items, etc.
SyntaxError: botspade.rb:538: invalid multibyte char (US-ASCII)
DB will not recognize manually entered points data for users; forced reset of points. Database appeared to recognize checkins, though. It looked like the username was not recognized in the db.
Sort of a pie in the sky, future type thing... not sure how best to implement. Maybe find a music streaming service w/ an API and connect the streamer's account (like Rdio or Spotify or Grooveshark). Playlist might end up being part of the index.php file or a different, new php file.
How to architect the web interface so that it's not complicated to set up/install?
Allow people to type !cheats or !clean and tallies the total votes? Or better: people type: !aimbot, !wallhack, !grief, or !clean, then it totals all types of cheat votes (wallhack: 10, aimbot: 10, grief: 5 - total cheats: 25, total clean: 20), or similar. !overwatch to start/explain.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.