# Build your own level A step-by-step path from "I have the game" to "my friends are playing my level". Each step is short and links to the chapter of the [editor manual](../manual/index.md) that has the details. The manual is also built into the editor: press **F1** over any panel, tool or dialog. | Step | | |---|---| | 1 | [Set up LlamaMod](#1-set-up-llamamod) | | 2 | [Learn the editor in ten minutes](#2-learn-the-editor-in-ten-minutes) | | 3 | [Plan the level](#3-plan-the-level) | | 4 | [Build the ground](#4-build-the-ground) | | 5 | [Start, checkpoints and the exit](#5-start-checkpoints-and-the-exit) | | 6 | [Objects, enemies and cameras](#6-objects-enemies-and-cameras) | | 7 | [Look and feel: textures, fog, music, light](#7-look-and-feel-textures-fog-music-light) | | 8 | [Play-test](#8-play-test) | | 9 | [Share it](#9-share-it) | | 10 | [Go further](#10-go-further) | Before you start, skim [Design rules](design-rules.md): the numbers (jump distances, draw distance) and the handful of rules that keep the game from crashing. ![The level editor](../img/editor.jpg) ## 1. Set up LlamaMod 1. Get **your own copy** of the game: the CD or an ISO image of it (*The Emperor's New Groove* PC, 2000; German: *Ein Königreich für ein Lama*). LlamaMod contains no game files. 2. Download the **full** package for Windows or Linux, unpack it and start `LlamaMod.exe` / `./LlamaMod` (Linux needs Wine to run the game). Or build it from source – see the [main README](../../README.md#build-from-source). 3. The first-start wizard copies the game into LlamaMod's data folder. The original CD or ISO is never changed. 4. Click **Play** once to check that the unmodded game runs. Manual: [Installing LlamaMod and the first start](../manual/02-installing.md). ## 2. Learn the editor in ten minutes Click **Level Editor** in LlamaMod and follow [Your first level in 10 minutes](../manual/tutorial-first-level.md): a new level from the *Island* template, a ramp, a coin trail, play it. Then read [Introduction and concepts](../manual/01-introduction.md) – tiles, brushes, objects, zones, base levels, chapters – and [Navigating the viewport](../manual/04-navigation.md). ## 3. Plan the level * **New or edited?** A *new level* starts empty on a **base level** (default: Village 1) that provides the object types, textures, sky, fog and music. *Editing an original level* changes the real Village, River … in place ([tutorial](../manual/tutorial-original-level.md)). * **Choose the base by its objects.** Only the base's object types are available directly; more can be imported from any world ([Importing objects](../manual/09-objects.md#importing-objects-from-other-worlds)). * **Size.** The village grid is 96 × 96 cells; the llama is 0.6 tall and jumps about 1.3 cells. A small, dense level plays better than a big empty one – the draw distance is only 8–16 cells. * **Where it goes.** New levels live in the hidden world 9, *TestLevel*, on chapter 1 or 32–49 ([why](../reference/testlevel.md)). The editor picks a free chapter. ## 4. Build the ground * **Brushes** (B) draw boxes, ramps, stairs, cylinders and more; they are cut into tiles when the level is built ([Building geometry](../manual/06-geometry.md)). * **Tiles** (T) place the base level's own tile models for an original look. * **Meshes** from Blender or any 3D program come in as OBJ or glTF ([Importing meshes](../manual/07-meshes.md), [Blender tutorial](../manual/tutorial-blender.md)). * **Collision** (K) decides what is solid: walls, floors, invisible walls, death floors, the exit floor. The llama cannot step up even small edges – use slopes, or walls without collision. ![A level exported as glTF and opened in Blender](../img/gltf-blender.jpg) ## 5. Start, checkpoints and the exit Use the one-click setups in the Objects panel ([Objects](../manual/09-objects.md#one-click-setups)): * **Player start** – the llama plus its start camera node behind it. Keep the space behind the llama free, or the camera jumps aside. * **Checkpoint** – where the llama respawns after a fall. * **Exit** – a LevelDoor *and* a floor with collision material 16 in the same grid cell. Without that floor the exit does nothing ([why](../reference/objects.md#the-exit-leveldoor--certain)). Its target is the next level; in TestLevel never "world finished" (7, 7, 7). * **Death plane** – a death floor below everything, so falling off respawns instead of falling forever. ## 6. Objects, enemies and cameras * Place coins with the **Coin tool** (O), anything else from **Assets → Objects** ([Objects](../manual/09-objects.md)). * Enemies and moving things often need a **waypoint chain** – some guards even need a pair of waypoint boxes and an event bit, or the game removes them. The Inspector and *Check for problems* tell you ([Waypoints](../manual/10-waypoints.md)). * **Cameras**: camera zones, cut scenes and the start camera ([Cameras and triggers](../manual/11-cameras-triggers.md)). * Change how an object behaves – a number in its script or a whole new type: see [Strats](../strats/README.md) and [manual chapter 22](../manual/22-strats.md). ## 7. Look and feel: textures, fog, music, light * **Textures**: the base's textures, imported PNG/JPG pictures, painting onto faces, flip-book animations ([Textures](../manual/08-textures.md)). * **Environment zones** set fog (= draw distance), sky colour and **music**; teleport zones move the player between areas ([Environment](../manual/12-environment.md), [music ids](../reference/audio.md#music)). * **Light**: tiles get baked vertex colours (*Bake lighting*), lights only light objects. * **Visibility regions** hide areas the camera cannot see – needed for big levels ([Visibility](../manual/13-visibility.md)). ## 8. Play-test **F5** builds the level and starts the game directly in it; **Shift+F5** starts at the camera position. *Check for problems* (also run on every build) lists errors and warnings – double-click one to select the culprit. **Escape** in the game quits straight back to the editor. Manual: [Building, problems and play-testing](../manual/15-build-play.md). ## 9. Share it **File → Save** writes a small `.llamalevel` project: only your changes, no game data. Send that file; the receiver copies it into LlamaMod's `levels` folder (or opens it in the editor and uses *Level → Add to LlamaMod…*), ticks it in the *Levels* category and clicks *Apply*. It is built from their own game copy. Manual: [Sharing levels](../manual/17-sharing.md). ## 10. Go further * Build levels from code instead of the mouse: [Levels from scripts](levels-in-code.md). * Understand the data: [Reference](../reference/README.md). * Write object behaviour: [Strats](../strats/README.md) and the [Alligator Arena walkthrough](../strats/arena.md). * All tools at a glance: [Tools](../tools.md).