Your First Eternal Silence Level/Old

From Valve Developer Community
Jump to: navigation, search
Your First Eternal Silence Level

To do: Please add or edit this to make it easier to understand.

Image Description
Es1.jpg
Place a reference model so you can align your hangar bay door. The proper models will have a _scaled or _infantry at the end of the model name.

This destroyer model is models/capships/gm_destroyer_test_infantry.mdl

Es2.jpg
Build a approximate hangar inside the model. Be sure to align it to the grid. The hangar pictured here is 2048*1024*896 hollowed outward 32 units.
Es3.jpg
Keeping the reference on the grid, align it so the edge doesn't enter the model.
Es4.jpg
Make a front wall, so the edge of the bay ends inside the wall.
Es5.jpg
Use the clipping tool to cut out the door of the hangar. Ensure to clip past the model, so there are no gaps.
Es6.jpg
Select the model, and place it in a visgroup called reference.
Es7.jpg
Texture the outside and center of the wall with esmod/genericblacktexture.

Make the wall a func_detail, so it will not mess up visibility.

Es8.jpg
Hide the reference, and build a skybox around the hangar entrance.

Make sure there is plenty of room for a gunship to clear the hangar in every direction.

Es9.jpg
Hide func_details, and cut a hole in the skybox wall around the hangar. Make sure there are no leaks.
Es10.jpg
Create a brush the size of the opening tools/toolsnodraw.

Tie it to the entity func_spaceteleport Align it in the center of the bay door, as shown.

Note: The teleport brush should only be large enough to clear the collision model of the reference.

Es11.jpg
Texture the inside wall with esmod/ngm_hangarshield or esmod/utf_hangarshield.

Change the texture scale to 1.

Es12.jpg
Place a space_camera entity near the teleport.
Es13.jpg
Place a info_vehicle_spawn in the hangar. (This will help test the transition)

Change the ship class to utf_interceptor, as it is the most maneuverable.

Es14.jpg
Create a trigger brush, and tie it to the entity func_subsystem. Call it ngm_sub; set it's initial team to NGM, and it's parent capship to ngm.

Place a info_es_spawn near it. Set it's parent subsystem to ngm_sub

Repeat this for the UTF.

Es15.jpg
The spacebox and skybox are placed near the origin. Move the map over to make room for it.
Es16.jpg
Place two space_capships near the origin. Make the ships the same orientation as the reference.

Call them ngm and utf, and set their appropriate initial teams and models.

Es17.jpg
Create a box around the ships, and a smaller one near it. These will be the spacebox and skybox respectively.

Place a sky_camera in the skybox, with it's scale set to 1000.

Note: The 3d skybox must extend past the infantry sections. If you notice a hall of mirrors effect, make the 3d skybox boundaries larger, or increase the scale.

Es18.jpg
Going back to the space_camera, name it ngm_cam1_in.

Change it's pitch yaw roll to point out into space.

Set it's partner cam to ngm_cam1_out

Set it's partner capship to ngm.

Es19.jpg
Change the func_spaceteleport's name to ngm_tele1_in

Change it's angle of normal to the space_camera's angles.

Set it's space_camera to ngm_cam1_in.

Set it to end touch based.

Es22.jpg
Enable the reference, and turn on scaling texture lock. Select the reference, the teleport, and the camera. Group these objects

Duplicate them, and scale them by .025.

Es23.jpg
Change the copy's reference prop to the scaled down version.
Es24.jpg
Turn off grid alignment, and in the 2d views align the group as best as you can.

Delete the scaled reference prop. or Delete the space_capship, and change the prop_static reference prop to the space_capship for perfect alignment.

Es26.jpg
Rename this space_camera to ngm_cam1_out.

Change it's partner cam to ngm_cam1_in

Change it's scale to space.

Clear the capship value.

Es27.jpg
Rename the func_spaceteleport to ngm_tele1_out

Change it's camera to ngm_cam1_out

Set end touch based to no.

Es28.jpg
Fill the transition box with a playerclip. This stops players from exiting the ships outside the bay doors.
Es29.jpg
Hollow out a trigger, and tie it to func_desertion. This turns players around before they crash into the boundaries.
Es30.jpg
Change the 2d skybox to something interesting.
Es32.jpg
Done! Be sure to compile vis to get the spacebox to work properly