Files
llamamod/notes/editor-guide.md

10 KiB
Raw Permalink Blame History

LlamaMod Level Editor – user guide

A 3D level editor for The Emperor's New Groove (PC, 2000; German: Ein Königreich für ein Lama). It is part of LlamaMod, the mod manager: levels you make are installed and played as LlamaMod mods. Everything is built from your own copy of the game – a level project contains only your changes, so it can be shared freely.

The editor with the village

Getting started

  1. Install LlamaMod and let its wizard set up the game from your CD or ISO (Windows or Linux).
  2. Click Level Editor in LlamaMod's header (or start LlamaMod --editor).
  3. Help → Getting started (Shift+F1) shows a five-step tour inside the editor; Help → Shortcut sheet gives a printable page with every key.

The window: menu and toolbar at the top, the Outliner (everything in the level as a tree) on the left, the Inspector (properties of the selection) on the right, the viewport in the middle and Assets / Textures / Problems at the bottom. Panels can be moved to another side through their tab's context menu and reopened under View → Panels.

Moving around

Input Action
right mouse button held + W A S D, Q / E fly (Shift = faster, wheel = fly speed)
middle mouse (or Alt + left) orbit around the selection or the point under the cursor
Shift + middle mouse pan
mouse wheel zoom towards the cursor
F / Home frame the selection / the whole level
numpad 7 / 1 / 3 / 5 top / front / side / perspective

Click selects, Shift+click adds, Ctrl+click toggles, dragging in empty space draws a box selection. W move, E rotate, R scale (brushes), Q select; G toggles grid snapping, Ctrl while dragging inverts it. Every change can be undone (Ctrl+Z); Edit → History lists all steps.

Creating a new level

File → New level asks for a name, the base level and a template:

  • Empty – nothing but the base level's sky, fog and music,
  • Flat floor – a 16×14 grass floor with a start and an exit,
  • Island – a grass island with trees in the sea.

The base level (default: Village chapter 1) supplies the object types, textures, sounds, sky, the start zone (fog, music) and the directional lights. Its teleport zones, point lights, paths and visibility regions are not taken over. New levels live in the game's hidden TestLevel world (world 9); each project gets one of its 49 chapters (shown in Level → Level settings).

New level dialog

Build the level from brushes (Assets → Brushes: floors, boxes, platforms, ramps, stairs, fences, trees, sea, kill planes …) and the base level's tile models. Drag them from the Assets panel into the viewport. Brush parameters (size, textures, collision material) are in the Inspector.

Every level needs

  • a Llama – the player start (Assets → Objects → Player & start),
  • an exit: a LevelDoor on floor with collision material 16 (the templates have one),
  • floor with collision under the start. Level → Check for problems lists what is missing.

Editing an original level

File → Open original level shows all chapters with their loading pictures. You can move, add and delete objects, tiles, waypoints, zones and lights. The project stores only the differences to the original, and building it with the same CD gives the same file every time.

Tip: prefer moving or hiding original tiles over deleting them – some object scripts address tiles by their number, and deleting shifts those numbers.

Objects, waypoints and zones

  • Objects (Assets → Objects) are the base level's object types: coins, collectibles, checkpoints, enemies, villagers, moving platforms … Their parameters and flags are in the Inspector. Only types that exist in the base level can be placed.
  • Waypoint chains belong to objects (paths of enemies, camera paths). Select an object to see its chain; duplicating an object copies its chain.
  • Zones set fog, colours, music and respawn/teleport targets; lights colour the level; visibility regions decide which parts are drawn from where (View → Layers shows them).

Importing 3D models

File → Import mesh reads OBJ (with MTL and textures) and glTF/GLB. The model becomes a mesh brush: it is cut into the engine's 1×1-cell tiles at build time, gets collision (choose the material in the Inspector) and lit vertex colours. The engine has no free texture coordinates – each triangle shows one half of a texture rectangle – so simple, rectangular UV layouts look best.

Textures

The Textures panel (bottom dock, Ctrl+Shift+T, or Window for a large separate window) is the texture manager:

Texture manager

  • Pages (left): the level's 256×256 texture pages with their blend class.
  • Atlas (middle): the selected page with every texture rectangle – white = used, red = unused, cyan = animated, orange = selected. Drag the selected rectangle to move it, drag its handles to resize it, mouse wheel zooms.
  • Table: number, name, page, rectangle, blend class, how many faces/models use it, animation. Filter by used / unused / animated / imported; double-click a texture to paint with it.
  • Texture tab: name, position and size, blend class, usage, Duplicate, Select users.
  • Animation tab: flip-books (a sequence of frame textures, frame delay, back and forth) and vertical scrolling (rivers, lava), with a live preview.

Import… adds PNG/JPG/BMP images:

Import dialog

Option
Size longest side in pixels; the aspect ratio is kept
Blend class Opaque, Cut-out (fully transparent pixels: leaves, fences), Semi-transparent (50 % blending: glass, water), Additive glow (light, fire), Darken
Transparent below alpha pixels less opaque than this become invisible
Keep half-transparent pixels for semi-transparent/additive textures
Transparent colour magenta or the top-left pixel for images without alpha
Dither smoother gradients in the game's 15-bit colour
Pack into free space uses unused areas of existing pages of the same blend class before adding pages

The preview shows the image as the game will show it. Replace pixels… puts a new image into an existing texture's rectangle (all faces using it change), Export PNG… saves one; the page list's context menu exports or replaces whole pages.

Paint texture tool (M): click a face of a tile to give it the current texture (the scope box paints the face, all faces of that model with the same texture, or the whole model). Clicking a brush sets its top/side/bottom texture by the side you click. Shift+click or the eyedropper (I) picks the texture of a face. For the selected face: Rotate turns the texture, Mirror flips it, Other half shows another half of the texture rectangle. Tiles often share one model – tick Unique to give the clicked tile its own copy first, otherwise every tile with that model changes.

Painting a texture

Play-testing

Play (F5) builds the level, installs it as a mod and starts the game directly in the level – no intro, no menus, no map. Play from camera position (Shift+F5) puts the llama on the ground in the middle of the view, facing the way the camera looks (the editor checks that there is walkable collision there – trees and roofs often have none).

In the game, Escape quits straight back to the editor. When the game has ended, LlamaMod switches your normal mod selection back on (the level itself stays installed as a mod).

The game started straight in the level

Options in the Level menu: Play boots straight into the level (off = the game starts at the main menu with the map cursor on the level) and Escape quits the play-test. The save slot used for play-testing (default 3, backed up first) is set in Edit → Preferences.

Sharing levels

Projects are .llamalevel files (saved by default in LlamaMod's levels folder). They contain your changes, imported meshes and textures and a thumbnail – no game data – and are usually only a few kilobytes. To share a level:

  1. File → Save and send the .llamalevel file (forum, Discord, e-mail).
  2. The receiver uses Mods → Levels → Import level… in LlamaMod (or copies the file into the levels folder), ticks the level and clicks Play. LlamaMod builds it from their own CD.
  3. New levels appear on the world map as TestLevel – chapter n; edited original levels replace that chapter while the mod is on.

If two level mods use the same TestLevel chapter, change the chapter in the mod's options.

Shortcuts

Keys Action
Ctrl+N / Ctrl+O / Ctrl+S new / open / save
Ctrl+Z / Ctrl+Y undo / redo
Ctrl+D, Del duplicate, delete
Q W E R select, move, rotate, scale
T, I paint texture, eyedropper
G, X, C, H / Alt+H, L snapping, local space, collision view, hide / show all, lock
Ctrl+B, F5, Shift+F5 build, play, play from camera position
Ctrl+Shift+T texture manager
F1, Shift+F1 shortcuts, getting started

Troubleshooting

Problem Solution
"OpenGL 3.3 is not available" update the graphics driver; in a VM enable 3D acceleration
Play: "The game is still running" quit the game first (level files cannot be replaced while it runs)
The llama falls through the floor (play from here) point the view at walkable ground; check collision with C
Windows Defender warns about groove.exe play-tests change groove.exe (boot to level); see LlamaMod's antivirus notice
A level does not load / the game crashes Level → Check for problems; keep tiles inside the grid; one player start