Skip to content

Instantly share code, notes, and snippets.

var lobbyManager = discord.GetLobbyManager();
lobbyManager.ConnectLobby(lobbyId, lobbySecret, (Discord.Result result, ref Discord.Lobby lobby) =>
{
if (result == Discord.Result.Ok)
{
// User is in the lobby
lobbyManager.ConnectVoice(lobby.Id, (res) =>
{
if (res == Discord.Result.Ok)
{
int main(int, char**)
{
discord::Core* core{};
auto result = discord::Core::Create(MY_APPLICATION_ID, DiscordCreateFlags_Default, &core);
core->StoreManager().FetchSkus();
core->StoreManager().OnEntitlementCreate.Connect(
[&](discord::Entitlement const& entitlement) -> {
discord::Sku* sku{};
core->StoreManager().GetSku(entitlement.SkuId, &sku);
void Main()
{
// Instantiate Discord and make a StoreManager
var discord = new Discord.Create(MY_APPLICATION_ID, (UInt64)Discord.CreateFlags.Default);
var storeManager = discord.GetStoreManager();
storeManager.FetchSkus();
storeManager.OnEntitlementCreate += (ref Discord.Entitlement entitlement) =>
{
Console.WriteLine(string.Format("User {0} just got entitlement to {1}", entitlement.User.Id, entitlement.SkuId));
@msciotti
msciotti / test.cs
Created April 22, 2019 17:16
Discord Activity 0
var relations = discord.GetRelationshipManager();
relations.Filter((ref Discord.Relationship relationship) =>
{
return relationship.Type == Discord.RelationshipType.Friend && relationship.Presence.Activity.ApplicationId == MY_CLIENT_ID;
}
relations.OnRefresh += () =>
{
for (uint i = 0; i < relations.Count(); i++)

Adding a Store Page to Your Server

  1. Create a new channel of type Store Channel. If you do not see this option, let Discord know.

  1. Choose the application and SKU that the store page should be for. If you don't see anything in these dropdowns, let Discord know

C#

void OnEnable()
{
    Debug.Log("Discord: init");
    callbackCalls = 0;

    discord = new Discord.Discord(461618159171141643, (UInt64)Discord.CreateFlags.Default);
    discord.SetLogHook(Discord.LogLevel.Debug, (level, message) =>
========== OUTPUTTING STACK TRACE ==================
0x00007FFE343AA388 (KERNELBASE) RaiseException
0x00007FFDFAA51158 (mono) [c:\buildslave\mono\build\eglib\src\goutput.c:201] g_logv
0x00007FFDFAA5117C (mono) [c:\buildslave\mono\build\eglib\src\goutput.c:211] g_log
0x00007FFDFAAAE9E3 (mono) [c:\buildslave\mono\build\mono\metadata\marshal.c:1943] emit_struct_conv_full
0x00007FFDFAAAA6E4 (mono) [c:\buildslave\mono\build\mono\metadata\marshal.c:5823] emit_marshal_vtype
0x00007FFDFAAACDB6 (mono) [c:\buildslave\mono\build\mono\metadata\marshal.c:7806] emit_marshal
0x00007FFDFAAAD20E (mono) [c:\buildslave\mono\build\mono\metadata\marshal.c:7926] mono_marshal_emit_native_wrapper
0x00007FFDFAAADCDD (mono) [c:\buildslave\mono\build\mono\metadata\marshal.c:8290] mono_marshal_get_native_func_wrapper

Getting Ready for Discord

If you're reading this, it means that you're ready to prepare your game for the Discord store. And we can't wait to have you! You want to know what you need to do to prepare, and we're here to tell you what those things are.

If you're unsure about any of these requirements or want further clarification, feel free to reach out to us with questions.

Read the Documentation

We have a lot of really great documentation around the Discord store and what we have to offer in terms of technical solutions and integrations, and I'm not just saying that because I wrote them. Read through the docs and decide what pieces may be helpful for your game. Here's some starting points:

Introducing Teams!

Hey everyone! Today we are releasing an awesome new feature for devs on Discord: Teams! Teams will let you easily work together and manage applications as a...team...it sounded cooler than "organizations", alright?

What are Teams

Teams are groups of users, managed through the Developer Portal. Teams have members and own applications. Users who are members of a team can manage applications that team owns as if they were their own. No more sharing login credentials, or making shared accounts that multiple people can access. Now you can manage applications with multiple users securely.

Security

@msciotti
msciotti / GameBridge to GameSDK.md
Last active November 15, 2018 21:17
Migrating from GameBridge to GameSDK

Intro

If you're reading this, woo! You've got access to Discord's new GameSDK. It does a lot of fancy stuff, which you can see over here. But, most importantly, it handles voice and text chat in a way that's much easier than GameBridge.

What Was GameBridge

So, how did GameBridge work? You had to:

  1. Integrate the SDK
  2. Manage all your own RPC connections, commands, events, etc.