I'd like JSONS to be able to Inherit, rather than id.equals --> overwrite. Basically, if id.equals, then use JSONObject.has() to check the fields / JSONArrays that are present, and overwrite only where there isn't a match with the existing data.
This works for Settings.json, but it doesn't work for .wpn, .proj, .ship, .skin, .variant etc.- the engine crashes if all of the required fields aren't present. A "inherits" Boolean might be the way here.
This issue with how the JSONs are not inheritable, even though the data in the game is inherently able to support it, keeps coming up for me, now that I'm not working on a TC where I can control all the data going in.
Inheritance might produce weird results depending on load-order (something I've also had to work around, and honestly I think should get addressed, but it's a much bigger feature request) but I feel that it's preferable to the alternative, where Mod X wants to tweak Variable A but Mod Y wants to tweak Variable B, with no conflicts between them, other than the engine