> For the complete documentation index, see [llms.txt](https://documentation.rcore.cz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://documentation.rcore.cz/paid-resources/rcore_housing/integrations/shells.md).

# Shells & IPLs

`rcore_housing` ships with a curated catalog of property interiors. Each entry already has the door, wardrobe, storage, management, and shower offsets dialled in - pick one in the Interior Creator and it just works.

## 🏠 Built-in Shells

`rcore_housing` ships with a comprehensive shell catalog from multiple creators. You need to own and stream the corresponding resources on your server; `rcore_housing` only ships the offset catalog.

### K4MB1 Shells

| Label                     | Model                      | Author |
| ------------------------- | -------------------------- | ------ |
| Ranch                     | `k4_ranch1_shell`          | K4MBI  |
| Ranch 2                   | `k4_ranch2_shell`          | K4MBI  |
| House Shell 1             | `k4_house1_shell`          | K4MBI  |
| House Shell 2             | `k4_house2_shell`          | K4MBI  |
| House Shell 3             | `k4_house3_shell`          | K4MBI  |
| House Shell 4             | `k4_house4_shell`          | K4MBI  |
| House Shell 5             | `k4_house5_shell`          | K4MBI  |
| House Shell 6             | `k4_house6_shell`          | K4MBI  |
| House Shell 7             | `k4_house7_shell`          | K4MBI  |
| House Shell 8             | `k4_house8_shell`          | K4MBI  |
| House Shell 9             | `k4_house9_shell`          | K4MBI  |
| House Shell 10            | `k4_house10_shell`         | K4MBI  |
| House Shell 11            | `k4_house11_shell`         | K4MBI  |
| House Shell 12            | `k4_house12_shell`         | K4MBI  |
| House Shell 13            | `k4_house13_shell`         | K4MBI  |
| House Shell 14            | `k4_house14_shell`         | K4MBI  |
| House 4 Furnished         | `k4_house4_furn`           | K4MBI  |
| Michael                   | `k4_michael_shell`         | K4MBI  |
| Michael 2                 | `k4_michael2_shell`        | K4MBI  |
| Modern 1                  | `k4_modern1_shell`         | K4MBI  |
| Modern 2                  | `k4_modern2_shell`         | K4MBI  |
| Modern 3                  | `k4_modern3_shell`         | K4MBI  |
| Modern 5                  | `k4_modern5_shell`         | K4MBI  |
| Modern 9                  | `k4_modern9_shell`         | K4MBI  |
| Medium 1                  | `k4_shell_medium1`         | K4MBI  |
| Medium 2                  | `k4_shell_medium2`         | K4MBI  |
| Medium 3                  | `k4_shell_medium3`         | K4MBI  |
| Medium 4                  | `k4_shell_medium4`         | K4MBI  |
| Medium 5                  | `k4_shell_medium5`         | K4MBI  |
| Medium 6                  | `k4_shell_medium6`         | K4MBI  |
| Trailer 1                 | `k4_trailer1_shell`        | K4MBI  |
| Trailer 2                 | `k4_trailer2_shell`        | K4MBI  |
| Trevor 1                  | `k4_trevor1_shell`         | K4MBI  |
| Trevor 2                  | `k4_trevor2_shell`         | K4MBI  |
| Low 1                     | `k4_v16low1_shell`         | K4MBI  |
| Low 2                     | `k4_v16low2_shell`         | K4MBI  |
| Mid 1                     | `k4_v16mid1_shell`         | K4MBI  |
| Mid 2                     | `k4_v16mid2_shell`         | K4MBI  |
| Mid 3                     | `k4_v16mid3_shell`         | K4MBI  |
| Mid 4                     | `k4_v16mid4_shell`         | K4MBI  |
| Loft 1                    | `k4_loft1_shell`           | K4MBI  |
| Loft 2                    | `k4_loft2_shell`           | K4MBI  |
| Loft 3                    | `k4_loft3_shell`           | K4MBI  |
| Manor 1                   | `k4_manor1_shell`          | K4MBI  |
| Manor 2                   | `k4_manor2_shell`          | K4MBI  |
| Banham 1                  | `k4_banham1_shell`         | K4MBI  |
| Banham 2                  | `k4_banham2_shell`         | K4MBI  |
| Highend 1                 | `k4_highend1_shell`        | K4MBI  |
| Highend 2                 | `k4_highend2_shell`        | K4MBI  |
| Highend 3                 | `k4_highend3_shell`        | K4MBI  |
| Highend 4                 | `k4_highend4_shell`        | K4MBI  |
| Highend 5                 | `k4_highend5_shell`        | K4MBI  |
| Highend 6                 | `k4_highend6_shell`        | K4MBI  |
| Highend 7                 | `k4_highend7_shell`        | K4MBI  |
| Highend 8                 | `k4_highend8_shell`        | K4MBI  |
| Highend 9                 | `k4_highend9_shell`        | K4MBI  |
| Highend 10                | `k4_highend10_shell`       | K4MBI  |
| Lester 1                  | `k4_lester1_shell`         | K4MBI  |
| Lester 2                  | `k4_lester2_shell`         | K4MBI  |
| Westons 1                 | `k4_westons1_shell`        | K4MBI  |
| Westons 2                 | `k4_westons2_shell`        | K4MBI  |
| Westons 3                 | `k4_westons3_shell`        | K4MBI  |
| Westons 4                 | `k4_westons4_shell`        | K4MBI  |
| Classic 1                 | `k4_classic1_shell`        | K4MBI  |
| Classic 2                 | `k4_classic2_shell`        | K4MBI  |
| Classic 3                 | `k4_classic3_shell`        | K4MBI  |
| Classic 4                 | `k4_classic4_shell`        | K4MBI  |
| Classic 5                 | `k4_classic5_shell`        | K4MBI  |
| Classic 6                 | `k4_classic6_shell`        | K4MBI  |
| Basement 1-5              | `k4_basement[1-5]_shell`   | K4MBI  |
| Biker 1-3                 | `k4_biker[1-3]_shell`      | K4MBI  |
| Container                 | `k4_container_shell`       | K4MBI  |
| Container 2 (illegal)     | `k4_container2_shell`      | K4MBI  |
| Bunker (illegal)          | `k4_bunker_shell`          | K4MBI  |
| Gun Shell (illegal)       | `k4_guns_shell`            | K4MBI  |
| Hideout (illegal)         | `k4_hideout_shell`         | K4MBI  |
| Acid Lab (illegal)        | `k4_labacid_shell`         | K4MBI  |
| Coke Lab 1-2 (illegal)    | `k4_labcoke[1-2]_shell`    | K4MBI  |
| Lab 1-4 (illegal)         | `k4_labempty[1-4]_shell`   | K4MBI  |
| Lab Meth 1-2 (illegal)    | `k4_labmeth[1-2]_shell`    | K4MBI  |
| Lab Weed 1-2 (illegal)    | `k4_labweed[1-2]_shell`    | K4MBI  |
| Laundry (illegal)         | `k4_laundry_shell`         | K4MBI  |
| Stash House 1-4 (illegal) | `k4_stashhouse[1-4]_shell` | K4MBI  |
| Storage                   | `k4_storage_shell`         | K4MBI  |
| Store 1-5                 | `k4_store[1-5]_shell`      | K4MBI  |
| Office 1-8                | `k4_office[1-8]_shell`     | K4MBI  |
| Studio                    | `k4_studio_shell`          | K4MBI  |
| Textile                   | `k4_textile_shell`         | K4MBI  |
| Truck Warehouse           | `k4_truckwarehouse_shell`  | K4MBI  |
| Warehouse 1-6             | `k4_warehouse[1-6]_shell`  | K4MBI  |
| Garage 1-11               | `k4_garage[1-11]_shell`    | K4MBI  |
| Furnished Hotel 1-6       | `k4_hotel[1-6]_furn`       | K4MBI  |
| Furnished House 1-8       | `k4_house[1-8]_furn`       | K4MBI  |
| Furnished Motel 1-2       | `k4_motel[1-2]_furn`       | K4MBI  |
| Hotel 1-3                 | `k4_hotel[1-3]_shell`      | K4MBI  |
| Motel 1-3                 | `k4_motel[1-3]_shell`      | K4MBI  |
| Richman 1-3               | `k4_richman[1-3]_shell`    | K4MBI  |
| VW House 1-2              | `k4_vwhouse[1-2]_shell`    | K4MBI  |
| VW Mansion 1-7            | `k4_vwmansion[1-7]_shell`  | K4MBI  |
| Mansion 4B                | `k4_vwmansion4b_shell`     | K4MBI  |
| Apartment 1-3             | `k4_apa[1-3]_shell`        | K4MBI  |

### Atenea Shells

| Label                     | Model                            | Author |
| ------------------------- | -------------------------------- | ------ |
| Atenea Housing 1-3        | `ate_housing_[1-3]`              | Atenea |
| Atenea Office (cream)     | `ate_oficinacrema`               | Atenea |
| Atenea Office (decorated) | `ate_oficinadecorada`            | Atenea |
| Atenea Studio             | `ate_estudio`                    | Atenea |
| Atenea Studio (decorated) | `ate_estudio_decorado`           | Atenea |
| Atenea Gaming (empty)     | `ate_shell_gaming_empty`         | Atenea |
| Atenea Gaming (furnished) | `ate_shell_gaming_furniture`     | Atenea |
| Atenea Deluxe (empty)     | `ate_habitacion_deluxe`          | Atenea |
| Atenea Deluxe (decorated) | `ate_habitacion_deluxe_decorada` | Atenea |
| Atenea Apartment Inicial  | `ate_apartament_inicial`         | Atenea |

### Other Shells

| Label                    | Model                         | Author     |
| ------------------------ | ----------------------------- | ---------- |
| DC House 1               | `dc_houseoneunf`              | DC Customz |
| BK House 1               | `bk_houseone`                 | DC Customz |
| Envi Shell 1 (empty)     | `envi_shell_01_empty`         | ENVI       |
| Envi Shell 1 (furnished) | `envi_shell_01_furnished`     | ENVI       |
| Envi Shell 2 (empty)     | `envi_shell_02_empty`         | ENVI       |
| Envi Shell 2 (furnished) | `envi_shell_02_furnished`     | ENVI       |
| Envi Shell 3 (empty)     | `envi_shell_03_empty`         | ENVI       |
| Envi Shell 3 (furnished) | `envi_shell_03_furnished`     | ENVI       |
| Sandy Apts 1             | `prompt_sandy_apts_shell_1bd` | Prompt     |
| Sandy Apts 2             | `prompt_sandy_apts_shell_2bd` | Prompt     |

{% hint style="info" %}
Models that aren't streamed on the client are skipped at runtime. If the property creator says "shell section disabled," make sure your shell resource is started.
{% endhint %}

## 🏢 Built-in IPLs

| Label            | IPL               |
| ---------------- | ----------------- |
| Modern Apartment | `apa_v_mp_h_01_a` |

## ➕ Adding Custom Shells & IPLs

Any other shell or IPL can be registered in-game - no config file editing required.

{% hint style="warning" %}
**Why is my Shells / IPLs list empty?**

The picker in the Property Creator only shows interiors that have been registered in the **Interior Creator**. The built-in catalog (K4MB1 shells and the Modern Apartment IPL listed above) is seeded automatically — everything else must be added by an admin through Interior Creator before it will appear.

Two common causes of an empty list:

* **You added an IPL or custom shell but skipped the Interior Creator step.** Defining an IPL name or spawning a shell in the world is not enough — it must be registered so the catalog knows its entry/exit points and offsets.
  {% endhint %}

{% stepper %}
{% step %}

### Open the Interior Creator

![Interior Creator UI](/files/FkQEJweIDnRe86CdNjR9)

As admin, run `/housing` and open **Property Manager → Interior Creator**.
{% endstep %}

{% step %}

### Add the entry

Pick **Shell** or **IPL**, set the model/IPL name and label, then place the door, wardrobe, storage, management, and (optional) shower offsets in-world.
{% endstep %}

{% step %}

### Save

Saving upserts the entry into the live `rcore_housing_interior_catalog` table - it becomes available immediately to all clients and admins.
{% endstep %}
{% endstepper %}

{% hint style="info" %}
The interior catalog is seeded into the database on first boot only. After that, the in-game Interior Creator is the source of truth - editing the seed file on an existing install has no effect.
{% endhint %}
