# Level Editor

{% hint style="info" %}
**Hotkeys for testings**: \ <mark style="color:green;">**W**</mark> - Win\ <mark style="color:green;">**L**</mark> - Lose\ <mark style="color:green;">**D**</mark> - update the deck

Hotkeys can be changed in the debug settings
{% endhint %}

Go to <mark style="color:green;">**Tools**</mark> -> <mark style="color:green;">**BlockPuzzleGameToolkit**</mark> -> <mark style="color:green;">**Editor**</mark> -> <mark style="color:green;">**Level Editor**</mark> (or use hotkey <mark style="color:blue;">**C**</mark>)

<figure><img src="/files/1kktkCSdGNghGOBe9Jap" alt=""><figcaption></figcaption></figure>

### General Settings for Both Modes

<mark style="color:red;">**\*Saving is done automatically**</mark>

<figure><img src="/files/gyP5i4mmA0LatPIzmq2b" alt=""><figcaption></figcaption></figure>

<table data-header-hidden><thead><tr><th width="81"></th><th></th></tr></thead><tbody><tr><td>1</td><td>Button for testing the level</td></tr><tr><td>2</td><td>Level number</td></tr><tr><td>3</td><td>Previous/Next level</td></tr><tr><td>4</td><td>Save button</td></tr><tr><td>5</td><td>Add (+)/Remove (-) level</td></tr><tr><td>6</td><td>Number of rows and columns for the current level. You can adjust the values and click the RESIZE button.</td></tr><tr><td>7</td><td>Enabling timed levels and setting the seconds.</td></tr><tr><td>8</td><td>Level type: collect items, achieve the required score</td></tr><tr><td>9</td><td>Set the required Gems / Score and their quantity (<em>Gems / Score are set automatically in random generation but can be edited manually.</em>)</td></tr><tr><td>10</td><td>Add block</td></tr><tr><td>11</td><td>Clear Gamefield</td></tr><tr><td>12</td><td>Add block with Gem</td></tr><tr><td>13</td><td>Clear</td></tr><tr><td>14</td><td>Sets the percentage of empty cells for random generation.</td></tr><tr><td>15</td><td>Randomize button creates a random level. Remember to select the level type beforehand; otherwise, it will use the type from the previous level. The number of collectible game objects/points is set automatically, but you can adjust it manually if desired.</td></tr><tr><td>16</td><td>Uncheck to disable symmetrical level generation</td></tr></tbody></table>

### Level Type: BonusItem

<figure><img src="/files/o7ozmINByGUWIu6jTNzO" alt=""><figcaption></figcaption></figure>

<table data-header-hidden><thead><tr><th width="50"></th><th></th></tr></thead><tbody><tr><td>1</td><td>Place a bonus object on the game field</td></tr><tr><td>2</td><td>Place a block</td></tr><tr><td>3</td><td>Remove a block</td></tr><tr><td>4</td><td>Clear field</td></tr></tbody></table>

### Level Type: Score

<figure><img src="/files/gO6ebeKEQHVxLXgsqOog" alt=""><figcaption></figcaption></figure>

<table><thead><tr><th width="51"></th><th></th></tr></thead><tbody><tr><td>1</td><td>Set the required score for victory</td></tr><tr><td>2</td><td>Place a block</td></tr><tr><td>3</td><td>Clear field</td></tr><tr><td>4</td><td>Remove a block</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.candy-smith.com/main/block-puzzle-game-toolkit/level-editor.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
