VCMT.Thunderstore.DocBuilder 0.1.3

There is a newer version of this package available.
See the version list below for details.
dotnet add package VCMT.Thunderstore.DocBuilder --version 0.1.3                
NuGet\Install-Package VCMT.Thunderstore.DocBuilder -Version 0.1.3                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="VCMT.Thunderstore.DocBuilder" Version="0.1.3" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add VCMT.Thunderstore.DocBuilder --version 0.1.3                
#r "nuget: VCMT.Thunderstore.DocBuilder, 0.1.3"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install VCMT.Thunderstore.DocBuilder as a Cake Addin
#addin nuget:?package=VCMT.Thunderstore.DocBuilder&version=0.1.3

// Install VCMT.Thunderstore.DocBuilder as a Cake Tool
#tool nuget:?package=VCMT.Thunderstore.DocBuilder&version=0.1.3                

VCMT's Doc Builder

This project helps fill in version data for files used/required for a Thunderstore release.

  • CHANGELOG.md
    • Verifies a changelog has an entry of the corrosponding version. Can be configured to throw an error if the version is not found.
  • README.md
    • Uses a README template to fill in data entries such as game version, mod version, required dependencies, etc.
    • It is recommended to fill in proper description details for the readme, as the Description has a 250 character limit.
  • manifest.json
    • Generates a new manifest file using information from the PluginInfo.config file.
  • icon.png
    • Can be configured to fail build if the icon.png file is not found.
  • MyPluginInfo.cs
    • Generates a class 'MyPluginInfo' with const entries for corrosponding configured values.
  • Assembly Info
    • Fills in data in your .csproj file corrosponding to filled in config details such as the file name, version, and description.

Originally intended as a way to help me keep version information up to date for the 30+ mods managed by Void Crew Modding Team, this package utilizes a powershell script to fill data from 1 config file into the various locations required for proper documentation on thunderstore. It saves me (you) much time verifying all versions and descriptions match, just to publish a release and find out the file version doesn't match the intended release version.

This project was inspired by BepInEx's PluginInfoProps package.

Usage

Import this package into your project through NuGet. NuGet Package Manager is built in to Visual Studio, and can be used to find and include the package into your project.

  1. On Build, the script will create a folder 'ReleaseFiles' in your Project Directory, if it does not exist With the PluginInfo.config and README.md files. The script will then stop the build process

  2. Customize the README.md to your liking and fill in the PluginInfo.config file with your Plugin's information.

  3. On the next build 'MyPluginInfo.cs' will be generated using your configured information in the form of consts, then fail. Utilize these consts where applicable.

  4. On the next build, your files will be filled in and copied to your output directory. Depending on configuration, it will fail if missing an icon.png file or the CHANGELOG.md does not contain '## [PluginVersion]' where [PluginVersion] matches the current plugin version.

Errors

On failure, the script will fail to run and an error will be provided in the VS error list.

2 common error you may see in Visual studio, which are caused by building while the .config file is open:

  • "XML document must contain a root level element."
  • "Invalid token 'Text' at root level of document."

Generated Text

The following text was filled in using the template found at VCMTemplte/DefaultFiles/README_Template.md


alternate text is missing from this package README image alternate text is missing from this package README image alternate text is missing from this package README image

VCMTemplate

Version 1.0.0
For Game Version 0.27.0
Developed by VCMT
Requires BepInEx-BepInExPack-5.4.2100, VoidCrewModdingTeam-VoidManager-1.1.8


💡 Function(s)

  • function 1
  • function 2

🎮 Client Usage

  • Some blob about how to use the mod

👥 Multiplayer Functionality

  • ✅ All
    • All players must have this mod installed.

🔧 Install Instructions - Install following the normal BepInEx procedure.

Ensure that you have BepInEx 5 (stable version 5 MONO) and VoidManager installed.

✔️ Mod installation - Unzip the contents into the BepInEx plugin directory

Drag and drop VCMTemplate.dll into Void Crew\BepInEx\plugins

There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

  • .NETFramework 4.7.2

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
0.2.1 113 10/8/2024
0.2.0 85 10/8/2024
0.1.3 110 9/11/2024
0.1.2 94 9/10/2024
0.1.1 97 9/10/2024
0.1.0 99 9/10/2024