Friday, December 30, 2016

Progress Update and Player Management Feature Demo

Good news, everyone: all of the new features that I want to include in the Anniversary Release are complete and, as far as I can tell right now, ready to ship.

From here, I need to take care of two things before I roll out the new release.

First, I want to spend some time looking at presentation, i.e. to make sure that all of the adjusted sheets and controls and what-not look alright.

Second, as I mentioned in a previous blog post, I need to spend some time making sure that old date migrates to the new version of the Manager correctly.

The first thing should only take a couple/few hours, but the migration QA could take longer, especially if I find any major issues.

tl;dr I am still on track to ship the Anniversary Release of the Manager this weekend.

In the meantime, please enjoy this animated GIF feature demo that shows off the new player management controls at tablet resolution!

And thanks for using the Manager!

Wednesday, December 28, 2016

The Anniversary Update is delayed

A graph from GitHub showing development activity since the project began.

I got a couple of emails about the Anniversary Update, so I figured I should check in and say a few things about why the update hasn't gone out yet and how progress is going generally.

The tl;dr is that the update is late because I'm not done with it yet, but I am still working hard on getting it ready.

Hit the jump for complete details, including some teaser screen captures and a little info on the top-secret V2 project.

Monday, December 19, 2016

New Feature Demo: Enhanced Timeline controls!

As promised, I took a little time today to record another animated GIF demo showing off the general feature set and workflow for the Enhanced Timeline.

The Enhanced Timeline will ship with the Anniversary Release (i.e. later this week) and, in addition to being accessible from all views (e.g. Campaign Summary, Settlement Sheet, Survivor Sheet, etc.) it will integrate the old Settlement Event log.

The best feature, however, is the integration with the Departing Survivors management controls: without any refreshes or reloads, the Departing Survivor controls have the ability to update the Timeline automatically.

At any rate, check out this mobile resolution demo to get a general sense of how the workflow will look.

The Anniversary Release still still on track to be completed on or around Wednesday, but presently, I'm thinking I might take an extra day with it to make sure I feel good about how legacy user data will migrate, etc. before I roll it out.

More on that as I have it.

Thanks for using the Manager!

Sunday, December 18, 2016

New Feature Demo!

Over the last few months, I have received a bunch of requests to a.) make Settlement Sheet settlement notes not require page reloads and b.) to come up with some kind of solution for sharing notes/announcements/alerts among all players on a campaign.

The solution, which will be included in the Anniversary Release (later this week), is the Campaign Notes feature:

A settlement admin signs in, opens the
controls for Campaign Notes and tries to
remove other players' notes (and can). The
admin then removes a note and reloads
the Campaign View and shows that the
note is removed. 
A non-admin player signs in, creates a note
and then tries to remove other players'
notes (and cannot). The non-admin user is
allowed to remove his own notes, however.

This is just one of a handful of major new features that are going to ship in a couple/few days when I've got this Anniversary Release QA'd and ready for production.

The other big feature in the release is the new Timeline controls (which I teased yesterday). At present, the plan is to do an animated gif demo for those tomorrow and then work on shipping the Anniversary Release on Tuesday or Wednesday.

Stay tuned! And thanks for using the Manager!

Saturday, December 17, 2016

Major upgrade coming very soon!

It's been quiet for a while, so I just wanted to check in with a quick update to announce that the Anniversary Release of the Manager is nearly ready to roll.

As far as when it will be ready to ship, I'm thinking it will still probably be a couple/few days before I feel ready to push it into Production: there's a tone of upheaval in this one, in terms of both front- and back-end elements, and I really want to make sure I feel good about it before I release it into the wild.

In the meantime, here are a few sneak peaks of how things currently look at mobile resolution:

Friday, December 9, 2016

Change Log: 1.53.1251

1.52.1251  isn't as focused on break/fix as I thought it would be: turns out that I didn't ruin the whole webapp with the big Spidicules push like I thought I might have.

In terms of corrections and fixes, there are a few--including a change of the "Pictograph" text to use the errata text from the FAQ--but most of them are pretty low-stakes and presentation-oriented.

I spent a good amount of time in this release cleaning up some known presentation issues and trying to keep the overall aesthetic moving in the direction of looking consistent with the general KD design elements in the core rules, etc.

There is one major new feature in 1.52.1251, however. Survivor Search has been added to the Campaign Summary view.

The big idea behind Survivor Search is that it helps you rapidly search through large populations of survivors for a particular Fighting Art, Disorder, Epithet, A&I or note on the Survivor's Sheet. Give it a shot! (Tip of the hat to /u/jeeshburger.)

Finally, keep an eye out for Slenderman Expansion support at some point in the next couple/few days: I'm going to finish up the few things I need for that and push them out ASAP.

Thanks again for using the Manager!

Tuesday, December 6, 2016

Change Log: 1.52.1234 / 2.14.83

Ok, so here's the deal: today's earlier release (of the Endeavor Tokens feature) broke a lot of things for a lot of people, so this release tries to fix the major problems that the last release created.

Release 1.52.1234 also adds support for the Spidicules Expansion!

Now, you're probably asking yourself, isn't a pretty bad idea to roll out support for expansion right on the heels of what is ending up being a pretty badly botched release? Yes, it absolutely is, but a guy sent me an email and asked if I could double-time it on the Spidicules support and I'm still fired up from this afternoon's Mario Maker insanity, so I decided to disregard all of that and "do it live!"

Two new features ship with this release and support the expansion:

  • Fighting arts can have levels now (see the "Silk Surgeon" FA).
  • Storage items can add endeavors to the Campaign Summary view (see the "Serrated Fangs" resource)

Otherwise, this one's all break/fix.

...and I'll probably end up doing another break/fix type release tomorrow, as I plan to spend some time QAing all the new stuff that's recently gone into production and trying to work down some of my long-standing presentation issues.

Thanks again for using the Manager!

Change Log: 1.52.1219 / 2.14.82

This tiny release includes a lot of monkey patches, i.e. "hot" fixes or adjustments that were pushed to production as I completed them.

(Turns out mega-release 1.52.1194 broke a bunch of stuff: even more than I originally would have guessed. But you know what they say about making an omelette...)

That said, release 1.52.1219 is not purely brea/fix and it is definitely not without new features. I am  off to a slower start that I would have liked, but in this release I am putting out a pretty big feature from the Campaign Summary refactor milestone.

Release 1.52.1219 includes the new Endeavor Token management feature, so be sure to try it out and let me know how it works (or doesn't work).

One high-level goals of the milestone is to open up the Campaign Summary as more of an active view and to make it part of the multiplayer experience by providing non-admin players views of the timeline, Settlement Storage, etc.

The Endeavor Token feature is the first tiny step in that direction.

Also, I finally bit the bullet, bought a web-license for using Silverado Medium Condensed and the main font of the Manager is now that. [source] There is still some...normalization of the presentation that has to happen for it to look the way I want it to look, but this release is a "first draft" over the over aeasthetic I'm trying to move us towards.

I'm also continuing to chip away at expansion support: look for Spidicules Expansion in the next couple/few days. I'll probably get around to adding support for the Slendarman Expansion, but maybe not for a little while yet.

Thanks for using the Manager!

Saturday, December 3, 2016

Change Log: 1.52.1194 / 2.14.79

Release 1.52.1194 focuses heavily on back-end enhancements and optimizing for efficiency and speed (e.g. on page renders).

The plan for Campaign Summary refactor milestone has so far been that I need to pay down a lot of technical debt and address a lot of long-standing issues before I get started on the features in the milestone, so this release mostly refactors the existing code base. In fact, this release contains only one new feature: a minor improvement of the Campaign Summary controls for managing Departing Survivors.

The modal controls for managing Departing Survivors have been clarified and cleaned up and now support an option for returning survivors in defeat: all of those TPK nemesis showdowns can now be recorded automatically.

That said (and I realize that this will be of almost no significance to anyone but me), this release will probably be one of the most significant ones I've done, in terms of general usability.

Not only does it totally redesign the way that requests get handled, parameters get processed and views get rendered, it also instruments a lot of what used to be total spaghetti (and is now, thanks to the extensive refactoring in this release, pretty OK-looking code) and I am already leveraging the new instrumentation in this release to work on improving usability by decreasing response times.

For example, through the elimination of redundant/extraneous code, this release will cut the time it takes to render a Campaign Summary view literally in half:

At any rate, the point of all of this is that I'll be ready to start doing feature work this weekend, I think, once I feel like I've nailed down all of the inevitable bugs/issues that get introduced in a release such as 1.52.1194.

As far as expansion coverage goes, the current plan is to roll out support for the Spidicules Expansion at some point during the feature releases for this milestone, and probably sooner rather than later.

Thanks again for using the Manager!

Wednesday, November 30, 2016

Change Log: 1.52.1160/2.14.76

Manhunter. Current mood: no use for a hat.

With release 1.52.1160, I am taking a break from features to work some bugs and resolve some issues before I start on feature work for the Campaign Summary refactor milestone.

Also, due to the insanity happening over on Kickstarter right now, usage of the manager has roughly quadrupled in the last three days, and the amount of feedback (in the form of issues, blog comments, etc.) is at an all-time high. The net result for the Manager is that I've been working a lot of issues/bugs, and 1.52.1160 includes a number of critical fixes for issues that have cropped up since the Monday release.

And, while I'm on the subject, I would like to take one more opportunity to say a very sincere "thank you!" to everyone who has submitted issues this week.Without feedback, it is very difficult for me to tell what is broken, what works and what doesn't work, and so on, so keep those emails/github issues/comments/etc. coming!

Thanks again for using the Manager!

Sunday, November 27, 2016

Change Log: 1.52.1147 / 2.13.73

Current mood.

The Black Friday milestone is now closed.

That does not, however, mean that all Safari presentation and usability issues are resolved. I started hacking on them this morning and I just...don't care. I can't get motivated. The issue is still open, however, and I moved it into the next feature milestone.

(I think the greatest hope for getting this thing done in the near term would be if my favorite Safari user logged in during the next couple of weeks and re-lit the fire under my ass and inspired me to get the issue resolved. Otherwise...)

That said, this release does address a handful of general presentation and usability issues. It also refactors the way the API delivers user assets (i.e. settlements, survivors) to be more extensible and easier for the front-end guys to work with.

Release 2.13.73 is another major step forward for the V2 project.

In terms of V1 back-end improvements, the major progress here is some low-level refactoring to make requests to the API in a DRYer, simpler fashion. I also (finally) killed the old jQuery/AJAX "autoForm" dependency for no-refresh form submission, which feels awesome (because that thing was a pig and I've been hating it for close to a year).

None of those improvements are user-facing, per se, but it should improve overall performance and it makes the implementation of new features/functionality easier for me.

Saturday, November 26, 2016

Change Log: 1.52.1134 / 2.13.68

This one is a major release for both versions of the Manager.

In terms of V1 UI/UX and general usability improvements, 1.52.1134 adds a major new feature: cursed item controls on the Survivor Sheet. It also stylizes Fighting Art and Disorder info on the Survivor Sheet to emulate actual cards, which I think looks pretty cool.

(Do let me know if you disagree, however. I've been getting positive feedback on adjusting the Manager's visual style to look more in sync with the general KD aesthetic, but this might take that too far.)

On the back-end, 2.13.68 adds major new routes to the API and the V1 app has new hooks to start taking advantage of its methods and assets. The changes going out in this release basically pave the way for starting serious development on the V2 webapp.

(More details on the V2 project beta timeline should be available in the next couple of weeks, but they're definitely coming into focus and this release is a major part of that.)

Finally, in terms of what is still due from the Black Friday milestone (which is now one day late), there are only two items: a handful of Safari presentation fixes and bug fixes for a survivor normalization problem that effects settlements with the Beta Challenge Scenarios enabled.

I'm going to do a long/deep-dive QA session re: BF milestone tomorrow morning and I expect to be able to nail those down while I'm working through that.

Thanks again for using the Manager!

Wednesday, November 23, 2016

Change Log: 1.50.1102

Release 1.50.1102 is a big one for Saviors (and the campaigns that use them).

This release revises how Savior status is handled on the Survivor Sheet, in the Campaign Summary view and on the Manager's back-end. The revisions are tantamount to a total tear-down/rebuild of the feature.

While I initially did not intend to revise Savior functionality in this milestone, I decided to pull in a last-minute suggestion for cleaning up the feature, and then once I started on it, I realized that I a.) wanted to run with it a bit and b.) take the opportunity to pay down some technical debt that I've been carrying for something like eight months (i.e. since Savior support initially went live in the Manager).

There are very few corrections in this release, but there is a slew of presentation and UI touch-ups in this release as well, including the final deprecation of the "Save" button at the top of the Survivor and Settlement Sheets.

(Which is kind of a milestone in and of itself: the button was originally added as a work-around and has been confusing users since it was added. It's nice to finally be able to be totally done with it.)

Finally, in terms of progress towards the Black Friday milestone, I think I'm going to end up hitting most of my goals by this weekend: as of release 1.50.1102, I've resolved 49 of the 53 issues in the milestone and I've basically got all day tomorrow to hack out the rest of it (including outstanding Safari issues, cursed item controls and adding support for the Manhunter expansion).

As usual, hit the jump for complete notes.

And thanks for using the Manager!

Monday, November 21, 2016

Change Log: 1.50.1075

  I just spent the last however-many hours in Safari. Survival = 0; Insanity = 20.  

As of  the 1.50.1051 release, most of the features included in this milestone are delivered, so release 1.50.1075 is mostly corrections/fixes and incremental progress towards the final milestone goals.

In terms of corrections, there are a slew of presentation fixes in this one, and most of those target Safari (at wide resolution).

A major goal of the Survivor Sheet Refactor milestone is to resolve presentation issues for supported browsers, to include (my arch nemesis/abandon-ware) desktop Safari, and this release puts in work on that long-standing issue.

There are also a few usability-related bug fixes in this one, the most notable of which is that the Hunt XP controls are now visible on the Survivor Sheet (the last release accidentally caused them not to be displayed at all: oops!).

In terms of features/improvements, there are some minor improvements to random survivor name picking and a general refactor of the Campaign Summary, but nothing major.

Finally, in terms of what's next, I've got a few more features I want to push before I call the Black Friday milestone complete.

Sunday, November 20, 2016

Change Log: 1.50.1051

OK, this is a big one: release 1.50.1051 pushes the biggest feature in a huge milestone as well as a major revision of the Survivor Sheet layout/presentation and backend.

(In short, this one's probably going to break a bunch of stuff, so be ready to report errors!)

By popular demand, the Survivor Sheet now has totally new controls for managing survivor attributes that allow gear and token attribute modifiers to be tracked from the Manager. Returning Departing Survivors from the hunt will remove all of these attributes.

It's a pretty huge feature and it took a few days to bang it out.

Also, the "Save" button has been removed from the Survivor Sheet, which no longer requires it: all of the controls on the Survivor Sheet either save automatically when activated OR they refresh/reload the page.

In addition to those major updates/upgrades, this release also does a lot to continue to normalize color within the application to look more consistent with KD generally.

Finally, on top of the normal bug fixes and corrections that find their way in to pretty much every release of the Manager, this one also fixes the Survivor Sheet anchors, so mobile users won't have to scroll as much, etc.

Thanks for using the Manager!

Thursday, November 17, 2016

Change log: 1.49.1029

After a couple of days off, I am back with more progress towards the Black Friday/Anniversary Release.

In terms of the ongoing Survivor Sheet refactor project, the major improvement/feature in release
1.49.1029 is free-text Survivor Sheet notes. These new controls a.) work without a page reload and b.) allow unlimited free-text notes to be appended to a survivor.

#bossy af
This release also adds colors to survivor epithets. The idea is to ultimately make them work more like "tags" in a traditional webapp, and have them contribute meaningfully to survivor organization and representation, e.g. on the campaign summary screen. For now, only a few epithets have colors, but I'll be revising that going forward to make the manager a little more...visually striking.

And, speaking of that, this release begins to deprecate the yellow/green/purple scheme in favor of more KD-ish colors.

Notably, release 1.49.1029 also adds some much-needed automation and settlement event logging around adding and removing principles.

In honor of the new Survival of the Fittest revision, the Manager now automatically applies "current survivor" buffs to all living survivors when principles such as SotF, Barbaric/Romantic, etc. are added (and removes those buffs if the principle is removed).

At any rate, I'm thinking about working on more expansion support this weekend and during the week leading up to Black Friday. Manhunter maybe?

Thanks for using the Manager!

Sunday, November 13, 2016

Change Log: 1.48.1004

Armor kit bundle!
Given the sheer number of new features and revisions I've been pushing lately, I decided to use the weekend to spend some time with the Manager and do some deep-dive QA/usability testing. The result is release 1.48.1004.

The main improvement/feature to come out of the experiment is one I hadn't planned: better tagging of returning survivors. Instead of the "R" in the upper-left corner of the survivor's asset link (e.g. on the Campaign Summary view) on the year they return, you now get a.) two different colors (one for survivors returning last LY, one for this LY) and b.) a numerical reference to say when they were a returning survivor.

Other than that, this one fixes some bugs, pushes some more epithets and does some general house-keeping.

More soon!

Thursday, November 10, 2016

Change Log: 1.48.995

1.48.995 is another baby-step towards the completion of the big Survivor Sheet Refactor project.

The only major change-ups in this tiny piece of the puzzle are that the Survivor Sheet toggles have some advanced prettiness/UX features now and the burger/sidenav now shows your favorite survivors.

In terms of the big picture, we're down to the final 10 (or so) issues that need to be resolved for the milestone to be complete, which is pretty cool: looks like I might just hit that Black Friday deadline after all.

Thanks again for using the Manager!

Wednesday, November 9, 2016

Change Log: 1.48.984

This one's a bit of a patch/hot-fix for V1.

tl;dr I ended up breaking some controls on the Survivor Sheet in the last feature push (remember what I was saying a few posts back about baby steps?) and this release fixes those.

In addition to the fixes to the things I broke, this one also makes the Survivor Sheet less likely to have to refresh on an update. One of the high-level goals of the Survivor Sheet Refactor milestone is to make the Survivor Sheet less clunky overall, and having fewer page refreshes during normal use is a big part of that goal.

Hit the jump for release details. More feature/refactor news this weekend!

Sunday, November 6, 2016

Change Log: 1.48.976 / 2.11.55

Release 1.48.976 is another tiny release in the Survivor Sheet refactor milestone (which will also coincide with the anniversary release of the Manager, hence the slew of usability features).

This one adds two new features, one major and one minor:

  • the sidenav/burger now features a little form that encourages users to report issues and then emails me directly when they use they app to report them.
  • the Survivor Sheet cause of death controls have been completely refactored and placed into a modal window.
There's actually a lot of back-end refactoring that went into this one, especially in terms of the JS app, which I spent quite a bit of quality time with on this branch.

At any rate, Safari presentation issue clean-up continues with this release as well, but I still haven't gotten all of those nailed down yet. Obviously I'm going to keep plugging away on presentation issues as I work towards the milestone.

Hit the jump for full notes. 

Thanks again for using the Manager!

Change Log: 1.47.969 / 2.11.50

Default male avatar.
OK, I know I said I was going to do baby steps towards the complete Survivor Sheet refactor milestone, but once I started in on the Dragon King implementation...well, things kind of got away from me,

First and foremost, release 1.47.969 adds support for the Dragon King expansion as well as the People of the Stars campaign (including survivor constellations and the whole deal: it's all there).

(In the past, I have had some people ask about process, i.e. how I go from opening the box to implementing expansion support. If you're interested, I tried to block out all of the major features as GitHub issues, and you can read the full milestone details here.)
Default female avatar.

In terms of the Survivor Sheet refactor, this release keeps the ball rolling forward on that and adds better UI/UX for survivor avatar controls, survivor name changes, permanent affinity controls and a handful of other elements of the sheet.

This release also pushes a slew of presentation corrections and fixes. Many of those fixes are specifically targeted at Safari, but I have to say that the app is still pretty much unusable in that browser.

(All I can say about that is that I'm working on it and I plan to keep fixing presentation issues until we're back to here we were before the tablet resolution release went out and broke everything in Safari.)

Finally, this also pushes a few "quality of life" adjustments, such as a touched up the "new settlement" screen, which now includes "subtitle" text for expansion content (should help the new people who come in with the upcoming Kickstarter, etc.) and a top 10 causes of death table on the dashboard "World" panel.

There's even more in this release: hit the jump for details!

And thanks again for using the Manager!

Friday, November 4, 2016

Change Log: 1.46.930 / 2.11.46

Release 1.46.930 isn't super significant for V1, but 2.11.46 a pretty big deal for V2.

In the V1 release, you get a slew of presentation fixes and page reloads on survivor name changes become a thing of the past.

(Speaking of presentation fixes, I haven't got all of the Safari issues handled yet, but...God, there's a ton of them since the tablet resolution release and working through them is super tedious. Also: V2 is cranking, so there isn't a lot of time. Maybe...early part of this coming week?)

In the V2 release, I have added methods work retrieving and dumping survivors via API request as well as methods for updating survivors via API call. Once I tighten up the logging and the security on that, it'll go into service and that's a major piece of API background done and dusted.

Finally, in terms of expansion content, I think I'm just going to follow my heart and take a break from all of this challenging/tedious meat-and-potatoes stuff and implement the Dragon King: look for him to show up in the next release (or maybe the one after that).

Thanks again for using the Manager!

Thursday, November 3, 2016

Change Log: 1.46.911

Progress towards the Survivor Sheet refactor milestone continues!

Release 1.46.911 is another tiny V1 release that only pushes a small number of changes.

Most notably, this one includes a refactor of the Survivor Sheet epithet controls that removes the HTML drop-down lists and the need for page refreshes.

My emerging strategy for this milestone is to sort of baby-step through it, pushing features into production as I finish them.

I discovered today that my last big feature push badly broke presentation in Safari at wide resolution. In terms of volume, very few users of the Manager use Safari, but several...influential ones seem to prefer it, so I try to support it. Doing production releases in an incremental fashion, therefore, is meant to help avoid major breakages such as the one I'm dealing with this week in Safari.

At any rate, hit the jump for details. And thanks again for using the Manager!

Wednesday, November 2, 2016

Downtime tomorrow morning!

The production host for both and needs a release-update/system restart, and I plan to do that tomorrow: Wednesday is a slow day and late morning is the slowest time for the system.

As usual, I'll post a warning via the YHBW box prior to the downtime.

Change Log: 1.45.908 / 2.10.40

This tiny release is actually kind of a big part of the next V1 milestone.

1.45.908 replaces a lot of the old-time/in-place navigation buttons and links with an upper-left corner hamburger menu. Some of you have noticed that I am trying to take the app in the Material Design direction, and this is part of that.

This is the first trial/test/alpha release of the hamburger refactor, so I expect some rockiness (and have updated the dashboard YHBW box to say as much).

In terms of what's next, keep an eye out for some presentation clean-up/optimization on the burger menu and additional progress towards the upcoming V1/V2 milestones before this weekend!

Monday, October 31, 2016

Change Log: 1.44.900 / 2.10.38

Split-release 1.44.900 / 2.10.38 deprecates the old, file-system based warehousing scheme (introduced in 1.42.856)  in favor of calls to the V2 API.

In addition to eliminating 12 - 30 second dashboard page load times entirely, the cut-over will also improve the timeliness and accuracy of "World" data.

(I also touched up the presentation of the V1 "World" panel on the dashboard while I was mucking around in there, and made a few more Material Design-inspired tweaks.)

As far as the general progress towards a functional V2 application is concerned, this release is a pretty major milestone: the /world route is complete, accurate, extensible and ready to support the new V2 webapp. This release also pushes a handful of new modules for user and game asset management in the V2 framework, so this release represents progress on that front as well.

I know I said that I was going to focus on back-end/architecture improvements related to V2 until Black Friday (or whenever we have a beta release of V2 ready to go), but my Dragon King showed up (from Europe) the other day, and I've kind of got a hankering to add support for that before I do too much else.

No promises though.

Hit the jump for full change notes.

Sunday, October 23, 2016

Change Log: 1.44.890 / 2.8.27

This release continues to migrate warehouse methods from V1 to V2 and make major progress on the general back-end architecture for the V2 API.

Also, notably, models and assets have been refactored to use Django-style classical inheritance (where you've got an assets object that has methods that tell you about what's available and you can also initialize a discreet monster or innovation or whatever object to work with it, etc.).

Not a lot of user-facing stuff in this one, but it makes major progress on the back end and puts me on track to deprecate the pickle-based warehousing routines in the next couple/few days.

Saturday, October 22, 2016

Change Log: 1.44.889 / 2.5.9

This release, which pushes two tiny modifications to the V1 app, is the first production release of the Manager that uses V2 API calls.

(Which is a pretty big deal.)

There are no corrections or fixes in this release, but the V1 webapp now makes a call to the V2 API when adding defeated monsters to the settlement storage: the purpose of the call is to look up the monster in the V2 assets and supplement the defeated monster meta data with data from the V2 API.

Like I said, it's not much, but it's a start.

Thursday, October 13, 2016

Change Log: 2.2.1

Work on the V2 project continues!

As of today, the architecture has changed, and we decided a couple of weekends back to split the presentation/front-end from the back end. Functionally, that means developing and deploying a standalone API in order to facilitate a full separation of concerns.

(Which, if you recall the last attempt at V2, was the original design: we went all the way around and came back to where we started, essentially).

As of a few moments ago, the new API service is up and running on the following stack:

Special shout out to this article, which was my main go-to through most of this stretch of the re-architecting and deployment (note that the article uses upstart, which I did not do, because upstart is deprecated: I used this great Ubuntu wiki page for guidance on transposing from upstart to systemd.) 

The Gunicorn documentation is also excellent and extremely accessible.

At any rate, the v2 codebase so far is available on GitHub, if you want to take a look.

More soon!

Wednesday, October 12, 2016

Fade Gallery

The change log for 1.43.887 featured a picture of my painted Fade mini.

I recently picked up a macro lens, and while trying to teach myself how to use it, I ended up taking a bunch of interesting shots of the model that I didn't pose in the change log.

Rather than letting them die on the cutting room floor, however, I decided to create a gallery of them.

Obviously this is a off-topic for this blog (which is neither a painting blog nor a photography blog) and I am not putting either the paint job or the photography out there as especially good examples of either, but these shots made me happy, so I wanted to share.

(You know, in the spirit of the hobby and social media and all that.)

At any rate, for more Fade shots, hit the Jump. Otherwise, we'll be back to business as usual in the next update.

Change Log: 1.43.887

1.43.887 is a milestone release!

The biggest item in the Tablet Resolution milestone release is support for a new CSS breakpoint intended to improve usability for tablets. As far as the Manager is concerned, a "tablet" is a device whose display has a min-width of 700px at 3dppx but who comes in at less than 1050px min-width.

(1050px min-width is where the Manager treats you like a desktop/wide resolution device: anything beyond that and you're wide res.)

In terms of features and usability improvements, this release also adds a few new user-inspired features and dashboard queries. The "People of the Skull" campaign from the core rules is now an option when creating a new settlement and the "World" panel on the Dashboard now lists the most popular survivor names, etc.

As far as general usability and optimization goes, 1.43.887 refactors the Dashboard quite a bit, separating the "About" type information from the "System" panel and placing that info in a new panel. The "System" panel has also been refactored and preferences are now organized according to type, which has been a long time coming.

In addition to the usual presentation and bug fixes, long-time users of the Manager will be pleased to hear that I finally nailed down the random disorder bug (where an ineligible, otherwise non-selectable disorder could sometimes be applied to a survivor), so that pulls an annoying little thorn from everyone's paw.

Finally, the next major milestone is a refactor of the Survivor Sheet. I was originally targeting late October for that, but given the V2 project and other projects competing for my attention right now, it's looking more like late November or early December.

Depending on how things go with V2, I am considering suspending feature development on V1 again (sort of like I did last time we worked on the V2 project). If that happens, I will continue to add expansion support until I've got coverage for everything.

Thanks again for using the Manager!

Monday, October 10, 2016

Milestone Release is complete! Deployment soon

Due to competing priorities, it took a lot longer than expected to finish up the last couple of views.

The good news is that I was able to pull in a few more feature/usability items for the release, so the Tablet Resolution milestone will go out to production with a touched-up set of Timeline controls on the Settlement Sheet, among other things.

The Tablet Resolution is actually about 1/3 larger than the last major milestone release, so before I put it into production, I am going to spend a little time with it, just to make sure I didn't miss anything major.

(I am positive that, when the release does go out, that I will have missed a large number of small things. I just don't want to create any major usability/presentation issues with the release, since it touches upon so many critical display elements.)

At any rate, look for the release to go out at some point this week. At this point, I'm going to say Tuesday at the earliest and Wednesday at the latest.

Thanks again for using the Manager!

Sunday, October 2, 2016

Milestone Release Postponed

Refactored Survivor
Sheet at tablet resolution.

Turns out that I lied yesterday: the Tablet Resolution milestone release is not going into production today.

Sorry about that.

Long story short, I started working on the Survivor Sheet and Settlement Sheet views at tablet resolution and got kind of sidetracked: I started doing some non-trivial refactoring/optimization of both views and I also decided to pull in a number of issues from outside of the milestone and hack on those a bit.

At present, I've got one outstanding issue and more tablet resolution view to finish before I'm ready to test it out and, if everything looks good, release the rest of the update.

Refactored wide resolution Survivor
Sheet showing inc/dec paddles.
I'm feeling good about getting this done at some point tomorrow, so the current thinking is that I'll have the milestone release ready to go on Tuesday or so.

The delay is definitely annoying, but the good news is that this release is going to push a handful of new features, include more than a dozen fixes/corrections and resolve more than 30 tickets.

Thanks again for using the manager!

Saturday, October 1, 2016

Milestone Release Tomorrow!

Redesigned tablet resolution Campaign Summary view showing new support for
the "People of the Skull" campaign. Screen capture taken on a Pixel C.

I had originally planned to release it today, but I am running behind schedule, so the next milestone release will go into production at some point tomorrow (probably late afternoon, Central time).

For a sneak peak of what's coming, feel free to review the milestone on GitHub. Otherwise, consider this the official "heads up" that a slew of major, long-awaited improvements and fixes are going out tomorrow, including modal controls for managing Departing Survivors (formerly the Hunting Party).

Also, in V2 news, I am happy to say that the development team on the V2 project has expanded to four people (total). This morning, we had a good, long conversation about goals and general architecture and we are off and running on our various pieces.

Watch this space for more news about the V2 project, including alpha/beta release plans, as it becomes available!

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!

Tuesday, August 30, 2016


Something is going on right now on the VPS where the production instance of lives. The system is currently inaccessible, but the webserver is still forwarding requests, so it's not down. Could be some kind of utilization thing.

More soon.

[Update]: as of  about a minute ago (Tue Aug 30 15:04:55 EDT 2016) we're back. The system didn't go down, but there was some kind of memory utilization issue that prevented the webserver (nginx) from responding to proxy requests. I'm looking at it presently.

[Update]: still no solid ideas about root cause, but it looks like only two (maybe three) users were potentially affected.

Wednesday, August 17, 2016

Change Log: 1.41.779

As of this release, the production instance of the Manager points at the GitHub repository.

Due to poor planning on my part, this is a non-trivial shake-up on the deployment side, so bear with me while I work through whatever issues arise as a result of the cut-over.

The Lonely Lady would like to personally apologize in
advance for the inevitable migration bugs heading your way. 
In other news, support for the Lonely Tree expansion is now live! Rather than trying to program around the infamous fruit typo, I chose to key in the Strange Resource cards as they are printed, so be mindful of that.

(And feel free to hit me up on the GitHub Issues or in the comments below if you can think of a better solution.)

This release also addresses a number of issues related to monster controls: the Hunting Party and Timeline controls for picking quarries and nemeses have been completely redone on the back-end

Finally, the "Backlog" heading, where I usually write a few bullet points about what's next for the Manager, will no longer be a feature of these change updates. To see what's coming down the pipe, in terms of features and fixes, please use the GitHub Issues tool.

As usual, hit the jump break for complete info on this release.

And thanks again for using the Manager!

Downtime Today!

Last Friday (08/12), I announced that there would be a production downtime in the near future.

The date/time for that deployment is approximately 14:30 Central time today, 2016-08-17.

In order to cut over from the old deployment to the new deployment of the Manager (and to do away with some long-standing hacks on the sysadmin side of the project), the application will be unavailable for approximately half an hour.

In terms of general traffic, Wednesday is the slowest day of the week for the Manager, so impact should be minimal.

The downtime warning will appear in the app shortly and it will go away when the maintenance/migration is completed.

Thanks again for using the manager!

Friday, August 12, 2016

Source Code now on GitHub!

After almost a month of downtime and radio silence, I am back with a few important announcements to make.

First and foremost, I have new details about the GitHub release of the source code for the Manager.

Relatedly, switching over from my local repo to the GitHub repo for the manager will require a production downtime, and I've also got some details about that.

Finally, I've got the next few Expansions queued up and ready to roll out and I've got some details about that, as well as support for future expansion content.

Hit the break for complete info!

Sunday, July 17, 2016

Change Log: 1.40.762

Feed me, Seymour!
This release is mostly quick touch-ups for the l.40.743 release.

(The items listed in this change log did not all go into production with this release: if you've been using the manager since 07/05 when 1.40.743 went out, you've probably seen some of this stuff trickle out to production as monkey patches.)

As I mentioned in the 1.40.743 release notes, my next big goal is the GitHub release. Keep an eye on this space for updates: I figure I should have some news about that by mid/late August.

As far as expansion support goes, Flower Knight, Lonely Tree and Spidicules will probably come next (but not until after the GitHub release).

Thanks again for using the manager!

Sunday, July 10, 2016

Print-n-play Sheet of Eye Patch gear cards!

Eye Patches! Get your red hot Eye Patches here!

Have your People of the Sun hit their second or third Edged Tonometry settlement event?

Do you have a bumper crop of Eye Patches hanging out in Settlement Storage but not enough gear cards for your recently blinded survivors?

Have you been searching high and low for a PDF of Eye Patch Rare Gear cards to print out, cut up and drop into your gear grids?

Well look no further! 
(Fonts are free versions of Quattrocento and Quattrocentro Sans, original art is used, AI file is meant to be highly editable. Hit me up if you have improvements/changes/questions. )

Even works in black and white! ...sort of.

Tuesday, July 5, 2016

Change Log: 1.40.743

Release 1.40.743 is major feature release: now supports alternate campaigns.

And that feature, just by itself, was no small feat: to facilitate alternate campaign support, this release pushes hundreds of lines of back-end refactoring and re-architecting.

Additionally, this mega-release also revises the way that new settlements are created/updated, refactors a ton of Settlement Sheet code (back-end and front-end), adds full support for the Sunstalker and includes Beta Challenge Scenario assets and automation.

(I am aware that Poots put the informal kibosh on the challenge scenarios, but I have my own reasons for adding support for them.)

As with most major releases, I anticipate some fallout from this one in the form of bugs, errors, typos, etc., but 1.40.743 is the largest single release I have ever done, so I would like to thank everyone in advance for your bug reports and your patience.

Also, I might do a quick release tomorrow or the next day if I end up running into or hearing about a lot of problems in this release. Otherwise, I think I'm going to take a short break from feature development and focus on Github for a while.

Monday, July 4, 2016

Version 1.40.743 Goes Live Tomorrow!

If you're one of the dozen or so people who read the last update to this blog, you're probably wondering why we're still at 1.36.687 in production.

Long story short, I finished my revisions for the upcoming release on Saturday morning, but then realized on Sunday morning that I had inadvertently introduced some non-trivial data normalization issues.

I just spent this (i.e. Monday) morning cleaning up the last of those issues and I think we're ready to roll out the big release that I promised on Friday, but I want to spend at few hours on QA for it and be 100% sure that the new release doesn't break anything before I push it to production.

tl;dr The next major release of drops tomorrow morning.

Thanks again for using the Manager!

Friday, July 1, 2016

Major Release Coming this Weekend!

Coming Soon!

At some point in the next day or two, I am going to publish another major release of

The scope of the upcoming release is larger than usual, with respect to the modules it touches, the UI/UX changes it makes and the new features it introduces.

Whereas most of my feature releases push a single feature and its related assets and updates, the upcoming release pushes three totally new features as well as a major back-end re-architecting to facilitate multiple campaigns.

Hit the jump for some summary/teaser bullets about what is going to happen in the next release.

Otherwise, if you end up playing any KD:M and using the Manager after the release goes out, hit me up via email or in the release comments with any bugs/issues/problems (because when this release drops, I am sure there will be more than a few).