Gel (Portal 2): Difference between revisions
(→Notes) |
(rewrote the whole dang thing. MORE IMAGES COMING SOON. MY COMPUTER IS FORCING ME TO RESTART.) |
||
Line 2: | Line 2: | ||
|ru=Gel (Portal 2):ru | |ru=Gel (Portal 2):ru | ||
}} | }} | ||
[[Image: | [[Image:Portal 2 gels.png|thumb|right|300px|The three main gels: Repulsion, Propulsion, and Conversion on a floor.]] | ||
'''Gel''' or ''' | '''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| | {{note|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.}} | ||
There are | {{bug|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.}} | ||
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|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 <code>materials\paintblobs\</code>.}} | |||
==Creating a Gel Dropper== | ==Creating a Gel Dropper== | ||
===Using an instance=== | ===Using an instance=== | ||
1. | 1. Place a <code>[[func_instance]]</code> entity with the following properties: | ||
::{| class=standard-table | ::{| class=standard-table | ||
Line 28: | Line 36: | ||
| $trigger_to_stop || stop | | $trigger_to_stop || stop | ||
|- | |- | ||
| $paint_type || 0 = Bounce, 1= | | $paint_type || 0 = Bounce, 1 = Reflection , 2 = Speed, 3 = Conversion, 4 = Cleansing | ||
|} | |} | ||
If the | 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: | 2. Create the entity you want to activate the gel dropper, such as a <code>[[trigger_once]]</code> at the entrance to the room, and give it the following outputs: | ||
::{| class=standard-table | ::{| class=standard-table | ||
Line 41: | Line 49: | ||
|} | |} | ||
{{note|Hammer | {{note|Hammer may warn you that this is invalid. The game will recognize what it is though.}} | ||
===From scratch=== | ===From scratch=== | ||
#Place a dropper prop, including any visible pipes. | |||
#Place an <code>[[info_paint_sprayer]]</code> inside the dropper, and tune it to your liking. | |||
#If there is anything that enables or disables the gel dropper, send <code>Start</code> and/or <code>Stop</code> inputs to the <code>info_paint_sprayer</code>. | |||
#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 <code>info_paint_sprayer</code>: | |||
#Place a <code>[[prop_paint_bomb]]</code>, and give it a name like <code>paint_bomb</code>. | |||
#Place a <code>[[point_template]]</code>. Give it a name like <code>paint_bomb_temp</code> and set "Template 01" to <code>paint_bomb</code>. | |||
#Place an <code>[[env_entity_maker]]</code>. Give it a name like <code>paint_bomb_spawner</code> and set "Point_template To Spawn" to <code>paint_bomb_temp</code>. | |||
#Put this output in your <code>prop_paint_bomb</code>: | |||
::{| class=standard-table | |||
! || My Output || Target Entity || Target Input || Parameter || Delay || Only Once | |||
|- | |||
| [[Image:Io11.png]] || OnExploded || paint_bomb_spawner || ForceSpawn || || 0.00 || No | |||
|} | |||
This how Valve does their droppers in Portal 2. Alternatively, you can use a <code>[[logic_timer]]</code> instead using the output above, just change <code>OnExploded</code> to <code>OnTimer</code>. 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 <code>logic_relay</code> do the spawning inputs so that you can temporarily disallow the <code>env_entity_maker</code> 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 (Portal 2)|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: <code>portal_paint_color 255 255 255 255</code> (requires map restart). | |||
== | ==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: | |||
<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 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. | |||
</gallery> | |||
==Related Entities== | |||
<code> | |||
*[[info_paint_sprayer]] | |||
*[[paint_sphere]] | |||
*[[prop_paint_bomb]] | |||
*[[prop_physics_paintable]] | |||
*[[trigger_paint_cleanser]] | |||
*[[item_paint_power_pickup]] | |||
*[[weapon_paintgun]] | |||
*[[paint_stream]] | |||
</code> | |||
==See Also== | |||
*[[ | *[http://www.moddb.com/mods/aperture-the-omega-project/tutorials/tut-exchange-portal-2-reflection-gel-texture A tutorial on fixing reflection gel.] | ||
*[[ | *[[Gel-related console commands]] | ||
*[[Dropper (Portal 2)]] | |||
[[Category:Portal 2 Level Design]] | [[Category:Portal 2 Level Design]] | ||
[[Category:Portal 2 Tutorials]] | [[Category:Portal 2 Tutorials]] |
Revision as of 18:35, 12 June 2018
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.


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.

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:

From scratch
- Place a dropper prop, including any visible pipes.
- Place an
info_paint_sprayer
inside the dropper, and tune it to your liking. - If there is anything that enables or disables the gel dropper, send
Start
and/orStop
inputs to theinfo_paint_sprayer
. - 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
:
- Place a
prop_paint_bomb
, and give it a name likepaint_bomb
. - Place a
point_template
. Give it a name likepaint_bomb_temp
and set "Template 01" topaint_bomb
. - Place an
env_entity_maker
. Give it a name likepaint_bomb_spawner
and set "Point_template To Spawn" topaint_bomb_temp
. - Put this output in your
prop_paint_bomb
:
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
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, trigger_paint_cleanser
is also an option, and so is %nopaint 1
. Below are examples of just how mobile gel, especially conversion gel, can be:
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.
Related Entities