Install Asset
Install via Godot
To maintain one source of truth, Godot Asset Library is just a mirror of the old asset library so you can download directly on Godot via the integrated asset library browser
Quick Information
Steamworks API plug-in for Godot Engine. Available for the Windows 32/64-bit, Linux 32/64-bit and ARM64 platforms, Android ARM64, and Mac universal. It is based on GodotSteam 4.17.1 with Steamworks SDK 1.63.This version is meant for Godot Engine 4.4 and newer; for other versions:Godot 4.1 - 4.3: https://godotengine.org/asset-library/asset/3866Godot 4.0: https://godotengine.org/asset-library/asset/1768Previous versions of the plug-in can also be found at the GodotSteam repository: https://codeberg.org/godotsteam/godotsteam/releases.You can find the full documentation with tutorials at https://godotsteam.com.It does not require enabling but you may need to restart your editor.
GodotSteam for GDExtension | Community Edition
An ecosystem of tools for Godot Engine and Valve's Steam. For the Windows, Linux, and Mac platforms.
Additional Flavors
| Standard Module | Standard Plug-ins | Server Module | Server Plug-ins | Examples |
|---|---|---|---|---|
| Godot 2.x | GDNative | Server 3.x | GDNative | Skillet |
| Godot 3.x | GDExtension | Server 4.x | GDExtension | --- |
| Godot 4.x | --- | --- | --- | --- |
| MultiplayerPeer | --- | --- | --- | --- |
Documentation
Documentation is available here. You can also check out the Search Help section inside Godot Engine. To start, try checking out our tutorial on initializing Steam. There are additional tutorials, with more in the works. You can also check out additional Godot and Steam related videos, text, additional tools, plug-ins, etc. here.
Feel free to chat with us about GodotSteam or ask for assistance on the Discord server.
Donate
Pull-requests are the best way to help the project out but you can also donate through Github Sponsors or LiberaPay! You can read more about donor perks here. You can also view all our awesome donors here.
Current Build
You can download pre-compiled versions of this repo here.
Version 4.17 Changes
- Added: new enums to Result, HTTPStatusCode, RemotePlayScanCode, ActionOrigin per Steam SDK 1.63
- Added:
getDecompressedVoice()as custom function to wrap upgetVoice()anddecompressVoice()in C++ - Added: missing HTMLMouseCursor enum binds
- Changed: converted functions entirely over to the Flat API system
- Changed:
activateGameOverlayInviteDialog()changed argument name from steam_id to lobby_id for clarity - Changed: renamed some minor parameters
- Changed:
getAPICallFailureReason()now returns enum instead of string - Changed: error messages if Steam is not initialized or classes are missing
- Fixed:
initFilterText()now takes filter options - Fixed:
sendMessages()not compiling correctly - Fixed: VOICE_RESULT_NO_DATA incorrectly named VOICE_RESULT_NO_DATE
- Removed: GameSearch and Music Remote classes, constants, enums per Steam SDK 1.63
You can read more change-logs here.
Compatibility
While rare, sometimes Steamworks SDK updates will break compatilibity with older GodotSteam versions. Any compatability breaks are noted below. Newer API files (dll, so, dylib) should still work for older versions.
| Steamworks SDK Version | GodotSteam Version |
|---|---|
| 1.63 or newer | 4.17 |
| 1.62 | 4.14 or 4.16.2 |
| 1.61 | 4.12 to 4.13 |
| 1.60 | 4.6 to 4.11 |
| 1.59 | 4.6 to 4.8 |
| 1.58a or older | 4.5.4 or older |
Versions of GodotSteam that have compatibility breaks introduced.
| GodotSteam Version | Broken Compatibility |
|---|---|
| 4.8 | Networking identity system removed, replaced with Steam IDs |
| 4.9 | sendMessages returns an Array |
| 4.11 | setLeaderboardDetailsMax removed |
| 4.13 | getItemDefinitionProperty return a dictionary, html_needs_paint key 'bgra' changed to 'rbga' |
| 4.14 | Removed first argument for stat request in steamInit and steamInitEx, steamInit returns intended bool value |
| 4.16 | Variety of small break points, refer to 4.16 changelog for details |
Known Issues
- GDExtension for 4.1 is not compatible with 4.0.3 or lower. Please check the versions you are using.
- Overlay will not work in the editor but will work in export projects when uploaded to Steam. This seems to a limitation with Vulkan currently.
Quick How-To
For complete instructions on how to build the GDExtension version of GodotSteam, please refer to our documentation's 'How-To GDExtension' section. It will have the most up-to-date information.
Alternatively, you can just download the pre-compiled versions in our Releases section or from the Godot Asset Library and skip compiling it yourself!
Usage
Do not use the GDExtension version of GodotSteam with any of the module versions whether it be our pre-compiled versions or ones you compile. They are not compatible with each other.
When exporting with the GDExtension version, please use the normal Godot Engine templates instead of our GodotSteam templates or you will have a lot of issues.
License
MIT license
Steamworks API plug-in for Godot Engine. Available for the Windows 32/64-bit, Linux 32/64-bit and ARM64 platforms, Android ARM64, and Mac universal. It is based on GodotSteam 4.17.1 with Steamworks SDK 1.63.
This version is meant for Godot Engine 4.4 and newer; for other versions:
Godot 4.1 - 4.3: https://godotengine.org/asset-library/asset/3866
Godot 4.0: https://godotengine.org/asset-library/asset/1768
Previous versions of the plug-in can also be found at the GodotSteam repository: https://codeberg.org/godotsteam/godotsteam/releases.
You can find the full documentation with tutorials at https://godotsteam.com.
It does not require enabling but you may need to restart your editor.
Reviews
Quick Information
Steamworks API plug-in for Godot Engine. Available for the Windows 32/64-bit, Linux 32/64-bit and ARM64 platforms, Android ARM64, and Mac universal. It is based on GodotSteam 4.17.1 with Steamworks SDK 1.63.This version is meant for Godot Engine 4.4 and newer; for other versions:Godot 4.1 - 4.3: https://godotengine.org/asset-library/asset/3866Godot 4.0: https://godotengine.org/asset-library/asset/1768Previous versions of the plug-in can also be found at the GodotSteam repository: https://codeberg.org/godotsteam/godotsteam/releases.You can find the full documentation with tutorials at https://godotsteam.com.It does not require enabling but you may need to restart your editor.