这是爬塔的协议

<?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. HDU 1542 矩形面积并【离散化+线段树+扫描线】

    <题目链接> 题目大意: 给你n个矩形,求出它们面积的并. 解题分析: 此题主要用到了扫描线的思想,现将各个矩形的横坐标离散化,然后用它们离散化后的横坐标(相当于将矩形的每条竖线投影在x轴 ...

  2. python实现FTP弱口令扫描器与简单端口扫描器

    python实现FTP弱口令扫描器与简单端口扫描器 目录 FTP弱口令扫描器 简单端口扫描器 参考: https://blog.csdn.net/rebelqsp/article/details/22 ...

  3. scikit-learn全局图

    https://scikit-learn.org/stable/tutorial/machine_learning_map/index.html

  4. 如何成为java高手

    成为Java高手是每个Java学习者的梦想,但目前Java知识分支众多,我们该如何学习?本文介绍成为Java高手需要注意的25个学习目标,希望对正在成为Java高手的您有所帮助. 1.你需要精通面向对 ...

  5. Linux虚拟地址和物理地址的映射

    ➤背景 一般情况下,Linux系统中,进程的4GB内存空间被划分成为两个部分------用户空间和内核空间,大小分别为0~3G,3~4G.用户进程通常情况下,只能访问用户空间的虚拟地址,不能访问到内核 ...

  6. 码云 使用 汉化 GitHub

    enhancement 增强feature 功能duplicate 重复的invalid 无效的wontfix 无法修改 不处理 ===== Wiki 主要是您项目的文档(说明, 状态)等等. 该项目 ...

  7. 洛谷.2596.[ZJOI2006]书架(Splay)

    题目链接 /* 五个操作: 1.将某元素置顶.删掉这个数,插入最左 2.将某元素置底.同样 3.旋到根后,直接将这个数与前驱/后继交换所有信息 不是左右子节点! 4.5.裸平衡树 ps:1.用pos[ ...

  8. jquery终止函数

    jQuery如何退出each循环?如何退出function函数?1.在函数内部使用return false是跳出function;在each的回调函数中使用return false,是跳出each循环 ...

  9. [原创]H5前端性能测试工具介绍

    [原创H5前端性能测试工具介绍 一 网络抓包工具 网络抓包工具选择原则,可以捕获网络请求,抓取具体请求信息流,同时可以针对网络请包进行修改或拦截: 1.Fiddler(推荐) 2.Charles(推荐 ...

  10. 27.移除元素(c++方法实现)

    问题描述: 给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度. 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间 ...