r/monogame
Five months into my first game (code-first, MonoGame)
I'm a software engineer building my first game, a 2D skill based space pvp MMO. I skipped Unity/Unreal and went code first with MonoGame because I'd rather write code than spend my first weeks learning some tool.
This is what I've learned,
1. UDP packet budgets are a hard wall.
You get roughly 1000-1400 bytes per packet. If inputs plus projectiles for a crowded system exceed that, you can't keep the same tick rate and send everything, even with compression. I built an interest graph (thanks to an unreal blog) that prioritizes dangerous projectiles and nearby players and updates them at normal cadence letting less threatening items update at a lower rate, it's not perfect but at least degregation is more predictable now.
2. Rule out your environment before you roll back your code.
I started getting some rubber banding on my dev server and burned time on rollbacks and roll-forwards. It was a noisy neighbor on shared CPU. Bumping compute fixed it instantly.
3. Don't reinvent git.
My first content pipeline existed to push live changes for values that basically never change, then copy them to every game server. That's just a worse git.
4. Code-first means you build your own tooling, and it snowballs.
I started with an admin tool to tune flight values live. Then a route editor for travel between star systems. Then I realized I'd need this across multiple servers, so now there's a control plane with reconciliation and statuses. Worth it for me, but budget for it. But that sort of tooling is my bread and butter as a full stack dev
5. Design docs let a second dev work independently.
I wrote up scope and module overlap before onboarding a collaborator. He delivered a working economy (markets, missions, an immutable transaction ledger) that my planet systems hook straight into.
6. Get real players in early.
A private Steam playtest let me test things I can't solo, like lag compensation on shots, and it surfaced real issues.
The one thing I keep putting off is art, learning blender has been on my todo for months :/ .. Anyone have tips for forcing yourself over that hump?
Who Else is MonoGame Pilled in 2026?
Hey I have been developing my last two projects in MonoGame and am a huge fan of it compared to engines like Unity or Godot.
As an engineer I especially like the full code set up so you can just "dotnet run -f net9.0" and test instantly, and set up CLI flags for running tests. The cross-platform everything is also totally awesome. I feel like Monogame is really slept on as a nice in-between from crazy custom C++ engines vs very rigid and heavyweight things like Unity or Godot.
Curious if any other game devs have been using it lately and their thoughts vs other engines or frameworks.
Completed the ladders for my platformer-prototype (Made with MonoGame)
These tiles with ladders on it (Standing up from the ladder when reaching the top or climbing down when standing on the block) had been quite tricky, but now all works fine.
MonoGame v3.8.6-Preview.1 is out!
See here -
https://github.com/MonoGame/MonoGame/releases/tag/v3.8.6-preview.1
100% of what we announced in the Roadmap is shipping with 3.8.6
Please try it out and provide feedback before the offical 3.8.6 release is out!
#indiegamedev #gamedev #gamedevelopment
Anyone have any OSS UI packages they recommend for Swift?
If you’ve used SwiftUI for iOS development, they have a ton of really nice quality of life features for user interface where you don’t have to reinvent the wheel for anything related to button clicks, animations, dynamic scaling, rendered lazy load lists, and a whole bunch of stuff.
One thing that would be really nice for MonoGame is standardized UI helpers for fonts, scenes, transitions, accessibility support and that type of UI stuff.
Does anyone know of anything like this they recommend using?