|
|
hace 4 meses | |
|---|---|---|
| .. | ||
| README.md | hace 4 meses | |
| base_type.proto | hace 4 meses | |
| battle.proto | hace 4 meses | |
| battle_report.json | hace 4 meses | |
| battle_report.proto | hace 4 meses | |
| chapter.json | hace 4 meses | |
| chapter.proto | hace 4 meses | |
| charge.json | hace 4 meses | |
| charge.proto | hace 4 meses | |
| chat.json | hace 4 meses | |
| chat.proto | hace 4 meses | |
| client.json | hace 4 meses | |
| conscript.json | hace 4 meses | |
| conscript.proto | hace 4 meses | |
| equip.json | hace 4 meses | |
| equip.proto | hace 4 meses | |
| exchange.json | hace 4 meses | |
| exchange.proto | hace 4 meses | |
| facility.json | hace 4 meses | |
| facility.proto | hace 4 meses | |
| hero.json | hace 4 meses | |
| hero.proto | hace 4 meses | |
| item.json | hace 4 meses | |
| item.proto | hace 4 meses | |
| league.json | hace 4 meses | |
| league.proto | hace 4 meses | |
| lineup.json | hace 4 meses | |
| lineup.proto | hace 4 meses | |
| lord.json | hace 4 meses | |
| lord.proto | hace 4 meses | |
| mail.json | hace 4 meses | |
| mail.proto | hace 4 meses | |
| map.json | hace 4 meses | |
| map.proto | hace 4 meses | |
| marquee.json | hace 4 meses | |
| marquee.proto | hace 4 meses | |
| minigame.json | hace 4 meses | |
| minigame.proto | hace 4 meses | |
| player.json | hace 4 meses | |
| player.proto | hace 4 meses | |
| quest.json | hace 4 meses | |
| quest.proto | hace 4 meses | |
| rank.json | hace 4 meses | |
| rank.proto | hace 4 meses | |
| recruit.json | hace 4 meses | |
| recruit.proto | hace 4 meses | |
| season.json | hace 4 meses | |
| season.proto | hace 4 meses | |
| shop.json | hace 4 meses | |
| shop.proto | hace 4 meses | |
| show.json | hace 4 meses | |
| show.proto | hace 4 meses | |
| sign_in.json | hace 4 meses | |
| sign_in.proto | hace 4 meses | |
| skill.json | hace 4 meses | |
| skill.proto | hace 4 meses | |
| team.json | hace 4 meses | |
| team.proto | hace 4 meses | |
| union.json | hace 4 meses | |
| union.proto | hace 4 meses | |
| vip.json | hace 4 meses | |
| vip.proto | hace 4 meses | |
本仓库用于定义
客户端<->服务端间的通信协议。
SDK业务使用http(s)进行连接。
游戏业务使用tcp/udp进行连接。protobuf3作为流序列化工具,pomelo协议作为数据包的格式(详见pomelo.md)。
SDK为玩家提供帐号身份服务。产品上线后,根据发行情况会进行多种SDK的接入。
根据情况,每个SDK会输出多个安装包。我们定义pid参数做为安装包的唯一标识。
在开发阶段,本游戏提供了一个开发模式sdk用于当前开发阶段使用。
帐号注册功能进行帐号注册。帐号信息进行SDK帐号登录,并返回SDK的用户标识(sdk user token)等参数。帐号验证接口,验证SDK的用户标识(sdk user token)参数,成功后并返回游戏token(game token)。网关地址,进行游戏登录、玩家创建、玩家登录等操作。| 参数名 | 类型 | 必填 | 描述 |
|---|---|---|---|
| code | int | 是 | 状态码 0.正常码,其他值为错误码 |
| message | string | 是 | 消息文本 |
| data | string | 否 | 业务响应数据 |
JSON{"code":0,"message":"成功","data":[]}{"code":100007,"message":"平台帐号验证失败","data":[]}pid?pid可以理解为 package unique id,给每个对外发布的安装包配置唯一的编号。pid统一由运营人员进行分配。SDK与pid的关系是一对多的关系。每个分配出去的pid必然归属于一个SDK。例如:pid=2122150归属于xx游戏的Q1SDK。本sdk用于开发阶段使用,需首先接入。客户端可以做一个临时的界面用于帐号注册、帐号登录。正式上线后通过打包系统输出其他sdk的安装包。
| 参数名 | 类型 | 必填 | 描述 |
|---|---|---|---|
| account | string | 是 | 帐号名 |
| password | string | 是 | 密码 |
该接口为通用帐号验证接口,适用于所有SDK。 每个SDK的请求参数都会稍有不一样,但响应结果为统一的json结构。
请求示例:http://127.0.0.1/login?pid=2188001&account=aaaa&password=bbbb
| 参数名 | 类型 | 必填 | 描述 |
|---|---|---|---|
| pid | string | 是 | 包id |
| account | string | 是 | 帐号名 |
| password | string | 是 | 密码 |
游戏协议业务的定义描述在本仓库的*.json和*.proto中。
json文件用于描述每条协议的详情,客户端可根据该文件生成客户端协议代码。
proto文件用于定义每条消息的结构。
Request/Response 两者为配对的消息,有Request必有ResponseNotify 指客户端推送消息给服务器,服务器不用回复Push 指服务器推送消息给客户端,客户端不用回复以下示例介绍了游戏业务的首条通信协议:登录游戏服。
[
{
"enable": true,
"name": "[请求]登录游戏服(首条)",
"route": "gate.user.login",
"request": "LoginRequest",
"response": "LoginResponse",
"notify": "",
"push": "",
"desc": "游戏服登录,连接游戏服的第一条协议"
}
]
enable 是否启用该条协议name 协议名称route 路由名称request request类型请求, LoginRequest为pb结构response response类型请求,LoginResponse为pb结构notify 客户端请求notify类型的消息,不用等待返回的消息push 服务端推送push类型的消息desc 协议描述