> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rollingquest.kramgames.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Loading Levels

> How to load levels in the RollingQuest editor: directory browsing, filtering, preview, and level deletion.

The Load menu lets you browse and load saved levels. Press **Escape** → **Load** to access it.

## Opening the Load Menu

1. Press **Escape** to open the Main Menu
2. Click **Load**

## Directory Navigation

The Load menu displays a file browser with:

* **Parent Directory** — Navigate up one level (shown as `..`)
* **Folders** — Subdirectories containing levels
* **Levels** — Saved `.rqlevel` files

### Navigation

* Click on a **folder** to enter it
* Click on a **level** to select it
* Click **Load** (or double-click) to load the selected level

### Filtering

Type in the filter field to search levels by name:

* Filtering is case-insensitive
* Both folders and levels are filtered
* The list rebuilds with a small delay (0.1s) after typing

## Level Preview

When a level is selected:

* **Thumbnail** — Shows the level's saved thumbnail image
* **Folder Icon** — Displayed for directories
* **KW/CB Icon** — Shows if the level was originally from Kula World or Cubosphere

## Loading Process

1. Select a level from the list
2. Click **Load**
3. If you have unsaved changes, a confirmation popup appears
4. The level data is loaded from disk
5. The editor rebuilds from the loaded data
6. The Load menu closes

### Unsaved Changes

If the current level has unsaved changes:

1. A Yes/No popup asks "Discard changes?"
2. Click **Yes** to discard and load
3. Click **No** to cancel

## Deleting Levels

1. Select a level from the list
2. Click **Delete**
3. Confirm in the popup

<Warning>
  Deleting a level permanently removes the file from disk. This action cannot be undone.
</Warning>

## File Structure

Levels are stored using `UserLevelDirectory` and `UserLevelFile` classes:

* **UserLevelDirectory** — Represents a folder in the level storage
* **UserLevelFile** — Represents a single `.rqlevel` file
* **UserLevelPath** — A path reference to a level file

The root directory is loaded from `UserLevelDirectory.LoadRoot()`, which provides access to the user's saved levels.
