Let’s kick it all off!

Sorry for the last few months there has been little update. I decided that before I got too old I should enter a bodybuilding contest, honestly seemed like a good idea at the time. Well it’s been the hardest 3 months of my life to be honest. First off it isn’t the cheapest thing to do (I have spent £500 on chicken alone), you have to be super disciplined (up at 5, 1 hour cardio, training even if ill), you become very moody, tired and even get insomnia (writing this at 3am) because your constantly hungry! However with less than 2 weeks to go, I am still chuffed I decided to do it. On a positive side, because you don’t sleep as much, your brain seems to be come very creative!!!

So what’s the plan Batman?

So, I have many plans, lots of ideas and have been researching lots of stuff but I need to do some house keeping first!

1) Release a v1 of Hack24 cross platform to prove the framework works.

2) Fix Burf.co Search Engine because I turned it off.

3) Finish the garage so that large projects are possible 🙂

All of the above are in progress and I hope to have them done very soon. Then it is full speed ahead for some cool robotics / machine learning project that I will discuss in my next post 🙂

Burf.co paused, Hack24 Resumed…..

So I been on holiday driving across America, it was great fun!  I was hoping to be inspired on what to do with Burf.co, what’s the business plan, the focus etc.  Sadly absolutely nothing came to mind!  Not a dime!  Technically I can now index a lot of records pretty fast!  I have enough hardware to heat up a street of houses (more than my ring-main could handle) however I still don’t know what the point is.  So for the moment, it’s being paused!

With that in mind, I thought I would carry on with Hack24 and see if I can get it out the door.  I am still using LibGDX however, I have to moved to Multi-OS Engine for iOS and I am going to see if I can use FireBase for the backend.

Hopefully, by the time I have an MVP built, I should then know what I am going to do with Burf.co

 

 

It’s all go on Hack24

So, work is continuing on Hack24. Tonight I worked on making the actual buildings in the game. The colors are a bit naff but that won’t take much to sort out.

It was quite interesting to see the old Hack24 iOS codebase which was really nicely structured until you got to the building code (the code that generated the buildings in the game). Randomly the Y and Z axis had been switched over? No idea why!

There is still quite a lot to do but I am confident that Hack24 will be coming to the AppStore very soon!  After that, the website needs an update!  Finally, I hope to populate the Robots section on this site!

Week 7 and its server time!

So my mission was to release a basic version of Hack24 before Christmas, this is now seeming unlikely!  I do have a 24 hour GameJam coming up which I plan to abuse and work on Hack24.  I may just release the game on a single platform first (probably Android).  The main delay has actually been the Christmas spirit and wanting to do Christmas things 🙂

So, back on to the progress. I have started building the user registration server in NodeJS. The original Hack24 used ASP.net which worked well but felt a bit of an overkill.  As I want to rapidly prototype the game, NodeJS seemed a good way to go.  Mongo is being used as the datastore and Socket.IO will handle real-time movement tracking.

For the MVP I need the following:

  • User can Register
  • User can Login
  • User can post high scores
  • User can see high scores
  • Users in-game location is stored
  • Game world stored

Nice to have:

  • Reset password
  • User items
  • User Level
  • Admin  panel
  • User chat

In the original I used Apples GameCenter to do a lot of this, however as this is now multiplatform, I cant do this.  I also don’t really want to mix up Google Play users with GameCenter users and Steam users, it could all get a bit confusing.

Once this is done, I can then focus on finishing the game mechanics

We have Music, Sound, UI but no Dependency Injection

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

Hack24 update

So progress on Hack24 hit a few walls as shown below but it is moving forward 🙂 Don’t worry about the nasty textures, they will be going.

Below is it running on OSX, we have spawning of buildings, and collision.

Lesson Learned : Sometimes pretty code is slower code!

Interesting lesson learned: I had written my own 3D engine for Hack24, however came across this book https://www.packtpub.com/game-development/building-3d-game-libgdx, the code was extremely well structured and I was about to bin my own framework and use this one as it was a bit further along.

I thought I would run a few performance tests, just to be on the safe side. Glad I did:
Theirs: 400 objects rendered: 22FPS
Mine: 4608 objects rendered: 15FPS

Hack24 V2 started :)

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!