Gel (Portal 2): Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(rewrote the whole dang thing. MORE IMAGES COMING SOON. MY COMPUTER IS FORCING ME TO RESTART.)
(→‎Gel Mobility: finished this section)
Line 80: Line 80:


==Gel Mobility==
==Gel Mobility==
Like physics objects, gel can be flung through portals. Like everything else, the velocity of gel is preserved through portals (of course, accounting for the angles of portals). This allows gel to reach areas you may not expect. Careful level design is the best solution. At the potential cost of diminished realism, <code>[[trigger_paint_cleanser]]</code> is also an option, and so is <code>[[Material_Map_Compile_Flags#.25NoPaint|%nopaint]] 1</code>. Below are examples of just how mobile gel, especially conversion gel, can be:
When gel ends up in unplanned spots, puzzles can break. To keep your maps from having gel issues, there are multiple solutions:
*Careful level design -- force the player to abandon gel, reduce portalable and paintable surfaces, etc.
*<code>[[trigger_paint_cleanser]]</code> erases gel. Also consider using cleansing gel.
*<code>[[Material_Map_Compile_Flags#.25NoPaint|%nopaint]]</code> makes a texture unpaintable.
*Displacements cannot be painted. Displacements should have an actual reason for being used though, such as a cave wall.
<gallery>
<gallery>
File:Sp a3 bomb flings gel a.png|<code>sp_a3_bomb_flings</code>, the first map where the player can freely place gel. The lower portion of the map isn't very paintable due to few portalable surfaces.
File:Sp a3 bomb flings gel a.png|<code>sp_a3_bomb_flings</code>, the first map where the player can freely place gel. The lower portion of the map isn't very paintable due to few portalable surfaces.
File:Sp a3 bomb flings gel b.png|Inside the test chamber, more surfaces are portalable, enabling more possibilities. Not seen in this picture is gel on the platform the player is currently standing on. With precise movements, the player can use gel to skip the final [[fling]] in this test.
File:Sp a3 bomb flings gel b.png|Inside the test chamber, more surfaces are portalable, enabling more possibilities. Not seen in this picture is gel on the platform the player is currently standing on. With precise movements, the player can use gel to skip the final [[fling]] in this test.
 
File:Sp a3 crazy box gel.png|Above the first test on <code>sp_a3_crazy_box</code>. Paint bomb trajectory can be changed by nudging to go over the rail separating the test chamber from the area above it. Bomb nudging can also be used to paint and climb walls (see top right). This can technically be a really weird route into the next test chamber.
File:Sp a3 speed ramp gel a.png|An example of angled flinging on <code>sp_a3_speed_ramp</code>. The gel dropper sends gel straight into the blue portal. The gel comes out of the orange portal at just the right angle and position to send it through the blue portal a second time, with a different angle. The gel exits through the orange portal again, but with a new angle, landing in a new spot. Using this, a large amount of the room can be painted, but to no actual use.
File:Sp a3 portal intro gel.png|<code>sp_a3_portal_intro</code>, the underground conversion gel test. The platform the player is supposed to get to is hard to get gel on, so flying to it's a more viable option. The platform ''can'' be painted on, but doing so is tricky and still requires an increase of momentum.
</gallery>
</gallery>
===Some Notes on Gel Trickery===
*Conversion gel is usually the easiest gel to exploit because it opens up more places for portals to reach, creating a cycle of expanding capabilities. It does however need at least the space of a portal to be used.
*Repulsion gel is also very easy to get out of hand because of its launching power. Even a tiny splat smaller than a portal can be used, and at any angle.
*Propulsion gel is the hardest gel to abuse. It's only useful on walkable surfaces, and needs a fairly large area to gain significant speed.
*Paint can reach unexpected areas with angled flings or double flings.
*Paint bombs will not explode if they hit a surface with an unusually small amount of force. Worst case scenario, players can roll a bomb around make it explode at any spot on the ground or use it to slightly boost their height.
*Paint bombs explode prematurely by touching the player.
*Paint bombs can nudge or be nudged by the player and cubes.
*Paint bombs can reach out further when portal funneling is enabled or disabled, depending on the situation.
*Paint will slowly move less and less when continually moving between two portals on a floor. Don't count on gel to always be going a certain speed.
*Walls painted with repulsion gel plus painted floors allow the player to climb to the highest painted spot on a wall. This is because momentum is always preserved when bouncing on floors, and walls will bounce the player upward.


==Related Entities==
==Related Entities==

Revision as of 15:39, 13 June 2018

Template:Otherlang2

The three main gels: Repulsion, Propulsion, and Conversion on a floor.

Gel or Paint is a puzzle element of Portal 2. It flows out of droppers in blobs, and covers most surfaces or objects it touches, changing the physical properties and coloring it. Gel streams can be redirected with portals and excursion funnels.

Note.pngNote:Gel works off of lightmaps. This means that a map must have lighting (and not just running VRAD) to render gel splats, and the lightmap scale directly affects the appearance of gel on surfaces.
Icon-Bug.pngBug:Related to the note above, if you are noticing a lag spike when applying gel to surfaces, it's probably because a low lightmap scale is forcing the game to make a more accurate gel mapping. Lightmap scales other than the default 16 may also make gel look more squareish or stretch the border textures.  [todo tested in ?]

There are six gel types:

  • Repulsion gel: Blue, and causes things to bounce around.
  • Propulsion gel: Orange, and reduces friction, making objects slippery and players move quickly.
  • Conversion gel: White, and allows portals to be placed on surfaces that didn't already allow them.
  • Cleansing gel: Clear, erases effects of other gels.
  • Reflection gel: Unused gel that reflects lasers. Functional, but looks wrong.
  • Adhesion gel: Unused gel that made things sticky. Not available in Portal 2, but some modders have remade it.
Note.pngNote:To fix the reflection gel texture, create a VMT and VTF named "blob_surface_stick". You copy and adapt the information from one of the other texture files in materials\paintblobs\.


Creating a Gel Dropper

Using an instance

1. Place a func_instance entity with the following properties:

Property Name Value
Fix up Name gel_dropper
VMF Filename instances/gameplay/paint_dropper.vmf
$paint_sprayer gel_sprayer
$trigger_to_start start
$trigger_to_stop stop
$paint_type 0 = Bounce, 1 = Reflection , 2 = Speed, 3 = Conversion, 4 = Cleansing

If the dropper doesn't show up, try restarting Hammer.

2. Create the entity you want to activate the gel dropper, such as a trigger_once at the entrance to the room, and give it the following outputs:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnTrigger gel_dropper-start Trigger 0.00 No
Note.pngNote:Hammer may warn you that this is invalid. The game will recognize what it is though.

From scratch

  1. Place a dropper prop, including any visible pipes.
  2. Place an info_paint_sprayer inside the dropper, and tune it to your liking.
  3. If there is anything that enables or disables the gel dropper, send Start and/or Stop inputs to the info_paint_sprayer.
  4. Depending on your model, you may want to change skins or play animations when enabled or disabled.


If you want to create paint bombs, follow these steps in place of an info_paint_sprayer:

  1. Place a prop_paint_bomb, and give it a name like paint_bomb.
  2. Place a point_template. Give it a name like paint_bomb_temp and set "Template 01" to paint_bomb.
  3. Place an env_entity_maker. Give it a name like paint_bomb_spawner and set "Point_template To Spawn" to paint_bomb_temp.
  4. Put this output in your prop_paint_bomb:
My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnExploded paint_bomb_spawner ForceSpawn 0.00 No

This how Valve does their droppers in Portal 2. Alternatively, you can use a logic_timer instead using the output above, just change OnExploded to OnTimer. This alternative method will allow multiple paint bombs to be used at once, greatly increasing the chances of two bombs colliding with each other in midair, which can be a simple nuisance, or a clever trick to solve a puzzle.

If your input device can be activated rapidly, consider having a logic_relay do the spawning inputs so that you can temporarily disallow the env_entity_maker from spawning more paint bombs after your device is activated.

Conversion Gel Color

There is some evidence and debate saying that the conversion gel was originally pure white, and that the current gray color was an accident by Valve, made while developing the Art Therapy maps.

How Valve could have missed this is not very clear, because at least one Art Therapy map used conversion gel, so they must have noticed. This gives rise to the thought that it was an intended change, possibly to make it blend in better with darker areas, or so it's more visible on white surfaces.

Whatever the case, you can change it to pure white with this console command: portal_paint_color 255 255 255 255 (requires map restart).

Gel Mobility

When gel ends up in unplanned spots, puzzles can break. To keep your maps from having gel issues, there are multiple solutions:

  • Careful level design -- force the player to abandon gel, reduce portalable and paintable surfaces, etc.
  • trigger_paint_cleanser erases gel. Also consider using cleansing gel.
  • %nopaint makes a texture unpaintable.
  • Displacements cannot be painted. Displacements should have an actual reason for being used though, such as a cave wall.

Some Notes on Gel Trickery

  • Conversion gel is usually the easiest gel to exploit because it opens up more places for portals to reach, creating a cycle of expanding capabilities. It does however need at least the space of a portal to be used.
  • Repulsion gel is also very easy to get out of hand because of its launching power. Even a tiny splat smaller than a portal can be used, and at any angle.
  • Propulsion gel is the hardest gel to abuse. It's only useful on walkable surfaces, and needs a fairly large area to gain significant speed.
  • Paint can reach unexpected areas with angled flings or double flings.
  • Paint bombs will not explode if they hit a surface with an unusually small amount of force. Worst case scenario, players can roll a bomb around make it explode at any spot on the ground or use it to slightly boost their height.
  • Paint bombs explode prematurely by touching the player.
  • Paint bombs can nudge or be nudged by the player and cubes.
  • Paint bombs can reach out further when portal funneling is enabled or disabled, depending on the situation.
  • Paint will slowly move less and less when continually moving between two portals on a floor. Don't count on gel to always be going a certain speed.
  • Walls painted with repulsion gel plus painted floors allow the player to climb to the highest painted spot on a wall. This is because momentum is always preserved when bouncing on floors, and walls will bounce the player upward.

Related Entities

See Also