As it happens, the division of labour Lytning and I agreed (at least for now), is that he is continuing to work on baseline multimap functionality, and I am working on viewport functionality. All work is happening on the parallel map mod, and will be ported to C2C when it is at least basically functional at some level (it will probably lack any UI, but the necessary Python APIs will be exposed for UI to be added, which is not really either my or Lytning's area of expertese, so that will likely fall to AIAndy and others after the port).
Current status is:
- Baseline multimaps work graphically, but not yet in terms of turn mechanics (see below)
- Viewports are functional at a very basic level, but I'm still working through glitches and gotchas
The key thing that needs doing before it's 'usefully functional', at least for C2C purposes, is the turn synchronization model across maps needs to be implemented (that is to say that a turn end, ends the turn on all maps, AIs process their stuff on all maps each turn, players with units that need orders on multiple maps get auto-map-switched to cycle through the ones they need to attend to, and so on).
Lytning is also rews, such as civ-wide limits on things like unit types applying globally rather than in each map individually [technically this involves making the map id essentially a third coordinate in the coordinate system, rather than a second dimension to entity ids].
Minimaps are proving a bit of a bugbear for the viewport system (the minimap size must match the map size, but what I hadn't realised is that orking some stuff that's already done a bit, now that we've had time to think it through a bit more. This rework should smooth the path to multiplayer support and other issuethe map in the military advisor screen IS a minimap, generated by the game engine (not the DLL or the Python), which causes problems because Python sees the entire map, but the game engine sees viewports). Tentatively this seems resolvable due to the single-threaded non-reentrant nature of the game (while an advisor screen is up the game engine doesn't try to deal with the regular map, so it's looking like I can context switch the map under its feet while it's in Python-land and fool it into doing the right thing)