Steamworks 文献库
文献库主页
入门指南
登记筹备
Steam Direct 费
管理您的 Steamworks 帐户
用户权限:接收 Steamworks 通信
管理应用程序
应用管理共享
转让应用程序
Onboarding - Identification Documents Best Practices
内容调查
印度尼西亚的年龄分级
德国的强制性年龄分级
将手机游戏移植到 Steam
常见问题
商店状态
Steam 标签
从 Steam 上移除产品
促销活动工具、规则及指引
参加第三方特卖活动
举办第三方特卖活动
开发者、发行商和系列作品特卖页面
免费开玩游戏
即将推出
发行日期
发行流程
发行选项
商店页面及其建立和编辑
商店页面文字描述
商店页面赞誉
商店页面额外资产管理
图像资产 - 概览
商店图像资产
图像资产规则
库资产
替代艺术作品
活动图像资产
社区及客户端图标
在 Steam 上进行测试
在 Steam 上进行预购
季票
定价
周期订阅
支持币种
添加新币种
程序包定价 CSV 文件导入/导出
审核流程
宣传片
应用程序
Depot
Steam 上的游戏原声音轨
分支(测试版)
可下载内容(DLC)
DLC 可见性
平台
基于 SteamOS 和 Linux 的开发
捆绑包
创建涵盖多个开发者/发行商的捆绑包
生成版本
程序包
创建和配置豪华版组合包
自动授予程序包
试用版
开发者和发行商主页
主页示例
抢先体验
更新您的游戏——最佳实践
本地化和语言
Steam 支持的语言
热销商品榜单
用户评测
直播
设置实况直播
常见问题
在 Steam 商店实况直播游戏试用版
实况直播管理与添加版主
直播收视人数统计数据
系列作品页面
蒸汽平台
解释版本区别
路线图
功能
Steam Audio
Steam DRM
Steam HTML Surface
Steam 云
Steam 云畅玩(测试版)
Steam 创意工坊
Steam 创意工坊实现指南
Steam 创意工坊项目标签
Steam 创意工坊项目版本控制
Steam 叠加界面
Steam 家庭
Steam 屏幕截图
Steam 序列号
Steam 库存服务
Steam 库存物品配饰
Steam 库存架构
Steam 库存物品动态属性
Steam 库存物品商店
Steam 库存物品工具
Steam 库存物品标签
Steam 库存网页功能
Steam 排行榜
分步指南:排行榜
Steam 时间轴
Steam 游戏测试
Steam 社区
Steam 语音
Steam 输入
Steam 输入手柄模拟最佳实践
Steam 输入设备
Microsoft Xbox 360 控制器
Microsoft Xbox One 控制器
Steam 控制器(2015)
索尼 PlayStation 4 控制器
Uploading Steam Input Configs to Steam Workshop
一般概念
传统模式绑定设置
开发者入门指南
径向菜单
操作清单文件
操作集层
模式切换
浏览配置
游戏中操作文件模板
游戏内操作文件
激活器
玩家入门指南
触摸菜单
输入源
输入源模式
鼠标区域
Steam 远程畅玩
Steam 错误报告
反作弊与游戏封禁
反作弊集成
增强型丰富状态
多人游戏
Steam 匹配与大厅
基于技术的游戏匹配
Steam 数据报中继
Steam 网络
游戏服务器
小额交易(游戏内购买)
小额交易实现指南
游戏内周期性循环扣款
常见可再发行文件
游戏通知
用户验证与所有权
统计与成就
分步指南:成就
分步指南:统计数据
虚拟现实
SteamVR
虚拟现实应用程序设置
SteamVR 输入
OpenVR
供企业/政府使用的 SteamVR
财务
开发者退款报告
报表与付款
报表与付款常见问答
税务常见问题
Steamworks SDK
Steamworks API 概览
Steamworks API 示例应用程序(SpaceWar)
Steamworks API 调试
上传至 Steam
SteamPipe 本地内容服务器
分发 Source 引擎游戏/模组
分发您的专用游戏服务器
在 Steam 上分销开源应用程序
创建和使用 InstallScripts
创建零售及“Gold Master”磁盘
更新游戏生成版本
Partial Depot Update Instructions
提示 - 重命名已上线的 exe
Web API 概览
OAuth
使用 Web API 密钥进行验证
错误代码与响应
销售与市场营销
Google Analytics(分析)
Steam 品牌与商标指引
Steam 社区物品
UTM 分析
个人资料功能
关注者
功能、工具与市场营销
即将开展的 Steam 活动
2026 年 Steam 冬季特卖
Steam 主题特卖活动
2026 年 Steam 中世纪游戏节
2026 年 Steam 自走棋角色扮演游戏节
2027 年 Steam 即时战略游戏节
2027 年 Steam 商店管理游戏节
2027 年 Steam 女巫游戏节
2027 年 Steam 恐龙大战机器人游戏节
2027 年 Steam 格斗游戏节
2027 年 Steam 桌面伴侣游戏节
2027 年 Steam 沙发合作游戏节
2027 年 Steam 登山游戏节
2027 年 Steam 竞速游戏节
2027 年 Steam 绵羊游戏节
2027 年 Steam 节奏游戏节
Steam 尖叫游戏节 5
Steam 新品节
Steam 新品节 - 提示
Steam 新品节 2027 年 2 月版
Steam 新品节 2027 年 6 月版
商店和平台流量报告
商店小部件
在 Steam 上曝光
Steam 个人日历
更新曝光轮次
在 Steam 上进行广告宣传
市场营销最佳实践
愿望单
愿望单报告
折扣
免费保留(100% 折扣)
免费周末
季节性特卖
每日特惠
活动和公告工具
活动和公告示例
导入 HTML
嵌入式小部件
活动与公告可见性统计数据报告
活动和公告可见性
活动和公告审核步骤
活动类型:小型更新/补丁说明
活动类型:重大更新
特卖页面工具
特卖页面工具 - 实况直播(直播)
特卖页面工具 - 最低要求
特卖页面工具 - 栏目类型
特卖页面栏目:应用及捆绑包
特卖页面工具 - 给合作伙伴的信息
特卖页面工具 - 背景分组
点数商店物品
社区管理
添加社区版主
鉴赏家及鉴赏家牵线
Steamworks API 索引
ISteamApps 接口
ISteamClient 接口
ISteamController 接口(已弃用)
ISteamFriends 接口
ISteamGameCoordinator 接口
ISteamGameServerStats 接口
ISteamGameServer 接口
ISteamHTMLSurface 接口
ISteamHTTP 接口
ISteamInput 接口
ISteamInventory 接口
ISteamMatchmakingServers 接口
ISteamMatchmaking 接口
ISteamMusic 接口
ISteamNetworkingMessages 接口
ISteamNetworkingSockets 接口
ISteamNetworkingUtils 接口
ISteamNetworking 接口
ISteamParties 接口
ISteamRemotePlay 接口
ISteamRemoteStorage 接口
ISteamScreenshots 接口
ISteamTimeline 接口
ISteamUGC 接口
ISteamUserStats 接口
ISteamUser 接口
ISteamUtils 接口
ISteamVideo 接口
SteamEncryptedAppTicket
steamnetworkingtypes.h
steam_api.h
steam_gameserver.h
Steamworks Web API 索引
IBroadcastService Interface
ICheatReportingService 接口
ICloudService 接口
IEconMarketService 接口
IEconService 接口
IGameInventory 接口
IGameNotificationsService 接口
IGameServersService 接口
IInventoryService 接口
ILobbyMatchmakingService 接口
IPartnerFinancialsService 接口
IPlayerService 接口
IPublishedFileModerationService Interface
IPublishedFileService 接口
ISiteLicenseService 接口
ISteamApps 接口
ISteamCommunity 接口
ISteamEconomy 接口
ISteamGameServerStats 接口
ISteamLeaderboards 接口
ISteamMicroTxnSandbox 接口
ISteamMicroTxn 接口
ISteamNews 接口
ISteamPublishedItemSearch 接口
ISteamPublishedItemVoting 接口
ISteamRemoteStorage 接口
ISteamUserAuth 接口
ISteamUserStats 接口
ISteamUser 接口
ISteamWebAPIUtil 接口
IStoreService Interface
IUserReviewsService
IWorkshopService 接口
Steam 硬件
Steam Deck
Steam Deck SVG 线条图
Steam Deck 品牌指引与徽标
Steam Deck 常见问题
Steam Deck 开发者套件
Steam 虚拟会议:Steam Deck - 2021 年 11 月 12 日
社交媒体模板
Steam Deck 和 Steam Machine 兼容性检查
“通过 Steam Deck 验证”登陆页面
Steam Frame
OpenXR 游戏引擎集成
Godot
Unity
Unreal Engine
自定义引擎
Steam Frame Input
Steam Frame 独立运行兼容性检查流程
性能评估叠加界面(VR 作品)
Steam Frame 调试
Suggesting default user settings for your game
为开发环境配置 Steam Frame
哪些游戏可以在 Steam Frame 上独立运行
如何在 Steam Frame 上加载并运行游戏
如何将 Android APK 上传至 Steam
将 adb 连接至 Lepton
Steam Machine
Steam 硬件与 Proton
为您的游戏做好在 Steam Deck 和 Steam Machine 上运行的准备
如何在 Steam Deck 和 Steam Machine 上加载并运行游戏
如何在 Steam Deck 和 Steam Machine 上调试 Windows 游戏
Steam 网吧计划
Steam Users
发行商
许可持有人
网吧要求与注册说明
入门指南
网吧模式设置说明(包括网吧服务器和内容缓存)
VR 游戏厅模式设置说明
常见问题
辅助功能
Steam 排行榜
Steamworks 文献库
>
功能
>
Steam 排行榜
概览
Steam 支持自动排序并持续更新的排行榜。 这些排行榜可以用来在您的游戏和您的社区网页上显示全球及好友排行榜。 每个 Steamworks 游戏最多可以创建 10,000 个排行榜,并且在玩家分数提交后,可以立即检索对应的排行榜。
每位玩家在每个排行榜上可有一个条目。 每个排行榜玩家人数不限。 每个条目都包含排行榜的分数(int32)和最多可达 64 个 int32 的关联数据(可选)。 这些关联数据可用于储存与用户产生排行榜条目时的游戏会话有关的具体信息。 Steam 不会对此数据进行排序或解析。当用户创建了新的排行榜条目后,旧的数据就会被替换。
ISteamUserGameStats.h 包含所有排行榜函数。Steamworks 示例中也展示了两个样本排行榜。 您可在 Steamworks 游戏管理员中查阅并管理您的排行榜。
准备事项
所有异步排行榜函数都会返回一个指向 Steam API 调用结果的句柄。 请参见“入门指南”文档中的调用结果部分,了解有关如何获取这些结果的更多信息。
创建排行榜
排行榜专属于各个应用程序,必须使用 Steamworks 合作伙伴站点的游戏管理员页面或通过 API 进行设置。
通过网页创建
您可以在 Steamworks 应用管理员页面中,前往
统计&成就->排行榜
,为您的 app ID 创建和管理排行榜。
要定义排行榜,必须填写以下字段:
名称:内部开发可用的合理名称。
社区名称:如要在社区中心显示此排行榜,在此设置公开显示的名称。 如未输入名称,则该排行榜将不会显示。
排序方式:设置排行榜的排列顺序。 对于基于排位的排行榜,请使用升序。 对于高分排行榜,请使用降序。
显示类型:决定排行榜显示的数据类型。 可选择数字、秒或毫秒。
写入:如果此项设置为“可信任”,则排行榜分数不能由客户端设置,只能通过 SetLeaderboardScore WebAPI 来设置。 默认为 false。
读取:如设置为“好友”,则游戏只能读取该用户好友的排行榜分数(但 WebAPI 始终可以读取所有分数)。 默认为 false。
通过 API 创建
您可以通过
Steamworks 应用管理员
创建您游戏的排行榜,或者也可以通过调用
ISteamUserStats::FindOrCreateLeaderboard
以编程方式创建。 在 Steam 中,每款 Steamworks 游戏的各排行榜均通过一个唯一名称进行识别。 排行榜名称仅在 Steamworks API 中起识别作用,不会在 Steam 社区向用户显示。 创建排行榜时,您需要选择:
排序方式:
k_ELeaderboardSortMethodAscending
(排名第一的是分数最低的用户)或
k_ELeaderboardSortMethodDescending
(排名第一的是分数最高的用户)。
显示类型:
ELeaderboardDisplayType
用来说明排行榜分数代表的意义,且仅被社区用于编排排行榜分数的显示格式。
如选择仅通过
应用管理员
来创建排行榜,则可使用
ISteamUserStats::FindLeaderboard
来获取排行榜句柄。 FindLeaderboard 与 FindOrCreateLeaderboard 均为异步方法,并通过
ISteamUserStats::LeaderboardFindResult_t
调用结果为特定排行榜返回句柄。
创建排行榜后,您可以通过游戏管理员修改排行榜的排序方式和显示类型。 当对已存在排行榜调用 FindOrCreateLeaderboard 时,排序方法和显示类型参数将被忽略。
注意:
如要在社区中心显示排行榜,必须在定义排行榜时设置“社区名称”字段。 如未输入名称,则该排行榜将不会显示。
上传分数
如要上传分数至排行榜,只需调用
ISteamUserStats::UploadLeaderboardScore
传入目标排行榜句柄(通过 FindLeaderboard 获取)、用户分数,以及在设置新分数时产生的关联数据(可选)。 用户排行榜分数更新完毕后,传入
ISteamUserStats::UploadLeaderboardScore
的关联数据将替换掉之前存储的任何数据。 上传用户排行榜分数时,有两种更新方式可选择:
ISteamUserStats::k_ELeaderboardUploadScoreMethodKeepBest
:Steam 会将用户的新分数与其在排行榜中已存储的分数进行比较,并保留用户的最佳分数(对于升序排序的排行榜,保留最低分;对于降序排序的排行榜,保留最高分)。
ISteamUserStats::k_ELeaderboardUploadScoreMethodForceUpdate
:Steam 始终会以新分数替换排行榜中原有分数。
ISteamUserStats::UploadLeaderboardScore
为异步调用,在 LeaderboardScoreUploaded_t 调用结果中返回上传结果。 该结果对已更改的用户分数进行标示,并包含用户的新旧全球排名。 上传后,Steamworks 排行榜将立刻更新以反映新分数,新的条目顺序可通过 DownloadLeaderboardEntries 获得。
附加用户生成内容
分数上传后,您可选择是否为该条目附加用户生成内容, 只须调用
ISteamUserStats::AttachLeaderboardUGC
即可。该内容可为用户取得成绩时的回放,或是可以与之比赛的幽灵记录。 当条目被成功检索时,其关联的句柄将变为可用状态,并可被其他用户下载。 如需创建和下载用户生成内容,请见 Steam 云的相关文献。
内容一经添加后,即使基础云文件有更改或被用户删除,内容仍将可用。
获取排行榜条目
ISteamUserStats::DownloadLeaderboardEntries
用于通过
ISteamUserStats::FindLeaderboard
获取到的排行榜句柄来检索排行榜条目。
您通过 GetDownloadedLeaderboardEntry 检索所有已下载的条目后,这些条目的数据就会被释放,而 LeaderboardScoresDownloaded_t 中的 SteamLeaderboardEntries_t 也将不再有效。
获取排行榜信息
您可用 FindLeaderboard 返回的排行榜句柄通过以下 API 获取排行榜信息:
ISteamUserStats::GetLeaderboardName
ISteamUserStats::GetLeaderboardEntryCount
ISteamUserStats::GetLeaderboardSortMethod
ISteamUserStats::GetLeaderboardDisplayType