Strategic Primer assistive programs development report and roadmap (#39)

It’s been about a little over a month since my last report on the development of the suite of assistive programs for players and Judges of Strategic Primer, so it’s about time for an update, and a new snapshot release. This week’s release is 0.4.9005, and can be downloaded from GitHub as usual.

Changes

There have been a fair number of changes since version 0.4.9004, but very little that should be noticeable to users.

  • As usual, many changes were warning fixes (and less-successful attempts to fix warnings, and “magic comments” to suppress spurious warnings …)
  • As part of that, I removed some classes that haven’t been used for some time.
  • I did a little work to improve the test code, both increasing its “coverage” and ensuring that certain test methods aren’t only called with always the same arguments.
  • I improved the file-choosing helper class to make it more generally useful, and then used it to simplify areas of the code where the user is choosing a file other than a map file.

Roadmap

The Pivotal Tracker backlog is currently fairly close to what I’m hoping to get done in the near future.

At the top of the list is making a Mac-native “application bundle” that actually works (I would say “fixing,” except none of the versions I could test worked at all), followed by other adjustments to make the suite behave like a native app on the Mac platform.

Other items on the roadmap are:

  • Add images for implements and resource piles
  • Change the way unit orders are represented so they can be set per-turn
  • Add support for unit results to the map format
  • Make subset checking treat location as another property, instead of treating a fixture that moved as a ‘new’ fixture in its location in the subordinate map.
  • Fix the performance maybe-issues: that I use Swing APIs that “best practice” (according to my reading) recommends not using for loading images, drawing images, and limiting the drawing area
  • Make the GUI execute some operations in parallel to the GUI-update thread
  • Anywhere the GUI allows the user to cause a fixture to be created, allow the user to enter an ID #.
  • Add a way for the user to preseed the ID-numbers-in-use cache with a map without actually opening that map. (That is, without leaving the map open—I don’t intend to reimplement, or shell out to call, grep and sed!)
  • Convert the “Display …” menu to a panel containing checkboxes that the user can drag to set a custom display-sort order to control what appears on “top”.
  • As a user requested, when zooming in using the mouse scroll wheel, the zoom should center on the mouse cursor. (The ‘center’ menu item and hotkey help with this, but it’s still a good idea.)
  • The worker stat generator should apply racial stat adjustments.
  • Make the apps behave (more) like native apps (following human-interface guidelines) on the major platforms, starting with Mac OS X. The Window menu is a good start, and finally works, but there’s more to do. I need to enumerate what more needs to be done …
  • Changesets need to become a priority, because maps are no longer immutable from the players’ perspective. First, I need a list of operations that need to be supported.
  • The turn-running helper apps should be able to tell me such facts as how much meat any given animal produces, how much grain should be produced in a harvest, etc.
  • Related to that, “resource management,” eventually including modeling resource production and accounting in the map and the helper apps.
  • Unit (and other) “portraits”—larger images for individual units, towns, and the like.
  • Something like the mine-model-generation program for stone deposits. However, I currently make do with the existing model, just with different proportions for each level.

If you have any features you’d like me to add, or you run into any problems with the software, please let me know, perhaps using the issue tracker or contacting me directly.

Advertisements

Leave a Reply

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

WordPress.com Logo

You are commenting using your WordPress.com 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 )

Google+ photo

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

Connecting to %s