107 lines
5.5 KiB
Markdown
107 lines
5.5 KiB
Markdown
# Editing original levels
|
||
|
||
Besides building new levels you can change the game's own 31 levels: add coins and checkpoints,
|
||
move platforms, change the fog and music, open up new paths. Your project stores only the
|
||
changes; the original files on the CD and in LlamaMod's game copy are never modified.
|
||
|
||
## Opening an original level
|
||
|
||
**File → Open original level…** (**Ctrl+Shift+O**, or **Open original level** on the start page)
|
||
shows every level of the CD by name, with its loading picture as a preview:
|
||
|
||
* *Village – Chapter 1* … *Lab – Chapter 5*, sorted by world and chapter. The worlds are Village,
|
||
Jungle at Night, River, Jungle by Day, Mountain, City, Catacombs and Lab.
|
||
* Chapters marked *(unused)* exist on the CD but are not reachable from the world map.
|
||
* *Other – …* entries are the front-end and demo files (menus, attract demo); they are listed for
|
||
completeness.
|
||
|
||
Pick a level and click **Open**. Loading takes a moment; the level appears exactly as on the CD.
|
||
|
||

|
||
|
||
> **Tip:** you can also start the editor straight into a level from the command line:
|
||
> `LlamaMod --editor t1l1m001` (the file name of the level: t1 l*world* m*chapter*).
|
||
|
||
## What you can change
|
||
|
||
Everything the editor shows can be edited in an original level, with the same tools as in a new
|
||
level:
|
||
|
||
* **objects** – move, turn, delete, add any type of this level, change parameters
|
||
([Objects](09-objects.md));
|
||
* **waypoint chains** of enemies, cameras and respawn points ([Waypoints and paths](10-waypoints.md));
|
||
* **tiles** – move, turn, paint with other tile models, repaint textures, paint collision
|
||
([Building geometry](06-geometry.md));
|
||
* new **brushes** and imported **meshes** on top of the original geometry;
|
||
* **zones**, fog, music, **lights**, vertex colours and **visibility regions**
|
||
([Environment](12-environment.md), [Visibility regions](13-visibility.md));
|
||
* **textures** – import new ones or replace pixels ([Textures](08-textures.md)).
|
||
|
||
The base level of an edited original is the level itself, so all object types of that level are
|
||
available.
|
||
|
||
## The project stores only differences
|
||
|
||
When you save, the `.llamalevel` file contains only what you changed compared to the original
|
||
level, plus imported meshes and textures and a thumbnail. Projects are usually a few kilobytes
|
||
and contain no game data, so you may share them freely.
|
||
|
||
Building is reproducible: the same project and the same CD always give the same level file, and
|
||
an unchanged project builds a file that is byte-for-byte identical to the original.
|
||
|
||
## Keep tile numbers stable
|
||
|
||
Some object scripts address tiles **by their number** in the level, for example doors or
|
||
bridges that swap their model. Deleting an original tile shifts the numbers of all tiles after
|
||
it, and such a script may then move the wrong tile.
|
||
|
||
* Prefer **moving** an unwanted tile out of the way (for example below the ground) or
|
||
**painting another model** onto it with the Tiles tool – painting onto a tile at the same
|
||
height replaces its model instead of adding a tile, so the numbering stays.
|
||
* New tiles are added at the end and never shift existing numbers.
|
||
|
||
> **Note:** **Edit → Hide selection** (**H**) only hides things in the editor's viewport. Hidden
|
||
> tiles and objects are still built into the level and appear in the game.
|
||
|
||
## Playing your changes
|
||
|
||
**Play** (**F5**) builds the level, installs it as a LlamaMod mod and starts the game directly in
|
||
the changed chapter. **Play from camera position** (**Shift+F5**) puts the llama on the ground in
|
||
the middle of your view. See [Building and play-testing](15-build-play.md).
|
||
|
||
While the level mod is enabled in LlamaMod, your version **replaces that chapter** of the game:
|
||
you reach it on the world map as usual, and it uses your save game's progress.
|
||
|
||
> **Note:** with **Play from camera position** the level's intro fly-by is skipped – the original
|
||
> cut-scene camera is tied to the original start position.
|
||
|
||
## Conflicts with other mods
|
||
|
||
Only one mod can provide a level file. If two enabled mods change the same original level – for
|
||
example two edited versions of Village chapter 1 – LlamaMod stops applying with a message that
|
||
names the file. Switch one of them off.
|
||
|
||
Mods that work on *all* levels are applied after level projects and include your changes:
|
||
**Mirror mode**, the **Randomizer**, **Draw distance** and the **Debug wireframe** (see
|
||
[LlamaMod mods](18-mods.md)).
|
||
|
||
## Known oddities
|
||
|
||
* **Exit floor check:** in 8 original levels **Level → Check for problems** reports that the
|
||
LevelDoor has no exit floor (material 16) in its cell. The original exit floors decode one cell
|
||
off the door (for example, door cell 42,49 and floor at 43,48 in the Village). The exits work
|
||
in the game – ignore this message for original doors. Exits you build yourself are checked
|
||
correctly.
|
||
* **Snap to floor** on original levels uses the same collision data, so objects may occasionally
|
||
land a little off near those exit floors.
|
||
* **Environment zones** of original levels are mostly house doors: their trigger cells hold exit
|
||
floors. Moving a door without moving its zone breaks the teleport (see
|
||
[How the game uses zones](12-environment.md#how-the-game-uses-zones)).
|
||
* **Coins near the start** of Village chapter 1 are not drawn at the very beginning, also in the
|
||
unmodified game, so changes there are hard to see right after loading.
|
||
|
||
## Tutorial
|
||
|
||
[Tutorial: Edit an original level](tutorial-original-level.md) walks through a complete example:
|
||
moving coins, adding a checkpoint and changing the music of Village chapter 1.
|