AMPTemplates/README.md
2022-01-14 14:02:49 +00:00

2.2 KiB

AMP Templates

For the AMP community to share Generic Module templates.

Making generic module templates

See the wiki article for the module: https://github.com/CubeCoders/AMP/wiki/Configuring-the-'Generic'-AMP-module

You can also use the online configurator at https://config.getamp.sh/ to help with building templates.

Sharing Templates

Right now the following restrictions apply to templates that may be publicly shared via this repository (some of these will be relaxed over time):

  • The application must not require any login/authentication in order to download (except for SteamCMD logins).
  • If the application does not have a Linux version you should add a Proton download via SteamCMD to support it if possible.
  • Applications that have customizable settings must use a Settings Manifest.
  • Only applications that expose some kind of Console that AMP is able to pick up.
  • Do not invoke any shell scripts/batch files. You must only launch actual executables.

To share a template

Create a pull request containing the following files in the top-level directory of the repository:

*APPLICATIONAME*.kvp
*APPLICATIONAME*config.json
*APPLICATIONAME*metaconfig.json (Optional)

With the names fully lower-cased.

For example, valheim.kvp, valheimconfig.json, valheimmetaconfig.json

Do not use any directories and include no-other files.

If you are only submitting a draft, make sure to append (draft) to the pull request title.

Editing templates

If you believe that a template needs either updating or changes made, please submit a pull request for that template with a justification for why that change is needed. If possible try and contact the original author first.

After submitting a template

Once you've submitted a pull request, your configuration will be tested in its as-is state by an automated tool. It will:

  • Load the configuration
  • Attempt to perform an update
  • Attempt to start the application
  • Verify that the application reaches the 'Ready' state.
  • Attempt to stop the application
  • Verify that the application reaches the 'Stopped' state.

You should ensure that your configuration can do this on both Windows and Linux before submitting your configuration.