Tech Update #4
Posted by Stormwind , 30 April 2015 · 2,202 views
I thought folks would be interested in a tech update - the engineering teams are working on three main tasks currently:
- Importing the KS data to our web site to get all backers their badge, ribbons, and packages displayed - and letting Kickstarter backers who don't yet have DS accounts claim their pledges.
- Clean-up some of the game code used for the Kickstarter video.
- Further tech design and planning as more game design decisions and changes are made.
- We exported early, incomplete data from Kickstarter to examine the format and data, and get a head start on the process. We also wrote a user and tech design document to describe the requirements from user's perspective, the methods we plan to use, and any technical challenges or caveats we had to handle.
- We created packages (the entity that represents what a user purchases) in the e-commerce software, and we also created groups and award ribbons in the forum software.
- We researched the e-commerce software API but found they had no API method for assigning packages to users, so we then researched it's DB schema to figure out how to do so cleanly.
- Then we exported the final data from Kickstarter once they finish collecting all the pledges possible.
- We then fixed up that data (because it comes in per-reward files, many with different columns) and imported it into a DB.
- Next we wrote code to match the entries in the Kickstarter data with DS accounts, and review the matches to look for any potential bugs or problems. For example, we found some false positive matches on one iteration - we had to change the code to not match them. We also didn't want to match login name responses of "Nope" to a user named "Nope" - otherwise they'd end up with a lot of unexpected rewards! :-) In general, we have to make the code handle all those special cases or we have to manually modify the data to avoid those problems.
- We then create code that will apply the rewards to the appropriate accounts and send emails to the users, and we create pages that will allow for manual matching or account creation for pledges that couldn't be automatically matched to existing DS accounts.
- We also updated the store showcase page code to show package groups so we can show Underground memberships and add-ons in the store.
- In addition, we are parsing and (also) manually processing the survey results and Kickstarter comments for pledge add-ons. We may not get the add-ons processes in the first pass you'll see of the Kickstarter data import: if not, we'll keep working on it so you see it soon.
Of course, there are a million little details, caveats, and gotchas that we've dealt with so far - and we expect a few more too. However we want to find and fix all of them in our development environments during testing, running the process over and over on a test copies of the real production data, before we release it and apply the changes to the live web site and user data.
But it is all worth it - to get your pledge and reward data on the Descendent Studios web site for your viewing!
Thanks to Elfindreams, StealthGuy, and Fallarnon for all of their hard work on the Kickstarter data import!