Creating a portal/object fizzler: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
m (added step number)
m (made it clearer and did slight reformatting)
 
Line 29: Line 29:
The <code>Everything</code> Flag will fizzle [[prop_dynamic|prop_dynamic entities]] which can cause problems if the fizzler's model is one.  
The <code>Everything</code> Flag will fizzle [[prop_dynamic|prop_dynamic entities]] which can cause problems if the fizzler's model is one.  
{{clr}}
{{clr}}
If this is the case, modify the following flags to fizzle player portals and cubes but *not* prop_dynamic entities:
If this is the case, modify the following flags to fizzle player portals and [[prop_physics|prop_physics entities]] (like the cube or radio) but '''''NOT''''' prop_dynamic entities:


{{entity-flag-start}}
{{entity-flag-start}}

Latest revision as of 17:58, 8 August 2025

English (en)Français (fr)Русский (ru)中文 (zh)Translate (Translate)
Merge-arrows.png
It has been suggested that this article or section be merged with Emancipation Grid. (Discuss)
Portal Level Creation


This wall of particles destroys any objects that come in contact with it and closes any portals that have been opened by the player.

Step 1 - Hallway Size

First, you need to create an appropriate hallway for the size of fizzler you want. 128x128 Hammer Units is the most common in Portal Portal test chambers although there are some that are 192 Hu across.

Step 2 - Creating the trigger_portal_cleanser entity

The first thing that needs to be created is the doorway that will act as the fizzler holder. You can also use a prop for this effect as well, however for the purpose of this tutorial a model will be used.

Note.pngNote:You can make a fizzler any size you want for your map, it will just require more info_particle_system entities.

The available props for this is:

  • models/props/portal_cleanser_1.mdl

To use as a base we need to create a trigger_portal_cleanser, which in size should be 128x128. Note that this is the base size for a normal sized fizzler. Also the trigger should be just 2 Units thick.

Go ahead and name it if you want, that way you can keep track of how many you might have.

Modify the following flags:

Flag
Checkbox-on.png Everything (not including physics debris)

The Everything Flag will fizzle prop_dynamic entities which can cause problems if the fizzler's model is one.

If this is the case, modify the following flags to fizzle player portals and prop_physics entities (like the cube or radio) but NOT prop_dynamic entities:

Flag
Checkbox-on.png Clients
Checkbox-on.png Physics Objects
Checkbox-off.png Everything (not including physics debris)

Step 3 - Adding Fizzler Models

Frame and Trigger

Make 2 prop_static entities and set their World Model to models/props/portal_cleanser_1.mdl, rotate one of them by 180 degrees.

You are free to line up everything you have so far directly in a straight line, or you can change it to your liking.

Step 4 - Creating the info_particle_system entity

Create a info_particle_system entity and enter the following properties:

Property Name Value
Particle System Name portal_cleanser
Start Active Yes

The particles available are portal_cleanser, cleanser_edge_1 or cleanser_edge_2

  • portal_cleanser is used in most of the normal test chambers. The size of the hallways it is used in is 128x128 Hammer Units. Its appearance is lines going left and right.
  • cleanser_edge_1 only emits one side of the fizzler, its particles going 192 Hammer Units. Its appearance is dots going one direction.
  • cleanser_edge_2 is the same but instead of dots for particles it has lines.

For the tutorial, we will use the portal_cleanser particle.


Align it to the trigger brush precisely in the center and then you are finished.

Results:

Editor View of a Fizzler taken from testchmb_a_00
In-Game View of a Fizzler taken from testchmb_a_00

Step 5 - Respawning Boxes

If you have a box dropper that you want to spawn a new box if the player destroys one with a fizzler, you can use the output OnDissolveBox, but only if your box prop_physics is named box.

If you have multiple droppers in your map along with a cleanser and you want the box dropper to deliver a new box, follow these instructions:

Enter this output for the trigger_portal_cleanser:

  My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnDissolve !activator FireUser1 <none> 0.00 No

Enter this output for the box:

  My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnUser1 logic_drop_box Trigger <none> 0.00 No

You will have to change the logic_drop_box name in the output depending on which box dropper the box came from.

See also