Skip to content

Releases: 4ian/GDevelop

5.1.147

06 Oct 13:58
78cbe48
Compare
Choose a tag to compare

This release is GDevelop 5.1. There are no major changes compared to the last version, but we've written a big blog post to recap all major new features, improvements and major bugfixes that were done over the last 8 months.
Happy game development and thanks for using GDevelop! 🎉

💝 Improvements

  • Re-organize extensions categories.

⚙️ Extensions, 🎨 assets and 🕹 examples

  • [New community extension] Extra Inventory Functions
    Adds extra functions for working with the inventory extension. Thanks @DwubbersDaCoder!
  • [Reviewed][Extended Variables] Fix types in action parameters
  • [Reviewed] [Sway] Use Sway if you have multiple instances of the same object that you would like to move uniquely like grass swaying in the breeze. It could also be used for flames, smoke, snakes, ghosts etc. (Thanks @arthuro555 and @thatbubblemaker)
  • New community extension: Dynamic Water by @Alios5
    Allow the user to create dynamic realistic water objects.
  • Updated the community extension Flip Gravity by @VegeTato
    Added a new action to the extension: Reset the gravity back to normal to a selected object.
  • Add new Footsteps audio files in the asset store (Thanks @NoxSound!)
  • Added Player Authentication to the Leaderboard example game.

🐛 Bug fixes

  • Fix UI glitch where deleting a point of a Sprite was not showing the proper point as deleted
  • Fix: Add parameter to file reading actions to remove CR characters from files

    ⚠️ If you had encountered an issue linked to this and changed your events to fix it, you might need to update your project and set this new parameter to "No"

5.0.146

30 Sep 17:07
Compare
Choose a tag to compare

✨ New features

Authenticate players in your game by allowing them to login and submit their scores (experimental)

This allows you to give a way to your players to register and login. It works anywhere (Android, iOS, desktop, web games) and is super easy to use:

Learn everything about authenticating your players and submit scores on this wiki page.

This is a early preview, new features related to players will be available in the future! As usual, your feedback is welcome on the forum!

A big thank you to @fannieyan for the ground work on this feature, early prototypes and implementation.

💝 Improvements

  • Add context menu items to manipulate the view on the scene editor
    • Return to initial position (view matches the game resolution)
    • Fit zoom to selected instances
    • Fit zoom to the whole scene
    • Select all instances of an object on the scene (in the context menu of an object)
  • Add new categories for extensions.
  • Add help buttons in the expression editor and the extension details dialog.
  • Add invert condition shortcut (J key by default - configurable in your preferences).
  • Add subsections for extensions categories in the Wiki
    • Also show the same warning message as shown in the editor on wiki pages of extensions from the community list.

⚙️ Extensions, 🎨 assets and 🕹 examples

  • New extension: PlatformLedgeGrabber
    • Make platformer characters grab platforms ledges within reach automatically.
  • New community extension: Add "Sound volume based on distance"
    • This extension allow you to set the volume of any sound channel based on distance between 2 objects.
    • Description improved by @VegeTato!
  • New extension: Get Properties Data (Thanks @UlisesFreitas!)
    Add multiple expressions to get the value from the game properties directly in-game.
  • New community extension: "Trampoline Platform" (thanks @VegeTato!)
    This extension will convert any object to a trampoline that a platformer character can bounce on.
  • [Screen Wrap] Update to support objects with the physics behavior (thanks @Entr0py404!)
  • [CameraShake] Fix compatibility with the extension version prior to 3.0.0
  • [Marching Squares] Fix a preview crash when the "Must only draw what is on the screen" property was checked
  • [Choose a random value] Add a link to "Array Tools" extension in the description.
  • [Record] Fix extension not working for web games
  • New asset pack: Xelu Controller & Keyboard Prompts (packaged by @Entr0py404)
  • Add example links in some extensions description.

🐛 Bug fixes

  • Ensure required behavior properties can't be hidden.
  • Fix a bug that prevented converting a variable to JSON when one previously tried to access an out-of-index child in a variable array.
  • Fix extension description links on the Wiki.
  • Fix various memory leaks when using the app.

5.0.145

22 Sep 13:18
@D8H D8H
a29e7aa
Compare
Choose a tag to compare

This is a bug fix release for the previous version - check all the new features in version 5.0.143!

🐛 Bug fixes

  • Fix tiles rotation that was no longer applied in tile maps

⚙️ Extensions, 🎨 assets and 🕹 examples

  • Fix InAppPurchase extension to work with latest requirements from Google Play

5.0.144

21 Sep 09:38
50465ba
Compare
Choose a tag to compare

This is a bug fix release for the previous version - check all the new features in version 5.0.143!

🐛 Bug fixes

  • Fix properties on the scene of the Physics behavior not working ("shared data" of behaviors not handled properly)

⚙️ Extensions, 🎨 assets and 🕹 examples

  • Health: added shield, armor, and timers.
    Manage health points including a protective shield and armor. Health can be assigned to players, enemies, NPCs, or even inanimate objects such as breaking doors and mining rocks.

    It supports damage calculation in a specific order (Incoming Damage -> Is Damage Cooldown active? -> Chance to Dodge -> Flat Damage Reduction -> Percent Damage Reduction -> Damage to Shield -> Damage to Health), automatic regeneration of health and shield with customisable rate, damage cooldown, maximum or infinite health, allow healing above maximum health, permanent or temporary shield, blocking of excess damage or not when the shield is broken, delay before regeneration.

    To learn more about this super powerful extension, read the documentation on its wiki page.

  • A new "Health with shield" example was added to demonstrate the usage of this extension. Try it online.

5.0.143

19 Sep 12:39
e51c73b
Compare
Choose a tag to compare

💝 Improvements

🌄 Cloud projects now support uploading your own files

We added support for uploading your own files from your device for Cloud projects on the web-app:

  • You can now upload your own files when working on the web-app, when your project is saved as a Cloud project.
  • This means the web-app can be used without limits to build any game you could build on the desktop app.

ℹ️ Support for Cloud projects on the desktop app will be available soon. You will also be able to save an existing project on your computer as a cloud project, or vice versa.

🗞 Newsletter and user accounts

  • Add the possibility to receive the GDevelop newsletter from the User Profile and on the Signup dialog.
    • We encourage everyone to check this to receive the newsletter where we'll present new features but also showcase community members, games or community events!
  • Improve Signup and Edit profile dialogs to show when a username is not available.

✨ User experience improvements

  • Add announcements and news in the homepage community tab so that it's easy to follow the news from the community.
    • "Urgent" announcements will also be displayed at the top of the home page (which can be dismissed).
  • Change the name of exports to be based on the name and version of the game (available for english character set only at the moment).
  • Improve SVG display in Resource Store for dark themes
  • Add a link in the new version dialog to open the release notes on GitHub, to benefit from browser automatic translations.
  • Rename object variables expression names to differentiate between number and text variables (thanks @BWpanda!)
  • Add missing translations for some messages shown when renaming an object.
  • Display a super thin or invisible scrollbars for the toolbar and tabs, according to the browser.
  • Improve display of black icons on dark themes

Updated Premium plans for cloud services

We updated the free and premium subscriptions: each tier benefits from Cloud Projects, Online Leaderboards, Automated Builds, Player Feedback, Game Analytics and more.
Read the blog post for a full description of the updates and online services unlocked by the updated (and the existing) plans.

Other improvements

  • Improve game templates visibility:
    • Add 2 new actions in the Desktop menu "Create an empty project" and "Create a project from a template".
    • Templates are now displayed at the top of the Build section.
    • The button "Create a project" in the Build section now directly opens a blank project.
  • Remove the limit of 16k tiles in a tilemap.
    • This includes an upgrade to the PixiJS tilemap extension to version 3.2.2 (thanks @blurymind)
  • Add "Educational" tag for games on Liluo.io.
  • We now distribute versions of GDevelop for macOS for Apple Silicon and for arm64 builds of Linux, which can be downloaded from the website as with other versions.
  • Add a new expression: Pi number (3.1415...)

⚙️ Extensions, 🎨 assets, and 🕹 examples

New Extensions

Reviewed extensions

  • Camera impulse
    It can be used to simulate earthquakes or impacts

Community extensions

  • Clock:
    This extension converts a text object to Time/Date/Month (Thanks @DaddyPluM)
  • UpdateChecker:
    This extension checks if the version of the game on Liluo.io is different from the current game version. This allows for a basic update check for PC and mobile builds of games. (Thanks @arthuro555)
  • Pushable/Pullable Box:
    This extension allows the user to convert an object to a pushable or/and pullable box. This new extension replaces the now out-of-date "Pushable Box" extension (Thanks @VegeTato)
  • Time Detector:
    This extension by @MudkipWorld detects the current:
    • Time of the day.
    • Day of the week.
    • Month of the year.
  • Record movements:
    This extension allows the user to record objects' movements and recall them back to make a reverse time mechanic (Thanks @VegeTato)
  • References:
    This extension allows to make a variable that is a reference to another (Thanks arthuro555)
  • ObjectPickingTools:
    This extension adds actions and conditions for more fine grained control over object picking (Thanks arthuro555)
  • Geolocation extension:
    This extension allows to get precise geolocation data from the player (Thanks arthuro555)
  • Flip Gravity:
    This extension allow to flip platformer character gravity upside down (Thanks @VegeTato)

Extensions updates

  • Sprite Based Lighting:
    Follow extension's best practices and prevent unexpected behaviors (Thanks @VegeTato)
  • ToogleSwitch, AutoTyping, CursorType, ObjectSpaner:
    Fix useless "Change" prefixes in actions full name
  • Make it rain:
    Updated description (Thanks @VegeTato)
  • ScreenShaking:
    Use noise based shaking, fix an issue when scrolling and add multi-layer features.
  • Draggable Slider:
    • Fixed SetMinValue and SetMaxValue (descriptions were swapped)
    • Add expressions for more properties and some actions:
      • Expressions:
        • Length of track
        • Thickness of track
        • Height of thumb
      • Actions:
        • Change the opacity of halo when pressed or hovered
  • BoidsMovement:
    Fix a crash at a scene change

New asset packs

  • Void Collection by FoozleCC (Packaged by @Entr0py404, Thanks!)
  • Skullcup by Wesxdz (Packaged by @Entr0py404, Thanks!)
  • Lucid Icon pack by Leo Red (Thanks @Midhil457)

Examples:

  • New game example Plinko
    The Plinko example showcases the physics behavior and how it along with other tools, like the object shake extension, can create a fun and juicy game.
    It also features:
    • Physics engine 2.0
    • Object shake
    • Particles
    • Simple scoring system
    • Leaderboard
    • Text input object(For leaderboard name)
  • Ball Cup Boom (v1.0.3): Modified vibration to 25 ms

🐛 Bug fixes

  • Fix tile maps layer filtering
  • Fix browser automatic translations crashing the app
  • Update "Submit New Extension" link to redirect to new submission format
  • Fix useless "Change" prefix in some actions name
  • Fix the action to tween the number of a scene variable
  • Fix the wording of the layer field when the layer is not optional (though it has a default value: the base layer)
  • Fix points coordinates inputs not losing focus when moving points on the preview
  • Fix Safari/iOS unable to load some images in the app
  • Fix parameter to specify the P2P port not being an expression (Thanks @arthuro555!)
  • Fix the name of the "End Opacity" condition of the particle emitters
  • Fix tile maps with rectangular tiles

This also contains bug fixes for tilemaps and for the parameter editor dialog compared to version 5.0.141 and 5.0.142

5.0.142

16 Sep 12:46
2f2a89f
Compare
Choose a tag to compare
5.0.142 Pre-release
Pre-release

Warning
Please use GDevelop 5.0.143. This version is missing a few important bug fixes.

5.0.141

14 Sep 14:18
@D8H D8H
c6c5864
Compare
Choose a tag to compare
5.0.141 Pre-release
Pre-release

Warning
Please use GDevelop 5.0.143. This version is missing a few important bug fixes.

5.0.140

17 Aug 12:38
a47ec51
Compare
Choose a tag to compare

✨ New features

Cloud projects: save and load projects directly on your GDevelop account

In order to make the life easier for users of the web-app, you can now save your project online and retrieve it from any device.

Cloud projects

  • Projects saved online can be edited from your phone, your computer, your tablet or any device able to run editor.gdevelop.io
  • In the near future, you'll be able to load these projects in the desktop version of GDevelop too.
  • For now, you can't import your own resources in the web-app but this will be also available in the near future, so you can create entire games on editor.gdevelop.io and edit them from anywhere.

To reduce risks of abuse and reduce server costs, you can store up to 10 cloud projects in your account. Subscribers can store up to 50 projects (Indie plan) or 100 projects (Pro plan).

You can now subscribe to GDevelop premium accounts with PayPal

You can now get a subscription, support GDevelop development and get more one-click online exports every day, using PayPal (or using credit cards as previously).

💝 Improvements

  • Add support for the Android 12+ splashscreen icon (add it in the "Icons and thumbnails" of your game).
  • Improve a lot the performance of the physics engine:
    • Internally, we replaced the Box2D library with the WebAssembly version.
    • It fixes a crash of the old Box2D library when a lot of objects with the Physics2 behavior were created.
    • The same version of Box2d (2.3.1) is still used so there should not be any behavior change.
  • Add a checkbox to seal an instance (make it impossible to select it on the canvas), in the instances editor.
  • Minimize in game/real cursor flickering when showing/hiding the cursor (Thanks @dos1!)
  • Add tween actions for camera zoom and camera rotation (Thanks @arthuro555!)
  • Homepage improvements:
    • Improve the project list with more context actions and better display for local projects
    • Rework the "Play" section to display Liluo games.
  • Add actions to change the tile map dimensions.
  • Display errors directly on the event sheet when a bad object is chosen for a parameter of an action or a condition.
  • Improve search and replace in event sheet
    • Fix a bug that hangs GDevelop when replacing with an empty search text
    • Allow to replace with an empty string to mimic a "Delete search text" feature
  • Add monetization tab in game dashboard:
    • Allow to enable or disable ads on the game page if published on Liluo.io
    • In the future, games that generate enough revenue will be able to opt-in into "revenue share", so that as a creator you can start earning from your game sessions.
    • This also this allows to maintain free publishing on Liluo.io for all.

⚙️ Extensions, 🎨 assets and 🕹 examples

Extensions:

New:

  • Crypto Api: (Note: this has nothing related with crypto currency) (Thanks @jposeyjr!)
    • Add Random Integer In Range
    • Add Random Float In Range
      These new expressions provides a more random number than Math.random() which is what the built-in functions use.
      That randomness does come at a cost of performance so be aware of your usage of this.
  • PinchGesture: Add an extension to move the camera or objects with pinching gestures.
  • Chat Bubbles: An extension for creating dynamic chat bubbles. (Thanks @planktonfun!)
  • Record: Allows recording game footage, and saving the clip on the player's computer. (Thanks @Add00!)
  • Voice Recognition API (Thanks @planktonfun!)
  • Sprite based lightining: An extension to make a tiled light effect. (Thanks @Astr0Cookie!)

Update:

  • SmoothCamera: Add the action "Move the camera closer" to fix the 1-frame delay when moving or jumping.
  • Health: Allow changing Max health and an expression to return Max Health.
  • Checkbox extension: Includes updates based on Draggable Slider extension.
  • ValuesOfMultipleObjects: Added size expressions.
    • Width (min/max/average)
    • Height (min/max/average)
  • Advanced jump extension: (Thanks @shadow00dev!)
    • The air jump behavior lets platformer characters jump in mid-air.
    • The wall jump behavior lets platformer characters jump and slide against walls.
    • The horizontal dash behavior makes platformer characters dash horizontally.
    • The dive dash behavior makes platformer characters dash toward the floor.
  • MarchingSquares: The fill action now change the field the same way as other drawing tools do.
  • MakeItRain: Update to new author format. (Thanks @VegeTato!)

Examples:

  • New game template: Ball Cup Boom
    • Sort 4 balls of the same color into a cup to make it explode.
    • Complete all 10 levels to complete the game and climb the leaderboards!
    • This game was inspired by "Sort It 3D".
  • New game template: Spherez
    • Shoot the blocks before they touch the ground. Aim carefully to earn extra balls and power-ups. What is the highest level that can you reach on the leaderboard?
  • Add a new example for the Newgrounds API extension (Thanks @planktonfun)
  • Add an example for the Chat Bubble extension (Thanks @planktonfun)
  • Add a voice recognition example (Thanks @planktonfun!)
  • [Not-a-Vania] Reworked to use a tile map collision mask object
  • [platformer-with-tilemap] Reworked to use a tile map collision mask object
  • [platformer-with-tilemap] Change the camera system by a linear camera following the hero.
  • [PlatformerPainter] Upgrade the marching square extension to have better collisions.
  • [QIX] Upgrade the marching square extension to fix a collision issue.

🐛 Bug fixes

  • Upgrade the Android SDK used to build games, so you can publish games using the latest "API level" required by Google on the Play Store.
    • The AdMob extension was also upgraded to include the "AD_ID" permission now required by Android 13.
  • Lots of Tilemap related fixes:
    • Fix handling of Tilemaps with invalid resources
    • Fix handling of Tilemaps having empty tiles margins
    • Show place-holders for tile map with invalid resources in the instances editor.
    • Give a better default name to tile map collision mask objects.
    • Add a border around the tile map collision mask objects in the instance editor.
    • Fix the loading of tile map atlases that was aborted when the image contains unused pixels at the right or bottom
    • Fix the tile map collision mask debug rendering that wasn't refreshed when there was no collision condition
    • Fix the collision mask of rotated tiles that were sometimes misplaced.
  • Fix raycast condition not working properly on objects with multiple hitboxes
  • Fix orange outline sometimes appearing around the scene editor canvas
  • Fix exported WebManifest file having a syntax error when the game description has line breaks
  • Fix json resource removed from project resources although it is used in event
  • Fix starters shown at the bottom of the example list on Firefox
  • Fix Asset cards text color to be visible on light theme
  • Fix Add condition/action buttons overflowing outside of their column on small screens
  • Fix display of the examples/starters on small screens
  • Fix layer names in drop-down lists were translated even though they are defined by users
  • Fix manual export URLs crashing the app on web
  • Fix rendering of the home page on Safari
  • Add the unit (milliseconds) in the Tween behavior action parameters
  • Fix colors of expanded/collapsed arrows on event sheet. (Thanks @BWpanda!)
  • Fix the extensions search bar that was only using the first 30 tags
  • Clarify the name of the actions to resume a paused sound/music

🛠 Internal changes (for developers)

  • Add type definitions on the Physics2 extension
  • Add various improvements to the P2P extension (Thanks @arthuro555!)
    • Updated PeerJS.
    • Fixes for Safari.
    • Improved typings.
    • New default TURN server.
    • Add a JavaScript API to get access to the raw connection.
      This allows to send custom messages from JavaScript. This allows to use a binary protocol from JavaScript.
    • Use Map instead of JavaScript objects in places where it makes sense (more performant and less error prone).
    • Avoid making a redundant get for every connection on the map containing the connections.

5.0.139

19 Jul 08:11
0ffc88a
Compare
Choose a tag to compare

💝 Improvements

The homepage is dead, long live the homepage

homepage

The editor homepage has been revamped:

  • New "Get Started" section, to guide newcomers on where to start with GDevelop
  • New "Build" section, the entry point for your projects
  • New "Learn" section, the entry point to tutorials and future help tools
    • Tutorials have been categorized so that you can easily watch tutorials adapted to your level
  • New "Play" section, the entry point for all games created with GDevelop
  • New "Community" section, the entry point to stay informed with the GDevelop world

UI changes that came along with it:

  • Add a button to start (or redo) the onboarding on the homepage (only for the web app)
    • Also add new languages FR, PT & ES
  • Adapt themes' colors for better contrast across the app
  • Add a new "Rosé Pine" theme (Code Editor & UI Theme)

Get insights about how your games perform

Two new features can allow you to better understand how your games are doing:

  • You can now open your game for feedbacks from the players
    Feedback tab
    • A banner will appear on your game and build pages on Liluo.io, allowing the player to rate your game/build and leave comments on it.
      Feedback banner
    • A new Feedbacks tab was added in the games dashboard that allows you to see and process the feedbacks given to your game/build.
  • In the Analytics tab, you can now visualize in-depth data about how your players play your game. It will help you understand how well a game is doing on several aspects:
    • The popularity (number of players)
    • The player engagement (how long the game is played)
      Analytics
      Note that players' data are fully anonymized.

And other changes that come with it:

  • Slight rework of the game dashboard
  • Allow to specify a game build name and delete old builds.

Other changes

  • Tile maps collisions:
    • The collision mask is now automatically read from the tile maps exported by Tiled 1.9+.
    • Several collision masks can be used for instance to have platforms and ladders.
    • Take a look at the wiki for more details https://wiki.gdevelop.io/gdevelop5/objects/tilemap
  • Leaderboards:
    • Replace leaderboards when a user opens a game template
    • Allow to display up to 50 leaderboard entries in Liluo/in-game
  • Extension editor improvements:
    • Automatically select and rename new behaviors or functions in the extension editor
    • Add a duplicate action in the functions lists contextual menu.
    • Select the element that just got copy-pasted on behaviors and functions lists
  • Add a button, in the Profile, to manage online the subscription to GDevelop services
    This allows to easily update a payment method or switch to another plan/cancel (though this can already be done from the interface)
  • Add an option in the Resources editor to preload audio files in the cache without decoding (Thanks @dos1!)
    • This is helpful to load the audio files when the game loads (so even if the internet connection is lost, they will be available in the "browser cache") but without decoding them in memory (which could make too much work for low-end devices, resulting in crashes)
  • Make radian or degree explicit in descriptions for angles
  • Automatically open a scene when a project is opened
  • Add an option to wait for a network request action to end before running other actions (Thanks @arthuro555!)
    • In the future, there will be other actions where you can optionally wait for their tasks to be finished before running the rest of the actions. It makes logic easier and more straightforward to express in events.
    • This is similar to the Wait action, except that it's optional.
  • Add a toggle to display community extensions
    • Community extensions are extensions made by a community member, but which are not reviewed by the GDevelop extension team.
      They can be useful, but also need to be carefully reviewed if you use some (inspect them or reach out to their author in case of doubt).
    • If you want to submit an extension, see the GitHub repository of community extensions.
  • Avoid bad expression warnings in the console when using force actions without changing the force type
  • Don't show objects already in a group in the selector to add a new object to this group (Thanks @arthuro555!)
  • Adding actions to tween the value of a scene variable or a layer camera position (Thanks @arthuro555!)
    • Like tweens added on objects, these tweens can be manipulated: paused, resumed or stopped.

⚙️ Extensions, 🎨 assets, and 🕹 examples

⚙️ Extensions

  • Add Pause when focus lost, a community extension. Pauses the game when the focus of the window or tab is lost. Continues when focus is regained. (Thanks @telstarboy!)
  • Add Dialog Box, a community extension. Helps to create dialogue boxes. (Thanks @pandako!)
  • Add Animation system, a community extension. Which is a collection of pre-made animations. (Thanks @VegeTato!)
  • Add Make it rain, a community extension. (Thanks @VegeTato!)
  • Add Pushable Box, a community extension. (Thanks @VegeTato!)
  • Change Yandex, remove old non-working extension with a community extension. The old one was not fully working, and unused in favor of the new one by the Russian community. (Thanks @fedoric!)
  • Add Text to Speech, an official extension. Allows to use the system's text to speech capabilities. (Thanks @beaufordt!)
  • Add a voice recognition example, a community extension. (Thanks @planktonfun!)
  • Fix Camera Shake wrongly affecting the base layer rotation even if another layer was specified (thanks @kinglogixgames!)

🎨 Assets

  • New assets are in the store: Isometric City Pack, by @buggystudio
  • Fix some animations having empty sprites
  • Update 16x16 dungeon tileset thumbnail

🕹 Examples

  • New game templates:
    • Spherez: Shoot the blocks before they touch the ground. Earn extra balls and destroy the blocks by aiming carefully.
    • Absorbus: Propel your object to absorb smaller objects, but avoid larger objects or they will absorb you!
  • Parking Jam: Remove the unused effect on layers.
  • New examples:
    • Fire bullet.
    • Add a new Voice recognition example (Thanks @planktonfun!)
  • Changed Flappy Bird to Tappy Planes
    • Swapped out all of the art assets to Kenney's CC0 1.0 Universal "Tappy Plane" assets, and made new sound assets.
    • Added a leaderboard.
    • Fixed the opening scene transition.
    • Changed how the game over screen is displayed.
  • Update and modernize the procedural example (Thanks @Add00!)
  • Update README.md with instructions on preview and thumbnail images

Changes for extension creators

  • Make the Auto-PR system more robust
    • Many edge cases are now handled when submitting extensions, each with a custom message sent back by the bot to ensure the submitter knows exactly what's going on
    • Updated to the latest versions of the GitHub actions
    • Only check the extension that has been submitted, not every other, for faster runs
    • Extract the zip programmatically with a lot of restrictions to prevent using weird zip path shenanigans to put files at places they are not supposed to
    • Unit tests for all of this
      tl;dr A better experience when submitting the extension.
  • Update readme to explain extensions new review process
  • Allow to specify the first extensions to display in the editor
  • Add a CODEOWNERS file for extensions
  • Tweak the JS validator rules (for automated checks of extensions)
  • Add tiers to extensions
    • The "reviewed" tier will be reviewed extensions, as now.
    • The "community" tier will be extensions that can be authored/pushed/updated freely by community members (after safety checks).

🐛 Bug fixes

  • Fix grammar for the description of the Platform behavior (Thanks @BWpanda!)
  • Fix typos: replace 'Musics' with 'Music' (Thanks @BWpanda!)
  • Fix Physics2 behavior contact detection
    • Make it possible to activate and reactivate physics 2 behavior
    • Fix behavior for objects modified or destroyed during events life cycle
    • Make Physics2 Collision condition valid in any step of behavior life cycles

🛠 Internal changes (for developers)

  • Avoid warnings in the console during preview/export by cleaning old C++ include files
  • Allow the web app to use relative resources if found when the project is opened from a public URL
    • For example, this can be useful to open a desktop project stored on a public space like GitHub (using the "raw" raw.githubusercontent.com/... URLs given by GitHub)

5.0.138

21 Jun 16:15
81ef111
Compare
Choose a tag to compare

💝 Improvements

  • Update all dark themes and rework the light theme entirely to have a modern look and feel.
    image

  • Improve/fix the drag'n'drop to allow again horizontal movements to quickly move an event.

  • Add mass and moment of inertia expressions for the Physics behavior.

  • Suggest all expression types in autocompletions of expressions

    • Also automatically convert number expressions to text (using ToString()) when needed.
  • Add WebManifest to exported web games (Thanks @arthuro555!)

    • This allows a game hosted on a website to have a proper icon and orientation when a shortcut to it is added to the home screen on Android or iOS.
  • No longer count pauses (when the tab is hidden) for the players session duration statistics

If you missed it, the asset store has been improved in the last few versions. A big thank you to everyone in the community that gave a bit of their time to take part into some user research chats and explained their experience with GDevelop and the asset store: Doomsday, HelperMuzan, Melon, Breed, TheBeeDev, ArticMan, Hussinali121, dmendz, teo, jumpingj, Jurfix, THEspectre, Crimson Dan x (Kurimuzondan), VegeTato, Entropy.

⚙️ Extensions, 🎨 assets and 🕹 examples

  • [BoidsMovement] Add an extension to simulates flocks movement (thanks @planktonfun!)
  • [PixelPerfectMovement] Fix: top-down characters moving on a grid no longer go side way after colliding with an obstacle.
  • [CursorMovement] Fix conditions were always returning true when called a 2nd time.
  • Add a new pack: Pixel Platformer by Wishforge Games (packaged by @Entr0py404)
  • Removed the "simple checkpoints" custom extension from the Platformer example.
  • Add an example to show how to simulate a flock movement with the "Boids movement" extension (thanks @planktonfun!)
  • [TopDownGridMovement] Add obstacles.
  • Add "The Conviction of Gun Dude Mobile".
    A mobile version of the desktop game of the same name, with dual joysticks to be played on a touchscreen and an adapted difficulty!
  • Fire Bullet extension can now shoot multiple bullets at once
    • Add the ability to shoot multiple bullets at once
    • Cooldown: Time between shots (seconds)
    • Bullet Quantity: Number of bullets shot at once
    • Firing Arc: Range of angles that bullets will shoot. Bullets are evenly spread within this range.
    • Angle Variance: Each bullet angle will be randomized in this range (degrees)
    • Add expressions for new settings
    • Rotate bullet is now a parameter (enabled by default)
    • Changed rotate bullet from a parameter to a property
  • Add paid packs by Andre Holtz
  • Cleaning and fixes for the platformer example
    • Replaced custom "simple smooth camera" extension with official "smooth camera" extension
    • Removed the "player start" object
    • Changed the first checkpoint spawn to be where the player object is at beginning of scene
    • Fixed the broken climb animation

🐛 Bug fixes

  • Fix the physics engine contacts/collisions between objects not detected when they happened shortly between frames.
  • Fix clicks on checkboxes that are far from the label on the same line in the editor.
  • Fix asset thumbnail sometimes having a wrong size when navigating the Asset store.
  • Fix category of "Error of last save attempt" leaderboard expression.