Room Numbering
CTU uses two room numbering systems — the inventory code based on Property Components (GTF) and a short code used in KOS. For practical reasons, KOS room codes are commonly used in everyday communication.
GTF Numbering
GTF provides unique room identifiers across the entire CTU.
It is a fixed-length 15-character code consisting of three parts: the building designation (and optionally a building block), the floor, and the room number.
These parts are separated by a hyphen, which is also used as a placeholder for missing values.
0 4 9 B 3 - p 0 2 - s 2 0 3 a \___/ \_/ | \_/ \_____/ | | | | | | +-- room section (if the room is divided) [0-1 chars] | | | | +------- room number [1-4 chars, right-aligned] | | | +--------------- floor [2 chars] | | +------------------ above ground (n) / underground (p) / mezzanine (m) [1 char] | +----------------------- building block (if applicable) [0-2 chars, left-aligned] +---------------------------- building number [3 chars]
Examples: 026A–n13-1333-, 022D–p01-s155-, 057—m01-m109-, 057—n01----8a, 049B3-p02-s203a
KOS Numbering
For historical reasons, KOS does not use complete GTF room codes and instead employs its own encoding scheme.
It takes the room number (and optionally the room section) and the building block from the GTF code.
The building number is replaced by an alphanumeric building abbreviation, typically two characters long.
It appears that room records in KOS are maintained at least partially manually, as there is no official conversion table and inconsistencies and errors occur.
T 2 : B 3 - s 2 0 3 a \_/ \___/ \_______/ | | | | | +------ room number and optional room section | +---------------- building block prefixed by a colon (if applicable) +--------------------- building code
Examples: TH:A-1333, T9:312a
For converting GTF room codes to KOS room codes, a mapping between GTF building numbers and KOS building codes was created (see gtf-to-kos.txt).
Due to the inconsistencies and errors mentioned above, the conversion does not always produce the same code as stored in KOS, but it correctly maps the vast majority of cases.