Skip to content

Releases: 4ian/GDevelop

5.4.202-beta

08 Jun 14:28
a8a8c14
Compare
Choose a tag to compare
5.4.202-beta Pre-release
Pre-release

⚠️ This is a beta release - only to be used to try new features and make feedback before a stable release in a few days.

🎮 Introducing support for Multiplayer games ("GDevelop Multiplayer" - experimental)

ℹ️ This is an experimental feature, which is still in a very early stage and will be improved fast in the short term.

GDevelop now supports building real-time multiplayer games, with:

  • Lobbies for your game and a user interface allowing players to start a new game,
  • 2 to 8 players in each lobby,
  • Built-in authentication for players to create an account and login to your game,
  • Automatic choice of the host of the game,
  • Automatic synchronization of players, depending on who is in charge of each object,
  • Automatic synchronization of the rest of the game state: game objects, variables...
Example.of.a.simple.fun.multiplayer.platformer.game.mp4

Building a multiplayer game works by using 1) the actions to display the lobbies for your game and 2) a new Multiplayer Object behavior, allowing to mark which objects are active in the game (players, projectiles, enemies, doors, etc.)

This video shows how to transform a static game with 2 objects in a multiplayer game in 1 minute:

Multiplayer_in_1_minute.mp4

Servers are usually costly to set up and maintain for multiplayer games (from tens to thousands dollars a month for successful games).
GDevelop Multiplayer is built so that it can scale from no players to multiple thousands playing to your game. Free accounts have one lobby available for the game. With a silver, gold or pro account, your game will get unlimited lobbies so your game can work with any number of players. Gold and Pro memberships will get access to extra customization and monetisation options in the future.

Examples will be included in the stable release. In the meantime, you can try these:

ℹ️ As examples are not yet accessible from the app, you need to publish them first on gd.games so that a new game is created on your account (in your game dashboard) and multiplayer is enabled for it. Otherwise, lobbies won't be accessible for the game in preview.

Read more about multiplayer game creation on this page.

💾 Simplified variable actions/conditions, local variables and extension variables.

The variable system has been considerably revised to be even more simple to use and flexible:

  • Global or scene variables of any type can now be used with a unique action and condition.
    For example, you don't need anymore to choose between an action to modify a scene or a global variable, as there is now a single action for it. In the action, both global and scene variables can be used. You also don't need to choose a different action for a number, text or boolean variable.
  • It's now required to declare your variables: add them in the global or scene variables. You can open these when editing events too, so you don't lose much time in case your forgot to create one before working on an action or condition.

Declaring variables is useful for GDevelop to allow you to use them in expressions by just writing their names, and will allow GDevelop to warn you if you misspell a variable - avoiding bugs in your game.

GDevelop also now support local variables. Those have been designed to be used the events sheet only and should be used as disposable variables, available only inside the event where you add them (and inside the sub-events).

Finally, extensions now also support variables stored inside them. These variables can live for the duration of the game (in which case they are extension global variables) or of a scene (extension scene variables). Extension creators are encouraged to use them to store data that was previously stored in scene variables.

💝 Improvements

🔍 Diagnostic report

A "diagnostic report" will now be shown when a preview is launched and GDevelop detects problems in your event sheet. It will tell you if there are missing scene variables, object variables or behaviors.

This is especially useful if you use external events shared between several scenes - in which case a mistake, like forgetting to declare a variable in a scene, can happen without being noticed immediately.

Other improvements

  • New badges to unlock 🏆: Head over to the Get Started tab in the homepage. There you'll see new badges you can unlock and earn credits with!
    • In your profile, fill out your Twitter and TikTok usernames, make sure you follow GDevelop account (thank you!) and you'll be given a few credits as a thank you.
  • Player login is now possible from a leaderboard:
    • When an anonymous score was just sent (using a player name but without a player account), the leaderboard will invite the player to create an account and claim the score.
    • A score sent from a game will automatically be attached to the logged in player (unless deactivated).
    • The broken authentication on iOS games was also fixed.
  • An icon is now shown for variables, parameters and properties in expression autocompletions.
  • Display expression errors on repeat loops
  • Add possibility to load an in-app tutorial from a local file (useful to author them).
  • Add a new guided lesson (Platformer)
  • Multi-file project folders are now cleaned at each save to avoid stale files (thanks @DavidMLPalma!)
  • Subscriptions bought with PayPal are now properly maintained until the end of the paid period
  • New "Classroom" tab in the homepage that contains useful samples resources for educational usage.
  • Add a "destroy when finished" parameter in events for opacity tweens.
  • Add a hover message on linked external events when they come from another scene.
  • Add a drop-down menu action to extract selected instances as an external layout.
  • Add reminder to save your project with a badge on the Save icon and a snackbar (can be disabled in the preferences)
  • Add asset from asset store next to the selected item in the objects list
  • Always keep events when an object is deleted
  • UI improvements
    • Improve analytics panel display
    • Redesign snackbars to be more consistent with the theme
    • Change notification badge color

🐛 Bug fixes

  • Hide game templates when searching in the asset store.
  • Various fixes for the compact instance properties editor:
    • Improve panel spacing
    • Remove Restore icon on dimension fields if the instance uses the default size.
    • When locking/unlocking multiple instances, apply same value to every instances
  • Fix local network preview url opening
  • Fix resources with empty name from being used or created
  • Fix shared properties not being add to the scene when adding a behavior from the instruction editor
  • Fix example opening not working from the example dialog
  • Fix platform icons generation for cloud projects from desktop app
  • Fix cloud project autosave crashing on Firefox versions <=125

⚙️ Extensions

Reviewed extensions

  • [New] [Shock wave effect] No longer require the Tween behavior (Thanks @Alios5!)
  • [3D flip] Allow to use animations to flip sprites
  • [Resource bar (separated units)] Fix max value action
  • [CrazyGame] Fix the action to display a video ads
    • Fix the action to display a video ads, now it return an error if the video ads isn't ready (Thanks to MartijnKuilema!)
  • [Boids Movement] Fix typo of VelocityX and VelocityY being swapped
  • [Transition] Fix the animation for zoomed layers
    • Keep the last frame at the end of the animation when "Forwoard" is chosen
  • [Fire Bullet] Minor updates and fixes (version 0.7.0)
    • Add new expression: "Time before reload finishes"
    • Prevent negative values for ammo
    • Adjust the behavior for 360 degrees firing arc to prevent two bullets from using the same angle

Community extensions

  • [InkJS] Dialogue tree with InkJS (Thanks @infokub!)
  • [Point and Orbit] Improvements:
    • Add the ability to point toward an angle (useful for gamepads)
    • Make orbit follow the same speed as rotation.
    • Minor text updates to the description
  • [Removed] [Draw shock wave effect] Use "Shock wave effect" extension instead.

🎨 Assets

Premium packs

By Nyilonelycompany:

By Luckythespacecat:

By GDevelop:

Free packs

By Kenney:

🕹 Examples

  • Simple platformer example game
    A simple platformer example game where the player can pick up coins to improve their score and die to an enemy character and falling off of platforms.
    This example features:
    • Platformer behavior
    • Smooth camera behavio...
Read more

5.3.201

26 Apr 08:40
7050829
Compare
Choose a tag to compare

✨ Instance properties panel rework

The instance properties panel of the scene editor has been reworked into a more compact and user-friendly panel. Read the documentation about this panel to learn everything that it offers.

Screenshot of the reworked instance properties panel for a 3D instance

💾 Autosave for Cloud projects

A new autosave feature is automatically enabled for Cloud projects:

  • Cloud projects are now autosaved on each game preview. Should the editor crash, it will help recover your project.
  • The saved project is stored on the device for performance reasons.

Warning
If you're using GDevelop online on a public computer, this feature saves a copy of your project in the browser storage. To make sure no one can access it, make sure to log out the editor when you leave the computer.

💝 Improvements

  • Use new icons for variable parameters in events
  • Improve user profiles by showing games, asset packs and game templates made by the user
    • The app now shows the same profiles as those you can see on gd.games
  • Disable rating of feedbacks that have no text
  • Add tutorials in the Learn page for education subscribers
  • Increase lower toolbars size and padding on mobile
  • Add a field to enter the GitHub username in the user profile

🐛 Bug fixes

  • Fix the particles emitter not to delete itself when the emission is paused
  • Fix: Remove useless horizontal scroll in tree view
  • Fix: Holding space now prevents from resize/rotating an instance (Thanks @LeonardoAlvess!)
  • Fix missing object name field in some object editors
  • Fix Sprite collision mask updating when animation frames don't share the same one
  • Fix asset pack & game template licenses being correctly purchased
    • An issue was always selecting the first license when the purchase dialog opened
  • Fix some crashes when conditions with objectList are used without any behavior
  • Fix cloud project autosave crash happening in particular situations
  • Fix undefined resources when opening cloud project autosave after a time of inactivity
  • Fix dimensions set to 0 0 0 on instance when switching layer
  • Fix Platformer "is on platform" condition that was no longer doing anything
  • Fix animation placeholder vertical centering in the Sprite object editor

⚙️ Extensions

Reviewed

  • [Recolorizer] Update: Fix the extension to work with GDevelop 5.3.198

Community

  • [Audio by filename] NEW: Play audio with an expression as filename (Thanks @Silver-Streak!)
  • [3D sprite] NEW: Animated sprite in 3D
  • [3D text] NEW: Text object in 3D
  • [WithThreeJs] Update: Fix compatibility issues with GDevelop 5.3.198 (Thanks @PANDAKO-GitHub!)

🎨 Assets

Free

🕹 Examples

  • [Recolorizer] Update: Fix the extension to work with GDevelop 5.3.198

🕹 Premium Game Templates

by GDevelop:

5.3.200

23 Apr 12:48
77bf67f
Compare
Choose a tag to compare

Warning

This version is deprecated due to the platformer condition "Is on platform?" not working.
Please use the version 5.3.201 instead.

5.3.199

17 Apr 12:31
c56ad2d
Compare
Choose a tag to compare

Warning

This version is deprecated due to a bug in the autosave feature for cloud projects on web and desktop.
Please use the version 5.3.200 instead.

5.3.198

03 Apr 16:56
4bf576a
Compare
Choose a tag to compare

Improved Community Game Feedbacks 🖊️

To improve the feedbacks given by the GDevelop community on your games published on gd.games, we're releasing a few new improvements both for players and creators.

First, as a player, you can now earn credits 🟡 when giving useful feedback to a game (published on gd.games).

  • Ensure you craft your feedback with care, as you will be eligible to earn credits, only if it helps the creator. (Checkout the exact conditions on gd.games)
  • Be careful and thoughtful: if we detect fake feedback, spam or inappropriate content, the credits will be removed and your account will be banned from giving feedback again.

image

As a game creator, you can also rate feedbacks received on your games published on gd.games:

  • When you receive a feedback on a game, go to the Game Dashboard (or check the email notification for the feedback) to rank the comment as great, good or not useful. If a comment is abusive, spammy or harmful, you can also report it as such.
  • Users making the best comments will be showcased in the leaderboard on the community page and on gd.games
  • As a game creator, you're also benefiting from rating feedbacks: games with the most rated feedbacks will be displayed in a leaderboard and on gd.games. We encourage you to take the time to rate the feedbacks you're receiving so your game becomes more visible to the community!

image

Finally, the community leaderboard, showing users with the best comments and the games with the most comments, is now visible in the Community Tab, from the homepage.

image

Yearly subscriptions are now available 🗓️

You can now subscribe to Silver, Gold and Pro memberships on a yearly basis, with up to 40% discount. Open the app to check the different memberships available and their yearly prices.

image

💝 Improvements

  • New action for Physics behavior: Set the linear velocity towards an angle (Thanks @tristanbob!)
  • Allow custom objects to use animations
  • Display questions when canceling a subscription
    • This will help the GDevelop team understand how the premium subscriptions can be improved to suit your needs
  • Improve first screen layouts by making them less cluttered
  • Display the coordinates of the center point of a Sprite even when set automatically
  • Add an action to allow disabling P2P direct connections (Thanks @arthuro555!)

🐛 Bug fixes

  • Fix expressions involving a variable (or property) of type number/string wrongly rejected when an operator like + was used after them
    • For example, "Your score is " + NumberVariable + " points" was rejected, because the second operator type was not properly inferred.
    • If something does not work in your game anymore, double check if your expressions in the events sheets are not underlined in red. Sometimes, adding ToString( or ToNumber( around it might be required.
  • Fix plugin-consent version for admob
    • Creating an iOS app with admob was not working due to a package depending on a wrong version
  • Fix collision mask of rotated Spine objects
    • Fixes rotation of Spine objects in the editor.
  • Fix missing expressions for text object

⚙️ Extensions

  • [Reviewed] [Billboard] Allow to use any 3D object
  • [Reviewed] [Sticker] Fix object positions after a size change when angle is 0
  • [Reviewed] [Parallax] Fix a shift when zooming
  • [Community] [3D model 9-patch] A 3D model with corners that don't stretch and sides that can be tiled.

🎨 Assets

  • Add new 3D free pack: Pirate Kit by Quaternius
  • Add new 3D free pack: Platformer Game Kit by Quaternius
  • Add new free music pack: New Hero In Town by AyItsMatt
  • Add new premium pixel art pack : Top Down Interior by GDevelop
  • Add new premium pack: SciFi Graphics Toolkit Vol 4 by BarelyApes
  • Fix tiles names from Top Down Interior

🕹 Examples

  • [Platformer] Use the parallax extension

🕹 Premium Game Templates

thumbnail

  • Update Online Multiplayer Template by Vegetato with latest THNK version.

🛠 Internal changes (for developers)

  • Define app theme related CSS variables at HTML body level
  • Use a CSS module for SimpleTextField, to avoid name clashes

5.3.197

03 Apr 09:12
abce34f
Compare
Choose a tag to compare

Warning

This version is deprecated due to a bug when trying to modify an object animation with its index.
Please use the version 5.3.198 instead.

5.3.196

28 Mar 14:55
5c66623
Compare
Choose a tag to compare

Warning

This version is deprecated due to a bug in some object animations not changing in-game.
Please use the version 5.3.197 instead.

5.3.195

15 Mar 09:32
7c0a7a4
Compare
Choose a tag to compare

💝 Improvements

  • Improve Guided lessons
    • Lessons have been slightly reworked overall
    • Most languages are now supported
    • A new option allows to fill a value automatically with a button, speeding up the typing part
  • Notifications about game sessions achievements will now appear in your feed
  • Allow to change text of custom objects like any text object
  • Add action to draw a fillet rectangle with Shape painter (rounded rectangle with inverted corners) (Thanks @trp02!)

🐛 Bug fixes

  • Fix broken editor panels drag'n'drop
  • Prevent games from crashing when a scene contains a wrapped text object with a big font size
  • Fix the object effect color tween action
  • Fix custom object capability changes to be applied right away
  • Fix 3D custom objects CenterZ expression and condition

⚙️ Extensions

  • [Reviewed] [Parallax] Make the parallax start with an offset of 0
    • The object can be in a layer that moves.
  • [Reviewed] [3D particle] Remove object properties for position and rotation
    • Position and rotation must be set with the instance editor or actions.
  • [Community] [WithThreeJs] Fixed an issue where warnings were not displayed - Thanks @PANDAKO-GitHub
  • [Community] [Countdown timer] Fix a typo in the restart action name - Thanks @TheGemDev
  • [Community] [3D camera shake] Shake layer cameras on 3 rotations

🕹 Premium Game Templates

New template by Vegetato: Roguelite

Developer Changelog

  • Add TypeScript type checking to JsExtension.js files (Thanks @arthuro555!)

5.3.194

08 Mar 19:01
292b23e
Compare
Choose a tag to compare

Introducing notifications 🔔

Notifications

A notifications section has been added next to your profile on the homepage.

  • Notifications will stay discreet so you can decide when to check them, whilst focusing on creating your game
  • They are useful to follow what's going on with your game and in the ecosystem: "new game feedback", "new credits dropped thanks to your subscription", "your game reached 10k plays"...

💝 Improvements

  • Credits can now be used to start a Cloud Build when your export quota is exhausted:
    • This allows you to use more cloud builds, for example to export to Android, including for users not having a subscription.
    • With a subscription, you also get free credits every month, which can be used for unlocking an extra build when needed.
  • A QRCode is now displayed when a game is published to gd.games, allowing to quickly test on a phone.
  • Allow custom objects to be used as 3D objects. Custom objects, like the 3D particle emitter, can be used as any other 3D object:
    • They have the same set of actions and conditions as other 3D objects,
    • In the scene editor, their Z position and 3D rotations can be changed.
  • Sort 3D effects to show light and fog effects first in the list of effects
  • The Get Started page was reworked to directly show recommendations and make the survey optional
  • Improve the performance of the Asset Store and reduce network usage
  • Add file to ease detection of GDevelop by tool like SteamDB or Itch

🐛 Bug fixes

  • Fix type check for GDJS and documentation generation
  • Fix Spine resources not loaded properly in games in the web-app version of GDevelop (Thanks @f0nar!)
  • Fix a crash that sometimes happens when deleting links of an object
  • Fix child creation issue for prefabs

⚙️ Extensions

  • [Reviewed] [Repeat every X seconds] Allow to use several object timers
  • [Reviewed] [Toggle switch] Fix collision mask from being 0 pixel by default
  • [Reviewed] [Toggle switch] Add an action to toggle the switch
  • [Reviewed] [Marching square] Fix "Grid value" and "Clamp" actions
  • [3D object shake] Fix a crash when the "Start to shake at the object creation" property is enabled from the 1st scene
    • Add a condition to check if the shaking is stopping

🕹 Examples

🛠 Internal changes (for developers)

  • Include PixiJS Spine pre-built files as part of the extension, like other extensions (Thanks @f0nar!)

5.3.193

08 Mar 15:40
d73ae4c
Compare
Choose a tag to compare

Warning

This version is deprecated due to a wrong display when creating a cloud build with a subscription.
Please use the version 5.3.194 instead.