I am planning to restructure ALL Lua modules, because there are some systemic issues, which require a lot of exceptions and getting information from sentences, which requires consistent sentences. Even a small inconsistency in a sentence can cause an issue. The system is not very robust.
Originally I planned to have as little data as possible in databases, because I wanted to reduce work for those who are adding data. I knew this meant more work for me, who coded the modules that represent that data - and I was fine with this.
Mostly what I intent to do is to add some variables. For example, instead of just "unlocks = 'Increases daily quests.'", I would add another variable "increases_daily_quests = '2,3'", which not only explicitly states that the building increases daily quests rewards, but also by how much.
Another example: instead of searching the whole item database and strings of items for which item increases expedition loot, the Miso soup would have a variable named "increase_expedition_loot". So the program wouldn't have to search all item descriptions, it would only have to look, if the item has this variable. There is a time limit on how much time a Lua program can run and this helps.
Also, the Pizza Diavola has been problematic, because it increases current Health and also maximum Health.
But what really pushed me to this decision, are the "buildings in buildings" (e.g. Data center in Laboratory).
I plan on doing a "version 2" of every module and then copy-pasting everything into "version 1". So nothing will change until I start copy-pasting and editing "version 1".
If you have any suggestion or concerns, please let me know.