detail extensions

From Wiki

Jump to: navigation, search
Line 43: Line 43:
  
 
====escape_analog_modes====
 
====escape_analog_modes====
{{Ex/inival|1.1.1.5|series of analog modes as described above|describes the modes available to [[#do_escape]]. The defaults are ''uz'', enabling a single analog mode equivalent to Sword of Moonlight's axis based movement controls; walking forward and backward and turning left and right. The non-axis based movement controls are button based; walking sideways and looking up and down.
+
{{Ex/inival|1.1.1.5|series of analog modes as described above|describes the modes available to [[#do_escape]]. The defaults are ''uz'', enabling a single analog mode equivalent to Sword of Moonlight's axis based movement controls; moving forward and backward and turning left and right. The non-axis based movement controls are button based; moving sideways and looking up and down.
  
 
An analog mode can be up to eight (8) letters long comprised of x, y, z, u, and v, denoting lateral, vertical, forward and backward, turning, and looking movement respectively. Each letter can be capitalized, X, Y, Z, U, and V, in order to invert the axis. However it is not necessary to add an additional mode solely to invert the looking movement, as inverted look modes will be generated automatically.     
 
An analog mode can be up to eight (8) letters long comprised of x, y, z, u, and v, denoting lateral, vertical, forward and backward, turning, and looking movement respectively. Each letter can be capitalized, X, Y, Z, U, and V, in order to invert the axis. However it is not necessary to add an additional mode solely to invert the looking movement, as inverted look modes will be generated automatically.     

Revision as of 05:24, 22 January 2013


Extensions in this section complement those of the #Option section. Each Option extension takes the form do_..., where each Detail extension takes the form ..._... where the first parts (...) are identical to one another. If the Option extension is turned off the corresponding Detail extensions have no part to play.

alphafog_skyflood_constant

Introduced around 1.0.0.1, this extension is part of an effect that blends the horizon into the sky domes that are part of Sword of Moonlight. The sky is fully transparent at #alphafog_skyfloor_constant and becomes fully opaque as the vertical distance from the floor approaches 1 in sky model coordinates.

This constant can be thought of as scaling the sky along the vertical axis, so that the larger the scaling the slighter the gradient. The default value is 8.

Note that internally this value simply sets a shader preprocessor macro that is used by the default shader set. Values are limited to real numbers.[#]

Note: in order to fully disable this effect it is necessary to set this extension to a value of 0. Recall that the default behavior is particular to Sword of Moonlight sky domes. Care must be given to custom sky models.

alphafog_skyfloor_constant

Introduced around 1.0.0.1, this extension is part of an effect that blends the horizon into the sky domes that are part of Sword of Moonlight. The default value is -0.125 or the lowest point of the sky domes. Any part of the sky below this point will be made completely invisible as it blends into the horizon. Refer to #alphafog_skyflood_constant.

Note that internally this value simply sets a shader preprocessor macro that is used by the default shader set. Care must be given to custom sky models. Values are limited to real numbers.[#]

ambient_contribution

Introduced around 1.0.0.1, this extension sets the percentage of a lamp that is converted from diffuse to ambient light. The default percentage is not specified. Historically it is and has been 0.15, or 15%. This is unlikely to change, however it doesn't hurt to set this manually, even if 15% is alright with you. Some caution should be observed. Refer to #do_ambient. Values are limited to real numbers between 0 and 1.[#]

bob_frequency_multiplier

Introduced around 1.1.1.5, this extension multiplies the number of times the walking effect will loop over the distance of a meter when moving at full walking speed. Each loop can be thought of as a single step. An increased frequency amounts to a shorter stride. A decrease a longer stride. Values are limited to real numbers.[#]

cursor_hourglass_ms_timeout

Introduced around 1.0.0.1, this extension sets the number of milliseconds that a game may be "unresponsive" before an "hourglass" icon will be made to appear to indicate that the game is working behind the scene.

The default value is 0. Which is converted into an internal default timeout that has historically been fixed at 250ms, or a quarter of a second. You might need to use a larger value if the icon is a nuisance. Values are limited to positive whole numbers.[#]

Note that the game may or may not be working or may only be partially working. The real intent is to make the game appear responsive to put the player at ease and stop the Windows "not responding" protocol.

escape_analog_gaits

Introduced around 1.1.1.5, this extension calibrates the sensitivity of Sword of Moonlight's game controller. Note that this extension is overshadowed by #Joypad sections. Refer to #..._analog_gaits.

This extension has 7 parts that must be separated in a way that is unambiguous. Any part not specified defaults to: 0.2, 0.333333, 0.5, 0.666666, 0.75, 0.875, and 0.95 respectively. This is a perfect linear mapping. A game controller may use a nonlinear mapping. In example, a DualShock controller is very biased; .2 .25 .3 .4 .55 .75 .95 gives a greater sense of control over its sticks by flattening out the windows between the gaits.

Note that this is not a mechanism for calibrating imbalance or fighting in a stick. That is done with the Windows Control Panel calibration feature.

The first and last numbers in the series are unique. An input below the first number is ignored. This is important because sticks usually require a wide "dead zone" so not to appear cocked when left still. An input above the last number is taken to be full tilt. A calibrated stick should achieve full tilt. An expanded window lessens the need to force a stick to full tilt.

If a number is less than or equal to the number before it results are undefined. The option to merge gaits will be visited at a later date. Values are limited to series of real numbers between 0 and 1.[#]

escape_analog_modes

Introduced around 1.1.1.5, this extension describes the modes available to #do_escape. The defaults are uz, enabling a single analog mode equivalent to Sword of Moonlight's axis based movement controls; moving forward and backward and turning left and right. The non-axis based movement controls are button based; moving sideways and looking up and down.

An analog mode can be up to eight (8) letters long comprised of x, y, z, u, and v, denoting lateral, vertical, forward and backward, turning, and looking movement respectively. Each letter can be capitalized, X, Y, Z, U, and V, in order to invert the axis. However it is not necessary to add an additional mode solely to invert the looking movement, as inverted look modes will be generated automatically.

The letters correspond to axes of the game controller. An axis can be knocked out using a dash (-) place holder. So to add a 2nd and 3rd (automatically generated inverted) mode uz, xzuv-v is a start. These modes should add a dual thumb stick set-up compatible with most DualShock like controllers and adapters that the player can access by pressing the Esc (escape) key once in game. Values are limited to series of analog modes as described above.

Note: in the future #do_system will be needed to bypass the new system menu which will make the "Analog Mode" approach obsolete for all but the most stubborn and curious. In the meantime this extension is absolutely essential to beginners and avid players will want to familiarize themselves with the #Joypad section.

log_initial_timeout

Introduced around 1.0.0.1, this extension sets the number of refresh frames to log to a log file before logging is no longer performed. This is a diagnostic tool. A log file can grow very large and logging can make a game unplayable under different circumstances. The default setting is 0. The default behavior is to log until manually disabled. Refer to #log_subsequent_timeout. Values are limited to positive whole numbers.[#]

log_subsequent_timeout

Introduced around 1.0.0.1, this extension sets the number of refresh frames to log whenever logging is manually enabled before automatically disabling logging. The default setting is 0. The default behavior is to enable logging until manually disabled. Refer to #log_initial_timeout. Values are limited to positive whole numbers.[#]

*mipmaps_samples_limit

previously mipmaps_maximum_anisotropy prior to 1.1.1.6

Introduced around 1.0.0.1, this extension is undocumented. Values are limited to positive whole numbers.[#]

*mouse_...th_button_action

Introduced around 1.0.0.1, this extension is undocumented. Values are limited to keyboard macros.[#]

*mouse_deadzone_multiplier

Introduced around 1.0.0.1, this extension is undocumented. Values are limited to real numbers between 0 and 2.[#]

*mouse_horizontal_multiplier

Introduced around 1.0.0.1, this extension is undocumented. Values are limited to real numbers.[#]

*mouse_left_button_action

Introduced around 1.0.0.1, this extension is undocumented. Values are limited to keyboard macros.[#]

*mouse_menu_button_action

Introduced around 1.0.0.1, this extension is undocumented. Values are limited to keyboard macros.[#]

*mouse_middle_button_action

Introduced around 1.0.0.1, this extension is undocumented. Values are limited to keyboard macros.[#]

*mouse_right_button_action

Introduced around 1.0.0.1, this extension is undocumented. Values are limited to keyboard macros.[#]

*mouse_saturate_multiplier

Introduced around 1.0.0.1, this extension is undocumented. Values are limited to positive real numbers.[#]

*mouse_tilt_left_action

Introduced around 1.0.0.1, this extension is undocumented. Values are limited to keyboard macros.[#]

*mouse_tilt_right_action

Introduced around 1.0.0.1, this extension is undocumented. Values are limited to keyboard macros.[#]

*mouse_vertical_multiplier

Introduced around 1.0.0.1, this extension is undocumented. Values are limited to real numbers.[#]

*numlock_initial_state

Introduced around 1.0.0.1, this extension is undocumented. Values are limited to binary statements.[#]

*numlock_key

Introduced around 1.0.0.1, this extension is undocumented. Values are limited to keyboard keys.[#]

*pause_button_default

Introduced around 1.0.0.1, this extension is undocumented. Values are limited to pseudo buttons.[#]

*pedal_damage_force

Introduced around 1.1.1.5, this extension is undocumented. Values are limited to real numbers.[#]

*pedal_damage_limit

Introduced around 1.1.1.5, this extension is undocumented. Values are limited to real numbers.[#]

*red_multiplier

Introduced around 1.1.1.5, this extension is undocumented. Values are limited to real numbers.[#]

*wasd_and_mouse_mode

Introduced around 1.0.0.1, this extension is undocumented. Values are limited to 1 or 2.