×

Modal Header

Some text..

Some text..

KingsDev

Hi! I'm @KingsDev, an Australian developer focusing on Minecraft Plugins and Discord Bots. Click one of the buttons below for more information!

About Me

I'm KingsDev - a bot developer at Skyblock Maniacs, a student at the Queensland University of Technology, and a developer hobbyist.

SBM icon Developer @ SBM | 2023 - Current
At SBM, we process over 7,500 tickets/month and 1,000,000+ messages/month from a userbase of 103,000 users🛈. I actively contribute to and review pull requests for the Discord bot that manages these tickets, handles carrier applications, and oversees the server. For more information regarding my contributions, go to the Projects tab.

BunnyFarm icon Developer @ BunnyFarm | 2021 - 2023
BunnyFarm was a Minecraft minigame server which accumulated over 900 hours of playtime during its second release period🛈. My responsibilities included developing new features, maintaining and improving server performance, and fixing bugs. For more information about my contributions, go to the Projects tab.

QUT logo Student @ QUT | 2025 onwards
I have been accepted to study a Bachelor of Information Technology (Computer Science major) at QUT starting early 2025. I have also studied programming and digital solutions throughout high school, which included the planning and development of various Python projects leading up to an object-orientated rendering system using Pygame as a base.

And more...
I've worked on a wide variety of projects using a range of libraries and languages throughout the 6 years I have been programming. For more information, checkout the Projects page.

Contact / Links

The most effective method of reaching out to me is via Discord.

Discord logo Discord: @kingsdev
GitHub logo GitHub: KingsMMA
Email icon Email: [email protected]

Warning: This section was designed for a wider screen size. For the best experience, please zoom out or view on desktop.

Vouches / Reviews

I have worked with a lot of people while developing a variety of projects and commissions. Some people have left me vouches / reviews; these can be seen below. To open the image in a new tab, click on it.

Discord Bots

I have several years of experience developing discord bots with a variety of functions. I primarily use Typescript with discord.js, although I also have experience with java (JDA) and python (discord.py) bots.

Skyblock Maniacs

This project involved the use of:

IntelliJ Ideadiscord.jsTypescriptMongoDB

Skyblock Maniacs is the most popular discord server for connecting carriers with clients across a variety of services in Hypixel Skyblock. I have been a developer at SBM since late 2023, contributing to and reviewing pull requests for the Discord bot that oversees the server.


1 / 7
2 / 7
3 / 7
4 / 7
5 / 7
6 / 7
7 / 7
< >

Application revamp demo
Application control panel
Service alert
Claimed service alert
Duo request
Viewing staff gradient queue
Staff force claiming a ticket

Some of my contributions included:

• Carrier Application Overhaul - I completely overhauled carrier applications to automate repetitive staff tasks, improve the applicant experience, and better the future outcomes of carriers. As part of this, I identified key areas in which carriers would fail to follow the rules and added short multiple choice quizzes to target and rectify these problem areas.
• Service Staff Alerts - Service Staff review tickets, resolve disputes between clients and carriers, and ensure rules are being followed. I created a system to detect when staff intervention was likely needed to identify potential issues faster and improve response times.
• Duo Carries - Many carriers pair up to work as a duo to carry a user. I upgraded the bot to fully support both carriers claiming the ticket and gaining score, as well as a system to request another carrier to duo with you.
• Staff Role Gradients - At the end of every month, the role colours and icons of the staff roles are updated to a new gradient. I created a tool to automate this process by allowing custom gradients to be created and applied, and by automatically generating and applying the new role icons.
• Moderation & Debugging tools - I created a variety of tools to help staff members manage tickets and maintain service quality, such as commands to forcefully update/lock tickets, systems to track and rank user stats, etc.
• Migrating Legacy Code - A variety of commands and systems were still handled using old, legacy bots. I migrated some of these features to the new bot that is currently in use.
• Bug fixes / Quality of Life - I fixed a wide range of bugs, such as API errors resulting in some commands not working, ticket names glitching and being messy, some commands not loading on startup, etc.

Project Tracker

This project involved the use of:

IntelliJ Ideadiscord.jsTypescriptMongoDB

Project Tracker is a supplementary discord bot I developed to help track the development of features for the SBM bot. It:
• Syncs with GitHub pull requests to provide non-development team members with updates on feature progress.
• Provides a centralised place for discussion and progress updates for different projects.
• Provides team members with updates on what they need to fix, review, test, etc.


1 / 4
2 / 4
3 / 4
4 / 4
< >

Pull request summary
Pull request full thread
Pull request review
Project discussion area

Melody Calc

This project involved the use of:

IntelliJ Ideadiscord.jsTypescript

In Hypixel Skyblock, melody puzzles take a varying amount of time based on RNG and ping. Upon request, I developed a bot to allow users to easily calculate how likely (or unlikely) it is for a melody to take a certain amount of time.


1 / 1

Example command usage

PvP Review Bot

This project involved the use of:

IntelliJ Ideadiscord.jsTypescriptMongoDB

PvP Review Bot is a custom commission developed to handle paid 1.9+ PvP training and gameplay review. Users can open a ticket from a #info-and-purchase channel or similar, which contains a fully customisable embed. They can select a gamemode from a customisable list (modifiable with /config gamemodes add/remove, and they are also asked to input their Minecraft username, timezone, and preferred payment method. This sends a training request to a #review-requests channel, where the trainer (Marlow) can accept / deny the request. Each user can only have one pending training request at a time to prevent spam.


Once a training request has been accepted, a ticket is created for that user in a configurable Gameplay Review Requests category, posting the user's inputted information into a fully customisable embed. Once payment has been processed, the trainer can then press a 'Mark Paid' button, moving the ticket into a configurable Gameplay Review (Paid) category and giving the user a Customer role. When a paid ticket is closed, the bot will ask the user to leave a positive or a negative review. This review is then sent to a #reviews channel and the positive review counter in the profile embed is updated.


1 / 6
2 / 6
3 / 6
4 / 6
5 / 6
6 / 6
< >

Video demonstration
Training requests
Reviews
Review request
Request form
Editing messages

Ticket Bot

This project involved the use of:

IntelliJ Ideadiscord.jsTypescriptMongoDB

Ticket Bot is an advanced ticketing management system, with its most unique selling point being the ticket panels being fully customisable from inside Discord. The bot stores all of its data per-server, meaning one instance of the bot can handle the tickets for an unlimited number of discord servers.


The bot allows users to create tickets using the ticket configs provided by server staff, with extensive customisability being supported. Server staff can setup which users and roles (and optionally the ticket owner) can manage the ticket; they can also configure the category, name template, maximum number of tickets per user, and default role overrides for each individual ticket config. Users and roles can be added to tickets as either a viewer or a manager. As previously stated, the ticket panels and starting messages are fully configurable from inside Discord.



1 / 7
2 / 7
3 / 7
4 / 7
5 / 7
6 / 7
7 / 7
< >

Ticket Bot demo
A fully-customisable ticket panel
Message editor
A ticket
Ticket config view
Adding a role to a ticket
A list of ticket configs

Review Bot

This project involved the use of:

IntelliJ Ideadiscord.jsTypescriptMongoDB

Review Bot is a useful tool for community members to build trust within their server by gaining reviews from other members. Reviews are stored in one channel for easy customisable lookup by members. Members can also view another user's review overview - this contains the target's received reviews and their average rating.


1 / 2
2 / 2
< >

A review being placed
A user's review summary

Suggestion Manager

This project involved the use of:

IntelliJ Ideadiscord.jsTypescriptMongoDB

Suggestion Bot allows users to submit suggestions easily by typing in a text channel. The bot then converts these into a neatly formatted embed with buttons to allow other community members to vote and a thread to discuss the suggestion in. A ratelimit can be applied to the channel to prevent users spamming suggestions. Staff members can accept/deny these suggestions with an optional reason using the /suggestion command. To keep the suggestions channel clean, staff have the option of sending accepted and denied suggestions to their own channels; however, they can keep all suggestions in the on channel if they wish. This preference can be set using the /suggestion set-channel command.


1 / 3
2 / 3
3 / 3
< >

A suggestion
An accepted suggestion
A list of active suggestions

Role Assignment System

This project involved the use of:

IntelliJ Ideadiscord.jsTypescriptMongoDB

Role Assignment System (RAS) manages roles for a community server. The bot allows users to assign or unassign themselves specific roles by reacting with corresponding emojis to a message. The bot can also automatically display the list of available roles and the emojis associated with them for each panel of roles. Alternatively, users can have reaction roles added to a message sent by themself, another user, or another bot. Users are able to view their current roles and all available roles at any time through the /roles command. Server staff can setup and manage reaction roles and panels through the /reaction-role command.


1 / 3
2 / 3
3 / 3
< >

Reaction role panel
Creating a reaction role panel
A reaction role panel to assign colour roles

Giveaway Bot

This project involved the use of:

IntelliJ Ideadiscord.jsTypescriptMongoDB

Giveaway Bot allows server staff to create and run giveaways for their community. The bot allows users to enter or leave the giveaways by clicking a button on the messages. When creating a giveaway, staff can set a prize, duration, number of winners, a message, and optionally a role requirement. The bot uses a MongoDB database to ensure all giveaways persist after restart - if a giveaway ends while the bot is down, it will be automatically ended when the bot next starts and only entries from before the giveaway ended will be counted. Server staff can setup and reroll giveaways through the /giveaway command.


1 / 3
2 / 3
3 / 3
< >

Giveaways with role requirements
Entering a giveaway
Winning a giveaway

Minecraft Plugins

I have been developing minecraft plugins for over 5 years now. I have experience in developing a wide range of plugins, from simple chat plugins to complex server-wide minigames. I have worked with many different server softwares, APIs, and libraries including Spigot, Paper, and BungeeCord. I am also experienced in setting up and configuring servers, including setting up permissions, ranks, and other server features. I also have limited experience with Minecraft modding, creating client-side fabric mods.

BunnyFarm

This project involved the use of:

IntelliJ IdeaDataGripPaper (plugin api)Purpur (running the server)JavaMySQL

BunnyFarm was a minigame server in which the player would run around the main farm in the middle of the map using a variety of tools to feed bunnies and level up. The server featured custom quests, multiple feeding areas, minibosses, a fishing system, achievements, and more. I first joined the team as a developer in October 2021, stepping up to be co-owner and to take on more developmental responsibilities in April 2022. In these roles, I contributed significantly to the server's rerelease and subsequent updates until its close in late February 2023.


My most significant contributions to BunnyFarm were:
• Preparing the server for its rerelease and migrating to the new map.
• Maintaining the server and fixing bugs.
• Developing and upgrading backend systems.
• Identifying and mitigating severe performance issues.
• Developing the server's moderation and administration tools.
• Creating tools for per-player client-side blocks with NMS.
• Updating the server's custom enchantment frontend systems.
• Developing the server's custom achievements system.
• Monetising the server to help fund hosting.
• Helping with the management of the staff team.
• Creating and maintaining the server's website and public API.
• Editing and codirecting the server's trailer.
• Developing a custom anticheat tailored to the minigame's features and a fully custom boss system. (Unreleased due to server closure at time of development)


1 / 8
2 / 8
3 / 8
4 / 8
5 / 8
6 / 8
7 / 8
8 / 8
< >

BunnyFarm server launch trailer
Server spawn
Farm + inner map bird's eye view
The auctioneer's house + distant view of the prison
Trail leading to fishing area
Alchemist's house
The graveyard
Main map bird's eye view

What I learnt:
• Teamwork - this was my first group development project and I learned some of the fundamentals regarding teamwork such as pull requests, code reviews, and communication.
• Backend systems - this was also my first time working with a large codebase, and as such it involved working with more advanced backend systems. Throughout my time working on this project, I learned to work with these systems and began developing them myself - for example, the moderation, administration, and achievement systems.
• Performance - I learned a lot about performance and optimisation throughout my time working on this project. My most significant contribution performance-wise was creating a limbo server that allowed the player's data to be loaded asynchronously before sending them to the main server.
• Anticheat - This was my first time developing custom anti-cheating measures, helping me to gain crucial experience in the area. The most useful check I developed was to place invisible bunnies in the ground, allowing the anticheat to autoban users click auraing nearby bunnies.

FastGens - Generator Plugin

This project involved the use of:

IntelliJ IdeaKotlinPaper

The FastGens Minecraft server averages ~100 players and has over 6,000 unique players. I rewrote the server's feature plugin, which allows players to purchase, upgrade, and place item generators from the ground up. The server was facing performance and data integrity issues with their old implementation, and as such, commissioned me to make a highly performant, reliable solution. Stress tests of my plugin found that over 300,000 item generators could be placed with no data integrity issues and little to no performance issues.


1 / 2
2 / 2
< >

Generators placed on the ground
The generator list/shop

uChunk

This project involved the use of:

IntelliJ IdeaKotlinPaper

uChunk allows players to view a particle border around their current chunk, with various different particle qualities being provided for selection.


1 / 2
2 / 2
< >

Screenshot of chunk border
uChunk video demo

Fruitful Utilities

This project involved the use of:

IntelliJ IdeaFabricMCJava

FruitfulUtilities is a utility mod for Melon King on the DiamondFire minecraft server. It is a client-side fabric mod designed to enhance the user experience and to guide newer players in Melon King, similar to mods such as Skytils or NotEnoughUpdates for skyblock. Throughout development, I focused on making data-driven systems for the mod: the config screen is generated and storage is handled using annotated fields and classes; the path viewer and upgrade viewer's upgrade data is loaded from a series of JSON files on a sister repo; HUD elements are managed using a custom system involving annotated classes for serialisation and rendering.


The full source code can be found on GitHub.


1 / 4
2 / 4
3 / 4
4 / 4
< >

Data-driven config screen
Path viewer
Upgrade tracking
Path viewer 2

It contains the following features:
• In-depth path viewer - Melon King is a story-based game in which each run the monarch would choose among a variety of different upgrade paths to reach an ending. The data-driven path viewer helps guide newer players along these paths, advising them on which upgrades they should purchase and assisting them in locating any upgrades they may have missed.
• Upgrade tracker - The upgrade tracker allows players to select which upgrades they would like to purchase first, providing additional information on their progress to those upgrades. It also allows them to track all upgrades, informing them which set of upgrades they should purchase next and their progress towards those upgrades.
• Searching tracker - In Melon King, players can upgrade their hoes to provide benefits when farming melons. One of these upgrades is called 'searching', which randomly gives the player bonus items when farming. The searching tracker monitors these items and informs the player what they've found.
• Auction timer - Auctions are held every 30 minutes; if player is in their housing at that 30 minute mark, they can choose to be teleported into the auction to bid against other players for rare items. The auction timer keeps track of this, telling players when the next auction is and sending them notifications shortly prior to an auction starting.
• Message hider - When playing Melon King, players' chats are often filled with various redundant or unnecessary messages from the game; the message hider allows players to select which of these messages they want to receive, preventing the rest from flooding their chat.
• Code hider - When playing Melon King, many players face performance issues as a result of the hundreds of chests, signs, and other unrelated blocks in the code area. This area is not related to the game, and as such, the code hider feature helps improve performance for some players by hiding all non-gameplay-related blocks and tile entities.

Dragon Commissions

This project involved the use of:

IntelliJ IdeaPaperJava

DragonCommissions was a freelancing commissions server I was briefly a part of, working as a plugin developer. One of my commissions through the team was to recreate the plugin seen in this video, as seen below. This involved creating a custom items system to abstract the creation of custom items and a fully custom boss fight. The plugin was developed in Java using the Spigot API and was completed in a short timeframe.


1 / 4
2 / 4
3 / 4
4 / 4
< >

DyingIsOP - Boss arena overview
DyingIsOP - Boss healing
DyingIsOP - Boss shields taken down
DyingIsOP - Boss melee phase

Urania Shop

This project involved the use of:

IntelliJ IdeaSpongeJava

Urania shop was a commission I completed, acting as a fully-customisable shop plugin with support for modded items and blocks. The plugin integrated with Vault's economy API to provide cross-plugin compatability.


1 / 1

Urania Shop screenshot