GRM is an indie development team, making games and software for the PC and Mobile platforms
Blog | Mobile Games | PC Games | Software & Apps | Music | Support & About Us | Links

Saturday, January 16, 2021

Dev diaries: Polishing the game





Howdy, readers! It's been over two months since a proper dev diary, and the planned early access release of our game Enemy Remains is less than four weeks away! 

During our "radio silence" we've been keeping ourselves busy with polishing the game, focusing on the core gameplay and making the experience as fun as possible. The game already had a good basis for a creepy horror shooter back in August, and we've been in re-hauling and refining mode since. In late 2020 we stopped adding new maps into the game, locking the current level set for the early access release.

There is only one more survival map that we gotta add into the upcoming release, but otherwise all the other new scene ideas have been put into the slot after launch. The enemy roster or weapon selection will not change either, and we've just been refining the mechanics for all the foes, adding more use for the existing enemies. Lots of ideas popped into our heads during development, that we just have not had time to implement before. 





There will be a few surprises in the upcoming versions to the people who have tested the previous builds. The difficulty selection in the game now actually works, and there will be serious re-balancing with the levels on higher difficulties. Bosses will also be made tougher, since we were in a hurry just to add them into the previous versions.

Pretty much all of the features that we've talked about here are either already in the game, or are work in progress. We've also added tons of optimization to the levels, working on our own level of detail code trickery. We're getting pretty solid frame rates on our test machines, and we're generally pretty confident about the performance.

Enemy Remains will not be a game like Kalaban, which was purely 2D and ran on every grandmother's desktop computer and laptop. This is a feature-complete 3D game, built from the ground up to feature modern visual effects and physics simulation. There will be particle effects, realtime light and shadows, ragdolls, physics obstacles flying around and tons of action on the screen. 

For a full-on story game I think it's important to get the product running as wide array of systems as you can. But this time we opted to create a fast-paced and frantic action title with Enemy Remains, and that's a genre where players expect to see a lot of fireworks and top notch visuals. 






We've been especially happy to welcome Tuukka Kuusisto (with his artist name 'Arctic Sounds') on board as our new musician. With his help the worlds that we've created have really come to life, and have been accompanied with the fitting mood. Music is really magical in the way that it makes all kinds of new connections in your brain, and further expands the world that's presented on screen. 

Previously we've had placeholder soundtrack in the game that was entirely composed and mixed by myself. Those tracks were pretty shoddy creations, and I'm glad we're getting a real professional to do the final soundtrack. We're also in progress of re-mixing the audio effects, making sure that all the necessary actions can be heard in-game. 

It's always difficult to balance the gunshot sounds, I've found out. You want your weapons and attack effects to sound punchy, but not over-do it by making them too loud or obnoxious. We're not quite there yet, but hopefully will be by the time of the release. 





Our character artist Sean VandenBerge started his work on this game in September 2019. Just think about that! It's incredible how much development time this game has already taken. Enemy Remains started out as a simplistic survival shooter, and I set out to create a 3D game that I could develop and finish by myself. Granted, the early versions we're quite ugly and unappealing, especially compared to the more recent builds.

Pretty soon though I realized that the task ahead was way too big for one man to handle. I was aiming for this kind of "Diablo with guns" feeling with the game, and back then I had no idea in what capacity I would be involving the narrative stuff into it. I looked at the project, and though that the game would end up taking AT LEAST two years from now (summer 2019 back then) if I started implementing quests and friendly NPCs.

Luckily, we got environmental artist Dalton Costa working on the game from early 2020 forward, so the task of building this whole world felt a lot less intimidating. Even with these two key additions to our team, I figured that I'd be better off creating a good, solid exploration shooter game, without heavy story elements. And I figured if the game would come together fast enough, there might even be time to add the story in as we went along.





Like is often the case, developing a game takes a lot longer than you'd expect. I had already predicted that developing a full 3D experience in Unity would take at least twice, if not three times as long as making a 2D game with Clickteam Fusion. Adjusted to Kalaban's development time, that would mean that with all the inventory, quest and story stuff, along with NPCs, we'd have a game ready around the year 2023. 

Making plans for a release that far away just seemed outright silly. I had no idea if I'd even be able to support full-time indie development of this project for a year, let alone four. So we put our heads down and started working on Enemy Remains as a topdown shooter. Now, almost two years later, we're near the early access launch with a game that has its focus in the core gameplay, and is overall a lot more polished experience than frankly anything we've put out before.

I've learned along the way that every little UI element or small interface feature takes a good few rounds of testing in-game, going back, tweaking a few lines of code and fixing stuff. Just adding different, changeable weapon icons might take one whole day by itself! And you gotta add in another day for the art and testing alone. This is what it's like when you're the only programmer working a 3D game. 





There is a plus side to all of this though, being the sole programmer commandeering the ship, and that is having the complete mental picture of the project in your head. If say, main menu does not load the proper scene it's supposed to, and instead just jams in the loading screen, I can pretty much instantly figure out what the problem is.

Or if a boss enemy's death by pistol triggers the right kind of level end sequence, but the same thing doesn't happen if he's gibbed to death. In that case I can also sniff out the bug that's preventing the sequence from commencing properly. All I need to do is a quick troubleshoot, tweak the code, do a round of testing, and the problem is solved! 

For another programmer working on the game these problems might turn into a nightmare of pulling hair out, and bring the coding to an absolute halt. They would have to spend a good chunk of their time trying to debug the program for strange occurences, and maybe eventually figure out the issue in someone else's code. Sure, it does take extra care and time to do everything by myself, but this project has already taught me so much than any programming degree at school ever would. 

I'm not here to learn how to write perfect code, or how to get employed by a company making utility software or database work. I'm here to learn about project management, creative, on-the-fly problem-solving, and ultimately how to become a real game programmer.  





If we're talking about future plans, and what's next, then that's all still pretty much in the air. Naturally we gotta look this launch through first and put our marketing and PR hats on, and change gears from pure game development mode. 

That's the burden of self-publishing and working as a full indie developer. You gotta get your hands dirty with this stuff. Sure, we've been looking around for a publisher during Enemy Remains' development, but none of the candidates have taken us seriously enough, or have had the qualities that we need as a developer. Most of the publishers have just snickered at our games, or have given us cold shoulder in way of saying "looks neat, but there's not really anything we can do for you", or worse yet, have turned out to be literal scam artists.

Maybe in the future, when we've established a larger recognition we can shop around for a serious publisher, that's willing to put the money on the table for actually funding the development. But until that time, we're on our own!





As for continuing in the indie space, I would gladly work with another hard-working and self-driven programmer. The qualities I'm most looking for in possible business partner are; ability and will to figure stuff out by yourself -- and simply doing it.

If you sit around all day dreaming about games that you would create if you had the team, the money, or whatelse, and waiting for a programmer to fall on your lap, then I'm afraid I can't help you. After all, I'm not that talented of a coder myself. I learned how to code and use Unity simply because I wanted to make games. That was motivation enough for me, and it's what has been driving me to learn new stuff in the field since I was a teenager.

At the end of the day, making a polished game is not fun. There is enjoyment to be had when you figure out a more elegant solution to problem you've had, or see your game running much better because of some optimization that you did, but it requires hard work and some serious sitting muscle. 





If you truly want to become a game developer, at some point you gotta get over that "fun" seeking attitude, and just take pleasure in the work itself. It's a point that only a developer can understand. Often times people look at games and think they can be created way more faster and cheaper, than they really are, not seeing the hard work that goes into making a decent product. 

Near the end of the development you get to do some actually fun stuff too - adding "bells and whistles" like it's called in programming or hacker terminology. Once you have a solid game, that runs well, you can start adding features that have no real relation to gameplay - like say; ragdolls. They're there just to add general value and appeal to a product.

Experimenting with physics in Unity has been especially interesting for me, and it's something that you just couldn't do in a full 2D game. The way that things have a mass, speed and momentum, and the way collisions work in a truly 3D environment, that is all fascinating stuff for me. 





The game's store page is live on Steam with "coming soon" status, so you can wishlist it and stay updated for new updates and the upcoming release: 

Enemy Remains on Steam 


- Harri J.