Ricochet Level Creation/Teleporter: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
 
(badly moved multipage)
 
(7 intermediate revisions by 4 users not shown)
Line 1: Line 1:
[[File:Ricochet teleporter ingame.jpg|thumb|right|200px|Teleport ingame screenshot]]
{{LanguageBar|title = Ricochet Level Creation/Teleporter}}
[[File:Ricochet teleporter done.jpg|thumb|right|200px|Teleport in Hammer]]
[[File:Ricochet teleporter.png|thumb|right|200px|Teleport rectangle]]
{{Back|Ricochet Level Creation}}
The example of teleport can be found on <tt>rc_arena</tt> map.


* Make 288"-wide space in deflector.
This tutorial explains how to create a teleporter in [[Ricochet]].
* Create brushes as showed on image.
 
* Paint all sides with <tt>STRIP1A</tt> texture.
== Layout ==
* Rotate textures on corners 45°, then click Justify: B (Bottom) on face properties window.
First, split the [[Ricochet Level Creation/Bouncer|bouncer]] into two bouncers, width 256" of empty space between.
* 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:
Then, create brushes as shown in the drawing below, with default texture set to <code>NULL</code>:
** First env_beam:
 
*** '''Start Entity:''' first <tt>info_target</tt>
[[File:Ricochet teleporter drawing.png]]
*** '''Ending Entity:''' second <tt>info_target</tt>
 
*** '''Render FX:''' Normal
When you are done, select all brushes and make them single <code>[[func_wall]]</code> entity, with rendermode "texture" (2) and renderamt 255.
*** '''Brightness:''' 200
 
*** '''Beam color:''' <span style="background-color:#df00ff; color:white">223 0 255</span>
== Textures ==
*** '''Radius:''' 256
Select the front and back sides of the teleporter. Set their texture to <code>STRIP1A</code>. Do not change the application settings.
*** '''Life:''' 1
 
*** '''Width of beam:''' 8
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.
*** '''Amount of noise:''' 30
 
*** '''Sprite name:''' <tt>sprites/laserbeam.spr</tt>
Do '''not''' paint the invisible left and right sides, that will increase polygon count!
*** '''Texture scroll rate:''' 35
== Beam ==
*** '''Strike again time:''' 1
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.
** Second env_beam:
 
*** '''Start Entity:''' first <tt>info_target</tt>
Then, create two <code>[[env_beam]]</code> entities at any place. Set their keyvalues to the following:
*** '''Ending Entity:''' second <tt>info_target</tt>
{|class="standard-table"
*** '''Render FX:''' Normal
!Key
*** '''Brightness:''' 100
!First beam
*** '''Beam color:''' <span style="background-color:#df00ff; color:white">223 0 255</span>
!Second beam
*** '''Radius:''' 256
|-
*** '''Life:''' 1
!Start Entity
*** '''Width of beam:''' 128
|colspan="2"|First <code>info_target</code>
*** '''Amount of noise:''' 30
|-
*** '''Sprite name:''' <tt>sprites/laserbeam.spr</tt>
!Ending Entity
*** '''Texture scroll rate:''' 35
|colspan="2"|Second <code>info_target</code>
*** '''Strike again time:''' 1
|-
* Add <tt>info_teleport_destination</tt>. Head must "look" to same side as teleporter.
!Render FX
* Fill teleport area with <tt>trigger_teleport</tt>. Set another <tt>info_teleport_destination</tt> as target.
|colspan="2"|Normal
* Rotate teleporter same as deflector.
|-
* Make same actions with opposite teleporter.
!Brightness
The teleporter is attached to deflector.
|200
[[Category:Level Creation Tutorials]][[Category:Ricochet]]
|100
|-
!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]]
[[Category:Ricochet]]

Latest revision as of 03:57, 13 July 2024

English (en)Русский (ru)Translate (Translate)

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 NULL:

Ricochet teleporter drawing.png

When you are done, select all brushes and make them single func_wall entity, with rendermode "texture" (2) and renderamt 255.

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.