keygen extensions

From Wiki

Jump to: navigation, search
m
(future note)
 
(7 intermediate revisions by the same user not shown)
Line 2: Line 2:
  
 
<onlyinclude>
 
<onlyinclude>
 +
 +
'''Since 2017 there is an effort to phase out this framework. Its days are numbered.'''
 +
 
Extensions in this section control a "key" system that was originally developed to be able to apply corrections to certain Sword of Moonlight [[Texture|textures]] that proved incompatible with Direct3D 9. The key system generates [[Wikipedia:hash (computing)|hashes]], or serial numbers, for each texture as it is loaded into memory. Corrections and other kinds of tweaks are associated with the hashes via [[INI]] files like [http://svn.swordofmoonlight.net/tool/IMAGES.INI IMAGES.INI]. Keys can be stored in the [[Windows]] registry to improve load times and or work directly with them.
 
Extensions in this section control a "key" system that was originally developed to be able to apply corrections to certain Sword of Moonlight [[Texture|textures]] that proved incompatible with Direct3D 9. The key system generates [[Wikipedia:hash (computing)|hashes]], or serial numbers, for each texture as it is loaded into memory. Corrections and other kinds of tweaks are associated with the hashes via [[INI]] files like [http://svn.swordofmoonlight.net/tool/IMAGES.INI IMAGES.INI]. Keys can be stored in the [[Windows]] registry to improve load times and or work directly with them.
  
 
The key system is expected to become increasingly obsolete over time. However it will remain a powerful way to organize tweaks to individual resources, and therefore will probably have somethings to offer for some time to come. There is a "models" key under the hood. And a "sounds" key is expected to come online before the end of 2013. The term key was consciously chosen to be eponymous with the prominent appearance of keys in King's Field games, keys in the Windows registry, and keys as a way of classifying information.
 
The key system is expected to become increasingly obsolete over time. However it will remain a powerful way to organize tweaks to individual resources, and therefore will probably have somethings to offer for some time to come. There is a "models" key under the hood. And a "sounds" key is expected to come online before the end of 2013. The term key was consciously chosen to be eponymous with the prominent appearance of keys in King's Field games, keys in the Windows registry, and keys as a way of classifying information.
 +
 +
'''Note: adding a Keygen section alone will change nothing. Furthermore Keygen sections have no business in a game's Ex.ini file. It is something to use only if you are working on a project of some sort. Remember that you can blot out an entire section by modifying its name. Adding a period (.) to the front of the name is the recommended means of doing so.'''
  
 
====do_disable_keygen_auditing====
 
====do_disable_keygen_auditing====
{{Ex/inival|1.0.0.1|binary statements|in the affirmative turns off "auditing" when som_db.exe is playing a game and [[#do_enable_keygen_automation]]. Refer to [[#keygen_audit_folder]]|do}}
+
{{Ex/inival|1.0.0.1|binary statements|in the affirmative turns off "auditing" when som_db.exe is playing a game with [[#do_enable_keygen_automation]] switched on. Refer to [[#keygen_audit_folder]]|do}}
  
 
====do_enable_keygen_auditing====
 
====do_enable_keygen_auditing====
{{Ex/inival|1.0.0.1|binary statements|in the affirmative turns on "auditing" when som_rt.exe is playing a game and [[#do_enable_keygen_automation]]. Refer to [[#keygen_audit_folder]]|do}}
+
{{Ex/inival|1.0.0.1|binary statements|in the affirmative turns on "auditing" when som_rt.exe is playing a game with [[#do_enable_keygen_automation]] switched on. Refer to [[#keygen_audit_folder]]|do}}
  
 
====do_enable_keygen_automation====
 
====do_enable_keygen_automation====
{{Ex/inival|1.0.0.1|binary statements|in the affirmative turns on key generation. The generated keys are stored within the [[Windows]] registry. Refer to [[#keygen_toplevel_subkey_in_registry]] and [[keygen_automatic_filter]].  
+
{{Ex/inival|1.0.0.1|binary statements|in the affirmative turns on key generation. The generated keys are stored within the [[Windows]] registry. Refer to [[#keygen_toplevel_subkey_in_registry]] and [[#keygen_automatic_filter]].  
  
 
Note that by default generation is only performed when a game is being debugged, or play tested, with som_db.exe. Refer to [[SOM_SYS]] for an explanation of what it means to debug a Sword of Moonlight project. Refer to [[#do_somdb_keygen_defaults]]|do}}
 
Note that by default generation is only performed when a game is being debugged, or play tested, with som_db.exe. Refer to [[SOM_SYS]] for an explanation of what it means to debug a Sword of Moonlight project. Refer to [[#do_somdb_keygen_defaults]]|do}}
Line 26: Line 31:
  
 
====keygen_automatic_filter====
 
====keygen_automatic_filter====
{{Ex/inival|1.0.0.1|valid Windows registry key names|provides the name of the Windows registry key under which [[#do_enable_keygen_automation]] generates keys. The default key name is ''public''}}
+
{{Ex/inival|1.0.0.1|valid Windows registry key names|provides the name of the [[Windows]] registry key under which [[#do_enable_keygen_automation]] generates keys. The default key name is ''public''}}
  
 
''Note that the filters "public" and "private" have special meaning when loading a key from an [[INI]] file. However in this context you are simply changing where the keys will end up in the registry. A common reason for changing this is to avoid overwriting keys being used by other projects past present or future. Refer to [[#keygen_image_file]].''
 
''Note that the filters "public" and "private" have special meaning when loading a key from an [[INI]] file. However in this context you are simply changing where the keys will end up in the registry. A common reason for changing this is to avoid overwriting keys being used by other projects past present or future. Refer to [[#keygen_image_file]].''
Line 34: Line 39:
  
 
====keygen_toplevel_subkey_in_registry====
 
====keygen_toplevel_subkey_in_registry====
{{Ex/inival|1.0.0.1|valid Windows registry key names|provides the name of the Windows registry key under which the entire Keygen system operates. The default key is Software/FROMSOFTWARE/SOM/EX/KEYS under HKEY_CURRENT_USER}}
+
{{Ex/inival|1.0.0.1|valid Windows registry key names|provides the name of the [[Windows]] registry key under which the entire Keygen system operates. The default key is Software/FROMSOFTWARE/SOM/EX/KEYS under HKEY_CURRENT_USER}}
  
 
</onlyinclude>
 
</onlyinclude>

Latest revision as of 21:55, 11 February 2018


Since 2017 there is an effort to phase out this framework. Its days are numbered.

Extensions in this section control a "key" system that was originally developed to be able to apply corrections to certain Sword of Moonlight textures that proved incompatible with Direct3D 9. The key system generates hashes, or serial numbers, for each texture as it is loaded into memory. Corrections and other kinds of tweaks are associated with the hashes via INI files like IMAGES.INI. Keys can be stored in the Windows registry to improve load times and or work directly with them.

The key system is expected to become increasingly obsolete over time. However it will remain a powerful way to organize tweaks to individual resources, and therefore will probably have somethings to offer for some time to come. There is a "models" key under the hood. And a "sounds" key is expected to come online before the end of 2013. The term key was consciously chosen to be eponymous with the prominent appearance of keys in King's Field games, keys in the Windows registry, and keys as a way of classifying information.

Note: adding a Keygen section alone will change nothing. Furthermore Keygen sections have no business in a game's Ex.ini file. It is something to use only if you are working on a project of some sort. Remember that you can blot out an entire section by modifying its name. Adding a period (.) to the front of the name is the recommended means of doing so.

do_disable_keygen_auditing[edit]

Introduced around 1.0.0.1, this extension in the affirmative turns off "auditing" when som_db.exe is playing a game with #do_enable_keygen_automation switched on. Refer to #keygen_audit_folder. Values are limited to binary statements.[#]

do_enable_keygen_auditing[edit]

Introduced around 1.0.0.1, this extension in the affirmative turns on "auditing" when som_rt.exe is playing a game with #do_enable_keygen_automation switched on. Refer to #keygen_audit_folder. Values are limited to binary statements.[#]

do_enable_keygen_automation[edit]

Introduced around 1.0.0.1, this extension in the affirmative turns on key generation. The generated keys are stored within the Windows registry. Refer to #keygen_toplevel_subkey_in_registry and #keygen_automatic_filter.

Note that by default generation is only performed when a game is being debugged, or play tested, with som_db.exe. Refer to SOM_SYS for an explanation of what it means to debug a Sword of Moonlight project. Refer to #do_somdb_keygen_defaults. Values are limited to binary statements.[#]

do_somdb_keygen_defaults[edit]

Introduced around 1.0.0.1, this extension in the affirmative causes the Keygen extensions to behave as if som_db.exe is being used. This is helpful if you need to generate keys for a standalone game. Values are limited to binary statements.[#]

keygen_audit_folder[edit]

Introduced around 1.0.0.1, this extension provides an alternative file folder address for the purpose of "auditing". Auditing is a lot like "ripping". In example: for textures, each image is saved as a DirectDraw .dds file format image to the audit folder. You can then open the folder in Windows Explorer and look through the thumbnail images to find the image that you are interested in, and then use that image's file name to find the matching key in the Windows registry.

The default folder is the data/key folder relative to the local installation of Sword of Moonlight. #alternative_data_folder does not effect the location of the default folder. Values are limited to absolute paths on the local file system.

keygen_automatic_filter[edit]

Introduced around 1.0.0.1, this extension provides the name of the Windows registry key under which #do_enable_keygen_automation generates keys. The default key name is public. Values are limited to valid Windows registry key names.

Note that the filters "public" and "private" have special meaning when loading a key from an INI file. However in this context you are simply changing where the keys will end up in the registry. A common reason for changing this is to avoid overwriting keys being used by other projects past present or future. Refer to #keygen_image_file.

keygen_image_file[edit]

Introduced around 1.0.0.1, this extension provides an alternative INI file from which to load the images key. The default behavior for projects is to look for IMAGES.INI in the project folder. For standalone games IMAGES.KEY is looked for in the EX/KEYS folder. The file extension is changed so players will not be tempted to bother with the file. Values are limited to paths on the local file system.

keygen_toplevel_subkey_in_registry[edit]

Introduced around 1.0.0.1, this extension provides the name of the Windows registry key under which the entire Keygen system operates. The default key is Software/FROMSOFTWARE/SOM/EX/KEYS under HKEY_CURRENT_USER. Values are limited to valid Windows registry key names.