Level Editor

From Rain World Modding
Jump to navigation Jump to search

The Level Editor is an application created by the Rain World developers in order to create new in-game rooms and edit existing ones. There are two officially released versions of the editor: the original editor used to create the base game, and the updated editor used for the Downpour expansion. The editor functions by using specially formatted spritesheets and a number of programmed effects and outputs PNG files that the engine interprets in 3D (as well as an accompanying text file which contains collision and gameplay info).

The Official Level Editor

Basic Features Overview

Once you've opened/created a level, you are presented with the preview screen of the level, although this preview needs to be manually updated using the "update preview" button whenever changes are made to the level for it to remain accurate. The buttons can be used to navigate between the different editors, load a new level, or save/rename your current level and export it's geometry data for use in-game. Pressing "1" will bring you back to this screen.

It's often best to start by modifying the dimensions of the room to your liking using the level size button before beginning to edit. You can change this at any time, but because you set the dimensions manually rather than visually, making changes later is more difficult and poses the risk of accidentally deleting a portion of your room if you aren't careful.

From the dashboard you can switch to the Geometry Editor - used for defining the level geometry and collision, the Tile Editor (for customizing the tiles and assets that make up the geometry created in the geometry editor), the Effects Editor (for adding procedural effects like erosion or slime, as well as things like plants or chains), the Light Editor - for painting light and shadow, or the Prop Editor (for adding additional hand placed props and decals like graffiti).

Controls Overview

View controls (numpad):

These are used for every editor view, except for the Camera and Environment editor, to scroll around the screen. Note that numlock must be enabled for these controls to have any effect.

Key(s) Function
8, 2, 4, 6 Moves view
1 (hold) Increases view scroll speed.
3 (hold) Increases view scroll speed even more.
9 (hold) Allow the view to move outside the boundaries of the level.

Menu keybinds (Number row):

These act as hotkeys to quickly switch between different editor views. These can be used in any editor view as well.

Key Function
1 Main menu
2 Geometry
3 Tiles
4 Cameras
5 Light
6 Room size


Level Settings

Level Size

Allows you to set the level's dimensions. You can set the entire level size, and border tiles. Border tiles are padding around the room, mainly for resolutions that are larger than 4:3 (It is recommended to not go under the default's numbers, as this will cause the final render to be cut off.)

To calculate the size your level needs to be, you can use the following formula:

Width = 52 * Screens + 20
Height = 40 * Screens + 3
Example Level Sizes
Screens (WxH) Width Height
1x1 72 43
1x2 72 83
1x3 72 123
1x4 72 163
1x5 72 203
1x6 72 243
2x1 124 43
3x1 176 43
4x1 228 43
5x1 280 43
6x1 332 43

Default Medium

This determines whether you can fall outside of the level or not, but death pits still work the same either way.

Light Type

The light type can either be set to ON which will use what you have done in the Light Editor, or OFF which paints everything in shadow.

Seed

This is the arrow on the fourth row of bars, which determines what seed the level will use. The seed determines random tile and prop placement, along with how effects are generated.

Rendering

Prioritize Cam

Allows you to choose a specific camera to render first.

Text Output

This outputs a .txt file of the level's geometry and collision, usable in-game.

Render Level

Renders the room's screens. When a screen is fully rendered it will be in the Levels folder even if the rest of the level hasn't finished rendering.

Mass Render

Renders every level in the selected folder.

Editors

Geometry Editor

In the Geometry Editor, you can define the elements and collision information of your room, including poles, shortcuts, room entrances, creature dens, garbage worms, room connections, and a number of other gameplay-relevant elements.

Geometry editor keybinds
Key(s) Function
Arrow keys Primary cursor to scroll through the toolbox. If the mouse is over the toolbox, the mouse moves the toolbox's cursor instead.
Mouse Primary cursor movement.
LMB Primary cursor: use current tool.
Q (hold) Use secondary cursor on the toolbox.
E,S,D,F Secondary cursor movement.
W Secondary cursor use current tool.

As an experimental feature, the developers implemented a second grey cursor with an alternate control scheme to allow two users to edit a room simultaneously. While this likely ended up being a seldom-used feature, it is still implemented and usable in the current editor.

Toolbox

Level Editor Geography Tools
Tool Function
Inverse Flips the currently selected tile between walls, and air.
Paint Walls Paints solid tiles.
Paint Air Paints non-solid tiles.
Make Slope Paints a slope. Slopes can only be placed inside corners, or at the edges of larger solids.
Make Floor Paints thin platforms that entities can stand on. The player can fall through these by pressing "down".
Rect Wall Paints solid tiles in a rectangle. Click two points to set the rectangle's dimensions and paint.
Rect Air Same as above, except for non-solid tiles.
Worm Grass Place above solid ground to spawn worm grass tendrils. The number of adjacent Worm Grass tiles determines the height of the grass.
Crack Terrain Renders as a roughly cracked fissure through the material painted on it in the tile editor. Slugcat can crawl through these tunnels. An example of this in the vanilla game is in the Depths, where there are fissures to travel beneath certain stone statues.
Horizontal Beam A pole that creatures can climb on. Slugcat can only climb these on layer 1.
Vertical Beam Same as above, except in the other direction.
Glass Wall Paints invisible walls.
Waterfall Will cause a waterfall to appear in game, with this tile at the top of it.
Level Editor Item and Batfly Tools
Tool Function
Place Rock 60% chance a Rock will spawn at this location.
Place Spear 60% chance a Spear will spawn at this location.
Spawn Fly Does nothing.
Forbid Fly Chains Prevents batflies from hanging together in specific locations.
Hive Places a batfly hive. Batflies use these to quickly travel between hives.
Examples of working shortcuts
Examples of broken shortcuts
Level Editor Shortcut Tools
Tool Function
Short Cut Entrance Places the entrance of a short cut into the room, these must be fully surrounded by ground except from the entrance side and the exit will always be aiming in the opposite direction of the entrance.

When placed on the floor, both players and creatures will fall into them, so its advised to always put a platform in the entrance instead of air in these cases.

Short Cut Places a short cut's travel dot. These can connect two short cut entrances together or connect into a specific entrance or den variation.

They can also have no destination, in which case the shortcut entrance will simply be blocked. Short cut dots can cross with each other in a + pattern and each path will always continue forwards.

Dragon Den Places a creature den. These hold the creature assigned to that den in the region's World File. Creatures can move to the closest den if they can't return to their own.
Entrance Used to connect with another room. These can be used by Slugcat and most creatures to travel across a region. The two rooms connected by this entrance are determined by the region's World File.
Scavenger Hole Allows scavengers to spawn or travel to this room as they wander through a region. Since scavengers use offscreen dens, all Scavenger Holes will share the same pool of scavengers.
Whack-A-Mole-Hole Allows creatures to travel around a room by "teleporting" between these holes. There is no limit to how many holes can be placed in the same room and they are all connected with each other.

When a creature enters one of these holes and selects a new destination there is a short period of time in which the shortcut segment glows, so they are often used without Short Cut dots.

"G" Garbage Worm den Unlike the rest of dens, its not attached to a short cut entrance. Instead they are simply placed in the ground tile where we want the Garbage Worm to spawn.

A short cut dot is not required between the short cut's entrance and the den or door it's connecting to. However, the shortcut must show as an arrow toward the den or door for the link to it to be proper.

Short cuts and their connections to the various kinds of entrances in Rain World have specific needs! Improperly making the short cut can lead to crashes, or odd behavior in game.


A list of common mistakes include:

  • Short cuts going outside of the level bounds, anything out of the white frame won't be loaded in game.
  • Short cut entrances placed directly on the surface.
  • Short cut entrances with short cut dots on any side which isn't the opposite to the entrance.
  • Creature dens or room entrances randomly floating in the room disconnected from everything.
  • Placing Garbage Worm dens connected to an entrance like the other dens.
Level Editor Layer and Misc Tools
Tool Function
Copy Backwards Copies a rectangle of tiles on the current layer to the next layer. This does not wrap around back to layer 1 if you are on layer 3.
Work Layer Changes layers from 1 to 3 and then back to 1.
Clear All Selects a rectangle that resets all tiles inside it, on all layers, back to open air.
Toggle Mirror Turns on and off a mirror tile painting mode. What you do on one side of the mirror will be copied on the other.
Move Mirror Allows you to move the location of the Mirror.
Move Level Moves the whole level in a certain direction. Place the mouse cursor outside the level, then use the arrow keys to move the level in the direction you want. It will not work if your mouse is inside the level as using the arrow keys will swap to another tool.
Empty Does nothing. Good to set as your tool if you have to tab out, as it does nothing.

Rain World levels consist of 3 layers, each representing a different depth. This layer info is represented visually through the color of tiles, and you can switch between editing on different layers with the work layer tool in the bottom left of the tool panel. Layer 1 draws in full black, layer 2 draws in green, and layer 3 draws in red. These colors will blend if multiple layers are drawn on top of each other.

Layer 1 is the foreground, and any filled tiles on this layer will have collision. This is the base layer you define for the sake of gameplay, as any air here is space you can traverse.

Layer 2 is the midground, which you can imagine as the back wall of your room. Wall climbing creatures also interact with this.

Layer 3 is the extreme background, behind the back wall of the room (for placing distant objects or giving the room a section of open sky). Nothing interacts with this at all.

Note: The tile editor defines the visual tiles and props that make up this geometry, so in order to place solid objects in the tile editor (on any layer), those tiles need to be filled here in the geometry editor. Even though the mid-ground and background do not provide any collision geometry, in order to place solid props on those layers the tiles need to be filled here in the geometry editor. Similarly, some props can only be placed on air on the layers (like fences).

Tips and Tricks

- Many of the gameplay features require that they be placed within the margins of your room (represented by the white border). An entrance or creature den placed outside of your margins will render your room impossible to enter at best, and crash the game at worst. Short Cut Entrances and Short Cuts can be placed outside the level boundary just fine, however.
- Border tiles are tiles that can't be interacted with, and are there for looks only. The room will copy the last tile from the border forever in that direction, so be careful with your geometry or you'll be able to walk out of bounds through "solid" walls or stand in the air.
- Because the toolbox cursor wraps around from top to bottom and left to right, when editing the base geometry (walls and air) it's faster to use the arrow keys to go up to reach the work layer tool to swap layers than to cycle through the whole list to reach them. Also, the rectangular wall and air tools will let you edit large chunks of your level much faster than going tile by tile.
- Because the layers move with a parallax effect, it's often necessary to extend elements on your background layer behind your other layers, otherwise the camera angle will sometimes let you see a gap to the left or right of a background wall and the layer in front of it (for example). It can be extended just a few tiles, unless you have tiles in front that are transparent and reveal behind it.
Tile editor keybinds
Key(s) Function
A-D Flipscroll through tile categories
W-S Select tile in current category
LMB Place tile under cursor
RMB Erase tile under cursor
F (hold) Use a 3x3 brush for materials
V (hold) Use a 5x5 brush for materials
Tab+x+c Clears all tiles
L Change active layer (1, 2, 3, loop back to 1)
E Set default material of the room to the currently selected material
F (hold) Force places selected tile, ignores geometry and erases colliding tiles
G (hold) Enables force placing selected tile (forcing appropriate geometry for the tile, erasing colliding tiles)
Q "Eyedropper" (selects tile/material hovered over)
Effect library keybinds
Key(s) Function
A, D Select effect category
W, S Select effect in current category
E Switches to editing applied effects
Space Adds selected effect to the stack


Applied effect keybinds
Key(s) Function
W,S Scroll through the effect stack
N Switch to effect library
Space Edit selected effect in the stack
Effect editing keybinds
Key(s) Function
A, D Scroll through options in the effect's menu
W, S Changes the current effect's menu
Space Activates selected option in the effect's menu
LMB Paints effect in the level
RMB Erases effect in the level
R Brush size up
F Brush size down
E Switch to effect stack
N Switch to effect library
Camera editing keybinds
Key(s) Function
N New camera; automatically held by mouse
E Grab a camera if none is currently held
D Delete held camera
P Place held camera
Note: A maximum of 20 Cameras can be placed per level.
Light editor keybinds
Key(s) Function
W, A, S, D Scale current light shape
Q, E Rotate current light shape
Z Toggle between drawing and erasing light
LMB Paint light
RMB (hold) Rotate light shape in direction of mouse (does not paint)
R, F Scroll through light shape library
J, L Change angle of light source
I, K Change distance of light source
Prop editor keybinds
Key(s) Function
A, D Changes prop library's category
W, S Scrolls through props in current category
LMB Place current prop
V (hold) LMB erases highlighted prop
Q, E Rotate prop left and right
Space (hold) Speed up rotation
Y, G, H, J Stretch prop
T Reset prop stretching
R Reset stretching and rotation
Y, H (on wire/tube props) Increases or decreases prop's physics node count. Lower numbers mean more taut, and higher numbers mean more loose.
X Pause wire/tube physics
Tab+X+C Clear all props
B Click mouse left to set the highlighted prop as the currently selected prop.
L Change layer
RMB Cycle depth in current layer (10 sublevels).
Space + RMB Cycle depth in current layer, reverse direction.
U, I, O, P (hold) Freeform stretch by one of the corners (U - top right, I - bottom right, O - bottom left, and P - top left.)
K Resets freeform stretching.
N Switches to editing properties menu of the prop. Things like forcing certain graffiti to be drawn instead of a random one.
M (hold) LMB opens properties of an already placed prop instead of placing a prop (same menu as above)
Z Changes prop color
F + LMB/RMB Changes between prop variants. This only applies to certain props.
Environment editor keybinds
Key(s) Function
L Set water level to mouse pointer
F Toggles between drawing water above the first layer or below it.
W Toggle water on level

Crash Avoidance and Editor Quirks

Due to the editor being extremely user unfriendly, you are likely to run into various crashes without warning. This is a list of various things to avoid doing.

Crashes

  • Do not switch to editing applied effects in the Effects Editor when there are none. The switch will be invisible, and attempting to use the space bar to select something from there will crash the Level Editor.
  • Some effects have very specific conditions and cause issues when rendering, Effects include: Thick Roots, and Shadow Plants. these ones can be okayed through until it renders.)
  • Be sure to remove tiles/props from parts of a room that will be removed if you resize the room to cut those areas out. Those tiles/props still exist, and will crash renders instantly.
  • Attempting to render with no cameras will trigger a crash.
  • Always move the prop menu into an actual category when you open it, as it keeps the last menu used and crashes if you select any entry that is not a real prop. (EX: it will have the effects menu, or tile menu.)
  • If you are using the geometry editor's Mirrored tile placer: Placing poles with the other side of the mirrored brush being outside of the room will crash the editor.

Quirks

  • The main menu is a mess when you return from using the Light Editor or the Environment Editor. Just change to any other editor (geometry or tiles, and back to main menu) to clean it. This is not a crash, but will help prevent confusion if you know to expect this.
  • To use the Move and Move Mirror tools in the editor, you must first select them, and then move your mouse outside of the room itself, before it will respond to your inputs. Usually you will only need to put your mouse over the editor, but in larger rooms, this is often an issue, as the room is "behind" the menu, and thus only changes tool selection.
  • The editor still receives inputs if you only tab out using alt-tab. When viewing another window, it's important to always minimize the editor, because there are many things that can go wrong if you're randomly clicking in the editor.
  • (Requires more confirmation) The screen during rendering should usually show the map being rendered, but it may not. In the task manager, The Rain World Editor is under the tab Adobe Projector. Sometimes the reason it is not showing is a second application called "Print driver host for applications". Closing the application seems to fix the issue.
  • The window for the application may be too big to fit on screen, and cannot be fixed since reaching the top bar or right clicking cannot be accessed to move the window.

Demo and Tutorial Videos

Region Developer Kaeporo created a tutorial for creating levels in and out of the level editor:

Mod community member Sacretis also put together a demonstration video, this time covering the creation of a room from scratch to visual polish (massively sped up for the sake of time):