Skip to content

Configurable pack variants #223

@Orinai

Description

@Orinai

Motivation

For larger or more resource-intensive packs, it is sometimes helpful to have an alternate, but compatible "potato version" of the pack with settings, configs, and removal of certain client side mods or resource packs configured for use on lower-end machines. Or perhaps the server admin wants to provide a variant of the pack that includes an auto-updated version of the single-player testing world, or a variant that includes a different configuration of resource or shader packs. Currently, if this mod is installed on the server, it will automatically override such variant packs installed on any client machine.

Description

Basically, the ability to define multiple accepted variants of the pack, which clients can select from when attempting to install/update their pack.

Other information

The simplest implementation would probably just be the ability to generate multiple automodpack-content.json files, with an additional config file that tells the mod what files to update in that json when the main pack is updated (for example: "don't update the options file or these 6 config files, and ignore any mods not already included in this variant"). That way you don't have to manually update multiple versions of the pack.

Alternatively, you could somehow have the mod automatically check the server admin's local instances folder for updated versions of multiple packs with variants of the same name (for example: pack_normal, pack_potato, pack_alpha). This would still rely on the server admin manually updating each variant, but would allow for more precise control, without needing to directly host a ton of duplicate files on the server itself.

There are probably other potential implementations, but those seem like the most strait-forward to me, as someone with only limited coding experience.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions