How to implement a "lobby + sub-game" architecture effectively in Godot? Seeking help regarding resource subpackaging and runtime loading.

Seeking Advice: How to Design a “Lobby + Sub-Games” Architecture in Godot?

Hi everyone,

I’m currently evaluating Godot 4.x for a project that follows a “Lobby + multiple sub-games” structure, and I’d like to ask for advice from people who have experience with similar architectures.

Background

The project structure is roughly:

  • One main Lobby application
  • Multiple sub-games (different gameplay modes)
  • Each sub-game has its own lifecycle (enter / exit)
  • Ideally, sub-games should be relatively independent and easy to maintain

Potential requirements include:

  • Entering and exiting sub-games at runtime
  • Clear separation between lobby logic and sub-game logic
  • Some form of resource separation or on-demand loading

Questions

  1. Is there a recommended or commonly accepted way in Godot to implement a “Lobby + Sub-Games” architecture?
  2. How do people usually handle:
    • Resource boundaries between the lobby and sub-games?
    • Runtime loading or switching between sub-games?
  3. Are there any proven patterns or real-world practices (official, community-driven, or from production experience) that work well for this?

Concerns

  • Godot doesn’t seem to have a native equivalent to Unity’s AssetBundle / Addressables
  • I’m unsure about the long-term maintainability of approaches like:
    • Single project with all sub-games included
    • Using PCK files or scene-based modularization
  • I want to avoid choosing an architecture that becomes hard to scale or refactor later

What I’m Looking For

  • High-level architectural advice
  • Practical experience (what worked, what didn’t)
  • Pitfalls to avoid when designing this kind of system in Godot

Any insights or suggestions would be greatly appreciated.
Thanks in advance for your time!