CubeSuite / ModdersAssistant

Modder's Assistant is a program that helps modders organise their mod projects as well as automating many of the tasks involved in mod development
GNU General Public License v3.0
1 stars 0 forks source link

Consider moving files and settings with sources #4

Open jrinker03 opened 6 days ago

jrinker03 commented 6 days ago

There are a few interesting scenarios enabled by moving MA folders and settings under the sources for the plugin (and presumably then source controlled, as appropriate).

CubeSuite commented 4 days ago

For point 3, latest push added a 'Refresh Files' step to the release process. This step automates a release build and copies the result to Mod Files. Not sure on what you mean for the other two points

jrinker03 commented 3 days ago

Here's some more context on the first two:

Version number The idea here is that there is a single place where all things that are involved in making the mod package would use for versioning. From this, the build would generate all things that have a version. From MAs perspective, it would move to reading and writing this single source for versioning. If the dev updates the version in MA, then it would update that source. If the source is updated outside of MA, then MA would detect that and update the version in the UX. MA would not need to update the version number in the manifest as that would be delegated to the build. MA would not store a version number separate from this. In the event this source did not exist, MA could create it.

Collaboration on a mod As of the current version, MA stores project information in a local store with no great way to share a project's information except by manually passing files between different developers. If a project's information was instead stored with the source and controlled in the same way as source, a developer would also get any MA project updates with code updates. Once a project is ready for publishing, the project files can be checked in and any person on the team can generate the package. Even in the case of a single person having publishing rights, this aids with the scenario where the publisher is not in a good place to produce the final package. Anyone else on the team could generate it and the team knows it will be consistent with what is checked in.