-
Latest Version
GameMaker Studio 2024.13.0.190 LATEST
-
Review by
-
Operating System
Windows 7 64 / Windows 8 64 / Windows 10 64 / Windows 11
-
User Rating
Click to vote -
Author / Product
-
Filename
GameMaker-Installer-2024.13.0.190.exe
With no barriers to entry and powerful functionality, the tool is the ultimate 2D development environment! Making game development accessible to everyone means taking away the barriers to getting started.
Using intuitive ‘Drag and Drop’ development environment you can have your game up and running in a matter of minutes without ever having to write any code! GameMaker’s built-in language (GML) helps you learn to program as you go and not jump in at the deep end of coding.
- Completely free, no credit card required
- Make your first game with our free tutorials
- Upload your games to GX.games
Bring your games to life with 2D physics, create a thriving player base with cross-platform network play, and create stunning visual effects using shaders.
Highlights
Backward Compatible
Import your GameMaker: Studio projects directly into Studio 2 and have them ready to run in a matter of minutes.
YoYo Account
It uses your YoYo Account to provide a single login for all your game making needs.
Tutorials
With integrated tutorials, you can have your learning materials docked directly in your workspace.
Laptop Mode
For all users who develop on laptops, an efficient working process has been developed that does not interfere with development.
Skinning
Customize your development environment by choosing from predefined skins or creating your own.
Docking
Organize your workspace by docking your tool windows where you want them.
Object Editor
With a unique structure and workflow, it has never been easier to manage the objects within your game.
Script Editor
With tabs and the ability to split the editor, you can work with multiple files without having a window for each.
Superior Workflow
Drag and Drop like never before, create a game you want without ever writing any code.
Library
Choose what you need from an extensive library of events and actions to sculpt the game you desire.
Code Preview
Learn how to program by viewing the code behind DnD™ actions and take your games to the next level.
Language
Based on the C programming language, GML gives you all the power of other programming languages while being easy to learn.
Layers
Take control of how objects are ordered within your rooms and draw sprites directly without the need for an object.
Tile Brushes
Make repetition a breeze by creating a group of tiles and drawing them directly to the room.
Inheritance
Add variety quickly to your projects by sharing common code and resources.
Brush Based Editing
Create a brush from any section of your image simply and efficiently with an amazing new editor.
Animation Support
Bring your sprites to life with a touch of motion and take your games to the next level.
Extensions
Extend the power of Game Maker by incorporating third-party libraries and SDKs.
Marketplace
The one-stop-shop for developers to access all of the amazing game making resources created by members of the Game Maker community.
Features
- Drag-and-Drop Interface: Ideal for beginners, GameMaker Studio’s drag-and-drop system allows users to design games without any prior coding knowledge.
- GameMaker Language (GML): For more advanced users, GML offers a powerful scripting language to customize game logic and mechanics.
- Cross-Platform Export: Create games for multiple platforms including Windows, macOS, Linux, HTML5, iOS, Android, and more.
- Integrated Development Environment (IDE): An all-in-one environment for creating, testing, and deploying games.
- Marketplace: Access a wide range of assets, extensions, and plugins from the Marketplace.
- Room Editor: Design game levels and environments with an intuitive room editor.
- Sprite Editor: Create and animate characters, objects, and backgrounds directly within the software.
- Sound Mixer: Integrate and manage audio effects and background music seamlessly.
- Collision System: Implement complex collision and interaction systems between game objects.
- Debugger: Identify and fix issues in your game code with an in-built debugging tool.
Workspace: A customizable area where users can organize their workflow and manage multiple tasks simultaneously.
Object Editor: Easily add, modify, and control game objects and their properties.
Code Editor: A robust editor with syntax highlighting, code completion, and other features to facilitate writing GML scripts.
Resources Tree: Organize and access all game assets, including sprites, sounds, scripts, and objects.
Output Window: Monitor real-time output and debug information during game testing.
Installation and Setup
- Download: Visit the official website and download the installer for your operating system.
- Install: Run the installer and follow the on-screen instructions to complete the installation process.
- Activate: Upon first launch, you’ll need to sign in with a YoYo Games account. Free and paid licenses are available.
- Configure: Set up your development environment by choosing your preferred language and layout settings.
- Create a Project: Start a new project by selecting a template or a blank project.
- Add Assets: Use the sprite editor to create game graphics and animations.
- Design Levels: Utilize the room editor to build game levels and environments.
- Program Logic: Implement game mechanics and behaviors using the drag-and-drop interface or GML scripts.
- Test: Run your game within the IDE to identify and fix bugs.
- Export: Once satisfied, export your game to the desired platform using the cross-platform export feature.
Can I make 3D games with GameMaker Studio?
Yes, while GameMaker Studio is primarily a 2D game engine, it does support basic 3D graphics and functions. However, it may not be as advanced as other dedicated 3D game engines.
Is GameMaker Studio suitable for beginners?
Absolutely. The drag-and-drop interface is perfect for beginners, and there are extensive tutorials and resources available to help new users get started.
What programming languages does GameMaker Studio use?
It uses its own scripting language called GameMaker Language (GML), which is tailored for game development.
Can I publish games to multiple platforms with GameMaker Studio?
Yes, it allows you to export your games to various platforms, including Windows, macOS, Linux, HTML5, iOS, and Android, among others.
Alternatives
Unity: A popular game development engine known for its flexibility and strong 3D capabilities. It offers a comprehensive free version and a large community.
Unreal Engine: Another robust game engine, especially powerful for 3D game development. It is free to use with a royalty-based revenue model.
Construct 3: A user-friendly 2D game engine that also offers a drag-and-drop interface, ideal for beginners.
Godot: An open-source game engine that supports both 2D and 3D game development, known for its ease of use and active community.
RPG Maker: Tailored for creating role-playing games, this software provides specialized tools and a simple interface for RPG development.
Pricing
FREE
- Non-Commercial Licence
- GX.games Export
- Desktop Exports
- Web Export
- Mobile Exports
- Commercial Licence
- GX.games Export
- Desktop Exports
- Web Export
- Mobile Exports
- Commercial Licence
- GX.games Export
- Desktop Exports
- Web Export
- Mobile Exports
- Console Exports
- OS: Windows 10/11
- Processor: Intel i5 or equivalent
- RAM: 8 GB
- Graphics: Dedicated GPU with 2 GB VRAM
- Storage: SSD with 5 GB available space
- User-friendly drag-and-drop interface
- Powerful scripting with GML
- Extensive cross-platform support
- Rich asset library and marketplace
- Comprehensive documentation and tutorials
- Limited 3D capabilities compared to other engines
- Some features locked behind higher-tier licenses
- Performance can be slower with complex projects
- Initial learning curve for GML
What's new in this version:
IDE Features And Changes:
UI Layers:
- Building on the flexpanels feature introduced in 2024.11 runtimes, you can now create dedicated UI layers inside the Room Editor and lay out all of your assets in a visual manner
- These layers are global and persist throughout rooms, so you only need to set up a layer once and then you can use it in whichever rooms require it
- The layers scale to fit your game windows and because they are in UI space they will be shown above any black bar areas surrounding your game’s application_surface
- Assets on UI Layers can then be manipulated in-game using the existing runtime functions - and a new function has been added so that you can query if a given asset is present on a UI Layer or not
- Note that the issue above also has downloadable examples for a range of different UIs you might wish to make in your own game (front end with highlighted text, linked pause menus, settings menus, level-select screens, and more), so do check out these sample projects and see how this powerful new feature can be used
Marketplace Integration Has Been Removed:
- Be aware that there is now no way of managing your Marketplace library and instead the Marketplace website will simply allow you to download the files for the assets you have aceess to
- Similarly, uploading new versions of assets you have published is all now done via your web browser, not inside GameMaker itself
- Accordingly, you will find that all relevant menu options are either removed or now simply open the correct URL in your OS’s default browser
Also be aware of these “extra” bits that are to do with Marketplace functionality, but appear elsewhere in the IDE:
- Startup: GM no longer downloads your asset manifest, which stops a Mac IDE crash when a VPN blocks traffic to the Marketplace and causes a “403 Forbidden” error
- Asset Browser: Removed “Add Existing from My Library”
- “Project Health” Checks For Missing Sprites In Your Project:
- Added a dialog to warn when GameMaker finds a Sprite’s source images have been removed on disk, but the Sprite is still in the Asset Browser and part of your project
- This has always appeared as a red X image inside GameMaker, but this quiet warning could lead to confusion where in-game you might not easily realise why a sprite is not being drawn - now, you will be much more clearly advised when opening the project exactly which files are missing
- Note that it’s only Sprites which are checked in this way
Prefab Library:
- You can now enable the new Prefab Library and import our intitial batch of Prefabs into your projects. This feature was previously only avalable in the Beta releases
- Prefabs are complete, standalone projects which help you quickly add more content into your games (like characters, sound packs, or gameplay mechanics/libraries, etc.)
- You can drag prefabs from your library and drop them into the Room/Sequence/Object Editor to link them to your project and use them right away - using this method the source files for the prefab are not added to your project’s own source, but instead are pulled in during builds and added into your game packages
- Or you can right-click the item and duplicate something from a prefab collection into your project - using this method copies the prefab source into your own project’s source and breaks the link to the original prefab, stopping it from using any later versions, but allowing you to now edit the files in your project
- Open the Library inside your project by clicking “Windows > Prefab Library” and this will open the new bottom dock panel
- Prefabs are then downloaded (once) using its Package Manager integration and then added to any of your projects thereafter from your library
- For more on this feature, see
- SVG Support Introduced:
- This release now supports SVG graphics in the IDE and in-game. This feature was previously only available in the Beta releases
- You can now import and preview some SVG images, then this will carry through to your game at build time
- See these issues for details -
Game Options Default Value Changes:
- Currently all product/display names are set as “Created in Gamemaker” which, while true, is not a great name for your game.
- This also leads to issues if you do not update this value in Game Options before releasing your content - for example, GX.Games uploads will fail as the name is already taken
- Now, it’s the initial name of your project that is used when creating your Game Options the first time (so if you later rename your project you should still edit these values yourself)
- Also, be aware that the default value of Windows’ “Interpolate colours between pixels” setting is now ON, so it matches what the manual has long said and is the same as all the other targets
- Code Editor 2 and Feather Fixes:
- This is just a small and not-sorted-at-all sample of the bigger changes or most-commonly-reported issues - there are a lot of other fixes for CE2 listed in the changelist, so please see the link higher up if you need information on a specific issue
- Added a Preference for Ctrl+K to always add comment characters at the start of the top line, not at current selection location
- New files are now highlighted when creating them inside large projects
- Renaming a shader makes it not save until closed and reopened
- Auto-indent no longer adds unwanted indents to user-made snippets containing newlines
- Snippets now convert any tabs in their whitespace according to your Preferences setting for the tab character
- Sticky headers no longer disappear when scrolling up in the editor
- Keyword.Operator colour value in Preferences is now applied correctly in the editor (note that you do need to click “Reset To Defaults” to pick up this fix)
- Can now open GML Visual events from the Inspector panel
- “Automatically reload changed files” setting now works correctly
- Fixed issues with ncorrect syntax highlighting and no autocomplete after converting from visual to GML
- Jumping to a code line via bookmark, ctrl + z, or feather message now accounts for sticky headers
- Bookmark visuals are no longer lost when closing and opening a script or event
- Enabling ligatures no longer makes code wider
- Markdown in tooltips has now been made much more functional
- Stopped GM going unstable when scrolling the events for certain Objects in the Scrolling Shooter template
- Changes are now auto-saved when you switch to another Object
- Important: If you have changed your Code Editor 2 theme Preferences in previous versions, be aware you may encounter
- Startup Changes To When The Matching Runtime Is Required When Newer Runtimes Are Installed Also:
- Going forward, GameMaker will no longer force installing the matching runtime for an IDE release if a newer runtime is active and which matches at least the first 2 parts of the version number, but has a higher third/fourth part
- This means if you install this GameMaker IDE and allow it to get its matching runtime 730, whenever we release a newer 2024.1300.0.731+ runtime you could install that one and set it active instead, then (if you wished) delete runtime 730 manually to save disk space
- Again, to be clear, the newer runtime must be from the same “family” as the IDE version - having a “2024.1400” runtime (or whatever) will still not be accepted by this 2024.1300 IDE and it would download its matching runtime again for you
- Inspector Support For The “Extension Options” Panel In Extensions:
- You can now inspect the options for your extensions
- Only the options have been implemented, as these are the per-project settings that the users of an extension will need to set quickly and easily
- If you’re the developer of an extension, this also means your own values are safely still in the Extension Editor and less likely to be accidentally modified
Bug Reporter Tweaks:
- Made the private attachments section an actual boxed/grouped section, so we can avoid misinterpretations
- If you’re at all unsure how GameMaker sends reports to us, what’s private and what’s public, and how to find the known issues and other information that can help you fix any install issues straight away, please click the link on how to report a bug at the top of the bug-reporter window, as this FAQ has everything you need
- Also now sends the GMRT package version when submitting a GMRT Bug report, rather than sending the GMS2 runtime version
- Note: If you’re seeing ‘Unauthorised’ errors, please sign out and in again inside GameMaker and this will likely fix straight away -
“Default Audio Device” Preference Has Been Removed:
- The preference to pick a default audio device in GameMaker has been removed
- The IDE follows the system’s preference
Debugger Fixes:
- If an event only has a single line of code, “step into function” no longer occasionally steps through multiple instances at once
- “layer” Locals variable now shows its correct value, rather than always showing as 0
- Flexpanel node references can now be expanded as a struct (this will display non-default values only)
- Macros cause the wrong line to be selected when stepping into/over lines which use them
- Hotkeys are now separate plugins:
- Hotkeys/Keyboard Shortcuts are now being delivered as individual plugins
- Your Hotkeys are now also localised to the language you set in GameMaker
- There are no other changes to the user experience and the plugins are still getting installed during GameMaker’s installation process
Other IDE Changes To Be Aware Of:
- Asset Browser: Now immediately shows the expected new assets even if Prefab Library “Duplicate to project” operation or “Add Existing” needed to create a new group to put those assets in
- Building Projects: [GX.games] Fixed that uploading a game to the GXC could fail with an “Incorrect Data” message if your session token had not refreshed correctly - now, GM detects if the token failed to refresh properly and will show a message that you need to sign out and in again to fix
- Code Editor: [Mac/Ubu IDE] Keyboard shortcuts now work reliably when using specific non-Roman language keyboard layouts
- Code Editor: Deprecated the constants for unsupported devices “os_uwp”, “os_psvita”, “os_ps3”, “os_win8native”, “os_winphone”, “os_xboxone”
- Configurations: GPU Texture Compression options are now saved and compiled correctly even when using any config other than “Default”
- Code Editor 1: Now prioritises existing code workspaces when reopening a Script in the Asset Browser, rather than opening a chained window
- Device Manager: [HTML5] Now able to detect new versions of Opera GX
- File Watcher: Deleting a recently-pasted instance which has creation code no longer triggers the watcher
- Game Options: [iOS] Removed the check that icons need an alpha channel, as Apple no longer requires this
- Go To: GM no longer crashes when pressing Ctrl+T if CE2 is also enabled
- Image Editor: Added the current/total frame numbers to the status bar text
- Image Editor: Grid controls no longer allow clickthrough and affecting things underneath
- Inspector: [Fonts] Fixed regenerating fonts from the Inspector
- Inspector: Audio group values are now changed when changing type to “Compressed - Streamed” for multiple assets at once
- Licensing: GM no longer crashes when Legacy dialog attempts to sign-in using a blank password field
- Local Package Integration: Can now create working packages again
- Package Manager: No longer forgets the JavaScript package is installed each time the IDE is restarted
- Project Import: GM no longer crashes when extracting a .zip with non-ascii characters in the filename
- Project Load: Fixed an issue with importing projects could cause GM to lock up, revealed when importing some .yyzs made with 2024.1300 Betas into 2024.11 (note that the fix here is to prevent the situation happening in 2024.13 and future versions - 2024.11 will not be fixed)
- Project Load: If one project fails and then a second one loads correctly, the menu/tool bars disable lots of items
- Project Save: Deleting an Object used as a “following” in a viewport no longer corrupts the project, making it give compile and load errors
- ProjectTool: Exports now take the current IDE’s resource versioning into consideration and so can no longer generate an export which is too new for that IDE to load in again
- Redefine Keys: [Mac IDE] Mapping “Start/End of Document” to Command-Up/Down keys now works
- Room Editor: Asset/Background layers correctly show their content if using a custom skin and there is a Path layer in that room
- Room Editor: Fix to “Don’t show it next time” Preference when deleting a room layer
- Room Editor: GM no longer goes unstable when copy/pasting or duplicating instances and then pressing Ctrl-Z to undo the changes
- Sound Editor: GameMaker doesn’t play an audio file from Audacity
- Source Control: Fixed creating and committing to projects using the word “commit” in the comment
- Sprite Editor: ToggleCollisionTypeOptions() errors can cause the editor window to fail to open
- Stability: GM no longer locks some inputs after installing runtimes from Target Manager if focus was changed to a different IDE window during the install process
- Tile Set Editor: GM no longer crashes when using an external editor to enlarge a sprite used by a tileset
- UI/UX: [Mac IDE] Option+Right Arrow now positions the caret at the end of the current word, not at the start of the next word, so it’s more consistent with macOS norms
Runtime Features And Changes:
- Important: GMRT Users: Please be aware 2024.13 is incompatible with GMRT 0.15.0 and older - you will need to install newer 0.16.0+ packages in Package Manager before any projects will build using GMRT
Android - Change To Minimum Game Options Values During Builds:
- Important: The ‘Compile SDK’ minimum value is now 34 - anything lower than this will cause your build to fail with a suitable message why
- Please do check this is correct when opening/building existing projects created in older IDEs!
- Android - Support For Controlling Gradle Versions And New Graphics Settings:
- The Gradle Version and Gradle Plugin Version required during a build are now editable by you and can be set per-project - there are new text fields in Game Options-> Android-> General for this
- You can now enable Edge-to-Edge display and also allow control of the display layout via new settings in Game Options-> Android-> Graphics
- For more (including a sample project showing this functionality), see
- Building Projects: Add support for calling batch files during a Clean operation
- You can now create your own batch and shell scripts for pre_clean_step.bat (or pre_clean_step.sh) AND post_clean_step.bat (or post_clean_step.sh)
- These pre-post scripts can also be added to your extensions to add similar functionality there
Optimised Calling Of Functions:
- The compiler will now optimise function calls when the script can be resolved directly
- Note that this does require a change in how you need to code your functions which use inheritance and then later get overridden inside child objects (e.g, functionA calls functionB, and in your child object you override functionB before calling functionA) as you now need to add “self.” before functionA calls functionB
- A small project which shows the code changes required before-and-after can be found attached to this comment on
- Also be aware of this other optimisation change:
- Building Projects: [YYC] Calls to any function that returns the current “self”, “other” and “global” are now optimised out
Changes To Noone Being Returned By Some Functions:
- When reviewing the below bug report we found several other places where “noone” was being passed back as the number -4 rather than an instance handle
- In-Game: layer_instance_get_instance() returns “-4” when the element is not an instance, should be an invalid instance handle (“ref instance -4”)
- These have all been changed to return an instance reference of -4
- This may affect any code you have in your projects where you are checking for is_number() or is_handle() rather then looking for “noone”
- Note that most of the locations changed were to do with collision code - where noone is passed back when nothing is found
- Strings for handles to an asset now use the name of the asset rather than the number:
- This is a change primarily because the name is stable between versions, when the ID number is not; however, it is also now much easier to read the strings and know which asset is being referred-to
- handle_parse() Changes/Fixes:
- This function now allows passing in your asset/function names (and) as part of the string rather than typing numbers in
- It also now supports GameMaker’s built-in function names
- For invalid handles, it also now returns either “undefined” or “ref -1”, depending on how/why the handle is invalid
Create Physics Shapes At Runtime:
- sprite_get_convex_hull() can now be used to generate the points of a convex hull for the given sprite
- You supply a sprite index (which can be an asset added through the Asset Browser or a sprite added at runtime) and a precision value, and the function returns an array of reals defining the points of the convex hull
Added Functions For Automating Debug Inputs:
- Added debug_input_record(), debug_input_save(), and debug_input_playback() functions to allow for developer test-automation
- Note that these are only intended for use when testing your own games - not as part of released games
Using keywords as variables:
- It is now possible to use keywords (e.g., “then”, “do”) as variable names
- Please note that both Feather and the Code Editors will still mark those as errors, but the project will build and run with no problems
[GX.games] Added Tilt Support:
- Device gyro functionality is now supported on Android and iOS mobile devices
- Be aware this is a permission you must request from the player, and so the previously Android-only os_request_permission() has now been extended to work on more platforms
- For more (including a sample project showing this functionality), see
- [GX.games] Added Camera Support
- You can now capture the feed from a camera and open it with video_open() in your games
- Same as the change above, be aware this is a permission you must request from the player
- For more (including a sample project showing this functionality), see
- Android & iOS - New Async Event When Layout Changes:
- A new Async System message is sent when the display layout changes
- This event is of type “DisplayLayoutInfo” and contains “safeinsettop”, “safeinsetbottom”, “safeinsetleft” and “safeinsetright” - which return the distance from that edge that it is safe to display in (i.e. where no system UI will cover it)
- On Android only, the event also returns a “boundrects” entry that contains information on rectangles within those areas that are non-functional (Display Cutout)
- If the display layout has a waterfall display, then this is also returned as “waterfallinsetbottom”/”waterfallinsettop”/”waterfallinsetleft”/”waterfallinsetright”
- For more (including a sample project showing this functionality), see the same
tvOS - Better Support For Siri Remotes:
You can now use newer remote versions and also get their gyro inputs - see the following two issues for a little more info:
- Support for Siri Remote 2+
- Support for the motion controls in the Siri Remote
physics_debug() Added:
- Enablesdisables physics errors which were previously being silently ignored
- For more (including a sample project showing this functionality), see
- buffer_get_used_size() Added
- Returns the actual usage size of the specified buffer, so you can see how much space is left in your buffer, etc.
“GM_runtime_type” added:
- Added a new constant for determining if a game was built with the GMS2 runtimes or GMRT
gml_pragma() Support For Always Compiling Assets With Your Specified Tags:
- Added a new “MarkTagAsUsed” command to say certain tags already added to your assets in the IDE denote that these assets must always be built, even when the Game Option for removing unused assets is ON
- As an example, if I have an IDE tag called “AlwaysCompileMe” and I have assigned that to some assets, I could type : gml_pragma("MarkTagAsUsed", "AlwaysCompileMe");
Add Sprites via URL:
- You can now use data URLs in sprite_add() and sprite_replace() to add and replace your sprites in game
“Remove Unused Assets” Fixes For When Building Projects:
- Lots of fixes for incorrect checks when something is still required, plus a number of ways in which debug runs (specifically) would give a silent crash or close rather than showing you a suitable code error first.
- See the changelist for all the details, as there are too many reports fixed already to list individually here
Other Runtime Changes To Be Aware Of:
- Building Projects: Particle Systems no longer get stuck on their “remove unused assets” check and cause builds to fail
- Building Projects: [GX.games] WASM zip packages no longer duplicate the audio files into a redundant “runner” folder
- Building Projects: [iOS] The version of Ruby used by Igor during builds is no longer out-of-date, fixes “file not found” errors for some extensions
- Building Projects: [Ubuntu ARM] Non-Steam builds no longer rely on libssl1.1, which is now obsolete on newer Raspberry Pi OS installs and accordingly caused a build fail
- Command Line Builds: [HTML5] Custom runtime path value is no longer ignored
- In-Game: Video playback is now always at the correct framerate
- In-Game: Video playback no longer starts a few seconds ahead of expected
- In-Game: Debug runs no longer crash in the attached project
- In-Game: Fixed a silent crash due to “b2ParticleSystem::DestroyParticle(int, bool)” after destroying a particle
- In-Game: SDF support no longer draws text incorrectly if using small point size font glyphs
- In-Game: [YYC] Methods which return “self”, when called directly after constructor instantiation, no longer cause the constructor to be re-instantiated
- In-Game: [YYC] Null-coalescing operator on a struct variable that does not exist no longer causes a crash in 2024.11 runtimes
- In-Game: [Android] Fixed a crash in SET_RValue_Property(RValue, RValue, YYObjectBase*, int)+256)
- In-Game: [Android] Non-gamepad devices are now filtered from the list of gamepad devices
- In-Game: [Android] Manually using newer SDL community gamepad database no longer breaks D-pad inputs
- In-Game: [Desktops] Wacom tablets are now filtered from the list of gamepad devices
- In-Game: [Desktops] Nintendo Switch gamepads connected via USB are now filtered from the list of gamepad devices
- In-Game: [GX.games] WASM games now correctly register inputs when hosted on Itch.io/others
- In Game: [Windows] MP4 videos now play on Steam Deck
- In-Game: [Windows] DInput versions of gamepads which support XInput are now filtered from the list of gamepad devices
- In-Game: [HTML5] array_find_index() no longer errors due to using incorrect argument values internally
- In-Game: asset_…_tags() variants no longer silently ignore the request when an asset ref is passed as an argument (note that these functions all now also throw a code error in the case of invalid arguments, rather than silently ignoring)
- In-Game: audio_play_sound() (and various other audio functions) now works when the target sound assets are referenced exclusively by macros and “remove unused assets” is enabled
- In-Game: [HTML5] audio_sound_loop_start() is now obeyed even when no end point has been defined
- In-Game: date_compare_date() no longer thinks Dec 26th 2025 is the same as Jan 1st 2026 (and similar incorrect results comparing neighbouring dates)
- In-Game: debug_event(“ResourceCounts”) now includes vertex buffers also
- In-Game: debug_mode in-built variable was incorrectly marked as deprecated
- In-Game: ds_exists() with argument “undefined” no longer causes a crash
- In-Game: flexpanel_create_node() instances created from flexpanel_node_get_struct() now perform their Create events
- In-Game: frac() results are now correct for compile-time constants with very small float values
- In-Game: [Windows] game_change() and then Alt+Enter no longer causes the original game to be fullscreen but only show a Taskbar button
- In-Game: get_open/save_filename() could still return a non-empty string in 2024.11 runtimes, so this has been fixed
- In-Game: [Android] GM_version now returns the correct value, rather than the value of “Gradle Plugin Version”
- In-Game: instance_create_layer() being passed an invalid layer ID now gives an exception
- In-Game: [HTML5] instance_place() and other related collision functions do not return “noone” when no collisions are found for their array argument
- In-Game: layer_get_id_at_depth() for a depth with no associated layers now returns an array handle “[ref layer -1]”
- In-Game: layer_get_script_begin() and layer_get_script_end() now return a ref instead of a number
- In-Game: object_get_mask() now returns a ref instead of a number
- In-Game: object_get_sprite() now returns a ref instead of a number
- In-Game: os_request_permission() has now been extended to work on more platforms as a result of the GX.games features mentioned higher up this page
- In-Game: os_request_permission()’s DeviceMotion “response” values are too similarly-worded and should be clarified
- In-Game: particle_get_info()’s particle type struct “sprite” member now contains “ref sprite -1” if the type doesn’t use a sprite
- In-Game: particle_get_info() now provides the correct ID for using with functions such as part_emitter_region()
- In-Game: part_particles_create_colour() now applies the new colour immediately
- In-Game: room_instance_add() instance’s “Create” event is now executed even if it is created in a global-scope script
- In-Game: room_next() and room_previous() return “-1” for invalid destination rooms instead of the handle “ref room -1”
- In-Game: shader_current() now returns a ref instead of a number
- In-Game: show_debug_message() now supports “ and “ for escaping the brace characters
- In-Game: string() no longer returns some assets as their name, now it’s always as their ref handle
- In-Game: string() now supports “ and “ for escaping the brace characters
- In-Game: [iOS] url_open() now works on iOS 18 if built with Xcode 16
- In-Game: window_get_visible_rects() now returns the correct results when using 3 monitors as of 2023.4 runtimes
- In-Game: [GX.games] window_set_fullscreen() now works when running the game on mobiles
OperaOpera 118.0 Build 5461.60 (64-bit)
PC RepairPC Repair Tool 2025
PhotoshopAdobe Photoshop CC 2025 26.6.0 (64-bit)
OKXOKX - Buy Bitcoin or Ethereum
iTop VPNiTop VPN 6.4.0 - Fast, Safe & Secure
Premiere ProAdobe Premiere Pro CC 2025 25.2.3
BlueStacksBlueStacks 10.42.53.1001
Hero WarsHero Wars - Online Action Game
SemrushSemrush - Keyword Research Tool
LockWiperiMyFone LockWiper (Android) 5.7.2
Comments and User Reviews