Check out our latest project ✨ OpenChapter.io: free ebooks the way its meant to be 📖

GodotSteam GDExtension 4.4+

An asset by Gramps
The page banner background of a mountain and forest

Quick Information

No ratings yet
GodotSteam GDExtension 4.4+ icon image
Gramps
GodotSteam GDExtension 4.4+

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.21 with Steamworks SDK 1.65.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. Enabling the plug-in in the Project Settings only displays the Steamworks dock and has no effect on functionality.

Supported Engine Version
4.4
Version String
4.21
Support Level
community
Modified Date
12 days ago
Git URL
Issue URL
Download ZIP

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 Skillet UGC Editor
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 Stoat server or IRC on Libera Chat.

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.19 Changes

  • Added: getAvailableVoice() has been added back in
  • Changed: updated last of constants for in-editor docs
  • Changed: sample_rate_override, buffer_size_override, buffer_out_size_override parameters all renamed to drop _override portion
  • Changed: set getVoice() defaults buffer_size to 1024, as in Valve's SpaceWar example
  • Changed: getVoice() key written is now size
  • Changed: decompressVoice() defaults sample_rate at 11025, as in Valve's SpaceWar example
  • Changed: decompressVoice() now clamps sample_rate between 11025 and 48000 per SDK decoder notes
  • Changed: getDecompressedVoice() was rewritten based on changes to getVoice() and decompressVoice()
  • Changed: getDecompressedVoice() returned dictionary key changes - compressed_written to compressed_size, output_result to decompressed_result, output_buffer to decompressed_buffer, output_written to decompressed_size
  • Changed: various Input action origin enum names for readability
  • Fixed: XBOX_ORIGIN_LEFT_STICK_DPAD_EAST misspelled as XBOX_ORIGIN_LEFT_STICK_DPAD_EAT
  • Removed: getDecompressedVoice() as the merged functions need to be separate for usefulness

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
4.17 Windows projects using Steam SDK 1.63 are meant to work with Proton 11 or Experimental on Linux / Steam Deck.
4.19 Lots of changes to Voice functions, refer to 4.19 changelog for details

Known Issues

  • GDExtension for 4.4 is not compatible with 4.3.x 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

Once the plug-in is added to your project, the Steam class should be available and ready to go. Enabling the plug-in in the ProjectSettings only affects the Steamworks dock and not the actual functionality.

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.

No LLM Policy / No "AI" Policy

No LLMs are allowed to be used for issues, patches, or pull-requests. They will be closed or rejected and the submitter may be blocked from future submissions.

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.21 with Steamworks SDK 1.65. 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. Enabling the plug-in in the Project Settings only displays the Steamworks dock and has no effect on functionality.

Reviews

0 total reviews
No ratings yet

Your Rating

How do you rate this asset?
Headline must be at least 3 characters but not more than 50
Review must be at least 5 characters but not more than 500
Please sign in to add a review

Quick Information

No ratings yet
GodotSteam GDExtension 4.4+ icon image
Gramps
GodotSteam GDExtension 4.4+

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.21 with Steamworks SDK 1.65.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. Enabling the plug-in in the Project Settings only displays the Steamworks dock and has no effect on functionality.

Supported Engine Version
4.4
Version String
4.21
Support Level
community
Modified Date
12 days ago
Git URL
Issue URL
Download ZIP

Open Source

Released under the AGPLv3 license

Plug and Play

Browse assets directly from Godot

Community Driven

Created by developers for developers