加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
本帖最后由 viktor 于 2012-4-10 10:17 编辑
【小bug: XP版本可能会出现找不到msgbox……解决:SM_Scene.rb 的105行开始改为:
if f!=nil
f.write ( sc.text )
f.close
::ScriptManager.msgbox sc.name + " saved to " + new_name
else
::ScriptManager.msgbox "save failed."
end
if f!=nil
f.write ( sc.text )
f.close
::ScriptManager.msgbox sc.name + " saved to " + new_name
else
::ScriptManager.msgbox "save failed."
end
】
March 19, rev. 3——
修复了不能识别嵌套module的问题。这样就可以和Yanfly大大的YEA脚本兼容了。
脚本解析错误的时候的p改成了msgbox,现在可以正确显示信息了。
管理器界面现在不列出方法名了,因为单个脚本的方法太多时会很慢(其实还是很慢)
Beta计划:
Beta版本估计会发到地球村。毕竟这个算作一个工具。不过我也希望能够提高它的效率,可以让别人在这个基础之上做一些比如游戏配置、动态开关功能之类的特性。
@晴兰 会尝试使用rIPPer来解析每一个脚本。这样分析的粒度可以大大提高,分析的脚本依赖性可以精确到方法。即使方法之外还有一些变量、语句什么的,如果把所有的方法都替换掉,这个脚本的功能也就基本上被屏蔽了吧。
*尝试使用Ripper解析。【先做一个VA版,然后再想办法兼容】
*精确到方法的分析。
*脚本信息、配置的存储和载入
*************有合适的办法来解析动态特性么?
测试与bug:
通过@rpgvxaces 的脚本合集http://rpg.blue/thread-225130-1-1.html 测试,这个版本可以解析所有的脚本。不过因为要parse两次,所以很慢(10多秒才能跑起来)
脚本管理界面也很卡,因为每一个脚本都很长很长……
取消脚本功能时,计算依赖性直接卡死……
所以还是得用ruby自己的parser为好。或者至少得来一个bootstrap加速
March 9:和YEA【Yanfly Engine Ace - Extra Param Formulas 】兼容性问题。因为scriptmanager没有正确处理嵌套module的情况,导致解析错误。fixed 【@杂兵】
临时解决方法:把YEA脚本里的module YEA 。。。end那一部分代码放到最后面
另外bug:VA里不能正确显示【解析错误,请查看日志】提示。修改中。
Feb.23 Rev. 2:
增加了大量兼容性脚本。现在脚本可以在XP/VX/VA中直接使用。
可以自动适应游戏窗口大小。
每次启动游戏时,会将原来的日志清空。
因为编码问题难以解决,把提示信息改成了英文。
note: ScriptManager::msgbox有部分乱码。求解决方法……
本作品测试版的许可协议暂定为CC BY-NC-SAv2.5
ScriptManager_Alpha_rev3.rar
(400.65 KB, 下载次数: 3985)
通用版rev.3 这次打包的项目是RPGVX Ace的项目。因为999KB的限制,没有打包system/RGSS300.dll,请自备,或 者把Scripts拷入已有项目中
In-Game脚本管理器 ScriptManager
作者: viktor
Alpha version, Feb 10, 2012
* 功能:
在游戏中显示正在运行的所有脚本信息:名称,符号(模块/类/方法)
实时激活/取消脚本功能。
支持载入外置rb/rxdata脚本
智能揪错:脚本出现“缺少符号”错误时,可以尝试自动解决
例如可以动态切换横、纵版战斗模式,普通/伪3D地图,或者对话框形状~
想使用新的脚本?可以不马上写进游戏工程,而用scriptmanager载入测试一下兼容性。在日志文件中会给出脚本兼容性的粗略分析。而且可以智能纠错
安装和注意事项见压缩包内说明
* 游戏中操作:
在大地图中,按F7呼出脚本管理器。
脚本列表中列出的各个脚本
黄色(CrysisColor)——已经激活。按回车键可以卸除脚本
灰色(DisabledColor)——未激活。按回车键可以激活脚本
白色(NormalColor)——已经取消。按回车键可以激活脚本。
脚本管理界面中 按F5可以导出选中的脚本。会以rb文件的形式保存在与选定脚本(rb/rxdata)相同的目录下。注意会覆盖原有的rb脚本。
效果图:
* 兼容性:
没有使用FSL协议,不过对其没有影响。