What’s going on?
Over the past few months, Ducky’s latency, uptime, and overall reliability have been unacceptable. We’ve also severely fallen behind on our update schedule, as our last release was in March. Maintaining the current codebase has become increasingly difficult. Lua’s small ecosystem means we’ve had to build and maintain our own libraries, including ropi (our Roblox API wrapper), erlua (our ERLC API library), and Quackscordia (our fork of Discordia with modern interactions support). This is simply not sustainable. When interacting with Ducky, there’s a noticeable delay and occasional interaction failure. We want to be transparent about what’s gone wrong and how we’re fixing it.Project Vegavis — Ducky v2.0.0
Vegavis is a project codename — our service will still be branded as Ducky.
Why a full rewrite?
Ducky currently runs everything on one process, including the main bot, event handler, all 14 shards’ gateway WebSocket connections, database operations, and the public API. At nearly 14,500 servers, that’s far too much for a single process to handle. Rebuilding from the ground up lets us properly plan out the architecture and take the opportunity to clean things up, making it easier to ship updates faster without sacrificing quality.What will change?
For the most part, Ducky’s feature set will remain the same, but how you configure Ducky is changing significantly. The biggest change is a proper Dashboard, replacing all Discord-based configuration. This removes Discord’s limitations on page size and component types, and lets us add more configuration options that weren’t possible before. The rewrite also lets us implement a proper data validation system and schema, preventing invalid configuration from reaching the database. We’re also building a Moderation Panel, which will allow for ERLC private server moderators to manage players in real-time directly from our website.We’re looking for frontend developers to help build the Dashboard and Moderation Panel. If you’re experienced with React and TypeScript and know what Ducky is as a service, please reach out to us via a Development ticket in the Pond.