Construct 3 lets you make your own game from your browser - no coding required! Create your first game from scratch with Construct 3's free game engine.
Learn to build your own games with hundreds of game maker tutorials. Construct 3 also comes bundled with lots of templates and example game files.
Create games rapidly and prototype new game ideas quickly. No tool lets you create games faster and easier than Construct 3. You currently have Javascript disabled, if you want to start building your own games with Construct 3 you'll need to enable it then refresh this page!
What's New in r403
Release r403 was published on 20 Aug, 2024
After a week off we're back to our regular schedule, and we have another packed beta release for you this week! First up is we've added support for UglifyJS as an alternative JavaScript minification tool. Minifying script was always previously done with Google's Closure Compiler, which has served us well for many years, but is no longer well maintained and is holding back the ability to use modern JavaScript features. UglifyJS looks like the better option these days, and our aim is to ultimately remove support for Closure Compiler. So please give the new UglifyJS minify option a try and let us know if you run in to any problems with it.
Other new additions include the ability to set a destination layer with the Recreate initial objects action, which allows for making better use of dynamic layers - for example you can use it to fill a newly added layer with the content placed on a layer on a different layout. The Text object now has a resolution mode setting, which is similar to the same thing with Drawing Canvas: by default it uses automatic resolution scaling, but it can now be set to a fixed resolution, which can be more suitable in 3D and help avoid performance degradation when continually scaling lots of text. After some discussion on the forum, the Audio object has also gained a new NormalizedVolume expression, which is suitable for converting a volume slider labelled 0-100 into a correspinding dB value.
Another significant improvement is that lossy images can now be spritesheeted. Previously all lossy images were exported separately, as it was originally designed for large opaque background images in JPEG format (which does not support transparency). Modern lossy formats like WebP and AVIF have full support for transparency and surprisingly good quality, so this provides a new option for significantly reducing your project's download size: you can set everything to lossy compression, export with a format like AVIF, and get a much smaller download size while still having full support for spitesheets and transparency. This is quite an interesting and novel development, so we plan to blog about it in more detail in future.
Finally as ever there's a batch of bug fixes, some other performance optimizations, and two new examples. Happy testing!