查看: 2619|回复: 5

[讨论] RMXP调用外部脚本

[复制链接]
梦石
0
星屑
50
在线时间
6 小时
注册时间
2013-7-6
回帖
2
发表于 2017-7-26 16:32:08 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
今天在翻硬盘的时候{:2_263:} ,发现一个很久以前的脚本:

a = File.open("rgss.txt");$b = "\n"
for i in a.readlines
$b += i + "\n"
end
eval($b)


这是说明:

功能:自己建立一个.txt文件(或者任意文件后缀),在里面写上脚本,让游戏执行这个脚本。如果把这个脚本放在F11的那个编辑器里面,则加密游戏也可以执行外部脚本。这样甚至可以为加密游戏添加一些新的系统——配合教学可以用同样VIP教学的在线升级。

好像是柳柳写的,很厉害呢 ( ̄▽ ̄){:2_280:}

我觉得这个脚本可以有很大的发展空间呢,比如可以把这一句
        a = File.open("rgss.txt");$b = "\n"
改成
        a = File.open("rgss.ll");$b = "\n"
神马的

通过改变拓展名使其无法通过正常途径读取(至少不是一眼看出来···){:2_272:}

不仅如此,我觉得还可以将内容加密,在执行过程中解密出来执行,在一定加密程度的保护下,就真的可以随游戏一起发布了,如果有更新或者修复的话,就直接将这个文件替换掉就行了{:2_282:}

各位如何认为呢?{:2_260:}
梦石
0
星屑
9557
在线时间
5074 小时
注册时间
2013-6-21
回帖
3459

开拓者贵宾剧作品鉴家

发表于 2017-7-26 17:08:50 | 显示全部楼层
[pre lang="Ruby"]$: << '.'
require 'rgss'
[/pre]

柳柳的这段脚本已经很旧了,现在看来应该是刚接触 ruby 的写法,不推荐使用。
改扩展名的方式略显无聊,加密的话我倒是更喜欢直接写在 Scripts.rxdata 里面,不知道拆开的具体作用。

点评

用load可以多次运行吧,require好像会跳过已经引用过的文件?  发表于 2017-7-26 22:46
回复

使用道具 举报

梦石
0
星屑
50
在线时间
6 小时
注册时间
2013-7-6
回帖
2
 楼主| 发表于 2017-7-26 17:12:57 | 显示全部楼层

啊?这样啊···{:2_276:}
回复

使用道具 举报

梦石
0
星屑
3069
在线时间
1054 小时
注册时间
2011-8-16
回帖
223
发表于 2017-7-26 17:22:09 | 显示全部楼层
  1. eval File.read('rgss.txt')
复制代码
回复

使用道具 举报

梦石
0
星屑
50
在线时间
6 小时
注册时间
2013-7-6
回帖
2
 楼主| 发表于 2017-7-27 15:51:34 | 显示全部楼层

哇,可以缩短这么多吗{:2_253:}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部