位置: 编程技术 - 正文

cocos2dx游戏资源加密之XXTEA(cocos2d开发的知名游戏)

编辑:rootadmin

推荐整理分享cocos2dx游戏资源加密之XXTEA(cocos2d开发的知名游戏),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:cocos2dx游戏资源解密提取,cocos2d游戏源码,cocos2dx游戏资源提取,cocos2dx游戏资源提取,cocos2dx小游戏,cocos2d游戏源码,cocos2d游戏源码,cocos2dx游戏资源提取,内容如对您有帮助,希望把文章链接给更多的朋友!

在手机游戏当中,游戏的资源加密保护是一件很重要的事情。

我花了两天的时间整理了自己在游戏当中的资源加密问题,实现了跨平台的资源流加密,这个都是巨人的肩膀之上的。在手机游戏资源加密这块,能做到安全加密保护的确实不多,有研究过专业平台爱加密的手机游戏加密解决方案,有兴趣的可以点此了解: 密码: qyqe 去下载加密资源的脚本,这个是quick-cocos2d-x提取出来的打包工具。

pack_files.sh -i olddir -o newdir -ek XXTEA -es decodetest

把ResourcesDecode和xxtea四个文件加入到cocos2dx/platform下;

把platform/ResourcesDecode.cpp platform/xxtea.c 加入到cocos2dx/platform的android.mk文件中,加入android编译。

写一个单例用来保存密码和对流解密过程,代码如下:

buffer就是经过XXTEA解密后正确的流。

在CCFileUtils::getFileData()当中return返回之前调用解密pBuffer =ResourcesDecode::sharedDecode()->decodeData(pBuffer, size, pSize);这里是跨平台的读取资源的方法。

在ZipFile::getFileData()当中也加入解密方法pBuffer =ResourcesDecode::sharedDecode()->decodeData(pBuffer, fileInfo.uncompressed_size, pSize);这个是android读取plist的地方,我也不太清楚为什么android会在这里读取资源。

cocos2dx游戏资源加密之XXTEA(cocos2d开发的知名游戏)

在bool CCSAXParser::parse(const char *pszFile)中把原先的rt改为rb : char* pBuffer = (char*)CCFileUtils::sharedFileUtils()->getFileData(pszFile,/*"rt"*/"rb", &size);

ios的修改地方 不一样

在CCFileUtilsIOS中的createCCDictionaryWithContentsOfFile修改如下,注释掉的是原先的,后面是新增的。

在CCImage.mm当中修改,同样是注释是原先的,后面是新增的。

android平台

在CCImageCommon_cpp当中修改如下

到此,基本结束了。

在自己程序当中加入资源前把设置密钥和标识和自己加密资源时的一样:ResourcesDecode::sharedDecode()->setXXTeaKey("XXTEA",strlen("XXTEA"),"decodetest",strlen("decodetest"));

其它就正常的读取和显示。

在cocos2dx中的pushScene()中应用截屏函数 在cocos2dx中,pushScene创建一个场景,而场景的背景是黑色的,目前我还没有找到合适的方法使其透明,所以在网上找到一个方法替代,就是截屏先上代码

cocos2dx 场景切换效果与调用顺序 Cocos2dx为两个场景之间切换,提供丰富的切换动画效果,例如:渐隐,翻页等。转换场景类继承自CCScene。场景切换的实现很简单,调用单例的replaceScene

将cocos2dx v2新版的项目从引擎包内提取出来 .创建工程,到tools/project-creator目录下,调用create_project.py脚本,这个创建大家应该都会了,就不多说了,不会的可以去查资料,即便是直接打出来脚本,也会有详

标签: cocos2d开发的知名游戏

本文链接地址:https://www.jiuchutong.com/biancheng/372721.html 转载请保留说明!

上一篇:Cocos2dx 跨平台使用(cocos如何实现跨平台)

下一篇:在cocos2dx中的pushScene()中应用截屏函数(cocos2djs)

  • 长期零申报的公司容易注销吗
  • 房产税如何
  • 注销库存股为什么股本减少
  • 个人转让房产两年内全额计税是什么意思
  • 印花税计入税金及附加吗
  • 实缴资本需要存放多久
  • 不征税发票需要预缴税款吗
  • 小微企业的企业所得税税收优惠政策
  • 增值税 不含税
  • 小微企业未开票收入大于45万怎么填
  • 增值税纳税义务发生时间
  • 汇算清缴亏损在后期弥补时怎么做会计处理?
  • 溢价收购全资子公司股票
  • 以固定资产增资子公司 可以溢价么
  • 公司成立初期费用入账
  • 单位收到社保补缴通知书后怎么办
  • 来料加工企业的会计处理问题
  • 办事处可以办理临时身份证吗
  • 公司接受安全罚款的账务处理
  • 银行承兑汇票开票流程图
  • 核销以前年度的其他应付款
  • 国际货运运费的计算基础
  • 计提社保公司承担部分的会计分录
  • 生产成本怎样结转科目明细
  • 在线网速测试需要付费吗
  • php for break
  • ipcservice.dll是什么?
  • PHP:escapeshellarg()的用法_命令行函数
  • 免征增值税的范围有
  • 汽车运输企业的实际成本计算单位是
  • php怎么输出中文
  • 可供出售金融资产和交易性金融资产
  • 发票中的密码区是如何形成的
  • 销售费用期末余额
  • 简要说说vue是什么?有什么主要的特性?
  • bg命令 将作业放到后台运行
  • 转账不同银行同城转账手续费多少
  • 购建或者生产符合资本化条件的资产
  • 哪些服务可以开具经纪代理服务发票
  • 企业资产的范围
  • 专利费用计入什么会计科目
  • 哪些收入需缴纳增值税
  • 以货换货怎么交印花税
  • 免税所得包括哪些
  • 收到税控盘退费怎么做分录
  • 购买材料增值税税率
  • 老板让我做分公司负责人能接受么
  • 企业商品报废如何处置
  • 凭证必须用凭证盒
  • 政府投资资产会计核算科目
  • 亏本处理产品怎么做账
  • 代收代缴水电费如何开票
  • 研究费用和开发费用加计扣除的究竟是哪部分
  • 挂靠被查出来后挂靠费怎么处理?
  • 研发支出是科目吗
  • 收到客户提供代付发票
  • 应交税费应交增值税已交税金怎么用
  • 会计一般采用什么科目
  • mysql基础概念
  • mysql更改密码命令
  • sql中查询语句
  • sql中case when的用法
  • bios怎么恢复出厂设置有什么后果?
  • mac系统不能用
  • FreeBSD su Sorry问题解决办法
  • win7更改win10系统要怎么更改
  • Mac系统中文件的唯一id
  • 只需2招 让Win10运行速度更加迅速
  • linux讲解
  • linux系统中文输入法切换不出来
  • rhel6提供5种基本的安装方式
  • cocos2dx 3.17
  • jquery validate
  • python中get怎么用
  • android 入门教程
  • android多语言失效
  • js过滤html代码
  • python中文分词库
  • 国税能级管理(国税局等级制度)
  • 苏30参数
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设