Rudders, Keels and Fishing

This weekend I added two shipbuilding related discoveries: Rudders and Keels. The rudders discovery acts pretty much in the same way as sailing in that it increases the progression limit for shipbuilding knowledge, though not as far as sailing does. The Keels discovery on the other hand does not increase the shipbuilding knowledge limit. It instead directly increases the navigational range of ships. Making it easier for long sea migration routes to be successful. Since I'm not very knowledgeable about shipbuilding, my interpretation of how such discoveries would affect seafaring and shipbuilding might be lacking. The good thing about mods is that anyone else can modify them and make them better!

Aside from those two discoveries I hard-coded a new activity: Fishing. This activity will only be present on terrain cells adjacent to sea cells (at least until rivers show up) and will compete with the other two activities, foraging and farming. Fishing productivity is directly tied to the surrounding sea presence. Cells bordering multiple sea cells will be more productive than those that only border one. Also, fishing will partially be tied to shipbuilding knowledge. It is not necessary for a group to have discovered boat-making to practice fishing. But those who do will be much more productive and proportionally so to the shipbuilding knowledge level they possess.

I also began adding a bunch of mod conditions and factors that won't be tied to base discoveries for this release, but hopefully these will give modders a bunch of extra options to create discovery mods with. If everything goes fine I'll be done with that and discovery modding in general in a day or two so that I can finally start working on rivers.

Here's the mod details for the two new discoveries:

{ "id": "rudders", "name": "rudders", "gainConditions": ["group_has_knowledge:shipbuilding,5", "[ANY_N_CELL]cell_has_sea"], "holdConditions": ["group_has_knowledge:shipbuilding,3"], "gainEffects": ["modify_group_knowledge_limit:shipbuilding,5"], "lossEffects": ["modify_group_knowledge_limit:shipbuilding,-5"], "eventTimeToTrigger": 91250000, "eventTimeToTriggerFactors": ["[INV]neighborhood_sea_presence"] }, { "id": "keels", "name": "keels", "gainConditions": ["group_has_knowledge:shipbuilding,15", "[ANY_N_CELL]cell_has_sea"], "holdConditions": ["group_has_knowledge:shipbuilding,12"], "gainEffects": ["apply_group_navigation_range_modifier:0.5"], "lossEffects": ["apply_group_navigation_range_modifier:-0.5"], "eventTimeToTrigger": 91250000, "eventTimeToTriggerFactors": ["[INV]neighborhood_sea_presence"] }