Command Line Options

Kirikiri's command line options can be specified from a normal command line, or saved in a configuration file using Releaser ( krkrrel.exe ) or Kirikiri Configuration ( -userconf ).
The order in which options are loaded is:
  1. Options embedded in the Kirikiri executable itself
  2. The .cf file in the same directory as the Kirikiri core (file name is the same as the Kirikiri core)
  3. The .cfu file in the data storage location, output by "Engine Settings" (-userconf) (file name is the same as the Kirikiri core)
  4. Options specified on the command line
.cf and .cfu files are simply ignored if they do not exist. Later loaded specifications take priority.

Command line options basically start with a '-' (hyphen) followed by the option name. Then followed by '=' and the option value.
For example, if the value of the -cdvol option is direct, specify it as -cdvol=direct.

Except for "Startup Options", "Debug Related Options", and "System Compatibility Related Options", most are options for fine-tuning to resolve environment-dependent issues.
For resolving environment-dependent issues, please also refer to About Environment-Dependent Bugs.


Note
In Releaser or -userconf, you can change these options by rewriting the Kirikiri executable file or external configuration files, but usually leaving them at their defaults is fine. It is not recommended to distribute executable files or configuration files with these options changed from their defaults just because there is a problem in the creator's specific environment (of course, there are options like -datapath that should be set according to the distribution or usage format).


Items in the list below marked as "Dynamically changeable" can be changed using the System.setArgument method. Other options cannot be changed dynamically.

Startup Options

The following options are available to call and use specific functions of Kirikiri.
-userconf (Launch end-user configuration tool)
Launches the built-in end-user configuration tool.
-about (Display copyright information dialog box)
Displays the "Version, Copyright, and Environment Information" dialog box.
-sel (Display "Select Folder/Archive" dialog box)
Displays the "Select Folder/Archive" dialog box. Data such as data.xp3 will not be automatically detected.
If you specify a folder as a command line parameter (without a hyphen at the beginning), you can open the "Select Folder/Archive" dialog box with that folder selected in the initial state.
-printdatapath (Output data storage location)
Outputs the settings of the data storage location (-datapath option) and a newline to standard output, then exits. This option is intended for use by external applications that manage save data in cooperation with Kirikiri.
Special strings such as $(exepath) in the data storage location are output in their replaced state.
Since Kirikiri is a GUI application, nothing will be displayed if you simply launch the Kirikiri executable from a command prompt with the -printdatapath option. Use pipes or redirection to capture the output.
-startup (Specify startup script)
Specifies the script file name to be executed first.
If not specified, startup.tjs is executed.

General System Options

-datapath (Data storage location)
Settings for the location (folder) where Kirikiri saves various data.
The value is specified as a string.
You can simply specify the folder name as a full path, but usually, the following special strings are embedded.

$(exepath)
Replaced with System.exePath (the folder name where the Kirikiri core is located).
$(appdatapath)
Replaced with System.appDataPath (the user's home folder). This folder is usually a hidden folder.
$(personalpath)
Replaced with System.personalPath (My Documents folder).
$(vistapath)
Replaced with $(appdatapath) if the OS is Vista or later, and $(exepath) if it is earlier than Vista.
$(savedgamespath)
Replaced with System.savedGamesPath (folder for game save data). (Ver 1.1.0 or later)

The default is "$(exepath)\savedata". This setting is suitable for distribution formats where the program is compressed/archived in zip etc. without using an installer, and the user executes the program immediately after extracting it.
However, with this default setting, if the program is placed under Program Files, there is a possibility of an error because files cannot be written when the program is launched by a "Restricted User" in Windows XP etc. who does not have permission to write under Program Files.
If you use names like "$(appdatapath)\Application Name" or "$(personalpath)\Application Name", files will be written to a folder per user, making such problems less likely to occur, but users might be confused because the save data storage location becomes less obvious.

The data storage location specified by this option will be attempted to be created if it does not exist when Kirikiri starts. Even if creation fails, processing continues without exiting, so please handle errors within the user's script (by catching exceptions such as data cannot be saved).

Settings made in "Engine Settings" are created in the folder specified by this data storage location. In addition, various logs are also created in this folder by default.
-contfreq (Processing weight)
Setting for whether to reduce CPU usage by calling processes such as transitions at a specified cycle while applying weights.
Possible values are '0' (no weight) or a positive integer; if this option is not specified, '0' is assumed. If a positive integer is specified, you can specify the cycle in Hz.
This option affects transitions and Continuous handlers registered with System.addContinuousHandler.
If set to '0', processing is performed using full CPU power during transitions, etc.
If a numerical value is specified, processing will be performed at that cycle, and the CPU will rest during the remaining time. This can reduce the impact on other applications, CPU temperature rise, and computer power consumption. The lower the value specified, the higher this effect. However, specifying a low value may cause transitions etc. to become less smooth.
If vertical sync wait is performed with the waitvsync option, the Continuous handler will be driven according to the vertical sync timing, and the setting of the contfreq option will be ignored.
This option can be changed dynamically, but the change will be reflected the next time the transition or Continuous handler operation is interrupted.
-memusage (Memory usage)
Setting for memory usage.
Possible values are 'normal' or 'low'; if this option is not specified, 'normal' is assumed.
Selecting "low" will use less memory than selecting "normal". However, selecting "low" will decrease performance because various internal cache mechanisms of Kirikiri are restricted and the size of TJS2 hash tables is limited. Also, if "low" is selected, "Graphic - Image Cache Limit" is forced to be treated as "Do not cache".
-timerprec (Timer precision)
Setting for the level of timer precision.
Possible values are 'normal', 'higher', or 'high'; if this option is not specified, 'normal' is assumed.
Specifying 'higher' or 'high' increases the overall precision of timers (including most things related to time and timing), which may resolve sluggishness in KAG text display or MIDI playback, but may also decrease performance.
-laxtimer (Timer event capacity limit)
Setting for whether to limit the number of timer events stored in the system at once (maximum allowable generation) to avoid situations where too many timer events accumulate and cannot be processed.
Possible values are 'no' (do not limit) or 'yes' (limit); if this option is not specified, 'no' is assumed.
On very slow computers or in situations where very heavy processes are driven by timers, Kirikiri may become unresponsive to operations because it cannot keep up with events generated by timers. If 'yes' is specified for this option, the maximum allowable generation of timer events stored in the system is always fixed to 1 (state where the capacity property of the Timer class is 1). This can suppress the generation of timer events that the system cannot process, but usually, timer precision and accuracy are lost.
-lowpri (Low priority)
Setting for whether to lower the priority during transitions, etc.
Possible values are 'no' (do not lower) or 'yes' (lower); if this option is not specified, 'no' is assumed.
If set to 'yes', the execution priority of the main thread will be lowered when Kirikiri's main thread uses the CPU continuously, such as during transitions. This may improve symptoms such as sound skipping during transitions or other applications becoming difficult to operate during transitions.
-exceptionexe (Editor to launch on exception)
Specifies the editor to launch when an exception occurs.
-exceptionarg (Exception editor options)
Specifies the options to be specified when launching the editor upon an exception.
You can simply specify arguments, but usually, the following special strings are embedded.

%filepath%
Replaced with the file path of the script where the exception occurred.
%line%
Replaced with the line number where the exception occurred.

Input Related Options

-wheel (Mouse wheel rotation detection method)
Setting for how to detect mouse wheel rotation.
Possible values are 'no' (do not use), 'dinput' (DirectInput), or 'message' (window message); if this option is not specified, 'dinput' is assumed.
Selecting "no" makes the mouse wheel unusable. Selecting "DirectInput" uses DirectInput. Selecting "window message" detects mouse wheel rotation without using DirectInput. Changing the setting may improve mouse wheel related issues.
-joypad (Gamepad availability)
Setting for whether to use a gamepad (joystick).
Possible values are 'no' (do not use) or 'dinput' (use); if this option is not specified, 'dinput' is assumed.
Selecting "no" makes the pad unusable. Set to "no" if the pad cannot be detected normally or cannot be used normally.
-paddelay (Pad key repeat delay)
Specifies the time until gamepad (joystick) key repeat in milliseconds.
Possible values are a positive number or -1; specifying -1 disables key repeat. If this option is not specified, 500 is assumed.
This option is dynamically changeable.
-padinterval (Pad key repeat interval)
Specifies the interval of gamepad (joystick) key repeat in milliseconds. Smaller values result in faster repeats.
Possible values are positive numbers; if this option is not specified, 30 is assumed.
This option is dynamically changeable.
-controlime (IME state control)
Setting for whether to perform state control (enable/disable control) of IME (conversion input software for Japanese, etc.).
Possible values are 'yes' (perform) or 'no' (do not perform); if this option is not specified, 'yes' is assumed.
Selecting "no" may avoid issues such as "unable to input languages like Japanese that use IME".

Sound Related Options

-wsdecpri (PCM decode thread priority)
Priority of the thread that performs PCM decoding.
Possible values are '0' (Idle (lowest)), '1' (Low), '2' (Below Normal), '3' (Normal), '4' (Above Normal), or '5' (High); if this option is not specified, '1' is assumed.
Increasing the priority may reduce sound skipping during playback of PCM (uncompressed wave, OggVorbis, etc.), but transitions may become less smooth and responsiveness to operations may worsen.
By the way, what is specified here is the priority for normal decoding; in emergencies (when the remaining data in the buffer becomes short), the necessary priority is automatically secured.
-wssoft (DirectSound software mixing)
Setting for whether to perform mixing using software in DirectSound.
Possible values are 'yes' (perform software mixing) or 'no' (do not perform software mixing); if this option is not specified, 'yes' is assumed.
With the standard setting, mixing is performed in software, so the CPU load is higher, but the possibility of avoiding hardware-specific bugs is higher. If there is no problem specifying 'no' (performing mixing in hardware), the CPU load may be reduced. With USB audio or inexpensive sound cards, mixing may always be performed by the CPU, so changing this option may have no effect.
-wsrecreate (DirectSound secondary buffer recreation)
Setting for whether to always recreate the secondary buffer in DirectSound.
Possible values are 'yes' (always recreate) or 'no' (recreate as needed); if this option is not specified, 'no' is assumed.
In Kirikiri, once a secondary buffer is created, it is reused if conditions such as the number of channels and sampling frequency are the same, but specifying 'yes' will always recreate it without reuse. Depending on the environment, instabilities such as sound skipping or cutting at the start of playback may be improved.
-wsl1len (DirectSound secondary buffer length)
Setting for the length of the DirectSound secondary buffer.
Possible values are integers, specified in milliseconds. A minimum of 250ms is required. If this option is not specified, 1000 is assumed.
What is specified here is the length of the buffer actually secured as a DirectSound secondary buffer.
Generally, taking it longer makes playback stable but consumes memory.
-wsl2len (DirectSound secondary auxiliary buffer length)
Setting for the length of the secondary auxiliary buffer for the DirectSound secondary buffer.
Possible values are integers, specified in milliseconds. A minimum of 250ms is required. If this option is not specified, 1000 is assumed.
Kirikiri creates an auxiliary buffer for each DirectSound secondary buffer, accumulates decoded data in this auxiliary buffer, and then transfers it to the secondary buffer. The buffer length specified here is the length of that auxiliary buffer.
Normally, decoding and accumulation in the auxiliary buffer are performed in a low-priority thread, but transfer from the auxiliary buffer to the secondary buffer is performed in a high-priority thread.
Generally, taking it longer makes playback stable but consumes memory. Also, if control that changes the decoding process is applied, the delay until it is actually sounded becomes longer.
-wsmute (DirectSound mute)
Setting for whether to mute (lower the volume) when the application is inactive or minimized in DirectSound.
Possible values are 'never' (do not mute), 'minimize' (when minimized), or 'deactive' (when inactive); if this option is not specified, 'never' is assumed.
Selecting 'never' disables muting. 'minimize' and 'deactive' mute when the application is minimized or becomes inactive, respectively.
Only things played with WaveSoundBuffer (in KAG, when using 'Wave' for BGM and sound effects) are muted; MIDI and CDDA playback are not muted.
-wsmutevol (DirectSound mute volume)
Setting for the volume when muted with -wsmute (DirectSound mute).
Possible values are integers, specified in %.
Specifying "0%" results in complete silence, and specifying "50%" results in half volume (approx. -6dB).
-wsforcecnv (DirectSound forced format conversion)
Setting for whether to forcibly convert PCM data to be played by DirectSound into a specified format.
Possible values are 'none' (do not convert), 'i16' (convert to 16-bit integer), or 'i16m' (convert to 16-bit integer mono); if this option is not specified, 'none' is assumed.
Changing the setting may improve playback issues. If 'i16m' is selected, the -wsexpandquad option (DirectSound forced 4ch playback) setting is ignored.
-wsuse3d (DirectSound 3D control)
Setting for whether to perform 3D control in DirectSound.
Possible values are 'no' (do not perform) or 'yes' (perform); if this option is not specified, 'no' is assumed.
Selecting 'yes' enables 3D control of sound, and WaveSoundBuffer.posX, WaveSoundBuffer.posY, and WaveSoundBuffer.posZ properties become effective (these properties are already implemented in the current version but are unsupported).
Also, in many environments, selecting 'yes' causes stereo or mono sounds to be expanded and played on surround speakers by DirectSound3D (for example, sound that was only played on front speakers will be played on all speakers in a 5.1ch environment).
If 'yes' is selected, the -wsexpandquad option (DirectSound forced 4ch playback) setting is ignored.
-wsexpandquad (DirectSound forced 4ch playback)
Setting for whether to forcibly play stereo or mono sounds in 4ch including rear speakers when playing in DirectSound.
Possible values are 'no' (do not perform) or 'yes' (perform); if this option is not specified, 'no' is assumed.
Setting 'yes' allows sound to be played on both front and rear speakers even in environments where stereo or mono sounds are only played on front speakers.
-wsfreq (DirectSound primary buffer frequency)
Setting for the playback frequency of the DirectSound primary buffer.
Possible values are positive natural numbers representing the frequency in Hz; if this option is not specified, '44100' is assumed.
Especially in environments using WDM-based sound drivers (Windows 2000, XP or later, etc.), changing the setting may not result in any change in the playback state.
-wsbits (DirectSound primary buffer bit depth)
Setting for the playback bit depth of the DirectSound primary buffer.
Possible values are 'i8' (8-bit integer), 'i16' (16-bit integer), 'i24' (24-bit integer), 'i32' (32-bit integer), or 'f32' (32-bit floating point); if this option is not specified, 'i16' is assumed.
Especially in environments using WDM-based sound drivers (Windows 2000, XP or later, etc.), changing the setting may not result in any change in the playback state.
-wscontrolpri (DirectSound primary buffer playback control)
Setting for whether to perform play/stop control on the DirectSound primary buffer.
Possible values are 'yes' (perform) or 'no' (do not perform); if this option is not specified, 'yes' is assumed.
Rarely, changing the setting seems to improve sound skipping or cutting in some environments.
-wspritry (DirectSound primary buffer setting trial level)
Setting for how many settings to try when specifying the format of the DirectSound primary buffer.
Possible values are '0' to '2' (Level 0 to Level 2) or 'all'; if this option is not specified, 'all' is assumed.
Specifying Level 0 attempts to set the format to stereo 16-bit integer.
Specifying Level 1 attempts to set the format to 16-bit integer with the number of channels according to the system speaker settings before trying Level 0.
Specifying Level 2 attempts to set the format using the WAVEFORMATEX structure with the bit depth specified in "DirectSound primary buffer bit depth" and the number of channels according to the system speaker settings before trying Level 1.
Specifying "all" attempts to specify the format using the WAVEFORMATEXTENSIBLE structure with settings similar to Level 2 before trying Level 2.

Graphic Related Options

-gclim (Image cache limit)
Setting for the maximum amount of memory used for image caching.
Possible values are 'auto' or an integer value; if an integer value is specified, the memory used for image caching is specified in MB. If this option is not specified, 'auto' is assumed.
Kirikiri has a mechanism to cache images so that once loaded images can be accessed quickly. Specifies the limit value for the memory used for that.
Specifying 'auto' automatically determines the value based on the amount of physical memory installed in the computer.
Specifying '0' disables caching.
If swapping occurs frequently during Kirikiri execution, specifying a smaller value or '0' may improve it.
-fsbpp (Color mode in fullscreen)
Setting for the color mode in fullscreen.
Possible values are 'nochange' (do not change), '16' (16-bit color), '24' (24-bit color), or '32' (32-bit color); if this option is not specified, 'nochange' is assumed.
Specifying 'nochange' results in the same color mode as in non-fullscreen mode.
This option can be changed dynamically, but the value will be reflected the next time you try to go fullscreen.
-fsres (Screen resolution in fullscreen)
Setting for the screen resolution in fullscreen.
Possible values are 'auto', 'proportional' (resolution with the same aspect ratio), 'nearest' (closest resolution), or 'nochange' (do not change resolution); if this option is not specified, 'auto' is assumed.
Selecting 'auto' automatically selects and uses the most suitable screen resolution. In this case, among resolutions with the same aspect ratio, if there is a resolution that fits the resolution specified in the program, it is selected; if there is no such resolution, the engine performs enlarged display without changing the resolution. In this setting, even if 'no' is specified for the -fszoom (enlarged display by engine in fullscreen) option, it is always considered to be 'outer' (fit within monitor).
Selecting 'proportional' selects the closest resolution that is the same as or larger than the resolution specified in the program among resolutions with the same aspect ratio as in non-fullscreen mode.
Selecting 'nearest' selects the closest resolution that is the same as or larger than the resolution specified in the program, but there is no guarantee that a resolution with the same aspect ratio as in non-fullscreen mode will be selected. This setting may be suitable for CRT monitors or LCD monitors that support enlarged display while maintaining the screen aspect ratio.
Selecting 'nochange' does not change the resolution, keeping the resolution as in non-fullscreen mode.
This option can be changed dynamically, but the value will be reflected the next time you try to go fullscreen.
-fszoom (Enlarged display by engine in fullscreen)
Specifies how the engine performs screen enlargement in fullscreen.
Possible values are 'inner' (fit within monitor), 'outer' (expand to fill monitor), or 'no' (do not perform); if this option is not specified, 'inner' is assumed.
Selecting 'inner' performs enlargement by the engine if necessary. Necessary means when the screen resolution is different from the resolution specified in the program (if the screen resolution is lower than the resolution specified in the program, it will be a reduction process). At this time, enlargement is performed while maintaining the aspect ratio of the resolution specified in the program, but if the monitor's aspect ratio and this aspect ratio are different, gaps may appear at the top and bottom or left and right. These gaps are always displayed in a completely black state.
Specifying 'outer' performs enlargement by the engine if necessary, same as when 'inner' is specified. However, unlike 'inner', if the monitor's aspect ratio and the aspect ratio specified in the program are different, enlargement is performed to the maximum so that no gaps appear at the top and bottom or left and right. Therefore, no gaps appear, but the screen may protrude outside the monitor. With this setting, for example, when displaying 16:9 content on a 16:10 monitor, it is possible to display it enlarged to the maximum without showing gaps. Of course, this results in areas protruding to the left and right, so if you are creating content assuming such a display, measures such as not displaying important UI or text in the protruding parts are necessary.
Selecting 'no' does not perform enlargement by the engine even if necessary. In this case, even if the screen resolution is different from the resolution specified in the program, enlargement by the engine side is not performed (as a result, the image may be displayed small in the center of the screen).
If the monitor's native resolution and the resolution of the signal output by the graphic card are different, LCD monitors etc. may perform enlarged display on the monitor side; however, if enlarged display is performed on the engine side after enlargement processing on the monitor side, enlargement will be performed twice, and the image may become ugly, so please be careful (the "auto" option of -fsres automatically selects a combination that prevents such double enlarged display).
This option can be changed dynamically, but the value will be reflected the next time you try to go fullscreen.
-gsplit (Split processing of image operations)
Setting for whether to perform image operations by splitting them into small parts.
Possible values are 'yes' (perform), 'int' (interlace split), 'bidi' (bidirectional split), or 'no' (do not perform); if this option is not specified, 'yes' is assumed.
Kirikiri performs operations while splitting into small areas when drawing images to effectively use the CPU's memory cache. Depending on the environment, this seems to lead to screen flickering. In such environments, specifying 'no' may suppress flickering, but drawing performance may also decrease. If double buffering is enabled, the meaning of not performing split processing is thin, so it is recommended to set it to perform split processing.
Specifying 'int' processes image operation units every other one, but stripes may be visible when the screen is updated. Selecting 'bidi' repeats top-to-bottom and bottom-to-top in the order of image operations (in the case of 'yes', it is always top-to-bottom).
-smoothzoom (Smoothing during enlarged display)
Setting for whether to perform smoothing (interpolation during enlargement) when performing enlarged display of content with Window.setZoom etc., or when Kirikiri performs enlarged (reduced) display of the screen with the -fsres option (this has nothing to do with enlargement/reduction with Layer.affineCopy etc.).
Possible values are 'no' (do not perform) or 'yes' (perform); if this option is not specified, 'yes' is assumed.
Performing smoothing makes the image smooth but gives it a slightly blurred feel. Not performing smoothing makes the image sharp but makes jagged edges more noticeable.
Depending on the environment, performance may decrease if smoothing is not performed. Also, there may be environments where smoothing does not work.
Some third-party drawing devices (devices set with the Window.drawDevice property) may not be affected by this option.
This option can be changed dynamically, but there is no guarantee that the value will be reflected immediately.
-aamethod (Anti-aliased character drawing method)
Setting for the anti-aliased character drawing method.
Possible values are 'auto', 'res4' (resampling 4x4), 'res8' (resampling 8x8), or 'api' (Windows API); if this option is not specified, 'auto' is assumed.
In the case of 'auto', 'api' is automatically selected in the current version.
In 'res4' or 'res8', characters are drawn at several times the size (4x4 or 8x8) and then reduced to achieve anti-aliasing. res4 is faster than res8, but precision is lower.
In 'api', anti-aliased characters are drawn using the GetGlyphOutline API, but it seems to be an API with many inconveniences and may not draw correctly depending on the environment.
-jpegdec (JPEG image decoding precision)
Setting for the precision of JPEG image decoding (expansion).
Possible values are 'high', 'normal', or 'low'; if this option is not specified, 'normal' is assumed.
Specifying 'high' makes decoding slow but image quality high. Specifying 'low' makes decoding fast but image quality low. However, there is almost no difference in appearance.
-drawthread (Number of drawing threads)
Setting for the number of threads to use during drawing processing.
Possible values are any numerical value or 'auto'; if this option is not specified, '1' is assumed.
Specifying 'auto' automatically assigns the same number of threads as the number of processors recognized by the OS.
Setting multiple drawing threads may improve drawing performance in multi-core environments, but conversely, performance may decrease.
Good results may be obtained by applying it to processes with large drawing areas, high-load Affine-related processes, heavy layer synthesis processes, etc.
Even if set to use multi-threading, if the system determines that the drawing process load is light and the effect of multi-threading cannot be obtained, it may not be executed in multi-threading.
-bitmapallocator (Bitmap memory allocation method Ver 1.1 or later)
Specifies how to secure memory for bitmaps.
Possible values are 'globalalloc' (secure with GlobalAlloc), 'separateheap' (use separate heap), or 'malloc' (use malloc); if this option is not specified, 'globalalloc' is assumed.
Using separateheap may reduce memory fragmentation and avoid out-of-memory error issues.
-bitmapheapsize (Initial separate heap size Ver 1.1 or later)
Specifies the initial size when "use separate heap" is chosen for the bitmap memory allocation method.
Possible values are 'auto' (automatic (recommended)), '0' (expand automatically), '64' (64MB), '128' (128MB), '256' (256MB), '512' (512MB), '1024' (1024MB), or '2048' (2048MB); if this option is not specified, 'auto' is assumed.
Normally auto is fine, but adjusting the initial value may reduce memory fragmentation and avoid out-of-memory error issues.

CPU Feature Related Options

For all the following options, possible values are 'yes' (use if available), 'no' (do not use even if available), or 'force' (forcibly use); if the option is not specified, 'yes' is assumed.
If CPU recognition trouble occurs, setting to 'no' will not use that feature.
'force' will forcibly use the CPU feature even if it is not detected, but of course, it will not work normally if the CPU does not have that feature.
Only -cpummx -cpucmov -cpusse -cpuemmx options affect the Kirikiri core itself. -cpusse, -cpummx, and -cpu3dn options affect the OggVorbis decoder (wuvorbis.dll). Other (third-party) plugins may also be affected by CPU feature settings.

Debug Related Options

-debug (Debug mode)
Setting for whether to operate Kirikiri in debug mode ( -> Debug ) .
Possible values are 'no' (disabled) or 'yes' (enabled); if this option is not specified, 'no' is assumed.
When enabled, Kirikiri operates in debug mode and several debug support features are enabled, but execution speed is lower than in normal mode.
-forcelog (Log to file)
Setting for whether to output console logs to a file.
Possible values are 'no' (do not output), 'yes' (append to existing file), or 'clear' (clear existing file before outputting); if this option is not specified, 'no' is assumed.
-logerror (Log to file on error)
Setting for whether to output console logs to a file when an error occurs.
Possible values are 'no' (do not output), 'yes' (append to existing file), or 'clear' (clear existing file before outputting); if this option is not specified, 'yes' is assumed.

System Compatibility Related Options

-arcdelim (Archive delimiter)
Specifies the archive delimiter (the character that separates the archive storage name and the storage name within the archive).
Possible values are '>' (use '>') or '#' (use '#'); if this option is not specified, '>' is assumed.
The archive delimiter was changed from the traditional '#' to '>' in Kirikiri 2 2.19 beta 14.
Applications that operated in versions earlier than 2.19 beta 14 may stop working due to this change, but they can be made to work by changing the delimiter to '#' with this option.
-evalcontext (Behavior of postfix '!' operator)
Specifies the behavior of the TJS2 postfix '!' operator.
Possible values are 'this' (evaluate expression on this) or 'global' (evaluate expression on global); if this option is not specified, 'this' is assumed.
The TJS2 postfix '!' operator used to execute expressions on the global context, but from 2.21 beta 9, it executes on the this context.
Applications assuming versions earlier than 2.21 beta 9 may not work unless this setting is set to "evaluate expression on global".
-holdalpha (Default value of Layer.holdAlpha property)
Specifies the default value of the Layer.holdAlpha property.
Possible values are 'false' or 'true'; if this option is not specified, 'false' is assumed.
In Kirikiri 2 2.23 beta 4, the hda (whether to protect the alpha channel) option specified in various operation functions was removed, and the Layer.holdAlpha property was created instead. At that point, the default value of Layer.holdAlpha was true. If Layer.holdAlpha is true, it does not affect the operation of past applications.
In Kirikiri 2 2.23 beta 5, this default value became false. If you want to run an application assuming versions earlier than Kirikiri 2 2.23 beta 5, it may not work correctly unless "true" is specified for this option.
-unaryaster (Behavior of prefix '*' operator)
Specifies the behavior of the TJS2 prefix '*' operator.
Possible values are 'default' (behavior of 2.25 or later) or 'compat' (behavior of earlier than 2.25); if this option is not specified, 'default' is assumed.
The TJS2 prefix '*' operator was an operator to retrieve the property object itself without going through the property handler, but from 2.25 beta 1, the operator with this function became the prefix '&', and the prefix '*' operator became an operator to operate the property handler of the property object. Applications assuming versions earlier than 2.25 beta 1 may not work correctly unless this setting is set to "compatible with earlier than 2.25".
-wsvolfactor (DirectSound volume curve)
Possible values are '3322' (behavior of 2.31 2011/6/14 or later) or '5000' (behavior of earlier than 2.31 2011/6/14); if this option is not specified, '3322' is assumed.
The DirectSound volume curve became a more intuitive curve from 2.31 2011/6/14.
-readencoding (Script reading character code)
Possible values are 'Shift_JIS' (Kirikiri 2 compatible behavior) or 'UTF-8' (Kirikiri Z behavior); if this option is not specified, 'UTF-8' is assumed.
The character code used to read scripts.
-ignoretouch (Disable touch events 1.3.0 or later)
Possible values are 'false' or 'true'; if this option is not specified, 'false' is assumed.
Specifying 'true' disables touch events and generates mouse events instead.