Master of Dev

All Blog Posts

Magnetar - Global Game Jam 2022 - Day 3


The Magnetar logo

[Read the previous post here]

And with that, the jam is over, and my game is complete! It's got a full gameplay loop and everything! You can download it from from the widget below or from the Global Game Jam site or the GitHub repository using the links at the bottom of this post.

As you'd expect, the final day was spent on game polish, such as being able to win and lose, or having a final boss. Wait, no, that's important stuff!

Magnetar - Global Game Jam 2022 - Day 2


[Read the previous post here]

A lot has happened today, and at the ripe ol' time of 4am, that concludes day 2. Tomorrow (But really later today) is the final sprint towards the finish time of 3pm, so after writing this I'm going to have a short rest before I continue. I need it after redesigning the entire game concept a good three times...

Eventually I settled on having only the enemies shoot magnetic bullets, and the player's ship is of a certain polarity. By holding a button, you can flip the polarity, allowing you to selectively attract and repel the enemy bullets to - hopefully - clear your way. This also immediately gave way to a surprisingly easy to implement two player mode, whereby each ship has the opposite polarity and they can't be flipped. Combining this with giving the players different weapons - shooting directly ahead for player one and at angles for player 2, and you've got the recipe for a good co-operative dependence system (so long as you don't accidentally fling a bullet at your buddy.

Magnetar - Global Game Jam 2022 - Day 1


It's been a long time since I've done a game jam, so I've decided to take part in Global Game Jam 2022. I've finished day 1 (Friday the 28th of January) and made both more and less progress than I would have liked.

First off, the theme. “Duality”. It's a good theme, and I had plenty of game ideas to work with…that would have taken well over the allotted time span. Still, I've finally settled one one. I don't think it's necessarily a ‘good’ idea, mind, but it's still a good way to experiment with the idea.

My project is called ‘Magnetar’, and if that wasn't a big enough hint, the duality I'm aiming for is with magnets…IN SPACE!

The Return of the Development King


Ok, so my domain ‘’ might be considered a tiny bit extremely narcissistic, but a friend suggested it when .dev domains were first announced and I just had to buy it. And then, after wrangling SSL certs into place…nothing. But that changes today. Today, I am back.

To be entirely honestly, my previous website – entirely written by yours truly – was built on pretty shaky ground. Hey, if you knew the URL, you could write any posts you wanted pretending to be me since I hadn’t implemented auth yet. That’s how shaky it was… I’ve decided to give in and am now using the significantly more user friendly WordPress as a basis, hosted by my NovaDawn Studios network, naturally (That actually just saves me a ton of effort rigging up a new WordPress install, so shush). Maybe, with an interface I don’t hate massively, I’ll actually post more. Fingers crossed, eh?

Speaking of NovaDawn, I don’t want to spoil too much, but we’ve got a big project in the works, so follow that blog alongside this one to keep updated, you hear!

Anyway, for now, I’ll sign off. But I’ll be back… You bet I’ll be back…

Three Thing Game – I finally won one!


So last Saturday (The 13th), I took part in Hull University’s Three Thing Game competition, possible for the last time. This competition has each team be given three random ‘things’ from a pool, and our team was given the things ‘Ambient Occlusion’, ‘ASCII’ and ‘Psionic’. Huh. Not the most inspiring words, but we worked with it and in the end we won! Well how about that?

C++ Reflection for Fragment Engine


Reflection systems – allowing a program to inspect it’s own code at runtime – is extremely handy for game engines. For example, rather than hard coding a list of objects that can be spawned by the console or be selectable from the editor, the engine can just look for all classes that either subclass a particular type or have a particular flag. Another example would be for networking – and is something that I’ll be writing for some upcoming coursework – whereby instead of writing bespoke methods per class for networking, a programmer can just add a ‘replicated’ flag to a particular field and a generic method handles updating automatically. The same would work for Remote Procedure Calls (RPC) – just mark a method as an RPC method and the reflection engine (And some form of preprocessor) can handle it as appropriate. C# has a built in reflection system, as well as a very handy attribute system (You tag types, methods and fields as you define them in a pretty intuitive way). Sadly, Fragment Engine is built in C++ (Which may be ported to D, providing slightly more features here, but it’s C++ for now).

Book Review: Revelation Space


Alongside starting this site, I’ve also decided I might as well start reviewing things I like. Lets begin with sci-fi book (there will be a LOT of these) from 2000, the first in the Revelation Space universe – conveniently named Revelation Space – by Alastair Reynolds. Personally, I hadn’t seen very much of this series and found the entire collection on offer on the Google Play book store after finishing a previous book. I read some reviews and a synopsis, and bought it there and then. This was a very good decision.