Nesting Syndrome

How time flies.  It seems like only yesterday I was plotting to do some indie game development, largely thwarted by being out of time before I have to go back to work... and here I am today, not quite a week later, feeling like I am in the same position.

After a couple of days on-and-off dabbling with Construct 2, the easiest-to-use game development software that exists, I have deduced that making games is still hard.  I had to take a break as soon as I wrapped my head around how nested loops look.  I mean, take a look at this:
That's how they are done in Construct 2.  What's wrong with it?

Nothing's wrong with it.  That's two loops being run in the same statement, one loop inside the other, in the same codeblock.  The statement on the right only gets run when all the conditions on the left are met, and an iteration of both for loops are considered a condition.  It is a wacky way of doing things if you are used to the code blocks in C.  However, I've seen it populate an array just fine, so it's definitely working.

Everything's wrong with it.  Which loop is the inner loop, and which one is the outer loop?  I have no idea, and I guess it does not matter, because I can not easily perform an operation that only applies to one of those loops this way!  I can do it once, with a "sub-condition" block that can be evaluated with each iteration of the innermost loop to perform an operation unique to a certain situation.  However, as there is only one sub-condition block allowed per main condition block, and no sub-conditions of sub-conditions, that limits me to a single evaluation to see if an exception exists anywhere in a nested loop!

Comparatively, Clickteam Fusion 2.5 is capable of greater flexibility in its nested loops.  This is because loops are called manually (they are practically subroutines that way) and you can call other loops while inside of a loop, so there is the potential for a great deal of loop nesting and code will be executed before and after the loop calls in the order as expected.   I have no idea how to pull it off in Construct 2, the GUI does not seem to permit it... does it?

Granted, aside from very specific operations, maybe nested loops are not all that important.  Besides, Scirra advertises Construct 2 as a coding-free game development kit, and so naturally they did everything in their power to streamline out the coding aspects, so what was I expecting? 

It just means a quasi-experienced coder such as myself is going to run into stuff I would like to do that is too advanced for a coding mechanism that was developed to be accessible.  If I want to code that badly, perhaps I ought to go use GameMaker Studio, Unity, or LibGDX (in increasing severity for a need to code).
I got my invite to visit the Empire home world in Elite: Dangerous.  What a pretty station interior they've got.
Easily daunted, I mostly spent this weekend playing more Wasteland 2 and Elite: Dangerous whilst knowing I really ought to be doing something more productive.  Great games, though.  Wasteland 2 is well-written and balanced enough to be an enjoyable old school RPG.  Elite: Dangerous is basically an intergalactic trucking simulator and, for a boring adult like myself, that's fine.  In a way, I feel I did not waste my time, after all.

Yet, I am sure that, if I could only get my development groove back on, I know I could have something I am a lot more excited to spend my free time doing.  Part of me knows I am just being coy.  I am pretty sure Construct 2 can meet most simple 2D game designs if I were willing to put enough effort into it, and what I am really being intimidated by here is effort.  Whatever I do, I need to man up and do it.


Popular Posts