Advanced Query Syntax

This page describes the syntax for Generation MSX indexed searches which use the Lucene text search engine. The search indexes for these types of searches are updated almost realtime, and thus may not reflect up to the minute changes.


Lucene offers much flexibility in defining search queries for all needs imaginable. To make it easier to understand, this page was divided into subpages. While this one offers an introduction to the most commonly used features, the others explain more advanced search operators and constructs.

First some words on the the terminology used in these pages:

A query is the complete expression you put in one of the search fields.
A term is the smallest unit inside a query. In the default case each single word inside a query is a term of its own, except for ...
A phrase is a groups of words surrounded by quotation marks. Even though it's containing more than one word, a phrase is handled like a term.
or search operators are special characters and words that define either how single terms are processed by the search system (e.g. in -house the - tells the search system, not to return anything with the word house) or how to terms are to be combined in the search (e.g. one AND love means search for anything that has both words one and love). The sections below Query Syntax describe simple and commonly used operators, more advanced features can be found in the Lucene Search Syntax

But first take a look at a few simple examples which might show everything necessary for the majority of your searches.


is_unreleased:1 is_unreleased:1 AND developer:konami developer:Konami AND system:MSX2+ medium:"Compact Flash" (year:1986 OR year:1987) AND developer:kon*

Query Syntax


To perform a single character wildcard search use the "?" symbol. To perform a multiple character wildcard search use the "*" symbol. For example, to search for "text" or "test" you can use the search te?t, to search for "test", "tests" or "tester", you can use the search test*.

Note: You cannot use a * or ? symbol as the first character of a search.

Fuzzy searches

To do a fuzzy search use the tilde, "~", symbol at the end of a single word term. Optionally can specify the required similarity, a value is between 0 and 1. For example to search for a term similar in spelling to "roam" use the fuzzy search roam~ or roam~0.8

Generation MSX Search fields

Field Description
search_title Contains all titles know for the software
product_code Product code of the software release
developer Software developer
publisher Software publisher
year Year the software is released
system MSX System (MSX, MSX2, MSX2+, Turbo-R)
medium Release medium (Tape, ROM, Double Side Disk, MegaROM, Single Side Disk, Laserdisc, Softcard, VHD, BeeCard, CD, Music CD, QuickDisc, Compact Flash, Unknown)
sound Sound used by the Software (PSG, MSX-Music, MSX-Audio, SCC, MIDI, PCM, SCC+, Moonsound, VLM5030)
kind Software kind (game, program, magazine, demo)
genre Software genre
max_players Max players (1-8)
max_simultaneous Max simultaneous players (1-8)
licence Software licence (Commercial, PD/Freeware, Shareware, Promotional, MagazineDisk, Unknown)
is_unreleased If the software is unreleased (0, 1)
is_compilation If the software is a compilation (0, 1)
uses_v9990 If the software is using the v9990 video chip (0, 1)
uses_kani If the software is using the kanji ROM (0, 1)
ram The amount of RAM the software is using (8, 16, 32, 48, 64, 128, 256, 512, 1024, 2048, 4096
vram The amount of VRAM the software is using (16, 64, 128, 192, 512