X2CommunityCore / X2ModBuildCommon

An improved XCOM 2 mod build system
MIT License
5 stars 5 forks source link

Make mod name configurable in build.ps1 #89

Closed fearlessiron closed 1 year ago

fearlessiron commented 1 year ago

Replaces the hardcoded mod name in build.ps1 by a variable that can be set in tasks.json.

This allows for tasks.json to contain build tasks for more than one mod residing in the same repository (e.g. a for vanilla and WotC versions)

robojumper commented 1 year ago

The idea behind this setup was that every mod has its own build.ps1. That's why build.ps1 isn't included with X2MBC and not versioned in the X2MBC submodule. These build.ps1 scripts can still share the same X2MBC submodule.

The CHL, for example, has one for the core Highlander mod + companion package, and one for the Alien Hunters replacement mod: https://github.com/X2CommunityCore/X2WOTCCommunityHighlander/blob/master/.scripts/build.ps1 https://github.com/X2CommunityCore/X2WOTCCommunityHighlander/blob/master/Components/DLC2CommunityHighlander/.scripts/build.ps1

The reason for that is that build.ps1 not only includes the mod name, but also other special things like dependency source inclusion, and dependencies are different between different mods, so mods generally shouldn't use the same build.ps1.

But ultimately, you're free to change build.ps1 as you like, since it's simply a recommendation for using X2MBC. Be warned though that X2MBC ships an XCOM2.targets file for invoking it from ModBuddy, and that will break with your change.

fearlessiron commented 1 year ago

But ultimately, you're free to change build.ps1 as you like, since it's simply a recommendation for using X2MBC. Be warned though that X2MBC ships an XCOM2.targets file for invoking it from ModBuddy, and that will break with your change.

True, I had not considered that. Thanks for the detailed feedback!