SET file

From Wiki

Jump to: navigation, search

A SET file is a Unicode text file recognized by its .set filename extension. The name "set", pronounced like the word set, is not an acronym; it simply refers to set theory, or more simply, a set of some things. More importantly, Set files are used to assign Sword of Moonlight profiles (eg. PRF and PRT) to one or more such sets. The resulting sets can then be used to include or exclude profiles from project spaces, search and or browse for profiles, and so on, all according to sets.


Set files were not part of Sword of Moonlight 2000, or Som2k. They were invented later, to cope with scale and make it feasible to collaborate on and distribute SOM projects. Som2k's profiles were first organized into sets in early 2014, as part of a SomEx release that focused on the textual content of Som2k's profiles.


The standard file consists of its filename and any lines of text within the file that begin with a plus sign. Lines beginning with semicolons consist of commentary that is ignored.[1]

The filename determines the names of the set or sets in question. The .set file extension is discarded and any spaces ( ) in its filename divide it up into sets—plural. It is important that the name of the sets involved are part of the filename itself, because the filename is meta data, meaning that if none of the sets named are interesting the file can be passed over without delay.

The lines of the file assign profiles residing within the same computer file directory as the set file itself according to their local filenames alone; one per line. Nonstandard lines—not beginning with +—should be ignored.

Since February 2021 glob wildcards are allowed for private use but should not be used in public SET files.


A simple tool called SetComp can scan a directory and from that make a SET file representing its contents. Its basic workflow can require making temporary directories for this purpose and/or editing/decomposing the resulting SET file into smaller sets.

See Also[edit]

External Links[edit]