Basic Mod Pack Metadata specifications #16
Replies: 3 comments 2 replies
|
This list is about 80 percent the same as #15 I propose one shared metadata core for every content type, and a small per-type extension. On the individual points: 1 (ModPackId): I would pull in the opposite direction: same id rules for every content type, not laxer ones for packs. The pack id ends up in file paths just like a mod id does, Borea's own instance folders get created from packs, and a second, laxer id space next to the strict one from #15 would just add a second namespace we have to differentiate between. I would like to use one id spec for everything to not cause confusion. 5 (Built For Game Version): same situation as #15 property 6 i commented on in #15 (comment) , this is what #17 is about. 8 (Mods list): Makes sense. 12 (License), and the question behind it: whether a pack needs a license depends on a property your list does not pin down, and which I think is an important open decision here: |
|
Same as in #15 (worked example there), for a pack. spec_version = 1
id = "NavigationStarterPack"
type = "modpack"
name = "Navigation Starter Pack"
authors = ["Maxi"]
abstract = "Everything you need for maneuver planning, tested together."
license = "CC0-1.0"
tags = ["navigation"]
version = "1.0.0"
[compatibility]
game_min = "2026.8.3.5117"
# Exact pins, not ranges: a pack is a curated, tested set.
# A mod's own dependencies stay ranges; see my comment above for why both are right.
[[mods]]
id = "AdvancedFlightComputer"
version = "0.7.0"
[[mods]]
id = "KittenExtensions"
version = "0.4.0" |
1. Add Vehicles and Games SavesI was wondering if we should also include a Vehicles and Game Saves section within Mod Packs. I was thinking along the line of how Minecraft Mod Packs can also include shaders and world saves, despite being Mod Packs, and figure it might be a nice QOL for content creators to be able to include them. I propose to keep the type name the same as the main use will be for a group of Mods, with the Vehicles and Game Saves as an addition. I do want to ask, if we agree to put Vehicles and Game Saves in a Mod Pack, should we immediately give them a Adding support later won't break the format and invalidate the old data since it is a clean addition, but it most likely will require a 2. Should we split Mod Packs into 1 authored, many versioned files?I was wondering if we should split Mod Packs into 1 authored TOML file and many JSON versioned files due to similar reasons for why we did it to Mods. A Mod Pack's properties 1, 2, 3, 6, 7, 11, and 12 all are unlikely to change between Mod Pack versions, so I propose keeping them in an authored TOML file. As for properties 4, 5, 8, 9, and 10, they are much more likely to change each version of the Mod Pack, thus I think they should get JSON versioned files. Granted this assumption does assume that Mod Packs are allowed to have multiple versions like Minecraft Mod Packs, of which I am in favor of allowing. |
Uh oh!
There was an error while loading. Please reload this page.
This discussion is for decided the basic specifications of Mod Packs for KSA. The list below is not final and is just the properties I can think of. Please comment if you have anything to add or notice anything that may cause issues.
Properties
ModPackId: The constant unique Id of the Mod Pack. Does not have to follow the same rules as a Mod's ModId as KSA doesn't handle Mod Packs, only mods.
Display Name: The name that will show up on UI. Doesn't have to be unique, can use a wider set of characters, and can be longer than the ModPackId.
Author(s): The author(s) of the Mod Pack.
Version: The version of the Mod Pack. I also think this should be
Major.Minor.Patch[-PreRelease]following the same rules as the proposed Mod versioning for simplification.Built For Game Version: The game version the Mod Pack is built for. The mods themselves don't have to be built against the same version as long as the creator guarantees they will work. Uses KSA versioning Scheme and a single version can be built against multiple versions at the same time.
Description: The description of the Mod Pack.
Mod Loader: If the Mod Pack is intended to be used with a mod loader, which mod loader it is and which version.
Mods: A list of
(ModId, Version)that list what mods and their version the Mod Pack is made of.Released At: The date (and time?) this version of the Mod Pack was released.
Changelog: The changelog of this version of the Mod Pack. Can be a string or a link/path to the changelog.
Tags: A list of tags/categories the Mod Pack falls under (Contracts, Story, Cinematic, etc.).
License: The license of the Mod Pack. Can be either the name of a license (for popular ones) or a link/path to the license file. This is one I am not sure on, as I don't know if Mod Packs need a license.
All reactions