Friday, September 30, 2016

Change Log: 2.0.1

Version Two lives again!

The GitHub repo now features a "v2" folder containing the basics/fundamentals of the new version two design: a Flask webserver/app and an Angjular JS javascript app that share a single settings.cfg file (thanks to some crafty flask request routing).

From here, the job is to get the new front-end guys who we're talking to about the project situated and comfortable with the stack and then to start porting the existing backend/business-logic code from Version One of the Manager over to a Flask-powered API so that I can handle requests from the front-end.

Also, in unrelated news, the next milestone release for V1 is due out tomorrow and I am presently about two or three views shy of having a fully functional "Tablet" breakpoint, so it seems like I will be able to get that release done in time.

Lots of action!

Thursday, September 29, 2016

Front-end Developers Wanted for "Version Two" Overhaul Project

Design mock-up by Logan Ogden.

My original Version Two partner in crime and I just posted a "help wanted" of sorts on /r/kingdomdeath: go check it out.

Long story short, we're making another run at building an interdisciplinary team to start working on a Version Two project for

The big idea behind the project, which is code-named "The Watcher", is to implement a responsive webapp that does more than just function as an interactive campaign manager, but that actually guides and streamlines multiplayer play.

In terms of implementation, the general plan is to leverage the existing kdm-manager back end and business logic framework, fully decoupling the presentation from the back-of-house logic, which means that we're not presently committed to any particular presentation methodology/framework/theories.

tl;dr If you're a front-end developer and you're interested in working for free on a KD:M fan project, give us a holler: we can definitely use you.

Friday, September 16, 2016

Change Log: 1.42.856

1.42.856 is a quickie release that pushes a single feature: data warehousing for the Dashboard's "World" panel.

Long story short, in the aftermath of the last few releases, page load times on the Dashboard, i.e. the first screen everyone sees when they log in, became super long. Over the last few days, I clocked average load times of several seconds (in the pro biz, a single second is already too long), and mostly, the lag was due to the amount of information we are now gathering to populate the plethora of new stats and averages that have become available in the last few releases.

In order to solve for this, I implemented some rudimentary data warehousing using the file system (like a sucker): I'll probably refactor that to use the db at some point, once I get a better idea of how I want it to work. This implementation is very much a first draft.

At any rate, the point of this release is to solve that major usability issue before the weekend (which is typically the Manager's busy time). Warehousing is functional and it's going out now.

There are no detailed notes for this release.

Thursday, September 15, 2016

Change Log: 1.41.854

1.41.854 is a "housekeeping" type of release meant to correct the bugs introduced in 1.41.837 and to handle some emerging/urgent/recently-introduced presentation and functionality issues.

There isn't a ton of new functionality in this one, but "The Bloom People" campaign will work a lot better now, and the automation of the Survivor Sheet re: Survival Actions and injuries/imparments that prevent Survival Actions, which broke a few releases back, has been restored, so that's pretty good.

Otherwise, work continues on the Tablet Resolution milestone, which I...probably will not be able to release this weekend, if I'm honest. Work on that milestone seems like it's going to push into the next week.

Thanks again for using the Manager!

Sunday, September 11, 2016

Change Log: 1.41.837

Release 1.41.837 is the milestone release that (finally) implements support for the Flower Knight expansion and its alternate campaign, "The Bloom People".

Beyond that, 1.41.837 is a substantial feature and bug fix release as well.

In terms of features/usability, this release pushes out support for permanent affinity controls on the Survivor Sheet, which is a pretty big come-up (especially for my People of the Sun). Certain Abilities and Impairments (e.g. the Savior ones) also automatically update survivor permanent affinities, so there is also some nice automation associated with the new controls.

Release 1.41.837 also overhauls the "World" panel of the Dashboard to include a.) a number of new facts/figures/stats about the Manager, b.) better, more precise stats/averages and c.) more usage/user-activity info.

As far as corrections and fixes go, the most notable updates have to do with the various problems pertaining to weapon mastery (and the auto-application of specializations): most of that should be smoothed out now, but, as usual, if you see something odd/weird/wrong/broken, please use the GitHub issues to report it.

Finally, this is also the first proper release in the new production environment, i.e. the first release pulled straight from Github to the Google Cloud Platform environment, and the whole release has literally nothing to do with any of the legacy configs on the Linode VPS. Which, to put it another way, is to confirm that the emergency migration started two weeks ago is now officially complete.

As usual, hit the jump for details!

Saturday, September 10, 2016

Milestone Release Tomorrow!

Just what we need! A Druish Princess!
The Flower Knight milestone is nearly finished and, assuming I wrap it up and have some time to QA it tomorrow, it will go out tomorrow afternoon.

As promised, the milestone will correspond with a production release that will add full support for the Flower Knight expansion and its alternate campaign ("The Bloom People").

The biggest news from the usability/UX side of the house, is that tomorrow's milestone release will (finally) implement support for permanent survivor affinities.

(On a related note, a couple of things will change about the way that Saviors are created and how they look/work in the Manager after creation. Also, some of the bogus "Abilities and Impairments" used to track permanent affinity adjustments will also go away in the release. Bottom line, affinity management will be a lot less messy after tomorrow.)

Finally, a few long-standing bugs are going away with tomorrow's release and a couple of non-trivial performance/output improvements are going out, so, all things considered, tomorrow's release is going to be a pretty big deal!

Thanks for using the Manager!

Sunday, September 4, 2016

Migration Complete!

...and now it's time for victory beers.
It is presently 18:45 CDT, and I am happy to be able to issue a general "all clear" on the outage issues that started yesterday and the migration/downtime that happened today: as of right now, normal functionality has been restored and most users should see immediate resolution to the 504/502 and other timeout issues that have been occurring since yesterday afternoon.

Hit the jump for some additional details and thoughts.

Change Log: 1.41.795

Pinup Nightmare Ram Armor lady is
searching high and low for the new A
records for! 
Release 1.41.795 is the first release on the Google Cloud Platform. The release features a substantial
refactor of how the Manager is deployed and also pushes support for the so-called "White Box" pseudo-expansion promo/one-off items into production.

The next major milestone is the Flower Knight release, and, even given all the unplanned work associated with the migration from Linode to Google, that milestone release is still tentatively scheduled for 09/10.

1.41.795 includes some of the items in that milestone (about half of them), so the actual milestone release should be a relatively small (i.e. content only) and painless release.

As far as the continued roll-out of expansion coverage goes, after the Flower Knight goes out I am going to take a break from those for a release or two while I work on tablet resolution.

(That said, as of August 18th, I've got a Dragon King on the way from the EU, so as soon as that arrives, I'm going to prioritize it up to the top of the stack and set an ASAP milestone date for releasing Dragon King support.)

Thanks again for using the Manager!

Migration downtime updates!

The current production instance of is going into maintenance mode in about 15 minutes.

The maintenance message will appear until the migration is complete and the DNS update(s) have had time to propagate: it could take anywhere from a few minutes to a few hours.

Thanks for your patience and see you on the other side!

Update: as of Sun Sep  4 18:16:14 EDT 2016 we are officially in maintenance mode.

Update: as of Sun Sep  4 18:51:28 EDT 2016, we're done and the migration is complete. DNS may still take some time, but it has already propagated to Google public DNS (probably because I'm doing DNS through Google now). is Moving to Google Cloud Platform

It has become clear to me that Linode is not a high availability service provider.

The production instance of presently lives in the Atlanta Linode data center and, between this year's two major outages alone, that data center alone has logged something like three or four days worth of downtime.

In this day and age, that is an unacceptable figure.

I wrote during the January Linode outage that I was going to do some things to build some redundancy into the Manager, but none of the steps I took did much to soften the impact of this current outage. Consequently, I am redeploying production on a Google Cloud instance.

(I will still be a Linode customer and use my Linode VPS for other projects, but, in the interest of higher availability, the Manager is moving to Google Cloud. I love Linode for what they do...but what they do isn't really what I'm trying to do here, if you follow my meaning.)

I am currently working on deploying the Manager in the Google Cloud.

When that new deployment looks like it's ready to go, I will put the current production deployment into maintenance mode (you'll see a static web page information you that maintenance is happening) and start the migration. The production Manager uses a little under 10GB of storage and, once that migrates over, I'll switch DNS and we will start cutting over to the new instance.

I will post an update before the downtime begins.

Thanks for using the Manager!

Saturday, September 3, 2016

Outage! Sustained DDOS attack against Linode. has been inaccessible since about 16:14 Central time.

Linode, the company who owns the data center where the production instance of the Manager lives, has provided two updates so far:

Identified - We've identified a distributed DoS attack as the cause of impacted connectivity in Atlanta and we're working to mitigate it. Further updates will be provided as they become available. Sep 3, 21:14 UTC
Update - We have been experiencing a catastrophic DDoS attack which is being spread across hundreds of different IP addresses in rapid succession, making mitigation extremely difficult. We are currently working with our upstreams to implement more complete mitigation. Sep 4, 00:45 UTC

Unfortunately, given the nature of the attack, I have no access to the production host or any data.

Something like this occurred earlier this year, and Linode's response consistent and sustained and, eventually, they were able to put effective counter-measures in place and restore service. I expect that the same sort of thing is happening now, but all I can really do is wait.

Thanks again for using (or trying to use) the Manager!