I have answered the notes. I have also renamed "stones" to "granite". This was a leftover from my terminology cleanup for Build19 that was never implemented in the AI variables and functions - "stones" it the mountain map resource, "granite" is the ware now. The immovables littered around the map are "rocks".
I think you can get rid of one of the new definitions. If a building has refinedlog() listed in its outputs, it is automatically a logrefiner().
I have answered the notes. I have also renamed "stones" to "granite". This was a leftover from my terminology cleanup for Build19 that was never implemented in the AI variables and functions - "stones" it the mountain map resource, "granite" is the ware now. The immovables littered around the map are "rocks".
I think you can get rid of one of the new definitions. If a building has refinedlog() listed in its outputs, it is automatically a logrefiner().
Also, why do we need this assertion?
assert( count_buildings _with_attribute (BuildingAttrib ute::kIronMine) <= 3);
If somebody mods a tribe with even more mine upgrades, or many different types of iron ore producers, the assertion won't hold.