In order to test Defold on “outside” devs other than King, their team gave early access to a Swedish indie developer Johan Hogfeldt and his team of Hammarhaja AB, whose game is called Hammerwatch Coliseum. King’s CTO Thomas Hartwig says this developer helped them define the community they wanted to build around Defold. While working on the game, Johan was sharing his feedback, and his game has already been released on iOS. After the show Gamesauce reached out to Johan to check out his impressions from the engine.
Giving it a Try for a Mobile Spin-off
“I know Ragnar who created Defold from a while back and have toyed around with it for a couple of years”, the developer recalls. His new game Hammerwatch Coliseum is based on a previous title, Hammerwatch, that was released on Steam in 2013 and got over a million downloads.
Johan observed, “A friend of mine, who I decided to create a game with, shared offices with the guys who created that Hammerwatch game, and we asked if we could make a mobile spin-off. When King went into beta with Defold, they were looking for indies who wanted to be pilot cases for the engine, and we saw an opportunity with that game since we had a lot of graphics, sounds, music etc that we could just re-use.”
Arena Fighting for Mobile: point-and-click instead of on-screen gamepad
Planning the exact outcome of their idea, the developers realized they needed to create a game somewhat different from the original, more suited for mobile: arena fighting, but slightly different. They decided to ditch the on-screen gamepad and use point-and-click controls — and it’s the first thing people like or hate in the game. “This was a design decision we made based on the fact that we wanted to have spells that the player could cast, and that really didn’t go well with an on-screen gamepad”, Johan explains. “We also wanted the audience to be highly involved, so made a system where the player is awarded by the audience if they’re active. On the other hand, if you’re passive, the audience will start booing and throwing bombs at you. Technically it is just counter-checking how often you kill enemies or break stuff. And then a few sprinkles on top, such as critical hits giving more audience favor.”
Organizing teamwork is where Defold came in action for Johan’s team where he’s the lead developer with two friends helping. Their team also includes two game/level designers, an artist and a sound engineer. None of them (except for the developers) had any experience with versioning systems or game creation tools. “But in Defold they could easily create maps, add graphics and sound as well as tweak parameters without me having to be involved”, Johan adds. “For instance. I would create hooks for sounds, and our sound guy would go in and actually add the sound files to the project, and then test in the actual game and see how they match together, tweak and fix and then deploy when he is happy. I would then just sync and have all the sounds in the project as well.” Johan admits it is also possible with other engines, but with Defold it’s just way more simple.
On top of that, the team works remotely from different places in Sweden, with everyone except for Johan working on evenings and weekends. Meanwhile, he has released another game, and it’s also created with Defold: Pi and the Power Pals - Magnet Fishing is already available on iOS and Android.
“I can definitely say why I chose it again. That is because it is so very simple to go from idea->proof of concept->prototype->beta->stable without having to refactor large chunks of code or rethinking stuff. The first steps are extra important. When you think you have an idea that might work, you want to try it out as soon as possible. And yes, Defold is very helpful at the testing stage, you get very quick results. The first prototype of Hammerwatch Coliseum, where we had a character that could walk around and shoot arrows on (very stupid) enemies in a little map was created in a few hours: I started in the morning and had it ready before lunch.”
See changes as they’re implemented
As for the learning curve for this engine, Johan warns it might be pretty steep for a person who has a very pre-determined view of how things work in an engine. Though it will be less steep for a total newbie, since Defold has a different way of dealing with things that for programmers, who can be very rigid about how they do stuff, can be hard to get used to at first. But the concept is actually much more simple than classic object orientation. It would be much easier to explain the concepts in Defold to, say, my kid or my wife, than it would be with the concepts of object orientation. But for a developer who has his or her feet deep down in the object orientation mud, it might seem a bit awkward at first.”
Visual expression is another perk of Defold that Johan points out. “Since it uses Lua, you have hot reloading - which means you can reload code as the game is running, even on a device. So you can have your game running on your phone and see what happens if you change or remove this or that piece of code.”
According to Johan’s experience, the compatibility with the variety of devices, their specs and sizes works seamlessly as well. “But the really cool part with Defold is, - Johan continues, - is the fact that I have full control over the rendering, so if I want to do something very specific - I can do it. The order of things, blending, blitting, shading…”
“In Hammerwatch we have a lot of lights to create atmosphere, that have been made with shaders and off-screen rendering to texture buffers. And the game I am creating now is a kids game that will be a companion app to a book where the player has a magnet and fishes metallic objects out of the sea. So I have a shader that makes the background look like it’s underwater, with wave distortion and blur. Both games were almost finished before we started doing those things, so it is not necessary. It just adds a little extra finish. With other engines it’s either not that easy, or not possible at all, like in those simplest ones. ”
Johan points out that the Defold developers proved themselves well in terms of listening to the community’s feedback and fulfilling their requests. What he thinks needs to be improved in the engine is sound support. “You can change volume on sounds, but that is pretty much it. I would like to be able to pan, pitch from code.”
Since a developer knows best what engine to pick and why, Gamesauce asked Johan’s opinion on the niche Defold can potentially fill in the saturated market of game engines. The developer says it does fill that gap: “There is no other professional 2D engine that is simple to use but powerful. It is as simple as Game Maker, but as powerful as Unity or Unreal when it comes to 2D.”