ninjabunny9000 / deepthonk Goto Github PK
View Code? Open in Web Editor NEWAn open-source Python bot framework for Twitch
Home Page: https://twitch.tv/ninjabunny9000
License: MIT License
An open-source Python bot framework for Twitch
Home Page: https://twitch.tv/ninjabunny9000
License: MIT License
Integrate Spotify into Discord & Twitch bot!
how to install node + libs were left out of the doc. for the flask server part.
Issue to be referenced when code is cleaned up.
Gamify raid experience!
Count emotes when there's a raid and have score, hp, etc. :D
Game where you put up SHURIKEN/points that you'll either win back more of or get hit with an earworm.
!earworm <bet>
bring back cursed words! (as part of an NLP series)
add functionality of being able to add cursed words from chat
This one's gonna take a bit of work to document, so I'm leaving this as a placeholder right now...
Features/Functions/Commands:
!regSFX [pts] [lvl]
- Register hooks at a price and min level (reg, sub, mod)we need that.
This likely will need to be it's own library, but I'm starting a discussion here. It seems that there's enough justification for a separate library for the bot (to be maintained in a separate repo). Will start a repo & move discussion once the ideas are a bit more fleshed out.
Would be neat if I could control or automate small prints with the bot, through Octoprint.
Possibly script a few things on rPI, maybe webhooks use some webhooks, idk.
Making it a reward for the store (or donations, or sub stuff) would be even better. Could print a token or something? Definitely having that interaction from chat would be awesome.
Cue for rewarding followers and subs & keeping track of that shit.
A way to register & track potato doodles that have been done or need to be done.
Functional abilities:
Potential Commands\Responses:
.taterD00dz register "A dinosaur riding a shark."
Bot: Request acknowleged. Your taterID is 43
taterList
(spits out report + # of pages)taterList [pg#]
taterCancel 43
Similar to !quoth functionality seen in WaifuBot, but to store hilarious band names.
Also have a "!badbandname" option as well!
A way to keep track of things like
!globals
!clutched
Creates counters & stores them & their values in the database.
!addcounter <name>
creates a counter!<name>
returns all-time counter value!<name> ++
increments counter!<name> --
decrements counter!<name> reset
resets just this stream's count!<name> reset all
all-time reset!<name>
also says how many times this streamCommand that pulls a random GIF from the @AnimatedText Twitter account and displays on screen. Would be part of the "GIFbot" functionality.
Might be a good way to start that project out.
Need a way to effectively enable or disable modules and/or commands via yaml/config file.
backref to #39
I'll write teh rest of this later - bleh
A global counter that uses globals to track mentions of uses of globals in code Bun's working on.
!global
increments counter of how many times someone has pointed out that Bun's using globals
!global torch <user>
passes the !global
global torch counter to another user (preventing dupe counts)
Would be cool to be able to track how many per stream.
!streamstart
& !streamend
functions?This is a big one. Just getting it started with this thread here, will need to expand more upon it later.
README needed, desperately! Was started briefly, but might need it's own branch while it's being worked on. Focus on MVP of what is needed to get functional and improve details on specific features w/future iterations.
Goals are:
A small thing to automate, but it would be nice to have previous stream titles stored and accessible to reuse or reference. It takes a good 5+ minutes for me to come up with titles for streams and I know it would be easy if I could reuse. I've tried using docs and notes and tbh it's always a mess and more trouble than it's worth.
Right now, having a command where !schedule
returns the generic/planned schedule for the stream would be great. ex:
Monday: Music
Tue - Thur: Nerdstuffs
Friday: Music
Saturday: Spoopy Saturday
Sunday: WILDCARD
Bigger project, potentially, but it would be great to have a calendar for registering stream times/topics and then displaying or calling on them via Discord or Twitch. Extra points if there's an online interface/viewer.
It will likely be easiest to find some sort of module/framework for a calendar, or do one on Django, then integrate over API with the bot.
Features/Functions/Commands:
!addStream
!delStream
!moveStream
!nextStream
or !next
!schedule
!remindme [stream/schedule ID]
Use cases:
!addStream Python bot work day!
Date?
11-17-2018
Time?
1900
Tags/Roles
?@PROGRAMMING
Commands like pizzaProtocol(); etc.
2nd strike shoudl result in immediate ban but it's not acknowledging the timeout for some reason? Not sure what (if anything) was changed.
Get the code in a state it can be released & used (relatively easily) by a few streamers. Hopefully getting some good beta feedback! :D
we need them too.
Not sure what these should do, but it would be cool if they did a pew-pew thing with lasers or lights, via the Pi. Maybe it just drops the bass?? (shitty dubstep sfx/hook)
Update Twitch, Discord, & Twitter when there's a game or title change.
Example: Going from Science & Tech > PUBG
basically what it sounds like.
Really need to get something in Dev or Master branch going. README (#32) is also needed.
Run pure SFX through bot on Windows.
Issue - This will eventually need an API of sorts, if the bot is to run on a separate server for the audio to play on the streaming computer.
Streamelements (who we use for Twitch store, loyalty system, and the overlay/UI as well as donations) has opened up their API.
What cool shit could we do with it???
!bounty
(list bounties)!bounty [id] [twitter user tag]
Enable auto-permissions for Twitch followers.
Not sure how to check this, might need to be a command that pings Twitch's API when used? I want to avoid using something regularly/scheduled ofc.
Make Discord (AND Twitter posts?). Optionally expanding to tag roles related to stream type (gaming, science/tech, irl, etc).
For Twitter, might need to delete previous Tweet before posting new one.
Would be useful for sfx, gifs, regular messages, etc.
Register/change/update/log tasks that are being worked on for creative/tech streams.
Random thot I had. Not sure how useful this would be, but it would be fun to try out, especially when/if the channel gets a bit more populated.
!lang list
- Lists langs you can add that you're familiar with and willing to help folks with.
!lang reg <lang>
- Adds a lang the sender/user is familiar with to a list for 'em.
!lang <user>
- Lists languages user is familiar with or is down to help folks with.
!lang help <lang>
- Lists users in the room that are reg for that lang and interested in helping folks with.
ability to generate call/response commands from a markup-lang file. json mehbeh?
SQLAlchemy + ORM? We need a POC to save basic stuffs & work with the data.
Is there a quicker/easier/simpler way that wouldn't be such a huge PITA to xfer? SQLAlchemy seems like the way to go...
Needs feature to test for rule no. 4 and auto-place them in @ninja role.
Making an new thread to track issues/iterations on the system. Was part of the recent Raid-Game PR (#31)
Right now it's functional and in testing. No known issues currently.
move hard-coded stuff to json (configs, custom content, etc)
ADD A THING (I REMEMBERED WHAT THIS MEANT!!)
Store and regurgitate resources used on stream to discord channel & on request in Twitch
Lurk mode: ACTIVATE! >> @Bun!™ now lurks from the shadows.. @_@
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.