I have been reading several posts about having bridges and it mentions several problems that do not seem to have been solved so far.
If there is a way to have a place on a map where both water units and ground units can go, just let me know (and sorry for the post).
There are 2 types of problems that seem to forbid the creation of bridges so far: map making and path-finding
I thought about solutions for both problems, you can let me know if they sound silly.
Map making
The main problem is that we only have a 2d layer with height.
The solution would be to have another layer called bridges.png to show where the bridges are.
The bridges would connect to the highest altitude they touch.
For instance, consider this very simple height map:

Then consider this bridge map:

The result would be this, with the parts where the bridge connects to the land in light red:

We can add a bridge texture map to make it better, etc...
Pathfinding
To my understanding, the pathfinding algorithm does not need to be changer itself, the only modification needed is how to define a neighboring cell.
We would just need to put some cells on the bridge and connect the light red bridge cells to the neighboring land cells.
Problems with that system: the bridges have to be flat, and connect land parts at exactly the same altitude.
An alternative would be to draw the bridge with a heightmap, and to make it fall on the ground "tetris-like". This would allow for bridges connecting different altitudes.
Second problem: To my understanding, it seems that the damage system would allow to do damage at the same time on top of a bridge and under it. I do not know if considering the top of the bridge and the bottom as different path-finding cells would solve that.
Thoughts ?
Note: I have experience in C / C++ / CUDA programming if needed.