Hi TaleWorlds!
While we appreciate the steps that have been taken so far in response to the open letter, myself and several other modders would like to propose a way we can more actively contribute to make Bannerlord more modding friendly and accessible. We saw this comment and thought it was a really good idea, so we decided to discuss it and refine it to make it more feasible.
Proposal Overview
We would like TaleWorlds to make an open-source fork of the official native/sandbox/storymode/ etc. module source code, in which modders could directly make the changes we desperately need without having to rely on TaleWorlds developing these changes themselves. The repository would be maintained by the leaders of the modding community, and vetted/capable members of the modding community, who would ensure that all changes adhere to professional/industry standards. The goal of this repository would be to compile a "blank slate" nuget package modders could easily build their total conversion mods against, instead of having to build against the official modules which are likely to stay modding-unfriendly for the foreseeable future.
How Would This Work?
Taleworlds would create a public fork of the module (not the FairyTale engine, although it would be very useful to reference) source code repo(s) inside of a github community (eg. this one, which already contains the unofficial modding documentation). The modding community would designate a group of maintainers comprised of our community leaders and lead programmers, who will be tasked with carrying out code reviews and establishing the standards/conventions for contributing to the repository. Once those standards and conventions are established, modders could then start making their own branches and forks to start contributing and fixing modding-specific issues. All changes would have to go through a code-review process (maybe TW develops can even participate if they would like) to ensure the established standards are met.
Every major release, we would simply be able to pull over the new changes made by TaleWorlds, and rebase the repository onto those changes, which would make adapting our code to these changes significantly easier.
The final product of this repository would be a library containing completely generic implementations of every class needed by modders, without the severe limitations of the official modules. The maintainers would then handle packaging releases, and distribute them through Nuget to be easily utilized by all modders.
Why do this?
By providing this proposed open source fork, us modders would be able to fix the problems critical to us without having to pester/rely on TaleWorlds to fix them themselves. This would also allow for modders and TaleWorlds to work in parallel, and TaleWorlds could focus on developing/refining the native campaign with little concern having to be made regarding modding.
By also having access to the module source code, we would be able to see comments made within the code, which would be a great substitute for the lack of modding documentation. There are countless other benefits that would come with having module source code access, such as having access to debug assertions.
Overall, we think this would be a fantastic solution to fix many problems that currently exist with Bannerlord modding with much greater efficiency, and would take a significant amount of pressure off of TaleWorlds to accommodate the needs of modders.
- The Total Overhaul Modding Community
While we appreciate the steps that have been taken so far in response to the open letter, myself and several other modders would like to propose a way we can more actively contribute to make Bannerlord more modding friendly and accessible. We saw this comment and thought it was a really good idea, so we decided to discuss it and refine it to make it more feasible.
Proposal Overview
We would like TaleWorlds to make an open-source fork of the official native/sandbox/storymode/ etc. module source code, in which modders could directly make the changes we desperately need without having to rely on TaleWorlds developing these changes themselves. The repository would be maintained by the leaders of the modding community, and vetted/capable members of the modding community, who would ensure that all changes adhere to professional/industry standards. The goal of this repository would be to compile a "blank slate" nuget package modders could easily build their total conversion mods against, instead of having to build against the official modules which are likely to stay modding-unfriendly for the foreseeable future.
How Would This Work?
Taleworlds would create a public fork of the module (not the FairyTale engine, although it would be very useful to reference) source code repo(s) inside of a github community (eg. this one, which already contains the unofficial modding documentation). The modding community would designate a group of maintainers comprised of our community leaders and lead programmers, who will be tasked with carrying out code reviews and establishing the standards/conventions for contributing to the repository. Once those standards and conventions are established, modders could then start making their own branches and forks to start contributing and fixing modding-specific issues. All changes would have to go through a code-review process (maybe TW develops can even participate if they would like) to ensure the established standards are met.
Every major release, we would simply be able to pull over the new changes made by TaleWorlds, and rebase the repository onto those changes, which would make adapting our code to these changes significantly easier.
The final product of this repository would be a library containing completely generic implementations of every class needed by modders, without the severe limitations of the official modules. The maintainers would then handle packaging releases, and distribute them through Nuget to be easily utilized by all modders.
Why do this?
By providing this proposed open source fork, us modders would be able to fix the problems critical to us without having to pester/rely on TaleWorlds to fix them themselves. This would also allow for modders and TaleWorlds to work in parallel, and TaleWorlds could focus on developing/refining the native campaign with little concern having to be made regarding modding.
By also having access to the module source code, we would be able to see comments made within the code, which would be a great substitute for the lack of modding documentation. There are countless other benefits that would come with having module source code access, such as having access to debug assertions.
Overall, we think this would be a fantastic solution to fix many problems that currently exist with Bannerlord modding with much greater efficiency, and would take a significant amount of pressure off of TaleWorlds to accommodate the needs of modders.
- The Total Overhaul Modding Community