Awesome
GodotSteam for Godot Engine 3.x
An ecosystem of tools for Godot Engine and Valve's Steam. For the Windows, Linux, and Mac platforms.
Additional Flavors
Pre-Compiles | Plug-ins | Server | Examples/Demos |
---|---|---|---|
Godot 2.x | GDNative | Server 3.x | Godot 3.x |
Godot 3.x | GDExtension | Server 4.x | Godot 4.x |
Godot 4.x | --- | GDNative | Server 3.x |
MultiplayerPeer | --- | GDExtension | Server 4.x |
Documentation
Documentation is available here. You can also check out the Search Help section inside Godot Engine.
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 Patreon.
Current Build
You can download pre-compiled versions of this repo here.
Version 3.27
- Added: buffer_size argument to
decompressVoice
with default of original value - Added: missing
user_achievement_icon_fetched
signal bind - Changed: now using Steam Flat API, should allow compiling with MinGW
- Changed: updated in-editor docs
- Changed:
steamworksError
tosteamworks_signal_error
internally, now prints to editor - Changed: deprecated
getAvailableVoice
, merged functionality intogetVoice
- Fixed: proper type for
network_connection_status_changed
, thanks to stickyShift - Fixed:
getResultItemProperty
now takes empty string to send all property list, thanks to Stralor - Fixed: missing return value hints from
lobby_data_update
- Fixed: fixed typo in RESULT_ADMINISTRATOR_OK, thanks to sepTN
- Fixed: fixed a variety of types and code corrections, thanks to bobsayhilol
- Fixed: issue with
setItemTags
- Fixed:
get_app_dependencies_result
now passed back app_ids array - Fixed: both global stat history functions -
getGlobalStatIntHistory
andgetGlobalStatFloatHistory
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.59 or newer | 3.23 or newer |
1.53 to 1.58a | 3.12 to 3.22.4 |
1.52 or older | 3.11.1 or older |
Versions of GodotSteam that have compatibility breaks introduced.
GodotSteam Version | Broken Compatibility |
---|---|
3.25 | Networking identity system removed, replaced with Steam IDs |
3.26 | sendMessages returns an Array |
3.27 | setLeaderboardDetailsMax removed |
Known Issues
- When self-compiling, using MinGW will cause crashes unless you are using GodotSteam 3.26 or newer.
"Quick" How-To
For complete instructions on how to build the Godot 4.x version of GodotSteam from scratch, please refer to our documentation's 'How-To Modules' section. It will have the most up-to-date information.
Alternatively, you can just download the pre-compiled versions in our Releases section and skip compiling it yourself!
To start, check 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.
License
MIT license