By Joel Couture . October 26, 2016 . 4:00pm
Raino Sommer, otherwise known as Dejawolfs, has been working on remaking the original NES Castlevania with the Unreal Engine. The first stage, released as a demo on Itch.io, represents a year of hard work for the developer, and still isn’t quite where he’d like it to be.
Siliconera reached out to Sommer to talk to him about all the work involved in remaking the classic, the challenges in getting every detail right, and why he would risk doing a remake in a time when fan projects are frequently taken down with Copyright Notices.
What prompted you to do a remake of Castlevania in Unreal? What drew you to recreate this game?
Dejawolfs, Developer of Castlevania Remade in Unreal: A few different things. There’s the nostalgia. It was one of my favourite NES games, which I spent countless hours playing as a kid.
There’s the learning factor. I wanted to learn unreal, and a 2D sidescrolling 8-bit game recreation seemed like a surmountable challenge for someone with no experience in UE4. And generally, it seemed like something that would be fun to do.
How much work goes into recreating a level? An enemy? How long is the process of remaking something with unreal?
Quite a bit. One level is 100-200 hours of work or more, depending on the number of unique assets that need to be created.
For a single enemy, i can spend upwards of 20-40 hours or more depending on quality level and complexity. This includes modeling, unwrapping, texturing, rigging, animating, creating a blueprint, and animating.
40 hours is actually on the lower end of what you’d be expected to do for a modern game. Since Castlevania is a sidescroller, the enemies are pretty small on the screen, so I can afford to cut back on the number of polygons and the texture resolution.
As for Unreal, I’ve tried other things in the past, like XNA, ogre3d, irrlicht, UDK, unity, and UE4 has been by far the fastest engine for me to wrap my brain around and develop games in.
The blueprint "programming" style is everything I’ve dreamed about when trying to develop games for other engines. It’s perfect for a visual thinker like me, since it’s about logically connecting wires instead of typing code.
As a comparison, back when I tried working with XNA, I spent 3-4 months trying to put together a space combat game. I tried the same in UE4, and most likely I could have the same basic functionality in about a month since I wouldn’t have to write custom normal map shaders, work directly with matrices, and try to build my own per-polygon collision detection algorithm.
An inverse transform in unreal engine for example is super-easy – just apply an inverse transform node, and you’re done. In XNA, I could never figure out why I couldn’t make it work. I could Inverse Transform a position, but never rotation, which was the main reason i had to scrap that project.
Are there aspects of the game you’ve found that you wanted to change or improve? Did you make any changes to the gameplay? Why or why not?
Mainly the visuals and sounds, but in that regard I’m trying to make it the way the Castlevania crew would probably have made it if they had access to the Unreal engine and modern graphics. As soon as you change an aspect of the gameplay, you’re making a different game. It no longer feels like that Castlevania game, so I avoid that at all costs.
Are there aspects of the game that are difficult to get to work properly using this new engine?
There’s been plenty of hurdles, mainly the animation system, stairs, the fact that the original was 2d, and learning to work around the default Unreal movement controller. The stairs were particularly challenging, since in the original, Simon actually takes 1 step at a time, and always finishes his step, regardless if you hold down the movement button or not. Simon also walks towards the stair ends when you are overlapping a stair before climbing it.
Trying to recreate this, I probably went through 6-7 code logic iterations, to get it to work like it currently does. And I’m still not happy with it. I haven’t gotten Simon to walk towards the stairs yet, and for some reason, he sinks into the stairs when climbing up. But I have managed to stop him from freezing on the stairs now, and get a smooth iteration between walking and climbing.
For the animations, the whip has been quite challenging, mainly because in the original, your tapping speed determined if you’d be able to whip fast or slow. If you spammed the button, however, you’d actually whip slower than if you timed your attacks properly.
I’ve tried recreating this where you have a normal whip speed, a fast whip speed, and a spam whip speed. This, again, has created numerous issues that I have yet to fix. For example, sometimes transitioning from the various whip modes, you might end up locking up the whip movement if you haven’t carefully thought out every single possibility of what might happened.
For the whip, there’s a whip begin, 3 different whip loops, and 3 different ends depending on which whip loop you ended with. For each of these whip loops, you have to make sure you only play the animation once, that you’re not playing another animation currently, that you exit from it when you’re done playing the animation, and that you transition to the next correct animation when you exit the loop.
Having Simon stand still while whipping is also a challenge – when exiting from some loops, he’ll start sliding along the floor. So that’s another issue I’ll have to look into.
Having remade the soundtrack as well as the visuals, why did you choose to keep the sound effects and status bar the same as the original?
Mainly because I haven’t had time to change them yet, or haven’t found any sounds that convey the same feel as the original. The same goes for the status bar, although I have a few ideas spinning around in my head for that one.
With development taking so long, how do you stay motivated to keep working on the project?
Mostly because I enjoy doing it. Most gamers knows that feeling of sitting down that evening and thinking "I’m just gonna play for an hour or two" and all of a sudden the sun is rising. It’s the same for me working on Castlevania. The hours just fly by when i do.
What has the response to the game been like so far?
Mostly positive. There’s been some constructive criticism – mainly that the game is too dark, that it looks unfinished, that I should’ve made it in 2d instead, and that the animations aren’t very good and such.
With the risks of getting hit with a Copyright Notice, why put all this work into remaking a game rather than work on something of your own?
To learn the Unreal Engine and it’s capabilities, and to focus on finishing something, instead of creating something new. The problem with creating something new is that you have to think of all sorts of things like level design and gameplay at the same time as you’re trying to learn the engine.
What ends up happening is you spend a lot of time designing levels, designing monsters, thinking about gameplay, and then you sit down and have no idea how to put all of this together into a game. Recreating Castlevania, it’s the opposite. All of the level design, monsters, and gameplay has already been figured out, so you can focus on learning how to work the engine and create this specific game. Then when you’re designing your own game, you actually know exactly how to apply all your designs to this specific engine.
Making someone else’s game, you also learn what makes the game fun, and exactly how much work you need to put into making a game like this. This is extremely valuable when making your own thing.