GodotSteam for Godot Engine
An open-source and fully functional Steamworks SDK / API module and plug-in for the Godot Game Engine (version 3.x). 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 |
--- | --- | GDExtension | Server 4.x |
Documentation
Documentation is available here. You can also check out the Search Help section inside Godot Engine after compiling it with GodotSteam.
Feel free to chat with us about GodotSteam on the CoaguCo Discord server.
Current Build
You can download pre-compiled versions (currently v3.22.2) of this repo here.
Version 3.22.3 Changes
- Changed: moved constants to separate file like in Godot 4.x branches
- Fixed: backported fixes for in-editor docs, thanks to sepTN
- Fixed:
requestClanOfficerList()
using wrong internal function, thanks to sepTN
Version 3.22.2 Changes
- Fixed: app ID automatically being set to 480, now default is 0 which makes GodotSteam ignore auto-setting app ID
Version 3.22.1 Changes
- Added: two new arguments to
steamInit
andsteamInitEx
to set your app ID and run_callbacks interally, thanks to GreenFox - Fixed: issue with callback that caused compiling failure in Linux
Version 3.22 Changes
- Added: two Music class callbacks
- Changed:
generateItems
,exchangeItems
,getItemsByID
, andstartPurchase
all list-based arguments are now PoolIntArrays - Changed:
getItemsByID
now takes one argument, counts the elements in the passed array instead - Changed:
getItemsWithPrices
no longer requires any arguments passed to it - Changed: in-editor docs have been updated
- Fixed:
getResultItems
now returns all item data - Fixed: missing DEFVAL for
steamInitEx
- Fixed: Joy Con name in
getInputTypeForHandle
- Removed:
getNumItemsWithPrices
as it was unnecessary
You can read more change-logs here.
Known Issues
- Using MinGW causes crashes. I strongly recommend you do not use MinGW to compile at this time.
Compatibility
While rare, sometimes Steamworks SDK updates will break compatilibity with older GodotSteam versions. Any compatability breaks are noted below.
Steamworks SDK Version | GodotSteam Version |
---|---|
1.53 or newer | 3.12 or newer |
1.53 or older | 3.11.1 or older |
"Quick" How-To
For complete instructions on how to build the Godot 3.x version of GodotSteam, 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!
Donate
Pull-requests are the best way to help the project out but you can also donate through Github Sponsors, Ko-Fi or Paypal!
License
MIT license