Ricochet Level Creation/Teleporter: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
No edit summary
Line 1: Line 1:
[[File:Ricochet teleporter ingame.jpg|thumb|right|200px|Teleport ingame screenshot]]
[[File:Ricochet teleporter done.jpg|thumb|right|200px|Teleport in Hammer]]
[[File:Ricochet teleporter.png|thumb|right|200px|Teleport shape]]
{{Back|Ricochet Level Creation}}
{{Back|Ricochet Level Creation}}
The example of teleport can be found on <tt>rc_arena</tt> map.
This tutorial explains how to create a [http://ricochet.wiki.tf/wiki/Teleporter teleporter] in [[Ricochet]].


* Make 288"-wide space in deflector.
== Layout ==
* Create brushes as showed on image.
First, split the [[Ricochet Level Creation/Bouncer|bouncer]] into two bouncers, width 256" of empty space between.
* Paint all sides with <tt>STRIP1A</tt> texture.
 
* Rotate textures on corners 45°, then click Justify: B (Bottom) on face properties window.
Then, create brushes as shown in the drawing below, with default texture set to <code>SKY</code>:
* Place <tt>[[info_target]]</tt> entity on left and right sides of deflector, call it with different names.
 
* Place 2 <tt>[[env_beam]]</tt> entities in random places:
[[File:Ricochet teleporter drawing.png]]
** First env_beam:
 
*** '''Start Entity:''' first <tt>info_target</tt>
When you are done, select all brushes and make them single <code>[[func_wall]]</code> entity.
*** '''Ending Entity:''' second <tt>info_target</tt>
== Textures ==
*** '''Render FX:''' Normal
Select the front and back sides of the teleporter. Set their texture to <code>STRIP1A</code>. Do not change the application settings.
*** '''Brightness:''' 200
 
*** '''Beam color:''' <span style="background-color:#df00ff; color:white">223 0 255</span>
Then, select top and bottom sides of '''both''' halves of the teleporter. Set their texture to <code>STRIP1A</code> too, with Y scale being 7.5 or 10.
*** '''Radius:''' 256
 
*** '''Life:''' 1
Do '''not''' paint the invisible left and right sides, that will increase polygon count!
*** '''Width of beam:''' 8
== Beam ==
*** '''Amount of noise:''' 30
Create two <code>[[info_target]]</code> entities and place each on the each side of the teleporter, tounching the bouncer parts with their center. Call them some name.
*** '''Sprite name:''' <tt>sprites/laserbeam.spr</tt>
 
*** '''Texture scroll rate:''' 35
Then, create two <code>[[env_beam]]</code> entities at any place. Set their keyvalues to the following:
*** '''Strike again time:''' 1
{|class="standard-table"
** Second env_beam:
!Key
*** '''Start Entity:''' first <tt>info_target</tt>
!First beam
*** '''Ending Entity:''' second <tt>info_target</tt>
!Second beam
*** '''Render FX:''' Normal
|-
*** '''Brightness:''' 100
!Start Entity
*** '''Beam color:''' <span style="background-color:#df00ff; color:white">223 0 255</span>
|colspan="2"|First <code>info_target</code>
*** '''Radius:''' 256
|-
*** '''Life:''' 1
!Ending Entity
*** '''Width of beam:''' 128
|colspan="2"|Second <code>info_target</code>
*** '''Amount of noise:''' 30
|-
*** '''Sprite name:''' <tt>sprites/laserbeam.spr</tt>
!Render FX
*** '''Texture scroll rate:''' 35
|colspan="2"|Normal
*** '''Strike again time:''' 1
|-
* Add <tt>info_teleport_destination</tt>. Head must "look" to same side as teleporter.
!Brightness
* Fill teleport area with <tt>trigger_teleport</tt>. Set another <tt>info_teleport_destination</tt> as target.
|200
* Rotate teleporter same as deflector.
|100
* Make same actions with opposite teleporter.
|-
The teleporter is attached to deflector.
!Beam color
|colspan="2"|<span style="background-color: rgb(223, 0, 255); color: white;">223 0 255</span>
|-
!Radius
|colspan="2"|256
|-
!Life
|colspan="2"|1
|-
!Width of beam
|8
|128
|-
!Amount of noise
|colspan="2"|30
|-
!Sprite name
|colspan="2"|<code>sprites/laserbeam.spr</code>
|-
!Texture scroll rate
|colspan="2"|35
|-
!Frames per 10 seconds
|colspan="2"|0
|-
!Starting frame
|colspan="2"|0
|-
!Strike again time
|colspan="2"|1
|-
!Damage/second
|colspan="2"|0
|-
!Flags
|colspan="2"|Start On
|}
== Making it work ==
Create <code>[[info_teleport_destination]]</code> entity. Place its center (the '''box's''' center, not the head's center) in the middle of the teleporter, and mode it 48 units away from the teleporter. Rotate it so it points towards the opposite of the teleporter. Name it.
 
Then create the second teleporter on the same bouncer, with different names of <code>info_target</code>s and <code>info_teleport_destination</code>.
 
Cover both teleporters in <code>[[trigger_teleport]]</code> brush entity. Set Target field of each <code>trigger_teleport</code> to <code>info_teleport_destination</code>'s name of the opposite teleporter.
== Final touch ==
When you are done, select all entities of each teleporter at once (while holding down {{key|Ctrl}}) and move and rotate them so they fit the space in the bouncers.
[[Category:Level Design Tutorials]][[Category:Ricochet]]
[[Category:Level Design Tutorials]][[Category:Ricochet]]

Revision as of 03:36, 17 April 2012

Ricochet Level Creation

This tutorial explains how to create a teleporter in Ricochet.

Layout

First, split the bouncer into two bouncers, width 256" of empty space between.

Then, create brushes as shown in the drawing below, with default texture set to SKY:

Ricochet teleporter drawing.png

When you are done, select all brushes and make them single func_wall entity.

Textures

Select the front and back sides of the teleporter. Set their texture to STRIP1A. Do not change the application settings.

Then, select top and bottom sides of both halves of the teleporter. Set their texture to STRIP1A too, with Y scale being 7.5 or 10.

Do not paint the invisible left and right sides, that will increase polygon count!

Beam

Create two info_target entities and place each on the each side of the teleporter, tounching the bouncer parts with their center. Call them some name.

Then, create two env_beam entities at any place. Set their keyvalues to the following:

Key First beam Second beam
Start Entity First info_target
Ending Entity Second info_target
Render FX Normal
Brightness 200 100
Beam color 223 0 255
Radius 256
Life 1
Width of beam 8 128
Amount of noise 30
Sprite name sprites/laserbeam.spr
Texture scroll rate 35
Frames per 10 seconds 0
Starting frame 0
Strike again time 1
Damage/second 0
Flags Start On

Making it work

Create info_teleport_destination entity. Place its center (the box's center, not the head's center) in the middle of the teleporter, and mode it 48 units away from the teleporter. Rotate it so it points towards the opposite of the teleporter. Name it.

Then create the second teleporter on the same bouncer, with different names of info_targets and info_teleport_destination.

Cover both teleporters in trigger_teleport brush entity. Set Target field of each trigger_teleport to info_teleport_destination's name of the opposite teleporter.

Final touch

When you are done, select all entities of each teleporter at once (while holding down Ctrl) and move and rotate them so they fit the space in the bouncers.