So another night coding Hack24 fueled by sugar and Redbull (well cheapo versions). I wanted to try and get Dagger2 working on my project so I could do Dependency Injection which is something I am interested in learning. I timed boxed it to 1 hour and failed 🙁 This was due mainly to not understanding how it works with Kotlin. This project has a lot of moving parts to make my life more difficult, if it was a straight forward Android project, life would be fairly simple, however, it uses the LibGDX game engine which is cross-platform and normally in Java, and I am writing it in Kotlin. There seems to be not a single example anywhere of doing these 2 things together. My issue at the moment is with Gradle and the mass of gradle.build files that LibGDX has.
On the positive side, I did add a sound manager that does sound effects and music (quick win), I skinned the buttons, added the Hack24 logo and started building the factory methods to build the buildings in the game!
My focus is to build a minimal viable product of Hack24 before Christmas and release it on a single platform (Probably Android) as a soft launch.
Main areas I need to look at still:
- Networking and the server side
- UI for hacking a building
- The player logon model, e.g Apple Game Center, Google Play etc
So, it may end up being called something else but I have now started writing a new (well kinda) game. The last couple of weeks I have been bug fixing and improving the LibGDX framework / demo app that I made a few years ago. Code can be found here: https://github.com/burf2000/BurfEngine
Yes, it has a terrible name! Anyway it was my attempt at a simple game like Minecraft where you can place and remove cubes. I added things like chunking, gravity, and culling. It also has a database and network layer, custom collision code and works on iOS, Android, and Desktop. It has been converted to Kotlin, which I am really liking 🙂
Now, after a few long nights of fixing, that code is being parked and anyone can use it! I now plan to rip it apart and use the best bits to form the engine for Hack24 (v2). Made aim is to make a 3D game that has the same look and feel as Hack24 that’s cross-platform and easy to develop further.
I will focus on a MVP first, which should not take too long, I will try and rewrite the server in NodeJS (Well KotlinJS).
So why am I doing this? A few reasons:
I really liked Hack24 but it had some performance issues and really needs rewriting to use OpenGL VBO / VAO. It also makes sense to make it cross-platform while I am at it. I don’t fancy doing it in Unity and really want to learn Kotlin for work (which I can for LibGDX). It would be nice if people enjoy playing it too, so I hope to make it bigger with more content 🙂
Watch this space!