That's not how it works, though. When the lighthouse is built, a simple "sea plot yield" variable is increased by 1 and this variable is checked when a sea plot is worked or queried. I'm just replacing a lot of the NUM_CITY_PLOTS with the specific city plots. This crash could in theory be a bug in the default game that doesn't doesn't occur often (or at all) with just 21 workable tiles.