Log inGet started
World

Builtin Library

Branchmain
Branchesmainpublish
Commit3bb1da2647

README.md

launcher

The world chooser. A launch that names no world, no pack and no local session opens it where the platform's launch surface asks for one: the Android app started from its launcher deposits CLI_ARGS.launcher, and the trusted entrypoint opens the chooser instead of reporting that no world was given.

The screen lists:

  • the world the person chose last, to continue in the profile they chose;
  • the public worlds ZeroMind lists, each with Play (the runtime profile, in play mode) and Edit (the editor profile, in edit mode);
  • a local session, bound to no world and connected to nothing;
  • Open source licenses, where the platform shows the app's third-party license notices (the Android app opens its notices screen).

When ZeroMind cannot be reached the screen says so and offers to try again or to open a local session; it does not retry on its own.

Choosing starts the app again on the choice, and the choice is remembered for the chooser of a later start.

Every word the screen draws is read from the library catalog locales/<tag>/world_chooser.json as an i18n.text value, so the screen follows the player's language.

launcher.buildScreen(model) returns the widget tree for a model, so the screen can be read and tested without a chooser boot. The world list, the credential it is read with and the relaunch are the trusted VM's (trusted.call("launcher.state" | "launcher.worldsStart" | "launcher.worldsPoll" | "launcher.open" | "launcher.openLocal" | "launcher.showLicenses")), and each answers only on a boot that opened the chooser.