Skip to content

配置项详解

翻译自原文档:https://osdn.net/projects/emuera/wiki/config

Emuera 首次启动时,会在与 exe 相同的文件夹中创建 emuera.config

启动后,从菜单的帮助设置中也可以修改。此外,直接用文本编辑器改写 emuera.config 也能修改设置,修改会在下次启动 Emuera 时生效。用文本编辑器改写时,请注意项目名不要写错。

○ ボタンの途中で行を折りかえさない:YES
× ボタンの途中で行を折りかえさない:ON
× ボタンの中途で行を折りかえさない:YES

想恢复初始设置时,删除 emuera.config 再启动 Emuera 即可。只有与 exe 同文件夹下的 emuera.config 会起作用。

如果 csv 文件夹中存在 _fixed.config_default.config,部分项目可能无法修改,或标准值会不同。详情请参阅强制配置项目

本页的默认值以 Emuera 源码 Domain/Config/ConfigData.cs 为准。个别项目的文档记载与当前源码不一致时,以源码为准。

环境

マウスを使用する(使用鼠标)

是否接受鼠标输入。

メニューを使用する(使用菜单)

是否显示菜单。

如果设为不显示,将无法从菜单修改设置,只能通过修改 emuera.config 恢复。

デバッグコマンドを使用する(使用调试命令)

是否在主控制台接受调试命令。默认为 NO

在调试控制台中,无论该选项如何,都可以执行调试命令。

多重起動を許可する(允许多开)

是否允许同时启动多个 Emuera。

キーボードマクロを使用する(使用键盘宏)

是否使用 F1F12 的键盘宏。

另外,如果代码使用了 ONEINPUTONEINPUTS 指令,键盘宏将无法正常工作,这是规格。

オートセーブを行なう(进行自动保存)

是否在执行 BEGIN SHOP 指令的同时进行自动保存。

该功能可以被 ERB 脚本实质禁用,因此即使开启,也可能实际上没有保存。

セーブデータをsavフォルダ内に作成する(在 sav 文件夹内创建存档)

设置存档放在 exe 同目录下,还是创建 sav 文件夹并放入其中。默认为 NO

设为 YES 时如果 sav 文件夹不存在,会弹出对话框询问是否自动移动 sav 文件。回答后,现有的 global.savsave*.sav 都会被移动到 sav 文件夹内。从 YES 改回 NO 时,请手动移动 sav 文件。

履歴ログの行数(历史日志行数)

保存历史日志的最大行数。下限为 500 行。

無限ループ警告までのミリ秒数(无限循环警告的毫秒数)

在指定时间内没有执行 WAIT 系指令时,弹出警告对话框。

设为 0 时该功能无效。

下面这样的脚本虽然是无限循环,但中间夹了 WAIT,因此不会被警告:

erb
$LOOP
WAIT
GOTO LOOP

用右键或 Esc 跳过消息时,只要中间夹了 WAIT 也不会被警告。

使用するセーブデータ数(使用的存档数量)

存档/读取画面显示的存档数量。下限为 20(与 Eramaker 相同),上限为 80。

関連づけるテキストエディタ(关联的文本编辑器)

点击错误信息时,用这里设置的文本编辑器打开对应文件。

コマンドライン引数(命令行参数)

把文件传给文本编辑器时附加的命令行参数。

显示

描画インターフェース(绘制接口)

用于绘制的接口。可选值:

  • WINAPI:用 gdi32.dllTextOut 函数绘制(GDI 绘制)。1.700 追加的绘制方式,比其它方式更快(但在某些环境下反而更慢)。
  • GRAPHICS:用 Graphics.DrawString 函数绘制(GDI+ 绘制)。等同于旧选项使用 GDI+:YES。GDI+ 的特点是非等宽字体也可能出现字符串宽度偏移。
  • TEXTRENDERER:用 TextRenderer.DrawText 函数绘制(GDI 绘制)。等同于旧选项使用 GDI+:NO

源码中的默认值为 TEXTRENDERER

フレーム毎秒(每秒帧数)

一秒最多绘制多少次。设小一些可以让运行更快。

如果最大スキップフレーム数较小,那么即使把每秒帧数设小也不会变快。

PRINTCを並べる数(并排的 PRINTC 数量)

PRINT_SHOPITEM 等系统执行 PRINTC 指令时,每几个换一次行。Eramaker 原作中为 3。

设为 0 时,不按 PRINTC 数量折行。此时请同时把ボタンの途中で行を折りかえさない设为 YES。这样当内容超出窗口尺寸时会自动折行。

PRINTCの文字数(PRINTC 的字符数)

PRINTC 一共补足到多少个字符(在左侧补半角空格)。Eramaker 原作中为 25。

显示商店商品时使用该字符数 +1。Eramaker 中商店商品会格式化为 26 个字符。

一行能排下的字符数大约为 (窗口宽度) / (字体大小) * 2,请让 (PRINTC 的字符数+1) * (并排的 PRINTC 数量) 小于它。

ボタンの途中で行を折りかえさない(不在按钮中间折行)

所谓按钮,是指 [200] - セーブ 这样可用鼠标选择、点击的字符串。

初始值为 NO,与 Eramaker 一样显示。设为 YES 时,会把超出窗口的整个按钮移到下一行。

窗口

ウィンドウ幅(窗口宽度)

启动时的窗口宽度。是绘制区域的宽度,不是整体尺寸。

ウィンドウ高さ(窗口高度)

启动时的窗口高度。是绘制区域的高度,但包含最下方输入部分的高度。

ウィンドウの高さを可変にする(窗口高度可调整)

运行时是否可以改变窗口大小。

起動時にウィンドウを最大化する(启动时最大化窗口)

默认 NO。设为 YES 时,Emuera 会以最大化状态启动。

起動時のウィンドウの位置を固定する(固定启动时的窗口位置)

运行时是否使用指定的窗口位置。不指定时,ウィンドウ位置XY 没有意义。

ウィンドウ位置X / ウィンドウ位置Y

固定窗口位置时的坐标。显示器左上角为 (0,0),X 越大越靠右,Y 越大越靠下。

スクロールの行数(滚动行数)

鼠标滚轮滚动一次移动的行数。

字体

背景色

背景颜色。

文字色

文字颜色。脚本中执行了 SETCOLOR 指令时以该指令优先。

選択中文字色

鼠标选中按钮时的文字颜色。

履歴文字色

显示历史记录(backlog)时的文字颜色。脚本中执行了 SETCOLOR 指令时以该指令优先。

フォント名(字体名)

指定字体。不能指定点阵字体。

也可以指定比例字体,但会导致显示错乱,不推荐。

フォントサイズ(字号)

以像素为单位指定文字的大小(高度)。

一行の高さ(行高)

以像素为单位指定一行的高度。不能小于字号。

行高与字号相同时可能出现显示错乱,建议设为字号 +1~2。推荐 字号 = 18行高 = 19

系统

这些是设想由 ERB 作者决定的选项。修改系统的项目后,ERB 脚本可能无法按作者意图工作。

大文字小文字の違いを無視する(忽略大小写差异)

是否忽略 ERB 中命令和变量的大小写差异。默认为 YES(忽略)。

_Rename.csvを利用する(使用 _Rename.csv)

是否使用 EraMakerEx 的 _Rename.csv。默认为 NO(不使用)。

_Rename.csv 的规格请参阅 EraMakerEx 的 Readme.txt(Emuera 未附带)。

_Replace.csvを利用する(使用 _Replace.csv)

是否使用私家改造版 1.52a-c 追加的 _Replace.csv 功能。

サブディレクトリを検索する(搜索子目录)

是否读取 CSVERB 文件夹中子文件夹里的文件。默认为 NO

设为 YES 时,chara*.csv*.ERB 也会把子文件夹内的文件作为读取对象。chara*.csv 以外的 csv 文件不在此选项范围内。

读取顺序为:文件夹内的文件和文件夹在前,其它文件在后。启用読み込み順をファイル名順にソートする时,文件夹也会按名称排序。

読み込み順をファイル名順にソートする(按文件名排序读取顺序)

是否把文件读取顺序按文件名排序。默认为 NO

关于文件系统与读取顺序相关的问题,请参阅与 Eramaker 的差异中的对应条目。

  • NO 时,读取顺序保持 C# Directory.GetFiles 函数返回的顺序。该函数内部使用 Kernel32.dllFindNextFile,结果取决于文件系统。它大概能重现 Eramaker 的读取顺序,但也会导致脚本行为随用户环境而不同。
  • YES 时,读取前会先按文件名排序。注意排序结果与 NTFS 的文件顺序并不一致:例如 _(下划线)在 NTFS 中排在数字和字母之前,而按文件名排序时排在数字之后。

システム関数の上書きを許可する(允许覆盖系统函数)

是否允许用户定义函数覆盖表达式内函数

默认 YES(允许)。

システム関数が上書きされたとき警告を表示する(系统函数被覆盖时显示警告)

是否在用户定义函数覆盖了表达式内函数时显示警告。默认 YES(显示)。

システム関数の上書きを許可するYES 时,无论本项设置如何都会显示警告。

同名の非イベント関数が複数定義されたとき警告する(同名非事件函数重复定义时警告)

在 Eramaker 的系统中,即使有多个同名函数,也只有最先读取的生效,之后会被忽略。

这一规格有时有用,但也会导致脚本行为随用户环境而不同。把本项设为 YES(警告)后,同名函数存在多个时会给出警告。

全角スペースをホワイトスペースに含める(把全角空格也算作空白)

默认为 YES(包含)。设为 NO 后,就不能把全角空格当作空白使用,也就是说,可以禁止在 ERB 中用全角空格代替半角空格或制表符来缩进。

内部で使用する東アジア言語(内部使用的东亚语言)

对于 STRLENS 等依赖内部区域设置的处理,可以选择使用的区域设置。UI 等不会改变。默认为日语(ja-JP)。

支持以下语言:

  • 日语(Shift-JIS,默认)
  • 韩语(ko-KR
  • 简体中文(zh-CN,未测试)
  • 繁体中文(zh-TW,未测试)

FORM中の三連記号を展開しない(不展开 FORM 中的三连符号)

Eramaker 的 FORM 语法中,///+++ 等三连符号会展开为 NAME:ASSICALLNAME:ASSI 等字符串。

把本项设为 YES(不展开)后,会保留符号本身。默认为 NO(展开)。

セーブデータをバイナリ形式で保存する(以二进制格式保存存档)

是否以二进制形式记录存档。默认为 NO

NO 时,存档的文字编码与 Eramaker 语法相同。二进制形式不一定更小,反而可能更大,修改时请注意。

使用 #DIM SAVEDATA 定义可保存的角色型变量、多维字符串变量时,必须把本项设为 YES

セーブデータをUTF-8で保存する(以 UTF-8 保存存档)

是否以 UTF-8 记录存档。默认为 NO

NO 时,存档编码与 Eramaker 一样是 SJIS。当セーブデータをバイナリ形式で保存するYES 时,本项无效(强制使用 UTF-8)。

ONEINPUT系命令でマウスによる2文字以上の入力を許可する(允许 ONEINPUT 系用鼠标输入多个字符)

该选项不显示在设置画面中,只能直接编辑 emuera.config 来设置。默认 NO(不许可)。

YES 时,ONEINPUT 系在鼠标一次输入两个及以上字符时,不再截断为只取首字符。

兼容性

这些选项用于解决“Eramaker 与 Emuera 行为不同”“在 Emuera 旧版本能运行的脚本升级后不能运行”等问题。标准设置下没问题时请不要修改。

解釈不能な行があっても実行する(即使有无法解释的行也继续执行)

默认为 NO,即启动时若存在解释失败的行,会在标题画面报错终止。

本项用于停止该行为,让存在无法解释的行时也能从标题继续。

CALLNAMEが空文字列の時にNAMEを代入する(CALLNAME 为空字符串时用 NAME 代替)

默认为 NO

设为 YES 时,如果 chara*.csv 中没有设置 CALLNAME,或设置成了空字符串,就当作设置了与 NAME 相同的字符串。这是为了重现 Eramaker 中 CALLNAME 为空时返回 NAME 的行为。

但即使使用本项也无法完全重现。例如用 Eramaker 添加角色的存档在 Emuera 中读取时,行为可能不同。

擬似変数RANDの仕様をeramakerに合わせる(让 RAND 的规格与 Eramaker 一致)

默认为 NO

设为 YES 时,RAND 的生成方式与 Eramaker 相同。该方式的特点是:参数为负值也能工作、不会返回 32767 以上的值、X 超过 1000 左右时偏差不可忽视等。详情请参阅与 Eramaker 的差异

関数・属性については大文字小文字を無視しない(函数、属性区分大小写)

默认为 NO

Eramaker 对命令和变量不区分大小写,但对函数名、属性区分大小写。把本项设为 YES,并同时把大文字小文字の違いを無視する设为 YES,即可实现与 Eramaker 相同的行为。

イベント関数のCALLを許可する(允许 CALL 事件函数)

默认为 NO

设为 YES 后,可以用 CALL 指令调用事件函数,规格与 Eramaker 相同。

ver1739以前の非ボタン折り返しを再現する(重现 ver1739 以前的非按钮折行)

默认为 NO

设为 YES 后,会重现 Emuera 1.739 以前的 DRAWLINE 及其它规格。这样依赖 ver1739 以前非按钮折行规格的显示脚本等就能正常工作。升级 Emuera 后显示错乱时,把本项设为 YES 可能解决问题。

ユーザー関数の全ての引数の省略を許可する(允许省略用户函数的全部参数)

默认为 NO

设为 YES 后,即使把 ARGARGS、用户定义私有变量以外的变量设作函数参数,调用时也可以忽略参数。这样可以重现 Emuera 1.807 以前“省略这些变量作参数时不赋值、保持调用前状态”的规格。从 Emuera 1.807 以前升级后函数报错时,把本项设为 YES 可能解决问题。

ユーザー関数の引数に自動的にTOSTRを補完する(自动为用户函数参数补上 TOSTR)

默认为 NO

设为 YES 后,与 Emuera 1.807 以前一样,调用函数时给字符串型参数传数值会自动转换为字符串型。从 Emuera 1.807 以前升级后函数报错时,把本项设为 YES 可能解决问题。

在 Emuera 1.820(Emuera1819+v10)之前的一段时间里,该选项的效果曾经是相反的。

SPキャラを使用する(使用 SP 角色)

默认为 NO

本项用于恢复 1.816 中删除的 SP 角色相关功能。从 Emuera 1.816 以前升级后报错时,把本项设为 YES 可能解决问题。

解析

eramaker互換性に関する警告を表示する(显示 Eramaker 兼容性警告)

显示与 Eramaker 兼容性相关的警告。

ロード時にレポートを表示する(加载时显示报告)

是否在读取时显示总行数、函数数量等报告。

不显示时,会显示 _replace.csv 中指定的加载中消息。

ロード時に引数を解析する(加载时解析参数)

是否在读取时解析到指令的参数。读取时解析会让加载明显变慢,但执行略微变快。如果目的不是错误检查,设为 NO 会更舒适。

  • NO:不解析。
  • ONCE:仅当上次启动以来 csv 或 ERB 有更新时解析。
  • YES:总是解析。

表示する最低警告レベル(显示的最低警告等级)

读取时显示的警告等级。低于指定值的警告不显示。

  • 0:如用 == 代替 = 之类不会造成特别问题的警告。
  • 1:如在函数声明以外使用 #PRI 之类可以忽略执行的问题。
  • 2:无法解释的行、没有对应 IFENDIF 等运行时会出错的行。
  • 3:读取中发生的无法恢复的错误,会被强制显示。

呼び出されなかった関数を無視する(忽略未被调用的函数)

仅在ロード時に引数を解析する时有效。

设为 YES 后,对被调用的函数不进行参数解析。

関数が見つからない警告の扱い(找不到函数警告的处理)

仅在ロード時に引数を解析する时有效。设置 CALLJUMP 的目标函数不存在时是否警告。

  • IGNORE:不警告。
  • LATER:不警告,但之后只报告被忽略的数量。
  • ONCE:每个文件只警告一次。
  • DISPLAY:全部显示。注意 CALLFORMJUMPFORM 等不在本项范围内。

関数が呼び出されなかった警告の扱い(函数未被调用警告的处理)

仅在ロード時に引数を解析する时有效。设置 @~~ 已定义却一次也没被调用时是否警告。格式与関数が見つからない警告の扱い相同。

调试

调试相关的选项只在以调试模式启动 Emuera 时有效。详情请参阅调试模式

起動時にデバッグウインドウを表示する(启动时显示调试窗口)

以调试模式启动时自动显示调试窗口。

デバッグウインドウを最前面に表示する(调试窗口置顶显示)

打开调试窗口时,默认置顶显示。打开后可以用调试窗口内的按钮切换。

デバッグウインドウ幅 / デバッグウインドウ高さ(调试窗口宽 / 高)

调试窗口的宽度 / 高度,包含窗口边框的整体尺寸。

与主窗口不同,调试窗口打开后仍可自由改变大小。要使用设置对话框的获取当前窗口大小按钮,需要先打开调试窗口,再打开设置对话框。

デバッグウインドウ位置を指定する(指定调试窗口位置)

是否指定打开调试窗口时的位置。不指定时,デバッグウィンドウ位置XY 没有意义。

デバッグウィンドウ位置X / Y

固定调试窗口位置时的坐标。显示器左上角为 (0,0),X 越大越靠右,Y 越大越靠下。

GPL-3.0+ Licensed