Personal Blog

Development, gaming, programming,

ideas, thoughts and more!

Been away for two weeks and have got a new job working with Grinding Gear Games developing Path of Exile. It has been extremely interesting so far and the more I learn, the better it gets! It is very exciting working on such an amazing and successful game right here in New Zealand.

Unfortunately though this means I have a lot less time to work on my hobby projects. The TrainZ project has been very rocky due to me being so undecided with what engine / framework to use and difficulties in regards to train tracks. Including simple, limited track pieces is quite boring and has been done a lot of times. With this project I really want to use Bezier curves in order to make fun and unique tracks though the levels. There is a reason why this hasn't been done much though; Dynamically generated Bezier curves for train track following is a very difficult system to get working correctly. I am learning more about how it has been done previously and improving my knowledge in regards to Bezier curves, splines and path following.


I've finished almost half of the medium challenges on Codingame now, I find them very fun to do when I have a spare section of time or I need to change my focus for awhile. I downloaded Cocos2D-x the other day to use as a framework for making TrainZ. The largest benefit is the multi-platform support while still being a very low level framework (giving me a large amount of freedom & power). I also spent a bit of time the last few days setting up a Perforce server for myself and my team. Learning about networking is really interesting and I realise I have just entered a door to a very large, and deep topic.

To post something interesting, here is an AI controlled search and destroy drone I built in Garry's Mod a few years back. I never completely finished it but it features several cool things:

- 99% of the drone is built with holograms (parented to the E2 chip)

- Target recognition and decision making

- Loose prop searching

- Target assasination / attacking

- Typical drone commands such as: follow, stay, roam, circle etc.

- Arm laser sight targeting

- Uses quaternion / applytorque rotation

- Infinitely spawning missile launcher


Hello, I have been kept fairly occupied in searching for jobs the past week. I spent some time working on the core mechanics for the train game I have listed in my current projects.

This included:

- Randomised track generation

- Background tile system

- Track track path following

Making good randomised track generation is very difficult, especially when you have strict criteria to how you want the final output to look like. On top of this, Unreal Engine 4's 2D support is still quite low and the Paper2D system itself is very new and still in development. I have already faced several engine bugs that I was not able to fix unfortunately.

I also spent some time completing the "strings" section of interview questions from last week. I have re-updated my code and uploaded it here. I will probably stop with these questions at this point as I have created implementations for all of the others previously and they are much more time consuming (and tiresome!). If I have time though, I may pick out some of the more difficult or interesting ones to show my approach etc.