Editor Interface

From Wolfire Games Wiki
Revision as of 05:37, 23 October 2017 by Merlyn (talk | contribs) (Windows menu)
Jump to: navigation, search


Introduction

The editor user interface

This page details all the interface elements and actions in the Overgrowth level editor. It can be accessed by pressing the Editor button on the main menu, selecting one of the levels and then pressing escape when in the game.

Camera Movement

Action Control Behavior
Forward W Moves camera forward.
Backward S Moves camera backward.
Left A Moves camera left.
Right D Moves camera right.
Up Shift + W Moves camera up.
Down Shift + S Moves camera down.

Editor Interface

The bar across the top of the window is the editor menu. Many editor functions can be found here, but some functions can only be reached via hotkeys for now.

'Cmd' refers to the '⌘' key on Macs, and the 'ctrl' key on PCs.

File menu

Contains file operations for loading and saving levels.

The editor "file" menu
Button Hotkey Effect
New Level - Opens a new empty level in the editor.
Open Level... - Opens a file browser where you can pick what level to load (starts in Data/Levels directory).
Open Local Level... - Opens a file browser where you can pick what level to load (starts in last used directory).
Open Recent - Re-open one of the most recently opened levels in the editor.
Open Campaign Level - Open one of the levels from the main Overgrowth story mode.
Save Level cmd+s Overwrites the currently opened level file with any changes you made.
Save As... - Opens a file browser where you can pick a new or existing file to save the level to.
Back to main menu - Leave the editor and return to the main menu.
Quit - Quit the game.

Edit menu

Contains basic editing functions. Also contains properties for the level.

The editor "edit" menu
Button Hotkey Effect
Undo cmd+z Undo the most recent action.
Redo cmd+shift+z Redo the most recent action.
Cut cmd+x Puts the selection into the clipboard and removes the selected objects.
Copy cmd+c Puts the selection into the clipboard.
Paste cmd+v Pastes the clipboard on the cursor position.
Select All cmd+a Select all of the objects in the level.
Deselect All q Clear the current selection.
Reload All Prefabs - Force a reload of all prefab objects in the level.
Set Level Params... - Set global level parameters (sun settings, sky, fog, HDR, etc).
Set Level Script... - Select what script to use for this level.
Set Sky Texture... - Opens a file browser where you can pick what sky texture to use.
Edit static meshes cmd+1 Toggle ability to select non-moving objects (rocks, etc).
Edit decals cmd+2 Toggle ability to select decals.
Edit gameplay objects cmd+3 Toggle ability to select characters, hotspots, etc.
Edit lighting - Toggle ability to select lights.
Play level 8 Enter play mode.
Media mode - Enter a disembodied camera mode, for taking screenshots and videos.

Selected menu

Contains operations for working with the current selected objects.

The editor "selected" menu
Button Hotkey Effect
Go To Selected f Move the camera to frame the selected objects.
Delete backspace Delete the selected objects from the level.
Group cmd+g Merge the selected objects into a group.
Ungroup cmd+shift+g Break up all groups that are selected.
Set Selection Script Params... - Open up the selected object window, and expand the "Script Params" section for the selected objects.
Save Selection... - Open up the file browser to save the selection as an object template.

Object templates can be loaded like any other object. Script params and transform are saved. If you edit a template, it won't be updated in any level it is placed in.

Prefab Save - Save any changes to the selected prefab to a file, or create a new prefab file from the selection.

Object prefabs can be loaded like any other object. Script params, transform and connections are saved. If you edit a prefab, it will automatically be updated in all levels it is placed in.

Prefab Save As... - Open a file browser to save the selection as a new prefab file.

Object prefabs can be loaded like any other object. Script params, transform, and connections are saved. If you edit a prefab, it will automatically be updated in all levels it is placed in.

Load menu

Contains operations for loading and spawning objects into the level.

The editor "load" menu
Button Hotkey Effect
Load item... - Open a file browser to pick an item to spawn in. After loading, click in the level to spawn the object.
Open recent... - Pick an item you've recently spawned to spawn another instance. After loading, click in the level to spawn the object.
<Rest of menu> - Search or click on an item from a list to spawn in. After loading, click in the level to spawn the object.

Hover over an item to see a thumbnail preview of the item.

Lighting menu

Tools for editing global illumination.

Note: Use of this menu is deprecated. We recommend you use sun lighting, and Dynamic Light objects (in Load menu) instead.

Button Hotkey Effect
Calculate GI first pass - Calculates (or re-calculates) first pass for light probes to give a quick preview of lighting.
Calculate GI second pass - Calculates second pass for light probes to give a better result (takes longer).
Probe lighting enabled - Enable probe lighting.
Show probes through walls - Toggle rendering of light probe previews through walls.
Show tet mesh - Toggle rendering of tetrahedral mesh lines (generated by light probes) to see how they are connected.
Show probes - Toggle rendering of light probe previews.

Nav Mesh menu

Tools for nav mesh generation, loading, saving and viewing.

The editor "nav mesh" menu
Button Hotkey Effect
Create - Generates a new navigation mesh.
Save - Save the current nav mesh to disk.
Load - Load a previously saved nav mesh from disk.
View mesh - Toggle preview render of the nav mesh.
View collision - Toggle preview render of the collision mesh the nav mesh is based on.
View hints - Toggle preview render of navmesh_hint objects (which force mesh generation).
View region - Toggle preview render of navmesh_region objects (which restrict mesh generation).
View jump nodes - Toggle preview render of navmesh_connection objects (jump nodes).
Cell Size - Change the width of cells in the nav mesh

smaller: handles smaller gaps, slower to build.

Cell Height - Change the height of cells in the nav mesh

smaller: finer control on ramps, slower to build.

Agent Height - Change the height of fake player used to create nav mesh

smaller: handles lower overhangs, more likely to be unreachable by real characters.

Agent Radius - Change the width of fake player used to create nav mesh

smaller: handles smaller gaps, more likely to be unreachable by real characters.

Agent Max Climb - Change the max height of blocks that fake player will climb to create nav mesh

too high: real characters can't climb it.

Agent Max Slope - Change the max angle of ramps that fake player will walk up to create nav mesh

too high: real characters will go up steep hills.

Dialogue menu

Tools for dialogue editing.

The editor "dialogue" menu
Button Hotkey Effect
Edit Selected - Start editing the selected dialogue (make sure you select it first!).
Load Dialogue - Load a previously saved dialogue text file.
New Dialogue - Create a new dialogue object (click this, then click to place it in the level).

Windows menu

Launch various editor windows, color picker, and debug windows.

The editor "windows" menu
Button Hotkey Effect
Scenegraph y Open level properties, and a searchable list of items in the level.

Hint: Click items in the list to select/deselect them, and hit F to view the selected items.

Selected u Open the properties for the selected objects.
Single Selected i Open the properties for a single selected object. This menu doesn't require you to drill down to edit properties.
ColorPicker cmd+p Open the Color Picker to let you tint objects. http://wiki.wolfire.com/index.php?title=Editor_Interface#Color_Picker
Collision Paint - Open the Collision Paint menu to let you edit physics properties on objects or individual surfaces.
Performance - Open a window to monitor performance, and view a list of loaded file assets/loaded textures, for debugging.
Save - Open a window to view data in the save file, for debugging.
State - Open a window to view a hierarchy of loaded script contexts, for debugging.
Sound - Open a window to view a list of loaded sounds, for debugging.
Debug Window - Open a window to view debug text (shows various game and editor state).

Functions Without Buttons

Some functions are only reachable via hotkeys, here are a list of those.

Action Control Behavior
Make player-controlled Shift+Cmd+P Toggles whether a character is controlled by a human or by AI. A human-controlled character's spawn box has a green outline, an AI-controlled character's box has white outlines. If two characters are set to be human-controlled Overgrowth will start in split-screen mode the next time game-play is resumed from editor mode. The second player will be controllable via a USB controller.
Parameter Editor U (with object selected) Opens the parameter editor to modify parameters of the selected object.
Palette Editor Cmd+P (with character selected) Brings up a dialog to modify colors of different parts of the character.
Color Picker Cmd+P (with object that is not a character selected) Brings up a dialog that can be used to tint the color of any selected objects.
Spawn Dead Cmd+K or Ctrl+K (with character spawn selected) Makes selected characters spawn dead. It will spawn at the point it went into ragdoll mode (which may cause it to spawn "dead" while standing up). If you want to update the pose for the dead body then move the body, select the spawn point, and hit the hotkey again to save its new position.
Spawn Alive K (with character spawn selected) Makes selected characters spawn alive.

Parameter Editor

Object parameter editor

You can bring up the parameter editor for an object by selecting it and pressing U, or for the level itself by clicking the "Parameters" button in the home tab of the ribbon. It allows you to change different parameters depending on what object you have selected. For instance if you use it on a regular static object you can precisely adjust its position, scale and rotation. If you use it on a character you can adjust a large number of parameters, including its field of view.

Note: You can visualize the field of view of a character by going to ../Overgrowth/Data/Scripts and opening up aschar.as and changing the row saying "const bool _draw_stealth_debug = false;" to "const bool _draw_stealth_debug = true;". Then open up enemycontrol.as and change the line saying "float fov_opac_mult = 0.0;" to "float fov_opac_mult = 1.0;". Save both files and tab back into the game and you should see a visualization of every character's field of view.

Level Parameters

Open up the parameter editor for the current level by clicking the the "Parameters" button in the home tab of the ribbon. Here is a description of what each parameter does.

Parameter Description
Achievements Decide which challenges you can complete on the level, they appear on the level end screen.
Fog amount Sets the thicknoess of the atmosphere and thus how far you can see.
HDR Black point Sets what brightness should be regarded as black.
HDR Bloom multiplier Decides how much light pixels bleed.
HDR White point Sets what brightness should be regarded as white.
Level Boundaries If this is checked characters will be pushed back into the level when they try to go past a certain point.
Objectives Set the goal of the level.
Sky Brightness Adjust how bright the sky should be.
Sky Rotation Move the sky around.
Sky Tint Makes the sky have a specified color.

Object Selection

Here are the different ways you can select objects.

Action Control Behavior
Select single object double-left-click on object Selects clicked on object and deselects all other objects. If the object is part of a group, the whole group is selected. A box around the object indicates that it is selected.
Toggle-select objects shift + double-left-click on objects Toggles selection of clicked on object. Preserves existing selections.
Box select objects left-click + right-click + drag, or left-click + 'b' + drag Selects all objects whose centers lie within box drawn on screen. Deselects all other objects.
Box add to selection shift + left-click + right-click + drag, or shift + left-click + 'b' + drag Adds all objects whose centers lie within the drawn box to the selection. Preserves existing selection.
Select decal or object that is under another decal mouse wheel up/down When you have 2 or more objects or decals on top of each other, you can select at least 1 decal or object, put your mouse cursor on top of the one you want to select, then use the scroll wheel to switch your selection between the objects.
Select all cmd-a Selects all objects.
Deselect all double-left-click away from all objects Deselects all objects.
Object information

When you select an object some useful information will appear on the left hand side. It'll show you what xml file it is created from, its unique object ID and what type of object it is.

Transformations

For all transformations:

  • In order to transform an object you must first select it.
  • Hold ctrl to make movements snap to half-meter increments.
  • Hold alt to clone and transform the selected objects, leaving the original objects behind.
  • Left-click transforms objects on all axis. Right-click transforms on the two axis that are perpendicular to the side of the bounding box you click on. Holding shift and right click locks the transformation to the axis parallel to the bounding box face you click on.
  • Groups are transformed around the group center. Ungrouped objects, even if multiple are selected and transformed at once, are transformed around their own individual centers.

Translation

Set tool to 'translation', or set tool to 'omni tool' and hover mouse over central region of a bounding box face, or set tool to 'omni tool' and hold 't'.

Action Control Behavior
Camera relative left-click + drag Translates clicked on object along plane parallel to the screen.
Locked to plane right-click + drag Translates clicked on object along plane of clicked on face.
Locked to line shift + right-click + drag Translates clicked on object along normal of clicked on face.
force decal(s) to map only one object/group hold i selected decal will only map with that object that is directly underneath your mouse
force decal(s) to project only on selected objects press o selected decal will only map with that object that is directly underneath your mouse
projection box/angle press p to make projection box for decal

Scale

Set tool to 'scale', or set tool to 'omni tool' and hover mouse near bounding box vertices, or set tool to 'omni tool' and hold 'e'.

Action Control Behavior
All dimensions left-click + drag Scales clicked on object in all dimensions (x, y, and z) at once.
Locked to plane right-click + drag Extends clicked on object along plane of clicked on face.
Locked to line shift + right-click + drag Extrudes clicked on object along normal of clicked on face.

Mirror

Just use the right-click scale tool, and scale down the object until it flips and its mirror image begins scaling up!

Rotation

Set tool to 'rotation', or set tool to 'omni tool' and hover mouse near bounding box edges, or set tool to 'omni tool' and hold 'r'.

Action Control Behavior
Free left-click + drag Rotates clicked on object as if you are pushing the surface of a ball.
Locked to axis right-click + drag Rotates clicked on object about normal of clicked on face.

Warnings

Just below the ribbon on the left side is a space for warnings. These warnings will tell you if the nav mesh, ambient occlusion or baked shadows needs to be updated.

Item Browser

The item browser

The item browser is used to browse for items that can be spawned in the levels. It is brought up by pressing the Load Item button under the Home tab. To spawn an item, click it and then click in the world to create the item on that location.

This list does not necessarily contain all the objects that can be spawned as all objects need to be manually added to the list. A file browser can be brought up by pressing the folder icon just under the tabs at the top. That file browser can be used to try loading any xml file, which is useful if you're trying to load a custom object that has not been added to the item browser for instance. The types of items that can be spawned are objects (static models), characters, weapons, hotspots, decals and spawn points.

Along the top of the window there are tabs for different categories of items. In the bottom right there is a slider to change the size of the thumbnail images as well as a grip that can be clicked and dragged to resize the window. A search field that searches in the currently open tab is located under the tabs to the right.

Hovering your mouse cursor over a thumbnail image causes a heart icon to appear on the thumbnail. If that heart icon is pressed the object is added as a favorite. To sort out any object that is not a favorite from the view, press the heart button right under the tabs at the top of the window. The favorites do not persist between closing and opening the item browser.

Color Picker

Two crete blocks. The left is the original, the right has had it's color altered by the color picker.

The Color Picker is used to tint the color of selected objects. It is opened by pressing CTRL+P (For Mac users: Command+P). The color picker consists of a color-gradient box, a rainbow slider, two boxes of different sizes showing the basic chosen color, RGB values, a hex value, and an overbrightness slider. Increasing overbrightness makes the color brighter.

Save Selected Objects

Once you have created something you wish to use elsewhere, press Ctrl+Shift+S (On Windows) or Command+Shift+S (on Mac) to open an object saving dialog. This way, you can save buildings, trees or obstacle courses made from many parts as a single XML object, ready to be imported back to Overgrowth.

Sun Editor

To edit the sun, find it in the sky and double-click it. Now you can click and drag on the circle to change the intensity of the sun, click and drag on the dot to change the color and click and drag on the sun itself to move it around the sky.

Dialogue Editor

The dialogue editor is used to create scenes with different camera angles, text and poses. It is commonly used to give context and progress the story in a level.

Getting Started

Write the dialogue

Create a text file in your mods Dialogues folder (../Overgrowth/Data/Dialogues) and write the dialogue in it like this.

#name "Mirage"
#participants 1
say 1 "Thorn" "You there!"
say 1 "Thorn" "Do you have any..[wait 0.4] water?"
  • The #name "Mirage" is the name of the scene. This is given to a dialogue hotspot on so it knows which dialogue to activate.
  • The #participants 1 is how many characters there are in the scene. The numbered boxes above the dialogue object are connected to spawn points to decide which character is which in this scene.
  • say at the beginning of a line is used to make someone say something.
  • The 1 is the ID of the participant that should say the dialogue, this decides who moves their mouth when the dialogue appears.
  • "Thorn" is which name should appear for the dialogue
  • The text within the quotes at the end of the line is the dialogue itself.
  • The [wait 0.4] will make the dialogue text pause for 0.4 seconds before continuing to display the next text.

Save and close the file.

Set up the scene

Open up your level in the game, go to the Dialogue tab in the ribbon and click Load Dialogue. Select the dialogue file you created and click in your level to spawn it there.

There is a small box above the dialogue object that you just created. Select this object and alt-click on a character to tell the game that the participant with ID 1 is that character.

Select the box and press Edit Selected, bringing up the text of the dialogue on the screen. Use the arrow up and down keys to select what line in the scene you want to edit. Now press Toggle Recording, which creates a few more useful objects in our scene:

  • Camera (with accompanying preview window)
  • Torso control
  • Head control
  • Eye control

Move the camera to choose where the camera will be when the dialogue reaches the selected line, scale it to zoom in or out. Move the torso, head and eye controls to choose where the character's torso, head and eye should be pointing at that point. You need to scale up the torso and head controls for them to have any effect.

Press Load Pose and find the files with names that start with r_dialogue, find one that you think might fit and load it to make the character take that pose when the scene loads.

Press Preview Dialogue to test the scene. When you're happy, click Toggle Recording again to turn it off and press Save Dialogue to save your changes to the scene.

Trigger the scene

Now we have the scene set up, but we don't have anything that triggers it yet. We can use a dialogue hotspot to make that happen. So go to the Home tab and press Load Item, go to the Hotspots tab, click the Start Dialogue hotspot and click on the ground in your level. This should spawn a wireframe cube with a green sign icon in.

The dialogue will trigger when the player enters this hotspot, so place it where it will trigger when you want it to. Just make sure the player spawn is not inside of the hotspot, as that won't work when the level is restarted.

Press U with the hotspot selected and change the Dialogue property to be the same as the #name setting in the dialogue you want to trigger. If you've followed this example, that would be Mirage. If you don't want the dialogue to automatically trigger when you enter the hotspot, uncheck the "Automatic" checkbox.

Now save your level, start playing, enter the hotspot, and the dialogue should trigger!

Spawn Corpse

To make a character spawn as a corpse, select it and press ctrl/cmd + K to turn on corpse mode. The character will now be a corpse when it spawns. If you want to place the corpse in a specific location or position, you can drag the corpse to where and how you want it, then hit ctrl/cmd + K with the spawn box selected a second time to save its resting position as its new corpse spawn location/position.

If you want to make a character spawn normally instead of as a corpse, select its spawn point, and press K.