A Construct for programmers

  • No, I am not talking about creating a custom plugin but having the ability to script out an event/action as an alternative to the visual system. ...zendorf

    Would be helpful to have a few examples of events/actions that you'd want to script out as an alternative to the visual system ...

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Thanks for reply Ashley, makes a lot of sense. Sounds good that you are open to an inline scripting system at some stage, and as much as I love Python, Javascript is the logical language to use.

    pixel perflick, I am also very interested to see what the future holds with the proposed modular enhancements. Reuse of code would be a good thing , which is currently difficult with a visual coding system.

  • zendorf: reusing code is solved using Include Event Sheets and functions.

  • I am talking about resuse of code between projects. Yes, it can be done with importing a whole project and copy/paste between event sheets but this is far from an elegant solution. A more modular system is in the works so it is only a matter of time...

  • Not to trivialize the conversion, but I think Construct2 is just about perfect as is and some of these suggestions would add a layer of complexity and unreliability that would really compromise the features that make C2 so attractive. The pipeline has been quite smooth and we get incredible features (like 3D sound, etc.) made easy and on a regular basis.

    I would not change a thing about the current development model.

  • Not to trivialize the conversion, but I think Construct2 is just about perfect as is and some of these suggestions would add a layer of complexity and unreliability that would really compromise the features that make C2 so attractive. The pipeline has been quite smooth and we get incredible features (like 3D sound, etc.) made easy and on a regular basis.

    I would not change a thing about the current development model.

    You probably wouldn't even notice inline scripting. So it's the same matter. Why not, it doesn't need to be used, and will have no impact on developers who don't want to use it.

  • I am talking about resuse of code between projects. Yes, it can be done with importing a whole project and copy/paste between event sheets but this is far from an elegant solution. A more modular system is in the works so it is only a matter of time... you could just copy-paste functions

  • > I am talking about resuse of code between projects. Yes, it can be done with importing a whole project and copy/paste between event sheets but this is far from an elegant solution. A more modular system is in the works so it is only a matter of time... you could just copy-paste functions

    That doesn't include objects that they are linked too. So if the Function refers to a sprite it won't copy. Of course you can copy a sprite, but the job get's bigger and bigger.

    Where as a proper module export will create a plugin like object that can be easily shared and used by many. Including if the share module is updated.

  • Whoa, I didn't think that this subject would be er... polemic.

    But anyway, sorry if I was too rough Kyatric, I didn't mean to judge it badly.

    The truth is that I messed with Construct 2 almost a year ago (and lots of features were added since then). I went through the tutorials for events system, without going deeper on the SDK.

    I don't know really if I explored everything, but I did a random-generated cave, making iterations though a 2x2 matrix. Honestly, I found it somewhat hard to get it working, more than typing (which would have felt like second nature). Got me frustrated for a while. Maybe was something that should be done with a plugin, coded in Javascript. Or maybe I wasn't' much accustomed with the system, but we should keep in mind that I was a beginner and that was kind of my first impression of it.

    But you know what? I will give it another try and go deeper even on the SDK.

    As final words, my thoughts was just about the same as zendorf: I was felt like scripting small game functionalities would suit better. And Ashley came and said the pitfalls of it, which I think any programmer would easily understand.

    I thank you all!

  • I didn't think you were rough, and perhaps my use of the word "judging" goes further than what I think (and so my answer could appear as rough too).

    I just mean that it's not the first time that people with programming/coder background come to the forums and ask for more "depth" when the actual events system, once used to it, already provides such depth.

    As I said, it's a new workflow to learn, but it's a quick and powerful one.

    Using functions, loops, sub-events, arrays and/or dictionary you can do random generation algorithms.

    Have a look at the "How do I FAQ" (link in my signature) I think there are even examples of some listed (though they might be old/outdated), and at worst there are examples in the how do I forums.

    As a "long time user" of C2, I hardly/don't use third-part plugins since I find myself able to do most of what I want through events and built-in plugins (and even more since the Function plugin has been added).

    I had written a pathfinder behavior when the official wasn't available and used it in a few projects.

    For such specific needs, an extension at the time was necessary.

    But for arrays/data manipulation and random generation algorithm, I don't think there's a need for it, the current plugins and events system is more than capable.

  • For inline scripting and C2's event system, the event system provides less room for typo mistakes and is parsed to make sure you're referencing existing objects. The inline scripting system would have to incorporate that or else it'd be a nightmare.

    I say that it would have to obey certain organizational practices so C2 can scan it and convert it into the XML format we see in the editor. The advantage to that is that it can also translate the XML into code.

    This of course means you can't things that the C2 visual events editor doesn't allow you to do, but for people who type faster than mouse+keyboard interaction it provides an alternative. Plus if they want more advanced features, plugin modularity provides a very solid framework.

    Where as a proper module export will create a plugin like object that can be easily shared and used by many. Including if the share module is updated.

    A Modular Object+EventSheet export would be fantastic, makes it easier to adapt examples to existing projects.

  • Wow, thanks Kyatric!

    That's a lot of information and now I'm excited to learn more.

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)