output extensions

From Wiki

Sword of Moonlight Extension Library

Revision as of 07:47, 22 January 2013 by Holy (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


...function_overlay_contrast[edit]

Introduced around 1.0.0.1, this extension sets the "drop shadow" colour of the function overlays. The default is 00, or fully transparent, or no contrast. The part before function_overlay_contrast is optional. If present it must be one of f1_ through f12_ in order to set the contrast of the overlays individually. If not present contrast is set for all overlays. Values are limited to hexadecimal colour codes.[#]

...function_overlay_eclipse[edit]

Introduced around 1.0.0.1, this extension allows an overlay to suppress, or temporarily turn off other overlays, while it is turned on. This is handy when there is not enough room to display all of the overlays at once for example. The part before function_overlay_mask is optional. If present it must be one of f1_ through f11_ in order to setup the overlay's eclipse mask individually. If not present masks are set for all overlays.

Note that an overlay will not eclipse itself or the F12 overlay. You can use that to your advantage when setting all overlays at once, otherwise you probably want to stick to setting the eclipse masks individually. Refer to #...function_overlay_mask for information and tips with respect to setting up masks. Values are limited to hexadecimal bit masks.[#]

...function_overlay_mask[edit]

Introduced around 1.0.0.1, this extension specifies which overlays are initially turned on. The part before function_overlay_mask is optional. If present it must be one of f1_ through f12_ in order to turn overlays off and on individually by specifying 1 for on or 0 for off. If not present the lowest order bit is F12 the next bit is F11 and so on, and all overlays are turned off/on at once. Values are limited to hexadecimal bit masks.[#]

You do not have to understand binary and hexadecimal number systems to set this up. You can just turn on/off everything that you want, and set set the extension to the hexadecimal number displayed by the F12 overlay in the top-right corner. Refer to #...function_overlay_tint to make the overlays accessible. If you want the overlays to be initially hidden, you can either make the right most hexadecimal digit even by subtracting 1. Or just do f12_function_overlay_mask=0.

...function_overlay_tint[edit]

Introduced around 1.0.0.1, this extension sets the colour and transparency of the function overlays. The default is 00, or fully transparent, or invisible. If invisible the overlay is considered to be inaccessible. The part before function_overlay_tint is optional. If present it must be one of f1_ through f12_ in order to set the colour of the overlays individually. If not present colour is set for all overlays. Values are limited to hexadecimal colour codes.[#]

Note that if a function overlay is accessible it can be turned off and on with the F1 through F12 keys on a keyboard. The original function of the key must then be accessed by combining an Alt key with the function key.

...log_..._bar[edit]

Introduced around 1.0.0.1, this extension has a variable syntax and can be specified as many times as necessary. The parts are A_log_B_C_bar where A_ B_ and C_ are optional. The simplest form, log_bar sets the bar which non-debug log events must pass below (less than or equal to) in order to be included in the log or console output.

There is more than one log and more than one bar per log, in fact there are probably hundreds. You can set a particular log's bars via A_. Eg. SOM_MAIN's log is main.log, so main_log_bar will set the bars for only SOM_MAIN. With B_ you can set the bars for events originating in a single "translation unit" or any units which match B_ up to the end of B_; all legal non-alphanumeric characters are treated as underscores. Finally C_ can set particular kinds of bars. Eg. log_debug_bar sets the debug bars only, which is useful because debug bars are unaffected by default. The default setting for bars is 0, except for debug bars which default to -1. Values are limited to whole numbers between +/-65534.[#]

Note: The A_log_B_C_bar syntax is actually shorthand. It has some deficiencies. For example, log_som_debug_bar is ambiguous, because it can mean the debug bars for translation units beginning with "som" or it can mean the "som.debug" translation unit. The match is greedy, so it will mean the latter, and the former will be impossible to specify. This is a strong argument for removal of som.debug.cpp. A long form syntax has been devised but is not yet implemented as of SomEx ver. 1.0.0.1.

A "translation unit" is a source code object, like SomEx.cpp. SOM_EX should include a comprehensive detailing of logging and console output.

do_missing_file_dialog_ok[edit]

Introduced around 1.0.0.1, this extension in the affirmative disables the pop-up dialog which normally reports when files are discovered to be missing. For games created without the Sword of Moonlight Extension Library this is very handy, as there is likely to be a great many missing files. Regardless it is best practice to satisfy all of these pop-ups and not switch this on so that players are able to report missing files.

Consider "commenting out" the extension to let players know that nuisance pop-ups are able to be hidden. You might even mention it in your game literature. Values are limited to binary statements.[#]