Ashley's Forum Posts

  • Construct uses industry-standard JavaScript, identical to the language used in browsers or server-side tools like node.js. The language is not specific to Construct. What you learn using JS code in Construct will be highly transferrable to other places using JavaScript.

    However as with any tool or framework, there are various API methods specific to the platform, which you can find documented in the scripting section of the manual.

  • Both the IAP and ad plugins are maintained and should be up-to-date (apart from Mobile Ads not using the very latest version of the ads SDK, which AFAIK is not a problem for the time being).

    There are additional hurdles to some features - for example IAP subscriptions involves running a server to verify subscriptions. This is very difficult to support in software that's meant to run 100% client-side. Who runs the server?

    These plugins are also some of the most difficult and time-consuming plugins to develop. We're a small team with limited resources, and it's already painful the amount of time that gets sucked in to things like debugging ad issues (which often are just mistakes in events or people misconfiguring the AdMob side of things), and maintaining them to keep them up-to-date with changes. I know these addons are important to a lot of people. But they are not your only choices: there are already several third-party addons out there, some of them commercial, which provide lots of extra monetisation options - for example see addons in the Asset Store and the monetization category on the Addon Exchange. This is exactly what we intend with the addon system: to make sure you're not limited to just what we offer - anyone can make things like extra ad/monetization plugins, including covering lots of different kinds of ad services, which you can choose between.

  • Click "Learn more" and it will be permanently hidden.

  • This particular issue is a bug in Chrome on Android.

  • It looks like the Chrome origin trial for this experimental feature expired, and they haven't started a new one yet. This is why we warn that experimental features can change at any time!

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • This is not supported in Construct 2, but Construct 3 supports it with the solid collision filtering feature.

    • Post link icon

    The sprite angle is just Sprite.Orbit.Rotation + 90 when going clockwise, and Sprite.Orbit.Rotation - 90 when going counter-clockwise. It's as easy as that.

    • Post link icon

    I now got the code to work using set mirrored action -- however, quite like my earlier work around -- where I set a flipped frame, to rectify the flipped image -- the set mirrored is visually noticeable by making the sprite blink.

    That's just a normal consequence of the 'Set mirrored' action. Even if the behavior controlled that for you, it'd still work like that.

    'Set mirrored' is a shorthand for setting a negative width. The reason we don't make behaviors control the mirroring is it effectively means the behavior then controls the object size. This could then conflict with any other actions or behaviors that also aim to adjust the object size. So by leaving this to your event sheets, you remain in control of how the object size is managed.

    Behaviors are really just to simplify some basic calculations and gameplay mechanics. Most behaviors can be replicated in events, and if you need to customise them beyond what the behavior provides, you can and should use events instead. This is an intentional design decision of Construct.

  • Why are you asking for this? It should make no difference to the game if Construct uses a spritesheet or not, and using a spritesheet is more efficient.

  • It is not possible to run games on a file:/// scheme because modern browsers have such tight security restrictions for local files that it prevents the game loading.

    Just use the right exporter for the job. E.g. use the mobile app exporters for Android/iOS, the desktop exports to run locally on Windows/macOS, etc.

    • Post link icon

    The sprite is not mirrored if you use a negative rotation speed. It just uses the same angle as if it had a positive rotation speed.

    I believe this is by design as it matches other features in Construct, like the Platform behavior. If you intend to flip the direction of the sprite, you can use the 'Set mirrored' action. For example a typical platform game will use the 'Set mirrored' action as the player presses the left and right movement keys - the behavior does not control that for you.

  • Construct 2 never had any official 3D features. Perhaps you were talking about a third-party addon, which is the responsibility of the addon developer.

  • Transparency in 3D is extremely complicated. To get correct 3D rendering, you have to use a depth buffer, and depth buffers assume everything is opaque.

    It should work providing everything is drawn in back-to-front order, so adjusting Z order may make a difference in some cases. But this is a fundamental limitation of 3D rendering. This kind of thing is really just the tip of the iceberg of the incredible complexity that you get in to if you want to make a real 3D engine, which I'm keen not to go in to - the design of 3D shape is aimed at basically a 2D shape with depth, or "2.5D" as some people call it.

  • It's still possible to get seamlessly looping music by mixing the tail in to the start, which is what I assumed most people were doing. Sample-accurate playback works well for things like fast regular sounds, like in the built-in example for audio scheduling, which is what I had in mind when designing it.

    As I said it should be fine to put music tracks in the sounds folder. They are only loaded on startup if you enable "Preload sounds", so you can just turn that off, and use the other memory management features of the Audio plugin to control what's loaded and when.

  • Hierarchies should work with savegames. We've done the work to make sure relationships are preserved and I've fixed a couple of bugs relating to hierarchies and savegames in the past, so it should all be working. If it doesn't work in your case, please file an issue.