Danny Day, the founder of QCF Design, joined us to talk about his arcade game Drawkanoid that won him the first place at Nordic Game Discovery Contest 2019! Crazy VFX and game mechanics, the story of development, experience at Nordic, and more.
Introduction
80lv: Hi, guys! First of all, could you tell us about your studio and the projects you’ve worked on?
Hi, I’m Danny Day! QCF Design is a small South African indie studio that I started in 2007 to make client work easier to manage. QCF has been through a series of team changes while we tried different prototypes and people split off to do their own things. QCF exists more as an enabler for cool projects at the moment, and Drawkanoid was one such project.
At Nordic Game
80lv: Once again, congratulations on the win! Did you expect you’d snatch the first place? How did you end up submitting the game to NGDC and was it hard to participate in the competition? It’d be great to hear about your overall experience at Nordic, positive and perhaps negative.
Thank you, I definitely did not expect to win at all! I submitted Drawkanoid to the Cape Town leg of NGDC during Africa Games Week, the first indie games conference that we’d had in my home city. South Africa had seen indie events before, AMAZE JHB was the big thing on our calendars each year, but in 2018 everything moved to Cape Town and the new organizing team took the opportunity to host a longer event with distinct business/industry and festival modes. I hadn’t pitched a game since looking for funding in 2011 (unsuccessfully), so I thought pitching Drawkanoid to an international panel of judges would be fun and I could get some useful feedback.
I didn’t expect to win the Cape Town leg, let alone get selected for the final four at Nordic, just going overseas for a new game and getting feedback from the different developers at Nordic was great. The hardest part of NGDC was not knowing when judges might want to see your game, so I had to stay at my stand most of the time because I was all on my own. I’d have liked to see more of the talks.
The Development of Drawkanoid
80lv: Let’s move on to your game. It looks absolutely insane! To be honest, when the game trailer showed the first hit and then everything froze, I thought the video was glitching and didn’t understand what had just happened. How did this crazy idea come to you? It totally transforms old and familiar to all of us arcade into something explosive and fun. We’d love to sneak a look at the pre-production and prototyping stages!
Hah! Yeah, I love that trailer. Ben Rausch of Cowabunga Industries did an amazing job, I just gave him a bunch of footage and said “This song feels good, but can we make it shorter” and he knocked it out of the park. That first glitch shot was left in the footage because I was too tired to cut it out, but Ben turned it into magic!
I’ve actually been working on something like Drawkanoid for ages now, the first idea of “why not just draw paddles in Arkanoid games?” is something I had in 2006, before QCF even existed. I built a quick prototype, but I couldn’t fix the feeling that it wasn’t as good as the Arkanoid games at the time (Notrium’s Break Quest and the Ricochet games) so I left it alone.
That same year I did some work at the only South African console game studio (long story) and they asked me for a version of Drawkanoid that would work on a DS to pitch at E3. I explored the dual screens and what the stylus let you do with powerups, and apparently, it did get pitched that year, but the studio shut down shortly afterward so Drawkanoid languished again.
Drawkanoid became my test project – every time a new tool came out or physics evolved, I tried to overcome the issues that I’d felt in the last version of the game. I tried to prototype it with the team, but all the inertia I had with the idea made it really hard to communicate it to others. In the end, I was at an 8-hour “juice it or lose it” game jam at Free Lives and built a new take on Drawkanoid that focused on speed. I tried a lot of different approaches, but at the end of the jam had something that isn’t too far away from how Drawkanoid feels now.
I showed that version to Humble on my phone during a GDC trip organized by the South African games industry body, IESA, and they liked it enough to offer to fund it as one of their new Originals series. I wanted to make something that felt completely different to the turn-based, deep thinking, and complex balance, plus my partner was pregnant and I didn’t have the time/space to work on a “bigger” game, so Drawkanoid became my paternity leave project.
Game Mechanics: Speed
80lv: What way did you work on the game mechanics and programmed the projectile to speed up and slow down at different sections of the trajectory? Not only the projectile slows down, but also all the explosions, rotations of the blocks, background, and other elements. It truly looks amazing and not easy to implement. What were the main difficulties here and how did you overcome them?
Everything in Drawkanoid’s design is informed by the hyperspeed ball. You get bullet time as the player so that you actually have a chance to hit it. Your line is straight between two points and not a drawn scribble so that you have more control. Every particle effect has slow and fast elements so that a block breaking or a bounce makes sense at full speed, but they also have debris and other effects that you only really notice during bullet time that drive home the feeling of momentum that the ball must have to break things so thoroughly.
The hardest part of building the game was going between the two extremes of hyper-fast and super-slow motion. Game physics don’t do well at either extreme, the jam prototype was pretty unstable and had a lot of issues, fixing those needed a complete rewrite of the timing and collision code. Drawkanoid would have been a lot harder to build if it hadn’t been in Unity, but Unity’s particle effects fall over pretty hard at high velocities and look annoyingly sparse at near-pause slowdowns, so most of the effects in the game are custom as well.
The most complex code in the game deals with when, and exactly where, the ball hits the slowdown area. Typical collision handling kept putting the fast-moving ball some way inside the slowdown area before it registered that things needed to slow down. Projecting ahead meant things would slow down with the ball quite far outside the slowdown area. The solution involves slowing down the simulation’s timing very precisely to put the ball right where it’s first touching where the player can draw and then massaging the physics sim a lot so that things don’t break too obviously. Getting that right instantly improved the feel of the game drastically.
Game VFX
80lv: Another part we’re eager to cover is VFX that adds extra fun and seals the game concept together. Projectile trace, hits, explosions, the background – everything looks simple, stylish, mind-blowing. Could you share with us the way you worked on these effects, what techniques, shaders, tricks you used? Honestly, it’d be awesome if you could show the exact workflow using a couple of examples so that our readers could try to recreate something in their free time. I’m sure they’ll be excited to do that.
I really enjoyed working on the visual feedback in Drawkanoid, it’s been a lot of fun having a game that explains itself as soon as you see it in motion, compared to the complex visual language of a roguelike that players need to spend hours learning. I guess my dirty secret is that I don’t use that many custom shaders, just a few bloom passes and a lot of animated particle effects. A lot of the particle motions were pulled from fighting games to give the impact weight – initial hit flashes will always have directional particles coming off them to indicate momentum, for example. I also tried to duplicate the fighting game concept of camera loading with directional screenshake to make the motion feel like it was affecting more than just the ball. All in all, there are 4 different kinds of screenshake in the game at the moment, all used for different game feel situations.
Trick-wise, the closest thing that qualifies is probably how Unity’s particle and trail systems are massaged to look good at high velocities and with rapid changes of direction. All I do is keep track of collision points (along with calculated times of impact) and manually emit particles between those, or insert vertices into an otherwise standard Unity trail to make it feel precise.
Distribution & Future Plans
80lv: It looks like Drawkanoid is already 1 year old and was first available for PC in March 2018 via Humble Bundle subscription. Did something change in the game during this year? Are you planning to adapt it to the mobile platform? How can the players get access to the game now?
An early version of Drawkanoid is available as a Humble Original for subscribers to the Humble Monthly. I actually started working at Spry Fox full time just before that launch, so I’ve only been expanding Drawkanoid part-time. That said, the version that will be launching on Steam and mobile later this year is a much expanded and polished game compared to the original proof of concept. To cherry pick my favorite improvements: the powerups have been redesigned and improved, there are now bullet-hell elements to the game that I’d had to cut previously, I’ve explored the design space with different game modes, and there’s a whole replay system that records your best shots so you can show off later. Plus the usual improvements to onboarding, tutorials, and overall performance.
I’ve also partnered with a Chinese publisher to bring Drawkanoid to the Chinese mobile market (as 星际砖块), I’ve learned from their changes to the game for the mobile release here in the west. I’m super excited to finally have the game available on phones – it feels great playing the game on a touch device. To be notified when the game launches and how you can get hold of it, visit www.Drawkanoid.com and sign up to our mailing list!