Skip to content

Mod Submission

Delta edited this page Nov 22, 2023 · 3 revisions

How to make a submission to the manifest

Prerequisites

You will need git or a GUI Client for it, check the git website for a list

Fork the Repo

  • Go to the GitHub repository.
  • Click on the Fork button in the top right corner.

Clone Your Fork

  • Open your forked repository on GitHub.
  • Click on the Green "Code" / "<>" button and copy the repository URL.

Image of the Clone code window in github

  • Use this URL to clone the repo locally with either git or a GUI Client of your choice
    • With git, in a terminal navigate to the location you'd where you want the cloned directory.
git clone https://github.com/YOUR-USERNAME/resonite-mod-manifest.git
  • If you are using a GUI client, this step may vary:
  • In Github Desktop and Fork as examples, this is under File > Clone...
    github desktop git-fork

Addition information can be found in the Github docs on Cloning

Creating your Author Folder

  • Duplicate the 'com.example' Folder
  • Rename the new copy to match your 'author id', this is typically a reverse domain name such as com.example
    • If you don't own a domain, you can use your github username here as well
    • This should prefix harmony ids inside of your mod, example: new Harmony("com.example.ExampleMod")
  • Inside this folder will be an author.json file. Edit this with your own information.
  • This will only need to be done once, even if you have multiple mods

Note: comments provided below aren't valid in json and will need to be excluded.

{
	"author": {
		"AuthorName": { //Replace 'AuthorName' with your display name
			"url": "https://github.com/resonite-modding-group", //Replace with a link to your github or author page
		}
	}
}

Creating Mod Entries

  • Inside your author folder there is an ExampleMod folder, if you don't have one, you can make a new folder or copy it from com.example
  • Rename the ExampleMod folder to the name of your mod
  • Inside this folder will be an info.json file. Edit this with your own information.
  • Each additional mod will need its own folder and info.json file

Note: comments provided below aren't valid in json and will need to be excluded.

{
	"name": "ExampleMod", // The name of your mod
	"id": "com.example.ExampleMod", // The id of your mod, typically a reverse domain name is used here followed by the name of your mod. This should match the harmony id used by your mod if any
	"description": "Description of your mod", // A brief description of what your mod does 
	"category": "Template", // The category your mod falls into, if unsure or it doesn't fit into an existing category, use 'Misc'
	"sourceLocation": "https://github.com/resonite-modding-group/ExampleMod", // (Optional) Where can your mod source code be found
	"versions": { // All of your version will be under here
		"1.0.0": { // Semvar version of your mod, this must match the Version in your mod
			"releaseUrl": "https://github.com/resonite-modding-group/ExampleMod/releases/tag/1.0.0", // Url for where this specific version can be found
			"artifacts": [ // All files for your mod
				{
					"url": "https://github.com/resonite-modding-group/ExampleMod/releases/download/1.0.0/ExampleMod.dll", // The download link for the Mod.dll
					"sha256": "0000000000000000000000000000000000000000000000000000000000000000" // sha256 hash of your Mod.dll
				}
			]
		}
	}
}

For more information on the categories available, see Categories

Create a Pull Request

  • Commit your changes and Push to your forked repo
  • On GitHub, go to your forked repository and click on "Contribute" and then "Open Pull Request"
  • Select the branch with your changes if it isn't already selected and create the pull request.

Addition information can be found in the Github docs on Pull Requests

Clone this wiki locally