---
# System prepended metadata

title: Catalogue System

---

# Catalogue System

## Premise
- System for cataloguing items for data and techpoints
- Likely to be unused on Main for a while - built for unified backend on both servers as RP will use this a ton at first.

## Catalogue Data
- /datum/catalogue_data
- Lazygenerated by path, or pregenerated for complex items
    - name
    - desc
    - category
    - scan difficulty
    - partial scan data (name, desc, etc)
    - points
    - science data
- returned by a proc: things like someone's species can have catalogue data on it.
- each atom in the world can hold either one typepath to this data, or a /datum/catalogue_group of all the data it has
    - comsigs are fired on scan: can modify this.
    - comsigs and data can return information on failed/partial scan as hints

## Scanners
- handheld scanners
- machinery that scans anything under it
- deconstructor analyzer
    - usually not preferred, bad idea to use this unless required as it destroys the object
- dedicated coolant-required scanner pads for high difficulty objects
- each one has a scan power that corrosponds to scan difficulty

## Catalogue Points
- Arbitrary mining-point redemption like system
- Configured via server config to store into research network, globals, or onto the individual scanner (which is then extracted by ID cards), or even disabled
    - On RP this would be ship-networked, on main this would be individual or disabled
    - If shared, vendors would directly access the network, or a network junction would be in the room with a vendor. If individual, you'd insert your ID. Points work either way, the config just determines default.

## Catalogue Data
- Stored into a linked research network
- Stores both the datum itself, and optionally, points of associated data types.
    - Obviously you can't scan the same thing multiple times for more data.

## Items
- Scan data can be on any /atom
- Handheld scanners can highlight any /atom around them that can be scanned.

### Discovery
- Some things aren't obvious and require a manual scan. Especially if you have, say, an archeology component on something and it returns custom data

### Artifacts, Seeding
- Some things aren't fully scannable until you manage to make them work; see: artifacts.
- Optimally scannable items would be seeded deterministically from world seed, or at the very least be in ruins for ones taht are not.
    - The station will have no scannable things spawn on it, ever.
