10700 Commits

Author SHA1 Message Date
BillyOutlast bcf15b2663 Merge branch '4ian:master' into master 2026-08-19 16:14:14 -04:00
BillyOutlast 34582e6d62 Merge pull request #4 from Heretek-AI/feat/byok-custom-ai-client
feat(ai): Bring Your Own Key (BYOK) custom OpenAI-compatible endpoint support
2026-08-19 16:13:49 -04:00
John Smith 11a0a72abc fix(ai): restore missing imports and clean up createAiGeneratedEvent in Generation API 2026-08-19 16:03:33 -04:00
John Smith 1e0c0a4e7e fix(ai): address code review feedback for BYOK custom AI client
- package.json: remove unused react-dnd-html5-backend and react-refresh, pin babel-plugin-macros to ^2.8.0
- CustomAIClient: exclude apiKey from localStorage persistence, normalize base URL without auto-appending /v1, bound local requests cache to 20 items, add cancel token support with axios, restrict markdown tool parsing to side-effect-free tools, return empty results for asset/resource searches
- UseGenerateEvents: use activeUserId in getAiGeneratedEvent polling
- EditorFunctions: validate batch entries before scene insertion in put2dInstances and put3dInstances, fix instance rotation with setAngle for 3D
- Preferences: fix temperature input to support 0 and clamp 0.0-1.0, exclude apiKey from localStorage
- Generation & Usage: route requests and events by local ID prefix, partition status requests, decouple BYOK checks from subscription status
- Tests: reset state in beforeEach, update tests for base URL normalization, side-effect-free tools, and empty search results
2026-08-19 16:02:19 -04:00
John Smith c3989ddd56 feat(ai): add Bring Your Own Key (BYOK) custom OpenAI-compatible endpoint support
- Add CustomAIClient with full OpenAI chat completions, reasoning/thinking extraction, tool calling, and local request caching
- Add complete tool schemas and robust argument extractors for all 29 GDevelop editor functions
- Add AI Settings tab in Preferences to configure custom endpoint URL, API Key, Model ID, temperature, and streaming
- Bypass cloud subscription/credit entitlement gates and S3 presigned URL uploads when custom endpoint is active
- Support batch instance placement in put_2d_instances / put_3d_instances and flexible parameter aliases
2026-08-19 15:27:38 -04:00
Florian Rival 4143fb8849 Add visual monkey tests (Storybook and real app), run by CIs (#8982)
Adds `newIDE/visual-tests`: tests that manipulate the editor like a user would - in a real browser, with real clicks and real drag and drops and check after every single manipulation that nothing is broken.

Only show in developer changelog
2026-08-19 19:56:23 +02:00
D8H 9eef4111a8 Fix dialogs not closing when creating a custom behavior (#8984)
Don't show in changelog
2026-08-19 19:43:33 +02:00
D8H 7582465da2 Add a "create a new behavior" button in the behavior list dialog (#8981) 2026-08-19 19:30:36 +02:00
github-actions[bot] 34c12bbcc8 [Auto PR] Update translations (#8954) 2026-08-19 17:18:38 +02:00
Florian Rival 779292204f Bump newIDE version 2026-08-19 15:22:00 +02:00
Florian Rival 339b88ac56 Robustify Sprite editor selection handling and fix crashs (#8979) 2026-08-19 13:07:31 +02:00
Florian Rival 0b26e61459 Fix crash in Sprite editor (#8977) 2026-08-19 00:06:04 +02:00
D8H e09b29c611 Navmesh characters speed is now used for physics collision (#8978)
- This results in better handling of objects moved by Navmesh pathfinding
2026-08-18 19:09:46 +02:00
Aurélien Vivet db2c2f5bbc Add a preview of color parameters in the events sheet (#8976) 2026-08-18 15:51:15 +02:00
Florian Rival 51ff0f1e7e Revert "Preview of the colors in the eventsheets" (#8975)
Reverts 4ian/GDevelop#8927
2026-08-18 15:11:05 +02:00
D8H 024a783711 Fix navmesh characters not moving when they have the 3D physics behavior as kinematics (#8973) 2026-08-18 14:51:43 +02:00
Florian Rival 2e922b60c5 Fix rapidjson build failure with GCC 15 (GenericStringRef assignment) (#8974)
Only show in developer changelog
2026-08-18 14:49:03 +02:00
D8H ab650fd68e Fix extension action and condition folders (#8958) 2026-08-18 14:48:00 +02:00
D8H ce26d8ce4f Fix navmesh characters were able to walk on top of obstacles (#8969) 2026-08-18 14:47:45 +02:00
D8H 395045dd2f Fix missing tiles with id "0" in external tile maps (#8964) 2026-08-18 14:47:24 +02:00
D8H b89ea3e3ab Fix global groups with missing scene objects always wrongly displayed in red in the event sheet (#8970) 2026-08-18 13:55:57 +02:00
D8H d533b31c59 Fix the multiplication and subtraction operators for properties (#8971) 2026-08-18 12:22:56 +02:00
Florian Rival 1a0661d104 Bump newIDE version v5.6.279 2026-08-11 22:36:28 +02:00
Florian Rival 006b103103 Include the executed source in the result when the run could not execute (#8962)
Don't show in changelog
2026-08-11 21:59:10 +02:00
Florian Rival c4717d422d Include the stored gameplay-test source (tests[*].source) in simplified project data (#8960)
Don't show in changelog
2026-08-11 21:27:33 +02:00
D8H 2e9f9dae6d Fix formatting (#8957)
Don't show in changelog
v5.6.278
2026-08-11 16:48:05 +02:00
Florian Rival 0c1801f8e0 Fix typo
Don't show in changelog
2026-08-11 16:42:23 +02:00
D8H 42931eac70 Fix a too long property name for "Simplified 3D model" (#8956)
Don't show in changelog
2026-08-11 16:00:57 +02:00
Florian Rival 56c11e4365 Bump newIDE version 2026-08-11 14:11:41 +02:00
github-actions[bot] 8e9354d143 [Auto PR] Update translations (#8952) 2026-08-11 14:02:29 +02:00
D8H 9e25cb0956 Fix pathfinding icon size (#8953)
Don't show in changelog
2026-08-11 13:59:54 +02:00
Florian Rival 2ae27faee8 Enable navmesh on the web-app and update wording
Don't show in changelog
2026-08-11 12:59:05 +02:00
Florian Rival 68cc6f432b Gameplay tests: wait through game-driven scene changes instead of throwing (#8950)
Don't show in changelog
2026-08-11 11:56:44 +02:00
Florian Rival bc506489e1 Improve labels (#8951) 2026-08-11 11:46:36 +02:00
D8H 361f6b3a87 Add experimental "navmesh-based" pathfinding behavior for 2D and 3D (#8943)
- This pathfinding works in 2D and 3D is more flexible than the "grid-based" existing pathfinding.
- For 3D models, you can optionally choose, like for 3D physics, to follow the exact mesh of the 3D model for pathfinding - allowing characters and objects to move on or around the 3D model naturally.
- It handles "crowds" of characters, which can all go to a destination avoiding each others.
2026-08-11 11:11:44 +02:00
Florian Rival 9b331ac4bc Gameplay tests: exclude loading time from the test timeout, report it as loadingMs (#8947)
Don't show in changelog
2026-08-10 22:27:18 +02:00
Florian Rival 3ed0b92ff9 Gameplay tests: label the control probe's scene restarts with their own cause (#8946)
Don't show in changelog
2026-08-10 18:53:15 +02:00
github-actions[bot] 6956cb5c39 [Auto PR] Update translations (#8912) 2026-08-10 18:03:21 +02:00
Florian Rival 1f3f360c0c Enable gameplay tests in production (#8945)
Don't show in changelog
2026-08-10 13:04:23 +02:00
ViktorVovk 1d142405e9 Enhance CLI argument parsing to support negation for boolean flags, allowing --no-<flag> syntax for known boolean options. (#8929)
Only show in developer changelog

Co-authored-by: Viktor Vovk <vvovk@playtika.com>
2026-08-09 23:55:29 +02:00
Aurélien Vivet fcbf78827b Add the focus on selection with "F" shortcut on the 2D view (#8941) 2026-08-09 23:52:53 +02:00
Florian Rival d1b3797c20 Gameplay tests: fix the inverted camera-measured pitch (#8940)
Don't show in changelog
2026-08-09 17:36:34 +02:00
Florian Rival 8cdd1c6f03 Gameplay tests: fix the camera-measured yaw, expose the aim tolerance (#8939)
Don't show in changelog
2026-08-09 16:54:35 +02:00
Florian Rival 2ba33068e9 Gameplay tests: bound the rendering duty cycle, not just the interval (#8937)
Don't show in changelog
2026-08-09 15:42:42 +02:00
Florian Rival 4cc37b43a2 Various improvements for gameplay tests (#8936)
Don't show in changelog
2026-08-09 14:29:11 +02:00
Claude ba74a65a75 Wait for the game to be fully booted before running a gameplay test
Don't show in changelog
2026-08-08 23:56:07 +02:00
Claude d0fa555e76 Write the full gameplay test results to a JSON file
Don't show in changelog
2026-08-08 22:24:21 +02:00
Florian Rival 44ba8a04ce Add experimental gameplay tests (#8926)
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/)
2026-08-08 21:22:07 +02:00
Aurélien Vivet accc32ee48 Add preview of color parameters in the event sheets (#8927) 2026-08-07 12:52:00 +02:00
Florian Rival 7902b7ffb6 Improve download-all-build-artifacts to prefer a commit hash [ci skip] (#8928)
Don't show in changelog
v5.6.277
2026-08-05 11:20:36 +02:00