资源描述
游戏数据接口说明
游戏数据接口说明 1
cboss系统数据接口 1
Gm平台控制接口 2
cboss系统数据接口
一、 说明:
这里定义了游戏提供给cboss系统的数据结构及操作流程。
二、 操作流程:
每个游戏线路,会收集玩家角色在该线路的登录信息,并定时(如:间隔10分钟)发送一次下面定义的所有数据到cboss系统提供的http接口。
三、 数据定义:
四、 当前在线人数(sum)
五、 角色上下线记录(roles)
六、 接口定义:
http接口使用post协议提交数据,数据使用json格式,并用zip方式压缩;字符串数据使用utf-8编码;
json格式:{"num": 当前在线人数, "roles": 角色上下线记录}
角色上下线记录json格式:[[角色名, 等级, 登录时间, 退出时间], ...]
例子:{"num": 100, "roles": [["abc", 10, "1112291212", "1112291812"], ["ddd", 11, "1112291212", "1112291812"]]}
上面例子经过Zip压缩后数据:
'x\x9c\xabV\xca+\xcdU\xb2R040\xd0QP*\xca\xcfI-\x06\xf2\xa2\xa3\x95\x12\x93\x92\x95t\x80\xc2@QCCC##KC#C#%\x04\xcf\x02\xc8\x8b\xd5Q\x88VJII\x01)4\xc4\xab0\xb6\x16\x00\x13\xc3\x17T'
七、 Cboss系统http接口地址:
Gm平台控制接口
一、 说明:
这里定义了游戏提供给gm系统的数据结构及其操作流程。
二、 操作流程:
游戏提供http接口,gm系统使用http POST,调用游戏提供的http 接口。接口数据结构和安全认证,使用dgapi相同的数据结构和认证机制:
认证机制:由游戏方发放gm用户名和key给gm系统。gm系统使用key加密传输的具体数据,并将gm用户名和加密数据post到http接口;
数据加密过程:
encrypt_data = DGCrypt.encrypt(key, json_data)
加密的数据 = base64.b64encode(encrypt_data)
数据解密过程:
encrypt_data = base64.b64decode(加密的数据)
json_data = DGCrypt.decrypt(key, encrypt_data)
数据结构:{'client': gm用户名, 'data':加密的数据}
具体细节参考dgapi;
三、 接口定义:
说明:http接口处理post协议提交的数据,原始数据使用json格式;数据中的字符串数据使用utf-8编码;
a) 获取线路列表
请求:{'barea':大区名, 'area':服名}
应答:{'area_key':area_key, 'list':[线路名, chl_key], [....], .....]}
说明:
area_key, chl_key代表对应服或线路的唯一标识字符串,需要在后面使用;
大区名、服名,从(:8080/config/area_svr.xml)地址获取;
b) 系统消息发送
请求:
发送到整个服:{'area_key':area_key, 'message':消息, 'chat_scope':'世界', 'chat_type':消息类型, 'view_type':消息的显示位置}
发送到特定线:{'chl_key':chl_key, 'message':消息, 'chat_type':消息类型, 'view_type':消息的显示位置}
应答:{'result':Result, 'fail':失败的原因}
说明: 'chat_type':设定消息的类型:7=系统消息;
'view_type':设定消息显示的位置:1=滚动位置
c) 角色列表查询
请求:{'area_key':area_key, 'user_id':帐号id}
应答:[角色名, 性别, 等级, 职业], [....], .....]
d) 角色详细信息查询
请求:{'area_key':area_key, 'role':角色名}
应答:{'uid':角色id, 'name':角色名, 'sex':性别, 'job':职业, 'level':等级, 'exp':经验, 'last_leave':最后下线时间, 'total_online_time':总在线时间, 'acts':行动力, 'strength':力量, 'physique':体质, 'spirit':精神, 'intellect':智力, 'hp':生命值, 'ep':气力值, 'bag_money':包裹钱, 'reel':礼卷, 'chl':当前线路名, 'forbid_logon':是否禁止登录, 'forbid_chat':是否禁言}
e) 角色禁言
请求:{'area_key':area_key, 'role':角色名, 'forbid_chat':是否禁言}
应答:{'result':Result, 'fail':失败的原因}
说明:要求角色在线
f) 角色封禁
请求:{'area_key':area_key, 'role':角色名, 'forbid_logon':是否禁止登录}
应答:{'result':Result, 'fail':失败的原因}
说明:要求角色在线
g) 角色行动力修改
请求:{'area_key':area_key, 'role':角色名, 'acts':行动力}
应答:{'result':Result, 'fail':失败的原因}
说明:要求角色在线
h) 角色修改等级
请求:{'area_key':area_key, 'role':角色名, 'level':等级}
应答:{'result':Result, 'fail':失败的原因}
说明:要求角色在线
i) 角色发钱币
请求:{'area_key':area_key, 'role':角色名, 'money':金钱}
应答:{'result':Result, 'fail':失败的原因}
说明:要求角色在线
j) 邮件发送
请求:{'area_key':area_key, 'roles':[角色名, ...], 'content':邮件内容, 'items':[[物品id, 数量], ....]}
应答:{'result':Result, 'fail':失败的原因}
说明:items:邮件发送的物品列表,最多允许发送4种物品
k)
备注:
a. "是否xxx"的类型都为整型,取值:1=是,0=否
b. Result(整型):代表执行的结果,取值范围为:1=成功,0=失败
c. 性别(整型):取值:1=男 2=女
d. 等级(整型):取值0~60
e. 职业(整型):取值:1-剑士 2-科学家 3-异能者 4-特种兵
一、 http接口地址:
展开阅读全文