127 lines
6.8 KiB
Markdown
127 lines
6.8 KiB
Markdown
# 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.
|
||
|
||

|
||
|
||
## 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.
|
||
|
||

|
||
|
||
## 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).
|