Code?

  • I'm sorry if I keep posting questions that has been answered, I just couldn't find it.

    I understand Construct has pride in being a no-code-needed product but is there any information if Construct will ever get a way of coding directly? I know my programmer is a bit bummed out about that and keeps wishing for a window to type his madness into. I'm glad there's a plugin feature but it'd be nice to have raw code for the codenuts.

    So, is there any plans for this, will there ever be code?

  • I hope not.

  • Why? If there is code you could have more freedom in creating if you have someone in the team that knows how to. For me, I'm an artist another friend is using construct as it is now and then I have a guy who knows a lot of programming.

    It'd just open more doors to creating stuff.

    edit: I'm not saying code should be some mandatory feature that you have to use.. It'd just be nice if it was there for people who wants it.

  • Construct 2 was made with simplicity in mind.. That's why you see places like colleges, universities using C2 to teach students game design on an easier level. You can create third party plugins if you want to "open the doors" to more things.. I recommend your team use Unity instead if you want to work in a "coding" mindset.

  • Yes but why not both?

  • The main problem with hand coding is having to write routines to parse the input. Considering C2 was never initially written with this in mind, I can't imagine what horrors would be involved in adding such functionality.

    I'd much rather Ashley continued to add and enhance the current system.

  • Hm I see. That's a bummer.

    Well that kind of answers my initial question, thanks.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • There are keyboard shortcuts, with them you can type a lot of events.

  • I'd much rather Ashley continued to add and enhance the current system.

    The Truth.

  • If you really "need" to add code, there is the javascript SDK that allows you to add plugins/behaviors.

    But truth to be told, most "already coders" that come to C2 just don't take the time to learn C2's ways and see that their programming knowledge will allow them to take advantage of the event system quicker than a "non-coder".

    Make your coder friend study the manual and the tutorials and realize that THERE IS NO NEED to code, the event system IS coding.

  • the current eventsystem is amazing, the thing to look for is to make the input of events as smooth as possible, the autocomplete list are a great example of that, another one would be to be able to create variables on the spot(like if you forgot to add a variable to an object you just add it there and then) or another would be adding plugins (like mouseinput) without the need to go to the leveleditor.

    but it could go even further and rethink the entire popup selection thing to like a full autocomplete input. It could actually be some kind of expert mode (or experimental mode :) )

  • Well, given that internally all the visual events are being turned into XML anyway, it would take a different kind of parser that could parse a construct text grammar and translate back/forth into XML. Add intellisense, color syntax, highlighting and it would be pretty nifty. A text interpreter is not something that would have to be coded from scratch, there are plenty of libraries that could be leveraged. I'm not saying it's a trivial task, but it's doable.

    Most of the people I know who come from a coding background and use Construct's main complaint isn't that "they can't do everything with scripting system that they could with coding", it's that (to their eyes), it's that a traditional coding environment makes it easier to trace code flow and keep things organized. And I get that; even with zooming out/etc, an entire screenful of Construct 2 events would probably shrink to a mere paragraph of script text.

    It also makes things a little more resilient, copying/cutting/pasting text is a just naturally less prone to potential weird failures that might happen when moving events between event sheets. Having text coding would also potentially make cutting and pasting between Construct projects easier as well, not to mention stock text editor stuff like Find, Find/Replace, etc.

    That being said, the keyboard control has come a long way though occasionally you'll lose input focus in the event sheet and have to click on something to bring it back so you can continue using the keyboard.

    Even though I'd certainly appreciate the ability to script using code, given the amount of feature-work Scirra has on its to-do list at this time I tend to lean towards making something like this low priority.

  • In a sense.. there's not been anything meaningful advance on coding since the C was created. Everything later(C++, Java, JS) has been just libraries and syntactic sugar atop that. Actually, with some additions, games like this could well be made with Lisp.    <img src="smileys/smiley23.gif" border="0" align="middle" />

    IMHO the claim that one 'does not write code' with Construct is more marketing than anything real. Since all in all programming is just making bunch of instructions for computer to do what's asked to... And in the end the 'language' ain't the most important factor.

    I know some people who still do games/demos etc with computers like C64 and Vic20... So it's matter of perspective I'd say.

    What really matter is that tool fits the need, it does what's supposed to do and produces decent results.

  • But truth to be told, most "already coders" that come to C2 just don't take the time to learn C2's ways and see that their programming knowledge will allow them to take advantage of the event system quicker than a "non-coder".

    Make your coder friend study the manual and the tutorials and realize that THERE IS NO NEED to code, the event system IS coding.

    This is The Truth (with bot T capital letter).

    I'm a coder, and an old school one too.

    My first project in C2 was full of arrays, matrix, for loops, bunch of variables just because I was using it just as another programming language, not as the instrument it was meant to be.

    More and more I was going in developing it, I kept asking "is it possible there isn't a better way to do it with behaviours/plugins?" and the 99% of the time the answer was "yes".

    I've never finished the project in the way I thought at the start and I'm completely rewriting it in a more "Construct's way".

    The only thing I keep using as coder are Event sheets as they were classes in C# but that's just my forma mentis and a way to keep thing in order ( this post clarifies what I mean, if you're interested in it).

  • Jeff Skyrunner:

    As a long time C# veteran I'm not sure I agree with the comparison of event sheets to classes. If anything, the closest thing to a class that construct has would be a sprite object (with some set of member properties) that acts as a Construct container for any complex class members (such as Array, Dictionary, etc) coupled with On create/On Destroy events to represent object instantiation and disposal. Inheritance is sort of mimicked by the introduction of Families.

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