You are browsing as a guest. Sign up (or log in) to start making projects!

SlackTCG Bot

  • 3 Devlogs
  • 2 Total hours

Slack bot that runs a trading card game where you collect cards and trade with others.

Ship #1

I made a Slack bot called SlackTCG. This bot runs a card game inside of Slack. There are five commands: /slacktcg-ping, /slacktcg-pack, /slacktcg-help, /slacktcg-inventory, and /slacktcg-trade.

Users can open 1 pack a day with the /slacktcg-pack command. There are 28 cards, and five rarities: common, rare, epic, legendary, and mythical. These are the card rarities: Common 60%, Rare 25%, Epic 10%, Legendary 4%, Mythical 1%.

Cards can also have modifiers that make them even rarer! Here are the modifier rarities: Normal 96%, Gold 3%, Shiny 0.9%, Rainbow 0.1%. This means that a rainbow mythical is almost 1/100,000 and you’re only expected to get one every 20,000 packs!

Using the inventory and trade commands, you can trade with others and manage your collection, allowing progression to make the trading card game more fun.

The hardest part of this project was making it look aesthetically pleasing by only using slack text. I learned a lot about how to use virtual private servers to host it, using JSON to manage cards and users, and it enhanced my knowledge of Javascript to better prepare me for the robotics season.

Overall, this was a really fun project and I hope to make more slack bots in the future.

Try project → See source code →
Open comments for this post

30m 47s logged

I set up trading and added a 24 hour timer between packs (except admins like me lol). You trade with others by using the command /slacktcg-trade @ . If the card has a modifier, the name would look like ‘ghoul-shiny.’ I have finished everything I need to and the TCG is set up, so I’m going to ship very soon!

0
0
2
Open comments for this post

32m 28s logged

Devlog #2
I spent some time adding a way to view you inventory. Right now user info and cards are stored in a JSON file, and I think I’ll stick with it as it’ll be managable for a few hundred users and SQL is overkill. I have a half-built trading system set up that I’m trying to polish and make more intuitive. I also made a logo in Canva for SlackTCG and made a slogan too: ‘The TCG That Lives in Slack.’ The next devlog will focus on finishing the trading system. I will then add a 24 hour timer between opening packs and test it with others. I would also like to add some more cards.

0
0
3
Open comments for this post

41m 23s logged

Devlog #1!
I set up the basic of a Slack bot and got all the boiler plate set up. I spent a while coming up with all the different cards and made a JSON file with them, then wrote a command to open a pack. There are 5 different rarities of cards: common, rare, epic, legendary, and mythical. Each one gets progressively rarer and you get 5 cards in each pack. The cards can also have rare modifiers. Right now nothing is stored in an inventory, but you can open packs and see what you get. I tried my best to make it look appealing to the eye as well.

2
0
7

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…