0 of 0

File information

Last updated

Original upload

Created by

rez23

Uploaded by

init0nee

Virus scan

Safe to use

About this mod

Simple and modern template that provide a base The Witcher 3 mod project made using vscode and WitcherScript IDE extension and that supports auto releases via GitHub Actions

Permissions and credits
Mirrors
Changelogs
The Witcher 3 Mod Project Template (Get on Github)

A modern and simple project template for creating The Witcher 3 mods, based on Visual Studio Code and the WitcherScript-IDE extension.


Why


The main goal of this project is to create a solid foundation for writing Witcher 3 mods or DLCs in a way that enhances readability, open-source sharing, and maintainability.

As you can see, the project structure is not intended to strictly mirror the internal Witcher mods layout for files and folders. Instead, the focus here is about providing to mods developers a project structure that divides the various tasks involved inside the modding proces into a more clear, concise and modern way, bringing everything together in a easy and ready-to-use project.

This allows you to focus on writing your code while leaving the post-edit tasks to be automated from the editor.
Feel free to use this template as a base for your mod.


How It Works


In this section, I'll explain how this template is structured:
Folder Structure
  • Scripts go inside ./scripts 
  • DLC files go inside ./dlc 
  • String files go inside ./csv 
  • Menu manifets go inside ./menifests
  • The generated mod zip will be generated inside ./build


Build Script

You can build an installable zip (ProjectName.zip) using the build.ps1 script, the build task in VS Code, or via the shortcut Ctrl+Shift+B. The generated zip file will be placed inside the ./build folder. You can install the zip with, for example, TW3 Mod Manager.

The build script checks for CSVs string files and encodes them (if they exist) using w3script encoder.


witcherscript.toml

This file is needed for go-to navigation and syntax highlighting/analysis in VS Code. See the WitcherScript-IDE manual for more information.

Automatic releases

This template comes with a preconfigured workflow with the purpose of building and releasing the mod automatically via the powerfuls GitHub Actions.
When needed, the workflow will take care of building your code and creating fully installable releases for your mod!

Take a look at the releases workflow main file to get a more detailed picture of how it works.

How automatic releases work

As I mentioned earlier, the configured action workflow will take the burden of creating releases for you when it's needed. Awesome! But you may be wondering: What exactly does "when it's ready" mean?

Obviously, triggering a release pipeline anytime a new commit is pushed to the repo would not be very useful automation! So here is chosen the more git-centric approach: using tags.When you tag your changes with something that matches the pattern: v*.*, an action that builds and releases your mod will start uploading an installable-ready zipped version of your mod on release page.

How-To

First of all commit your change:


git commit -m "my changes description"


After create a new tags with the version that you want release:

git tag v1.0


Finally push your work:

git push origin master --tags

thats all. The workflows will start building and pubblishing the tagged changes.