A gameplay test plays a game: it presses keys, moves the mouse, touches the screen, then checks that what should happen actually happens. For example, if the coin is collected, the score goes up, the enemy hurts the player... Tests run in a preview of the game, usually much faster than real time. [Read more about them on this page](https://wiki.gdevelop.io/gdevelop5/interface/gameplay-tests/)
GDevelop identifiers can contain any unicode character except the ones
reserved by the expressions grammar (GrammarTerminals.h), but the
read_events_source object-name filter used an ASCII [A-Za-z0-9_] word
boundary: objects named like "Héros" could match or miss incorrectly.
Don't show in changelog
Cover combinations of
- expression, variable parameter, legacy variable parameter
- variables from a depth of 1 to 3
- declared or undeclared variable at each level
Some cases were already covered and don't appear in the diff.
Don't show in changelog
- When activated, the JSON of the project is saved with properties always in alphabetical order. Fields in events are also never omitted.
- The preference is controlled via `gdevelop-settings.yaml` (already read
by the IDE on project open):
```yaml
# gdevelop-settings.yaml
preferences:
canonicalEventSerialization: true
```
Only show in developer changelog
Co-authored-by: Viktor Vovk <vvovk@playtika.com>
Complex expressions and formula will now be shown using multiple colors, like the rest of events. This allows to identify objects, numbers, strings in a long formula.
- 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 done (this can be checked using a condition), the object can then be created.
Be careful: if an object assets are not loaded, it will be broken when displayed on screen.
* Before, this was set as 0 even though displaying as empty in the
variablesList.
* Projects created before 5.6.267 will keep the same behavior (0 as default value for string variables) with an option to move to the new behavior (empty as default value) in the project properties dialog.
* Projects created from 5.6.267 will use the new default behavior (empty as default value)
https://github.com/user-attachments/assets/0d885c70-b68a-431f-8dcb-08e4e193b8a1