An Open Letter to TaleWorlds from the Kingdoms of Arda team, and the Total-Conversion Mod Community about our concerns and frustrations with Bannerlor

Users who are viewing this thread

Also, I'm not concerned if others are complaining about this. TW couldn't do the absolute basics correctly, why would I assume they have a well thought out and implemented architecture etc.? What I listed are just symptoms which generally mean much larger issues are at hand (which you already confirmed is true with the messed up architecture)
Hmm...are you saying the foundation of the game is not stable? Despite the issues with Bannerlord, I think it may be the opposite: The game is structured properly and works, but is bland and flavorless, without multiple modes I mean.
 
Not so much the game concept as the coding foundation. If it was properly done we'd be seeing faster updates with less bugs created.

I haven't looked at the code for some time, but when I did the issues I saw generally meant there wasn't a proper coding standard in place, linters to automatically check for and correct issues (spelling mistakes and naming conventions are just a very small part of what linters check for), and potentially thorough automated testing (this is tougher to identify without access to a companies dev environment). These missing make updates tough and bugs numerous. It makes adding new features tough as you're constantly creating new bugs as you extend the codebase while attempting to add the new features. This leads to the 1 thing added 3 things break issue.
 
This is not some unheard of unrealistic myth
I'm not saying it's an unrealistic myth. I'm saying it's hard to achieve without missing some of your goals. I'm not a contractor and I worked at mid-size companies ( not game-related ) as well as in a game company. I also worked at a company that was under Google's control ( acquired by Google but kept the name ). None of them had documentation or/and coding style guidelines. I also have friends in FAANGM and their subproducts also don't have guidelines ( Microsoft is quite strict about that tho as far as I know ). Expecting this type of code style from a game company that is supposed to create a game engine from scratch + a game with multiple features + server side + modding capability is not logical. If you are feeling disappointed about this then modding is not your cup of tea anyway - no offence.
Looking at the car's body paint and saying "Oh they used cheap paint, I bet the engine is also ****ty, I won't take a look" is strange. - again, I'm not saying the engine is great and in order but is it working and doing what they were aiming to do? Yes. That's all they need to do. Complaining about internal keyword fun and hardcoding random things is an issue that stops your mod development. Having camelcase functions in someplace and pascal case function names in some another place is not.
 
Not so much the game concept as the coding foundation. If it was properly done we'd be seeing faster updates with less bugs created.

I haven't looked at the code for some time, but when I did the issues I saw generally meant there wasn't a proper coding standard in place, linters to automatically check for and correct issues (spelling mistakes and naming conventions are just a very small part of what linters check for), and potentially thorough automated testing (this is tougher to identify without access to a companies dev environment). These missing make updates tough and bugs numerous. It makes adding new features tough as you're constantly creating new bugs as you extend the codebase while attempting to add the new features. This leads to the 1 thing added 3 things break issue.
Ah okay, I see. This could explain my issue as in regards to the flavor/hollowness of the game. Perhaps they attempt to put things into the game, but realize it would cause too many subsequent issues. Nevertheless, what's the solution for this? I'm no coder, I can barely make a Hoi4 portraits mod, but from what you're saying it seems like they'd need to redo a lot of things, if not build from the bottom entirely.
 
@Fate
Given what kind of bugs leak into the beta branch, I don't think they do much unit testing at all. We know they have automated tests for performance. It also looks like they are abusing their QA team for tests that should be done by developers.
But the main point here is - do you want to mod Bannerlord? If you do, you'll accept a degree of sloppiness and amateurism as long as their stuff works. That's all that matters. There are no alternatives and you can't choose to mod another Bannerlord that has clean code and everything.
If you fret over spelling mistakes (they are Turkish, remember) maybe you are looking for excuses why you don't want to commit to modding Bannerlord.
 
@Bloc :
We can agree to disagree. I think developing EA mods just isn't for me (maybe one thing we can agree on lol). Apologies for any offense I caused during my replies

Nevertheless, what's the solution for this? I'm no coder, I can barely make a Hoi4 portraits mod, but from what you're saying it seems like they'd need to redo a lot of things, if not build from the bottom entirely.
It does take work, this is what I thought they were doing during the months of refactoring. First they need to put the proper tooling in place and a lot of the issues will be identified for them

@MadVader
I don't think "modders just shut up and deal with it" is a good approach to accept. An English based linter does not care what language you speak. It'll let you know if you spelled something wrong, which again is a very very minor part of what linters do. The spelling mistakes just show this tooling is not in place. The spelling mistakes are a sign of a much bigger issue, not sure how many more times I have to reiterate that.
 
I don't think "modders just shut up and deal with it" is a good approach to accept. An English based linter does not care what language you speak. It'll let you know if you spelled something wrong, which again is a very very minor part of what linters do. The spelling mistakes just show this tooling is not in place. The spelling mistakes are a sign of a much bigger issue, not sure how many more times I have to reiterate that.
You keep saying that spelling mistakes are signs of something, but that's not necessarily true, It's just a shallow attitude.
You are not required to mod or accept anything, but you need to be willing to work with other people's (possibly messy) code to achieve your modding goals. In the contest between pedantry and pragmatism, only one approach gives results.
 
All this coding grammar talk reminds me of that time someone changed the spelling of marshal related code to marshall in Warband in an update like 5 years after the game's release :lol:
 
All this coding grammar talk reminds me of that time someone changed the spelling of marshal related code to marshall in Warband in an update like 5 years after the game's release :lol:
Ah, I did not want to comment it. I recall many complaints about that, it was an update coming with VC and instead of marshal it was suddenly named marshall (or vice versa) and it caused issues at many mods :lol:
 
You keep saying that spelling mistakes are signs of something, but that's not necessarily true, It's just a shallow attitude.
You are not required to mod or accept anything, but you need to be willing to work with other people's (possibly messy) code to achieve your modding goals. In the contest between pedantry and pragmatism, only one approach gives results.
I don't find it shallow, I just don't want to create a mod if every update introduces more bugs into the base game as well as breaks my mod? The issues I've mentioned (and now TW's history with this game) foreshadow this to happen.

I definitely give thanks to you modders who have the patience and time to deal with the very unnecessary and constant issues and limitations, I just don't

I'm not sure how this got so pointed on me, I was just voicing the issues I saw. Don't think I have to be actively modding to do that
 
All this coding grammar talk reminds me of that time someone changed the spelling of marshal related code to marshall in Warband in an update like 5 years after the game's release :lol:
Ah, I did not want to comment it. I recall many complaints about that, it was an update coming with VC and instead of marshal it was suddenly named marshall (or vice versa) and it caused issues at many mods :lol:

That's actually pretty funny :lol:
 
Thing is its stop being funny when that little itty silly mistake gets repeated a lot of times, and it seams a A LOT and then other syntax or coding mistakes which leads to frustration and makes mod developers longer to pump out content, which is a not such a funny situation.

Me thinks the community here, (my opinion on a Friday afternoon while I got nothing to do at work), is that the amalgamation and accumulation of mistakes, errors and willful negligence or obstinance from TW to just incorporate the lessons learned from Warband are causing a lot of friction, and all that could have been avoided with proper and right leadership.
 
My guess is they are road blocking modders at the moment due to early access and the fact they are refactoring lots of code and revamping systems along the way. Maybe TW thinks instead of breaking mods over and over or maybe the impact would be severe enough for them to roadblock modders until early access is over due to future planned features? Just pure speculation on my part but that is a theory of mine as to why.
 
Another thing to keep in mind is that games aren't your average tax and accounting software; there isn't a well defined template of the outputs and inputs.

You can test basic things for correctness, like the math library, maybe you can have a way of integrating buildbots, to see if the change breaks other platforms. Launching the game to see if they crash older savegames. Or having special versions of the game that try to do some kind of limited/automated playtest to check dead ends or logic problems in a quest line. Maybe lint for odd stats issues.

But good luck trying to unit test a combat-based 3D sandbox RPG. There are so many possibilities that it's impossible to test them all. Developers do functional live testing and tweaking of their features until they experimentally feel good and fun, then the human QA team starts exploiting the heaps of unintended issues and they slowly get ironed out until people run out of time or it's good enough for most purposes.

But modern games are a marvel of engineering, and they need to compute, process, redraw and finish everything under 16 milliseconds without hitching.

Add to that the fact that there's a big creative part of self-discovery and seeing what's fun and works or not, so requirements (and your plan) change daily, and you have your answer.

--

Note: I'm not excusing poor-quality software. A game internally may look a bit wonky or ugly because it grows organically, but it may work as intended.

Warband's module system wasn't super pretty either, but the whole thing was comfortable to use, easy to expand and because it mixed tables of data with triggers you can add new items relatively easily without touching anything else.

At the end of the day, as long as you don't have super unreadable spaghetti code you (and modders) should be fine.

Going with decompiled C# and limiting visibility of comments and a good separation of files was a step backwards, in my opinion. Something like LuaJIT would have been a better replacement, I think. At least in the original game we had access to the whole (modular) thing, as limited and creative-workaround-prone as it was in some ways. We could delete/stub most of the logic and turn it into something else.
 
Last edited:
But good luck trying to unit test a combat-based 3D sandbox RPG. There are so many possibilities that it's impossible to test them all. Developers do functional live testing and tweaking of their features until they experimentally feel good and fun, then the human QA team starts exploiting the heaps of unintended issues and they slowly get ironed out until people run out of time or it's good enough for most purposes.

But modern games are a marvel of engineering, and they need to compute, process, redraw and finish everything under 16 milliseconds without hitching.

Add to that the fact that there's a big creative part of self-discovery and seeing what's fun and works or not, so requirements (and your plan) change daily, and you have your answer.

I hear what your saying but this isnt their first rodeo either. They have multiple (including dlc) iterations of this game since Mount and Blade and much of what is being asked of by the community are things we already know the engine can do as it was done in both Viking Conquests and mods again and again. Things like proper diplomacy aspects, kingdom decisions, fully fleshed out NPCs etc are hardly new frontier for taleworlds. Its not like they have to re-invent the wheel. Now as far as things related to the new combat engine yes id agree -thats why for instance i have patience with the impotent Cav (that was extremely proficient since M&B1) as their newly rigged animation/physics system still needs proper calibration and i have faith they will at least eventually settle it.
 
I (more or less) agree with the spirit of the letter.

Just keep in mind that from our point of view the modding system and the games themselves are completely different, no campaign/module system code remains.

They didn't expand, they rewrote.

At the end of the day these modders are asking for the base game and tools to be less broken, fixing that, and making a bunch of tweaks here and there to make some components more accessible, less intermixed. And to have a good view of the original code without reading the more limiting decompiled version.

--

TaleWorlds at least probably has some comments there for themselves, explaining why things are the way they are, but we don't see them; they (unintentionally due to how it works) get stripped away and obfuscate the logic for modders even further. They need to publish the original files.

I think it would benefit the game in the long term, what's good quality-of-life for modders is also good for them.

Just making stuff like the map editor less crashy and more stable would go a long way.
 
Just keep in mind that from our point of view the modding system and the games themselves are completely different, no campaign/module system code remains.

They didn't expand, they rewrote.

Fair enough but i guess when you see how they seemed to shortcut things that have zero to do with coding just QoL and immersion like writing backstories and giving audio dialogue to NPCS it leads us to believe they are taking the easy way out across the board
 
Back
Top Bottom