How I become a Stardew Valley Mod Creator and Gained 1M+ Views in 2 Months.
 2025-10-05  Game

From the Game to the Mod

Last year, I became obsessed with the farming life simulation game Stardew Valley. In this video game, players manage a farm, go mining, build relationships with townspeople, and so on. What attracted me most was how vivid the world felt. Every townsperson has their own story, preferred gifts, daily schedule, and dialogue. It feels as if you are living alongside them.

In June, I began thinking about developing some projects to improve my coding skills. Although creating a finance-related project would have been more relevant to my major and perhaps more “beneficial” to my CV, I wanted to work on something I was genuinely interested in. So I started developing a mod for Stardew Valley.

At first, I experimented with several API interfaces. I was able to control the actions of NPCs: I could modify their schedules, dialogue, and movement paths. It was fascinating to make them say and do whatever I wanted.

I combined some trending internet memes from that time and made a video, using NPCs to act out a storyline.

I found that people really liked this format. Everything each NPC did was still in character, yet together they told a completely different story from outside the game, which made it especially interesting, didn’t it? This video received 180,000 views on the Chinese video platform Bilibili.

After that, I continued making videos while becoming more familiar with how to create a mature mod. My most popular video has received over 1.2 million views and more than 68,000 likes.

This is my creator profile page.

Stardew Valley

Some viewers also came up with creative ideas about the game. Once, a follower told me that although there is a library in the game, the main character cannot actually study there, which inspired me. Could I add something that would allow players to learn while playing the game? I mean learning something useful in real life, not just knowledge about the game itself.

Learning English is a difficult process for many Chinese students. Differences in word formation make English vocabulary hard to memorize. Therefore, I wanted to develop a mod that could help players learn vocabulary.

The programming language I used was C#. I had no prior experience with it. However, with my background in C and C++, I found C# easy to pick up.

In the end, I wrote 5,000 lines of code for this project. It was released in early August, and so far it has received 3,500 downloads and over 50 endorsements.

Mod author page

Mod author page

alt text

This project is open-source on GitHub.

To make it mature, I turn the small ideas into a structured and extensible project.

Rather than keeping everything in one place, I organized the code into clear layers such as Core, UI, Config, Utils, and Vocabulary. The entry point is intentionally thin: ModEntry only bootstraps a central CoreManager, and the main responsibilities are then delegated to specialized managers for progression, saving, settings, rewards, statistics, and vocabulary handling. I also kept presentation logic separate from gameplay logic—for example, the learning page focuses on rendering and interaction, while quiz flow and progression are handled elsewhere. This made the project easier to expand from a simple prototype into a more mature system.

One of the main technical challenges was designing long-term progression in a way that still stayed clean and maintainable in code. The mod supports multiple vocabulary packs loaded from text files, and I built the save system so that progress is stored separately for each pack, including learning state, review state, wrong answers, points, reward level, and final-stage progression.

I also designed the learning loop as a stateful system rather than a static quiz: wrong answers are pushed back into the queue during normal stages, while boss/review stages follow different rules and can reset a word back into future learning. I think this is what makes the project feel more polished: it is not just feature-rich, but organized around reusable components, clear data flow, and scalable game logic.

©2025 by SocietyNiu
Powered by Next.js