There is rarely such clear consensus not to have a particular feature No accidents, then.
One has to think if those waterways could interfere with ships. Think of a long river (or long narrow lake) with ports at both ends and waterways crossing.
These "waterways" will be nothing more than a number of buoys marking the way for a ferry. Ships can pass unhindered. Collisions are not possible.
Now some thoughs concerning the production of ferries. There should be a possibility to stop the shipyard from building ships or ferries if one needs the other one. Will the ferries be a ware and get stored in a warehouse? Then one could set a target quantity. But this is not possible for ships.
Perhaps it would be easier to implement a ferry as a kind of worker (with target quantity). How about this design:
The shipyard stays as it is. Ferries are produced by a Ferry Depot, which combines productionsites and warehouse features. The Ferry Depot produces ferries. It has a port dock attached to it (wherefore it can be built only near water, but not only on port spaces), and it stores ferries that are not currently assigned to a waterway; a ferry can enter the depot by rowing onto the attached dock. When a waterway is destroyed, the ferry goes to the nearest depot, or if there isn´t one, it behaves like any lost worker: It rows around and eventually sinks.
And if I remember correctly they could transport wares only, not workers. But that was a different game, and we can decide to transport workers as well. Just wanted to mention it for completeness.
I believe wares-only transport is much easier to implement. That´s another point for worker exclusion
Therefore I'd suggest to restrict the ability to build a waterway between two flags to only be possible if there is an already established road connection between the flags. That means you can have ferries crossing rivers or fjords or lakes, but only between points on the same island.
Checking whether the flags are in the same economy is trivial, but this may be really hard to implement… first, I´ll implement the same-economy-rule, and when we have something that works, we can consider this again.
Maybe a ferry should also be restricted in distance: Say a ferry can only act when the space between two flags is between 2 and 3 nodes. So a ferry will be used more like a bridge, a shortcut over a river. And not as a replacement for a ship between two islands.
3 nodes is a bit very few imho. But we could have a tribe-dependent range limit. Atlanteans and Frisians are seafaring tribes, they´d get a high limit like ~8. Barbarians get less, about 6, and the Empire dislikes the sea and gets only 4.
Also, I want to propose the restriction that a flag can have no more than one waterway attached to it.
I think that it should not be limited by economies - you should be able to move wares between two separate and close enough islands. But you shouldn't be able to move people. The only exception I can think about here is a builder - he should be able to go to the new island and build a port there.
Permitting worker transport and restricting it to builders can be really difficult. And permitting to reach unreachable territory with ferries would break design concepts of many maps – play for example No Metal Challenge with a different player than blue, and consider how you´d like it when the AI can build ferries to reach the other shore
And the last limit: all the water route should be placed inside player's territory. Losing it means that the route is destroyed
and the ferry can be lost too (the carrier can go to the closest shore and left the boat there).
That would be really too much effort… I´d prefer to make it work as described above about the Ferry Depot.
Oh... I forgot about Settlers II 10th anniversary. I remember that I joined an island with a main continent. All the wares wanted to go through the ferry/boat, not the ship. That was a bug from my point of view, because the traffic should be distributed in both sides.
Definitely an issue that will need watching, but that can be taken care of when everything else works.