[FEAT] Multi-user support: separate save files, save states, and settings per user with concurrent session access
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 30/100
- Issue type
- Feature
- Clarity
- Needs clarification
- Activity status
- Quiet
- Tech stack
- docker
- Domain
- game-dev, infrastructure
Research direction
Start by reviewing how the container currently uses /config and how the KasmVNC session is started. The issue proposes per-user directories such as /config/users/, SCUMMVM_PROFILE selection, and separate ports for concurrent sessions; first define which of these is in scope. Done should provide isolated saves and settings and simultaneous access without sessions interfering.
Written by the indexing model from the issue text.
Description
Is this a new feature request?
- I have searched the existing issues
Wanted change
Add multi-user support to the docker-scummvm container so that multiple people can:
- Each have their own isolated save files and save states that don't interfere with each other
- Access the container simultaneously from different locations (e.g. different browsers/devices on a home network or over the internet)
- Optionally have their own game settings/preferences per-user profile
A basic implementation could work by mapping user profiles to subfolders under /config (e.g. /config/users/alice, /config/users/bob), each containing their own saves/, scummvm.ini, and any other per-user state. A login/profile selection screen in the KasmVNC web UI, or environment variable-driven profile selection (e.g. SCUMMVM_USER=alice), could be used to switch between profiles.
Reason for change
Right now the container is a single-user environment — all save files, save states, and config live in one shared /config directory. If two people use the same container (e.g. a family sharing a home server), they overwrite each other's progress and can't play the same game independently.
There's also no way for two people to use the container at the same time, since a second browser session just mirrors or interrupts the first.
For a self-hosted game server shared among family members or housemates, multi-user isolation and concurrent access would make the container dramatically more useful. Each person could maintain their own playthrough of a game without affecting anyone else.
Proposed code change
A possible approach without deep changes to ScummVM itself:
- Store user profiles under /config/users// (saves, ini, etc.)
- Add an env var SCUMMVM_PROFILE (default: default) to select which profile directory is symlinked/mounted into the active ScummVM config path at container start
- For true concurrent access, run multiple isolated ScummVM+KasmVNC instances on different ports (e.g. user 1 on port 3000, user 2 on port 3001), each pointing to their own profile directory — orchestrated via a lightweight user management layer or additional env vars like SCUMMVM_USERS=alice:3000,bob:3001
- Dominant language
- Dockerfile
- Stars
- 12
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Similar issues
-
[BUG]茶杯方块在取茶时会引发崩溃 Open
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
[Feat] 조합 영역 구분선 개선 Open
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
NovaSector/NovaSector#7872 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
-
Difficulty 1/5 1-3 hours Newbie friendliness 88/100
godotengine/godot-docs#12394 ·