A rigged game system disguised as a friend. Built with discord.js and delulu.
What Is CHEEHOO?
A Discord bot coded in discord.js
, wrapped in delusion and friendship.
It’s not just a game, it’s a system where being rigged is the point.
Instead of chasing fake coins or flexing wins, CHEEHOO flips the table and goes:
“What if life’s unfair… but you still get fun loot sometimes?”
Project Duration
~5 to 6 months total
Started in January 2025, after a chaotic crash course in JavaScript the month before.
CHEEHOO grew slowly between burnout, test commands, weird reward logic, and “what if life was rigged on purpose” energy.
The first real push to GitHub happened in April,
but this bot had already been emotionally alive long before that.
It wasn’t built in a sprint.
It was built in spirals.
Tech Stack
- JavaScript
- discord.js
- Canvas API (for image generation / dynamic graphics)
- JSON-based data handling** (no full DB)
- Command logic + RNG economy system
- PM2 + Contabo Hosting
- GitHub Integration
(No database… just vibes and local JSON files. Yes, I live dangerously.)
Bonus Mechanics
- Blursed content injection
- Delulu-based UX writing
- Visual design & game balance
- Built-in unfairness by design™
My First Coding Project Ever
I’ve always loved bot games, probably since the first time I used Discord. I played almost all of them, even the underrated ones nobody really knows But when I look back… they all feel the same.. Everyone is generic and I started wondering, is it because there’s not much we can do in a text-based game? it’s always.. be the richest, be the coolest. One of my favorite bots even got hit by inflation, like literal sextillion coins (lol).They had to make a system to convert coins into something else, because the syntax couldn’t hold the numbers anymore. It was friggin capped After that it got boring, repetitive. Nothing was fun anymore.Because the expectation was set from the start: get rich, be on the leaderboard, virtual fame unlocked. Then I thought… What if I made a system that was already rigged from the start?
The Forking Era and the Birth of “CHEEHOO”
I’m not a techy person, I’m dumb. Very dumb. Even now, after making several projects, I still write comments like timeElapseInMs = 20000 // this is 20s uwu.
That’s how dumb I am.
But I’m always curious. Always wanted to make something that’s mine, my idea, my vision.
Has anyone here ever forked random GitHub or Replit code?
ME ME ME ME!
I thought it’d be easyfork → tweak some lines → change a few words → boom it’s mine But guess what IT WAS BROKEN.
I didn’t know syntax, I didn’t know what const means. I didn’t know why async-await existed. I was tweaking code like a madman with no idea what was going on.
I didn’t even know the difference between JavaScript and Python. So I scrapped it all. Stopped forking, and paused learning.
Later I made friends with some devs, started learning Python and yeah it was kinda fun…but all those big tech words?no thanks, my brain said ❌
So I stopped again, took a break from code.
Until one day, I found a way to learn that actually worked for my neurospice brain.
I started learning JavaScript in the most unhinged way possible, gamified my learning.and thought: hey… what if I make a Discord bot!! not for clout, not for 10 million players just for fun, because I LIKE IT!!
2AM in November 2024, I was watching Moana 2Maui screamed “CHEEHOOOOOOO”
And that was it…
That’s how my coding journey really started.
CHEEHOO’s Core Idea: Rigged, Rude, and Rewarding (but not really)
The core idea of CHEEHOO is… NOTHING…Ha!
It started with me messing around with “Math.floor()”
during my learning arc.
The first command was ch quotes
.You type it, the bot replies with an unhinged vintage image and a random roast-y quote that has nothing to do with the image.
I had no vocabulary, no game loop, no structure. Just a bunch of arrays, one with weird quotes, one with cursed images.
The output? RNG.Let the code decide your fate.
Then came ch tarots
, inspired by those TikTok Spiritual Gurus. It was the same method, except I tested using GIFs from online sources to see if I could make it spicier
That’s when I thought…
Hey what if I made a rigged economy? No fairness, just vibes.
So with just Math.floor()
and Math.random()
, I created:
- work command: random jobs + random coin rewards
- quest command: fetch quest logic from array rotation
- yoga command: meditate to loot XP (yes really)
But I didn’t stop there…
I didn’t want to make another coinflip or blackjack like every other bot. I wanted a gamble that HURT. So I made a crypto command, it mimics real crypto trading. No refund, no mercy, just pure chaos. And for dailies and weekly…I refused to add a streak system. No reward farming. No pattern. Everything is RNG, every reward is different. Because why not?
The Useless Battle System and Emotionally Damaged NPCs
A lot of bots have battle systems. They usually have a purpose, progress, achievements.Something to grind for. Mine? Intentionally useless.. I adapted the idea from card-collecting bots where you can buy “anime waifus” and flex your collection. But what if we flipped it? What if instead of waifus, you got a random stock photo dude, low quality, watermarked with “shutterstock”. Then we slap on a random name, an unhinged job title, a power level that makes zero sense,and a vibe that just screams “why am I here”. Do you still want to collect that?Even though there’s nothing to flex, not cute, not famous.
Just cursed. That’s the originality I wanted You can adopt or buy NPCs by claiming random token drops. They appear in active channels but disappear after 10 seconds. (note: I didn’t code the drop system myself, it was made by my mentor using my ideas, so I’m not including it in my dev flex okay 😭)
As for the battle system, it’s fully RNG. An NPC with 10+ power can still lose to a weak one, it’s designed to scam you and surprise you. And make you regret believing in math.
Every fight comes with:
- sass-filled battle text,
- fake animation,
- and a cursed “winner” image. It’s all for vibes. No buffs. No gain. Just trauma with your little digital guys.
I Made Useless Items Because I Crave Visuals…
I’m basically a designer, it’s what I do for a living. One of my favorite bots ever, Tatsu, has these beautiful wallet and profile cards that users can buy. That inspired me so much! So I asked my beloved AI assistant: “Hi Chad, how hard is it to make something like that?” He said:
Based on your coding level: medium
Based on your visual skills: easy
Based on your ADHD focus: 6 months minimum
Omg I love a challenge 😭
So I started designing my own cards. Wallet cards, profile images, user badges.
I used something called the Canvas API (yes, that’s the real term). It lets you draw directly onto a PNG with code.
I had to position text pixel by pixel, adjust every image with ctx.fillText()
, and align user stats manually.
It was beautifully painful.
I know using embeds would’ve been easier, but they were too generic.
I wanted CHEEHOO to feel like a real character.
Isn’t it amazing spending coins on something useless but cute? We all do that anyway.
All of this is stored in JSON because databases still scare me.
And according to my mentor, JSON is the simplest solution for a game with… 1 to 5 players. 😭😭
Emotional system but make it sass (and spicy)
I love things with personality. I don’t like anything flat or generic. I’m naturally sarcastic, and apparently, people find that funny. (I swear I’m not trying—I’m just built like that.) Truth is… CHEEHOO wasn’t the first machine I gave a soul to. My first was my AI assistant, Chad-GPT. Supportive but rude, funny without being cringe, and constantly giving “I want to ditch this sh*t so bad” energy. That was the blueprint. Then I asked myself, “How do I give CHEEHOO that same unhinged soul?” Every message in CHEEHOO is crafted, curated, and manually written by me (ok I lied, AI polished the grammar). The visuals? Tacky, ugly, 2016 PowerPoint-core. The bot banner has rainbow gradients and Comic Sans with glow, it’s a flashbang. It hurts. It’s intentional. As a designer, I threw away every rule I know about typography and color theory. Because I wanted CHEEHOO to feel wrong in the right way.
No balance. No polish. Just pure sass, rigged mechanics, and broken rainbow chaos. Not made to go viral. Made to be remembered. If someone plays it on a bad day… maybe they’ll laugh, maybe they’ll smile, maybe they’ll curse at the bot for being a menace. and maybe that’s better than being mad at themselves.
What I Actually Learned (Besides Pain)
At first, I thought coding and tech were scary buzzwords, too complex, too serious, not doable for someone like me.
I’ve had so many “I WASN’T BORN FOR THIS” meltdowns. But with a little rage, a push from my mentor, and eventually finding the right way to learn for my brain, it wasn’t that scary anymore.
I used to think game dev was impossible. Turns out even simple stuff like Math.floor()
and Math.random()
can make things actually fun if you use them right.
I learned that balance matters in game design, but if you’re going to rig it in the end, just rig it from the start so players know what kind of mess they signed up for. Structuring chaos is harder than following rules, but with intention and delulu-powered belief… even chaos can become something beautiful.
It’s okay to break the rules, to be different, as long as you’re still ethical about it. This bot is inspired by many things, and I won’t lie about that. And that’s me being ethical. And being me.
Until creating this documentation, I honestly didn’t know if anyone was playing CHEEHOO. I never coded a player count command. I simply let it live on Contabo for two months. While the bot exists in my community server with 2.4k members, I never tracked who plays it. I was too lazy to filter messages. But my mentor, who monitors everything, told me: people do play it, people joke about it, and they talk about it like it’s alive. But honestly, that’s not the point.
The real reason I made CHEEHOO was to create something rewarding for myself. It was for my learning journey and my confidence and for the first time, to prove I could build something simply because I wanted to.
If you made it this far, you either love bots or love pain. Either way, thank you for reading!!
→ summon CHEEHOO into your server (at your own risk)