Adarakion Developer Diary: Issue 19

Real life. It’s a great concept but in practise it doesn’t half get in the way.

I started out this week very much on a high, coding was coming along nicely, I had cracked a few issues I was having with the compiler, finalised my menu code, squished the odd bug I mentioned last week and imported my next batch of code (the ship selection system) to be ported.

Then real life hit. The busiest week of real life work I’ve EVER known meant no lunch hours to code, no time before work to code and so things have stagnated somewhat.  It’s been so busy that I’ve just been mentally exhausted when I get home in an evening too, so the last thing I want to do is wrestle with my string arrays and constant variables.  I’m hoping this is just an end of month thing (it usually gets like this, just maybe not quite so intense), so I can pick up where I left off next week.


What I have managed to do this week is sort myself out with some new shiny hardware for my PC – a new motherboard and Quad Core Intel processor.  My desktop PC has been in dire need of these for a few years now so it’s nice to finally bring it reasonably up to date – the added bonus of doing this is that I can now use my desktop PC as my main development platform in conjunction with my laptop which I use at work. I love getting new electronic bits for my PC – yes, it’s official; I am a real geek now.

Turning to the little coding I have managed to get through this week it’s dawned on me again what a quite substantial task I have set myself.  The ship selection screen is easily the largest chunk of code I have had to port so far, and it’s not even all that good yet (it works, but it’s a bit boring).  I am almost certain there are better ways to do what I’m doing (in fact, just typing this has given me a few ideas actually)!

Something that has been on my mind lately is a question of “am I doing everything the best way in C++”.  There are quiet a few different methodologies I can use to get a result such as Classes, Structs, templates etc. which I am not currently using – by my using these methods, will I avoid bloating my code (it’s definitely bloated at the moment) or will I just overcomplicate things for myself?  Whilst I want to use all these things at some point (it will help my learning and understanding of C++) maybe I should be focussing on keeping the code as simple as possible for me to understand and apply, rather than being all flashy!

It’s also difficult to port something without really wanting to get stuck in and change stuff around to make it play/feel better, coming from a fairly long continuous progressive development cycle to a more mundane, almost “copy and paste” cycle is quite a transition to make.  On the one hand it’s great that I’m learning new stuff, but on the other it can be soul destroyingly boring – essentially re-writing all the code you have already written with very slight changes to actual commands and functions and great big swathing changes to data organisation!

Fingers crossed that once I’m through this lull of porting I can crack on and give you guys loads more screenies and maybe even a playable demo!  But hey, one step at a time, right?!