I decided to be a bit more active on this blog. Making one blog post every 3 months isn’t really great. Today I wanna talk about that.
For the longest time I’ve wanted to write tutorials, but every time there was a reason for me not to. First a lack of proper knowledge, then a lack of time, and finally a lack of subject and interest. I don’t want to make beginner level tutorials, but mid to high level ones. The tutorials designed for the many developers that are past the beginner steps, but still haven’t mastered every nuance of Construct. This semester I’ve spent some time preparing the ground to finally start writing these tutorials, and I’m finally serious about this, and when Scirra announced the new course system I took this as an opportunity to write something.
So I made my Z order course: 3 tutorials about Z order climbing in complexity each time.
And guess who made the very first 3rd party course on the website? 😎
I made this course to discuss a system I’ve been working on for my own game, and this course acts as a kind of documentation of what I managed to do. This means that any feedback about the course and how to make it better is feedback I can directly apply to my own projects. Eventually feedback came.
He was right. I needed to explore a way to solve that.
Collisions in Construct 3
Construct 3 came with a new feature that was widely requested in the past: collision filtering. A way to allow two objects to trigger the collision system or not, and being able to change that at runtime.
The new Solid behavior came with a new collision tags feature.
Every object can have many collision tags attached to it, and they will only collide with solids that have the same tag.
No, not really. You can change the object collision tags at runtime, but you can’t change the solid behavior’s collision tags. I wanted to make sure there was a reason to this so I tried changing them at runtime through JS hacks and browser evals. It worked fine, there was just no action for it.
Something similar was happening with the shadow light object where it had params you could not change at runtime even though there was no reason for them not to be modifiable. So I made a feature request, got some support from a few peeps on the Construct Community Discord server and hoped for the best
A few days later I got an email notifying me that the feature was now in development. That is great for many reason.
First, that means that my game will be better thanks to that feature and I will be able to update the course with a final tutorial about that new collision system. However that also means that through my will to make tutorials, I was able to get some feedback and a discussion going, which led to making Construct 3 a slightly better software, and I find that deeply fascinating.
The community behind that software is amazing, and that made me want to make even more tutorials and content to be able to talk about what I learned over the years, and make everyone, me included grow in the process.