adjust extensions

From Wiki

Jump to: navigation, search


Restructuring of [Adjust]

The old version of this section is available here[1]. Many extensions changed with SomEx ver. 1.2.0.8.

  • The map setting extensions were combined into the fov_ group and simplified as much as possible.
  • The pc_..._speed_multiplier group was removed. See the #Number section for how to directly set the _WALK, _DASH, and _TURN constants.
  • The sway and bob_..._multiplier extensions were removed along with do_sway. The sway can now be directly set by #player_character_bob2 however bob_frequency_multiplier is still awaiting its replacement.
  • The menu and onscreen display element ..._opacity_multiplier extensions were removed. The ..._opacity_adjustment extensions need to reproduce the math taking into account the incoming opacity values.

abyss_depth

Introduced around 1.2.0.8, this extension establishes the depth below a map tile that cannot be passed upon penalty of death, ie. game over. By default it is -10. This replaces abyss_event_adjustment. Values are limited to real numbers.[#]

blackened_tint...

Introduced around 1.1.1.5, this extension replaces the color of the black tint that is a backdrop for text and menus. The default value is 80000000, or half black. Note that there is a second black tint that is applied over the first black tint. Refer to #blackened_tint2. Values are limited to hexadecimal color codes.[#]

blackened_tint2 Introduced around 1.1.1.5, this extension replaces the color of the second layer of black tint. Refer to #blackened_tint. The default value is 64000000, or quarter black. Note that this is the tint that is used by #do_pause when the game is paused. Values are limited to hexadecimal color codes.[#]

blue_flash_tint

Introduced around 1.1.1.5, this extension replaces the colour of the blue flash that is triggered by in game events. The default value is ff0000ff, or pure blue. Note that the flash begins fully opaque and then tails off. The blending mode is not based on the alpha component, but the colour is divided by the alpha component as a courtesy, and if the colour is fully transparent, the flash will not appear. Values are limited to hexadecimal colour codes.[#]

fov_fogline_saturation

Introduced around 1.2.0.8, this extension overrides the color of the level's fog. As of 1.2.0.8 there isn't a way to retrieve the current level's fog parameters, so if this extension is used the fog's color setting in SOM_MAP should be disregarded. Values are limited to base 256 identifiers.[#]

fov_fogline_adjustment...

Introduced around 1.2.0.8, this extension specifies the beginning and effective end of the fog. When the part after adjustment is omitted, the starting point of the fog is specified in terms of meters. Note that in SOM_MAP this is represented by a fraction of the way to the back of the fog; not so here. The unadjusted value is provided.

fov_fogline_adjustment2 specifies the end point of the fog. If the level does not have a sky/backdrop then the in game scene shall comes to an end at this point. The unadjusted value is provided. This value is equivalent to SOM_MAP's per map visibility setting. Refer to #fov_skyline_adjustment2. Values are limited to positive real numbers.[#]

fov_frustum_multiplier

Since 1.2.0.8 the default is 1.2. The default will revert back to 1 as soon as this makeshift extension is no longer of general use.

Introduced around 1.1.1.5, this extension multiplies the horizontal angle of what is visible to Sword of Moonlight in game. It can be game dependent, but you may need to increase this (from 1) to create gutters along the sides of the field of vision if you notice map tiles disappearing (along the sides) especially when moving quickly with analog controls. Generally the higher the turn speed the more you might need to lean on this. Note that this is not a fix for problems of this nature in widescreen mode. See #do_fix_fov_in_memory (or #do_fix_any_trivial) in that case. Values are limited to real numbers.[#]

This can also be a means to work with map tiles that have "eaves" far outside of 2x2 meters (the natural size of a single tile) however generally speaking this is not recommended in terms of best practices.

fov_sky_and_fog_minima...

Introduced around 1.2.0.8, this extension is expressed as a fraction of the end of both the fog and the sky/backdrop so that it should cover the same amount of pixels at any given distance. By default it is 0.025 and cannot be made less that this. This is to ensure that there is always a soft transition where the end of the fog and sky blend into the scenery. The sky transition is dependent upon #do_alphafog, which is also enabled by #do_fog. Values are limited to real numbers between 0.025 and 1.[#]

fov_sky_and_fog_minima2
Introduced around 1.2.0.10, this extension is available to set the fog minimum independent of the sky/backdrop minimum. If not explicitly set, it is identical to #fov_sky_and_fog_minima. Values are limited to real numbers between 0.025 and 1.[#]

fov_sky_and_fog_powers...

Introduced around 1.2.0.10, this extension exponentiates the sky/backdrop and fog. By default it is 1, or linear. Values around 0.5, or the square root, produce a sharp cutoff along the fog horizon, and so are not recommended. Values above 1 create an ever thicker fog. At present this extension must be set to a constant value, and so values between 0.75 and 1.5 are recommended. Furthermore it only applies to per pixel fog using the recommended custom Sword of Moonlight "shaders". The fog exponent can be set independently of the sky/backdrop's with fov_sky_and_fog_powers2. If it is not explicitly set it is identical to #fov_sky_and_fog_power. Values are limited to positive real numbers.[#]

fov_skyline_adjustment...

Introduced around 1.2.0.8, this extension specifies the beginning and effective end of the sky. When the part after adjustment is omitted, the starting point of the sky is specified in terms of meters. The unadjusted value is provided. Note that by default the start of the sky is equal to the end of the sky.

fov_skyline_adjustment2 specifies the end point of the sky. If the level does not have a sky/backdrop both fov_skyline_adjustment and fov_skyline_adjustment2 should be disregarded. Otherwise #fov_fogline_adjustment2 cannot be greater than fov_skyline_adjustment2 and so will be scaled back if necessary. Refer to #fov_sky_and_fog_minima. Values are limited to positive real numbers.[#]

green_flash_tint

Introduced around 1.1.1.5, this extension replaces the colour of the green flash that is triggered by in game events. The default value is ff00ff00, or pure green. Note that the flash begins fully opaque and then tails off. The blending mode is not based on the alpha component, but the colour is divided by the alpha component as a courtesy, and if the colour is fully transparent, the flash will not appear. Values are limited to hexadecimal colour codes.[#]

highlight_opacity_adjustment

Introduced around 1.2.0.8, this extension adjusts the opacity of the flashing menu panelling. The unadjusted opacity is supplied. Values are limited to real numbers between 0.06 and 1.[#]

hud_gauge_depleted_half_tint

Introduced around 1.1.1.5, this extension replaces the colour of the gauges when emptied. The default is unspecified, as of 1.1.1.5 it is 55808080. To emulate Sword of Moonlight you can use a value of 00 to make only the filled portions of the gauges visible. Values are limited to hexadecimal colour codes.[#]

The depleted gauges were needed by #do_st to emulate Shadow Tower. It is simpler to just leave them as a permanent fixture. Plus it just looks nice.

hud_gauge_opacity_adjustment

Introduced around 1.2.0.8, this extension adjusts the opacity of the HUD (heads up display) gauges. Note that the emptied halves of the gauges are unaffected. Refer to #hud_gauge_depleted_half_tint. The unadjusted opacity is supplied. Values are limited to real numbers between 0 and 1.[#]

lettering_contrast

Introduced around 1.1.1.5, this extension replaces the colour of the in-game text's "shadows". The default colour is 464646. Partial transparency is not supported as of 1.1.1.5. Refer to #lettering_tint. Values are limited to hexadecimal colour codes.[#]

What this actually does is recolour text that is the colour of Sword of Moonlight's shadows. Refer to #system_fonts_contrast and #status_fonts_contrast.

Tip: this is the only way to change the default colour for dialogue text and subtitles. Just avoid making the system and status fonts the same colour and you can recolour all three independently.

lettering_tint

Introduced around 1.1.1.5, this extension replaces the colour of the in-game text. The default colour is dcdcdc. Partial transparency is not supported as of 1.1.1.5. Refer to #lettering_contrast. Values are limited to hexadecimal colour codes.[#]

What this actually does is recolour text that is the colour of Sword of Moonlight's text. Refer to #system_fonts_tint and #status_fonts_tint.

Tip: this is the only way to change the default shadow colour for dialogue text and subtitles. Just avoid making the system and status fonts the same colour and you can recolour all three independently.

npc_shadows_modulation

Introduced around 1.2.0.8, this extension scales the opacity of the NPC-style shadows. By default it is -1 (note: not 1; positive values are reserved for per red, green, blue factors) and if set to 0 the shadows will be invisible — however DO NOT DO THIS as a way to hide the shadows. Use #npc_shadows_multiplier instead so that you might benefit your frame rate. Values are limited to negative real numbers.[#]

npc_shadows_multiplier

Introduced around 1.2.0.8, this extension scales the NPC-style shadows. By default it is 1. To disable these shadows it's correct to set this extension to 0. Refer to #player_character_shadow. Values are limited to positive real numbers.[#]

npc_shadows_saturation

Introduced around 1.2.0.8, this extension overrides the color of the NPC-style shadows. By default it is id(0,0,0) or 0 or black. Values are limited to base 256 identifiers.[#]

panelling_opacity_adjustment

Introduced around 1.2.0.8, this extension adjusts the opacity of the menu panelling. The unadjusted opacity is supplied. Historically this value is always 0.5. Values are limited to real numbers between 0 and 1.[#]

red_flash_tint

Introduced around 1.1.1.5, this extension replaces the colour of the red flash that is triggered by in game events. The default value is ffff0000, or pure red. Note that the flash begins fully opaque and then tails off. The blending mode is not based on the alpha component but the colour is divided by the alpha component as a courtesy, and if the colour is fully transparent, the flash will not appear. Values are limited to hexadecimal colour codes.[#]

Sword of Moonlight displays this flash if the player character receives damage in order to elicit a sensation of pain from the player. If interested in modulating this effect, refer first to #do_red.

start_blackout_factor

Introduced around 1.1.1.5, this extension changes the way the title screen options are masked. As the value approaches 1 the transparency effect is replaced by a darkening effect. This is especially useful if the title screen is not a flat colour behind the text. Note that as of 1.1.1.5 the title screen elements, pushstart.bmp etc., have black pixels knocked out like every other texture. Values are limited to real numbers.[#]

If you are considering your options. It is recommended that you first see if #do_start is implemented or not (it is not as of 1.1.1.5) and use that if so. It simply uses text in place of images. Text is much less work for translators to deal with. It is not clear how or if start_blackout_factor will interplay with do_start.

start_tint

Introduced around 1.1.2.?, this extension replaces the colour of the start menu text or image. Refer to #do_start. Values are limited to hexadecimal colour codes.[#]