Creating a portal/object fizzler: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
No edit summary
 
m (made it clearer and did slight reformatting)
 
(75 intermediate revisions by 28 users not shown)
Line 1: Line 1:
= Introduction =
{{LanguageBar}}
{{merge|[[Emancipation Grid]]}}
{{back|Portal Level Creation}}
{{morescreenshots}}


This item is used to destroy any objects that come in contact with it, and also to fizzle open existing portals. So to here is how to add it towards your map.
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 =
=== Step 1 - Hallway Size ===


First thing is first, due to the sheer size of the Fizzler you might need to create an appropriate sized doorway top construct the Fizzler in. However there are about two known particle effects that exist for this effect. Those two effects are:
First, you need to create an appropriate hallway for the size of fizzler you want. 128x128 Hammer Units is the most common in {{Portal|4}} test chambers although there are some that are 192 Hu across.


* '''portal_cleanser''' - The normal sized Fizzler effect, however it is the only known one that exists.
=== Step 2 - Creating the [[trigger_portal_cleanser]] entity ===
* '''Cleanser_edge_1''' - A larger more messy effect, that is used for larger Fizzlers, mainly this effect is only to be used at the fizzler's source.
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.


= Step 2 =
{{Note|You can make a fizzler any size you want for your map, it will just require more [[info_particle_system]] entities.}}
 
Alright the first thing that needs to be created is the doorway that will act as the fizzler holder, however you can also use a prop for this effect as well, however for the tutorial a model will be used for basics.
 
{{Note| You can make a fizzler any size you want for your map, it will just require alot more [[info_particle_system]] entity's.}}


The available props for this is:
The available props for this is:
* '''models/props/portal_cleanser_1.mdl'''
* '''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.


To use as a base we need to create a [[trigger_portal_cleanser]], which in size should be 124x128. Note that this is the base size for a '''normal sized''' fizzler. Also the trigger should be just about '''2''' Units thick.
Go ahead and name it if you want, that way you can keep track of how many you might have.
 
{{clr}}
[[Image:Trigger portal cleanser.JPG|thumb|right|300px]]
Modify the following flags:
 
Go ahead and name it if you want that way you can keep track of how many you might have.
 
= Step 3 =
 
Next is to make a [[prop_static]] with the world model of: '''models/props/portal_cleanser_1.mdl'''. Go ahead and clone it '''(Shift+Drag)''' and rotate the cloned prop to make it appears as in the picture above.
 
Next is to line every you have so far up, directly in a straight line, or of course you can change it to your liking.
 
It should look a bit like this in your map:
[[Image:Portal trigger Top.PNG|thumb|right|300px|The Top View.]]
Now there is one last thing to be done.
= Step 4 =
 
The last thing to put in is a [[info_particle_system]] entity, with the "particle system name" Property set to: '''portal_cleanser'''. Last to do is to make sure it aligns with your trigger right directly in the center of the brush itself.
 
Make sure to also have the particle effect start active.
 
It should look all like this in Hammer: [[Image:Portal Cleanser Final.PNG|thumb|right|300px]]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 


{{entity-flag-start}}
{{entity-flag|Everything (not including physics debris)|on|}}
{{entity-flag-end}}


The <code>Everything</code> Flag will fizzle [[prop_dynamic|prop_dynamic entities]] which can cause problems if the fizzler's model is one.
{{clr}}
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|Clients|on|}}
{{entity-flag|Physics Objects|on|}}
{{entity-flag|Everything (not including physics debris)|off|}}
{{entity-flag-end}}


=== Step 3 - Adding Fizzler Models ===
[[File:Fizzler framer&trigger.jpg|200px|thumb|left|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.
{{clr}}


=== Step 4 - Creating the [[info_particle_system]] entity ===
Create a [[info_particle_system]] entity and enter the following properties:


{| class=standard-table
!  Property Name || Value
|-
| Particle System Name || portal_cleanser
|-
| Start Active || Yes
|}


The particles available are <code>portal_cleanser</code>, <code>cleanser_edge_1</code> or <code>cleanser_edge_2</code>
*<code>portal_cleanser</code> 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.
*<code>cleanser_edge_1</code> only emits one side of the fizzler, its particles going 192 Hammer Units. Its appearance is dots going one direction.
*<code>cleanser_edge_2</code> is the same but instead of dots for particles it has lines.
For the tutorial, we will use the <code>portal_cleanser</code> particle.




Align it to the trigger brush precisely in the center and then you are finished.
{{clr}}
Results:
[[File:Portal1 objectfizzler editor.png|300px|thumb|left|Editor View of a Fizzler taken from <code>testchmb_a_00</code>]]
[[File:Portal1 objectfizzler ingame.jpg|300px|thumb|left|In-Game View of a Fizzler taken from <code>testchmb_a_00</code>]]


{{clr}}


=== 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''':
{| {{OutputsTable}}
| [[File:Io11.png]] || OnDissolve || !activator || FireUser1 || <none> || 0.00 || No
|}


Enter this output for the '''box''':
{| {{OutputsTable}}
| [[File:Io11.png]] || OnUser1 || logic_drop_box || Trigger || <none> || 0.00 || No
|}


= Theory =
You will have to change the logic_drop_box name in the output depending on which box dropper the box came from.
[[Image:Gear testchmb 010000.jpg|thumb|right|300px|The Final Product.]]
Once you're all done it should look somewhat like this in game:


And thats it, now you're all done! Good Luck.
== See also ==
* [[Portal Level Creation]]
[[Category:Portal]]
[[Category:Level Design]]
[[Category:Tutorials]]

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