ralseibot

ralseibot Used AI

11 devlogs
22h 46m
•  Ship certified
Created by BnaJns

A Discord bot for all your ralsei-related needs, built with TypeScript and Discord.js. Features multiple commands, such as /ralsei, /ralsei-sprite, /textbox, and many more. Check out more info at https://ralseibot.bnajns.hackclub.app/ , join the test server or invite it to your own server to try out the commands!

Timeline

Made some minor changes to the express site and package.json. Added 4 screenshots of commands being ran in Discord, updated styling for anchor links, and updated descriptions/features sections to match the one in the readme.md file. Also updated package.json to include the author field, and the description.

Update attachment

Massive readme.md overhaul, along with contributing and code of conduct.

I completely rewrote the readme from scratch while keeping some relevant parts, added a banner image to replace the text h1, added a contributors image list, and some other formatting changes. Added a CONTRIBUTING.md file with basic guidelines for new contributors to read and follow, this includes info on general guidelines (e.g. keep it UT/DR themed), opening issues for bugs/feature requests, creating pull requests, license, contributors list, and that's it. Added a code of conduct file using the Contributor Covenant template.

Update attachment

Ship 1

1 payout of shell 268.0 shells

BnaJns

26 days ago

BnaJns Covers 9 devlogs

Very small change before Ship 1, simplified the readme.md, and removed incorrect and redundant info, such as broken html, and updated scripts section. Also merged copy-sprites.ts into copy-static.ts as both have the same functionality, no idea why this was 2 scripts in the first place.

Update attachment

Final changes for ship 1, should be good to go now.

  • Fixed reddit source not working on Nest server by using Reddit OAuth app tokens
  • Renamed ralseify-image to ralseify
  • Updated readme.md and about to add bot pfp
  • Added /commands command to view basic commands, and a link to the full commands.md

Everything seems to be working now, so this will be Ship 1. Hoping there aren't any bugs that went unnoticed 🙏

Update attachment

New features, new issues to work on.

  • Added a /compliment command to either compliment yourself, or another person.
  • Added /mike which takes a random verb, determiner, and noun.
  • Added /motivational-quote, which generates a image of a motivational quote with a random background from Deltarune. Might also add random fonts for this in the future, to be decided.
  • Added /quote, which takes a completely random line from in-game, and outputs it.
  • Added issue templates and a deploy workflow for github
  • Added a commands.md file for full list of all commands.
  • Added a very basic TOS and Privacy Policy on the site (for discord bot verification)

Going to have to work on getting the /ralsei reddit source to work on the Nest server, as trying to fetch the json on a server returns 403, probably going to use proxies for this, or the reddit OAuth.

Update attachment

Quite a lot of changes. More fun commands, refactors, site improvements, etc.

New commands/additions:
- /dice: Rolls a 6-sided dice, and returns the outcome with a set character emoji.
- /random-wiki: Gets a random wiki article from the Deltarune Fandom Wiki
- /coin: Flips a coin, returns outcome with either lightner/darkner emoji.
- /shadowcrystal: A 8-ball, but with text outcomes from deltarune.
- /textbox: Added more sprites

Other changes:
- Major README.md rework, assisted mostly by AI.
- Enhanced logging, added emojis for clarity
- Removed unnecessary dotenv config calls
- Decided to work on custom submissions but then decided to put it on hold for now
- Added statuses.json, and added more status messages into the rotation
- Other small changes such as cleanup, and package.json changes.

Update attachment

Added a express site, env check enhancements, and a new command.

  • Added a basic express site to display basic info about the bot, such as links to the github, bot invite, and test server on the hero, and command examples, features and a basic health check/status as well. Planning to expand on this to also allow for custom /ralsei image submissions, with a form for author name, proof of work (to prevent plagiarism/false credits), and the image field itself.

  • Added a /ralseify-image command that takes your pfp or provided image url, and turns it into a ralsified image.

  • Other minor changes such as env check improvements

Planning to finish up the work on this bot soon and get the first version shipped.

Update attachment

Mostly worked on switching over to ESM from CommonJS, with some other small changes

  • Added /about and /uptime commands with bot information and uptime display
  • Added environment variable validation with envCheck function
  • Added bad-words dependency and implement profanity check in /ralsei command to filter out potentially harmful posts
  • Updated project structure to use ES modules, this was somewhat of a pain, and took quite a while. Had to do this to get bad-words dependency working correctly.
Update attachment

Added ralsei-sprite, a cooldown system, and twitter as a source for the /ralsei command.

  • added twitter as a source for /ralsei using playwright to scrape twitter pages (using the twitter api wouldn't be a choice due to the very strict free tier limits at 100 reads/month), this was somewhat hard to implement and took quite a while but it should work somewhat normally now. tried using @the-convocation/twitter-scraper at first, but had no luck using it.
  • implemented command cooldown system for user interactions to prevent spam/ratelimits
  • added ralsei-sprite command with sprite extraction and downloading
  • some other minor changes such as updating package.json with linting scripts and linting all scripts
Update attachment

Added Status rotation functionality, package.json changes, and new command.

  • Added textbox command to generate textboxes with preset sprites
  • Implemented weighted random selection for subreddit sources
  • Added rotating status functionality (e.g Playing DELTARUNE, Listening to Cool Mixtape, Playing with Ralsei, Watching the Stars)
  • Updated dev script to use ts-node-dev
Update attachment

Initial commits/start of development

  • Basic /ralsei command to fetch random image from reddit, with basic dupe prevention
  • Basic ping command
  • Other minor stuff such as readme.md, env, configs, etc.