Skip to content

Tutorials - C-Sharp

By Gramps


Every so often we get someone who asks how to use GodotSteam with C# so I figured I would write this up. First and foremost, I have never used C# so my understanding of it is pretty much null and void.

Where's The DotNet Build?

To the point, GodotSteam does not have a C# version currently. I have attempted a few times to make them but they always seem to fail. When time permits, since we have moved to a new CI/CD system, I will try again.

Workarounds

Thankfully, for those of you using the GDExtension version of the project, there is a lovely project that will help! Thanks to LauraWebdev, we have this cool plug-in: GodotSteam C# Bindings

While I am still trying to get up to speed on all this C# business, you can read more about how it works on Github. There are even some excellent pieces of example code!

SteamMultiplayerPeer

If you are using SteamMultiplayerPeer for networking you can use a C# wrapper. It's currently not merged but there is a PR. You can put the script anywhere in your Godot project and it will work with the rest of the C# bindings above.

Additional Resources

The awesome folks at Chickensoft are all about C#, visit them here or at their Discord:

Chickensoft Website

Chickensoft Discord

More often than not, I will refer C# users to one of two wonderful libraries for Steamworks and C#:

Facepunch.Steamworks by the makers of Rust and Garry's Mod

Steamworks.NET by the super-nice Riley Labrecque

I have no idea how you actually integrate these with Godot but some members of our Discord do. I will try reaching out to them at some point for additions to this tutorial.