scmJS docs

Where the editor gets it

Every game-data file is fetched through one resolver (src/gamedata/source.ts), which settles the session's source once, in this order:

  1. Bundled: the build's own public/ (a clone that ran npm run extract, or the desktop app's copy, which its protocol serves under the same base). The probe is tileset/manifest.json or unit/manifest.json answering JSON.
  2. Stored: a copy an earlier upload or download left in the browser's private file storage (src/gamedata/store.ts, the Origin Private File System, about 27 MB; a browser without it holds the files for the session).
  3. Desktop: the desktop app searches the disk (next to the app, its data folder, $SCM_DATA_DIR, the usual install locations) and extracts from the first folder with the archives; the result is then step 1.
  4. None: flat colours and markers, and Help ▸ Game Data… opens.

There used to be a fifth step between 3 and 4 — a web address, from a VITE_GAME_DATA_URL build default or a preference over it, serving either an extracted tree or the two archives. It is gone. Nothing is fetched from an address the user did not name; when the chain runs out, the editor asks.