Judgement of Ideas, Part 1
To begin, I will veto ideas that I think are not improvements, and explain why. These will be crossed out in the
Categorized Ideas post above.
A negative judgement of the idea doesn't reflect anything about its proposer - this is brainstorming, so coming up with as many ideas as possible is to be encouraged. There will always be some bad ones along with the good.
Vetoed Ideas
- Multiple machine learning AI wars
It was acknowledged as a crazy idea. As cool as it would be, training competing machine learning AIs would be an inefficient use of resources, and I don't see much practical value with AI wars. However, we
could make variations of the same AI - i.e. have AI variant A control one player with strategy A, have AI variant B control another player with strategy B, and see who wins. That could be part of the machine learning process.
- RE: mod compatibility - diffpatch for Lua files
Problems with this idea:
- How is it supposed to update all of the mod files on CivFanatics?
- If it updates the files locally (whether on a user's PC or on GitHub or something), how will we identify which mods can be changed and which ones can't?
- How will we identify when a mod is compatible and when it isn't?
- If it can be done locally, won't some users end up with compatible versions and others won't? That could make debugging challenging.
- Security concerns with a program that edits other mods (executable could be flagged by antivirus software etc.).
- Feels like a more convoluted solution than just communicating when the mod has changed Lua and/or database files like axatin proposed.
- Mark features as deprecated and then delete them in a future release
- Make a VP Lite version
axatin effectively refuted these:
I‘m afraid that if we did it that way it would often be forgotten to remove the deprecated features and we‘d end up with a lot of non-functional columns in the database.
How would modders be notified? If they don‘t notice they need to change something, their mod would work incorrectly for a few months. When the old feature is eventually removed, it‘ll be the same situation as we have now. It‘s annoying if mods are not compatible with a new version, but at least it makes it clear something needs to be done.
The complexity is a result of trying to make the game more balanced, which is done by fine-tuning properties of buildings and policies. If you have any ideas how complexity can be reduced without it negatively affecting balance, feel free to discuss them here on the forum.
A light version isn't planned, maintaining two versions in parallel would require a lot of effort.
- Make the mod more modular
I think this is a step in the wrong direction. There's already debate about whether we should support some existing options, and it might be possible to change the DLL to make the 22-civ and 43-civ versions the same. The more versions of the game we need to make compatible, the more dev resources are spent on compatibility rather than core development (not to mention the work required in decoupling).
I'm not opposed to creating a CustomModOption for relatively isolated changes here and there that people might want to turn off, though.
- Make a patch-only installer for savegame compatible versions
We already have enough people who run into installation problems despite the autoinstaller. This would multiply that by a factor of three, I predict.
Dubious Ideas
These ones are not quite as bad but have some noteworthy problems:
- Use AI to generate higher quality artwork and leader dialogue
- Contract art assets / code
AI artwork is a very polarizing subject among artists, who tend to take a negative view of it. Furthermore, there are legal questions surrounding AI models and copyright violations. While these haven't been settled yet, I'd be reluctant to introduce something that potentially violates copyright into the mod, especially because we might then legally need to scrub it from the Git history.
Contracting someone to create art assets or code is along the same lines - bringing money into the development process is problematic for the same reasons as accepting donations would be. There's questions about whether contracting code would be legal given the license agreement, as well.
- Detach the gamecore and create a separate engine to make AI tests much faster since they have no graphics (NEW)
This idea has come up before. Unfortunately, it's a very large expenditure of resources, and I'm not sure if it would be legal to do given the license agreement. It's true that it would be great if we could pull it off, but the number of hoops to get there is extensive.
- Create a Community Patch Kit (Vaderkos)
Creating a (0) mod is dubious to me because we're trying to reduce the number of clicks, not add more.
The ethos of the mod stipulates that all database enhancements and Lua hooks are added in the (1) Community Patch mod. I'm definitely not opposed to integrating good quality work that makes modding easier into the main mod, though (hence why this is 'dubious' and not 'vetoed').
The other ideas, while not necessarily good ones, are at least worth more discussion in my opinion.