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.
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.
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,
- 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.