A new update is now available for Spellmaster II (version 0.0.33 based on source code revision 91d81105e9aa). Patch notes for this version follow.
Spellmaster II Preview Release 0.0.33 (28 July 2019)
This is a long-term maintenance update. In addition to fixing some minor bugs, the game engine has been updated to the latest version.
There is also a Magic data set update included, but it is not too recent, being updated only as far as Dominaria (released in April 2018). There is a good reason for this. The data sets were previously scraped from magiccards.info using jsoup, but this site is no longer operating. The replacement service, Scryfall, has explicitly stated there will be no future support for scraping HTML pages from magiccards.info, which makes the current version of the card fetcher unusable. In order to continue to update the data sets, I will have to rewrite the fetcher to pull data from their JSON API instead, which annoyingly doesn't even have a matching set list. Because of this, when I eventually make that change, the entire card library will probably have to be rebuilt from scratch, and any decks people have built which make use of cards with no-longer-matching IDs will effectively have to be remade. What a nightmare!
In the long term, in order to allow for Spellmaster II to see an actual public release, I am hoping to completely decouple the set data from SM2, meaning that datasets and SM2 builds will be updated separately. My plan is essentially for the launcher to update SM2 and then for SM2 itself to manage and update the locally stored card data. There are numerous advantages to doing this. In addition to avoiding shipping any Magic or Intryon content with the SM2 installation, it will be possible to update the set data more regularly (possibly by an automated script) because I will no longer be forced to issue SM2 updates simply for the addition of new set data. Compiling all of the GPQ archives for the set data also takes almost 30 minutes for the build server nowadays, making new builds quite slow to roll out, so after the decouple the compile of new SM2 builds should be pretty fast.
The update to using Scryfall's API will probably happen at the same time as the decouple, resulting in a single big changeover. I'm honestly not sure when I will get around to this. Until then, there are likely to be no further updates to the set data.
Anyway, here are the changes in this release.
Spellmaster II core changes:
- Updated to GinENGINE version 0.4-alpha1. This is a major engine update with many new features and stability improvements. A lot of the netplay code has also been refactored in order to move common battle code to the engine core. Login can now also optionally be handled directly by Spellmaster II without having to use the GineverLauncher. This is a prototype feature not expected to see any serious use right now, but could allow for release of SM2 (or applications forked from it) in other app stores/launchers in future.
- Fixed broken buttons on spectator list.
- Fixed an issue where the game would crash if an unknown user group was found in the friend list data.
- Fixed a security-related regression introduced in GinENGINE version 0.3.1 (and thus in preview release 0.0.28) where the game would not bother to validate the SSL certificate of the gameplay server
- Minor visual tweaks to several menus and control screens.
- Game types are now implemented as netplay rulesets.
- Updated data set as far as Dominaria.