19个版本 (2个稳定版)

1.0.1 2020年7月25日
1.0.0-rc.42020年3月30日
0.5.0-alpha.52019年12月29日
0.5.0-alpha.22019年11月25日
0.1.0 2019年3月27日

#723 in 游戏开发

Download history 12/week @ 2024-03-09 7/week @ 2024-03-16 2/week @ 2024-03-23 67/week @ 2024-03-30 28/week @ 2024-04-06 6/week @ 2024-04-13 5/week @ 2024-04-20 3/week @ 2024-04-27

每月95次下载

Apache-2.0 OR MIT

250KB
4K SLoC

discord_game_sdk

Documentation Latest Version License Build Status

此crate为Discord游戏SDK提供了一个安全的接口。

此crate不是官方的,它不受Discord游戏SDK开发者的支持。

Discord游戏SDK提供以下功能,但不仅限于:

  • 活动(丰富显示)
  • 用户、头像和关系
  • 大厅、匹配和语音通信
  • 在Discord基础设施上的伪-P2P网络
  • 云同步存储
  • 商店交易
  • 成就

版本要求:Rust 1.37及以上。

发行说明

用法

将此内容添加到您的Cargo.toml

[dependencies]
discord_game_sdk = "1.0.1"

了解潜在的bindgen要求

下载Discord游戏SDK并将其设置到您解压的位置

export DISCORD_GAME_SDK_PATH=/path/to/discord_game_sdk

如果您还计划使用默认的link功能,请继续阅读以下内容。

功能

默认启用,委托给discord_game_sdk_sys/link

提供功能链接,但需要注意库将被重命名且需要一些额外的设置

# Linux: prepend with `lib` and add to library search path
cp $DISCORD_GAME_SDK_PATH/lib/x86_64/{,lib}discord_game_sdk.so
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+${LD_LIBRARY_PATH}:}$DISCORD_GAME_SDK_PATH/lib/x86_64

# Mac OS: prepend with `lib` and add to library search path
cp $DISCORD_GAME_SDK_PATH/lib/x86_64/{,lib}discord_game_sdk.dylib
export DYLD_LIBRARY_PATH=${DYLD_LIBRARY_PATH:+${DYLD_LIBRARY_PATH}:}$DISCORD_GAME_SDK_PATH/lib/x86_64

# Windows: change `dll.lib` to `lib` (won't affect library searching)
cp $DISCORD_GAME_SDK_PATH/lib/x86_64/discord_game_sdk.{dll.lib,lib}
cp $DISCORD_GAME_SDK_PATH/lib/x86/discord_game_sdk.{dll.lib,lib}

这允许cargo run功能正常。

image

可选crate。

提供从我们的Imageimage::RgbaImage的转换。

安全性

此crate依赖于SDK提供正确的数据和行为

  • 非空指针指向有效的内存
  • UTF-8,以NUL终止的字符串
  • 不要修改它应有的内存,它不应拥有所有权
  • 在调用destroy后不要使用指针

其中一些在编译时使用debug_assertions进行测试。

您必须了解并同意Discord游戏SDK的官方条款

Rust crates的代码discord_game_sdkdiscord_game_sdk_sys的许可方式由您选择,可以是以下之一:

除非您明确声明,否则您根据Apache-2.0许可定义提交给作品的所有有意贡献,应如上双重许可,没有任何附加条款或条件。

沟通和支持

您可以通过Discord twiikuu#0047与我联系,在官方游戏SDK服务器(昵称ldesgoui (rust wrapper)),以及twitter电子邮件。虽然我通常很友好,但我没有义务支持您。

依赖项

~0.3–5MB
~48K SLoC