WorkAdventure maps for Mossverse, built on top of the official map-starter-kit.
| Repository | Purpose |
|---|---|
| mossverse-wa-infra | Infrastructure and deployment documentation |
| map-starter-kit | Original WorkAdventure starter project |
| wa-village | Upstream source for the village.tmj map |
| File | Role |
|---|---|
village.tmj |
Base village map and starter map for this repository |
office.tmj |
Office map connected from village.tmj |
conference.tmj |
Conference / meeting map connected from office.tmj |
| Environment | URL |
|---|---|
| Office map | https://dev.wa.moss.land/~/mossverse/office.wam |
| Conference map | https://dev.wa.moss.land/~/mossverse/conference.wam |
This project targets Node.js 24 (see .nvmrc).
npm install
npm run devOpen http://localhost:5173 for local preview. Map scripts live in src/.
mossverse-wa-map/
├── office.tmj
├── conference.tmj
├── village.tmj
├── tilesets/
├── src/
│ ├── main.ts
│ ├── roofs.ts
│ └── meeting/
├── scripts/
│ └── validate-tilemaps.mjs
├── app/
│ └── app.ts
├── .nvmrc
├── .env
├── .env.secret
└── .github/workflows/
Notes:
- Add or edit
.tmjmap files at the repository root. - Keep browser-side map scripts in
src/so Vite includes them in the build. - Preserve per-map metadata such as
mapCopyright,mapName, andscriptwhen editing maps in Tiled.
Pushing to master triggers GitHub Actions to build the maps and upload them to map-storage.
Repository settings -> Secrets and variables -> Actions:
| Name | Value |
|---|---|
MAP_STORAGE_API_KEY |
Server SECRET_KEY |
MAP_STORAGE_URL |
https://dev.wa.moss.land/map-storage/ |
UPLOAD_DIRECTORY |
mossverse |
Notes:
- Keep
MAP_STORAGE_API_KEYin GitHub Secrets only. MAP_STORAGE_URLandUPLOAD_DIRECTORYcan also be set locally through.env.
npm run uploadBuild and upload in one step.
Upload only:
npm run upload-only.env
UPLOAD_MODE=MAP_STORAGE
MAP_STORAGE_URL=https://dev.wa.moss.land/map-storage/
UPLOAD_DIRECTORY=mossverse.env.secret
MAP_STORAGE_API_KEY=your_server_secret_key| Command | Description |
|---|---|
npm run dev |
Start the local Vite development server |
npm run validate-tilemaps |
Validate the .tmj tilemaps (auto-runs before buildmap) |
npm run buildmap |
Build maps into dist/ |
npm run upload |
Build and upload maps |
npm run upload-only |
Upload without rebuilding |
This repository contains maps with different upstream origins.
village.tmjis the base / starter map in this repository and was imported fromworkadventure/wa-village.office.tmjandconference.tmjare connected maps maintained in this repository.- Each map keeps its own
mapCopyrightmetadata inside the.tmjfile.
See NOTICE.maps.md for map-by-map attribution notes.
- Code: LICENSE.code
- Base map license text: LICENSE.map
- Asset license notes: LICENSE.assets
- Map-specific attribution notes: NOTICE.maps.md
Important:
- Do not assume every map in this repository is covered by the same attribution notice.
- Keep upstream copyright and attribution metadata intact when editing or redistributing maps.
- In particular, preserve the
village.tmjbase-map notice inherited fromwa-village.