打开主菜单

Ballance Wiki β

更改

Virtools-shimmer/zh

添加3,476字节2021年2月17日 (三) 12:04
创建页面,内容为“{{Appbox/zh |name=virtools-shimmer |screenshot=virtools-shimmer.png |screenshotDesc=一张运行于{{zh|Virtools}} 2.5的virtools-shimmer截图,图中所有{{zh|Ba…”
{{Appbox/zh
|name=virtools-shimmer
|screenshot=virtools-shimmer.png
|screenshotDesc=一张运行于{{zh|Virtools}} 2.5的virtools-shimmer截图,图中所有{{zh|Ballance}}使用的{{zh|BB}}不再呈现找不到DLL的黄色
|author=chirs241097
|suit=Virtools 2.5
|link=[https://github.com/BearKidsTeam/virtools-shimmer GitHub页面]
|dependency=编译需要:<br />pharos-demangle<br />Python 3<br />MSVC
|status=pause
|date=2020年10月10日
|latest=
|license=[https://github.com/BearKidsTeam/virtools-shimmer/blob/master/LICENSE MIT]<ref>除{{zh|Virtools SDK}}外,其它的代码以MIT授权</ref>
}}

virtools-shimmer是一款让一些服务于Ballance的{{zh|Building Block}}可以运行在较新版本的Virtools的工具。目前,这个程序可以让Ballance的Building Block在Virtools 2.5上进行运行,这是距离Ballance使用的Virtools版本最近的,可获得的Virtools版本。

目前,该软件可以使用,使用后,将不会提示找不到Building Block对应的DLL的错误。所有的Building Block均可被正确列出。但是它仍然存在问题。此软件仅仅修复和重定向了ABI上的错误,但是其内部的虚函数调用的偏移仍然没有被修改。目前仅<code>TT_Gravity_RT</code>这一个库因为体量较小,修复了一部分的虚函数调用。不修复虚函数调用的结果就是可以检测到Building Block,但是完全没有办法让加载的Building Block运作。

但幸运的是,在此软件的帮助下,一些Building Block的设置界面得以打开,可以尝试调整一些设置。因为一些设置决定了这些Building Block的出入口数量,例如<code>TT Scaleable Proximity</code>,这使得可以对这些数据进行针对性调整,而不是还需要从原版Ballance脚本内复制需要的。

[[File:TTScaleableProximity设置界面.png|600px]]

== 兼容性 ==

程序需要使用Virtools 2.5来进行运行,尽管将代码改造成适用于Virtools 3.0和3.5版本是可行的,但目前没有进行改造。

== 下载 ==

原作者考虑到版权原因,拒绝放出可以直接解压然后就可以用的安装包,因此您需要前往此项目的GitHub页面,下载项目然后自行编译获得。按照编译手册,已有除了作者以外的人编译完成并使用。

== 编译 ==

=== 所需项目 ===

* [https://github.com/cmu-sei/pharos-demangle pharos-demangle]
* Python 3
* 一台Linux机器(最新版本的Debian已测试,可以编译)
* 一台装有支持CMake构建的MSVC的Windows机器

=== 编译过程 ===

* 转到Linux机器,先下载pharos-demangle,然后准备好make和必要的库(执行make会提示你缺什么),然后编译安装这个Python库。
* 运行<code>scripts/gen.py</code>生成填充文件的头文件和简单的实现。
* 使用在<code>patches</code>文件夹中找到的补丁来修补刚刚生成的代码。
* 转到Windows机器,建立新的解决方案。必须使用32位版本的MSVC(如果使用的是Visual Studio,则为“msvc_x86”环境)。编译时不要忘记将<code>VIRTOOLS_INCLUDE_DIR</code>和<code>VIRTOOLS_LIBS_DIR</code>的值设置为适当的路径。将生成的<code>cks.dll</code>放置在Virtools安装目录的根目录中。
* 使用<code>scripts/bblibpatcher.py</code>修补积木库DLL文件。 将修补的DLL文件放在Virtools安装目录的<code>BuildingBlocks</code>文件夹中。

== 注释 ==

<references />

[[Category:制图工具]]
1,136
个编辑