Help | Level Builder

Level Builder is used to edit and create new levels. Anything that is in an official level can be created in the level builder.

All changes are made to a live instance of Platform 2, so changes can be tested immediately.

Possible operations include inserting platforms, enemies, coins, health points or buttons and moving them.

When your pointer hovers over an object that can be manipulated using the current settings the object will be highlighted (outlined) in blue. When an object is being manipulated it will be highlighted in yellow/orange instead.

Inserting

  1. Enable insertion mode by selecting the mode option labelled "Insert" (keyboard shortcut "i").
  2. Pick the object you want to insert dialog opened by clicking "Change", just to the right of Insert. To label the objects in the dialog use the "Labels" checkbox.
  3. Click on the position where the object should go. This will be the centre of a coin/health point, a corner of a platform and/or one end of the route of a (Brown/Orange/...) Triangle or moving platform.

When inserting an object which you have to set its route end-points: The first point you click at when inserting is the position it will start at when the level starts. e.g. To add a platform that starts going right-to-left, click to insert at its rightmost position, then set the left end-point.

Some objects always go on platforms, as such some will "snap" to the platform below, the object can still be moved off the platform though.

Colours

To set an object's color (where possible):

To use an a color that is already in use (e.g. by a platform)

  1. Click the ("Color Dropper") tool (found to the right of the color picker)
  2. Then click on the color (in the game) that you wish to use.

Transparency/Alpha

The transparency or opacity of the current color, when applied, is set by the "Alpha" setting, ranging from 0.1 to 1.0. Setting to 0.1 makes it 90% transparent (or 10% opaque) and setting it to 1.0 makes it 0% transparent (or 100% opaque).

Delete

To delete an object:

  1. Switch to "Delete" mode (shortcut "d").
  2. Click on the object(s) to delete.
  3. Switch to "Jump" mode or "Normal" mode to avoid accidentally deleting objects.

Jump

To place the player at a given position either:

Move

To change an object's position:

  1. Switch to "Move" mode (shortcut "m").
  2. Click on the object and drag it to its new position.

When moving objects that move it is easier to move them if you freeze the game first, as you change the route/starting position of the object also, which aren't necessarily based on its current position.

Free Camera

This lets you move around the level without having to navigate the player to the desired position. To use:

  1. Select the checkbox "Free Camera" (shortcut "f").
  2. Then either:

The camera can be zoomed in and out by changing the "Zoom" setting, where 0.1 is 10% zoom and 3 is 300% zoom (shortcut Ctrl+[scroll wheel]). The setting is only visible when "Free Camera" is on.

To get 100% zoom (the default) change the "Zoom" setting to 1 (shortcut [Ctrl]+0).

Useful Tools

Open/Save

Use the "Open" button (shortcut [Ctrl]+O) to upload and open a level file from your computer, or drag and drop the file on the game container.

Use the "Save" button (shortcut [Ctrl]+S) to download a file representing the current level.

Undo/Redo

All actions that modify the level can be undone and redone. Use:

Normal Mode

To switch to it select the "Normal" mode option (shortcut "n").

This mode is used to play level as it prevents any accidental modifications and hides any implementation details (e.g. "Win Region" or Button connections). Hence after doing any modifications it is recommended to then switch to "Normal" mode.

To safely browse the level and view any implementation details use "Jump" mode instead.

More complicated and interesting levels can be made by combining buttons, hit regions and switches.

Simple uses include a button activating a moving platform or a hit region turning on stone launchers.

Simple usage Guide (for a general object)

  1. Insert the control (button/switch/hit region) and the object you want to control.
  2. Switch to "Link" mode (shortcut "l").
  3. Click and drag from the button to the object it should affect.
  4. A line (of the color of the control) will appear connecting the control to the object (if the object can't be controlled nothing will happen so stop here).
  5. Activating the control will now cause the object to activate (the line "transmits" activation state, ie. "On" or "Off").

Combining buttons

To create more advanced systems it is necessary to combine controls with "Logical Connectives" (ie. and/or/not).

Example: Turning on a Stone Launcher if all switches are on

  1. Insert the switches and stone launcher.
  2. Insert "And" (which is dark blue) from the "Logical Connectives" object section.
  3. Switch to "Link" mode.
  4. Connect/Link the buttons to "And" (by clicking-and-dragging from the buttons to the "And" block).
  5. Connect "And" to the stone launcher by clicking-and-dragging from the "And" block to the launcher.
  6. The stone launcher now only turns on if all the switches are on (otherwise "And" would transmit "Off" as one of the buttons transmits "Off").

Example Continued: Inverting behaviour

To invert the behaviour of a switch or connective use "Not" (a red) block.

In the example above, to switch on the stone launcher when none of the switches are on:

  1. Insert the "Not" block
  2. Connect the "And" block to it
  3. Finally connect the "Not" block to the stone launcher.

Logical connective blocks

Any blocks with an output (transmit a value) can connect to an unlimited number of other blocks. There may be an input (an item connected/linked to a block on whose value the block's output or behaviour depends on) limit however.
NameInput limitOutput
And Unlimited Logical "and" to inputs
Or Unlimited Logical "or" to inputs
Not 1 Negates input
Recieved True? 1 Transmits "On" if it has ever recieved "On" transmits "Off" otherwise.
Hold And 1 Transmits "On" if all its inputs are "On" or at least one is still "On" since all were "On". Transmits "Off" otherwise.
Always True 0 "On"
Timeout (1s/5s/10s) 1 Transmits "On" if it has recieved "On" uninterrupted for the last 1s/5s/10s.
Randomly True (1/2, 1/3, 1/5) 0 Is "On" with probability (1/2, 1/3, 1/5), depending on which one is added.
Toggle 1 Switches from "On" to "Off" or "Off" to "On" when its input switches from "Off" to "On".
Relay 1 Copies input. So if "On" is input, it outputs "On". Often used as an access point to link to inside a component.

Visuals

Lines are drawn to show the connections between blocks. To hide the lines deselect the "Show Logic" checkbox (shortcut "g").

A line connecting two block is made thicker it "On" is transmitted through it.

If a logic block has both inputs and outputs, input lines connect to the LHS of the block and output lines come from the RHS.

For non-logic blocks (i.e NPCs, pickups, etc.), an input link connects to the outline of a semi-circle (left of object's center) and the output connects to the outline of a square (right of center).

Using "Link" mode

Some non-connective objects that can be linked to

Regions

Special objects exist that are invisible, but cause special behaviour.

Air Currents
Causes wind in a specific direction that pushes an intersecting object (player, enemy, etc.).
Snow Emitter
Emits snow, with the larger it is, the more snow.
Rain Emitter
Emits rain, with the larger it is, the more rain.
Win Region
Causes an intersecting player to win the level.
Death Region
Instantly kills any intersecting player or enemy.
Hit Region
Like an invisible button, it is "On" when a player intersects it.
To Start Region
Teleports an intersecting player to its starting position.
Message Region
Shows a message at the top of the screen (single player only) when a player intersects it.
Portal Region
See here
Payment Region
Deducts a specific amount of coins from a player intersecting it if the player has them, and then outputs "On" (like a pressed button). Also see here.

Portals

Portals are used to "jump" between regions (teleporting). They are used in pairs.

Adding

  1. Insert two "Portal Regions", which are the places where the player will teleport from and reappear at.
  2. Switch to "Portals" mode (shortcut "p")
  3. Click-and-drag from either one of the portal regions to the other. They will now be connected by a thick black line.
  4. Entering either region will now cause the player to teleport the the middle of the other region.

Multi-select

Select mode (shortcut "t" - tweak) lets you manipulate and clone multiple objects at once.

Selecting

To stop manipulating the objects you can:

It is not possible to select a "Start Position" object.

To prevent selecting "Background (visual)" or "Image as Background" (e.g. when used as a whole level background) deselect the "Select background" checkbox.

Sometimes a level may be so massive or contain so many objects that selecting by dragging a rectangle can lag, significantly. Checking the "Lazy select" checkbox will help, as the level builder will only determine what you are trying to select after you have finished dragging the rectangle, as opposed to during.

Resizing

If, in select mode, only one object is selected and it can be resized then drag handles to resize it will appear on the corners of the object. Click-and-drag a handle to resize.

Changing Left/Right or Up/Down Moving Routes

If, in select mode, only one object is selected and it moves horizontally (left/right) like an "Orange Triangle" or "Left/Right Platform" or vertically (up/down) like an "Up/Down Platform" a drag handle will appear at one end of its route. Click-and-drag the handle to adjust the route's length.

Modal Operations

Color/Image/Delete
Switch to "Color/Delete" mode then click on a selected object.
Move
Switch to "Move" mode then use click-and-drag to move the selected objects.
Clone
Switch to "Insert" mode then click on the position to insert the cloned objects at. The objects remain selected to permit further operations.

If the mode can't or doesn't manipulate the selection, nothing will happen. The objects can still be deselected by normal means.

Keyboard shortcuts

Delete
Delete the current selection
Ctrl+D
Duplicate the current selection, with the new objects slightly offset from the original ones.
Ctrl+A
Select all possible objects in the level.

Copy/Paste

All objects that can be selected with Select mode can be copied, when selected, by clicking "Copy" (shortcut Ctrl+C).

Use "Paste" (shortcut Ctrl+V) when editing the level you wish to insert the objects in.

Modify Object

The dialog displayed by clicking "Object" (shortcut "u") is used to fine tune some properties on objects that have them. These properties aren't necessary for making a level, but can be useful to adjust the impact an object has on the player.

To customise objects select them using "Select" mode, then click "Object":

The objects selected must all have the same property values.

Objects with extra settings

Collapsing Platform
Collapse Delay: Change how long it takes the platform to collapse (0.1-20).
Left/Right Moving Platform
Acceleration: Affects how fast the platform moves (20-1600). Larger values give a greater speed.
Up/Down Moving Platform
Acceleration: Affects how fast the platform moves (20-1600). Larger values give a greater speed.
(Brown/Orange/...) Triangle
Start Offset: Change how far through the route the triangle starts (range of values depends on the triangle, a distance).
Spike Row
Width: Change the width of each spike (5-100, a distance).
Spike Column
Height: Change the height of each spike (5-100, a distance).
(Targetting) Stone Launcher
Launch Delay: Set how often a stone is released (0.1-20s). Power: Affects how fast a stone launches (0.5-2.0).
(Cutting/Trigger) Laser
Range: How far the beam of the laser reaches (5-25000, a distance). Source Acceleration: For Left/Right and Up/Down lasers only. Affects how fast the source moves (20-1600). Larger values give a greater speed.
Spring
Power: Change the strength of the spring (1-10). Extension: How far the spring gets pushed back before it springs back (5-50, a distance).
Snow Emitter
Advanced: Lifetime: How long a snowflake lasts (1-20s). Larger values will give a lower frame rate when playing the level.
Rain Emitter
Advanced: Lifetime: How long a raindrop lasts (1-6s). Larger values will give a lower frame rate when playing the level.
Message Region
Text: Change the message (any text).
Switch
Default On: Does the switch start in the "On" position (checkbox).
Payment Region
Payment: Change the payment (up to 200).

When adjusting a distance, e.g. Spring Extension turning "Snap To Grid" off will let you use more values, just like when moving you can put an object in more positions. So it could be set to 38, but if "Snap To Grid" was on, you would have to use 35 or 40 instead. If you are using the slider, it will adjust more smoothly as there are more values you can set it to.

Groups

The level builder supports grouping objects together so they can be treated as one larger object, for moving, copying, etc.

Click "Group" (shortcut Ctrl+G) to bundle multiple objects together selected with Select mode. Using "Group" on multiple groups will combine them into a larger group.

Use "Ungroup" (shortcut Ctrl+Shift+G) to reverse the effects of any uses "Group" or to split a component into the contained objects, to be manipulated separately.

Links

Only "Relay (links)" can be linked to inside groups. No other link components can be linked to or from.

Cutout Mode

Cutout mode (shortcut "o" - out) is used to cut out/away rectangular sections of platforms. This makes it easier, e.g., to create a cave system or to add a hidden region in the middle of a large platform.

To remove a section from a platform (or multiple platforms) click-and-drag a rectangle over the region to cut out. The platforms are then replaced with new rectangular platforms (as if reinserting the platforms to do so) which leave the region cleared.

Apply Mode

Apply mode (shortcut "a") lets you toggle/trigger certain states on some objects by clicking on them. For example: kill an NPC or collect a pickup.

This is especially useful when game objects which are linked from as it removes the need to collect/kill the object with the player.

Effect on click

Collapsing Platform/Thin Ice
Collapse.
Destructible
Destroy.
NPCs
Killed.
Wooden Boxes
Opened.
Pickups
Collected (simulated).
Pickup Spawners (when activated)
Collect spawned pickup (simulated).
Switch
Toggled
Toggle Button
Toggled
Recieved True?
Toggle whether it has recieved true or not.
Cover/Darkness/Lightening Effect
Make it temporarily disappear.

Signs

Signs can be used to:

Available signs include (Up), (Right), (Target, e.g. for an unusual end point), and, (Writing), ).

Pickup Boxes

A box contain a particular pickup, which the player can collect by shooting at the box (opening it) to reveal the pickup.

By default a box is empty (contains nothing, see below). This can be changed:

  1. Insert the new pickup (using "Insert" mode), but place it on top of the pickup box that should contain it.
  2. The pickup will be automatically placed inside the box, replacing the previous pickup (if any). In the event that the new and previous pickups are the same it is put outside in the box.

To make a box empty again put the "Nothing (invisible)" pickup in it - this pickup does nothing and is invisible during normal game play.

The pickup inside the box (when not in "Normal" mode and the box is closed) is previewed on the front of the box.

Spawners

A spawner (e.g. "Pickup Spawner (of 1)") creates a new pickup just once at its center either when the level is started or an incoming link becomes true (if it has an incoming link). The new type of pickup to make is randomly chosen from those inside it.

Pickups are added to a spawner in the same way they are added to a "Pickup Box".

Each spawner has a fixed number of objects (1-4). Adding a new pickup to a spawner replaces the oldest one (by insertion time) with it.

Example: Random item from a Wooden Box

  1. Insert a "Wooden Box".
  2. Place the "Nothing (invisible)" pickup inside it.
  3. Place a pickup spawner of 2-4 objects on it by clicking on the center of the box. This automatically links it to the box and resizes it to cover the box.
  4. Add the objects it should select from to it. For example, on a a "Spawner (of 2)" add a "Coin" and "Triple Coin" to pick from a "Coin" and "Triple Coin".

To manually resize a spawner over a box, start inserting by clicking on an edge of the box.

Configure Level

The dialog displayed by clicking the "Level" button (shortcut "e") is used to make modifications affecting the whole level.

Dimensions

Width/Height
Change the width/height of the level.
Scale
Change the scale of all objects in the level.
Shrink To Fit
Shrink the dimensions of level to reduce blank space, while keeping all items already visible, visible.
Expand To Fit
Enlarge the level just enough to make any offscreen items or parts of items visible that weren't already visible.

Shortcuts

Move All
Move all objects in the level by a specified amount.
Falling off the bottom
Specify what happens when the player (or any NPC) falls off the bottom of the level.
Link unlinked covers
Attaches all unlinked covers to a unique hit region with the same dimensions as them.
Add Floor
Adds a platform at the bottom of the level with a specified height and which spans the level's width.
Add Background
Add a "Background" object of the current color which covers the entire level.
Add Suppress Throwing
Add a "Suppress Throwing" object which covers the entire level.

Environment

Gravity
Change strength of gravity (default 1.00, min 0.01, max 100.00).
Air Control (limited)
Sets whether a player or enemy can change direction while airborne.

Advanced

Shorten Flags (irrevocable)
Shortens internal names for objects used in links, irrevocable clears undo/redo.
Suspending Optimisation
Sets whether to use the suspending optimisation. Most of the time it works really well, however occasionally it can cause distant objects or supermassive objects to noticably move incorrectly.

Info

Positions
The least and greatest x/y values from 0 for the far edges from (0, 0) of visible objects.
Player
Position and dimensions of the player.
View height
Current height of the game display in game pixels.

If an option would have no effect (e.g. already used "Shrink To Fit") it may be greyed out.

Click away from the dialog, press escape or click "Close" to exit the dialog

Player's Start Position

You can change the position that the player is at when the level starts.

  1. At the far-top-left of the level there will be a faded rectangle the same size and color as the player. This marker represents its start position.
  2. Move the marker ("Move" mode) to the desired start location. Ensure that there are no solid objects (e.g. platforms) obstructing this position - otherwise the player may behave erratically.

Players 2, 3, ... (if existing)

To set the start position for a further player insert a "Start Position" (category "Invisible") at the desired location. The colour of this marker will be different to the first one, as it is for the next player.

Deleting a "Start Position" causes the marker for the next player (if any) to be allocated to the player owning the deleted marker, then, if a player has no marker:

  1. If it is the first player, it then starts the top-left-corner of the level.
  2. Any other player will be placed at an offset from the start position of the first player.

Images

Images can be inserted into the level. There is a size limit of approx 1MB per image. Textures used by the core game all all below 2KB (or 1/500th of the limit).

  1. Choose "Image as Background" or "Image as Overlay" from the list of items to insert.
  2. Click the righ most "Image" button to select the image to be used. A preview of the
  3. Click, and holding the mouse button down and drag to size the image. Release the mouse when it is the correct size.

To use an image that is already being displayed

  1. Click the ("Image Dropper") tool (found to the right of the image upload button)
  2. Then click on the image being displayed that your want to use

To change the image used by an image object that has already been added click on the leftmost "Image" to set the builder mode to swap image (shortcut "b"), then, with the image chosen, click on the object to change.

Touch

The level builder can be used with touch devices.

Any uses of click (in the docs) translate to touch and click-and-drag translates to touch-and-drag.

To access positions on the level obstructed by the player touch controls uncheck the "Player Controls" checkbox. This option is hidden when touch controls are not in use.

Web Browser Support

The only supported browsers are the latest versions of Mozilla Firefox and Google Chrome.

Other browsers may work, but this is not guaranteed.