objects: snap to floor follows the engine's cell rule (cell tiles, swap models, then neighbours), alligator, alligator spawner and cow guard spawner schemas with box checks, every way of adding a box walker gives it a box, guard info names the objects that set its event bit, new and moved player starts carry their start camera node (no camera in the llama's head), edit and delete type in the object palettes' context menu
This commit is contained in:
1 parent
01208aa36f
commit
6a76cac69f
34 files changed
+1302
-203
No files matched your search
@@ -56,8 +56,10 @@ The **Objects** panel sits in the left dock next to the Outliner – the tab wit
|
||||
* **Click** an entry to make it the current type and switch to the **Place objects** tool
|
||||
(**P**). Then click in the viewport to place it.
|
||||
* **Drag** an entry into the viewport to place one object exactly under the mouse pointer.
|
||||
* **Right-click** an entry to add it to or remove it from your **favourites**. Favourites are
|
||||
marked with ★, listed first and remembered between sessions.
|
||||
* **Right-click** an entry for its menu: **Add to favourites ★** / **Remove from favourites**
|
||||
(favourites are marked with ★, listed first and remembered between sessions) and, for your
|
||||
own [custom types](22-strats.md), **Edit type…** and **Delete type…**. The same menu (with
|
||||
**Place at view centre**) opens on the types in **Assets → Objects**.
|
||||
* Hover an entry for a tooltip with the description of the type.
|
||||
* **parameters decoded** means the editor knows the meaning of the type's parameters and shows
|
||||
named fields in the Inspector (see [Object parameters](#object-parameters)).
|
||||
@@ -89,7 +91,10 @@ ground. It is chosen automatically when you click a type in the Objects panel or
|
||||
3. Click to place. The new object is selected, and the status bar shows its position.
|
||||
|
||||
With **Snap to floor** on, the object is put onto the *collision* floor under the pointer, not
|
||||
just onto the visible surface – so it ends up where the llama can actually reach it. With grid
|
||||
just onto the visible surface – so it ends up where the llama can actually reach it. Like the
|
||||
game, the editor only counts the tiles listed in the grid cell under the point: a floor polygon
|
||||
that reaches into the cell from a neighbouring tile is ignored there (it is used only when the
|
||||
cell has no floor at all). With grid
|
||||
snapping on (**G**), the position snaps to the move step first.
|
||||
|
||||
### Moving and turning objects
|
||||
@@ -139,11 +144,11 @@ create the complete set with one click in the viewport.
|
||||
|
||||
The player start is the **Llama** object. A level has exactly one, so the setup **moves** the
|
||||
existing Llama to the clicked point (and turns it to the chosen yaw) instead of adding a second
|
||||
one. If the level has no Llama yet, one is placed together with its waypoint chain.
|
||||
one. If the level has no Llama yet, one is placed with a single waypoint 2 cells behind it.
|
||||
|
||||
The first node of the Llama's chain is the **start position of the camera**: the setup puts it
|
||||
8 cells behind the llama, slightly lower; the remaining nodes stay on the llama. See
|
||||
[The start camera](11-cameras-triggers.md#the-start-camera).
|
||||
The Llama's waypoints are **start camera positions**: the game uses the first one within 2.5
|
||||
cells of the llama. Moving the start takes the nearby nodes and the village fly-by trigger along.
|
||||
See [The start camera](11-cameras-triggers.md#the-start-camera).
|
||||
|
||||
> **Tip:** **Level → Play from camera position** (**Shift+F5**) starts a play-test at another
|
||||
> point without moving the real start – see [Building and play-testing](15-build-play.md).
|
||||
@@ -305,6 +310,8 @@ The editor knows the parameters of these types (the rest show raw values):
|
||||
| **RubyIdolDoor** | Idols needed, Offset (sign distance) | – |
|
||||
| **PressurePadDoor** | Pad flags (bit field), Door z, Camera, Camera hold | – |
|
||||
| **CityGuard** (and CityGuardWithRubyIdol, CowGuard, GorillaGuard, LizardGuard, WarthogGuard) | View range, Chase range, Event bit (0 = active at once), Wall collision (CityGuard only) | Walking boxes: node pairs; the guard must **start inside one box** |
|
||||
| **CowGuardSpawner** | View range and Chase range of its guards, Max guards, Interval (s) | Walking boxes handed to its guards; the spawner must stand inside one |
|
||||
| **Alligator**, **AlligatorSpawner** | Spawner: Max alligators, Interval (s), Floor collision | Walking boxes: node pairs; an alligator outside every box is moved into the first one; a spawner's alligators walk straight ahead into the first box |
|
||||
| **JumpingBeetleBlue**, **JumpingBeetle** | Jump time, Wait, Jump height, Pause | Jump targets |
|
||||
| **Spider** | Range, Speed, Down time, Up time, Start down | Path |
|
||||
| **Bunny** | Flee range | – |
|
||||
@@ -314,7 +321,12 @@ The editor knows the parameters of these types (the rest show raw values):
|
||||
> game removes it when the level starts – it never appears. Placing a guard gives it one 4×4 box
|
||||
> around itself and Event bit 0; the Inspector shows a warning and a **Box around it** button
|
||||
> when the boxes are wrong. An **Event bit** above 0 keeps the guard hidden until another object
|
||||
> with that event number (a talking character, a smash statue, a door pad …) sets the bit.
|
||||
> with that event number sets the bit: TipoVillage / ChacaVillage (parameter 6), the smash
|
||||
> statues (parameter 0), LabBigCutscene (1), LabWall (4), LabSlidingDoor (5), GoldIdol (1),
|
||||
> CityWall (4), Condor (2), RiverCrocGame (1), RiverTriggerBox (0), KidOnCanoe (4), YzmaRiver
|
||||
> (2, 6), EndGameTriggerBox (0). **Level → Check** notes a guard whose bit no object in the level
|
||||
> sets. Guards and alligators get their one box however you add them (Place tool, drag from a
|
||||
> panel, double-click in Assets).
|
||||
|
||||
> **Tip:** For pickups, leave **Snap to floor** on: the game then drops the coin onto the floor
|
||||
> when the level starts, so a coin placed slightly too high still ends up in the right place.
|
||||
|
||||
@@ -21,17 +21,27 @@ areas as boxes and their cameras as frusta (pyramids showing the view).
|
||||
|
||||
## The start camera
|
||||
|
||||
The **Llama** (the player start) owns a waypoint chain. Its **first node is the camera's start
|
||||
position** when the level begins; the game then moves the camera to its normal place behind the
|
||||
llama. Levels made with the editor put this node 8 cells behind the llama (the
|
||||
[Player start](09-objects.md#player-start) setup keeps it there when you move the start).
|
||||
The **Llama** (the player start) owns a waypoint chain of **camera start positions**. When the
|
||||
level begins, the game takes the first node that lies within **2.5 cells** of the llama as the
|
||||
camera position, looking at the llama. If that node's field *unk2* is not 0, its distance and
|
||||
height to the llama also become the camera distance – until the llama first moves. In the
|
||||
original levels there is one node per entry door; a node that sits on the llama would put the
|
||||
camera into the llama's head.
|
||||
|
||||
The [Player start](09-objects.md#player-start) setup gives a new Llama a single node 2 cells
|
||||
behind it. Moving the start takes the nodes near the old start along (and turns them with the
|
||||
llama), leaves the door nodes where they are, and adds a node if none is in range. The Place
|
||||
tool's rotate knob turns the near nodes too. **Level → Check** warns when the start camera would
|
||||
sit inside the llama.
|
||||
|
||||
The villages also start with a **fly-by**: a *CutSceneTrigger* stands on the player start (radius
|
||||
0.7). When you move the start, the setup moves this trigger along and sets its "end behind the
|
||||
player" flag (parameter 6, bit 1), so the fly-by ends behind the llama at the new start instead
|
||||
of at the old one.
|
||||
|
||||
The Llama's *Camera mode* parameter switches between the normal and an alternative camera
|
||||
behaviour.
|
||||
|
||||
> **Note:** In the original levels the Llama's chain is often a longer list used by the level's
|
||||
> scripts (for example the village's fly-by at the start). Edit it with care.
|
||||
|
||||
## Camera zones
|
||||
|
||||
A camera zone is an object with a **box**: two waypoints marking opposite corners on the ground.
|
||||
|
||||
Reference in new issue
Block a user