查看: 3842|回复: 2

[原创发布] RGD - 常见问题及解决方案

[复制链接]
梦石
2
星屑
6767
在线时间
501 小时
注册时间
2018-3-23
回帖
487

R考场第七期银奖

发表于 2020-3-16 11:11:07 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 MCCF 于 2020-7-25 13:10 编辑

众所周知,⑨大的RGD是对RGSS3的重构,通过DirectX实现在Windows平台下RMVA性能的大幅提升。
然而,RGD在使用上有时会遇到一些问题……在这里权且总结一下,如有更多意见和方案欢迎虐菜提出……

RGSS300.dll问题RGD不支持RGSS300.dll,而RMVA1.00只有RGSS300.dll,于是就发生了问题。
并不一定要另装新版才能解决该问题——接下来在此梳理一下关于该问题的解决方案。

1. 使用RGD覆盖后出现“错误的DLL文件”?
这是由于RGD读取到DLL文件,但是不支持该DLL。通常情况下,就是由于使用了RGSS300.dll造成的。

提示“错误的DLL文件”

提示“错误的DLL文件”


想要解决也很容易——将RGSS301.dll塞入游戏根目录的System文件夹,然后修改Game.ini中Library=System/RGSS301.dll。
然而,RMVA1.00由于本身自带RGSS300,因此每次保存,都会覆盖RGSS300.dll和Game.ini。
一劳永逸的解决办法是把RGSS301.dll复制到RMVA安装目录,覆盖RGSS300.dll。这样,所有工程读取的都是RGSS301了。这种方法适用于大量使用RGD(?)的用户。
如果不想全部替换为301(例如由于论坛汉化版使用301必须包含一个VLGothic字体,测试等时不便),也有一些方法解决,例如修改只读属性。然而据我了解,RMVA在遇到任何只读属性时,都会出现如下提示:

提示“移除只读属性”

提示“移除只读属性”

如果你选择取消,软件就会自动退出。
所以,通过修改RGSS300.dll或Game.ini只读是无效的。
因此,最好的办法大概还是每次保存都手动修改Game.ini……

其它问题1. 提示“加载RGSS核心库失败”?
看起来很高大上,实际上就是RGD找不到或无法读取Game.ini内指定的DLL内容。解决方法易知……

2. 提示“找不到VL Gothic字体”?
其实这大概率不是RGD的锅。实际上,RMVA的标准字体就是VL Gothic,但是汉化版做了处理使得默认字体为宋体。
而如果要使用RGSS301.dll,则必须要把这个字体放入游戏根目录下的Fonts文件夹。
该字体是类似于Consolas的等宽字体,合理运用百度,此处不再放链接。
(实际上,脚本编辑器中的那个伪等宽字体就是VL Gothic……)

附赠福利由于LZ太懒,认为修改Game.ini过于麻烦,于是动手做了个程序,双击自动把Library纠正为System/RGSS301.dll……
链接:https://pan.baidu.com/s/1_m1gj5IfEBPr52YMH9n0XA
提取码:titd
另附C++源码:
[pre lang="ruby"]#include<cstring>
#include<fstream>
#include<iostream>
using namespace std;

int len;
char con[1050][1050];
int main()
{
    ifstream read("Game.ini");
    ofstream file;
    for(len=1;!read.eof();len++){
        read.getline(con[len],1000);
        if(con[len]==strstr(con[len],"Library=")){
            strcpy(con[len],"Library=System/RGSS301.dll");
        }
    }
    read.close();
    file.open("Game.ini");
    for(int i=1;i<=len;i++){
        file<<con<<endl;
    }
    file.close();
    return 0;
}[/pre]
祝好。
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

在本版发帖返回顶部