How to Utilize this Package

Updated a month ago

Guideline

We see you wish to upload a mod to thunderstore or are just curious about this file. This file will go over the following; What to change in the setup for your own mod, how to put your mods contents into this mod, how to override other mods contents, how to upload your mod to thunderstore, and finally how to update a mod.

What to change in your Mod's setup if it is based on this one:

This will be somewhat stepped in areas and in others written in a paragraph or table.

The icon.png file;

This is a file that is used for your plugins logo on thunderstore it should be a 256x256 image showing a preview of your plugin or just a fancy version of the title. Make sure that it relates 100% to what your mod is and is not just randomly taken off the internet. If you dont want to make one you can ask for one in your modding community's discord if it has an adjacent to an Mod-Art-Request channel. Heres an example of a icon.png on a thunderstore mod shown below this paragraph.

image

Here you can see the basic format of some of @thincreator3483's icons; A border element to keep the art within the specified area being 256x256. It has the title featured to Highlight the name of the mod in this case Example Mod. It also features the Cog and Wrench to signify that it should be modified and not used as is, although thats only noticable if you look extra hard. Essentially your icon should convey the point of the mod as a simple preview of its contents, and not just a quick doodle or a image off the internet as it obscures what your mod is doing.

The README.md file;

For this file we reccomend using Markdown Live Preview to help you format your file. This file should explain what the mod does, while also being discriptive and basic. You can use Tables, Bullet Lists, Numbered Lists, or even Images to help convey what your trying to describe. If you need an example on how to format these just look at the way this files information is setup.

To Continue on based on the provided setup we would include the following:
## How to Install Mods(Example):

### Installing with a Mod Manager
This is the recommended way to install BepInEx to the game.

1. Download and install [Thunderstore Mod Manager](<https://www.overwolf.com/app/Thunderstore-Thunderstore_Mod_Manager>) or [r2modman](<https://Timberborn.thunderstore.io/package/ebkr/r2modman/>).
2. Click the **Install with Mod Manager** button on the top of [BepInEx's](<https://thunderstore.io/c/tcg-card-shop-simulator/p/BepInEx/BepInExPack/>) page.
3. Run the game via the mod manager.

### Installing Manually
1. Install [BepInEx](<https://www.nexusmods.com/tcgcardshopsimulator/mods/2>) or [BepInEx](<https://thunderstore.io/c/tcg-card-shop-simulator/p/BepInEx/BepInExPack/>) by pressing 'Manual Download' and extract the contents into a folder. **Do not extract into the game folder!**
2. Move the contents of the extracted folder into the game folder (where the game executable is).
3. Run the game. If everything was done correctly, you will see the BepInEx console appear on your desktop. Close the game after it finishes loading.
4. Place all Plugins into `BepInEx/plugins` in their own unique folder some zips contain a folder labeled Plugins at root, you need to go a folder in than put that into the plugins folder.

### Mac & Linux:
1. Follow the steps here first: [Here](<https://docs.bepinex.dev/articles/user_guide/installation/index.html>)
2. Next do step 4 of the Manual Installation
3. Your game should be setup for inscryption modding now

### Installing on the Steam Deck (Note You may need to modify this setup if its found to be wrong, If it is, this file should be updated to cover such.)
1. Download [BepInEx](https://www.nexusmods.com/tcgcardshopsimulator/mods/2)
2. Go to `Installed Files` click `Browse` to open the folder containing The Game's local files; Put the contents Of the zip in this folder.
3. Download the mods you plan on using and their dependencies, You will need to unzip them.
4. Make a folder for each plugin than place them in BepInEx/plugins.
5. Enter Gaming Mode and check 'Force the use of a specific Steam Play compatibility tool' in the Properties menu under `Compatibility`.
6. Go to the launch parameters and enter `WINEDLLOVERRIDES=“winhttp.dll=n,b” %command%`.
7. Open the Game. If everything was done correctly, you should see a console appear on your screen.

Modify the above to match the installation information of your game, and modify the below to match your contact details.

## How to Contact Me(Example):

* The Modding Discord Server for Thunderstore: https://discord.gg/kCp4mRAVUE
* The Modding Discord Server for Nexus: https://discord.gg/ka7s2PxsG5
* My X Profile: https://twitter.com/thincreator3483
* My Bluesky Profile: https://bsky.app/profile/thincreator3483.bsky.social
* My Reddit Profile: https://www.reddit.com/user/Thincreator3483
* My Discord Tag: thincreator3483

This is how you can write the afformentioned into Markdown:

Name of Element Description Of Element
Headers These are essentially titles for sections within your README.md
Tables These are essentially tables formatted like what your currently looking at - means it will be centered a : before means write from the left a : from the right means write from the right and on both sides makes it centered again. Each row is seperated by an standing / tables dont like the character so thats why its formated the way that it is here, and each column is seperated by a new line.
Bulleted Lists Use an * for a full bullet or a - for a open bullet each bullet needs a new line below it to be valid.
Numbered Lists These are basically a number followed by a period for example 1. followed by a string after it.
Images These can be inserted as follows ![image](Image Link) basically a hyperlink that leads to an image instead of a site.
Hyperlinks These can be inserted as follows [Text you want to link to the Hyperlink](URL).
Animated Images Same format as Images.
Foldable Elements These are written as follows replace the \n with a new line: <details> \n <summary>Click me</summary> \n Your Contents \n </details>

If anything else should be covered here let @Thincreator3483 know on discord. Once you finish setting up the README.md how you would like it to be presented either copy paste it into the provided README.md or make a new file called README.md this can be created either via renaming a .txt file in file explorer if Hide File Extensions is disabled or via creating a file in a Text Editor and saving the file when asked replace the .txt part or whatever it shows with .md. We personally would reccomend utilizing Visual Studio Code or Atom but any will work including regular old Notepad.

The CHANGELOG.md File;

This file is very similar to the README.md so Utilize that guide but the thing this file should be about is different. This file should be an extremely basic but detailed version of your mods changelog being updated with every update of your mod.

Example of a Changelog that you can utilize as a base

# Changelog [Replace this with your mods Changelog]

## Initial Release - 1.0.0

* Upload the Example.

## Guideline.MD - 1.1.0

* Added a Detailed Guideline for uploading a thunderstore mod.

## Crosslink Update - 1.1.1

* Updated the Guideline.md
* Updated the README.md
* Crossed it to Inscryption as well.

Change this to match either your mods pre existing changelog plus the current version or just change it to state only the Initial Release. We also should stress that this can be written in whatever format you would like, just make sure it works as a proper Changelog for your mod.

The manifest.json File;

This is probably the trickiest file of all of these. First off open Easy To Use Manifest Maker TS in a new tab. Upon opening this file you should see something like this:

image

Basically look at this website in the following sense:

  • The field inputs are the boxes below the Names for example here name.
  • The * next to an item means that it is required to be present but doesnt mean it must be filled.
  • The Description below the box gives you a breif description on how you should fill out the property.
  • The + Item means that it will add an item into the array in the format of a new blank box.
  • Whenever you see a Box it means you can input in it, in this case there all strings except for the version_number which is formatted as an integer with a . seperator

The name should be formatted as follows: Word_Word the _ is always replaced with a space in the name which means you must use _'s instead of the usual space.

The version_numbershould be formatted as follows: 1.0.0 it is read as Major, Minor, Patch

  • A Major means its a major breaking update
  • A Minor means it adds or removes some slight stuff
  • A Patch means its basically a bugfix version or corrections to README.md, CHANGELOG.md or other files in the zip basically nothing added bhut fixed.

The website_url can be left empty if not needed but essentially it acts as a link to your mods page or somewhere important to the mod like a discord. Most of the time if its an open source you would put the link to the mod's discord here.

The description this should be a rough two sentance description be breif about what the mod is about and make sure to point out what your mod does but not in detail.

The dependencies this is essentially an array of mods required for your mod, to set this up press the + Item button for as many dependencies as you need. A dependency is written as follows (Team Name)-(Mod Name)-(Version) again spaces are replaced with underscores here. Example of a formatted dependency for reference CORE_API_TEAM-Configuration_Manager-18.3.2. You can also find these on the mods webpage under Dependency string or you can get a list of them via Thunderstore or R2Modman by doing the following press Settings than hit Modpacks and finally hit Show dependency strings this will output a list of every dependency string found in your current profile.

How to put your own content into this template:

So you may be wondering why you have done the above and your content is not there yet, that is because it should be a thing you do prior or during your mods development. But to put your content into this template do the following:

  1. Navigate to the folder containg your plugins content
  2. Copy everything that is related to your plugin. [CTRL+A] or [COMMAND+A] Followed by [CTRL+C] or [COMMAND+C].
  3. Navigate to the plugin template that we have setup.
  4. Enter the folder named plugins and put that content here. [CTRL+V] or [COMMAND+V]
  5. Once this is done if you have anything else related to the following;
  • Configs
  • Patchers
  • Monomod's
  1. Repeat steps 1-3, afterward navigate into BepInEx.
  2. If it is a patcher place them in the folder labled as patchers.
  3. If it is a config place them in the folder labled as config.
  4. If it is a MonoMod place them in the folder labled as monomod.

Note if you have multiple plugins under the same zip place a new folder into BepInEx/plugins labled as what it does than copy that plugins content into that, repeat that for every plugin that your plugin contains. Although the prefered method of this would be subfolders within your main plugins folder which would essentially be steps 1-4 of the above guide just instead you put the subfolders needed here along with your plugin itself.

How to override other mods content using this template:

How would I modify folders, configs, patchers, dlls of another plugin with my plugin? Well thats quite simple to do, just follow these steps for each thing your trying to modify;

Other Plugins

To modify other plugins just do the following:

  1. Navigate to BepInEx/plugins in the template.
  2. Make or Copy the folder of the plugin your trying to modify the easiest way in our opinion is utilizing the manager, than downloading the plugin at its base than grabbing the plugin's folder via Settings, Browse Profile Folder, Navigation to BepInEx/plugins, than copying that folder and pasting it into the BepInEx/plugins of the template.
  3. Remove everything unrelated to what your modifying from this folder, for example its README.md, CHANGELOG.md, manifest.json, icon.png and anything else that is not needed for the modification.
  4. Now place in your modifications to the plugin that your attempting to modify.
  5. Once this is done you should be set to go.

Other Patchers:

To Modify other Patchers just do the following:

  1. Navigate to BepInEx/patchers in the template.
  2. Make or Copy the folder of the patcher your trying to modify the easiest way in our opinion is utilizing the manager, than downloading the plugin at its base than grabbing the patcher's folder via Settings, Browse Profile Folder, Navigation to BepInEx/patchers, than copying that folder and pasting it into the BepInEx/patchers of the template.
  3. Remove everything unrelated to what your modifying from this folder, in this case theres really nothing to remove but if there is remove it.
  4. Now place in your modifications to the patcher that your attempting to modify.
  5. Once this is done you should be set to go.

Other MonoMod's:

To modify another MonoMod just do the following:

  1. Navigate to BepInEx/monomod in the template.
  2. Make or Copy the folder of the MonoMod your trying to modify the easiest way in our opinion is utilizing the manager, than downloading the plugin at its base than grabbing the MonoMod's folder via Settings, Browse Profile Folder, Navigation to BepInEx/monomod, than copying that folder and pasting it into the BepInEx/monomod of the template.
  3. Remove everything unrelated to what your modifying from this folder, in this case theres really nothing to remove but if there is remove it.
  4. Now place in your modifications to the MonoMod that your attempting to modify.
  5. Once this is done you should be set to go.

Other Configs:

To modify a config in your plugin do the following:

  1. Navigate to BepInEx/config in the template.
  2. Copy the config you are trying to modify from BepInEx/config in your profile or setup.
  3. Paste the config you are trying to modify into BepInEx/config of the template.
  4. Modify the config to your liking.
  5. Once this is done you should be all set.

How to upload your mod to Thunderstore:

To upload a mod to Thunderstore just do the following:

  1. Zip the plugin [CTRL+A], or [COMMAND+A] in the folder with your README.md, maifest.json and everything else, right click on a file that was selected, Than press Compress to a Zip File, if this does not show up try installing WinRar.
  2. Once you have made the zip file navigate to your communities thunderstore page, for example this is TCG Card Shop Simulators; Thunderstore.
  3. Now Login/Signup via Discord/Github/Overwolf whichever works for you NOTE: there is no signup with Email option.
  4. If you have not made a team yet make one this can be done via Settings -> Teams -> Create Team.
  5. Now press Upload you should see something like this: image
  6. Under Choose or drag file here select the button than select the zip we have made, than hit done this should start the upload process for your mod.
  7. Where it states Team this is where you would select the team you created in Step 4.
  8. Set Communities to the Game(s) your uploading the mod for, in this case it would be TCG Card Shop Simulator, yours most likely isnt so make sure it is correct.
  9. Select the Categories that apply to your mod, there is a section of these for each community the package is apart of.
  10. If your mod contains NSFW content you must toggle it on, its required by thunderstore's TOS.
  11. Finally hit submit, once its done you should see a card of your mod popup, if this fails than send a message in the Thunderstore channel of your local modding community if there is one otherwise head to thunderstores official discord.

How to update your mod:

Here is basically all that you need to do in order to update your mod:

  • Open the manifest.json and change the version_number by whatever value based on what we have discussed earlier about the version_number. In Short 1.0.0 -> 1.1.0 if its a minor change, 1.0.0 -> 1.0.1 if its a bug fix patch, 1.0.0 -> 2.0.0 if its a major breaking change.
  • Update your CHANGELOG.md to include the new version and its changes in detail.
  • If anything new was added or anything Major was changed it is reccomended to update your README.md.
  • Upload the new zip to Thunderstore its categories will stay the same if you leave it blank, Make sure to select the same team as the prior version of the mod as well as the same game.