Beta versions are not as thoroughly tested as stable

Beta versions are not as thoroughly tested as stable

Beta branch

Construct Animate r433

TypeScript coding; more Monaco improvements; debugger improvements; bug fixes

01 April, 2025 ()

Email Me New Releases

Don't miss out on the latest and greatest new features in Construct Animate

Notes

It's the start of a new release cycle, and we have a huge update for you this week! Hot on the heels of our new Monaco-based code editor, we are now pleased to launch support for TypeScript coding in Construct! This was previously supported for external editors only, but now we've been able to combine support for that with the new Monaco code editor to allow coding with TypeScript in Construct itself. This is designed to be equivalent to the JavaScript coding capabilities, including support for TypeScript in event sheets (which was not previously possible even with an external editor). You can also mix and match JavaScript and TypeScript so you don't have to decide up-front which to use for a project. That also helps with transitioning existing JavaScript projects to TypeScript, and we've added some more tools to help with that, including the ability to switch code blocks in event sheets between JS and TS, as well as switching an entire project's language (which does things like rename project files but does not change your code for you). We've also started adding lots of TypeScript coding examples in the Example Browser with more to come.

Support for TypeScript is a major new addition to Construct's coding capabilities, bringing industry-standard type checking as well as useful tooling such as precise autocomplete, while maintaining interoperability with external code editors like VS Code. There's a lot more to do on providing examples, documentation and tutorials - that will all take a while but expect to see it developing in the months following the next stable release.

Other than that this release still includes more, including improvements for the new Monaco code editor, updates for the debugger, optimized 3D rendering in WebGL, refinements to TypeScript definitions, and of course a batch of bug fixes. Happy testing!

Like this Release?

Let us know with a thumbs up!

UpvoteUpvote 6 DownvoteDownvote
Launch r433

Changelog iconNew Features

Not favoritedFavorited Favorited 0 favourites
TypeScript coding in the editor

Changelog iconNew Additions

Not favoritedFavorited Favorited 0 favourites
Example Browser: new 'Coding' filters 'Event sheets only', 'JavaScript', 'TypeScript'
Not favoritedFavorited Favorited 0 favourites
Example Browser: add TypeScript variants of many existing JavaScript example projects
Not favoritedFavorited Favorited 0 favourites
Monaco: use TypeScript definitions for JavaScript files (enables some parameter hints)
Not favoritedFavorited Favorited 0 favourites
Event sheet view: add language icon for scripts in event sheets
Not favoritedFavorited Favorited 0 favourites
Debugger: section to view hierarchy parent and children
Not favoritedFavorited Favorited 0 favourites
Debugger: ability to expand/collapse sections
Not favoritedFavorited Favorited 0 favourites
Debugger: add properties to control instance time scale
Not favoritedFavorited Favorited 0 favourites
Add system expressions ProjectID and ProjectUniqueID

Changelog iconChanges

Not favoritedFavorited Favorited 0 favourites
Remove support for CodeMirror
Not favoritedFavorited Favorited 0 favourites
Change some references to 'Script' to 'JavaScript'
Not favoritedFavorited Favorited 0 favourites
Rename scriptsInEvents.js to javaScriptInEvents.js
Not favoritedFavorited Favorited 0 favourites
Update Project Bar script/file icons
Not favoritedFavorited Favorited 0 favourites
Monaco: ensure editing scripts in event sheets matches event sheet font size
Not favoritedFavorited Favorited 0 favourites
Audio: improve handling of resuming from suspended/interrupted state

Changelog iconBug Fixes

Not favoritedFavorited Favorited 0 favourites
Possible error building spritesheets in some specific projects (regression r426)
Not favoritedFavorited Favorited 0 favourites
Tiled Background: fix precision issues with large image offsets in some cases
Not favoritedFavorited Favorited 0 favourites
Drawing Canvas: fix possible glitches drawing ellipses on some devices
Not favoritedFavorited Favorited 0 favourites
Debugger: window title did not update when used in a popup window
Not favoritedFavorited Favorited 0 favourites
Monaco: disable code folding for scripts in event sheets due to bugs
Not favoritedFavorited Favorited 0 favourites
Monaco: error using script files with certain special characters in the filename
Not favoritedFavorited Favorited 0 favourites
Monaco: crash if using more than 200 project files
Not favoritedFavorited Favorited 0 favourites
Monaco: updating scripts in events not working correctly when using files with CRLF line endings
Not favoritedFavorited Favorited 0 favourites
Timelines: fix incorrect calculations when combining size, scale and frame property tracks

Changelog iconPerformance Improvements

Not favoritedFavorited Favorited 0 favourites
Optimize 3D rendering in WebGL (when EXT_conservative_depth supported)

Changelog iconLanguage updates

Not favoritedFavorited Favorited 0 favourites
Support translation for some languages in the Monaco editor

Changelog iconScripting updates

Not favoritedFavorited Favorited 0 favourites
Add IRuntime properties projectId, projectUniqueId, tickCount
Not favoritedFavorited Favorited 0 favourites
TypeScript: in type definitions use Vec2/3/4Arr type instead of number[]
Not favoritedFavorited Favorited 0 favourites
TypeScript: missing type definition for runtime.timelineController
Not favoritedFavorited Favorited 0 favourites
TypeScript: update various other type definitions

Share Construct Animate Release r433 Now

  • 6 Comments

  • Order by
Want to leave a comment? Login or Register an account!
  • Every each release cycle this is the same thing, hopping for a great improvment, and it always a disappointment at the end.

    There are so many things to do, rather than focusing on the raw code part of the software.

    Construct's strength lies in its Events. If I want to code, the other tools are better.

    • I just checked and at least 4, and probably more, previous stable versions barely added anything related to coding. And now we have a few release cycles to finally improve scripting after so much wait and you are "disappointed" lol. SO MANY THINGS are added to construct constantly. Honestly I don't know any piece of software that is updated with such pace. And you still complain, that's just crazy to me

      Construct has a lot of great things outside of events. Thats why people use it even if they ignore events completely. And its just hard to measure how powerful scripting is. Events are very limited just by nature of them, in addition to all the old-version-support devs have to care about when updating it, limiting it even further. Scripting is miles more flexible, so ignoring that feature would've been almost criminal

      • Hello nerdError,

        I feel like you're being attacked, I'm just giving my opinion and feeling, that's all.

        I understand that you seem to adore Construct 3, to the point of saying that this Update is “the best update ever”... Hum...

        But that's ok, there is something for everyone.

        I just think there are hundreds of more important things to do before working so hard on the code part (wich is not the strongest part of Construct, if I want to code I don't know why I would prefer Construct than others engine), bugs that have been there for years, essential features that aren't there, the beginnings of a 3D engine that was abandoned after a few updates, etc...

        This doesn't change the fact that I love Construct, it's great software, but as a “lambda” user I haven't been enthusiastic about an update for... more than a year I think?

        And I think that's a shame, but it seems that others love these update, some say it's “the best update ever”, after all, so maybe this is just me.

        Load more comments (3 replies)