Hello & welcome to the first Galaxsi Dev development update!
This is where I give insight to what I am working on in the behind the scenes with everything to do with Development (whether it be with Games or anything tech related). Today I wanted to talk about the project I set out doing almost 4 years ago… Galaxsi Bot! I want to do a bit more development this year so my current priority is getting Galaxsi Bot to a point where I can use it for stream almost all the time.
What is Galaxsi Bot?
For those who don’t know, Galaxsi Bot is my own custom chat bot developed in NodeJS. The idea of it is to provide engagement to the audience in the Twitch Chat. For those who don’t know (because I am anticipating people from other platforms will be on this website for the first time), I am also a software developer with a specialty in programming! When I found out I could build NodeJS scripts, I discovered I could use that as a base for a Twitch Bot, I always wanted to create my on Twitch Bot and its been a growing project for years.
At the moment, users can draw cards from the popular card game Yu-Gi-Oh! with a random rarity and a random card across from all the different shows. The cards you draw will earn you tokens which served little to no purpose, except being ranked on a leader board…. until now!
Introducing the Poke Game!
As of the next stream, I will be trialing a new game I have built (as well as some other features) in order to increase the engagement & variety that the bot offers which nows offers more what users can do with their tokens but also give another way for users to earn tokens. Using the popular franchise Pokemon, users will be able to catch Pokemon that spawn within the chat earning tokens depending on how big they are in level (and if they are a legendary, starter or on the very rare chance… a shiny!).
When the user enters chat for the first time, if they don’t have a poke game inventory, they will receive a mixture of different Pokeballs (if they are a sub, they will receive more). Then they can use those pokeballs to catch Pokemon that spawn in the chat which has a 20% chance of occurring every 5 minutes, if it doesn’t, the chance increases by 5% then when it does spawn, it goes back down to 20%. Of course, chatters will need to be careful of what balls they have as once they use them up, they will not be able to throw more. Of course, they can use tokens to buy more in the shop.
The new commands added include
- !poke-spawn – Mod Only, spawns a Pokemon (Resets the spawn rate)
- !pokeball/greatball/ultraball/masterball – Attempts a Catch
- Pokeball – 20%
- Greatball – 40%
- Ultraball – 70%
- Masterball – 100%
- !pokeballs – Shows all your Pokeballs
- !poke-b[pokeball/greatball/ultraball/masterball] [Quantity (max 100)] – Buys x of the Pokeball u specify.
You also have a new !shop command which will have all the Pokeballs with their prices. However, I do not put this in the same category as the Pokemon game as I plan to use this for current and upcoming games I want to have on this bot.
I plan to expand on this in the future by adding an imposter system and additional bonuses. As well, a bigger more unique feature is to introduce a horde function where instead of 1 pokemon, a horde of the same Pokemon will spawn with users being able to find a shiny much more easily.
So next time I am streaming, feel free to give this game a go! I do plan to make this a public project at some point so if you are interested in having it in your collection, subscribe to the Galaxsi Newletter today to stay up to date!
Timed Messages
This has been something I have worked on before but I have not gotten it right in the past. This time I opted for a much more basic version! It just sends a message every 10 minutes promoting my platforms in the chat including a Discord Server link. But in addition, I wanted to keep this open ended for future developments.
I am also currently working on an connection between Galaxsi Bot and Open AI’s chat gpt! I want to develop a system where Galaxsi Bot will take the chatlog and then say a passing remark about what is currently being talked about in the chat! That will be the next stage of this part of the feature.
Whats next?
There are a few things I want to do next with this project before I put down it in a state of it being “done”
Youtube Integration
Though its not going to be as robust and dynamic as Twitch’s version, I want to make certain commands and functions available for the Youtube side. This includes the basic social commands like for facebook and twitter but also the timed messages commands that I just worked on.
Sadly, the youtube version of chatbots compared to Twitch’s version is very limiting and I need to be using an API in order to send and receive messages instead of opening a websocket. So the functions that I have for this will be limited compared to the twitch version.
Galaxsi Footy
After I do the Youtube Integration, the next step is to build a version which will be built into Galaxsi Footy’s stream! On top of the basic commands, I would like Galaxsi Footy to have its own nieche. For example, most of the time when I will be streaming, there is a high chance of a footy game being played. So I want the bot to be able to read a API request that gets live updates of the game. This also declares when the game hits Half time, someone scores a try, conversion successful, and full time.
Draw Updates
I next want to expand on the !draw feature. This is more wanting to give more incentive to subscribers of the Twitch Channel and give them a lower cooldown time, I wanted the user to have their cooldown halved if they are a subscriber to the channel so this way, they are able to draw much more often than the regular users. At the moment, the cooldown is 2 minutes, the plan would be for subs, the cooldown would reduce to 1 minute.
Another idea for the draw game is for users to use their tokens to remove the cooldown and do something like !buy unlockdraw 1 in the chat and then it would remove their cooldown to the command then they can draw again. I’ve also had an idea presented to do a !buy draw-pack 1 and let the user pull 3 cards instead of 1. All very early days but I think this is where I’ll be going after the next part!
Discord Bot
So what else am I working on? I am also working on a Discord Bot for Galaxsi Bot however, instead of doing games, it will be at first primary tasked at fetching videos and streams that are going on the Galaxsi Brand but also any updates to the blog (yes, the one you are reading right now!). At the moment, it has the features for Youtube video announcement and a function that allows me to automate my streamer announcement message for certain channels.
The primary objective I have at the moment is to find a way to remove streaming & shorts from the youtube video check as I don’t want people being notified of those types (which also will prevent spam from occurring). Once that is done, I do feel the bot will be ready. I will then add some other commands for users to get help to discuss about the Twitch and Youtube version of the project.
Before I conclude, here is the basic change log for the Galaxsi Bot project!
Change Log
Bug Fixes
- Mods can now trigger the mod only commands.
- !tokens has been restored.
Chat Games
- The PokeGame has been created. You can now catch Pokemon
- !poke-spawn command which will force a Pokemon to Spawn (Mod Only)
- !catch [ball(pokeball/greatball/ultraball/masterball)] added which will attempt to catch a spawned Pokemon
- Will take 1 ball away that is used if a Pokemon is present.
- Will not work if there no Pokemon present or you don’t have that type of ball.
- 30 second cool down
- Legendary Bonus is x3
- Starter Bonus is x2
- Shiny Bonus is x5
- !pokeballs will show what pokeballs you have
- !buy [ball] [#] will buy that many of that ball. No number = 1
- !pokemon will explain the game.
- Shiny chances will start at 1 in 300.
- Spawn Chance will start at 20% every 5 minutes
- Increases everytime no spawn occurs by 5%
- Draw Game Updates
- Added new cards!
New Functions
- Timed Messages now cycle every 10 minutes.
Thank you so much for tuning into my blog for Galaxsi Dev! I will try to update these as much as possible but it will be depending on how my projects go for both the Youtube Channels & Development.
Cheers all!