Jump to content

Improved Mod Support in Xenonauts V1.5 - Discussion


Chris

Recommended Posts

We are planning an updated version of Xenonauts called Xenonauts V1.5 as the last official release for the game. You can find the details in this thread: http://www.goldhawkinteractive.com/forums/showthread.php/12018-Xenonauts-V1-5-Plans?p=136478

One of the major improvements is going to be the integration of Steam Workshop and significantly improved mod handling. The launcher will have a whole new window for installing / activating / updating / deleting mods and the game will also be able to combine multiple mods that affect the same files and have them active simultaneously.

We want feedback from both mod creators and mod users in the community as to how this should be set up. Our current plan is outlined below; please give your thoughts.

This is rough sketch of the new UI window, which will give you some idea of functionality for the purposes of this discussion.

launcher_mods.jpg

Mod User Process:

Installing a mod uses the following process:

  1. Download the mod (as a .zip) and place it in the Xenonauts/assets/mods/ directory.
    • Steam Workshop will be able to do this automatically.
    • Those not using Steam can just manually copy the zip file into the directory.

[*]Load the "Mod Manager" game launcher tab.

[*]Click the "Install" button next to each of the mods you wish to install. The game will unzip them into a new directory in /assets/mods/.

[*]All installed mods have a checkbox where the "Install" button used to be. To activate / disable a mod, simply click the checkbox.

[*]All activated mods will automatically be combined by the new system. If mods conflict (i.e. they both try to change exact the same value), the mod highest in the priority list will take priority. The order of the priority list can be altered manually.

[*]To update a mod:

  • Steam Workshop will automatically update the .zip file in /mods/
  • Non-Steam users must manually copy the .zip file into the /mods/ directory and overwrite the old one.
  • The launcher will detect a new .zip file version and display an "Update" button for that mod. Clicking it will remove the old version of the mod and replace it with the new one.

Mod Creator Process:

  1. Create your mod.
  2. Ensure it is compliant with the new mod merging guidelines. This is more complex than creating mods used to be, but it ensures compatibility. Non-compliant mods will not appear in this new launcher window...but can still be installed in the old (clumsy) way if necessary.
  3. Fill in the modinfo.xml file, which contains:
    • Mod Title
    • Mod Author
    • Mod Version Number
    • Mod URL (mod name in the launcher info window is a hyperlink to this address)
    • Mod Description
    • Version Required: this will prevent the mod being used unless a version of Xenonauts created after this date is used, essentially to prevent future X:CE mods being loaded by people in a Xenonauts V1.5 that doesn't support them.
    • Mod ID: this is an invisible text / number string that should be unique to this mod.
    • Required Mods: the Mod IDs of any mods required for this mod to run properly.

[*]Compress all the files (including the modinfo.xml file) into a single .zip file

[*]Upload the mod. You can upload it to the forum or to Steam Workshop, preferably both, or even your own website.

As V1.5 is going to be the last major update for Xenonauts, we are looking to build an intuitive and robust system that will serve the ongoing needs of the community without further alterations on our part. Are there more important features you think we're missing there? Are there ramifications of this new system that need discussion? If so, please post them up so we can consider and discuss them. You won't get another chance to do so!

Link to comment
Share on other sites

Seems solid to me, personally. Just one thing:

All activated mods will automatically be combined by the new system. If mods conflict (i.e. they both try to change exact the same value), the mod highest in the priority list will take priority. The order of the priority list can be altered manually.

Do you mean that there will be an option to do this using the mod manager, or will they need to make alterations to the files/folder names (as is currently the case)? I'd suggest that, ideally, the mod manager would be able to handle this itself (e.g. being able to move the mods up/down the list to set priority) so if that is not currently planned is there any possibility that it could be included?

Link to comment
Share on other sites

On the issue of mods clashing, I don't know it would be possible, but if there were any way to highlight clashes so the mod user knows what's going on and can set the mods to his/her fancy, that would be useful. Perhaps a "test mod clash" button, so the mod launcher can rapidly examine clashes?

Link to comment
Share on other sites

@Max - That's likely to be a specific standalone tool built for the modding community if it were to be made, I'd have thought.

Also, bear in mind that mods don't need to change the same value to "clash" - if one mod is balanced around the default starting funding value and another mod changes it to be much higher, that wouldn't be flagged as a clash but would still act like one in practice.

Link to comment
Share on other sites

I think you'll want to make it clear that mods may "clash" with each other in terms of balance. It's obvious to most of us, but I think it will save headache and complaints if you spell it out for people that you can't guarantee all their mods will work as intended once they start adding multiple mods. And it's kinda standard boilerplate at this point, but probably something about how mods may introduce new bugs and they will want to contact the mod designer if they get bugs in a modded game wouldn't hurt.

It's gotten better but there have certainly been a few people posting about bugs after adding multiple mods. Just my 2 cents as a non-modder.

Link to comment
Share on other sites

So this means, when my german translation is on first place, and our mod xnt on the second place, the translation files will overwrite the xnt files?

Also will this work with the steam workshop, or do we have to upload an english and a german version of xnt?

Link to comment
Share on other sites

Installing a mod uses the following process:
  1. Download the mod (as a .zip) and place it in the Xenonauts/assets/mods/ directory.

    • Steam Workshop will be able to do this automatically.

    • Those not using Steam can just manually copy the zip file into the directory.

[*]Load the "Mod Manager" game launcher tab.

[*]Click the "Install" button next to each of the mods you wish to install. The game will unzip them into a new directory in /assets/mods/.

This looks needlessly complicated. Why should this be better than the current way of having 'Install' button that simply does it all?

Link to comment
Share on other sites

Yes, but the majority of people will be using Steam Workshop to download mods and this method means Steam will download it to the correct directory automatically, leading to the game auto-detecting it (and any future updates too). It'll be a more straightforward process for most users.

Link to comment
Share on other sites

I don't know Steam Workshop works, but why can't that one work as another 'Install' button? IOW, why should installing from it require another explicit installation? If the user selected it explicitly in Workshop, they presumably want it installed (and in case this means Workshop would just download things without the user explicitly asking for it, then this UI wouldn't scale for the number of mods).

Link to comment
Share on other sites

I do not know the particulars of Steam Workshop, but I suspect there may be a particular hook it offers when a mod has been downloaded. If so, then you could use that in the code to trigger installation of the mod as if it were invoked manually, thus skipping a step from the player's perspective. In fact, I would be very surprised if there is no such hook.

Link to comment
Share on other sites

If Steam Workshop places all zipped mods in a directory, then I do NOT think the game should automatically install/activate/enable/whatever all of the mods found in that directory. If the files are automatically extracted, that's fine, but the mod loader needs to be able to pick and choose which downloaded mods should be active. Being able to quickly enable or disable mods is an important feature for any mod manager.

Nexus Mod Manager is an example of a pretty good mod loader interface. The built-in mod managers for Bethesda's games would be pretty solid as well, if they were not missing the critical functionality of letting you set the order of precedence for selected mods (which is why everyone uses 3rd party mod managers for TES and Fallout).

Link to comment
Share on other sites

In the current system, the mod can be downloaded to anywhere one wants (and the 'Install' button opens a file dialog to point to it), it is not necessary to know where the game files are located.

I've played about forty modded games, some with mod managers, some without, and some with workshop. Workshop is by far the most user friendly. Of course, user friendliness generally also translates to less power for the end user, but those of us who already know how to manually install mods won't be overly effected by this change anyway.

You can even still get mods from the workshop, you'll just have to move them into your alternate directory manually. I've done this for quite a few games in order to prevent Steam auto-updater from breaking my mod builds. (Yes, you can turn the updater off, but sometimes Steam ignores that setting, believe it or not. :( )

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...