Skip to content
A native extension for Discord Game SDK support in GameMaker: Studio / GMS2
C++ Game Maker Language C
Branch: master
Clone or download
Latest commit 755d56d Apr 29, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Discord.gml.gmx Apr 29, 2019
Discord.gml Apr 29, 2019
.gitignore Apr 29, 2019
Discord.gml.sln Apr 29, 2019
LICENSE Apr 29, 2019
README.md Apr 29, 2019

README.md

Discord.gml

This is a wrapper for Discord's Game SDK for GameMaker: Studio / GameMaker Studio 2.

Written by YellowAfterlife.
Licensed under LGPL.

What does it cover?

For each of these, the extension does not necessarily cover every function, but enough of these to port a game that was previously using my Steamworks wrapper.

Compiling

  1. Extract discord_game_sdk.zip (which you get after you've been approved for Discord Store) to Discord.gml/discord_game_sdk directory.
  2. Copy Discord.gml/discord_game_sdk/lib/x86/discord_game_sdk.dll to Discord.gml.gmx/extensions/Discord.gml/
  3. Open and compile the included Visual Studio solution.

If you have GmxGen in your PATH, this will also auto-update the extension to match any new functions/scripts/macros.

FAQ

First, let's get a few things out of the way: development of this extension was paid for by several high-profile GM projects (Nidhogg, Knight Club, (unannounced)).

Later I contacted Discord to ask whether I could release my wrapper, and whether they'd be willing to pay me to cover missing SDK functions and documentation, but, unfortunately, I only got an OK for releasing it (and nothing at all on expansions), so... you get what you get, I guess.

Now, to the actual FAQ:

  • Is there documentation?
    As per above, not really. You can use "Show API" context menu option on the extension in GMEdit to view a list of functions and match them up to accordingly named functions in official SDK documentation.
  • Are there samples?
    You can find a small sample project in the repository.
    It is not extensively commented by any means, but it tests that functions are working correctly.
    You will need to open a second Discord instance with a second Discord account using Sandboxie and open a second copy of the game in there to test matchmaking.
  • Is there Mac/Linux support?
    Does Game SDK even support Mac/Linux? I'm not sure.
  • Does it work in GMS2?
    It should work fine if you import the sample project into GMS2 and then "Add Existing" the extension from sample project to yours.
You can’t perform that action at this time.