Advice for a 2D serious game (email UI + learning curve questions)

Godot Version

4.5.1

Question

Hi everyone,
I’m exploring Godot for a 2D “serious game” project and I’d love some advice before committing fully to the engine.

Project context

I want to build a 2D management / serious game that simulates a manager’s work week.
The player interacts mainly through:

  • An email inbox (list of messages, filters, read/unread, etc.).

  • Email detail views (subject, sender, body, reply options).

  • Some UI screens for meetings, decisions, scores and feedback.

The game should eventually run:

  • On the web (HTML5/WebAssembly, hosted on a shared Windows hosting like Aruba).

  • On mobile (Android, iOS) as a native app exported from Godot.

There will also be a backend (HTTP API + database) to store user data, decisions and scoring, but my questions here are mostly about the client / UI side in Godot and the learning curve.


1. UI implementation: email inbox and detail view

For this kind of “business‑like” interface (inbox + email detail), I’m thinking of using only standard Godot UI nodes:

  • Control as the root for UI scenes.

  • ScrollContainer + VBoxContainer for the inbox list.

  • A reusable “email row” scene (sender, subject, preview, state).

  • Label / RichTextLabel for email bodies, possibly inside a ScrollContainer.

  • LineEdit / TextEdit and OptionButton / Button for user input (reply options, dropdowns).

Questions:

  • Does this sound like a reasonable and idiomatic approach for Godot’s UI system, or am I missing a better pattern (CanvasLayer, multiple scenes for UI, specific best practices)?

  • For responsive design (web + mobile, different resolutions and aspect ratios), is it realistic to rely only on anchors, containers and themes, or should I expect a lot of custom code to keep the layout stable and readable?

If you know good examples, tutorials or open source projects with “app‑like” UI (email, dashboards, forms) in Godot, I’d really appreciate some links.


2. Learning curve and coding background

About me:

  • I’m not new to programming, but my background is mostly in simpler, event‑driven languages like Visual Basic (VB/VBA) and some scripting.

  • I’m comfortable with logic, data structures and working with databases, but I’ve never shipped a game or used a game engine before.

  • I’m fine with learning GDScript, but I’d like to understand how steep the curve is for someone coming from VB‑style code.

Questions:

  • For someone with a VB/VBA background, how hard is it to adapt to GDScript and Godot’s “nodes and scenes” way of thinking?

  • Are there learning paths or tutorials you recommend specifically for people who already know programming, but are new to game engines and UI layout in Godot?

  • Would you suggest starting with very small UI prototypes (e.g. only an inbox with fake data) before trying to implement the full “week of a manager” simulation?


3. Is Godot a good fit for this use case?

Given that the project is:

  • 2D, UI‑heavy, “serious game” (more about decisions and feedback than real‑time action).

  • Needs web export and later Android/iOS export.

  • Will eventually consume a backend API (HTTP, JSON) for saving results and loading scenarios.

Do you think Godot 4 (standard GDScript version) is a good choice for this type of project, or would you strongly recommend another approach/engine for this kind of “business‑like” serious game?


Thanks a lot for any advice, especially:

  • UI architecture tips for inbox‑style interfaces in Godot.

  • Honest feedback on the learning curve for someone coming from Visual Basic.

  • Links to relevant docs, tutorials, or example projects.

I really appreciate any guidance before I dive deep into the engine.

Just to preface my answer - I have actually built an Email system for my work-in-progress game ETA: Unknown, in which you manage a logistics company. The system is embedded in a 3D game, but it’s essentially just a bunch of Control derived nodes underneath. If you give me your GitHub username here or through the DMs, I can share the source code with you to dissect.

It’s OK, but you will notice during the development that you need a couple more elements - probably a Resource to hold email data, Scenes for item elements on the inbox list, etc.
You don’t have to think of every possible element that the game needs ahead of making a game. It might help of course, but it’s not necessary - just adjust your project along the way.

It’ll work with the built-in functionalities. I haven’t used any custom nodes in my system.

My first “real” programming was making Excel macros in VBA, so a couple years ago I was probably exactly in the same spot as you are currently. GDScript is very easy to grab, but there is not much in VBA that translates directly to Nodes and Scenes. You’ll just have to get used to it and it’ll just click at some point. You shouldn’t worry about the learning curve, you’ll get past it pretty quickly. GDScript is very intuitive and much more pleasant to work with than VBA. You will actually start hating VBA after that journey :slight_smile:

Yes, try out these official tutorial series:

If you don’t have experience, then yes, definitely. Try out small, learn from it, then scrap the project and start fresh with your new knowledge.

You’re on a Godot Forum, so of course people will say that Godot is a good choice :slight_smile:
But seriously, I would say Godot is the perfect engine for this type of project. It’s lightweight, beginner friendly, stable, easy to iterate on. Your project requires exactly that.

If you ever encounter any specific issues - let me know, I’m happy to support!

2 Likes

Dear Kuba,

many thanks for your answer. I feel like at home now :wink:

Mailor looks like what I’m looking for and work perfectly. So my github id is michelong. I’m very grateful for this present :folded_hands:

I will study documentation and the code in the next weekends.

Many thanks!

1 Like