Difference between revisions of "Intruder Editor Tutorial"

From Superboss Games Wiki
Jump to navigation Jump to search
Line 7: Line 7:
  
 
== Navigating Unity ==
 
== Navigating Unity ==
 +
 +
[[File:Startup.png|400px]]
 +
 +
This is the basic layout of a Unity project window. Each area highlighted serves a purpose.
 +
The scene view (Green labeled 1) Is the navigation viewport.
 +
The inspector tab (Blue labeled 2) is for object properties for objects placed in the scene view.
 +
The project tab (Purple labeled 5) and project asset navigator (Orange labeled 3) work together for browsing project files.
 +
The project tab is used for navigating the project's folders, while the project asset navigator is used for browsing the contents of the project folders.
 +
The hierarchy tab (Red labeled 4) is used for organizing game objects in the scene view. These are the basics for navigating the unity editor for map making.
  
 
=== Scene View ===
 
=== Scene View ===
Line 26: Line 35:
 
[[File:Capture3.PNG|400px]]
 
[[File:Capture3.PNG|400px]]
  
Listed here are all the objects in your scene. Keeping everything organised will make your life much easier. If you drag one object onto another one in the hierarchy, it will become a child. Transforming a parent will also affect all of its children, so you can use this to keep related items together. In complicated scenes, the search box is also very helpful, so make sure you give things informative names.
+
Listed here are all the objects in your scene. Keeping everything organized will make your life much easier. If you drag one object onto another one in the hierarchy, it will become a child. Transforming a parent will also affect all of its children, so you can use this to keep related items together. In complicated scenes, the search box is also very helpful, so make sure you give things informative names.
  
 
===Project Navigator===
 
===Project Navigator===

Revision as of 11:47, 10 August 2018

Getting the Map Maker

Follow the instructions at the official Map Maker Thread to obtain the map maker. [1]

Once you have a fresh new unity project open, you’re ready to begin making a map!


Navigating Unity

Startup.png

This is the basic layout of a Unity project window. Each area highlighted serves a purpose. The scene view (Green labeled 1) Is the navigation viewport. The inspector tab (Blue labeled 2) is for object properties for objects placed in the scene view. The project tab (Purple labeled 5) and project asset navigator (Orange labeled 3) work together for browsing project files. The project tab is used for navigating the project's folders, while the project asset navigator is used for browsing the contents of the project folders. The hierarchy tab (Red labeled 4) is used for organizing game objects in the scene view. These are the basics for navigating the unity editor for map making.

Scene View

The scene view is your main window into the world you are building. Moving your camera can be done in several ways. Middle click will pan. The Right Mouse Button allows you to look around. While holding down RMB, WASD, Q and E will allow you to fly through your scene. Hold shift to increase your speed. With an object selected, pressing F will focus on that object: the camera will fly to it. If you hold Alt, left clicking and dragging will orbit the point your camera is currently looking at.

Scene Gizmo(for cheaters)

Click the different axes of this Scene Gizmo to Get Top, Right, Front, etc. views. Disable or Enable perspective by clicking the Persp text underneath it. This can be helpful for lining things up.

Capture2.PNG

Similarly, these settings can be handy, particularly setting the rendering mode to wireframes.

Object Hierarchy

Capture3.PNG

Listed here are all the objects in your scene. Keeping everything organized will make your life much easier. If you drag one object onto another one in the hierarchy, it will become a child. Transforming a parent will also affect all of its children, so you can use this to keep related items together. In complicated scenes, the search box is also very helpful, so make sure you give things informative names.

Project Navigator

Capture4.PNG

This is where you’ll find all the prefabs included with the map maker, and any that you create yourself. As above, the search bar is very useful.

Creating Objects

Capture5.PNG

Geometric Objects

Since we are using Unity, many things available in the engine can be used to build levels. Basic objects such as cubes, spheres and cylinders can be created with the GameObject menu.

Lights

Capture6.PNG

Basic Light Settings
Range the maximum distance the light will be cast.
Intensity the brightness of the light.
Cookie allows you to add a mask to a light using the alpha channel of a texture. You can use this to make a light brighter or darker in different places. Think of the light pattern of a flashlight, or a bat signal.
Shadow Type Hard shadows are hard, Soft Shadows are softer. Fiddling with the shadow settings can make them softer or harder, and you can also manipulate the resolution of the shadows cast, to trade off quality against jaggedness.
Culling Mask Use this to make your lights affect only particular groups of objects.
Lightmapping If you want to bake lightmaps into your scene, you can make particular lights affect only the lightmap, or only
Forms Of Lights
Directional Lights These are for simulating the sun. Light from these will be cast across the entire scene, and all shadows will be parallel. The intensity of the light does not vary with distance from the light’s object.
Point Lights The bread and butter of lighting your stage. These emit light in all directions from a particular point, which falls off with distance.
Spot Lights Spot lights emit light in a cone. Use these to add more directionality to your lighting. For example, to light up one side of a room without affecting the other side. You can set their angle.
Area Lights These only affect baked lightmaps -- they emit light from one side of a plane.

Custom Models

also empty, rab pls fix

Manipulating Objects

Tool Name Image Shortcut Description
Translate Capture7.PNG W Use this to move objects around your scene. Each handle moves the object relative to a particular plane. Hold shift to move the object in the plane perpendicular to the camera’s direction. If you hold V, you can select any vertex of the object being manipulated and, by dragging, snap it to other vertices in the scene.
Rotate Capture8.PNG E Rotates an object on it's X, Y, or Z axis, can also be a combination of 2 or all 3
Scale Capture9.PNG R Used to scale object along X Y or Z axis

For each of the above gizmos, hold ctrl to transform the object in increments. More precise positions can be set using the transform dialogue in the Inspector when you have an object selected.

Capture10.PNG

Adding Animations

also empty, rab pls fix

Custom Skyboxes

also empty, rab pls fix

Rigidbodies

If you add a RigidBody component to an object, it will be physically simulated in the world. Explosions and collisions will cause them to move. If you additionally tag the object with the RigidBody as metal, it will react to being shot as well. Place a ResetProxy script on it as well to make it return to its initial position when the round resets.

Rigidbody properties
Mass How heavy the object is -- the higher the mass, the less easy it is to move.
Drag how much it will slow down when moving.
Angular Drag how much its rotation will slow down over time.Check any of the constraint boxes to restrict the object’s movement only to certain axes.

Overview of Prefabs and Scripts

Adding proxies to your scene is a simple matter of dragging them from the assets pane into your scene.

Proxies etc.

Spawn Points

To play you must place spawn points. By default, SpawnA represents guard spawn; SpawnB, intruders. If multiple are distributed across the map, players will spawn among the different points.

Briefcase

Where the briefcase will be placed.

Goal Point

Where intruders need to take the briefcase to win.

Doors

Door Options
Lock Options by default, doors will be randomly locked or unlocked at the start of every round. Check “Always Lock” or “Never Lock” to change this.
Sliding Door make the door open by sliding instead of swinging.
Partner Door By setting this reference to another door, both doors will be unlocked or locked in tandem. That is, unlocking one will also unlock its partner.
Reverse changes the direction that a door will swing.

Glass

Scale glass proxies to any size you like and place them into your map. The only caveat is that a glass proxy’s Z scale will have no effect on the thickness of the glass. The “Hp” setting in the proxy determines how many bullets are required to shatter this pane of glass.

Mortar

Just plop this bad boy down in the scene and it will work. Using the main body allows you to aim the cannon. Using the cannon itself launches a shell.

Pickup

Use the dropdown box to choose what item this pickup represents. Available items include sniper rifles, binoculars, red dot sights, bananas, and sheilds.

Zip Line

Move the blocks representing the start and end points of the zip line to determine where it goes. A line will be rendered between the two when the level is played in-game. The Number of Vertices and Max Gravity Dangle settings allow you to modify how the zipline will droop. Negative speed settings are not advised.

Keypad

Type a message into the provided text box. The string {1} will be replaced by the door code of an associated Keypad.

Note

Locked Object

Observe Cam

Place this in your scene to set the default view of your level. This is what players see behind the team selection menu when first joining the server.

Ladder

These ladder volumes allow the player to move freely wherever they are looking within their limits. They are resizable.

Water Level

To make actual swimmable water, simply use a ladder volume. The water level proxy will add sound effects and blur if the player is inside any ladder beneath it. This will not add any visual effects to your water, however, which you will have to add yourself using other unity tools. Unity comes packed with some water assets which you can use for this purpose.

Wind Proxy

Add one of these to your map to control the wind speed. The speed on the map will vary randomly between min and max. If you create a cloth object from GameObject -> Create Other -> Cloth, you may increase the size of the Flags array and add the object to the list. It will then blow with the wind.

Equipment Manager

Use this to modify which equipment each team will start with, and how much ammunition.

Mover

Scripts

Attach scripts and other components to objects either by clicking the Add Component button in the inspector, or dragging a script from the Project Browser into the inspector.

Activator

ActivateActivator

AnimateColor

Attaching an AnimateColor script to an object will allow you to animate its main material’s colour with the old-style Animation system.

DestructibleProxy

Attach this to an object to make it destructible by gunfire.

Life how many shots it takes to destroy this object.
Particle Effect if this points to an object with a particle system on it, a copy of that object and its particle system will be created at the location of the destructible proxy whenever it is shot. You may wish to add a Timed Object Destructor (see below) to the particle system object to make sure duplicates do not sit around
Destroy Particle Effect this behaves the same way as the above particle effect, but only triggers when the object is destroyed.
Pitch If you place an audio source component on the destructible object, its audio clip will be played when the object is destroyed. X and Y represent the min and max pitch shift of that clip. A value will be randomly chosen between these values and the sound pitched accordingly. As with music, 0.5 represents 1 octave down, 2 an octave up. A value of 1 means no shift at all.

Timed Object Destructor

When this object is created, it starts counting down. After the number of seconds specified in the Time Out field, the object will be destroyed.

GravityProxy

Add this script as a component to any object in your scene to change the gravity. Changing the gravity will not affect player movement when they are not ragdolled, but it will cause phyically-simulated things such as world objects, ragdolls, grenades, and particles, to behave differently. Normal gravity is -9.81.

PlayAudio

Tags

Metal

Sparks when shot. Bullets will pass through the object. If a RigidBody is attached to the object, bullets will affect it.

Slippery

Causes player to fall over when standing on the object.

SuperSlippery

Causes player to fall over if ever touching the object

Dirt

Dirt footstep noises.

Carpet

Carpet footstep noises.

ThickMetal

Sparks when shot, makes a metallic noise.

Deathzone

Kills any player touching the death zone.

Exporting and Publishing

Screenshot 11.png

Exporting and Testing

Once you have a level, you can test it with the Play Scene in Intruder Menu. This is an offline test only, for online use you must upload it first.

Once you are happy with your level, you may upload to the server by opening the Login & Upload[ctrl + U] menu. Once you have logged in with your usual Intruder login detail press the Upload button, MAKE SURE YOU LIKE THE MAP NAME YOU HAVE CHOSEN BECAUSE IT IS PERMANENT. Once the upload has completed, you can play your map online with other people from the custom server browser inside Intruder!

Tips

Check out the Demo level that’s included with the map maker download. There are many examples of the various prefabs working in a level for you to examine. Check the forums for released unity projects as well. Study awesome maps and maybe you’ll be able to make your own maps more awesome.

Make sure to remove any cameras from your scene. They will interfere with rendering.

Ctrl+D duplicates objects.

To make the iteration cycle a little faster, launch your level in offline mode with ctrl+i, and leave the game open. Any future changes you export can be realised in-game by typing the command /res in the chat. This will reload the level from your local copy of the level.

When in offline mode, use the /lll command in the chat to choose any level file to load.