位置: 编程技术 - 正文
推荐整理分享塔防游戏(二) 埋雷(防止游戏数据被更改)(塔防游戏二战),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:塔防游戏二十颗星英雄死了变墓碑,塔防游戏二战防塔,塔防游戏二战防塔,塔防游戏二十颗星英雄死了变墓碑,塔防游戏二战,塔防游戏二战防塔,塔防游戏二战为题材的,塔防游戏二次元,内容如对您有帮助,希望把文章链接给更多的朋友!
本文给两个问题提供解决方案
1,防御塔的属性相当多,什么攻击力,攻击速度,攻击范围,建造花费,等等等等......
把他们的数据放到程序里面显然是不合适的,如果把这些数据放到程序中,十分不便于修改,
如果修改,需要重新编译才能重新运行。
,2,有些人会修改游戏数据,做出所谓的破解版,让我们的努力付之东流
数据安全很重要
1)把数据放进文件里可以很好地解决这个问题,为了以后做其他大一点的游戏也能用得到,这里就直接用sqlite3数据库。
不大了解的看百度百科: 飞机票:sqlite数据库的百度百科
为了方便,我把
{
1,sqlite3数据库代码(英文注释)
2,对sqlite3数据库代码的封装(便于使用,有中文注释)
3,sqlite3数据库的中文版可视化管理工具
}
封装成了一个压缩包上传了: 飞机票:cocos2dx上sqlite3数据库代码,封装及管理工具
不要分,觉得好给个评论我会很开心的 ^_^
把游戏数据用管理工具存到数据库中,需要什么读取数据库就好,即使游戏数据发生改变也不用重新编译了。
2)①你可能已经发现了,sqlite3数据库极其精简,没有权限管理,得到了数据库文件,随便找一个管理工具就能进行更改
在这里为防止运行前游戏数据被更改,我采用了进行文件MD5校验,来检查文件是否被动过手脚
运行游戏时,计算文件的MD5,和程序内部事先准备好的MD5进行比对,如果不对,立刻退出。
代码文件: 飞机票:cocos2dx下可用的,验证文件MD5代码及使用方法
不要分,觉得好给个评论我会很开心的 ^_^
②压轴用的重头戏来了
你如果是手游爱好者的话,应该用过八门神器吧,它会在游戏运行时修改内存中的游戏数据。
我的方法是随机得到一个密匙作为数据成员,给其它数据成员设置set和get方法,set或get时,通过自定义算法对数据进行加密和解密,
保证数据成员中存储的数据是经过加密的,让看内存的人不能准确定位变量的地址,即使找到了地址,不知道算法,也不会改。
头文件代码:
cpp文件代码:
通过自定义加密方法,你甚至可以验证数据的合法性(如本文中,因为进行左移运算,当数据成员为奇数时即为非法数据)。
关于游戏数据安全问题,欢迎交流。
Cocos2d-x c++和java相互调用 一:JAVA调用C:参考:
cocos2dx CardinalSpline和CatmullRom算法 想想那些鱼儿游动的漂亮曲线,还记得水果忍者的手指划过那一道道划痕吗,众所周知这一切都是很多个点组成的线段,这些都离不开样条插算法。特
Cocos2d-x的学习之旅(二)HelloWorld 声明本教程仅用于初学cocos2dx同学使用,内容由本人(Code-Man)编写,此教程使用cocos2dx版本为3.4。本教程内容可以自由转载,但必须同时附带本声明,或
标签: 塔防游戏二战
本文链接地址:https://www.jiuchutong.com/biancheng/368801.html 转载请保留说明!上一篇:cocos2dx 3.x系列之Mac环境编译Android apk须知(cocos 2d x)
友情链接: 武汉网站建设