Imagine, just imagine… If the world, full of 7.6 billion people (at the time of writing and not entirely 100% accurate) had no names. We all had no names, no identities and no attributes… life would be, different to say the last. How different? Well, much harder in many respects. We couldn’t identify each other correctly, how would we address one another and more importantly, how would we filter who is who?
Yes, this post starts off with crazy analogies and that’s what they are… analogies.
So, what am I referencing here in relation to Clickteam Fusion 2.5 (and development in general)? Values and Strings. Alterable Values and Strings also Global Values and Strings.
WYSIWYG laziness
The raw beauty of using a game development tool like Clickteam Fusion 2.5 is having the ability to actually SEE results as you design and develop. It outwits the boring nature of endlessly coding in variables in programming languages. Want to create a new value that is global to the application? Click NEW and then rename it, like so…
then
and finally
We now have a new ‘global value’ which means we can liaise, modify and set this value throughout the application between numerous frames. But the target of this post is not to educate you on what these values do, that’s already listed inside the Academy for members. The objective of this post is to remind you just how important it is to NAME your values, be it global or alterable.
The WYSIWYG availability allows us to get into the nature of being lazy, by taking shortcuts.
“Oh, I need another global value for X” – “I know, let’s just create another and leave it as Global Value AH”. Some people do this, and the same with Alterable Values/Strings for active objects, but whilst this takes only 2 seconds to create and carry on developing, it will cost you thousands of minutes in future development and debugging.
The cost of Debugging
I would put a huge bet on to say, one of the biggest reasons projects don’t get completed, whether it’s a game or an app, is because it gets big, every project will get bigger eventually… more objects, more events and ultimately, more debugging.
Debugging can actually account for about 90% of time wasted between what you thought was nearly the end of development and release. There’s nothing more exciting to see your project come to fruition, to then figure out something went wrong when you play tested it and you have to spend hours, days or even weeks debugging why Object A’s events are breaking Object C’s, K’s, Object T’s and the Window Object.
These things will happen, regardless of what I’m talking about, but you can cut down the time by up to 90% by naming your values.
What’s the point in having an Active Object with 24 alterable values, listed as Alterable Value A, Alterable Value B etc. but having it written down on paper? You then have to reference that bit of paper everytime you need to figure out what value represents what. Just name it. By naming it, you can visually see that value inside the Fusion 2.5 Editors and you can reference it directly inside the Fusion 2.5 expression editor.
Save yourself time with naming values
Check this expression out…
How ugly is that compared to this…
I rest my case.
What’s the reason I am telling you this? Two-fold; to save you an absolute shed-load of time in debugging weird things that are going down in your app and secondly, if you need help off someone else, or Clickteam, you are going to save an absolute world of headache by just naming your values!
Happy developing 🙂