Files
CC-Framework.BriskGameServer/服务参考_临时

Brisk Game Service

Brisk 游戏服务端工程。

当前已实现模块:

  • 平台授时 time
  • 客户端初始化 bootstrap
  • 登录换票 auth
  • 玩家信息 player
  • 动态配置 config
  • 公告 announcements
  • 排行榜 ranks
  • 云存档 archives
  • 玩家空间 spaces
  • 管理后台认证、项目、配置、公告、排行榜、存档、玩家、空间、审计
  • Worker 清理任务与基础限流

当前核心模型

  • 项目唯一标识只有 game_key
  • 项目级 channel / platform 已移除
  • 初始化和动态配置只依赖 game_key,配置筛选只看 client_version
  • 平台授时接口不依赖 game_key,可直接匿名获取 UTC 服务器时间
  • 登录模块单独处理第三方身份:
    • login_provider:如 tap
    • login_user_id:该登录平台返回的稳定唯一用户 ID
  • 服务端登录成功后返回内部:
    • player_id
    • project_account_id
    • access_token
  • 空间、排行榜后台筛选等模块支持直接使用 login_provider + login_user_id
  • 内部仍优先解析到 player_id 再执行业务查询,便于性能和统一索引

本地运行

推荐使用 Docker Compose

copy .env.example .env
docker compose up --build

默认接口:

  • GET /health
  • GET /api/ping
  • GET /api/client/time
  • GET /openapi.yaml

开发环境默认账号:

  • 后台用户名:admin
  • 后台密码:admin123456
  • 后台操作员:operator
  • 操作员密码:operator123456

接入说明

  • 平台授时:
    • 匿名接口 GET /api/client/time
    • 无需传 game_key
    • 返回 server_timeserver_unixserver_unix_ms
  • 客户端初始化:
    • 必填 game_key
    • 可选 client_version
    • device_id 仅作透传与诊断辅助
  • 客户端登录:
    • 必填 game_key
    • 必填 login_provider
    • login_user_idcode 二选一
    • 可选透传 nicknameavatar_urlprofile_json
  • 云存档:
    • 支持二进制文件上传/下载,适合直接存游戏存档 bytes
  • 玩家空间:
    • 主信息接口返回空间元数据
    • 自定义空间内容通过独立二进制接口上传/下载
    • 支持任意 bytes兼容二进制、文本、JSON、protobuf、msgpack 等格式
    • 空间点赞按 Asia/Shanghai 自然日计周期,同一玩家对同一空间每天最多记一次点赞
    • 空间点赞相关接口返回累计点赞数 like_count、当日点赞数 today_like_count、当日是否已点赞 liked_by_me
    • 最近访问列表支持可选 limit 参数,默认 50 条,最大 100

测试脚本

Windows PowerShell

.\scripts\smoke-test.ps1
.\scripts\acceptance.ps1 -Tasks all -ManageStack
.\\scripts\\acceptance.ps1 -Tasks space -ManageStack

迁移

数据库迁移目录:

服务启动时会自动执行未应用迁移。

根目录文档

目录说明

  • cmd/:启动入口
  • internal/:内部实现
  • deployments/:部署配置
  • docs/:历史设计文档与补充资料
  • scripts/:脚本