Skip to content

An open-source and fully functional Steamworks SDK / API module and plug-in for the Godot Game Engine.

License

Notifications You must be signed in to change notification settings

expressobits/GodotSteam

 
 

Repository files navigation

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 include:

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.19.3) of this repo here.

Version 3.19.3 Changes

  • Added: new Input callback input_gamepad_slot_change
  • Added: new User callback get_ticket_for_web_api
  • Added: new User function getAuthTicketForWebApi
  • Changed: getAuthSessionTicket argument is now optional, defaults to NULL

Version 3.19.2 Changes

  • Added: new return values for overlay_toggled; this will break compatibility with this
  • Added: new Input and Parental Settings enums
  • Added: new UGC Content Descriptor ID enums
  • Added: new UGC functions removeContentDescriptor, addContentDescriptor, and getQueryUGCContentDescriptors
  • Added: new signal filter_text_dictionary_changed
  • Changed: getAuthSessionTicket now uses networking identities
  • Changed: gamepad_text_input_dismissed now passes back the app ID
  • Changed: Steam Input max analog and digital actions values
  • Removed: ERegisterActivationCodeResult due to removal in SDK

Version 3.19.1 Changes

  • Fixed: issue with UGC tags occasionally getting lost upon update, thanks to EIREXE

Version 3.19 Changes

  • Changed: various backports from godot4 branch
  • Fixed: various lobby list functions now return the server_list_request handle
  • Fixed: need for godotsteam.sh file on some Linux systems, thanks to mikix
  • Fixed: typo in returned dictionary for createSocketPair
  • Fixed: requestInternetServerList causing crashes

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.
  • As of Steamworks SDK 1.53, you cannot compile with previous version of GodotSteam (3.11.1 or earlier) due to a code change in the SDK.
    • Using Steamworks SDK 1.53 or newer, you must use GodotSteam 3.12 or newer.
    • Using Steamworks SDK 1.53 or earlier, you must use GodotSteam 3.11.1 or earlier.

"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 or Paypal!

License

MIT license

About

An open-source and fully functional Steamworks SDK / API module and plug-in for the Godot Game Engine.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 100.0%