player extensions

From Wiki

Jump to: navigation, search


corkscrew_power

Introduced around 1.1.1.7, this extension exponentiates the corkscrew gesture. The gesture is most sensitive at 1. The default power is 2. Refer to #do_not_corkscrew. Values are limited to real numbers.[#]

do_not_corkscrew

Introduced around 1.1.1.7, this extension in the affirmative eliminates the "corkscrew" maneuver that occurs when turning and moving in the same direction resulting in the player character turning at an accelerated rate. When dashing the accelerated turning is accompanied by ducking resulting in a downward spiral, or corkscrew.

It is still possible to corkscrew manually using the CORKSCREW extended #keyboard key code. Values are limited to binary statements.[#]

do_not_dash

Introduced around 1.1.1.7, this extension in the affirmative eliminates dashing maneuvers when pressing the SPACE #keyboard key, or "Action" button. Know that "dashing" includes many kinds of actions not limited to climbing, crouching, and sneaking.

It is still possible to dash manually using the DASH extended keyboard key code. Values are limited to binary statements.[#]

do_not_jump

Introduced around 1.1.1.7, this extension in the affirmative eliminates the jumping maneuver that can occur automatically on release of the DASH extended #keyboard key code (including the SPACE keyboard key, or "Action" button, when #do_not_dash is not switched on) under different input scenarios.

It is still possible to jump manually using the JUMP extended keyboard key code. Values are limited to binary statements.[#]

Tip: manual jumping puts the player at a slight disadvantage, and may prove impossible to execute effectively without a game controller.

do_not_rush

Introduced around 1.1.1.7, this extension in the affirmative eliminates the dodging and or rushing maneuver normally experienced when tapping the DASH extended #keyboard key code and SPACE keyboard key, or "Action" button, when #do_not_dash is not switched on.

This extension is not recommended. It exists in order to remove the ducking behavior facilitated by #player_character_duck, which should itself be set to 0 to fully remove ducking. Ducking corresponds to the acceleration from walking to dashing speed, so without rushing the duck may be short lived, and then appear unnatural or unpleasant.

There are no plans to add a manual rushing feature (via a RUSH extended #keyboard key code) at this time. Values are limited to binary statements.[#]

player_character_bob...

Introduced around 1.1.1.7, this extension establishes the distances covered by bobbing (and derivative) walking effects when moving at peek speeds. The default value is 0.075, or about 3 inches, when the part after player_character_bob is omitted. Refer to #bob_distance_multiplier and #sway_distance_multiplier. Values are limited to positive real numbers.[#]

player_character_dip...

Introduced around 1.1.1.7, this extension establishes how far the player character may dip when landing flat footed. Maximum dip is achieved after a relatively short fall, or even a jump. This effect is not intended to encompass falls from great heights. Refer to #do_buckle.

The part after player_character_ can be omitted or 2. The defaults are 0.3 and 0.532359, or 30 degrees. player_character_dip2 contributes a nodding effect. Refer to #player_character_nod.... Values are limited to positive real numbers.[#]

player_character_duck...

Introduced around 1.1.1.7, this extension establishes how far the player character ducks down when dashing and ducking all of the way down to the ground while remaining flat footed. When dashing the lowest point is reached after #tap_or_hold_ms_timeout.

The part after player_character_ can be omitted or 2 or 3. The defaults are 0.15, 0.3, and 0.75. 2 is achieved by combining the left and right rear view inputs while dashing with an empty gauge. 2 is also achieved when dashing with a shield raised. The mannerisms should appear very similar. 3 is reached by doing a standing jump from the lowest point, also known as ducking. 3 is also achieved by following a dashing "corkscrew" maneuver all the way down, another way of ducking. Values are limited to positive real numbers.[#]

player_character_fence...

Formerly player_character_ascent in 1.1.1.5 and 6.

Introduced around 1.1.1.7, this extension establishes the height of obstacles that the player character is able to pass over. The default is 0.5 meters, or about 20 inches, when the part after player_character_fence is omitted. This is the height of platforms that Sword of Moonlight will natively step up onto. It is recommended that this figure be lowered to around 0.3, or about a foot, because 0.5 meters is much higher than a tall person is easily able to step up onto, much less the default 1.6 meter tall player character supplied by Sword of Moonlight.

1.1.1.7 adds four more levels, player_character_fence2, 3, 4, and 5. At level 2 the player must lean into the obstacle and press the SPACE #keyboard key, or "Action" button, to climb up onto and over it. The way the player character climbs is related to #player_character_dip. At level 3 the player character should be able to hang down by their hands from the platform. At level 4 the player character is able to reach the platform by performing a standing jump and grabbing with their hands. Finally level 5 is a standing jump lifting off from #player_character_duck3. Otherwise it works identically to 4.

Note that it may not be possible to grip the platform, or the player may lack the strength, but the player is still able to reach interactive elements placed at levels 3 and 4. As for 4, #do_g (gravity) must be switched on or the player will not be able to jump. Likewise the power of the jump is a function of 4 minus 3 and gravity.

The defaults for 2 through 5 are all 0, so you must set these up in order for them to work. It is safe to leave some at 0 or to have subsequent levels equal to one another. Values are limited to positive real numbers.[#]

Note: that Sword of Moonlight itself uses 0.51. Just in case the 0.01 part is important, 0.01 is automatically added to each fence.

player_character_height...

This extension did not make it into 1.1.1.5. It will be implemented as soon as it is convenient and or necessary to do so. Its purpose is to establish the physical height of the player character for purposes of passing underneath obstacles. When the part after player_character_height is omitted the default height is 1.6, or about 5 foot 3 inches, corresponding to the physical height of the character when standing upright. The default unit is meters.

Note: It is recommended that #pov_baseline_adjustment be used to achieve an apparently taller or shorter player character, either to be in keeping with the narrative of the game or to customize height in order to enhance immersion, without inadvertently making areas of the game inaccessible or the game itself unwinnable.

player_character_nod...

Introduced around 1.1.1.7, this extension establishes symmetric angular limits when the player character looks up and down. The default value is 0.785398 radians, or plus or minus 45 degrees, when the part after player_character_nod is omitted. player_character_nod2 sets an outer limit reached by holding down the controls that defaults to 80 degrees. Values larger than 1.570796 are converted to radians from degrees. Values are limited to positive real numbers.[#]

player_character_radius...

Introduced around 1.1.1.5, this extension establishes the player character's shoulder width as measured from the center. Conceptually the classical character is cylindrically shaped, circular around the width and depth. The default radius is 0.25. The default unit is meters.

Since 1.1.1.7 you can set player_character_radius2 to change the "hitbox" radius, however it is unclear whether or not this is best practice, and even if set to near 0 many of Sword of Moonlight's stock monsters have attack radii that will land hits that look like near misses. Their PRF files may require attention. Values are limited to positive real numbers.[#]

Note: as of 1.1.1.5 it is absolutely necessary to set this value to something larger than the default in order to accommodate the new analog framework. If not done the player clips into obstacles if held up against one. A larger radius can make preexisting games unwinnable. Ideally the project and or game should be fixed. Using an older version also works, but 1.1.1.5 introduces numerous important fixes. #do_dpad effectively disables analog, but did not make it into 1.1.1.5. A new #Analog section is on the way only for now the analog parameters are inaccessible. Until a clipping framework (#do_clip) is setup a final solution could well prove elusive.

player_character_weight

Introduced around 1.1.1.7, this extension establishes the player character's weight to be added to equipment and or inventory weight where applicable. The default weight is 50, or about 110 pounds. The default unit is kilograms. Values are limited to positive real numbers.[#]

subtitles_ms_interim

Introduced around 1.1.1.7, this extension establishes the interval between (in fact each subtitle waits for the interval) subtitles. The time is in addition to #tap_or_hold_ms_timeout, and double that if a subtitle is the result of pressing the SPACE #keyboard key, or "Action" button, when #player_character_duck is non-zero and #do_not_dash is not switched on. The default is 300 milliseconds. Values are limited to whole numbers.[#]

Tip: negative times are allowed to subtract from the overall interval.

subtitles_ms_timeout

Introduced around 1.1.1.7, this extension establishes the duration of subtitles. The default is 1300 milliseconds. Note that the default is slightly more than what Sword of Moonlight uses, or 1000. Values are limited to positive whole numbers.[#]

tap_or_hold_ms_timeout

Introduced around 1.1.1.7, this extension tweaks keyboard and button gesture recognition. A press is determined to be a tap if release occurs before tap_or_hold_ms_timeout milliseconds. A press is determined to be a hold if not released in time.

Taps and holds may often result in different outcomes. The default timeout is 750 milliseconds. This is the timeout used by Sword of Moonlight's dashing game mechanic. If the timeout is shortened the transition from walking to dashing is shortened. Values are limited to positive whole numbers.[#]

Note: that this is an accessibility feature. 500 may make input appear more responsive, but some players may have a difficult time releasing the button with a half second. Sword of Moonlight's 750 figure likely constitutes a compromise.