開發日誌 發佈於 2026-02-20 · 7 min read

How We Built a Farming Game Inside Genshin Impact

development behind-the-scenes miliastra genshin

What if you could build a farming game inside one of the world’s most popular RPGs?

That was the question that kicked off Garden Party. Not “should we?” but “can we, and how far can we push it?” The answer turned out to be a lot further than we expected — and the journey to get there is a story worth telling.

The Idea

When HoYoverse launched Miliastra Wonderland — Genshin Impact’s built-in UGC platform that lets creators build custom game stages — we immediately saw an opportunity. Millions of players were already in the Genshin ecosystem. They already had the game installed. What if we could give them a cozy farming experience without asking them to download anything new?

The cozy game genre was exploding. Stardew Valley had proven that people love planting, harvesting, and watching numbers go up in a relaxing setting. But most options required a separate purchase or a new install. We wanted to meet players where they already were — inside Genshin Impact itself.

So we set out to build a full farming simulation game that runs entirely within a Genshin Impact stage. No external servers for gameplay. No separate client. Players just open Miliastra Wonderland through the Paimon Menu, find our stage, and start planting.

The Constraint That Shaped Everything

Here is where things get interesting for the developers in the room.

Miliastra Wonderland uses a visual node graph system for all game logic. Every interaction, every calculation, every mechanic — it all has to be expressed as connected nodes in a visual editor. Think Unreal Blueprints, but with hard limits. There are caps on how many nodes you can use per graph. You cannot just keep adding complexity indefinitely.

This single constraint shaped every design decision we made.

Early on, we realized that hand-building node graphs in a visual editor was not going to scale. The graphs for even simple mechanics were hundreds of nodes deep, and debugging visual spaghetti is nobody’s idea of a good time. So we built something unconventional: a TypeScript-to-node-graph compiler we call Genshin-TS.

The idea is straightforward. We write game logic in TypeScript — readable, testable, version-controlled code. Then our compiler transforms that code into the visual node graph format that the Genshin engine can execute. It means we get all the benefits of a real programming language (functions, loops, type checking, tests) while still outputting something the platform can run.

But the node limits are always looming. Every feature has a budget. Want to add a weather system? You need to find nodes to spare, or optimize something else to make room. It is like building furniture in a tiny apartment — every piece has to earn its square footage.

This forced us to be ruthless about priorities. We could not build everything, so we had to build the right things. And honestly, the game is better for it.

From 1 Crop to a Full Economy

The first playable version of Garden Party had exactly one crop and a sell zone. You planted it, you waited, you harvested it, you sold it. That was the entire game.

And people played it. They actually enjoyed it.

That early validation gave us confidence to keep building. We added growth mechanics, then a watering system with 5 levels that speeds growth up to 32x normal speed. Suddenly the game had a loop: plant, water, harvest, sell, buy more seeds, repeat. It was satisfying in that simple, compulsive way that good farming games nail.

Then came mutations — random bonuses that make each harvest a small thrill. A crop might come out Golden, or Shiny, or if you are really lucky, Luminous. Each mutation multiplies the sell value, so every harvest carries a little rush of anticipation. Will this one be special?

We layered in a weather system next. The garden cycles through sunny, rainy, and snowy conditions, and rain and snow can trigger their own mutations on crops — Wet, Chilled, and the rare Frozen mutation when both combine. Weather added a dimension of timing and strategy we had not originally planned for.

Daily quests gave players a reason to come back. A milestone system gave them long-term goals. An in-game economy built around Clover currency tied everything together into a coherent progression loop. Six crop types — Carrot, Berry, Sunsettia, Corn, Radish, and Sweet Flower — each with their own growth speeds, prices, and strategic niches.

And all of it runs on node graphs, compiled from TypeScript, inside someone else’s game engine. Sometimes we still can’t quite believe it works.

15 Languages, One Garden

Genshin Impact is a global game. Its players speak dozens of languages. We decided early that if we were building inside a global platform, our game should speak everyone’s language too.

We built a translation pipeline that handles 637 strings across 15 languages: English, Japanese, Chinese (Simplified and Traditional), Korean, Spanish, French, German, Russian, Portuguese, Italian, Thai, Vietnamese, Indonesian, and Turkish. All supported from day one.

The technical challenges were real. Character width varies dramatically between CJK scripts and Latin alphabets — a label that fits perfectly in English might overflow in German or look oddly sparse in Chinese. UI layouts had to be flexible enough to handle all of them gracefully.

But the payoff was worth every hour of work. Non-English players notice when a game supports their language, and they are vocal about it. Some of our most passionate community members found us specifically because Garden Party was available in their native language when similar games were not.

What We Learned

Building Garden Party taught us lessons we did not expect:

  • Constraints breed creativity. The node graph limits sound like a nightmare, but they pushed us toward cleaner, more focused game design. When you cannot brute-force a solution, you find elegant ones.
  • Start small and iterate. Our first version had one crop and a sell zone. Players loved it. We did not need a fully realized game to find out if the core loop worked — we just needed the core loop.
  • Localization is worth it from day one. Retrofitting translations into an existing game is painful. Building the pipeline early meant every new feature automatically shipped in 15 languages.
  • Building in someone else’s ecosystem is a tradeoff. We get access to millions of players who already have Genshin installed. In exchange, we are subject to platform updates, limitations, and changes we cannot control. It is worth it, but you have to go in with open eyes.
  • Community feedback loops are faster than you think. Our Discord server became an instant feedback channel. Players report bugs, suggest features, and test changes faster than any QA team could. When your players can reach you directly, the iteration speed is remarkable.

What’s Next

We are not done. Garden Party keeps growing — more crops, more features, more reasons to come back to the garden. The community keeps surprising us with how they play, what they ask for, and the creative ways they use mechanics we never anticipated.

If you have not tried Garden Party yet, there has never been a better time to jump in. It is free, it runs inside Genshin Impact, and it is available on the America, Europe, and Asia servers. Grab some friends — up to 4 players can farm together in co-op — and come see what a cozy farming game looks like when it is built inside one of the biggest RPGs on the planet.

Play Garden Party
View the Garden Party stage on HoYoLab for your region

相關文章