Releases: 4ian/GDevelop
5.6.269
💡 New 3D Spot Light and Point Light objects
3D lights can now be used with the new "3D spot light" and "3D point light" objects! You can find them in the "New Object" dialog. Check out the documentation here.
Light objects can be demanding on the GPU, especially when they cast shadows. To allow to add many lights to a scene, the engine automatically hides the lights farthest from the camera. By default, the limits are 20 visible light objects and 4 light objects casting shadows (the closest to the camera). Read more in the documentation.
💝 Improvements
- Reworked events sheet design (thanks @LuniMoon!):
- Colors adjusted to match accessibility standards,
- Refined borders around conditions/actions
- Handles of comments/groups are colored as the event itself,
- Spacing, borders and other tweaks.
- Fix default variable string value being "0" instead of empty:
- Before, variable were set to the string "0" even though displaying as empty in the list of variables.
- Projects created before 5.6.267 will keep the same behavior (0 as default value for string variables) with an option to upgrade to the new behavior in the project properties dialog. This allows previous projects to keep backward compatibility and not break. It's recommended to activate this option and check that your game continues to work as soon as you can (keep a backup in case you want to upgrade later).
- Projects created from 5.6.267 will use the new default behavior (empty as default value).
- Improve 2D lights collision calculation for better performance.
- Add expressions to access the components of forward/up/right vectors of 3D objects
- These are advanced expressions mostly useful for extensions manipulating objects in 3D space.
- Add experimental configuration to allow object resources to be loaded independently from the scene.
- This is an advanced, experimental feature which is subject to changes. It's in most cases not useful, unless you have a large game or low end devices for which controlling memory usage is important. It's mostly useful to delay loading of large custom objects.
- Objects can be configured so that its resources are not loaded when the scene is loaded. Instead, you can use an action to manually load the resources used by it. When the loading is finished (this can be checked using a condition), the object can then be created. Read the documentation to learn more.
- Be careful: if an object assets are not loaded before being created, it will be broken when displayed on screen.
- Improve premium courses structure.
- Add editor lifecycle hooks for auto running npm scripts (rhanks @ViktorVovk!). See documentation here.
- Three hooks are implemented:
onEditorReady,onPreviewStart,onPreviewEnd. - Auto-execution of hooked scripts requires user consent.
- Three hooks are implemented:
- Improve handling of devices with both a mouse and touchscreen so GDevelop can be controlled both ways in one session
- Improve desktop app updater messages and actions
- Regularly check for updates, not only on launch
- When update is downloaded, notification to restart & install
- also display version number in notification
🐛 Bug fixes
- Fix created child objects instances in custom objects being wrongly picked twice in events
- Fix potential crash in scene editor when reloading resources with custom objects
- Fix GDO import and export never finishing loading
- Fix crashes when using invalid object names in object folders
- iOS export fixes:
- Fix screen orientation not working anymore
- Fix export not working with Admob extension
- Fix file uploads (for extensions for instance) not working on some web browsers like Firefox
- Fix unloading extensions instructions properly when closing project
- This was causing actions/conditions/expressions from extensions of previous projects to be still visible in a new project, even if not available.
- Fix particle emitter gravity length action when it was 0
- Fix structure children not being shown while searching variables
- Fix tentatively crash in popped-out window when a theme is missing a color
- Multiplayer: fix player ping never updating on non-host clients
- Fix missing error on expressions with unknown objects in the event sheet
- Fix rendering of events true/false or yes/no as text when parameter not filled
- Fix hot reloading for behaviors
- Mobile usage fixes:
- Fix renaming objects on mobile weird behaviors
- starting a rename was showing the image of the element dragged
- could not press on the input to select it
- Fix events locking up when dragging on mobile
- Fix renaming objects on mobile weird behaviors
- Fix fields in Events sheet prefilling to "=" after opening a relational operator
⚙️ Extensions
- [Experimental] [Advanced 3D Features] Fixed the "Distance between objects in 3D" expression
- Thanks @PANDAKO-GitHub
- [Experimental] [Scrollbar] Add actions to help moving a layer
- [Reviewed] [Scrollbar] Fix the thumb sometimes overflowing the bar
- [Reviewed] [Fire bullet] Add 2 fire actions for 3D
- [Reviewed] [Continuous bar] Allow to use bitmap texts
- [Review] [Score counter] Allow to use bitmap texts
- Also fix the initial value not being taken into account
- [Reviewed] [3rd person camera] Fix "rotate with object" property for the "all rotation" mode
- [Playgama] Extension update
- [Poki] Add new Poki User Account methods
- [Community] [Advanced 3D Features] Added functionality to obtain angles between 3D objects:
- Added “
↗️ Check angle to 3D objects” condition - Added “
↗️ Angle to 3D objects” expression - Updated “
↔️ Check distance between two objects in 3D” - Updated “
↔️ Distance between objects in 3D”
- Added “
- Ask submitters to declare their AI usage when sending an extension for review
🎨 Assets
🕹 Examples
- New example "Scrollbar": show how to make a scroll view
🕹 Premium Game Templates
- Add a new game template: Top Down Infinite Lands by Crowbar Coder
5.6.268
5.6.267
This version had some issues with events rendering - due to fixes to try to improve Events Sheet rendering which made things worse. Download version 5.6.268 instead!
5.6.266
🪟 Experimental option to open editors in separate windows
Right clicking on a tab now displays an option to detach a tab into a separate window (both on the desktop app and the web-app).
This enables to work on events sheet, extensions or other parts of a game without switching between tabs. It's also perfect for multi-monitor displays.
-
⚠️ This is an experimental feature: some part of the editor might not be fully ready for changes to be done in another window. In case of crash or suspicious behavior when using a tab, please report the issue on the forum or Discord and re-open the editor.
Make sure to do regular backups of your game as with any experimental feature. -
Limitation: it works for Events Sheets, Extensions, Global Search, Resources but not for scene editors which must stay in the main window at this time.
💝 Improvements
- Add "Reload Project" menu action (thanks @malec-palec!)
- Make clear in Storage actions if a number or text is being written
- Display extension details side by side with the extension list on large screens
🐛 Bug fixes
- Fix potential crash during resource reloading in scene editors
- Fix save/load support for linked object relationships
- Fix extension scene properties not usable via the variable action and condition
- Fix "Add or edit variables" button opening scene variables instead of local variables
- Fix "Add or edit variables" button always creating variables for object variables
- Fix hot-reloading of global object instances
5.6.265
💝 Improvements
- Bring forward the preview window on the web-app when "Update" is clicked
- Allow extensions to set different icons for behaviors and objects
🐛 Bug fixes
- Fix many potential crashes in the scene editor
🛠 Internal changes (for developers)
- Improve logs in case of UseAfterFreeError
- Upgrade react-dnd to v14 and simplify drag-and-drop setup
- Ensure JSON files end with a new line (Thanks @opaldi!)
5.6.264
💝 Improvements
- Operators in new actions/conditions added with the context menu now automatically defaults to "Set to" or "equals"
🐛 Bug fixes
- Fix Spine objects not properly loading in the editor anymore.
- Also fix hot reloading of Spine objects in preview and the 3D editor
- Fix a crash when deleting a function folder while one of its function was selected
- Fix tentatively crashes at scene editor resize
5.6.263
💝 Improvements
- Extend the Diagnostic Report to cover events in extensions (thanks @malec-palec!)
- The Diagnostic Report previously only scanned scene events and external events for validation errors. It now also reports issues in events inside extension functions - including top-level ("free") functions, behavior functions, and object functions - detecting missing instructions and invalid parameters.
- Store-installed extensions are excluded from the scan
- Disabled ("commented out") events and their sub-events are not reported anymore (as they don't impact the game).
🐛 Bug fixes
- Fix various issues and crashes when reloading/editing resoures in or outside the editor.
- Fix the default value displayed for the related function of action with operator
- Fix BitmapText display in a custom object after editing its atlas externally
- Fix 3D physics collision condition not being triggered with 3D characters
- Fix wrong scene editor initialization displaying an error until the editor was switched
- Fix center point value of custom objects when a custom center is set
- Fix searchbar sometimes losing typed characters
- Fix a crash when installing an asset with buttons if some behaviors are missing
- Fix distorted models when their origin points are outside
- Fix profile sometimes not loading properly after log in / sign up
- Fix AI chats not loading properly if opened too quickly
- Fix 3D Model previews not loading on desktop
- Remove flagging the game as mobile on every build
- Trigger unsaved changes when AI works, only when project actually modified
🛠 Internal changes (for developers)
- Add type definitions of the in-game editor for JS events
- Fix JS event API level target.
- Add a callback after the in-game editor stepped
- Refactor extension validation scanning to use common events traversal methods
5.6.262
💝 Improvements
- Introduce Global Search, allowing to search in all Events Sheets (including extensions) (thanks @ViktorVovk!)
- Global Search can be opened using Ctrl+Shift+F (or Cmd+Shift+F). The shortcut works from any editor, even if the Global Search is already opened, allowing to quickly launch a new search.
- Click on any search result to open the corresponding events sheet with the result(s) highlighted.
- By default, extensions from the store are excluded from results. You can change this in the filters.
- Improved Extension Editor interface:
- Add support for folders to organize functions,
- Redesign the object/behavior configuration editor to be more compact,
- Redesign the function property editor to use compact fields,
- Update the tree of functions with a new set of icons,
- Add icons on parameter type selector.
- Display better certificate errors when building for iOS
- Improved Command Palette:
- Remove unused wiki search integration
- Add Ctrl/Cmd+K as a secondary shortcut to open the command palette
- Add ability to use an expression for the 'Set skin' action for Spine (thanks @ViktorVovk!)
- Make Steamworks extension accessible from the web-app version of GDevelop
- The Education plan now supports inviting existing accounts (useful to let students use their existing accounts)
- Add a new center mode "Centered on Z only" for 3D model objects
- Add a button to open the GDevelop Extensions community list in a browser. This is a first step toward having the list serving as the main directory of extensions made by the community, which could be browsed directly from the engine.
- Improve the Build mode for the AI, with planning capabilities.
- A button to stop an ongoing conversation has been added,
- Internal improvements should help the AI better understand where objects/instances are positioned.
- Add a preference to enable the display of type errors in JavaScript events
🐛 Bug fixes
- Fix a crash when removing a behavior while the behavior overriding is displayed in the side panel
- Fix native context menu wrongly shown in the web-app
- Fix potential crashes of the Objects panel
- Fix missing instructions not being selectable in Events Sheet
- Fix function tree lost of focus when pressing up or down keys
- Fix potential crashes when resizing the 2D editor
- Fix crash when deleting a layer
- Fix tooltip text not visible on light theme
- Fix wrong error on iOS certificate upload
- Fix crash when using invalid BBCode color values in BBText
- Fix regression when importing assets on newly created local project
- Fix tentatively various crashes (when deleting an object, when switching/closing projects, etc...)
- Fix crash when pinching in an image preview on mobile
- Fix embedded resource links when importing a GDO
- Fix missing spine files when exporting GDO files
- Fix double "asset" sub-folder when importing resources from a GDO
- Fix resource sub-folders when imported GDO file on Windows
- Fix missing extension dependencies in GDO files
- Fix an exception when importing a GDO file with an extension without a valid version number
- Fix number formatting to use 16 digits instead of 17
⚙️ Extensions
- [Reviewed] [InAppPurchases] Bump in app purchase plugin
- Fixes builds on latest xcode 26
- [Reviewed] [Variable copier] Copy structures between global, scene and local variables
🎨 Assets
- Update title to remove the copyright trademark for Cute Props
🕹 Premium Game Templates
- Update Restaurant Rush by Vegetato
- Fix a bug were the player skip frames on low-end devices when moving
- Add a new game template mobile compatible: Color bounce by SnowyRawrGamer
- Add a new game template: Shell Arena Combat Unleashed by Crowbar Coder
🛠 Internal changes (for developers)
- Upgrade to React 18
- Add "MemoryTracked" classes and "UseAfterFreeError"
- This will track alive/dead instances of some C++ classes and will throw a JS error in case of usage of a already destroyed object from JavaScript. This should avoid crashing/corrupting the wasm/C++ side by calling a method on an object already destroyed. Instead the exception stays on JS side, without reaching the C++ implementation.
- Add "internal instruction name" search criterion in Events Sheet search panel (thanks @ViktorVovk!)
5.6.261
This fix a bug wrongly replacing variables in the Events Sheet after editing an object (using the object editor dialog, not the properties panel). Upgrading is highly recommended!
🐛 Bug fixes
- Fix variable of objects used in events broken after opening the object editor
5.6.260
This solves crashes happening in the Events Sheet since the release from ~2 weeks ago. Upgrading is highly recommended!
💝 Improvements
- Improve events search UI with Match Case/Filters icon
- Persist properties panel scroll position for instances and objects.
🐛 Bug fixes
- Fix multiple crashes in Events Sheet
- Fix overflow in sidebar with leaderboard fields
- Fix npm commands not working with projects on a different disk on Windows (Thanks @opaldi!)
- Fix For Each events rendering when disabled and default values
⚙️ Extensions
- [Reviewed] [Score counter] Allow to use a bitmap text





