Adding a new License: Difference between revisions

From The Muse
m Bold looks better than italic, actually.
Added content section, link to Take your Balor to work day.
 
(One intermediate revision by the same user not shown)
Line 3: Line 3:
This won't cover specifics of how to implement any particular license, but will lay out the steps necessary for any and every license.
This won't cover specifics of how to implement any particular license, but will lay out the steps necessary for any and every license.


Before you begin, it's a good idea to read through the [[Modding/Introduction to Modding]] if you haven't already, as that covers all the basic concepts of using Godot as a modding environment and the mod tool that Lancer Tactics has in support of that.
Before you begin, it's a good idea to read through the [[Modding|Introduction to Modding]] if you haven't already, as that covers all the basic concepts of using Godot as a modding environment and the mod tool that Lancer Tactics has in support of that.


== Requirements ==
== Requirements ==
Line 24: Line 24:
** A link to the ResourceGroup file which tells the game how to find content for that manufacturer, see below
** A link to the ResourceGroup file which tells the game how to find content for that manufacturer, see below
* A ResourceGroup file in the same location as the Manufacturer resource.  This is a special type of file that the Resource Group addon edits every time the project is run, and collects all resource files within a certain set of subdirectories usually specified via a search string. <p>For example, the resgrp_man_horus.tres file has the filter <code>**/horus/**.tres</code> which picks up every resource file (they have the .tres extension) under any directory path including a /horus/ directory, such as /res/content/licenses/'''horus'''/li_goblin.tres and many others.  Whenever the game is started, it builds a list of these resource files and adds it to the set of paths stored in the resource group, and those are associated with the manufacturer.  <p>There's also an exclude list, typically excluding files starting with <code>buff_</code> or <code>action_</code>, as those are not items that belong to the manufacturer and could be found in menus, but used by the game to make things happen.
* A ResourceGroup file in the same location as the Manufacturer resource.  This is a special type of file that the Resource Group addon edits every time the project is run, and collects all resource files within a certain set of subdirectories usually specified via a search string. <p>For example, the resgrp_man_horus.tres file has the filter <code>**/horus/**.tres</code> which picks up every resource file (they have the .tres extension) under any directory path including a /horus/ directory, such as /res/content/licenses/'''horus'''/li_goblin.tres and many others.  Whenever the game is started, it builds a list of these resource files and adds it to the set of paths stored in the resource group, and those are associated with the manufacturer.  <p>There's also an exclude list, typically excluding files starting with <code>buff_</code> or <code>action_</code>, as those are not items that belong to the manufacturer and could be found in menus, but used by the game to make things happen.
== Content ==
Actual content that goes in the license is usually distributed over a variety of locations - frames go in the frames folder, gear has its own folder, each with subfolders for individual frames or frame powers or gear items and so on.  The most generic of these will not require any custom scripting, just making a new Kit resource, saving it to the right location with the right naming convention, and adjusting numbers and adding inline subresources, but most interesting abilities will also require .gd script files to modify the behaviour of the game to follow whatever specific rules the content item has. 
Olive's [https://wick.works/devlog/take-your-balor-to-work-day Take your Balor to work day] is a great example of the process of adding and developing the Balor license, and reading that is probably a good start to help making your own.

Latest revision as of 22:53, 22 July 2026

Possibly one of the most common things a piece of Lancer content will do is define a new license players can take ranks in, and so here is a quick summary of the typical tasks necessary to make a mod that does just that.

This won't cover specifics of how to implement any particular license, but will lay out the steps necessary for any and every license.

Before you begin, it's a good idea to read through the Introduction to Modding if you haven't already, as that covers all the basic concepts of using Godot as a modding environment and the mod tool that Lancer Tactics has in support of that.

Requirements

[edit | edit source]

For a license to show up in the game, it requires at least the main li_[licensename].tres file, and usually several other things:

  • An UnlockTree Resource for the license itself, saved as a file following the naming convention li_[licensename].tres, usually placed in the res/content/licenses/[manufacturer]/ subfolder.
    • An icon for that UnlockTree - an Everest icon will be substituted here if there is no icon, but that makes it confusing to use. Typically the icon here is the same as the granted frame for the license, though this isn't a hard requirement. This is the icon that will show up in the license wheel.
    • an UnlockRank Resource for each of the three ranks of the license. These are usually defined inline in the inspector, without being saved as separate files.
      • Two pieces of gear in the GrantedGear array of each UnlockRank. The game will load and display the license without them, but it will have obviously missing data, and will not seem finished.
      • An icon for each rank is nice, though the defaults do work
      • A frame at rank 2, in the GrantedFrames array. In theory this could be inline, but in practice a mf_[framename].tres file is selected or drag-dropped into here to specify the link to the frame.

If your license is within any of the existing big-4 manufacturer folders or the gms folder, it should be automatically picked up by the resource group addon and loaded as a license for that manufacturer by the mod support code.

On the other hand, if you're adding your own manufacturer, that will require additional files:

  • A man_[manufacturername].tres Manufacturer Resource file saved in the res/content/manufacturers/ folder.
    • An icon for that manufacturer, which will be used for the selection button for it.
    • A link to the ResourceGroup file which tells the game how to find content for that manufacturer, see below
  • A ResourceGroup file in the same location as the Manufacturer resource. This is a special type of file that the Resource Group addon edits every time the project is run, and collects all resource files within a certain set of subdirectories usually specified via a search string.

    For example, the resgrp_man_horus.tres file has the filter **/horus/**.tres which picks up every resource file (they have the .tres extension) under any directory path including a /horus/ directory, such as /res/content/licenses/horus/li_goblin.tres and many others. Whenever the game is started, it builds a list of these resource files and adds it to the set of paths stored in the resource group, and those are associated with the manufacturer.

    There's also an exclude list, typically excluding files starting with buff_ or action_, as those are not items that belong to the manufacturer and could be found in menus, but used by the game to make things happen.

Content

[edit | edit source]

Actual content that goes in the license is usually distributed over a variety of locations - frames go in the frames folder, gear has its own folder, each with subfolders for individual frames or frame powers or gear items and so on. The most generic of these will not require any custom scripting, just making a new Kit resource, saving it to the right location with the right naming convention, and adjusting numbers and adding inline subresources, but most interesting abilities will also require .gd script files to modify the behaviour of the game to follow whatever specific rules the content item has.

Olive's Take your Balor to work day is a great example of the process of adding and developing the Balor license, and reading that is probably a good start to help making your own.