Skip to content

MOROway/moroway-app-dev

Repository files navigation

MOROway App Development Tools

MOROway App MOROway Dev App Info 10 Years

General

This repository provides the build tools for MOROway App. The code here is used to build the ready-to-use versions of MOROway App.

Platforms

Webapp Microsoft Store Play Store F-Droid Snap Store

  • The "web"-platform is the main platform and can be used with any modern web browser. The ready-to-use code for the "web"-platform can be found here.1
  • The "windows"-platform provides the PWA available at Microsoft Store (packaged by PWABuilder).
  • The "android"-platform is used within the Android wrapper app available at Google Play Store. The wrapper app can be found here. This wrapper app contains a already built version of the "android"-platform.
  • The "oc"-platform is used within the Apache Cordova Android wrapper app available at F-Droid. The wrapper app can be found here. This wrapper app contains a already built version of the "oc"-platform.
  • The "snap"-platform is used within the Electron wrapper app available at Ubuntu's Snap Store. The wrapper app can be found here. This wrapper app contains a already built version of the "snap"-platform.

[1] Auto updated by a Github Action. This action uses code derived from the action github-action-push-to-another-repository (License: MIT, by Carles Pina Estany). Furthermore the actions action-create-tag (License: MIT, by rickstaa) and setup-ffmpeg (License: MIT, by Federico Carboni) are used.

Weblate

Weblate

MOROway App uses Weblate for translations.

Contributors (chronological order)
  • J. Lavoie (Edanas)
  • Allan Nordhøy (kingu)
  • David D. (Dadu042)
  • தமிழ்நேரம் (TamilNeram)

Directories

  • app = core files for all platform
  • app_platforms = platform specific files
    • All directories containing files end with _platform (if they are not nested beneath a directory suffixed _platform).
    • [PLATFORM]/core_excludes: core files not used by platform.
    • [PLATFORM]/sw_excludes: files not used by service worker.
  • build = build tools
    • Script files:
      • Linux-based x86_64 OS, Bash, Typescript (tsc), FFmpeg (if convert_audio-configuration option is used), fonttools and common CLI-tools required
      • Main script usage: bash build.sh [ -p PLATFORM ] [ -d DEBUG ]
        • -p (platform):
          • One of the platforms listed above.
          • Omitting builds all.
        • -d (debug):
          • Activate debug mode (-d 1).
          • Prefer conf options prefixed "debug:"
          • Use unencrypted connections (as this mode is designed for a local test setup)
      • Logs at .logs
      • build-tasks:
        • Scripts executed by main script.
        • Cache at .cache
      • build-libs:
        • Used in build scripts
        • See here
    • Configuration files:
      • conf and conf_local (for local override)
        • version: MAJOR.MINOR.PATCH
        • beta: 0 for release / beta off; 1,2,3,… for beta number
        • sharelink: Share link displayed to users when creating a multiplayer game
        • serverlink: Link to server backend without protocol
        • app_self_link: Link to app (currently used for Open Graph metadata)
        • app_banner_link: Link to app promotion image (currently used for Open Graph metadata)
        • convert_audio: Convert ogg audios to specified file format (unset, value ogg or value 0 = do not convert)
        • prefixes:
          • debug: Configuration only used for debug mode
          • [platform]: Configuration only used for specific platform
          • Hierachy (if both prefixes apply): prefixed both, prefixed debug, prefixed [platform], not prefixed
      • tsconfig.json: Typescript conf
    • changelogs, metadata,strings
      • Localization files (see above: Weblate)
      • Exception: changelogs/meta.yml: Changelog metadata
  • out = ready-to-use MOROway App output
    • generated by build script
    • out/[PLATFORM]/latest = last build (release or beta)
    • out/[PLATFORM]/current = last release build
  • wrapper = platform wrapper apps

Licenses

See file: ./ABOUT.

Query-Parameters

The following query parameters can be used with MOROway App (foremost web platform).

  • mode: singleplayer, multiplayer, demo (app mode)
  • all modes
    • gui-3d: 0, 1 (3D view)
    • gui-3d-night: 0, 1 (3D night view)
    • gui-3d-cam-mode: birds-eye, follow-train, follow-car (3D camera mode)
  • all modes except demo mode
    • gui-3d-follow-object: 0, 1, 2, … (3D object to follow in camera modes follow-train and follow-car)
  • only multiplayer mode
    • key: game key
    • id: game id
  • only demo mode
    • gui-demo-3d-rotation-speed-percent: 0-100 (3D demo mode canvas rotation speed in percent)
    • gui-demo-random: 0, 1 (Overrides all other GUI-related query parameters by random values)
    • exit-timeout: 1, 2, 3, … (Leave app after specified amount of minutes. Only works on supported platforms.)
    • demo-standalone: 0, 1 (Demo mode cant't be left for normal mode)

About

MOROway App Build Tools

Resources

License

GPL-3.0, CC-BY-4.0 licenses found

Licenses found

GPL-3.0
LICENSE.txt
CC-BY-4.0
LICENSE_ASSETS.txt

Stars

Watchers

Forks

Packages

No packages published

Contributors 5