Beta versions are not as thoroughly tested as stable
MIDI plugin; improved CPU profiler; tilemap brush editor improvements & more
07 January, 2025 ()
Email Me New Releases
Don't miss out on the latest and greatest new features in Construct 3
Notes
After a well-deserved break we're back with our first beta release of 2025! This release adds a new MIDI plugin, which allows you to receive MIDI input from and send MIDI output to connected MIDI devices - such as digital piano keyboards and synthesizers. This is a fun new option for creative musical uses ranging from "Piano hero" style games to arpeggiators! Take a look at the new MIDI examples demonstrating both MIDI input and MIDI output to help you get started.
Other improvements include an improved CPU profiler in the debugger - now it can split out "Plugin processing" and "Behavior processing" times per plugin or behavior, to help you identify which plugin or behavior is responsible for using the most CPU time. Array sorting has been improved with new sort modes for 2D arrays which can also now refer to the rest of the array for tie breakers when sorting by column/row. There's also a variety of updates for the tilemap brush editor including usability improvements, plus updates for the new sprite sheet importer for the Animations Editor.
Over time we sometimes have to phase out old features to keep Construct moving forward. In the long term we plan to phase out the NW.js exporter in favor of our own in-house Windows, macOS and Linux exporters, and to better signal this the NW.js exporter is now moved to a "deprecated" category at the end of the list. Additionally, as per milestone 3 of our transition to the Addon SDK v2, Construct will now start showing warnings with the 'Deprecated features' dialog when opening projects using addons made with the legacy SDK v1. Currently this is just a warning and the addons will continue to work as before for the time being.
As ever there's a batch of bug fixes and other updates detailed in the changelog below, as well as a new 'Pixel painter' scripting example. Happy testing!
Like this Release?
Let us know with a thumbs up!
Launch r421
New Features
MIDI plugin: handle MIDI input/output to connected MIDI devices
New Additions
New examples 'MIDI input', 'MIDI output', 'Pixel painter'
Debugger: CPU profiler now shows plugin/behavior processing time for individual plugins/behaviors
Array: new sort action options 'Y axis (by row)' and 'X axis (separately)'
Animations editor: a few new options to generate animations from rows or columns when importing sprite sheets
Tilemap brush editor: context menu option to set all the tiles in a brush template from a selection
Tilemap brush editor: context menu option to add multiple optional tiles to one position of a brush template
Changes
Export platform dialog: move NW.js to 'Deprecated' category
Show deprecation warning when opening a project using SDK v1 plugins/behaviors
Array: sorting by column/row uses rest of array for tie breakers
Tilemap brush editor: default to always showing set tiles in the template of a brush
Tilemap brush editor: allow resizing panes of the editor, like other similar dialogs
Tilemap brush editor: support scrolling with the space bar, middle mouse button and gesture in mobile
Show deprecation warning again if listed items change after checking 'Don't show again'
Bug Fixes
Turret behavior: sometimes did not shoot after loading object state with 'Set from JSON'
Animations editor: sprite sheet importer not showing grid properly
Animations editor: improve rendering in the sprite sheet importer on high-dpi displays
Animations editor: possible crash opening the editor to edit individual tiles (regression r417)
Move To: 'Set Angle' not working properly when following a curve
Tilemap bar: set tiles which become out of bounds as empty after changing the size of the source image
Flowcharts: duplicating a flowchart not copying the start node which led to an inconsistent state
Tilemap brush editor: show keyboard shortcuts in the tooltips of the toolbar buttons
Scripting updates
Disable 'Cannot access before initialization' and 'Value is never read' warnings due to false positives
Share Construct 3 Release r421 Now