Skip to content
Dr. HyperCake edited this page Oct 23, 2018 · 8 revisions

LVD Editor

The LVD Editor is used to edit stage level data, such as collisions, spawn and respawn points, and camera and death boundaries. These are stored in .lvd files, which are usually located in a stage's "param" folder.

Upon opening an .lvd file in Smash Forge, the LVD Editor will appear, with a list of the LVD's objects on the left. Selecting an entry from this list will open its editing options on the right.

To add an entry to an LVD, simply right-click on one of the object types in the list (e.g. 'Collisions'), and click the corresponding 'Add' option. A new entry will be added to the list.

To delete an entry from an LVD, select that entry in the list and then right-click on it, and select 'Delete Entry'. You can also delete the currently selected entry by pressing the 'd' key.

LVD Object

These are the editing options that are common to all LVD entries that you can select in the list.

Name

The name of the object. It usually starts with a prefix representing the object's type (e.g. 'COL_' for collisions). This has a maximum length of 56 characters.

Subname

This is usually the name of the object, except without the prefix. If the object is bound to animate with a bone or model, this will usually be the name of that model folder instead. This has a maximum length of 64 characters.

Start Position

A point of origin for the object. If the object is animated, this is usually enabled, with the position being the first frame of animation. This has different behavior with different objects types; for example, for collisions, it is an offset on the collision's position, but for general points, it is an override on the point's position.

Bone to Rig To

The name of the bone that the object is bound to. The bone should exist in the model specified by the subname.

Collisions

flag1

It is unknown what this flag does. If you find out, please let us know.

Rig Collision

Sets whether or not the collision is bound to a bone or model. If it is, it will animate with the model and/or bone specified in the Subname and Bone to Rig To.

flag3

It is unknown what this flag does. If you find out, please let us know.

Drop Through

Sets whether or not a player can tap down on the control stick to drop through the collision. ('Soft' collision.)

Vertices

A 2-dimensional point representing a corner of a collision. Each one is automatically connected to the next. They can be created with the + button, and can be removed with the - button. Their X and Y coordinates specify where they are placed in the stage, relative to the collision's bind and/or start position.

Lines

A line that represents the space between two vertices, making up the terrain.

Passthrough Angle

The angle at which a player or other interaction can travel through the line. This is usually perpendicular to the line.

  • 45 to 135: Floor (Blue)
  • 136 to 224: Left Wall (Green)
  • 225 to 315: Ceiling (Red)
  • 316 to 44: Right Wall (Green)

Physics Material

The type of terrain the line uses. This affects things like the sound or visual effect played from movement on the terrain, and traction.

Left Ledge

Whether or not the left side of the line is a grabbable ledge.

Right Ledge

Whether or not the right side of the line is a grabbable ledge.

No Wall Jump

Whether or not players will be able to wall-jump and wall-cling on this line, if it is a wall.

Cliffs

A cliff is an object designed to represent a grabbable ledge in a collision. They are found on every grabbable ledge in the game. In the LVD Editor list, a collision's cliffs will be listed under that collision (as child nodes in the tree). Usually, you don't need to worry about modifying cliffs; instead, you can automatically generate cliffs for a collision by right-clicking on it and selecting 'Regenerate Cliffs'. You can even generate cliffs for all collisions in the LVD at once, by right-clicking on 'Collisions' and selecting 'Regenerate Cliffs'.

If you do need to modify a cliff, you can select it like any other entry to bring up its editing options.

Position

You can edit the X and Y position of the cliff. The position should be the same as the position of the vertex that the cliff would correspond to.

Angle

This controls which direction the cliff is facing. It is -1 for left and 1 for right.

Line

This is the number of the line in the parent collision that this cliff should be applied to.

Spawns

Represents the position each player will spawn at the beginning of a match. 4 to 8 spawns should exist in the LVD, and a player that does not have an applicable spawn will spawn at other spawns, overlapping with other players. The naming for them is as follows:

Name: START_00_PXX
Subname: 00_PXX

"XX" is the player number (in double digits), ranging from 1 to 8. You can change the X and Y values to change the position of the spawn.

Respawns

Represents the position players will respawn at after a KO. These are not tied to player number; rather, each player will respawn at the lowest number respawn that is not occupied at the time of respawning. The naming for respawns is as follows:

Name: RESTART_00_PXX
Subname: 00_PXX

"XX" is the respawn number (in double digits), ranging from 1 to 8. You can change the X and Y values to change the position of the respawn.

Item Spawners

These objects control where items will spawn on the stage. Each entry is made up of sections that are the area covered between the vertices of the section. It is good practice to make sure the stage is sufficiently covered by item spawners.

Sections

These can be created using the + button and can be removed with the - button. You must have one selected to edit its vertices.

Vertices

These can be created using the + button and can be removed with the - button. They can be moved using the X and Y boxes.

Camera Boundaries

The boundaries that the camera doesn't move past. This represents the total view of the stage. Outside of the camera bounds, players will be in the 'hoop damage' state.

X+ - The boundary in the positive X direction, to the right of the stage
X- - The boundary in the negative X direction, to the left of the stage
Y+ - The boundary in the positive Y direction, above the stage
Y- - The boundary in the negative Y direction, underneath the stage

Death Boundaries

The boundaries that players will be KO'd upon crossing (also known as 'blast lines'). These should usually be at least 50 units from the camera boundaries.

X+ - The boundary in the positive X direction, to the right of the stage
X- - The boundary in the negative X direction, to the left of the stage
Y+ - The boundary in the positive Y direction, above the stage
Y- - The boundary in the negative Y direction, underneath the stage

General Points

3-dimensional points representing the positions of certain special functions. They must exist in order for the actions to work properly.

Final Smash points

There are three points which affect the positions at which some fighters' Final Smashes take place. They all have the name: GeneralPoint3D__tag___0000_Kir

Their subnames are as follows:

  • _tag___0000_KirifudaPikmin - Olimar's Final Smash; this is the point that the ship will fly to and fly down from.
  • _tag___0000_KirifudaIke1 - The position of any 'trapping' Final Smash in which the user/victims are transported to the top of the screen.
  • _tag___0000_KirifudaNess - Ness' and Lucas' Final Smash; this is the origin point of the starstorm.

Shapes

LVD uses a recurring structure for its 2-dimensional shapes; this is not an object type in itself, but it is used by other types of objects.

Shapes can come in four different types:

  • Point - A single 2D point, represented by X and Y values.
  • Circle - A 2D circle, represented by X, Y and Radius values.
  • Rectangle - A 2D rectangle, represented by X-, X+, Y- and Y+ values, just like boundaries.
  • Path - A collection of 2D points, each represented by X and Y values.

Note that all values of the shape are available for editing, even if they wouldn't have an effect on the set shape type (for example, adding points to the point collection of a rectangle).

General Shapes

Represents a single Shape as an LVD object. It comes with one value of its own:

ID - A number which connects the object to its special function in the game (e.g. a stage hazard).

Hurtboxes

Represents a 3-dimensional shape that can be attacked. Usually, these must be already designed to be present on a stage (e.g. Luigi's Mansion) and do not do anything otherwise.

The object is made up of X, Y and Z values, of which there are two each, as well as a Radius value and two Unknown values. It comes in two types:

  • Sphere - A 3D sphere. This uses the first X, Y and Z values for its position (the second ones do not do anything), as well as the Radius for its size.
  • Capsule - A 3D capsule (two spheres connected by a cylinder). This uses the first X, Y and Z values for its base position, and the second ones for the offset position of the second end of the capsule. It uses the Radius for its size.

Enemy Generators

Represents a collection of spawn points and trigger zones for spawning enemies. It is made up of:

  • ID - A number which connects this object to param values outside of the LVD, where other required information is stored.
  • Unknowns - Two unknown values that are only known to be 0.
  • Spawns - A collection of enemy spawn positions (which are Shapes), each with a Spawn ID to link it to param values that contain information like enemy type.
  • Zones - A collection of trigger zones (which are Shapes), each with a Zone ID (which is only known to be 0).

Each Spawn and Zone is a Shape, which means it can be a Point, Circle, Rectangle or Path. However, Point and Rectangle are the only types of shape known to function for enemy generators; Circles and Paths do not appear to have any effect.

Spawns control where an enemy will spawn when the generator is triggered. Spawns are usually points, but they have been seen as rectangles (how they function as rectangles is unknown).

Zones represent the triggers for the enemy generator to spawn its enemies. When any one of the generator's zones is triggered by the player entering it, the generator loads and spawns all of its enemies. Zones are usually rectangles, but they can also function as points (albeit requiring a rather precise player position to trigger).

Enemy Generators are only known to have an effect on Final Destination (during Master Fortress) and Smash Run, as on these stages, they use data from the param files to determine the information not found in the LVD (such as enemy type). Enemy generators on other stages will simply have no effect. Additionally, enemy generators will crash the game on Final Destination outside of the context of Master Fortress.