Ludo.ai
Case Study8 min read

Gorash: The Merge Game the Ads Promised, Built Solo With Ludo and AI Agents

Platform
Android (iOS in review)
Engine
Godot 4
Genre
Merge roguelite
Release
Out now on Google Play
Team
Solo
Ludo Tools
Image Generator (Generate with Style), Animate, API & MCP
AI Assistant
Claude Code
Gorash in motion: merges in the pit, the branching run map, Wheel effects and a boss. Most of the icons, the map nodes, the action-bar icons and many of the effects started as Ludo generations.

Morgan Vincent's son loved the merge games in mobile ads, and the real games were nothing like the ads. So Morgan, a developer who isn't an artist, built him the one the ads promised, alone, in about a month.

"I made Gorash because of my son. He loved the merge games he saw in mobile ads, and the actual games turned out to be nothing like the ads. So I built him the one the ads promised merged with roguelite features that I do like (pun intended)."
— Morgan Vincent, solo developer of Gorash

Gorash is a merge roguelite for mobile. You drop pieces into a pit and merge two of a kind into a stronger one, and every fusion does something: it deals damage, raises a shield, heals, or summons. Enemies, items and events all try to stop you, and at the end of a run you are paid in loot, from common gear up to uniques with special effects. You pick a path through a branching map, choose between three heroes (Vanguard, Warlock and Ranger), and climb difficulty levels that scale up as you go.

Gorash is out on Android, free, with no ads and in-app purchases that the game's economy is meant to make optional. At the time of writing, the iOS version is ported and waiting for Apple's review, and a Steam port is ready while the Steam account goes through validation. Morgan, of the one-person studio Fluidifia, calls himself "a jack of all trades but a master of none". So it is worth looking closely at how a one-person game ended up with hundreds of consistent icons, frames and effects.


What Ludo made, counted

Morgan does not have to guess how much of the game came from Ludo. His agents log every generation in a manifest, so the numbers below are counts, not estimates.

"I keep a manifest of every generation, so I can give you real numbers rather than a guess."
— Morgan Vincent

Between 21 September and 1 November he sent 1,201 requests to Ludo, which returned about 2,000 images, for about 1,030 credits. Of the files in the shipped game, 692 trace back to a Ludo generation. By his count that is roughly 60% of the game's 2D art, and most of what you touch while playing:

  • Icons: 142 item icons, 116 talent icons, 55 Challenge mode and rune icons, 45 HUD icons, 44 quest icons and 34 navigation icons.
  • Effects and world: 50 VFX sprites, 49 pit-hazard and Wheel assets, and 44 environment pieces.
  • Interface: 34 frames and buttons, most of them 9-slice, plus map nodes, achievements, blessings, shop art and banners.
Eight Gorash icons made with Ludo on a dark background: a demon jar, a gyroscope ring, a steel counterweight with a blue shield, a horned skull with a crown, a cracked rock with a seismic wave, a gold gift box with a ruby, an open treasure chest with a padlock, and a closed chest with a parchment medallion
Eight of the 692, as they ship: item icons, a talent icon, a quest icon, an action button, the Shop's daily gift, the Stash tab and a map node. Six were made with a style reference, two from a prompt alone.

Ludo also reaches into the 3D side: 141 of the shipped 3D models started as a Ludo image (more on that below), about 40% of the game's 3D files: 58 pit objects, 23 enemies and bosses, 21 decor pieces, 12 "Ultimate" pieces, 12 props, 10 junk pieces and 5 weapons.


Time and money

  • Per asset: under a minute to generate, and roughly 2 to 5 minutes per shipped asset once review and cleanup are counted.
  • Per batch: about an hour for 30 icons, from prompt to in-game, including his review.
  • Ludo: 1,201 requests and about 1,030 credits, from 21 September to 1 November.
  • The whole game: under $300 in tools, with his Claude Max plan shared across other projects.
"I'm a developer, not an artist, so without generation I would have needed a freelance artist. At a rough $20 to $60 per icon, the ~700 2D assets alone would have been $14,000 to $40,000 and months of back-and-forth."
— Morgan Vincent

One reference per family

Hundreds of icons only work if they look like one game, and Morgan's answer is the style reference. His workhorse was Generate with Style in Ludo's Image Generator, with 852 of his 1,201 requests.

"Every one of my 852 Generate with Style requests had a reference image, usually an asset already in the game. One item icon was the reference for most item icons, one blessing icon for all the talent icons, and one VFX sprite for many effects and 3D concepts."
— Morgan Vincent

His prompts describe the new object in detail and end with one line that keeps the reference in its lane: "Match the rendering style of the reference image, not its subject."

The rest of his requests split across Create Image (173), Edit Image (86), Remove Background (85) and Animate Sprite (5). Edit Image is how the game's top tier was made. The "Ultimate" piece of each family is an edit of its tier-5 icon, with a prompt that asks for the same silhouette, only more prestigious, so the top tier reads as the same object, upgraded.

Morgan rarely generates one asset at a time. He usually asks for two variants per asset, runs batches of 20 to 40, and picks the keepers on a contact sheet. Then a set of Python and Pillow scripts gives every asset in a family the same treatment:

  • trim and center to 256 px;
  • remove plain or painted backgrounds;
  • tint one base frame into 7 rarity frames;
  • pack animation frames into sprite sheets;
  • cut 9-slice textures.

From there the files go into Godot 4, with icons compressed to ASTC so the game stays light on a phone.

An animated cartoon explosion: a small bright flash bursts into a fiery cloud, then breaks into dark smoke puffs that fade away
The bomb blast, made with Animate Sprite and packed into a sprite sheet by his scripts. Every bomb merge in the pit plays it. It is one of only five Animate Sprite requests in the whole project, at 8 credits.

The tip: generate a frame once, 9-slice it everywhere

Generated UI has a reputation for looking like a pile of unrelated pictures. Morgan's fix is an old engine technique applied to new art. He generates one frame texture, cuts it into nine zones, and lets the engine stretch only the middle, so the corners and ornaments stay crisp at any size.

"If you only take one tip from me, take this one. One Ludo frame texture, sliced into 9 zones, becomes every panel in the game at any size, with crisp corners: one parchment texture covers all the modals, and one item frame covers every rarity. It's what makes generated UI look like one coherent interface instead of a pile of pictures."
— Morgan Vincent
A parchment scroll texture shown two ways: the cleaned texture with 9-slice guide lines, and the same texture stretched by the engine into a wide panel, a small square and a tall panel
One 768 × 1280 parchment texture, cleaned, sliced and stretched into every modal in the game: item sheet, map windows, weekly reward, level details.
A silver item frame from Ludo next to seven recolored versions for the rarities Common, Magic, Rare, Legendary, Unique, Set and Ancestral
One item frame, generated once and recolored in code into seven rarities. No new generation per rarity, and the 9-slice keeps the border the same thickness on a small loot square and on the large item sheet.

That is how 34 frames and buttons, most of them 9-slice, cover every panel and item frame in the game.


From a Ludo concept to a 3D model

For the 3D enemies and props, Ludo is the concept artist. Morgan generates the object or the enemy in Ludo, in the game's style, on a plain background, and turns that image into a 3D model with an image-to-3D tool. Scripts then clean up the model and add animation clips in Blender before it goes into Godot.

Two Ludo concepts next to the 3D models built from them: a goblin gravedigger with a skull helmet and a shovel, and a wooden mine cart with iron wheels
The Goblin Gravedigger of the Crypt act and the Mines act's pit cart: Ludo concepts on the left, the 3D models built from them on the right.

Agents in the driver's seat

Morgan started on Ludo's website. Today none of his generation happens there. Everything runs locally through the Ludo API, called by AI coding agents (Claude Code, mostly in VS Code, though Codex works too), and the agents use the Ludo MCP server to look up parameters and docs.

"In practice, I describe what I need in plain words. The agent writes the prompts in the house style with the right reference, runs the batch, logs every generation in the manifest, builds the in-game files and shows me the results."
— Morgan Vincent

For anything with real choices, he uses fluidplan, a planning skill he wrote and open-sourced. It turns a plan into a small local web page with checkboxes and multiple-choice options, each one explained and illustrated with Ludo proposals. He ticks, comments and sends, and the agent revises the plan, then carries it out. Other skills drive Blender through its MCP for the 3D side.

The rest of the setup runs like a small studio: Claude Opus 5.5 leads 5 to 10 sub-agents on separate branches of the same repo (one on the UI, one on 3D, one on balancing), the agents work about 17 hours a day from first commit to last, and he steers them from his phone.


A family creation

The agents write the code and Ludo draws most of the 2D, but the game still comes from people. Morgan tests it himself whenever he has a moment, emailing himself one note per area of the game ("stash: …", "boss fight: …") and pasting them back later as one long list of fixes and ideas.

"Playing your own game every day is the part you can't automate."
— Morgan Vincent

And the player it was made for has joined the team.

"He adores it, and he's become my co-designer: he suggests features, enemy attacks and what the characters should look like. He now writes his ideas down at school when he has a moment, and all I have to do is turn them into real additions. It has become a family creation."
— Morgan Vincent

When he shared the launch on Reddit, Morgan was modest about it, and clear about why it was worth sharing anyway:

"I'm just sharing my experience to show that, alongside the 30-second demos we often see in this sub, there are also projects that make it all the way to a fully functional release."
— Morgan Vincent, on Reddit

Where to find Gorash

A merge roguelite where every fusion is an attack, a shield, a heal or a summon, with three heroes, a branching run map and loot from common to unique. Free on Android, with no ads. At the time of writing, iOS is waiting for review and Steam is planned.

Gorash on Google Play
fluidifia.com/games/gorash
Fluidifia on X

Make your game's assets with Ludo

30 free credits to start. No credit card required.

Keep reading

All posts