For the complete documentation index, see llms.txt. This page is also available as Markdown.

The Catalogue

Over 30000 props, measured offline and shipped as data: size, ground offset, triangles, shaders, collision, embedded lights, the DLC each came with and the gamebuild it needs. The picker draws from that, and so does getPropDetails for any script that asks.

The Three Kinds

Every row is one of three, and the picker has a control that switches between them:

Tier
Roughly
What

prop

23000

standalone objects: furniture, clutter, gear

element

5000

glass panes, light rigs, decals, emissive strips, vfx planes

structure

2200

walls, ceilings, floors, window frames, building shells

What a session opens onto depends on who opened it. /map_editor browses whatever cfg.editor.tiers lists, all three as it ships. /prop_inspect browses everything, since a room's own surfaces are often the reason for opening it. A resource calling openEditor without saying gets props only, which is what a furnishing session wants, and asks for the rest by passing filter.tiers.

Narrowing browsing hides nothing else: every row still ships, the server still answers about it, and any of them can be asked for by name or hash.

Props with no archetype at all never entered the catalogue: a row for something that would spawn nothing is worse than no row.

Where a Prop Can Be Placed

This is the part worth understanding before somebody reports it as a bug.

A prop exists in the game only while the .ytyp holding its archetype is mounted, and what mounts a ytyp is the map. Roughly half the catalogue is mounted everywhere, permanently. The other half belongs to an interior or an area, and comes and goes with it: it can be placed near where it belongs and not on the other side of the map.

Measured at one spot with nothing declared: 15276 rows were valid there, about half. Same catalogue, same server, a different spot gives a different half.

So the picker asks the game rather than guessing. A tile the game cannot make right now is dimmed, and picking it says which case it is:

Not available where you are: this prop belongs to an interior that is not loaded.

Walk closer and it lights up. Nothing is broken, and nothing was placed that would have spawned as nothing.

Making the Whole Catalogue Placeable Anywhere

The resource ships the other half as a ytyp of its own, stream/rm_mapeditor_props.ytyp, holding 14365 archetypes. Registering it makes the whole catalogue placeable from anywhere: the same spot that had 15276 valid props has all of them.

It is off by default. To turn it on, uncomment the last line of fxmanifest.lua:

The honest summary: leave it off unless you are building a map and you know the pool has room. The dimmed tile is the cheaper answer, and it is correct.

Gamebuild

Every row records the minimum gamebuild it needs and the DLC it came with. On an older build the newer props are dimmed with that reason, rather than placed and never arriving. Nothing to configure.

Your Own Props

They go in beside the shipped rows and answer the same questions, thumbnails and measurements included. See Adding Props.