For the gamers who grew in the age where Nintendo dominated the home console market there’s no series more ingrained in our psyche than that of The Legend of Zelda. I can remember spending countless hours on each of the titles, from A Link to the Past all the way up to Twilight Princess. I haven’t been back since then however, the few titles that came out over the past decade passing me by. So when I saw the first few screenshots of Breath of the Wild I was lost for words; it looked to me now what Ocarina of Time, my personal all time favourite Zelda game, looked like to me back when I was 13. Instantly I was sold, not just on the game but on it’s accompanying console. Sure I may never use it again but it was either a Switch or a WiiU and, honestly, the Switch was the better of the two. So there I was on launch day to pick up my new console and copy of Breath of the Wind and I’ve spent a great deal of the following weeks playing through it.
Truly, this is a Zelda game for the ages.
Awakening in a tomb you find yourself, Link, without any memories of what led you to here. You quickly learn that you’ve been asleep for 100 years with the land of Hyrule beset upon by the ancient evil of Calamity Ganon who is sealed inside Hyrule castle by Princess Zelda’s magic. There are a few who recognise you and are able to give you an idea of the person you once were. One thing is clear however: you are the champion who must take purge Calamity Ganon from Hyrule. Doing so won’t be easy however as the vast array of mechanical beasts that were designed to protect Hyrule have been usurped by Ganon for his own nefarious means. It is up to you then to purge the corruption from these beasts and bring them back to the light for only then will you be strong enough to face Ganon in a final battle of good and evil.
At a fundamental level Breath of the Wild’s visuals are one step behind the current generation, which is par for the course for titles on the Nintendo platform. It uses a style similar to that of Windwaker, favouring a kind of cartoony visual aesthetic. This is boosted significantly by the inclusion of modern lighting techniques, higher resolution models and textures and generous use of particle systems. For the most part things run pretty well however there are quite a few cases when the Switch would get bogged down. This is most notable in towns with a lot of NPCs in them, areas with quite a lot of visible grass or when you manage to give the physics engine a lot of work to do when you get “creative” with combat or puzzles. There’s also the issue of pop-in for larger areas on the Switch, an issue I’ve heard is a lot worse on the WiiU version. For a first party title on a new console things like this aren’t entirely unexpected, however this is their flagship title and these issues should have been caught in QA. It’s also strange to note that this is apparently completely avoided by undocking which, whilst a solution for some, isn’t the way I wanted to play Breath of the Wild.
Like all Legend of Zelda games before it Breath of the wild is a deep and expansive RPG, putting you in an absolutely massive world with countless things to do. There’s the main story line of course which follows the shrine/temple trope that’s well established in the series. There’s also just over a hundred smaller shrines which are short, self contained puzzles that award your spirit orbs (equivalent to the quarter heart containers, but can also be traded for stamina) on completion. Like many open world RPGs there’s also about a dozen or so towers for you to climb in order to unlock the map for the area, each of which presents its own set of unique challenges. Along your way you’ll collect various bits of armour, weaponry and crafting materials to make your journey easier. Gone are the gadgets of Zelda games of past (a single tear may have been shed for the lack of a hookshot) replaced instead by “runes” which allow unlimited use of a few choice abilities. You can now also climb pretty much every surface under the sun, limited only by your stamina wheel. Further to this you have a glider which allows you to leap from any height and glide gracefully down. Even this list probably only touches on less than half of what you can actually do in the game as there’s just so many things to do.
Combat is a kind of “Dark Souls Light” experience. Enemies telegraph their moves well in advance of executing them allowing you to dodge, parry or interrupt them. Depending on the enemy you’re facing they may have certain weak points you can exploit or elemental weaknesses you can make use of. Additionally some enemies are better blocked than dodged, parried rather than interrupted and so on. With previous Zelda games mostly focusing on enemies having one trick you need to work out a deeper combat experience like what Breath of the Wild provides is refreshing. There are still tricks of course (like stasis working on pretty much every enemy in the game) and learning them will make the difference between a frustrating grind and a swift beat down. The combat however highlights probably the worst mechanic in Zelda, one that tarnishes the game’s core tenet of rewarding exploration significantly.
Every item you get in the game (bar a couple, like the Master Sword and a few rewards weapons) have a limited durability. Now this isn’t the normal kind of durability which would require you to shell out cash to repair them. No instead any weapon, shield or bow you find as a limited lifetime before it breaks and disappears from your inventory. Whilst this does encourage some…creative ideas to ensure that your weapon stash is always stocked with what you need (like using crap weapons against crap enemies, since the durability hit is the same regardless) it takes out all the fun of spending ages exploring a random area in the hopes of getting rewarded with a really cool item. Every item you get is going to disappear and so you’ll horde as many as you can, using whatever is available even if its sub-optimal just so your best ones are ready just in case. Even worse if you happen to accidentally throw your weapon or use a shield to parry something that shouldn’t be parried you’ll instantly break them, potentially leaving you scant for better options. To be sure the game throws a fair amount of kit at you to ensure you’re never left wanting but it means that getting, and keeping, the best items in the game is an exercise in farming, not in rewards born out of discovery or hard work.
After an initial stint in the starting area Breath of the Wild becomes a true open world experience, allowing you to complete missions in any way you deem fit. There is, of course, an optimal way to do some things but it doesn’t appear to affect things too much. This will mean that everyone’s experience will be unique, the way in which they played through the world of the Breath of the Wild dictated by numerous factors. For instance whilst my friend and I both coincidentally did the elephant divine beast first we didn’t do any of the others in the same order, meaning the tools we had available to each other were wildly different. We were also playing the game in very different ways: me with Google and the Zelda wiki open on a second monitor and he not wanting to cheat himself (although he said asking me didn’t count!). As with all open world games this does mean there’s a bunch of repetitive stuff to do if you’re so inclined but there’s also a bevy of random encounters that are delightful (and sometimes rewarding) if you happen across them.
The more concise and logically laid out (looking at you Water Temple) temples in the form of the divine beasts really are the standout feature of Breath of the Wild. Using your map to physically alter the entire environment you’re in, whilst not a completely original concept, is executed brilliantly. It forces you to not just think of the puzzle at hand but also how the environment can be changed in order to solve it. Out of all of them my favourite has to be the camel divine beast as it was the most complex of the lot. The salamander and bird by comparison felt relatively simplistic, however that may have just been because they were the last 2 I did and I had cottoned onto all the tricks that the game designers were using. Again it’s a bit of a shame that exploration isn’t as rewarding as it could be here, with limited durability weapons and run of the mill consumables the typical reward, as some of the environment interactions needed to obtain them border on the clinically insane.
The shrines, which are kinds of mini-temples, are also great little distractions. The fact that you’re given all the tools to complete them right at the beginning of the game is very much appreciated as it means you’re not constantly re-treading ground in order to get the next item or upgrade. I do wonder if some of them were fully tested before release however as some of them can be completely bypassed with what appears to be emergent game play mechanics. Some things seem intentional, like circuit puzzles being able to be solved by using metallic weapons or shields, but others, like the ball rolling puzzles that use motion controls, can be bypassed by turning the controller upside down. Either way the fact that you won’t be stuck in one for more than 15 minutes or so is great, especially when there’s over 100 of them to complete.
Crafting, whilst functional and rewarding, could do with a few tweaks to make it a little bit more useful. For instance, in order to cook something, you have to go to your inventory, select the ingredients, get out of the menu, throw the ingredients into a cooking pot and then wait for them to cook (skipping saves you about 2 seconds, total). You can discover various recipes by combining things together, although most of the time you’ll be focused on effects or the number of hearts something it restores. The problem here though is that if you want to make say, 10 of something, there’s no way to quickly churn them out. Instead you’ll have to repeat that process I outlined 10 times over. Worse still whilst you can “discover” recipes there’s no book or anything in them, all you can look at is food you’ve already made to see what went into it. There’s also no real way to tell an ingredients effect relative to others in its category (besides heart restoration), something which is rather annoying when it comes to making elixirs. Sure you can hazard a guess that the more rare monster part is better but it’s nigh on impossible to understand just how much better it is.
The inclusion of something like a recipe book, one that would let you say queue up cooking multiples of recipes you discovered, would go a long way to solving this issue. Additionally having something like an ingredients page in the same book, one that details relative strengths of ingredients, would make cooking a little less…messy. Sure I understand that the whole idea is to get you to explore and experiment but, honestly, after a certain point I’d like to be able to min/max things without constantly referring to wikis and Google if at all possible. There’s also a missed opportunity in allowing you to craft bits of armour, arrows and other things which could add yet another level of depth to the crafting system. Overall it’s not bad, I mean who doesn’t love the little cooking tune, but there’s still a lot of room for improvement here.
Where Breath of the Wild really starts to shine is in the absolutely staggering breadth of the world you’re in. I spent countless hours exploring numerous areas, finding inventive ways to climb mountains and trying to see how I could glide from peak to peak so I didn’t have to wrangle my horse around everywhere. Even at the point where I figured I had explored pretty much all the game I discovered not 1, but 2 whole new zones that were packed with quests and new areas to explore. If I’m honest I was only in those areas to chase down a specific set of armour for my final fight with Ganon but just getting to those points required a good hour or two of walking around to get to where I was going. It was on this specific journey I also found out that there was a kind of NPC I didn’t know existed in the game and, had I known about them earlier, it may have changed my idea on how to approach certain parts of the game.
Whilst the in-general exploration is tarnished somewhat by the lack of strong rewards (as I mentioned before) the targeted, specific exploration that you’ll do to unlock certain key things is most certainly rewarding. The master sword quest, one which sees you follow an incredibly long chain of events (if you do it normally) showcases a lot of things that you’d be kicking yourself if you missed, especially if you’re a long time Zelda fan. My quest to get the barbarian armour, and then upgrade it, took me to 3 different corners of the map and then all around the place hunting Lynels so I could get their horns. Ask anyone who’s played Breath of the Wild and they’ll likely have another story about how they spent an inordinate amount of time chasing something down and just how much of a delight it was. It was the same kind of feeling I felt when I eventually caught that blasted eel in Ocarina of Time, one of those moments that will be hard to forget.
Of course the real attraction of any Zelda game is the story and Breath of the Wild most certainly delivers here. All the usual suspects are here: you have no memory of anything, Zelda is the princess you need to save, Ganon is the evil you must defeat and the various races are still their charming selves. Strangely, unlike previous Zelda games, there’s little talk of the triforce and its influence on those who wield it. There are some references to it, mostly through the various shrines that have the same names as each of them (courage, wisdom and power) but they are no longer what imbues each of the main characters with their respective traits. However the characters are given an in depth exploration of their backstory, thankfully without resorting to massive gobs of text. Finding your lost memories reveals the nature of Zelda’s relationship with Link, her father and the people of Hyrule in great detail, something which makes the final battle with Ganon all the more satisfying.
MILD PLOT SPOILERS BELOW
Whilst not every quest or story is something I’d hold up as an example of good storytelling Breath of the Wild has some exceptional moments. Freeing each of the divine beasts, and the conversations you have with your former companions, is both an exhilarating and heart wrenching experience. The Mipha story stands out particularly in this regard, her love for Link being the link which converts even the most hardened Zora to begin to trust the people of Hyrule once again. The final battle with Ganon (which I had all 4 beasts for) had me loudly cheering at my screen, the culmination of the dozens of hours I had put into this game coming to a massive crescendo. When most games’ endings are trite, littered with not so subtle references to an incoming sequel, Zelda’s is one of perfection. It’s also very much worth collecting all the memories before you embark on the final battle as it adds another scene, one which honestly melted this jaded gamer’s heart. Just thinking of it brings back tears, it was that beautiful.
PLOT SPOILERS OVER
Zelda: Breath of the Wild is a shining example of what Nintendo is capable of when they put their minds to it. The world is incredibly expansive, begging to be explored and filled with all the story elements that we long time Zelda fans desire so much. It’s hard to summarise what makes this game great in a single, or even multiple, paragraphs as there’s just so much to love. I will temper that by saying that it is not a perfect game, like so many other reviewers are saying, but it is most certainly a title to which I will compare many to from now on. Breath of the Wild managed to do what a decade of Zelda games has failed to do before it: convince me that it was worth playing and then blow away my expectations. I don’t think I can name a game that will be forever defined by its flagship launch title but Zelda: Breath of the Wild will be forever synonymous with the Switch and all other releases will have to live in its shadow.
I don’t care what kind of gamer you are: Zelda: Breath of the Wild is worth your time.
Once an IT environment gets past a certain size the requirement for automation grows exponentially. When you’re working in an environment with a handful of servers and a dozen or so PCs its easy to just spend the time doing everything manually. If you’re in a situation like I am right now where a single deployment covers some 400+ physical servers then that process isn’t particularly feasible, especially if you want any level of consistency across the fleet. It should come as no surprise then that I spend the vast majority of my time automating the commissioning of IT infrastructure and since I don’t want to do something 400 times it usually sees me trying to automate things that really don’t want to be automated.
Take for instance this little fellow, a Dell 8/4 Fibre Channel Interconnect module for a M1000e chassis (sounds sexy, right?). Don’t let that Dell badge on the outside fool you, like a lot of Dell hardware it’s actually a rebranded Brocade fibre switch under the hood, albeit with a significantly paired down feature set. For the most part it’s just a dumb NPIV device that acts as a pass through for high speed connections but it does have a little bit of smarts in it, enough so it would typically come under the purview of your on site storage team. However due to its paired down nature it doesn’t work with any of Brocade’s management software (at least none that we have here) and so the storage team wasn’t particularly interested in managing it. Fair cop but there was still a few things that needed to be configured on it, so my colleague and I set about figuring out how to do that.
Usually this is when I’ll track down the CLI or automation guide for the particular product and then dig around for the commands I need in order to get it configured. Try as I might I couldn’t find anything from Brocade themselves as they usually recommend using something like DCFM for configuration. There is a SSH interface on the devices however which does have a rather comprehensive set of commands in it but there didn’t appear to be any way to get at these remotely. We could, of course, use something like TCL with EXPECT to essentially automate this process but that’s traditionally quite messy so we asked our on site resident from Brocade if there was a better solution.
There isn’t, apparently.
So off we went building up a TCL file that would do the configuration for us and initially it all worked as expected (pun completely unintentional I assure you). Our test environment worked every time once we had all the initial kinks worked out of the script and we were confident enough to start moving it up the chain. Of course this is when problems start to become apparent and during our testing we began to find some really weird behaviours coming from the switches, things that aren’t mentioned anywhere nor are obvious unless you’re doing exactly what we’re doing.
So in order to build up the original TCL script file I’d PuTTy into one of the switches and execute the command. Then once I had confirmed the changes I wanted to be done had been done I’d then put them into the script. Pretty standard stuff but after re-running the scripts I’d find they inexplicably fail at certain points, usually when attempting to reconfigure a switch that had already been deployed. Essentially I’d look for a “Access denied” message after trying the default password and then send along the correct one afterwards as that’s all that was required when using PuTTy.
However looking at the logs not only is the message it sends back different, saying “Login incorrect”, it also doesn’t just ask for the correct password it also requests the user name again. There are also significant differences in the way output is written between the two interfaces which means for things like EXPECT you have to code around them otherwise you’ll end up trying to send input at wrong times and read lines that you might not want to. It’s clear that there’s 2 interfaces to the Brocade switches and they differ enough between each other to make coding against one incompatible with the other which is just unacceptable.
Realistically what’s required is for Brocade to release some kind of configuration tool like Dell’s RACADM which provides a direct hook into these devices so they can be automated properly. I’ve found old forum posts that reference something like that for Perl but as far as I, and the Brocade people I’ve talked to, am aware there’s nothing like that available for these particular devices. It’s not like its impossible to code EXPECT up to do what we want it to but it’s ugly, unmaintainable and likely to break with firmware updates. If there is a better solution I’d love to hear it but after all the time I have invested in this I’m pretty sure there isn’t one.
Unless Brocade has something in the works, nudge nudge 😉