Menu

Usage

Robert

usage:

java -jar HSxmlMaker.jar path matchFileName xmlFileName

Run-level Options:

-noFullList
Only create genre XML files

-noGenres
Only create one XML file with all roms

Genre-level Options - passed to each genre unless overridden

-createMissing [false]
If no XML line matches regex, new xml line is created

-noClones [false]
Exclude Clones from output XML Files

-sort [name|descr|genre|manufacturer|year|rating|false]
Output according to key (false for input file order)

-numbered [false|desc]
Add ascending [or descending] nbr to game descr; ex. top 10

Match Line-level options - passed to each match line unless overridden

-noseq [false]
Do not match sequels (has 0-9, incl roman numerals, in title)

-nomatchclone [false]
Do not match clones

-loose [false]
Replace all spaces with wildcard \".*\"

-strict [false]
Do not add leading and trailing wildcards \".*\"

-any [false]
Match if any of given keywords match

-unique [false]
Find best match only

-regex [false]
Process as regex against all Game Descriptions

-genre genre_regex|false
Genre tag must match regex

-manufacturer manufacturer_regex|false
Manufacturer tag must match regex

-year year_to_match|min_year-max_year|false
Year tag must be = or in range

Match File Usage:

Genres are designated by "+++genre name+++". Ex. +++Sports Games+++.

Match Lines contain a case insensitive regular expression. Ex. mario bro

Genres can contain any of the above Genre-Level or Match-Line-Level options. Match Lines can contain any of the above Match-Line-Level Options. The only difference is that in the match file, options must be designated by a preceding "---" rather than "-". Ex. ---manufacturer Sega.

Multiple options can be listed per line. The program currently will not detect multiple options of the same type - it will just use the last one. Ex.
mario bro ---manufacturer Nintendo ---year 1980-1995

Match-Line-Level Options applied to a Genre are passed down to each MatchLine; however each Match Line can explicitly override these options. Ex.
+++Example+++ ---year 1999
overrides the example option ---year false
also overrides the example option ---year 1990-2000

See examples below.

Example input file:

The regex option forces match-checking against all games - useful when a keyword based search might fail to find some results. in the example below, we would have the keywords "dragons". This will surely find matches with that keyword, but it will fail to find the user's intended matches: against "dragon" or "dragons".

dragons? ---regex

The strict option is often necessary to limit otherwise vague match regexes. "super c" would normally match games like "Super Commando". Strict forces "C" to be the final character in the match (keep in mind anything in parentheses such as region or version is stripped from the match description).

super c ---strict

Creates a "Sega Only" genre with all games that have "Sega" in the manufacturer tag

+++Sega Only+++ ---manufacturer .Sega.
.* ---regex

Creates an "Arcade" genre that matches pretty much any Pac-Man variation: PacMan, Pac Man, Pac-Man, or Pac_Man...or Ms. Pac-Man

+++Arcade+++
pac[ -_]?man

Create a "Retro" genre that matches all games whose year falls between 1960 and 1982

+++Retro+++ ---year 1960-1982
.* ---regex

Create a "Bullet Hell" genre that matches all games by Cave in the Shooter or Shoot-em-up genres

+++Bullet Hell+++ ---genre Shoot.
.
---regex ---manufacturer .Cave.

Genre "Ambiguous Shooters" only matches games with genre "Shooter" that have star, pilot, or battle in the title

+++Ambiguous Shooters+++ ---genre Shooter
star
pilot
battle

"Originals Only will not match Street Fighter II or Gradius II, etc. - only the original Gradius and Street Fighter

+++Originals Only+++ ---noseq
gradius
street fighter

All games with Street Fighter in the title, sorted by year

+++Sort by Year+++ ---sort year
street fighter

Good Options for Top ___ lists - output appears in order listed, and output is numbered. Also, the unique option scores each match for each match line and only uses the "best" match.

+++Top 3+++ ---numbered ---sort false ---unique
ms.*pac[ -_]?man
asteroids
missile command


Related

Wiki: Home

Monday.com Logo