list of extensions
From Wiki
This article or section is in the middle of an expansion or major restructuring. You are welcome to assist in its construction by editing it as well. If this article has not been edited in several days, please remove this template. This page was last edited by Holy (talk| contribs) ago. (Purge) |
This page is a list of Sword of Moonlight Extension Library extensions by section. Each extension is a named key and value pair belonging in a section following INI format rules.
Extensions
There are some basic style decisions in terms of the extension syntax. The most dominant is extensions which begin with do_ are yes/no (either on or off) extensions. Extensions beginning with do_not_ indicate that the extension normally goes into effect unless disabled. Most such extensions are dependent upon other extensions which must be first enabled. The #Option section includes only do_ extensions which act as a master switch for many extensions (the extensions in the #Detail section are all explicitly tied to the Option section).
Other distinctions exist but should just be picked up upon through personal experience. This page is not a guideline for filling out a so-called Ex.ini file. Nor is it official documentation. Many extensions may be officially undocumented early in their life or perhaps forever, probably with good reason. These extensions can be documented here or elsewhere, but their officially undocumented status should be conveyed to the reader.
Sections
Anything not recognized as an extension is ignored. Normally this is a non-fatal error, however there is an "unnamed" section which exists implicitly before the first section. The only extension recognized inside is C. It may be set to an ISO-639 language code and ISO-3166 country code pair in order to change the locale of the file itself. The default locale is C, named after the C programming language. It is language neutral more or less.
Note: The file itself is Unicode (UTF16) or ANSI. Changing the locale is something a translator might do if they wanted their audience to be 100% comfortable editing the file in a particular language.
The extension library C locale reserves the right to 6 letter ASCII section names with or without numbers immediately appended. Modules may use any other combination of characters.
Contents
- 1 Extensions
- 2 Sections
- 2.1 Adjust
- 2.2 Author
- 2.3 Boxart
- 2.3.1 game_artist
- 2.3.2 game_auteur
- 2.3.3 game_based_upon
- 2.3.4 game_caretaker
- 2.3.5 game_company
- 2.3.6 game_concept
- 2.3.7 game_dedication
- 2.3.8 game_designer
- 2.3.9 game_director
- 2.3.10 game_disclaimer
- 2.3.11 game_distributor
- 2.3.12 game_edition
- 2.3.13 game_features
- 2.3.14 game_first_edition_date
- 2.3.15 game_first_edition_year
- 2.3.16 game_format
- 2.3.17 game_label
- 2.3.18 game_legal
- 2.3.19 game_license
- 2.3.20 game_mascot
- 2.3.21 game_music
- 2.3.22 game_musing
- 2.3.23 game_original
- 2.3.24 game_partners
- 2.3.25 game_planner
- 2.3.26 game_presented_by
- 2.3.27 game_presenters
- 2.3.28 game_producer
- 2.3.29 game_programmer
- 2.3.30 game_project
- 2.3.31 game_publisher
- 2.3.32 game_publishing_date
- 2.3.33 game_rating
- 2.3.34 game_region
- 2.3.35 game_series
- 2.3.36 game_soundsuite
- 2.3.37 game_soundtrack
- 2.3.38 game_studio
- 2.3.39 game_sub_series
- 2.3.40 game_subteam
- 2.3.41 game_subtitle
- 2.3.42 game_suggested_retail_price
- 2.3.43 game_super_title
- 2.3.44 game_thanks
- 2.3.45 game_title_with_sequel
- 2.3.46 game_version
- 2.3.47 game_writer
- 2.3.48 game_year_published
- 2.4 Bugfix
- 2.4.1 do_fix_any_experimental
- 2.4.2 do_fix_any_nontrivial
- 2.4.3 do_fix_any_trivial
- 2.4.4 do_fix_asynchronous_sound
- 2.4.5 do_fix_clipping_item_display
- 2.4.6 do_fix_controller_configuration
- 2.4.7 do_fix_elapsed_time
- 2.4.8 do_fix_fov_in_memory
- 2.4.9 do_fix_graphics_device_interfacing
- 2.4.10 do_fix_lighting_dropout
- 2.4.11 do_fix_out_of_range_config_values
- 2.4.12 do_fix_oversized_compass_needle
- 2.4.13 do_fix_slowdown_on_save_data_select
- 2.4.14 do_fix_spelling_of_english_words
- 2.5 Detail
- 2.5.1 *alphafog_skyflood_constant
- 2.5.2 *alphafog_skyfloor_constant
- 2.5.3 *ambient_contribution
- 2.5.4 *cursor_presentation_timeout
- 2.5.5 *lights_ambient_multiplier
- 2.5.6 *lights_calibration_factor
- 2.5.7 *lights_constant_attenuation
- 2.5.8 *lights_diffuse_multiplier
- 2.5.9 *lights_distance_multiplier
- 2.5.10 *lights_exponent_multiplier
- 2.5.11 *lights_linear_attenuation
- 2.5.12 *lights_maximum_lamp_lights
- 2.5.13 *lights_quadratic_attenuation
- 2.5.14 *lights_vs_1_x_unroll_x
- 2.5.15 *mipmaps_maximum_anisotropy
- 2.5.16 *mouse_4,5,6,7,8th_button_action
- 2.5.17 *mouse_deadzone_multiplier
- 2.5.18 *mouse_horizontal_multiplier
- 2.5.19 *mouse_left_button_action
- 2.5.20 *mouse_menu_button_action
- 2.5.21 *mouse_middle_button_action
- 2.5.22 *mouse_right_button_action
- 2.5.23 *mouse_saturate_multiplier
- 2.5.24 *mouse_tilt_left_action
- 2.5.25 *mouse_tilt_right_action
- 2.5.26 *mouse_vertical_multiplier
- 2.5.27 *numlock_initial_state
- 2.5.28 *numlock_key
- 2.5.29 *pause_button_default
- 2.5.30 *wasd_and_mouse_mode
- 2.6 Editor
- 2.7 Folder
- 2.8 Joypad
- 2.9 Keygen
- 2.10 Launch
- 2.11 Locale
- 2.12 Option
- 2.13 Output
- 2.14 Script
- 2.15 System
- 2.16 Window
The following is a list of terms used throughout the list proper.
- An asterisk (*) indicates an extension is undocumented (within this page)
- A "binary statement" means a representation of 1 or 0. It may be the Arabic numerals 1 or 0, yes or no, on or off, and some additional semantical operations not elaborated upon here.
- A "real number" is Arabic digits with an optional decimal point. So named because they are the foil to "imaginary" numbers, even though there is nothing particularly real about a partial number. C style scientific notation will also probably work, but is not recommended.
- A "whole number" is Arabic digits no more no less. It can't represent a half of something for example.
- A positive real or whole number excludes negative numbers (elusive evil twin anti-numbers).
- A "string of text" means anything in your wildest imagination you can type into a text editor.
Adjust
bob_distance_multiplier
Introduced around 1.0.0.1, this extension multiplies the walking effect experienced by the player. Values are limited to real numbers.
draw_distance_multiplier
Introduced around 1.0.0.1, this extension multiplies the draw distance uniformly across maps. Values are limited to positive real numbers.
fog_pullback_factor
Introduced around 1.0.0.1, this extension pulls the fog to the player as the value approaches 1. It is then averaged with #fog_pushback_factor to determine where fog will begin. Values are limited to real numbers.
fog_pushback_factor
Introduced around 1.0.0.1, this extension pushes the fog away from the player arriving at the draw distance when the value reaches 1. It is then averaged with #fog_pullback_factor to determine where fog will begin. Values are limited to positive real numbers.
fog_saturate_multiplier
Introduced around 1.0.0.1, this extension multiplies the distance at which fog becomes fully saturated. Values are limited to positive real numbers.
pov_baseline_in_meters
Introduced around 1.0.0.1, this extension adds to the player's eye level -- as of 1.0.0.1 arms are not yet adjusted accordingly. Values are limited to real numbers.
pov_baseline_in_meters was originally setup for Trismegistus. Trismegistus does away with combat elements, and therefore the arm thing funnily enough was not a problem. Nevertheless the arms are an oversight.
sky_ambience_factor
Introduced around 1.0.0.1, this extension colorizes the sky to match the global ambient light at 1. Values are limited to real numbers.
sky_emissive_factor
This extension is planned but not yet implemented. It will brighten the sky above 1 and darkens it below 1. It's meant to balance out the colours produced by #sky_ambience_factor.
sky_distance_multiplier
Introduced around 1.0.0.1, this extension works like #draw_distance_multiplier, however it only applies to maps with skies. It supersedes draw_distance_multiplier. Values are limited to positive real numbers.
sky_fadeline_multiplier
Introduced around 1.0.0.1, this extension determines a point between the fog saturation distance at 0 and the sky distance at 1 and smoothly blends things beyond that point into the sky. As if the sky is a second layer of fog beyond the first. Values are limited to real numbers between 0 and 1.
Author
Extensions in this section are intended to be filled out by the author. #international_production_title and #international_translation_title are important to fill out. Every full game Ex.ini file should include these. #software_company_name should also be considered.
Sometimes this information may be printed out in places. In a teletype-style display or an "About" window for instance. It's also good to provide the information if possible so people can find it when reading or modifying the Ex.ini file that would come with your game. It can also easily be automatically entered into a database of games or kept on file.
When translating a game into another language it's important to faithfully include all information in this section, and to not translate any of it.
email_address_of_contact
Introduced around 1.0.0.1, this extension indicates the email address of the company or author who is prepared to receive email from any and all parties who have anything to say or ask about the game. Don't fill it out unless you are up to this task. Consider using an account which can safely abandon if the interest in your game becomes overwhelming or undesirable. Values are limited to an email address.
hours_in_which_to_phone
Introduced around 1.0.0.1, this extension indicates the hours you're available to be phoned if you provide a phone number. You can put anything here, indicate your timezone, or anything else. An additional timezone neutral extension would also be helpful however no such thing exists yet. Values are limited to any string of text.
international_production_title
Introduced around 1.0.0.1, this extension indicates the title you want for your game internationally. It should be the title you originally conceived for the game in your language of choice. Though you can use any title. An English title for instance. If you think recognizability is more important. Players may want to translate your game including its title to their own language. Except this title remains the same. Values are limited to any string of text.
international_translation_title
Introduced around 1.0.0.1, this extension is a simplified version of #international_translation_title. It must be entirely composed of ASCII characters and cannot include any characters which might be illegal in file names in some computing environments. In general, be spare with special characters. ASCII includes basic/modern Latin characters only. You can translate your title into a Latin script language of your choice, or reproduce your title phonetically. Values are limited to an ASCII only POSIX and NTFS legal file name.
online_website_to_visit
Introduced around 1.0.0.1, this extension indicates the website for information and other things regarding your game. Values are limited to World Wide Web addresses.
phone_number_of_contact
Introduced around 1.0.0.1, this extension indicates a phone number where you are prepared to receive phone calls in regards to your game. Indicate the region of the world where the number is located. Values are limited to any string of text.
software_company_name
Introduced around 1.0.0.1, this extension indicates the name of the organization responsible for the game. It can be the name of or a pseudonym of the author or the title of a group etc. It will be used for sorting things like the Microsoft Windows Start menu links to your games and the location of keys your game will require in the Windows registry. Values are limited to an NTFS legal file name.
street_address_of_contact
Introduced around 1.0.0.1, this extension indicates where you want to receive mail and or visitors regarding your game. Practice caution in providing this kind of information. Values are limited to any string of text.
the_authority_to_contact
Introduced around 1.0.0.1, this extension indicates who someone should address when phoning or mailing about your game. A secretary, or yourself for instance. Values are limited to any string of text.
Boxart
Extensions in this section convey information about your game. It's not intended to be an exhaustive list of credits. You should limit the information to principal participants, celebrities you'd like to give billing too in order to make your game stand out, or just anyone of relative importance to the production of the game. For a small team there's probably room for everyone. For a mostly "one man" team, consider using #game_auteur in order to credit "the man". Information in this section is used in much the same way as that of the #Author section, however it is never functions in a non-superficial way, and translators are encouraged to translate it where applicable.
Note: you can provide any information you like via a single extension. For instance if there are more than one lead production artist on more or less equal footing, feel free to mention both of them in whatever way makes sense to you.
game_artist
Introduced around 1.0.0.1, this extension indicates the lead production artist. Values are limited to any string of text.
game_auteur
Introduced around 1.0.0.1, this extension indicates the visionary or any one person without which the game just wouldn't exist. Any role not specified will be assumed to fall upon this individuals shoulders. Values are limited to any string of text.
game_based_upon
Introduced around 1.0.0.1, this extension indicates some existing work or art if any which your game is meant to literally draw upon in some way, vividly or darkly. Values are limited to any string of text.
game_caretaker
Introduced around 1.0.0.1, this extension indicates the any domestic worker responsible for keeping the team behind the game on life support throughout its production. Values are limited to any string of text.
game_company
Introduced around 1.0.0.1, this extension indicates the title of the company behind the game. Values are limited to any string of text.
game_concept
Introduced around 1.0.0.1, this extension indicates the lead concept artist. Values are limited to any string of text.
game_dedication
Introduced around 1.0.0.1, this extension indicates who or what you'd like to dedicate the game to. Maybe your goldfish died during production for example. Values are limited to any string of text.
game_designer
Introduced around 1.0.0.1, this extension indicates the lead game design person. Values are limited to any string of text.
game_director
Introduced around 1.0.0.1, this extension indicates the lead game directing person. Values are limited to any string of text.
game_disclaimer
Introduced around 1.0.0.1, this extension indicates any kind of legal liability or whatever you'd like to assuage. Values are limited to any string of text.
game_distributor
Introduced around 1.0.0.1, this extension indicates the distributor of this game. Values are limited to any string of text.
game_edition
Introduced around 1.0.0.1, this extension indicates the edition of this game. Values are limited to any string of text.
game_features
Introduced around 1.0.0.1, this extension indicates any features you'd like to promote. Like joystick support etc. Values are limited to any string of text.
game_first_edition_date
Introduced around 1.0.0.1, this extension indicates the long date of the first edition of this game. Values are limited to any string of text.
game_first_edition_year
Introduced around 1.0.0.1, this extension indicates the year of the first edition of this game. It should be a number in the common era. Values are limited to any string of text; a whole number is best.
game_format
Introduced around 1.0.0.1, this extension indicates the medium or environment, eg. operating system, in which this game is able to function. Values are limited to any string of text.
game_label
Introduced around 1.0.0.1, this extension indicates the promotional/managerial label to which the game or peoples responsible for the game are signed. Values are limited to any string of text.
game_legal
Introduced around 1.0.0.1, this extension indicates any long text legal mumbo jumbo deemed necessary for inclusion. Values are limited to any string of text.
game_license
Introduced around 1.0.0.1, this extension indicates any content or technology licenses the game is in adherence with. Values are limited to any string of text.
game_mascot
Introduced around 1.0.0.1, this extension indicates a pet, personality, or fictional character you'd like to associate the game with. Values are limited to any string of text.
game_music
Introduced around 1.0.0.1, this extension indicates the singular person responsible for the games musical arrangements. Values are limited to any string of text.
game_musing
Introduced around 1.0.0.1, this extension indicates anything at all you'd like to include in addition to everything else. Values are limited to any string of text.
game_original
Introduced around 1.0.0.1, this extension indicates the game which this game is a remake or remix of. Values are limited to any string of text.
game_partners
Introduced around 1.0.0.1, this extension indicates those who bore chief financial responsibility during the development of the game proper. Values are limited to any string of text.
game_planner
Introduced around 1.0.0.1, this extension indicates the lead game planner. Values are limited to any string of text.
game_presented_by
Introduced around 1.0.0.1, this extension indicates the association presenting the game. Values are limited to any string of text.
game_presenters
Introduced around 1.0.0.1, this extension indicates individuals presenting the game. Values are limited to any string of text.
game_producer
Introduced around 1.0.0.1, this extension indicates the game producer, company or individual. Values are limited to any string of text.
game_programmer
Introduced around 1.0.0.1, this extension indicates the lead game programmer. Values are limited to any string of text.
game_project
Introduced around 1.0.0.1, this extension indicates the project codename or whatever before an official title was established or announced. It may be related to the edition of the game as well if the project is a remake or remix effort. Values are limited to any string of text.
game_publisher
Introduced around 1.0.0.1, this extension indicates the lead game programmer. Values are limited to any string of text.
game_publishing_date
Introduced around 1.0.0.1, this extension indicates the long date of this edition. Values are limited to any string of text.
game_rating
Introduced around 1.0.0.1, this extension indicates any kind of content ratings you'd like to apply to the game in whatever rating system seems appropriate. Values are limited to any string of text.
game_region
Introduced around 1.0.0.1, this extension indicates the global region this translation of this game has in mind. Use whatever system or scope makes sense with respect to other translations of the game in circulation or underway. Values are limited to any string of text.
game_series
Introduced around 1.0.0.1, this extension indicates the series this game is part of. Eg. KING'S FIELD II is part of the KING'S FIELD series. Values are limited to any string of text.
game_soundsuite
Introduced around 1.0.0.1, this extension indicates the composer or troop responsible for the sound effects audible in the game. Values are limited to any string of text.
game_soundtrack
Introduced around 1.0.0.1, this extension indicates the composer or troop responsible for the game soundtrack, if there is any one entity. Values are limited to any string of text.
game_studio
Introduced around 1.0.0.1, this extension indicates the name of the studio who developed the game. Values are limited to any string of text.
game_sub_series
Introduced around 1.0.0.1, this extension indicates the series within a larger series in which the game is a part of. Sometimes called a 'gaiden', though not necessarily the same thing. Values are limited to any string of text.
game_subteam
Introduced around 1.0.0.1, this extension indicates the team within a larger studio or collective who is largely responsible for the development of the game. Values are limited to any string of text.
game_subtitle
Introduced around 1.0.0.1, this extension indicates the title that usually appears in smaller letters below the main title. Values are limited to any string of text.
game_suggested_retail_price
Introduced around 1.0.0.1, this extension indicates, whether applicable or not, what you think your game should be sold for on store shelves, or what you would sell it for if you could. Players feel free to regard this value as a suggested donation. Values are limited to any string of text.
game_super_title
Introduced around 1.0.0.1, this extension indicates the title that usually appears in smaller letters above the main title. Values are limited to any string of text.
game_thanks
Introduced around 1.0.0.1, this extension indicates any thanks the game makers would like to confer. Thanks to From Software for instance. Values are limited to any string of text.
game_title_with_sequel
Introduced around 1.0.0.1, this extension indicates the title which includes the sequel number. This title may be shorthand. The sequel need not appear in the main title. It's probably best to render the sequel in Arabic numeral form to avoid any confusion. Values are limited to any string of text.
game_version
Introduced around 1.0.0.1, this extension indicates the version of the game. For instance if the game has been patched or is not intended to ever be finalized. Values are limited to any string of text.
game_writer
Introduced around 1.0.0.1, this extension indicates the lead writer. This is the script writer. Values are limited to any string of text.
game_year_published
Introduced around 1.0.0.1, this extension indicates the year of this edition. It should be a number in the common era. Values are limited to any string of text; a whole number is best.
Bugfix
Extensions in this section correct bugs in the unextended product. Some extensions in other sections may depend upon these extensions and refuse to work otherwise, other extensions may supersede these extensions. How extensions interact is decided on a case by case basis.
do_fix_any_experimental
Introduced around 1.0.0.1, this extension is equivalent to to setting all experimental Bugfix extensions. This will not set undocumented extensions. Values are limited to binary statements.
do_fix_any_nontrivial
Introduced around 1.0.0.1, this extension is equivalent to to setting all nontrivial Bugfix extensions. Nontrivial means the extensions come at some non-negligible performance overhead. Values are limited to binary statements.
do_fix_any_trivial
Introduced around 1.0.0.1, this extension is equivalent to to setting all trivial Bugfix extensions. Trivial means the extensions is negligible or free in terms of performance overhead. Values are limited to binary statements.
do_fix_asynchronous_sound
Introduced around 1.0.0.1, this extension is classified a nontrivial fix. It ensures sound effects are synchronized with the source of the sound. Values are limited to binary statements.
do_fix_clipping_item_display
Introduced around 1.0.0.1, this extension is classified a nontrivial fix. It ensures item geometry as displayed in menus does not intersect geometry that is part of the background in a non-picture menu. Values are limited to binary statements.
do_fix_controller_configuration
Introduced around 1.0.0.1, this extension is classified a trivial fix. It maps the game controller settings in the game's INI file to correct values. Values are limited to binary statements.
do_fix_elapsed_time
Introduced around 1.0.0.1, this extension is classified a trivial fix. It currently hides the elapsed time in the menu screens. It does so because the time is more often than not incorrect. As soon as someone figures out how, it will be made to display the correct time. Values are limited to binary statements.
do_fix_fov_in_memory
Introduced around 1.0.0.1, this extension is classified a trivial fix. It ensures the correct field of view values exist in memory. For example, without this fix, graphics may disappear mysteriously along the edges of the screen under some display resolutions. Values are limited to binary statements.
do_fix_graphics_device_interfacing
Introduced around 1.0.0.1, this extension is classified a nontrivial fix. For example, Sword of Moonlight instantiates a font in memory every time it redraws the screen. This can happen several times a second. This fix manages a pool of GDI resources which are reused wherever applicable and recycled as necessary. This should improve performance and conserve memory. Values are limited to binary statements.
do_fix_lighting_dropout
Introduced around 1.0.0.1, this extension is classified a nontrivial fix. Normally object lighting is turned off if you change display settings in the game menu. This extension fixes that behavior indirectly by doing the equivalent of turning on #do_lights with the number of lamps set to 3. 3 is believed to be the maximum number of lamps Sword of Moonlight will apply to an object. Setting do_lights to yes will supersede this extension. Values are limited to binary statements.
do_fix_out_of_range_config_values
Introduced around 1.0.0.1, this extension is classified a trivial fix. It clamps the possible values in the games INI file to suitable ranges and filters out impossible and or troublesome values. Values are limited to binary statements.
do_fix_oversized_compass_needle
Introduced around 1.0.0.1, this extension is classified a nontrivial fix. Sometimes the compass needle is gigantic compared to the compass. This should correct that, hopefully without any side effects. Values are limited to binary statements.
It is nontrivial because of a slight chance of side effects cropping up in menu elements if mistaken for the needle.
do_fix_slowdown_on_save_data_select
Introduced around 1.0.0.1, this extension is classified a trivial fix... because it's more work not to fix and the fix is relatively simple. In Save/Load menus every time Sword of Moonlight redraws the screen (several times a second) it tries to open 99 files in your save folder. This is hard on any disk, however on a modern hard disk drive you may not notice. On any kind of external storage disk the game will grind to a crawl. The player may not even be able to get out of the game. This extension fixes this behavior. Values are limited to binary statements.
do_fix_spelling_of_english_words
Introduced around 1.0.0.1, this extension is classified a trivial fix. Sword of Moonlight is/was a Japanese product first. Originally it contains some English words which are not always spelled correctly. This extension fixes these instances wherever applicable, so your game should appear more professional to players versed in English. Values are limited to binary statements.
Detail
*alphafog_skyflood_constant
*alphafog_skyfloor_constant
*ambient_contribution
*cursor_presentation_timeout
*lights_ambient_multiplier
*lights_calibration_factor
*lights_constant_attenuation
*lights_diffuse_multiplier
*lights_distance_multiplier
*lights_exponent_multiplier
*lights_linear_attenuation
*lights_maximum_lamp_lights
*lights_quadratic_attenuation
*lights_vs_1_x_unroll_x
*mipmaps_maximum_anisotropy
*mouse_4,5,6,7,8th_button_action
*mouse_deadzone_multiplier
*mouse_horizontal_multiplier
*mouse_left_button_action
*mouse_middle_button_action
*mouse_right_button_action
*mouse_saturate_multiplier
*mouse_tilt_left_action
*mouse_tilt_right_action
*mouse_vertical_multiplier
*numlock_initial_state
*numlock_key
*pause_button_default
*wasd_and_mouse_mode
Editor
*language_pack_to_use
Folder
*alternative_data_folder
*alternative_font_folder
*alternative_lang_folder
*alternative_text_folder
*alternative_tool_folder
*do_use_users_saved_games_folder
*saved_games_folder
Joypad
Keygen
Launch
Locale
Option
Output
Script
System
Window