Skip to content

Hosting repositories

Iain Launchbury edited this page Jun 27, 2024 · 5 revisions

Hosting custom repositories

Publishing for New Recruit

In the modern era of New Recruit (https://newrecruit.eu/app), the easiest way to publish data is to create a repository on GitHub. Users can load it into New Recruit with “Add or Remove games” -> “Add from Github”. You can follow steps 1-5 of the BattleScribe guide below to make a repo with releases similar to the popular systems, but any GitHub repository containing the appropriate .gst and .cat files in the base of the repo will load in New Recruit.

New Recruit does not pull the list of games from BSData Gallery; instead, each game is added individually. If you want your game added to their list please contact them via their Discord, https://discord.gg/YCF7aMRYhD. They reserve the right to refuse anything, and users can still add your game via the above method.

The general requirements are that the system should be:

  • Up to date and actively maintained
  • Not a homebrew/modified version of an existing system
  • In English

Publishing for BattleScribe (not recommended)

Publishing for battlescribe relies on generating a .bsi file and either linking users to that file, or having your repository tracked on either the BSData Appspot (flakey and unmaintained) or Gallery. A .bsi file can either be generated with the data indexer, or by using a GitHub Workflow. The below guide walks you through creating a repo in that way.

  1. Create your GitHub repository
  2. Check your repository's settings. Go to Settings, Actions (General), and check that the value of Workflow permissions is set to Read and write permissions (if it's not, select it - the default workflows need to upload release assets): image
  3. Upload your datafiles (using website, or a git tool of your choice):
    • upload only .cat and .gst files (you might need to Save as from Data Editor, and select appropriate value from dropdown).
    • don't upload .catz, .gstz, index.xml, index.bsi or .bsr files (do not use Data Indexer)
  4. Add workflows to your repository (if you've just created the repository using the TemplateDataRepo, skip this step, the files are already in place):
    • Visit this link.
    • Select Adding standard BSData workflows option
    • Follow instructions in the issue
    • Wait a minute. Your comment should be updated after a while with a link to new Pull Request (PR) opened in your repository.
    • Go to that PR and merge it using green button at the bottom.
    • Go to Actions tab on your repository page and make sure they're enabled. If they're not, you'll have a very obvious button to enable them.
    • You can now close the issue you opened in chatops repository.
  5. Create a release:
    • See help page.
    • See Data Author Guide: Releasing.
    • Create the release.
    • Wait a bit; you can watch progress in Actions tab, there should be a running Publish catpkg workflow.
    • After workflow is finished, visit Releases again.
  6. View your release and use the assets:
    • Your Latest Release (should have a green badge like that) will contain a list of Assets.
    • {reponame}.latest.bsi is the main asset to use:
    • {reponame}.{tag}.bsi is an asset that will work similarly to the above, but it'll pin data to this version (e.g. the data will never update)
    • {reponame}.{tag}.bsr is a file you can save locally and import on any device without internet connection; however same as tagged bsi, data won't update to newer versions.
  7. Add your repository to Gallery.
    • See Adding a new Repository.
    • Advise users to switch to using Gallery as their data source, as detailed on that same page.