MadFlyFish / GodotSteam

Steam API for the Godot game engine

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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

Version 3.21.3 Changes

  • Fixed: requestEquippedProfileItems was missing method bind, thanks to BOTLANNER
  • Fixed: get_ticket_for_web_api callback for getting actual ticket buffer, thanks to dicarne
  • Fixed: compiler complaining about comparison between Steam enum and GodotSteam enum for steamInitEx
  • Fixed: getListenSocketAddress fixed to provide the actual address and optional port
  • Changed: createBrowser now sends proper NULL when empty string passed
  • Changed: html_browser_ready from callback to proper call result
  • Changed: cast handle in setSize as Steam HHTMLBrowser
  • Removed: unnecessary steam_appid.txt from zips in Github Actions

Version 3.21.2 Changes

  • Fixed: missing descriptions for some in-editor functions/signals
  • Fixed: receiveMessagesOnChannel, receiveMessagesOnPollGroup, and receiveMessagesOnConnection had overwriting dictionary keys

Version 3.21.1 Changes

  • Changed: bump for Godot 3.5.3

Version 3.21 Changes

  • Added: new enums and constant related to new Steam initialization function
  • Added: new enums for NetworkingConfigValue
  • Added: new intialization function steamInitEx that is more verbose
  • Added: new UGC function getUserContentDescriptorPreferences
  • Added: new Remote Play function startRemotePlayTogether
  • Changed: UGC functionsetItemTags to have new argument for admin tags
  • Changed: compatible with Steamworks SDK 1.58
  • Changed: in-editor docs now reflect all changes
  • Fixed: gamepad_text_input_dismissed signal passing back string instead of int for app_id

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 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!

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

About

Steam API for the Godot game engine

License:MIT License


Languages

Language:C++ 100.0%Language:Python 0.0%Language:C 0.0%