Project1

标题: 一种公开所有工程数据但禁止编辑的RM加密方式适用在线更新 [打印本页]

作者: 流川枫    时间: 2009-7-11 20:44
标题: 一种公开所有工程数据但禁止编辑的RM加密方式适用在线更新
一种公开所有工程数据但禁止编辑的RM加密方式,适用在线更新。
我做了一个加密的RMXP的工程,这个工程的所有图片和数据还有声音都是公开的,但是却不能被编辑,只能玩。
用途:如果想要支持在线更新业务,直接下载整个游戏数据过于庞大,除非把未加密的工程完整的发布,这样就可以只下载需要更新的图片或其他数据,所以这时候可以考虑使用我的这种加密方法,并可以结合其他的加密技术一起使用,效果更加!

你可以运行这个游戏,但是用RM打开它却什么都地图都看不到,而且就算你新建地图并让主角位置移动到那里,也不行。
我现在上传的这个工程,我只加密了地图数据,其他数据都没加密,所以其他数据你可以修改。
但是其他数据也可以加密,但是只有一个数据是加密不了的……

其实这个加密严格的说并不是真正的加密,对了解RM的人来说形同虚设。
防修改加密.rar (194.3 KB, 下载次数: 270)
作者: 玮哥投胎了    时间: 2009-7-11 20:49
我只加密了地图数据,其他数据都没加密,所以其他数据你可以修改。
但是其他数据也可以加密,但是只有一个数据是加密不了的……


何解……
作者: 流川枫    时间: 2009-7-11 20:50
真相只有一个,你猜
作者: 奶油Da蛋糕    时间: 2009-7-11 21:38
我下载的梦幻群侠传3貌似就用了这个。
连模拟战斗都不行。
作者: 奶油Da蛋糕    时间: 2009-7-11 21:47
下载了范例工程,却发现不会用。#2
作者: 越前リョーマ    时间: 2009-7-11 22:07

本来也没准备干嘛,所以修改原有地图做不到。
只是把禁止修改初始地这点给改了,原本估计是在脚本中把由事件设置的角色出生地直接指定了,所以把相关脚本还原了。
作者: 流川枫    时间: 2009-7-11 22:10
1379
本来也没准备干嘛,所以修改原有地图做不到。
只是把禁止修改初始地这点给改了,原本估计是在脚本中把由事件设置的角色出生地直接指定了,所以把相关脚本还原了。 ...
越前リョーマ 发表于 2009-7-11 22:07

不过改了初始位置一点用也没有,因为就算刷极刷钱,但也不能再访问原来游戏的地图了。
作者: 越前リョーマ    时间: 2009-7-11 22:15
怎么会回不去呢,设置一个传送就行了。只不过你那两个地图都是空的,所以我没法传送。
作者: 流川枫    时间: 2009-7-11 22:17
怎么会回不去呢,设置一个传送就行了。只不过你那两个地图都是空的,所以我没法传送。
越前リョーマ 发表于 2009-7-11 22:15

没有用的,因为地图数据已经被加密了,无法读取
作者: 后知后觉    时间: 2009-7-11 23:50
#@map = load_data(sprintf("Data/Map%03d.rxdata", @map_id))
    file = File.open(sprintf("Data/Map%03d.rxdata", @map_id), "rb")
    temp = Marshal.load(file)
    exit if temp != 3862
    @map = Marshal.load(file)
    file.close


Marshal这个写的东西有层级关系 再对那些东西Marshal一次 就是【加密】了吧~
脚本文件加不了 所以……

是这样的吧……
作者: 流川枫    时间: 2009-7-12 00:30
#@map = load_data(sprintf("Data/Map%03d.rxdata", @map_id))
    file = File.open(sprintf("Data/Map%03d.rxdata", @map_id), "rb")
    temp = Marshal.load(file)
    exit if temp != 3862
    @map = Marshal ...
后知后觉 发表于 2009-7-11 23:50

そう、すばらしいね~
作者: orochi2k    时间: 2009-7-12 01:58
话说当年66发半加密的黑暗圣剑也是这方法 囧
作者: zh99998    时间: 2009-7-12 07:53
(自我屏蔽)
作者: 友城二世    时间: 2009-7-12 14:10
完全不懂……
作者: 后知后觉    时间: 2009-7-12 15:19
如果脚本里用到了地图的名字的话
就把MapInfos.rxdata里装的名字转到Map文件里去
然后新建个工程把新工程的MapInfos.rxdata复制过来覆盖自己的MapInfos.rxdata
然后打开工程……
作者: 流川枫    时间: 2009-7-12 16:17
如果脚本里用到了地图的名字的话
就把MapInfos.rxdata里装的名字转到Map文件里去
然后新建个工程把新工程的MapInfos.rxdata复制过来覆盖自己的MapInfos.rxdata
然后打开工程…… ...
后知后觉 发表于 2009-7-12 15:19

理解……ない。
作者: 我不宅    时间: 2009-7-12 16:18
理解……ない。
流川枫 发表于 2009-7-12 16:17

此...此方....不.........不行了.................逃
作者: 亿万星辰    时间: 2009-7-12 18:16
其实用UE打开会看出不同点……
然后让 04 08 6f 3a 0d 52 50 47 这串做开头,其实地图的第一行都是一样的……
就可以正常打开了……掩面逃走了~
作者: 流川枫    时间: 2009-7-12 20:38
其实用UE打开会看出不同点……
然后让 04 08 6f 3a 0d 52 50 47 这串做开头,其实地图的第一行都是一样的……
就可以正常打开了……掩面逃走了~
亿万星辰 发表于 2009-7-12 18:16

駄目ですよ、全然ない。
作者: 流川枫    时间: 2009-7-12 20:56
此...此方....不.........不行了.................逃
我不宅 发表于 2009-7-12 16:18

待て、待て、この御宅さん。
作者: 越前リョーマ    时间: 2009-7-12 21:42
嘛,我本来也不会脚本。
不过既然都被人解了,可以发一下“加密”方式么?
作者: 流川枫    时间: 2009-7-13 01:43
file = File.open("Data/a.txt", "wb")
file2 = File.open("Data/Map001.rxdata", "rb")
st = 3862
    Marshal.dump(st, file)
    Marshal.dump(Marshal.load(file2), file)
p "Finish"
exit
作者: 玄月    时间: 2009-7-13 08:26
其实把脚本换个地方,把数据也换个地方对小白来说也算加密了 = = 虽说对我来说RM的基础加密方法也是纸老虎
作者: 天使喝可乐    时间: 2009-7-13 13:23
貌似很不实用..这个对编辑的人也有影响吧..
作者: 后知后觉    时间: 2009-7-13 13:42
加密这事情肯定是在最后发布之前才做

而且肯定要备份未加密处理文件

对原作者没什么影响
作者: 亿万星辰    时间: 2009-7-13 17:02
本帖最后由 亿万星辰 于 2009-7-13 17:05 编辑

楼主JP来的么?可我看签名里写的是中文啊~

不过既然你不想承认我说的那个方法能够破解,那我就不好再多说了。
作者: 流川枫    时间: 2009-7-13 19:34
駄目ですよ、全然ない。
流川枫 发表于 2009-7-12 20:38

意味:不行的呦,不完全。
作为范例,这是最简单状况,复杂情况下,可以将MAP对象加密(二进制换算)的说。
作者: 玄月    时间: 2009-7-13 20:59
啊啊 -  - 楼主在晒日文呢,虽然都看得懂
作者: 465889216    时间: 2009-7-13 21:51
提示: 作者被禁止或删除 内容自动屏蔽
作者: 流川枫    时间: 2009-7-14 02:44
话说完全不懂
加密后使用某种方式使RM打不开文件不久好了
用啥子脚本

欺负我们小白?
465889216 发表于 2009-7-13 21:51

正如你所说,这个方法就是使RM打不开文件呢。
不过,也只是设一道屏蔽而已,全然だめだめだめ~!
作者: 阿强    时间: 2009-7-14 07:14
提示: 作者被禁止或删除 内容自动屏蔽
作者: 牛肉面    时间: 2009-7-14 08:20
用别的地图数据替代这个地图……
作者: faust    时间: 2009-7-14 14:45
我就想起了那个外挂的AI
作者: 赫卡特    时间: 2009-7-14 15:01
这功能真囧~
作者: 流川枫    时间: 2009-7-14 17:30
话说- -这个脚本有什么用....让人打不- -开~~那玩家玩什么..?
阿强 发表于 2009-7-14 07:14

你运行一下楼顶我上传的范例就知道了
作者: 流川枫    时间: 2009-7-14 17:31
用别的地图数据替代这个地图……
牛肉面 发表于 2009-7-14 08:20

读取失败
作者: zxc13579a    时间: 2009-7-15 10:52
弄什么不懂
作者: zxc13579a    时间: 2009-7-15 10:56
呼呼
作者: zxc13579a    时间: 2009-7-15 10:56
是不是破解密码的?
作者: dna_7086    时间: 2009-7-16 01:11
提示: 作者被禁止或删除 内容自动屏蔽
作者: 流川枫    时间: 2009-7-16 02:46
唉,本来Marshal就是为了压缩存储数据的……
压缩数据被理解为加密了…………
虽然加密是从压缩衍生来的,但也……-_-bbb
压缩一次,使用那啥magickey就已经将redundancy降得很低了……
再用一次可能会有负压缩现 ...
dna_7086 发表于 2009-7-16 01:11

理解……不能。
作者: dna_7086    时间: 2009-7-16 03:31
提示: 作者被禁止或删除 内容自动屏蔽
作者: 流川枫    时间: 2009-7-16 03:49


厄,说的不是一个事哈~~~:dizzy: :lol
抱歉…………
不管怎么加密因为是单机的,所以都是没有实用价值且降低使用效率的…………
除非游戏全部是独立的操作系统…………………………:L
RM里所谓的加密其实都是压 ...
dna_7086 发表于 2009-7-16 03:31

使用……可能。
私仅仅只是做一个障碍,并不打算绝对加密。
作者: 金色天空    时间: 2009-7-17 09:26
提示: 作者被禁止或删除 内容自动屏蔽
作者: mafiaboy    时间: 2009-7-17 13:42
额 不晓得加密会不会拖速度呢...还有额这个工程EXE能不能加壳的啊
我觉得还是少往加密方向考虑、太不靠谱了你怎么加别人就怎么破解、、随便加下防止那些个伸手党就O了 不过要是能像MD5那种BT加密算法还是值得提倡的
作者: 465889216    时间: 2009-7-18 13:37
提示: 作者被禁止或删除 内容自动屏蔽




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1