Uploading a Mod

Short guide for uploading a mod to thunderstore

Thunderstore requires 4 different things to upload a mod, but there are also a few best practices.

(these are all links lol, you can click them to scroll to one)

  1. Override folders (important if you want your file structure to stay the same)

Required Files

The three things required are

  • manifest.json

  • README.md

  • icon.png

everything else is optional, even your mod.

manifest.json

manifest should be set up like so,

and can be validated by using this page.

https://enter-the-gungeon.thunderstore.io/tools/manifest-v1-validator/ dependencies can be found on the mods page, for example, if you were to depend on BepInEx you would grab the dependency string from its page

README.md

The README.md is basically your mods' description. Use this page to view how it will look on thunderstore.

https://enter-the-gungeon.thunderstore.io/tools/markdown-preview/ this runs off of markdown so you can have some text or embed things like gifs if you want.

Icon.png

this icon is what is going to show up as your mod, ie. it's the picture shown here

and here when browsing

The icon must be 256 pixels by 256 pixels

Override folders

  • plugins

  • monomod (.mm.dll will implicitly install to a subdirectory within this folder)

  • patchers

  • core

  • config

these folders in your mod will put them in the files from your mod into the corresponding bepInEx folder when installed via the mod manager, and will also keep the file structure.

If you dont use the override folders, and your mod looks like this

And its installed by the mod manager, it will look like this in the plugins folder

However, if the mod went plugins/all the files then all the stuff like sprites etc. would have come out the same.

Making Modpacks

Making a modpack is pretty simple in thunderstore, you don't need to put the files from every mod you want when you upload, but rather, in your manifest.json, just add the dependency string of all the mods you want and they will automatically be downloaded when a user downloads with dependencies.

Last updated