Использование консоли и файлов конфигурации

Материал из CryWiki Russia

(Различия между версиями)
Перейти к: навигация, поиск
(Новая страница: «{{В процессе перевода|дата=16 июня 2012|автор=1}} The CryENGINE console is an in-game user interface that enables direct communication...»)
 
(1 промежуточная версия не показана)
Строка 1: Строка 1:
-
{{В процессе перевода|дата=16 июня 2012|автор=1}}
+
Консоль CryENGINE — внутриигровой пользовательский интерфейс, который обеспечивает прямую связь с движком. Он обрабатывает ввод в форме консольных команд и переменных и отображает сообщения лога, сохраняя при этом историю пользовательского ввода и ответы движка.
-
The CryENGINE console is an in-game user interface that enables direct communication with the engine. It handles input in form of console commands and variables and displays log messages while keeping a history of user input and engine output.
+
== Консольные переменные и команды ==
 +
Многие аспекты кода движка и игры могут быть изменены с помощью консольных переменных. Консольная переменная имеет имя и значение, которое обычно может быть изменено. Многие значения могут быть изменены во время выполнения с помощью консоли, что делает настройки движка или поведения игры более удобным для дизайнеров и программистов, чем изменения файлов конфигурации или даже исходного кода.
-
== Console Variables and Commands ==
+
Консольной переменной, которая используется довольно часто является '''r_DisplayInfo''', в которой могут быть назначены различные целые числа. Значение 1 означает, например, что в верхнем правом углу экрана будут показаны основные сведения профилирования, как то текущая частота кадров. Значение 0 отключает отображение этой информации, в то время как значение 2 будет использовать другой режим отображения с несколько иной информацией.
-
Many aspects of the engine and game code can be tweaked with help of console variables. A console variable has a name and a value that can usually be changed. Many values can be changed at runtime using the console which makes tweaking engine or game behavior more convenient for designers and programmers than modifying configuration files or even source code.
+
-
A console variable that is used rather often is '''r_DisplayInfo''', to which different integral numbers can be assigned. A value of 1 for example means that some basic profiling information like the current Frames Per Second are shown at the top right corner of the screen. A value of 0 disables the display of that information, while the value 2 will use another display mode with slightly different information.
+
Помимо консольных переменных, которые всегда имеют присвоенного значения, есть консольные команды, которые выполняют конкретные функции при вызове.
-
Besides console variables that always have an assigned value, there are console commands that execute some specific functionality when invoked.
+
== Основы использования консоли ==
 +
{{Picno|pic1=console1.jpg|''Консоль в игре''}}
-
== Basic Console Usage ==
+
==== Открытие консоли ====
-
{{Picno|pic1=console1.jpg|''In-game console''}}
+
В лаунчере или в режиме игры в Sandbox, консоль можно открыть с помощью кнопки тильда '''~'''. В Sandbox доступно отдельное окно консоли, если пользователь не находится в режиме игры, как правило, расположено в нижней части экрана.
-
==== Opening the Console ====
+
==== Вывод сообщений ====
-
From the game launcher or from within the game mode in Sandbox, the console can be opened with the tilde key '''~''' (caret '''^''' on German keyboards). In Sandbox, a separate console window is available when the user is not in game mode, usually located at the bottom of the screen.
+
Консоль показывает историю сообщений журнала, в том числе предупреждения и ошибки. Список можно прокручивать с помощью клавиш '''Page-Up''' и '''Page-Down'''. Количество сообщений, выводимых на консоль можно контролировать с помощью глубины журнала, которая может быть настроена с помощью CVar '''log_verbosity'''.
-
 
+
-
==== Message Output ====
+
-
The console shows the history of log messages, including warnings and errors. The list can be scrolled with the '''Page-Up''' and '''Page-Down''' keys. The amount of messages output to the console can be controlled with the log verbosity which can be configured with the cvar '''log_verbosity'''.
+
;log_Verbosity:<font color="#808080">DUMPTODISK</font>
;log_Verbosity:<font color="#808080">DUMPTODISK</font>
-
<pre>defines the verbosity level for log messages written to console
+
<pre>определяет уровень детализации журналов сообщений, выводимых в консоли
-
-1=suppress all logs (including eAlways)
+
-1=подавляет все журналы (в том числе eAlways)
-
0=suppress all logs(except eAlways)
+
0=подавляет все журналы (за исключением eAlways)
-
1=additional errors
+
1=дополнительные ошибки
-
2=additional warnings
+
2=дополнительные предупреждения
-
3=additional messages
+
3=дополнительные сообщения
-
4=additional comments
+
4=дополнительные комментарии
</pre>
</pre>
-
All console output is directed to a log file as well which is '''Editor.log''' when running Sandbox or '''Game.log''' when using the game launcher.
+
Все сообщения консоли сохраняются в файл журнала — '''Editor.log''' при запуске Sandbox или '''Game.log''' при использовании лаунчера.
-
==== Command Input ====
+
==== Ввод комманды ====
-
Besides displaying messages, the console can be used to enter commands and set the value of console variables. For executing a command, just enter the name of the command and press enter. Some commands can have additional parameters that are separated with spaces.
+
Помимо отображения сообщений, можно использовать консоль для ввода команд и установки значений консольных переменных. Для выполнения команды, просто введите имя команды и нажмите клавишу ввода. Некоторые команды могут иметь дополнительные параметры, которые разделяются пробелами.
<source lang="ini">screenshot myScreenshot</source>
<source lang="ini">screenshot myScreenshot</source>
-
For '''setting a console variable''' to a specific value, type the name of the variable followed by a space and the value that you want to assign.
+
Чтобы '''назначить консольную переменную''' на определенное значение, введите имя переменной, затем пробел и значение, которое вы хотите назначить.
<source lang="ini">r_DisplayInfo 1</source>
<source lang="ini">r_DisplayInfo 1</source>
-
Console variables and commands are case-insensitive, so it does not matter if you use capital letters or not.
+
Консольные переменные и команды нечувствительны к регистру, поэтому не имеет значения, используете ли вы заглавные буквы или нет.
-
To '''query the value''' of a console variable, just type the name of the variable and press tab or enter. The value will be output to the console.
+
Чтобы '''запросить значение''' из Консольной переменной, просто введите имя переменной и нажмите Tab или Enter. Значение будет выведено в консоль.
<source lang="ini">r_DisplayInfo</source>
<source lang="ini">r_DisplayInfo</source>
-
Console variables can have different values, where each value has usually a different meaning. Most console variables have an '''associated help text''' that lists the available values with a small description. You can see the help text by typing the variable name followed by a question mark.
+
Консольные переменные могут иметь разные значения, где каждое значение обычно имеет другой смысл. Большинство консольных переменных имеют '''соответствующий справочный текст''', в котором перечислены доступные значения с небольшим описанием. Вы можете посмотреть текст справки, введя имя переменной и затем знак вопроса.
<source lang="ini">r_DisplayInfo ?</source>
<source lang="ini">r_DisplayInfo ?</source>
-
==== Auto-Completion and Input History ====
+
==== Автозаполнение и история ввода ====
-
The console supports auto-completion of variable and command names. Enter the beginning of a variable or command name and press the '''tab''' key. The console will show a list of corresponding commands and automatically complete the name. You can press tab several times to toggle through all available commands that match the string you have entered.
+
Консоль поддерживает автозаполнение имен переменных и команд. Введите начало имени переменной или команды и нажмите клавишу '''Tab'''. Консоль отобразит список соответствующих команд и автоматически заполнит имя. Вы можете нажать Tab несколько раз для переключения всех доступных команд, которые соответствуют введенной строке.
-
In case you need to try out many values for a variable quickly one after another, you can avoid retyping the variable by navigating through the input history using the '''Up''' and '''Down''' keys.
+
В случае, если вам нужно попробовать много значений для переменной быстро одно за другим, вы можете избежать повторного ввода переменной, перемещаясь по истории ввода с помощью стрелок '''вверх''' и '''вниз'''.
-
== Available Console Variables ==
+
== Доступные консольные переменные ==
-
CryENGINE has a huge list of console variables. Most of them are organized by module and have a corresponding prefix. The prefix ''r''_ in r_DisplayInfo for example indicates that the variable is related to the rendering module. In order to make it easier to keep track of the available variables and commands, several ways exist to list all of them.
+
CryENGINE имеет огромный список консольных переменных. Большинство из них организованы по модулю и имеют соответствующий префикс. Префикс ''r_'' в r_DisplayInfo например, указывает, что переменная связана с модулем рендера. Для того, чтобы его легко отслеживать из доступных переменных и команд, существует несколько способов, чтобы перечислить все из них.
-
The command '''DumpCommandsVars''' can be used to generate a plain-text list of all registered variables and commands. By default, the list is stored in a text file called ''consolecommandsandvars.txt'', located in the CryENGINE root folder. An HTML version is available in the subfolder ''ConsoleHTMLHelp'' and is best opened with index.html. If you are searching for a specific console variable of which you don’t know the exact name, it can be useful to search in the text or html file using a text editor or browser.
+
Команда '''DumpCommandsVars''' может быть использована для создания текстовых список всех зарегистрированных переменных и команд. По умолчанию, список хранится в текстовом файле под названием ''consolecommandsandvars.txt'', расположенный в корневой папке CryENGINE. HTML-версия доступна в папке ''ConsoleHTMLHelp'' и лучше всего открыть index.html. Если вы ищете конкретную консольную переменную точного названия которой вы не знаете, может быть полезно поискать в текстовом или HTML-файле с помощью текстового редактора или браузера.
-
The console window in Sandbox has an input box where the commands can be entered. Double-clicking on it will bring up a dialog which lists all registered console variables. It is even possible to directly change the values there.
+
Окно консоли в Sandbox имеет поле ввода, в котором могут быть введены команды. Дважды щелкнув на нем появится диалоговое окно, которое содержит список всех зарегистрированных консольных переменных. Непосредственно там можно изменить значения.
-
Finally, for convenience, a pre-generated [[Консольные команды и переменные|list of console variables and commands]] is available in the documentation.
+
И, наконец, для удобства, предварительно сгенерированный [[Консольные команды и переменные|список консольных переменных и команд]] доступен в документации.
-
== Configuration Files ==
+
== Файлы конфигурации ==
-
A configuration file (.cfg) can set a list of console variables. Each line of a config file contains the name of a cvar followed by the desired value (an optional '''=''' can be used between name and value). Single-line comments can be added with the '''--''' character sequence. Example:
+
В конфигурационном файле (CFG) можно задать список консольных переменных. Каждая строка конфигурационного файла содержит имя CVar и затем требуемое значение (дополнительный '''=''' может быть использована между именем и значением). Однострочные комментарии могут быть добавлены после двух символов '''--'''. Пример:
<source lang="ini">sys_game_folder = Game
<source lang="ini">sys_game_folder = Game
-
-- Disable fullscreen mode
+
-- Отключить полноэкранный режим
r_Fullscreen = 0
r_Fullscreen = 0
</source>
</source>
-
There are are several configuration files that are executed automatically, in the following order (if a cfg is executed later, it can override previous settings):
+
Есть несколько файлов конфигурации, которые выполняются автоматически, в следующем порядке (если CFG выполняется позже, он переопределит предыдущие настройки):
* %USER%/'''game.cfg'''
* %USER%/'''game.cfg'''
Строка 68: Строка 66:
* root/'''user.cfg'''
* root/'''user.cfg'''
-
== Console Variable Groups ==
+
== Группы консольных переменных ==
-
Console variable groups provide a convenient way to apply predefined settings to multiple console variables at the same time. A CVar group can modify other console variables and groups, so it can be used to build bigger hierarchies. Please note that cycles in the assignment are not detected and can cause crashes. CVar Groups are especially useful to define different quality profiles («sys specs»).
+
Группы консольных переменных предоставляют удобный способ применять предустановленные настройки для нескольких консольных переменных одновременно. Группа CVar может изменить другие консольные переменные и группы, поэтому могут быть использованы для создания больших иерархий. Обратите внимание, что циклы в назначении не выявляются и могут привести к сбою. Группы CVar особенно полезны для определения различных профилей качества («конфигураций системы»).
-
==== Registering a New Group ====
+
==== Регистрация новой группы ====
-
Each console variable group is stored as a separate '''.cfg''' file where the file name defines the name of the group. By convention, console variable groups are stored in the <tt>Game\Config\CVarGroups</tt> folder (where <tt>Game</tt> is the name of the game directory). To create a new console variable group, add a new '''.cfg''' text file to that folder.
+
Каждая группа консольных переменных хранится в виде отдельного '''CFG'''-файла, где имя файла определяет имя группы. Группы консольная переменная хранятся в папке <tt>Game\Config\CVarGroups</tt> (где <tt>Game</tt> это имя директории игры). Чтобы создать новую группу консольных переменных, добавьте новый текстовый '''CFG'''-файл в эту папку
-
Example file sys_spec_Particles.cfg:
+
Пример файла sys_spec_Particles.cfg:
<source lang="ini">
<source lang="ini">
[default]
[default]
Строка 91: Строка 89:
e_particles_max_emitter_draw_screen=16
e_particles_max_emitter_draw_screen=16
</source>
</source>
-
The sample file creates a new console variable group named ''sys_spec_Particles'' that behaves like an integer console variable. By default, this variable has the state 4 (because of the third line). When changing the variable value, the new state is applied to the referenced CVars. Console variables that are not specified in the cfg file are not set. All desired console variables need to be part of the [CRYENGINE:default] section, otherwise an error message is output. If a console variable is not specified in a custom section ([CRYENGINE:1], [CRYENGINE:2], etc.) the value specified in the [CRYENGINE:default] section is applied.
+
Файл примера создает новую группу консольных переменных c именем ''sys_spec_Particles'' которая ведет себя как целая консольная переменная. По умолчанию эта переменная имеет состояние 4 (из-за третьей строки). При изменении значения переменной, применяется новое состояние к указанной CVars. Консольные переменные, которые не указаны в CFG-файле не меняются. Все необходимые консольные переменные должны быть частью раздела [CRYENGINE:default], в противном случае выводится сообщение об ошибке. Если консольная переменная не задана в пользовательском разделе ([CRYENGINE:1], [CRYENGINE:2] и др.) применяются значения, указанные в разделе [CRYENGINE:default].
-
==== Console Variable Group Documentation ====
+
==== Документация группы консольных переменных ====
-
Some simple documentation text that gives information about the different cvar states in a group is available automatically. Use the question mark operator as usual to output the documentation text.
+
Простые текстовые документы, которые дают информацию о различных состояниях группы CVar доступны автоматически. Используйте оператор вопросительный знак, как обычно, для вывода текста документации.
-
Example (sys_spec_Particles):
+
Пример (sys_spec_Particles):
<source lang="ini">
<source lang="ini">
Console variable group to apply settings to multiple variables
Console variable group to apply settings to multiple variables
Строка 109: Строка 107:
</source>
</source>
-
==== Checking the Variable Group State ====
+
==== Проверка состояния группы переменных ====
-
When cvars organized in a CVar group are changed individually, the CVar group might no longer represent the value that is assigned to it. To find that out via the console, enter the CVar group name in the console. If the group variable value is not representative, the real state is printed besides the usual information. Example:
+
Когда CVar организованы в группы, индивидуальные изменения CVar могут больше не представлять значения, возложенные на него. Чтобы выяснить это с помощью консоли, введите имя группы CVar в консоли. Если значения группы переменных не являются репрезентативными, будут выведены реальные состояния помимо обычной информации. Пример:
<source lang="ini">
<source lang="ini">
Строка 117: Строка 115:
sys_spec_Texture=1 [REQUIRE_NET_SYNC]
sys_spec_Texture=1 [REQUIRE_NET_SYNC]
</source>
</source>
-
By using the console command '''sys_RestoreSpec''', it can be checked why the system spec variables don’t represent the expected states.
+
С помощью консольной команды '''sys_RestoreSpec''', можно проверить, почему переменные конфигурации системы не имеют ожидаемые состояния.
;sys_RestoreSpec:
;sys_RestoreSpec:
-
<pre>Restore or test the cvar settings of game specific spec settings,
+
<pre>Восстановление или проверка конкретных CVar настроек игры,
-
'test*' and 'info' log to the log file only
+
запись только 'test*' и 'info' в файл журнала
-
Usage: sys_RestoreSpec [test|test*|apply|info]
+
Использование: sys_RestoreSpec [test|test*|apply|info]
</pre>
</pre>
-
==== Filter console and/or file logging ====
+
==== Фильтр консоли и/или файла журнала ====
-
There are two CVars that can be used to filter console messages.
+
Есть два CVars, которые могут быть использованы для фильтрации сообщений консоли.
<source lang="ini">
<source lang="ini">
log_UseFilter=0,1,2,3
log_UseFilter=0,1,2,3
log_Filter="string"
log_Filter="string"
</source>
</source>
-
To enable the console filter you have to set '''log_UseFilter''' to 1/2/3.
+
Чтобы включить фильтр консоли вы должны установить '''log_UseFilter''' на значение 1/2/3.
<source lang="ini">
<source lang="ini">
-
0 - filter is disabled
+
0 - фильтр отключен
-
1 - filter only ingame console
+
1 - фильтровать только игровую консоль
-
2 - filter only the log file
+
2 - фильтровать только файл журнала
-
3 - filter both
+
3 - фильтровать и то и то
</source>
</source>
-
The actual filter can be set through log_Filter. This is a string that is used to filter the log messages.
+
Фактически фильтр может быть установлен через log_Filter. Это строка, которая используется для фильтрации сообщений журнала.
<source lang="ini">
<source lang="ini">
-
log_Filter  = foo //will only display messages that have the string “foo” somewhere.
+
log_Filter  = foo //будут отображаться только сообщения с строкой “foo”.
-
log_Filter  = -bar //will remove all loggings that have “bar” somewhere.
+
log_Filter  = -bar //будут удалены все сообщения с строкой "bar".
-
log_Filter  = foo|bar|dude //you can combine different filters - this will only display loggings with “foo”, “bar” or “dude” in it.
+
log_Filter  = foo|bar|dude //можно сочетать различные фильтры - это покажет только сообщения содержащие строки "foo", "bar" или "dude".
-
log_Filter  = -foo|-bar|-dude //this will remove all loggings with “foo”, “bar” or “dude” in it.
+
log_Filter  = -foo|-bar|-dude //это удалит все сообщения содержащие строки "foo", "bar" или "dude".
-
log_Filter  = foo|-bar //this will display only loggings with “foo” but no “bar” in it.
+
log_Filter  = foo|-bar //это покажет только сообщения содержащие строку “foo”, но не содержащие строку “bar”.
</source>
</source>
-
'''Примечание:''' all filters are case insensitive
+
'''Примечание:''' все фильтры чувствительны к регистру.
-
==== How to disable «'''Too many apps'''» Message Box? ====
+
==== Как отключить окно сообщения «'''Too many apps'''»? ====
-
If you open more than one instance of the '''Launcher''' you will notice a Message Box informing you that an instance of the '''Launcher''' is already opened:
+
Если вы откроете более одного экземпляра '''Launcher''' вы заметите окно сообщения, информирующее вас о том, что экземпляр '''Launcher''' уже открыт:
[[Файл:toomanyapps.jpg]]
[[Файл:toomanyapps.jpg]]
-
However in some situations, like multiplayer debugging, it might be necessary to open more than one instance of the '''Launcher''' on one machine. To disable the Message Box you can add the following line to your ''root/'''''''system.cfg''''' config file:
+
Однако в некоторых ситуациях, таких как отладка мультиплеера, это может быть необходимо, открыть более одного экземпляра '''Launcher''' на одной машине. Чтобы отключить окно сообщения вы можете добавить следующие строки в файле конфигурации ''root/'''''''system.cfg''''':
<source lang="ini">ignoreTooManyAppsMessage=1</source>
<source lang="ini">ignoreTooManyAppsMessage=1</source>
[[Категория:Бесплатный CryEngine]]
[[Категория:Бесплатный CryEngine]]

Текущая версия на 17:37, 11 февраля 2013

Консоль CryENGINE — внутриигровой пользовательский интерфейс, который обеспечивает прямую связь с движком. Он обрабатывает ввод в форме консольных команд и переменных и отображает сообщения лога, сохраняя при этом историю пользовательского ввода и ответы движка.

Содержание

Консольные переменные и команды

Многие аспекты кода движка и игры могут быть изменены с помощью консольных переменных. Консольная переменная имеет имя и значение, которое обычно может быть изменено. Многие значения могут быть изменены во время выполнения с помощью консоли, что делает настройки движка или поведения игры более удобным для дизайнеров и программистов, чем изменения файлов конфигурации или даже исходного кода.

Консольной переменной, которая используется довольно часто является r_DisplayInfo, в которой могут быть назначены различные целые числа. Значение 1 означает, например, что в верхнем правом углу экрана будут показаны основные сведения профилирования, как то текущая частота кадров. Значение 0 отключает отображение этой информации, в то время как значение 2 будет использовать другой режим отображения с несколько иной информацией.

Помимо консольных переменных, которые всегда имеют присвоенного значения, есть консольные команды, которые выполняют конкретные функции при вызове.

Основы использования консоли

Console1.jpg
Консоль в игре


Открытие консоли

В лаунчере или в режиме игры в Sandbox, консоль можно открыть с помощью кнопки тильда ~. В Sandbox доступно отдельное окно консоли, если пользователь не находится в режиме игры, как правило, расположено в нижней части экрана.

Вывод сообщений

Консоль показывает историю сообщений журнала, в том числе предупреждения и ошибки. Список можно прокручивать с помощью клавиш Page-Up и Page-Down. Количество сообщений, выводимых на консоль можно контролировать с помощью глубины журнала, которая может быть настроена с помощью CVar log_verbosity.

log_Verbosity
DUMPTODISK
определяет уровень детализации журналов сообщений, выводимых в консоли
-1=подавляет все журналы (в том числе eAlways)
0=подавляет все журналы (за исключением eAlways)
1=дополнительные ошибки
2=дополнительные предупреждения
3=дополнительные сообщения
4=дополнительные комментарии

Все сообщения консоли сохраняются в файл журнала — Editor.log при запуске Sandbox или Game.log при использовании лаунчера.

Ввод комманды

Помимо отображения сообщений, можно использовать консоль для ввода команд и установки значений консольных переменных. Для выполнения команды, просто введите имя команды и нажмите клавишу ввода. Некоторые команды могут иметь дополнительные параметры, которые разделяются пробелами.

screenshot myScreenshot

Чтобы назначить консольную переменную на определенное значение, введите имя переменной, затем пробел и значение, которое вы хотите назначить.

r_DisplayInfo 1

Консольные переменные и команды нечувствительны к регистру, поэтому не имеет значения, используете ли вы заглавные буквы или нет.

Чтобы запросить значение из Консольной переменной, просто введите имя переменной и нажмите Tab или Enter. Значение будет выведено в консоль.

r_DisplayInfo

Консольные переменные могут иметь разные значения, где каждое значение обычно имеет другой смысл. Большинство консольных переменных имеют соответствующий справочный текст, в котором перечислены доступные значения с небольшим описанием. Вы можете посмотреть текст справки, введя имя переменной и затем знак вопроса.

r_DisplayInfo ?

Автозаполнение и история ввода

Консоль поддерживает автозаполнение имен переменных и команд. Введите начало имени переменной или команды и нажмите клавишу Tab. Консоль отобразит список соответствующих команд и автоматически заполнит имя. Вы можете нажать Tab несколько раз для переключения всех доступных команд, которые соответствуют введенной строке.

В случае, если вам нужно попробовать много значений для переменной быстро одно за другим, вы можете избежать повторного ввода переменной, перемещаясь по истории ввода с помощью стрелок вверх и вниз.

Доступные консольные переменные

CryENGINE имеет огромный список консольных переменных. Большинство из них организованы по модулю и имеют соответствующий префикс. Префикс r_ в r_DisplayInfo например, указывает, что переменная связана с модулем рендера. Для того, чтобы его легко отслеживать из доступных переменных и команд, существует несколько способов, чтобы перечислить все из них.

Команда DumpCommandsVars может быть использована для создания текстовых список всех зарегистрированных переменных и команд. По умолчанию, список хранится в текстовом файле под названием consolecommandsandvars.txt, расположенный в корневой папке CryENGINE. HTML-версия доступна в папке ConsoleHTMLHelp и лучше всего открыть index.html. Если вы ищете конкретную консольную переменную точного названия которой вы не знаете, может быть полезно поискать в текстовом или HTML-файле с помощью текстового редактора или браузера.

Окно консоли в Sandbox имеет поле ввода, в котором могут быть введены команды. Дважды щелкнув на нем появится диалоговое окно, которое содержит список всех зарегистрированных консольных переменных. Непосредственно там можно изменить значения.

И, наконец, для удобства, предварительно сгенерированный список консольных переменных и команд доступен в документации.

Файлы конфигурации

В конфигурационном файле (CFG) можно задать список консольных переменных. Каждая строка конфигурационного файла содержит имя CVar и затем требуемое значение (дополнительный = может быть использована между именем и значением). Однострочные комментарии могут быть добавлены после двух символов --. Пример:

sys_game_folder = Game
-- Отключить полноэкранный режим
r_Fullscreen = 0

Есть несколько файлов конфигурации, которые выполняются автоматически, в следующем порядке (если CFG выполняется позже, он переопределит предыдущие настройки):

  •  %USER%/game.cfg
  • root/system.cfg
  • root/user.cfg

Группы консольных переменных

Группы консольных переменных предоставляют удобный способ применять предустановленные настройки для нескольких консольных переменных одновременно. Группа CVar может изменить другие консольные переменные и группы, поэтому могут быть использованы для создания больших иерархий. Обратите внимание, что циклы в назначении не выявляются и могут привести к сбою. Группы CVar особенно полезны для определения различных профилей качества («конфигураций системы»).

Регистрация новой группы

Каждая группа консольных переменных хранится в виде отдельного CFG-файла, где имя файла определяет имя группы. Группы консольная переменная хранятся в папке Game\Config\CVarGroups (где Game это имя директории игры). Чтобы создать новую группу консольных переменных, добавьте новый текстовый CFG-файл в эту папку

Пример файла sys_spec_Particles.cfg:

[default]
; default of this CVarGroup = 4
e_particles_lod=1
e_particles_max_emitter_draw_screen=64
 
[1]
e_particles_lod=0.75
e_particles_max_emitter_draw_screen=1
 
[2]
e_particles_max_emitter_draw_screen=4
 
[3]
e_particles_max_emitter_draw_screen=16

Файл примера создает новую группу консольных переменных c именем sys_spec_Particles которая ведет себя как целая консольная переменная. По умолчанию эта переменная имеет состояние 4 (из-за третьей строки). При изменении значения переменной, применяется новое состояние к указанной CVars. Консольные переменные, которые не указаны в CFG-файле не меняются. Все необходимые консольные переменные должны быть частью раздела [CRYENGINE:default], в противном случае выводится сообщение об ошибке. Если консольная переменная не задана в пользовательском разделе ([CRYENGINE:1], [CRYENGINE:2] и др.) применяются значения, указанные в разделе [CRYENGINE:default].

Документация группы консольных переменных

Простые текстовые документы, которые дают информацию о различных состояниях группы CVar доступны автоматически. Используйте оператор вопросительный знак, как обычно, для вывода текста документации.

Пример (sys_spec_Particles):

Console variable group to apply settings to multiple variables
 
sys_spec_Particles [1/2/3/4/x]:
... e_ParticlesLod = 0.75/1/1/1/1
... e_ParticlesMaxScreenFill = 16/32/64/128/128
... e_ParticlesObjectCollisions = 0/1/1/1/1
... e_ParticlesQuality = 1/2/3/4/4
... e_WaterOceanSoftParticles = 0/1/1/1/1
... r_UseSoftParticles = 0/1/1/1/1

Проверка состояния группы переменных

Когда CVar организованы в группы, индивидуальные изменения CVar могут больше не представлять значения, возложенные на него. Чтобы выяснить это с помощью консоли, введите имя группы CVar в консоли. Если значения группы переменных не являются репрезентативными, будут выведены реальные состояния помимо обычной информации. Пример:

sys_spec_Particles=2 [REQUIRE_NET_SYNC] RealState=3
sys_spec_Sound=1 [REQUIRE_NET_SYNC] RealState=CUSTOM
sys_spec_Texture=1 [REQUIRE_NET_SYNC]

С помощью консольной команды sys_RestoreSpec, можно проверить, почему переменные конфигурации системы не имеют ожидаемые состояния.

sys_RestoreSpec
Восстановление или проверка конкретных CVar настроек игры,
запись только 'test*' и 'info' в файл журнала
Использование: sys_RestoreSpec [test|test*|apply|info]

Фильтр консоли и/или файла журнала

Есть два CVars, которые могут быть использованы для фильтрации сообщений консоли.

log_UseFilter=0,1,2,3
log_Filter="string"

Чтобы включить фильтр консоли вы должны установить log_UseFilter на значение 1/2/3.

0 - фильтр отключен
1 - фильтровать только игровую консоль
2 - фильтровать только файл журнала
3 - фильтровать и то и то

Фактически фильтр может быть установлен через log_Filter. Это строка, которая используется для фильтрации сообщений журнала.

log_Filter  = foo //будут отображаться только сообщения с строкой “foo”.
log_Filter  = -bar //будут удалены все сообщения с строкой "bar".
log_Filter  = foo|bar|dude //можно сочетать различные фильтры - это покажет только сообщения содержащие строки "foo", "bar" или "dude".
log_Filter  = -foo|-bar|-dude //это удалит все сообщения содержащие строки "foo", "bar" или "dude".
log_Filter  = foo|-bar //это покажет только сообщения содержащие строку “foo”, но не содержащие строку “bar”.

Примечание: все фильтры чувствительны к регистру.

Как отключить окно сообщения «Too many apps»?

Если вы откроете более одного экземпляра Launcher вы заметите окно сообщения, информирующее вас о том, что экземпляр Launcher уже открыт:

Toomanyapps.jpg

Однако в некоторых ситуациях, таких как отладка мультиплеера, это может быть необходимо, открыть более одного экземпляра Launcher на одной машине. Чтобы отключить окно сообщения вы можете добавить следующие строки в файле конфигурации root/''system.cfg:

ignoreTooManyAppsMessage=1