这是爬塔的协议

<?xml version="1.0" encoding="utf-8" ?>
<coder name="TowerMsg" version="1" oldversion="1">
<includes>
<include file="tower.xml" />
<include file="commdef.xml" />
<include file="basebattledata.xml" />
</includes>
<defines>
<!--各自宏定义-->
<!-- 最大爬塔奖励数 -->
<define name="MAX_TOWER_ENC_NUM" value="8" />
</defines>
<types>
<!-- 打开爬塔请求 -->
<type name="P_OPTOWER_REQ" MsgID="1600">
<!-- 扩展字段 -->
<item name="Ext" type="word" />
</type>
<!-- 打开爬塔应答 -->
<type name="P_OPTOWER_ACK" MsgID="1601">
<!-- 错误码 -->
<item name="ErrCode" type="word" />
<!-- 当前铜钱 -->
<item name="CurCoin" type="uint64" />
<!-- 当前元宝-->
<item name="CurGold" type="uint64" />
<!-- 当前技能点 -->
<item name="CurSkillP" type="uint64" />
<!-- 最大爬塔层记录 -->
<item name="MaxID" type="word" />
<!-- 当前层信息 -->
<item name="CurTIF" type="D_TOWERIF" />
<!-- 排行榜最高层数 -->
<item name="RankMaxID" type="word" />
<!-- 排行榜第一的玩家名称 -->
<item name="RankDispName" type="tstring" count="DSPNAME_LEN" />
<!-- 排行榜第一的玩家队长 -->
<item name="RankMHero" type="word" />
</type>
<!-- 爬塔请求 -->
<type name="P_CLIMBTOWER_REQ" MsgID="1602">
<!-- 塔层 -->
<item name="ID" type="word" />
</type>
<!-- 爬塔应答 -->
<type name="P_CLIMBTOWER_ACK" MsgID="1603">
<!-- 错误码 -->
<item name="ErrCode" type="word" />
<!-- 战斗信息 -->
<item name="BattleIf" type="D_ATTACK_D" count="1" />
<!-- 奖励信息 -->
<item name="EncNum" type="byte" />
<item name="EncInfo" type="D_ENCOURAGE" count="MAX_TOWER_ENC_NUM" refer="EncNum" />
<!-- 当前层信息 -->
<item name="CurTIF" type="D_TOWERIF" />
</type>
<!-- 重置爬塔请求 -->
<type name="P_RESETTOWER_REQ" MsgID="1604">
<!-- 扩展字段 -->
<item name="Ext" type="byte" />
</type>
<!-- 重置爬塔应答 -->
<type name="P_RESETTOWER_ACK" MsgID="1605">
<!-- 错误码 -->
<item name="ErrCode" type="word" />
<!-- 重置爬塔次数 -->
<item name="ResetNum" type="word" />
<!-- 当前元宝 -->
<item name="CurGold" type="uint64" />
<!-- 当前层信息 -->
<item name="CurTIF" type="D_TOWERIF" />
</type>
</types>
</coder>

将该XML文件拷到

E:\xg\server\src\server\protocol\xml

这个目录下

然后用这个目录E:\xg\server\tool下的vscoder.exe工具生成GBK协议

lua -- 生成协议的更多相关文章

  1. java+redis+lua生成自动增长的ID序列号

    1.编写lua脚本用于生成主键ID序列号,内容如下 local key = tostring(KEYS[1]); local count = tonumber(KEYS[2]); local date ...

  2. Lua生成比较理想的随机数的方法

    lua需要生成随机数的需求也是很常见的,为了生成看起来更随机的数字,我们需要注意以下几点 我们也需要给随机数设置随机数种子:math.randomseed(xx) lua对随机数种子也是有一定要求的: ...

  3. Redis调用lua生成验证码

    场景: ​ 通过微信公众号拿验证码在APP上绑定,为了防止重复,尝试使用reids-lua的方法实现此功能 以下是 php 调用 redis.eval 方法传入的 lua 方法,当然这只是修改后的,保 ...

  4. Web服务图片压缩,nginx+lua生成缩略图

    背景 目前而言,用移动端访问Web站点的用户越来越多,图片对流量的消耗是比较大的,之前一个用户用我们网站的app浏览的时候,2个小时耗去了2个G的流量,这是个很严重的问题,需要对图片进行压缩,减少对用 ...

  5. Lua生成Guid(uuid)

    全局唯一标识符(GUID,Globally Unique Identifier)也称作 UUID(Universally Unique IDentifier) .GUID是一种由算法生成的二进制长度为 ...

  6. lua生成UUID

    百度云盘地址: https://pan.baidu.com/s/1zo__vSeDGaHOvCJLyzHwvA GitHub地址: https://github.com/bungle/lua-rest ...

  7. 初次使用Python脚本,proto协议文件转Lua代码

    使用IntelliJ IDEA编辑器编写Lua脚本的时候,安装一个插件 "EmmyLua" 可以对有代码提示功能 想把protoBuf协议文件转成Lua代码,然后给出代码提示 第一 ...

  8. #Lua:Lua调用C++生成的DLL库

    Lua调用C++生成的DLL库 本文参考了某大佬的博客,写得十分详细,推荐!!! 需求: 在之前的求解器中添加了Lua库,使得程序可以在Lua脚本中实现自定义函数功能,考虑到未来可能需要与第三方程序库 ...

  9. lua解析脚本过程中的关键数据结构介绍

    在这一篇文章中我先来介绍一下lua解析一个脚本文件时要用到的一些关键的数据结构,为将来的一系列代码分析打下一个良好的基础.在整个过程中,比较重要的几个源码文件分别是:llex.h,lparse.h.l ...

随机推荐

  1. 033 关于YARN的HA

    一:准备 1.规划 namenode               namenode ZKFC ZKFC journalnode        journalnode               jou ...

  2. 【Java并发核心五】Future 和 Callable

    默认情况下,线程Thread对象不具有返回值的功能,如果在需要取得返回值的情况下会极为不方便.jdk1.5中可以使用Future 和 Callable 来获取线程返回值. Callable 可以 看成 ...

  3. 潭州课堂25班:Ph201805201 WEB 之 CSS 第三课 (课堂笔记)

    在 CSS 中第个标签都可以认为是个盒子,盒子就有以下几层 边框 border border-top: 5px solid black; /*上边框 实线*/ border-right: 3px do ...

  4. [HackerRank]Choosing White Balls

    [HackerRank]Choosing White Balls 题目大意: 有\(n(n\le30)\)个球排成一行,每个球的颜色为黑或白. 执行\(k\)次操作,第\(i\)次操作形式如下: 从\ ...

  5. 一款功能强悍的web磁盘管理工具 (A powerful web disk management tools)

    https://github.com/kingAnyWHere/web-ftp web-ftp 一款功能强悍的web磁盘管理工具 (A powerful web disk management too ...

  6. java学习手册

    http://www.runoob.com/java/java-environment-setup.html

  7. java字符串反转

    1.递归反转 public static String reverseString(String x) { if (x == null || x.length() < 2) return x; ...

  8. Hbase多版本的读写(Shell&Java API版)

    Hbase是基于HDFS的NOsql数据库,它很多地方跟数据库差不多,也有很多不同的地方.这里就不一一列举了,不过Hbase有个版本控制的特性,这个特性在很多场景下都会发挥很大的作用.本篇就介绍下基于 ...

  9. System.currentTimeMillis()方法

    用途一:计算某任务 耗费的毫秒 用途二:获得当前的系统时间 用途三:用当前毫秒数给文件命名等 其他用途:比如随机数的种子数等 示例: package currenttimemillis方法; impo ...

  10. 机器学习笔记(2):线性回归-使用gluon

    代码来自:https://zh.gluon.ai/chapter_supervised-learning/linear-regression-gluon.html from mxnet import ...