Ashley's Forum Posts

  • The HTML5 exporter in Construct 2 includes Google's V8 Javascript engine. This means both the editor and runtime parts of plugins can be written in javascript. This makes it much, much easier to extend Construct - previously you had to have relatively good knowledge of C++, which is a difficult language to learn, as well as Microsoft Visual C++ (the full version of which is expensive, and the express versions are difficult to set up for the SDK). Now you can do it on any computer in any text editor (even Notepad). I use Notepad++ myself, which is basically an advanced Notepad, and has syntax highlighting for javascript.

    Custom javascript plugins are a good substitute for Python scripts for advanced users, too. You can easily put together some custom functionality for your own project once you're familiar with the SDK.

    Plugins also only need to be written once for both the 32-bit and 64-bit versions of Construct - the V8 engine handles the differences itself.

    Location of plugins

    Plugins are stored under <install path>\exporters\html5\plugins. Each plugin has its own folder, with four files:

    edittime.js - defines everything the editor needs to know about the plugin.

    runtime.js - defines the plugin methods that run in the browser.

    common.js - prepended to both edittime.js and runtime.js, in case there's any code that is in common to both files. No plugins currently use this, it was added in anticipation of code duplication.

    PluginIcon.ico - icon file loaded by the editor to represent the plugin.

    To make a plugin, simply copy and paste another plugin's folder and start editing the files. (There's no template yet - sorry!)

    Documentation

    There is no SDK documentation right now, mainly because there's just no time to get it all written down. Also, the SDK is subject to change at any time! If you write a plugin now, be prepared to have to change it to fix it after some releases. This is due to the nature of pre-alpha software: it will change a lot, and it will break things.

    The best way to learn about the Javascript SDK is to read the source code to the other plugins. There are a couple of other javascript source files that are prepended to the plugin sources that will help you learn about the features available. These are under <install path>\exporters\html5, and are:

    common_prelude.js - prepended to both edittime scripts and runtime scripts.

    edittime_prelude.js - prepended only to edittime scripts.

    preview_prelude.js - prepended only to runtime scripts.

    The rest of the scripts in that folder are for the browser runtime. You can have a look through them if you want your plugin to hack around with the engine. Due to the nature of Javascript your plugin can modify any part of the runtime at any time. However, it is undocumented as to which parts will definitely break if you change them, and which parts can safely be modified. If you're not sure, make a forum post asking.

    Minification

    It is not necessary to minify/obfuscate your scripts. Construct 2 gives the option to minify script on export.

    Hope that helps get you started! Just be warned, the SDK may change at any time as functionality is added and changed.

  • <img src="http://www.scirra.com/images/c2cog.png"><img src="http://www.scirra.com/images/html5.png">

    Overview

    Welcome to the Construct 2 public preview! Development was previously done privately, and we're moving to public development now, for broader feedback and testing. Please get involved! If you're wondering what will happen to the old Construct, you probably haven't read this yet.

    New features in Construct 2

    There are a lot of changes and new features in C2. The big news is that it primarily exports to HTML5. The changes are outlined in this thread.

    State of development

    This public preview is effectively a pre-alpha. C2 does not yet have much capability - the demo below is very simple and it is difficult to make anything much more complicated than that. C2 is currently defined more by what it doesn't have than what it has - there are no private variables, behaviors, event groups, event includes, families, very few plugins with very few actions, conditions and expressions, no image editor, animations, and so on. If something's missing, it's just that we haven't got there yet. (0.x was around a quarter of a million lines of code.) Our approach to development has been to get to some useful functionality as quickly as possible - dropping as many features as possible along the way to make it quicker - then to fill out functionality from there. For example, event groups are useful, but most people can get by without them, so they were dropped to free up time for essential, unmissable features. Obviously they'll get added in the end, it's just a lower priority!

    However, we hope to expand C2 rapidly. You can build similar simple "toy" games, and if you're creative you can use some hacks (like storing variables in object's positions!) to make some more complicated games right now, but it's hard work!

    Some useful feedback would be the essential features that you're really struggling to get by without. I have private variables next on the agenda, since I presume it's incredibly limiting not having them.

    Download

    Forum threads will be posted to this forum for new releases. (I'm not linking to one here because it'll go out of date pretty quick!)

    Demo

    You can preview a really simple test of a HTML5 game made in the current build here. The .capx for it can be downloaded here. Note: you'll need a HTML5 compatible browser! The latest versions of Chrome, Firefox, Opera and Safari are compatible, but Internet Explorer 8 isn't. However, it also works in Internet Explorer 9 which actually has the best canvas support right now!

    Documentation & Known Issues

    A list of known issues can be found here - please don't report these as bugs, we know about them already. There is not currently any documentation - there are help links in the program, but there hasn't been any documentation written for them to link to. We'll set up a wiki at some point for the links to point to.

    Feedback & bug reports

    The whole point of this preview is to get feedback, so please let us know what you think! Whether you especially like something or especially dislike something, do let us know - both positive and negative feedback is valuable. Feel free to post threads in this forum with your thoughts, suggestions, ideas or anything else you want to say.

    Developers

    You can extend Construct 2 with Javascript! Find out more here.

    Get involved

    Even if you're not a developer, there's still loads you can do to help out with the project! We'll be posting some ideas for the community to get involved with Construct 2's development shortly.

    Thanks!

    Thanks for your support and we hope you enjoy trying out Construct 2, as limited as it may be! I'd also like to say thanks to Mary Jane who's done the new logo and our front-page C2 splashes, and Davo who's done a few bits and pieces and came up with the new design for the event sheet editor. Also, the HTML5 logo is the sort-of-official one from W3.

  • Thanks again for the responses everyone - overall it's been very positive and it's great nearly everyone's in favour of this! It's been really nice reading the responses.

    The preview will be starting very shortly. Also, the initial plan is for the main program to remain open-source.

  • Thanks for the many kind and understanding messages everyone

    A commercial option is something we've thought about, but there will probably always be a free version of some description.

    There have been a lot of questions about C2, but the easiest way to answer all the questions is: we'll start a public preview this weekend, and post lots more info, and you can see for yourself then! That should also help anyone wondering where their current projects are going to go. (Remember it's in pre-alpha stage so is some time away from being full-featured.)

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Dear Construct community,

    You may have noticed our front page banner changed recently. Construct 2 has been under private development for some time now. I haven't said anything before, because it needs this whole spiel to go with it, but C2 is at a point where it's ready for public testing. It's at a very, very early stage (sort of pre-alpha) and is primitive compared to Construct 0.x, but C2 can just about do something vaguely useful, so it's a good time to get everyone on board with suggestions, bug reports and ideas. That way, we can all try and make it as good as possible.

    The thing is, 0.x is technically poorly designed. It probably can never be patched up to a "1.0" standard - or if we did, it would just be a name, and not be as stable as users expect from a 1.0 release. We basically learnt to program from 0.x, and obviously when we started we were less experienced, and the first decisions you make when writing a program are the most important. A lot of those decisions were made wrong. As a result, people regularly go through experiences like Jonas Kyratzes describes in this article: frustrating, slow, and with lots of obscure bugs making development a nightmare.

    If we released "Construct 1.0", it would still have these problems. The poor design makes it far more work to improve than just to start again, entirely from scratch. So the time has come when Construct 0.x should be put in to "maintenance mode". This means occasional bug fixes but we won't be aiming to reach 1.0. There probably also will not be a practical way to import 0.x projects to C2, for both technical reasons, and the limited time available to devs (especially when you also have a 12,000 word university report to write!).

    This is painful, because of the years of effort the developers have put in personally, and especially for the thousands of people who visit the site every day, expressing an interest in Construct 0.x, and especially those who have invested so much time and effort building large projects, helping other forum users, writing tutorials and documentations and so on. However, the prospect of adding something to 0.x like exporting to a new platform is... daunting. It basically can't be done, so the longer we wait, the less useful 0.x becomes. C2, on the other hand, has a totally modular export system, which means we can adapt it to new technologies for years to come - and that's just for starters on improvements. To prevent 0.x going completely stale, I will grant SVN access to any interested developers, and can lend a hand with releases, but I will be focusing on C2. Also, there should be a new build of 0.x shortly, thanks to Davo and R0j0Hound.

    Please remember, everyone who ever worked on Construct 0.x have only been bedroom programmers: I'm still on a full-time university course myself, and everyone else who contributed were in similar situations. We try to look professional, but there is no office, company, income, employees or regular structure at all, like most of our competitors! We do it for the love of it. Construct 0.x was written by ordinary people in their spare time with other significant commitments.

    I also want to assure you that we learnt a huge amount from Construct 0.x, and we won't be making the same mistakes again. 0.x serves excellently as a prototype, with valuable feedback on what people like, don't like, how they use it, what works, and what doesn't work. All of this feeds in to C2 to make it even more awesome. There are a lot of exciting new features based on its new design. We're already doing a lot better. Also, it's an absolutely huge project, so I guess I have to admit I'm a little bit mad to even try. But why not? What would a program twice as good as Construct look like? What if it could even change the world, just a little?

    It's been a lot of fun having the forum here and working on Construct. However, we want to move on. We apologize to those of you with large projects and significant time investments in 0.x. We're thankful for what you've done, and we realize that we may be letting you down, at least for the moment. But in the long run the experience we've gained will allow us to make a better program for you, which will be faster, more powerful, more stable, easier to use, and easier to add new features to.

    So although this may be bad news for your project, I'm asking your support and cooperation for the development of Construct 2 - or, at least, that you understand of who's behind the program you use, and why we made this decision.

    Thanks everyone,

    Ashley

  • Arsonide: I can't find an account named 'Arsonide' on the wiki, did you log in to it first?

  • Breadcrumb navigation? There used to be one at the bottom of the forum, but the forum upgrade recently got rid of it. I don't know why. My experience with phpBB is if it does something weird for no particular reason, let it be, for the preservation of sanities... is it that big a problem?

  • You do not have permission to view this post

  • You do not have permission to view this post

  • Thanks for the picture R0J0, that sums it up nicely. For the record, it used to be that it wouldn't be pickable until the next tick - a fix a few versions ago made it the next top level event, but due to the design of the engine, it's very tricky to make it available in subevents (where Destroy is in your diagram).

  • You do not have permission to view this post

  • How about Chapter 31: Simulation of the conscious human mind - in just 20 events?

  • You do not have permission to view this post

  • There are no failed signups piling up either - guess the new captcha is working nicely

  • Woah...

    Well, it's cool you're a fan of Linux and Mac (but I'm not sure I can tell what you think of Mac), but you should try to see things from our point of view. We can hit 90%+ of the market by targeting Windows, for about one third of the effort of targeting Windows, Linux and Mac. That tradeoff is particularly good when, like me, you're doing a full-time university course, and code in my spare time round the edges.