Feature Spotlight: Quick Install
Every couple of weeks, the Anodyne forums will have a question asked about how to install a skin or rank set. It’s a fair question, but it’s tough when you’ve answered it a hundred times over the years and people don’t read FAQs or do a search on the forums. While Nova can’t solve people’s inability to search before posting, it does attempt to tackle the install issue with a feature that allows quickly installing skins and rank sets.
One of the big changes with skins and ranks was grouping them together into system catalogues. Doing this gave us a lot more flexibility for manipulating the skins and ranks, setting defaults, dealing with deleted skins/ranks and setting statuses for skins/ranks. The original thinking was that installing a skin or rank was much easier this way because you’d just click Add a Skin and fill in the form and be done. But as we started to think about it, one thing dawned on us: people are lazy. As harsh as it sounds, it’s true. People are lazy and they want to do as little work as possible. Fair enough, but when someone has slaved over a skin for weeks, they’d appreciate getting credit for the skin. A lazy admin might not put the credits in the skin, thereby screwing the skin developer over. I’ve been in that situation before, so I can certainly sympathize.
To solve the issue, we’re using YAML files to store basic skin information like name, location, credits, the sections, etc. The YAML file is placed in the root of the skin where Nova can look for the file. If it finds the file, it’ll prompt the user that there are uninstalled skins. All the admin needs to do then is click on the install button and Nova does the rest. All the credits and information remain intact and the process has happened almost instantly. The same thing goes for ranks, too.
As we put the finishing touches on the feature, the flexibility of such a solution really hit us hard. One of the things we’d been struggling through was the most efficient way to handle shipping multiple skins with the system that related to different genres. The only thing we could come up with was calling the skins the same thing then hardcoding the information into the install files. Only problem was that it relied on us maintaining as many install files as we have genres. Wildly inefficient. Then it dawned on us, we can use Quick Install just without the user interaction. We hardcode the default skin in to the install files since it’ll be the same for all the genres then simply ship whichever skins we want with each genre. After that, we use Quick Install to simply install whatever skins are left besides the default one. The same thing happens with ranks. It means that a game master can throw a handful of skins and ranks into the proper places before installing and when the system is done installing, there are all the skins and ranks they wanted (assuming the developers have used the Quick Install files … all of Anodyne’s stuff will).
Quick Install was one of those features that just kinda hit us and after we did the legwork we realized it’s potential. Those are the best kind of features!
