Strategic Primer: Yet Another Resolution Change (RFC)

Over the past few months of development of the map viewer for Strategic Primer, after going to a great deal of effort to convert to a much higher resolution, populate the map with several “fixtures” on every (smaller) tile, make sure that players’ maps matched the main map, and then keep everything up to date with improvements to the viewer and the map format, I’ve come to the conclusion that the current size and scale make the map far too big to deal with, in practical terms. If there are many warnings (if I’ve added a new field to a kind of fixture and want to warn if it’s omitted, so I can find out where I need to add it, for example), reading the map can take a significant fraction of an hour, and drawing it was somewhat slow even before I increased the resolution. What’s worse, if I try to use Vim’s diff mode to compare two versions of the main map, it takes several minutes to recompute the diff after any change.

So, to alleviate the performance problems, I think we need to reduce the map resolution again. In the previous conversion, each tile became sixteen as each dimension expanded fourfold; this time, I think each dimension will halve, reducing the total number of tiles by four. But even this is not quite as bad as it sounds, as I plan to add sub-maps—”lower-scale” maps each representing a tile on the main map—loadable from separate files at run-time before I actually make the conversion. And while some fixtures might have been lost (due to the way I implemented the viewer) if I attempted this conversion earlier, I’ve recently added unique IDs to most fixtures (only the ground (there’s a fixture representing it on every tile), forests and mountains (which are placed on every tile that was a mountainous or forested tile in the previous version of the map), and rivers don’t have them) that should ensure that no further data is lost.

Any comments or questions (especially from my players)?


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.