Command line options

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

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

 Except for the "boot options", "debug-related options", and "system compatibility-related options", most of them are fine-tuning options for solving environment-dependent problems.
 See also About environment-dependent problems for solutions to environment-dependent issues.


Note
With Releaser or -userconf, you can change these options by modifying the Kirikiri executable file or an external configuration file, but the defaults are usually fine. We do not recommend distributing executables or configuration files with these options changed to non-defaults, due to issues specific to the creator's environment (Of course, there are some options like -datapath that need to be set according to the distribution and usage).


In the list below, those that have the notation "dynamically changeable" can be changed using the System.setArgument method. Other options cannot be changed dynamically.

Start options

 You have the following options to call and use only certain features of Kirikiri.
-userconf (Start the configuration tool for end users)
 Start the end-user setting tool built into the main unit.
-about (Display copyright information dialog box)
 Displays the "Version / Copyright / Environment Information" dialog box.
-sel (Displaying the Select Folder / Archive Dialog Box)
 Displays the Select Folder / Archive dialog box. Data such as data.xp3 is not automatically detected.
 If you specify a folder as a command line parameter (without a leading hyphen), you can open the Select Folder / Archive dialog box with that folder initially selected.
-printdatapath (Output data storage location)
 Outputs the settings of the data storage location (-datapath option) and line feed to the standard output, and terminates. This option is for use by external applications that manage save data in cooperation with Kirikiri.
 Special character strings such as $(exepath) in the data storage location are output after being replaced.
 Since Kirikiri is a GUI application, nothing is displayed even if you start Kirikiri executable from the command prompt with -printdatapath option. Use pipes and redirects to capture the output.
-startup (Specify startup script)
 Specify the name of the script file to be executed first.
 If not specified, startup.tjs is executed.

General system options

-datapath (Data storage location)
 This is the setting of the location (folder) where Kirikiri saves various data.
 Specifiable values are specified by character strings.
 You can simply specify the folder name with the full path, but usually you use the special characters embedded below.

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

The default is "$(exepath)\savedata". This setting is suitable for a distribution format in which the program is compressed and archived with zip or the like without using an installer, etc., and the user can extract the file and execute the program immediately.
However, with this default setting, if you place a program under Program Files, you will not be able to write files under Program Files. May result in an error.
If you use a name like "$(appdatapath)\application name" or "$(personalpath)\application name", it will be written to the folder for each user, so this problem will not occur easily, but some users may get stuck because the visibility of the data storage location is poor.

The data storage location specified by this option will be created when starting Kirikiri if it does not exist. If the creation fails, the process will continue without terminating, so handle the error in the user's script (by catching an exception such as unable to save data).

The settings made in "Engine Settings" are created in the folder specified in this data storage location. In addition, various logs are created in this folder by default.
-contfreq (Processing limit)
 Specify whether to reduce the CPU usage rate by calling a process such as a transition at a specified cycle while applying a wait.
 Possible values are '0' (no limit) or a positive integer. If this option is not specified, '0' is assumed. If you specify a positive integer, you can specify a period in Hz.
 This option affects transitions and continuous handlers registered with System.addContinuousHandler.
 If this is set to '0', the CPU will be used up and processing will be performed during transitions.
 If you specify a numerical value, processing will be performed in that cycle, and the extra time will cause the CPU to rest. This reduces the impact on other applications, increases CPU temperature, and reduces computer power consumption. The lower the number, the better this effect. However, if you specify a low number, transitions may not be smooth.
 If you wait for vertical synchronization with the waitvsync option, the continuous handler will be driven according to the timing of vertical synchronization, and the setting of the contfreq option will be ignored.
 This option can be changed dynamically, but the change will take effect the next time the transition or Continuous Handler breaks.
-memusage (memory usage)
 This is the memory usage setting.
 Possible values are 'normal' or 'low'. If this option is not specified, it is assumed that 'normal' has been specified.
 Selecting "low" saves more memory than selecting "normal". However, if you select "low", the performance will decrease because various cache mechanisms inside Kirikiri are limited and the size of the hash table of TJS2 is limited. Also, if you select "low", "Graphic-Image Cache Limit" will be considered as "Forced" setting.
-timerprec (Timer accuracy)
 This is the setting for the high accuracy of the timer.
 Possible values are 'normal' or 'higher' or 'high' If no options are specified, 'normal' is assumed.
 When 'higher' or 'high' is specified, the overall accuracy of the timer (including most of the things related to time and timing) will be higher, and the sloppy feeling of character display in KAG and the sloppy feeling of MIDI playback may be eliminated. Possible, but it can also degrade performance.
-laxtimer (Timer event capacity limit)
 Specify whether to limit the number of timer events (maximum allowable amount) that can be stored in the system at one time to avoid a situation where timer events become too large to be processed.
 Possible values are 'no' (do not) or 'yes' (do). If this option is not specified, it is assumed that 'no' was specified.
 In a computer with a very slow processing, or a situation where a very heavy process is driven by a timer, it may not be possible to respond to the event generated by the timer, and it may be difficult for Kirikiri to respond to operations. If 'yes' is specified for this option, the maximum allowable number of timer events stored in the system is always fixed at 1 (when the capacity property of the Timer class is 1). This can reduce the occurrence of timer events that cannot be handled by the system, but usually reduce the accuracy and accuracy of the timer.
-lowpri (Low priority)
 Set whether to lower the priority at the time of transition, etc.
 Possible values are 'no' (do not) or 'yes' (do). If this option is not specified, it is assumed that 'no' was specified.
 If 'yes', when the main thread of Kirikiri continues to use the CPU, such as during a transition, the execution priority of the main thread will be reduced. This may improve symptoms such as skipping during transitions and difficulty in operating other applications during transitions.
-exceptionexe (Exception start editor)
 Specify the editor to be started when an exception occurs.
-exceptionarg (Start on exception editor options)
 Specify the options to be specified when starting the editor when an exception occurs.
 Although it is possible to simply specify the argument, it is usually used by embedding the following special string.

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

Input related options

-wheel (Mouse wheel rotation detection method)
 Settings for how to detect mouse wheel rotation.
 Possible values are 'no' (do not use) or 'dinput' (DirectInput) or 'message' (window message). If this option is not specified, 'dinput' is assumed.
 If you select "Disable", the mouse wheel will be disabled. Select "DirectInput" to use DirectInput. Select "Window Message" to detect mouse wheel rotation without using DirectInput. Changing the settings may improve mouse wheel related issues.
-joypad (Pad availability)
Set 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.
 If you select "Disable", the pad will be disabled. If the pad cannot be detected normally, or if the pad cannot be used normally, change the setting to "Disable".
-paddelay (Pad key repeat delay)
Specify the time until the key repeat of the gamepad (joystick) in milliseconds.
 The settable value is a positive number or -1. Specifying -1 disables key repeat. If this option is not specified, 500 is assumed.
 This option can be changed dynamically.
-padinterval (Pad key repeat interval)
Specifies the pad (joystick) key repeat interval in milliseconds. The smaller the value, the faster the repeat.
 Possible values are positive numbers; if this option is not specified, 30 is assumed.
 This option can be changed dynamically.
-controlime (IME state control)
 Set whether to control the status of the IME (conversion input software for Japanese, etc.) (control whether it is enabled or disabled).
 Possible values are 'yes' (do it) or 'no' (do not do it). If this option is not specified, it is assumed that 'yes' is specified.
 If you select "No", you may be able to avoid problems such as "Cannot input languages such as Japanese that can be input through IME".

Sound-related options

-wsdecpri (PCM decoding thread priority)
 The priority of the PCM decoding thread.
 Possible values are '0' (idle (lowest)), '1' (low), '2' (normally below) , '3' (normal), '4' (normal), or '5' (high). If you do not specify, '1' is assumed.
 A higher priority may reduce sound skipping during PCM (uncompressed wave, OggVorbis, etc.) playback, but may result in a less smooth transition or poor responsiveness to operations.
 By the way, what is specified here is the priority of normal decoding. In an emergency (when the remaining data in the buffer is getting shorter), the necessary priority is automatically secured.
-wssoft (DirectSound software mixing)
 This is a setting to determine whether or not mixing is performed using software with DirectSound.
 Possible values are 'yes' (perform software mixing) or 'no' (do not perform software mixing). 'yes' is assumed.
 In the standard setting, mixing is performed by software, which increases the load on the CPU, but increases the possibility of avoiding hardware-specific problems. If there is no problem even if you specify 'no' for this option (even when mixing with hard air), you may be able to reduce the CPU load. For USB audio and inexpensive sound cards, mixing may always be done by the CPU, so changing this option may have no effect.
-wsrecreate (DirectSound Secondary buffer regeneration)
 Set whether to always regenerate the secondary buffer in DirectSound.
 Possible values are 'yes' (always regenerate) or 'no' (regenerate as needed), unless this option is specified 'no' is assumed.
 In Kirikiri, once created secondary buffer is reused if the conditions such as number of channels and sampling frequency are the same, but if 'yes' is specified, it will always be regenerated without reuse. Depending on the environment, instability such as skipping or skipping at the start of playback may be improved.
-wsl1len (DirectSound secondary buffer length)
 DirectSound Secondary buffer length setting.
 Possible values are integers, specified in milliseconds. At least 250ms is required. If this option is not specified, 1000 is assumed.
 The value specified here is the length of the buffer that is actually reserved as a secondary buffer for DirectSound.
 In general, the longer the playback, the more stable the playback, but the more memory it consumes.
-wsl2len (DirectSound Secondary auxiliary buffer length)
 DirectSound Secondary buffer length setting for the secondary buffer.
 Possible values are integers, specified in milliseconds. At least 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 the auxiliary buffer.
 Normally, decoding and accumulation in the auxiliary buffer are performed by a low-priority thread, but transfer from the auxiliary buffer to the secondary buffer is performed by a thread with a high priority.
 In general, the longer the playback, the more stable the playback, but the more memory it consumes. Also, if control is made to change the decoding process, the delay before it is actually sounded will be longer.
-wsmute (DirectSound Mute)
 Setting to mute (decrease the volume) when the application is inactive or minimized in DirectSound.
 Possible values are 'never' (do not mute), 'minimize' (when minimized), 'deactive' (when inactive) If you do not specify this option with any of, 'never' is assumed.
 Selecting 'never' will not mute. 'minimize' and 'deactive' will mute the application when it is minimized and when it becomes inactive, respectively.
 Only the thing played by WaveSoundBuffer (KAG uses 'Wave' for BGM and sound effects) is muted, MIDI and CDDA playback are not muted.
-wsmutevol (DirectSound Mute volume)
 -wsmute (DirectSound mute) volume setting when muted.
 The value that can be set is an integer, specified in units of %.
 Specifying "0%" results in complete silence, while specifying "50%" results in half the volume (about -6dB).
-wsforcecnv (DirectSound forced format conversion)
 Set whether to forcibly convert PCM data to be played by DirectSound to the specified format.
 Possible values are 'none' (no conversion), 'i16' (convert to 16 bit integer), 'i16m' (convert to 16 bit integer monaural) If you do not specify this option for any of, it is assumed to be 'none'.
 Changing the settings may improve playback problems. When 'i16m' is selected, the setting of the -wsexpandquad option (DirectSound forced 4ch playback) is ignored.
-wsuse3d (DirectSound 3D control)
 Set whether to perform 3D control with DirectSound.
 Possible values are 'no' (no) and 'yes' (yes). If this option is not specified, 'no' is specified.
 Selecting 'yes' enables 3D control of the sound and enables the WaveSoundBuffer.posX, WaveSoundBuffer.posY, WaveSoundBuffer.posZ properties. (These properties are already implemented in the current version, but are not supported).
 Also, in many environments, selecting 'yes' will cause DirectSound3D to extend stereo and monaural sounds to surround speakers for playback (for example, sounds that were only played on the front speakers will be played on all speakers in 5.1ch environment).
 When 'yes' is selected, the setting of -wsexpandquad option (DirectSound forced 4ch playback) is ignored.
-wsexpandquad (DirectSound forced 4ch playback)
 Set whether to force playback on 4ch including the rear speaker when playing stereo or monaural sound with DirectSound.
 Possible values are 'no' (no) and 'yes' (yes). If this option is not specified, 'no' is specified.
 Setting 'yes' allows the sound to be played on both front and rear speakers, even in environments where stereo or monaural sound is played only on the front speakers.
-wsfreq (DirectSound primary buffer frequency)
 Set the playback frequency of the primary buffer of DirectSound.
 Possible values are positive natural numbers that represent the frequency in Hz; if this option is not specified, '44100' is assumed.
 Especially in an environment that uses a WDM sound driver (Windows 2000, XP or later), the playback status may not change even if the setting is changed.
-wsbits (DirectSound Primary Buffer Bits)
 This is the 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), For 'i32' (32-bit integer) and 'f32' (32-bit floating point number), if this option is not specified, 'i16' is assumed.
 Especially in an environment that uses a WDM sound driver (Windows 2000, XP or later), the playback status may not change even if the setting is changed.
-wscontrolpri (DirectSound primary buffer playback control)
 This is the setting to control whether to play / stop the primary buffer of DirectSound.
 Possible values are 'yes' (do) and 'no' (do not). If this option is not specified, 'yes' is specified.
 There seems to be an environment where skipping and sound breakage can be improved by changing the setting in rare cases.
-wspritry (DirectSound primary buffer setting trial level)
 How many settings to try when specifying the format of the DirectSound primary buffer.
 Possible values are '0' - '2' (level 0 - level 2) or 'all' (all). If not specified, 'all' is assumed.
 If level 0 is specified, an attempt will be made to set a stereo 16-bit integer format.
 If level 1 is specified, before trying level 0, it will try to set the number of channels according to the system speaker settings and format with 16bit integer.
 Specifying level 2 will attempt to set the number of bits specified in "DirectSound Primary Buffer Bits", the number of channels according to the system speaker settings, and the format using the WAVEFORMATEX structure before attempting level 1.
 If "All" is specified, before trying level 2, it will try to specify the format by WAVEFORMATEXTENSIBLE structure with the same settings as level 2.

Graphics-related options

-gclim (Image cache limit)
 Set the maximum value of the memory used for the image cache.
 Possible values are 'auto' or an integer value. When specifying an integer value, specify the memory used for the image cache in MB. If this option is not specified, 'auto' is assumed.
 Kirikiri has a mechanism to cache images so that you can quickly access images once they are loaded. Specify the limit of the memory used for it.
 If you specify 'auto', the value is determined automatically by the amount of physical memory installed on your computer.
 If '0' is specified, caching is not performed.
 If swaps occur frequently during execution of Kirikiri, you may be able to improve by specifying a smaller value or '0'.
-fsbpp (Color mode at full screen)
 This is the color mode setting for full screen.
 Possible values are 'nochange' (do not change), '16' (16-bit color), '24' (24-bit color), '32' (32-bit color). If you do not specify this option for any of, it is assumed that 'nochange' is specified.
 If 'nochange' is specified, the color mode will be the same as the non-full screen color mode.
 This option can be changed dynamically, but will take effect the next time you try to go full screen.
-fsres (Screen resolution at full screen)
 This is the screen resolution setting for full screen.
 Possible values are 'auto' (automatic), 'proportional' (resolution with same aspect ratio), 'nearest' (closest resolution) or 'nochange' (do not change resolution), if this option is not specified, 'auto' is assumed.
 Selecting 'auto' will automatically select and use the most suitable screen resolution. In this case, if there is a resolution with the same aspect ratio that fits the resolution specified in the program, select it. If there is no such resolution, the engine side without changing the resolution Enlarge the display. With this setting, it is always assumed to be 'outer' (fit into the monitor), even if 'no' is specified for the -fszoom (engine full-screen zoom) option .
 Selecting 'proportional' will select the closest resolution that is the same as or larger than the resolution specified in the program, with the same screen aspect ratio as in non-full screen.
 Choosing 'nearest' will select the closest resolution that is equal to or greater than the resolution specified in the program, but there is no guarantee that the same aspect ratio resolution will be selected as in non-full screen. This setting may be suitable for CRT monitors and LCD monitors that support enlarged display while maintaining the screen aspect ratio.
 If you select 'nochange', the resolution will not be changed while keeping the non-full screen resolution.
 This option can be changed dynamically, but will take effect the next time you try to go full screen.
-fszoom (Enlarged display by engine at full screen)
 Specifies how the engine enlarges the screen during full screen.
 Possible values are 'inner' (fit inside the monitor), 'outer' (zoom to fill the monitor), 'no' (no) If you do not specify this option for any of, 'inner' is assumed.
 Selecting 'inner' will cause the engine to expand if necessary. When necessary, the screen resolution is different from the one specified in the program (if the screen resolution is lower than the one specified in the program, it will be reduced). At this time, enlargement is performed while maintaining the aspect ratio of the resolution specified in the program, but if the aspect ratio of the monitor is different from this aspect ratio, there may be gaps in the top and bottom or left and right . This gap is always displayed in black.
 If 'outer' is specified, engine expansion will be performed if necessary, as if 'inner' was specified. However, unlike 'inner', if the aspect ratio of the monitor is different from the aspect ratio specified in the program, the image will be enlarged to the full extent so that there is no gap between the top and bottom and left and right. For this reason, there is no gap, but the screen may run off the monitor. With this setting, for example, when displaying 16: 9 content on a 16:10 monitor, it is possible to enlarge the display to the fullest size without leaving any gaps. Of course, this will cause areas to protrude to the left and right, so if you are creating content that assumes such display, you need to take measures such as not displaying important UI and characters in the protruding parts.
 If you select 'no', the engine will not expand if necessary. In this case, even if the screen resolution is different from the resolution specified in the program, the engine does not enlarge the image (as a result, the image may be displayed smaller in the center of the screen).
 If the original resolution of the monitor and the resolution of the signal output from the graphic card are different, the LCD monitor may perform enlarged display on the monitor side. Note that doing so causes double enlargement, which may result in a dirty image. (The "auto" option of -fsres automatically selects combinations that prevent such double enlargement. To select).
 This option can be changed dynamically, but will take effect the next time you try to go full screen.
-gsplit (Division of image operation)
 Sets whether to perform image calculation in finely divided units.
 Possible values are 'yes' (do), 'int' (interlace split), 'bidi' (bidirectional split), 'no' If you do not specify this option for any of, 'yes' is assumed.
 In order to use the CPU's memory cache effectively, Kirikiri performs calculations while dividing the image into small areas. Depending on the environment, this may lead to screen flicker. In such environments, specifying 'no' may reduce flickering, but may degrade drawing performance. If double buffering is enabled, it does not make sense to not perform the splitting process, so it is recommended that you set it to perform the splitting process.
 If 'int' is specified, the image will be processed every other unit, but stripes may be seen when updating the screen. When 'bidi' is selected, the order of image operations is repeated from top to bottom, bottom to top (when 'yes', always top to bottom).
-smoothzoom (Smoothing in enlarged display)
 Set whether to perform smoothing (interpolation at the time of enlargement) when performing enlargement display of the display contents with Window.setZoom, etc., or when Kirikiri enlarges (reduces) the screen with the -fsres option. (It has nothing to do with scaling in Layer.affineCopy etc.)
 Possible values are 'no' (do not do) or 'yes' (do). If this option is not specified, 'yes' is specified. Will be considered
 Smoothing makes the image smoother but slightly blurry. Without smoothing, the image will be sharper but jagged.
 In some environments, performance may degrade without smoothing. 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 take effect immediately.
-aamethod (Anti-aliased character drawing method)
 Set the anti-aliased character drawing method.
 Possible values are 'auto' (automatic), 'res4' (resampling 4 4), 'res8' (resampling 8 8), 'api' (Windows API), if this option is not specified, 'auto' is assumed.
 If 'auto', 'api' is selected automatically in the current version.
 'res4' or 'res8' draws characters several times larger (4x4 or 8x8) and shrinks them to achieve anti-aliasing. res4 is faster than res8, but less accurate.
 'api' uses the GetGlyphOutline API to draw anti-aliased characters, but it looks like an API with many inconveniences and may not draw properly depending on the environment.
-jpegdec (JPEG image decoding accuracy)
 This is the setting for the accuracy of decoding (decompression) of JPEG images.
 Possible values are 'high', 'normal', or 'low' , If this option is not specified, 'normal' is assumed.
 Specifying 'high' results in slower decoding but higher quality. Specifying 'low' speeds up decoding but lowers image quality. However, there is little difference in appearance.
-drawthread (Number of drawing threads)
 This is the setting for the number of threads to be used during the drawing process.
 Possible values are either arbitrary numbers or 'auto'. If this option is not specified, it is assumed that '1' has been specified. Is done.
 When 'auto' is specified, the same number of threads as the number of processors recognized by the OS are automatically allocated.
 Setting multiple drawing threads may improve drawing performance in a multi-core environment, but may also degrade performance.
 Good results may be obtained by applying it to processing with a large drawing area, high-affinity Affine-based processing, or layer-compositing processing with heavy computation.
 Even if it is set to use multi-threading, if the system determines that the drawing processing 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 allocate memory for the bitmap.
 Possible values are 'globalalloc' (allocated by GlobalAlloc), 'separateheap' (use split heap), 'malloc' (use malloc), if this option is not specified, 'globalalloc' is assumed.
 Using separateheap may reduce memory fragmentation and possibly avoid out-of-memory errors.
-bitmapheapsize (Initial split heap size Ver 1.1 or later)
 Specify the initial size when using the split heap in the bitmap memory allocation method.
 Possible values are 'auto' (auto (recommended)), '0' (automatically expand), '64' (64MB), '128' (128MB), '256' (256MB), '512' (512MB), '1024' (1024MB) or '2048' (2048MB), if this option is not specified, it is assumed that 'auto' is specified.
 Normally, auto is fine, but adjusting the initial value may reduce memory fragmentation and avoid out-of-memory errors.

Options related to CPU functions

 The following options have all possible values: 'yes' (use if available), 'no' (do not use if available) , 'force', if no options are specified, 'yes' is assumed.
 If you set it to 'no' when CPU recognition trouble occurs, that function will not be used.
 'force' will force the use of the CPU feature even if it is not detected, but will not work properly if the CPU does not have that feature.
 Only the -cpummx -cpucmov -cpusse -cpuemmx options affect the Kirikiri core. The OggVorbis decoder (wuvorbis.dll) is affected by the -cpusse, -cpummx and -cpu3dn options. Some other (third-party) plug-ins may also be affected by CPU feature settings.

Debug related options

-debug (Debug mode)
 This is the setting for whether or not to run Kirikiri in debug mode ( → debug ) .
 Possible values are 'no' (disabled) and 'yes' (enabled). If this option is not specified, 'no' is specified. Will be considered.
 When enabled, Kirikiri works in debug mode, enabling some debugging support features, but runs slower than in normal mode.
-forcelog (Log to file)
 Specify whether to output the console log to a file.
 Available values are 'no' (do not output), 'yes' (output by adding to existing file), 'clear' (clearing existing output then creating a new file). If you do not specify this option, it is assumed that 'no' is specified.
-logerror (Log to file on error)
 Specify whether to output the console log to a file when an error occurs.
 Available values are 'no' (do not output), 'yes' (output by adding to existing file), 'clear' (clearing existing output then creating a new file). If you do not specify this option, it is assumed that 'no' is specified.

System compatibility options

-arcdelim (Archive delimiter)
 Specify the archive delimiter (the character that separates the archive storage name and the storage name in the archive).
 Possible values are '>' (use '>'), '#' (use '#'), or '>' is specified if this option is not specified Will be considered
 The archive delimiter has been changed from '#' to '>' in 2.19 beta 14 of Kirikiri 2.
 Applications that worked before 2.19 beta 14 may not work due to this change, but you can work with this option by changing the delimiter to '#'.
-evalcontext (Behavior of the postfix '!' operator)
 Specifies the operation of the postfix '!' operator for TJS2.
 Possible values are 'this' (evaluate expression on this) and 'global' (evaluate expression on global). If not specified, 'this' is assumed.
 The postfix '!' Operator in TJS2 executed expressions in the global context, but since 2.21 beta 9, it now executes in the this context.
If your application assumes less than 2.21 beta 9, this setting may not work unless you set "Evaluate expression on global".
-holdalpha (Default value of Layer.holdAlpha property)
 Specifies the default value for the Layer.holdAlpha property.
 Possible values are 'false' (false) or 'true' (true). If this option is not specified, 'false' is specified. Will be considered.
 Kirikiri 2 In 2.23 beta 4, the hda (whether to protect the alpha channel) option specified for various arithmetic functions was removed, and the Layer.holdAlpha property was created instead. At this point, the default value of Layer.holdAlpha was true. If Layer.holdAlpha is true, it will not affect past application behavior.
 Kirikiri 2 In 2.23 beta 5, this default value was false. Kirikiri 2 If you want to run an application that assumes less than 2.23 beta 5, it may not work properly unless you specify "true" for this option.
-unaryaster (Behavior of the prefix '*' operator)
 Specify the operation of TJS2 prefix '*' operator.
 Possible values are 'default' (beginning with 2.25) and 'compat' (below 2.25). 'default' is assumed.
 The prefix '*' operator in TJS2 was an operator that extracts the property object itself without going through the property handler. From 2.25 beta 1, the operator with this function is prefixed with '&' The '*' operator is now an operator for running property handlers on property objects. Applications that expect less than 2.25 beta 1 may not work properly unless this setting is "compatible with less than 2.25".
-wsvolfactor (DirectSound volume curve)
 Possible values are '3322' (operation after 2.31 2011/6/14) and '5000' (operation before 2.31 2011/6/14) If this option is not specified, '3322' is assumed.
 The volume curve of DirectSound is more intuitive than 2.31 2011/6/14.
-readencoding (Script reading character code)
 Possible values are 'x-sjis-unicode' (Kirikiri 2 compatible operation) and 'UTF-8' (Kirikiri Z operation) If you do not specify, 'UTF-8' is assumed.
 The character code used to load the script.
-ignoretouch (Disable touch event 1.3.0 or later)
 Possible values are 'false' (false) or 'true' (true). If this option is not specified, 'false' is specified. Will be considered.
 Specifying 'true' disables touch events and fires mouse events instead.