Calvin Blann
Feed the Ducks game icon

Roblox game · live

Feed the Ducks

A cozy Roblox game where you tap the pond to throw bread, hatch rare ducks and grow your pond. I designed and scripted it, built the UI and made the 3D art.

  • Platform Roblox
  • Genre Incremental simulator
  • My role Design, code, UI, 3D art
Feed the Ducks store art: a big yellow cartoon duck with a slice of bread flying toward it, ducks swimming in a pond behind
7Pond worlds, opened by rebirths
43Duck breeds to find
32Mutations, plus combos
3.0msRender CPU per frame, down from 5.6 ms

What I built

The systems behind it

I built the whole game, then kept shipping updates after playtests with real players, kids included.

Gameplay loop

Tap or hold the pond to throw bread. Ducks swim over, eat and hatch more ducks. Sell them for cash, buy upgrades, then rebirth for Feathers to spend in a skill tree with three branches.

Seven pond worlds open up as you rebirth, each with better luck for its own mutation. Boats carry ducks on trips and bring back treasure crates.

UI and HUD

A comic sticker look: ink outlines, a hand-lettered logo, hard shadows and 51 flat sticker icons, warmed up with paper grain and stitched edges.

New players start with a short HUD: the pond, coins, SELL and the shop. More menus show up as they need them. Every list shares one scroll system, popups get their own lanes so nothing covers a button, and I check every screen at desktop and phone sizes.

3D art pipeline

The chunky toy models are made in Blender by Python scripts that run headless. Each one bakes colour and shading into a single texture and exports for Roblox.

Ducks, hats and props come out of the same pipeline, so the style stays consistent. The store icon and thumbnails are Blender renders too.

Rare finds

Every hatched duck rolls for its breed and mutation, and the Duckdex shows the odds for each one. Two mutations can combine into a combo.

The rarest duck, the Mara Duck, is 1 in 1 nonillion. Beginner's luck gives new players a gentler start, so even a 6-year-old can catch the Golden Duck.

Trading

Send a request from a player's profile and build the offer. Both players press READY, a 3 second countdown runs, and the server re-checks both bags. The trade goes through whole or not at all.

A red warning shows when you give far rarer ducks than you get, ducks you've hearted never trade, and you choose who can send you requests.

Fair monetization

Game passes and developer products, with the odds shown before any paid luck or random item. Store offers wait for natural moments.

I turned down tactics that pressure young players into spending. Donations to the Duck Pond Fund only give thanks and a spot on the board.

Live events

Server events like Gold Rush, Duck Storm, Meteor Shower and Blood Moon change the whole server, and each one shows up in the world: meteors, a red moon, falling coins.

Weather like petals, rain, snow and fireflies raises sale prices, with the bonus shown as a number. Duck Races put everyone in the server against each other.

Performance

I measured before and after. Render CPU went from 5.6 to 3.0 ms a frame after I pooled ducks, bread and effects and made far-away ponds lighter.

Player joins no longer cause spikes, and drawn ducks are capped per device: 70 on phones, 90 on PC.

Want systems like these in your game?

I build Roblox UI, scripts and 3D models for other developers, at fixed prices. Tell me what you need and I'll reply with a quote.