Coop Door (Portal 2): Difference between revisions
mNo edit summary  | 
				Kestrelguy (talk | contribs)  m (added language bar. also some formatting.)  | 
				||
| Line 1: | Line 1: | ||
{{  | {{lang|title=Co-Op Door|Coop Door (Portal 2)}}{{p2 topicon}}{{source topicon}}[[Category:Portal 2 Level Design]][[Category:Portal 2 Tutorials]]  | ||
|title=Co-Op Door (Portal 2)  | {{Portal2}} '''Co-Op doors''' consist of two triggers that both bots step on to open the door and for each trigger a person sign lights up.  | ||
[[Image:Portal2CoopDoorFromMp_Coop_Doors.jpg|thumb|right|300px|The co-op door from <tt>mp_coop_doors</tt>.]]  | |||
}}  | |||
'''Co-Op doors''' consist of two triggers that both bots step on to open the door and for each trigger a person sign lights up.  | |||
[[Image:Portal2CoopDoorFromMp_Coop_Doors.jpg|thumb|right|300px|The co-op door from mp_coop_doors.]]  | |||
==Instance==  | ==Instance==  | ||
1.)    | 1.) Create a {{ent|func_instance}} with the following settings:  | ||
Create a   | |||
::{| class=standard-table  | ::{| class=standard-table  | ||
!  Property Name || Value  | !  Property Name || Value  | ||
| Line 16: | Line 11: | ||
| VMF Filename || instances/coop/coop_team_double_exit_door.vmf  | | VMF Filename || instances/coop/coop_team_double_exit_door.vmf  | ||
|}    | |}    | ||
2.)  | 2.) Create a block brush with the Trigger texture. Tie this brush to a {{ent|trigger_playerteam}} with the following outputs:  | ||
Create a block brush with   | |||
::{| class=standard-table  | ::{| class=standard-table  | ||
!   || My Output || Target Entity || Target Input || Parameter || Delay || Only Once  | !   || My Output || Target Entity || Target Input || Parameter || Delay || Only Once  | ||
| Line 31: | Line 25: | ||
==Manual Creation==  | ==Manual Creation==  | ||
===The Door===  | ===The Door===  | ||
1.)  | 1.) Add a {{ent|prop_testchamber_door}} with the following settings:  | ||
Add a   | |||
::{| class=standard-table  | ::{| class=standard-table  | ||
!  Property Name || Value  | !  Property Name || Value  | ||
| Line 41: | Line 33: | ||
|}  | |}  | ||
2.)  | 2.) Add a {{ent|logic_coop_manager}} with the following settings:  | ||
Add a   | |||
::{| class=standard-table  | ::{| class=standard-table  | ||
!  Property Name || Value  | !  Property Name || Value  | ||
| Line 54: | Line 45: | ||
| [[Image:Io11.png]] || OnChangeToAllTrue || door_01 || Open || <none> || 0.00 || No  | | [[Image:Io11.png]] || OnChangeToAllTrue || door_01 || Open || <none> || 0.00 || No  | ||
|}  | |}  | ||
===Triggers===  | ===Triggers===  | ||
1.)  | 1.) Add a {{ent|logic_relay}} with the following Settings:  | ||
Add a   | |||
::{| class=standard-table  | ::{| class=standard-table  | ||
!  Property Name || Value  | !  Property Name || Value  | ||
| Line 70: | Line 59: | ||
| [[Image:Io11.png]] || OnTrigger || coop_man || SetStateATrue || <none> || 0.00 || No  | | [[Image:Io11.png]] || OnTrigger || coop_man || SetStateATrue || <none> || 0.00 || No  | ||
|}  | |}  | ||
2.)  | 2.) Add a <tt>logic_relay</tt> with the following Settings:  | ||
Add a   | |||
::{| class=standard-table  | ::{| class=standard-table  | ||
!  Property Name || Value  | !  Property Name || Value  | ||
| Line 83: | Line 71: | ||
| [[Image:Io11.png]] || OnTrigger || coop_man || SetStateAFalse || <none> || 0.00 || No  | | [[Image:Io11.png]] || OnTrigger || coop_man || SetStateAFalse || <none> || 0.00 || No  | ||
|}  | |}  | ||
3.)  | 3.) Repeat steps 1-2, but change the following:  | ||
Repeat steps 1-2 but change the following:  | |||
::{| class=standard-table  | ::{| class=standard-table  | ||
!  Property Name || Value  | !  Property Name || Value  | ||
| Line 96: | Line 83: | ||
| [[Image:Io11.png]] || OnTrigger || coop_man || SetStateBTrue || <none> || 0.00 || No  | | [[Image:Io11.png]] || OnTrigger || coop_man || SetStateBTrue || <none> || 0.00 || No  | ||
|}  | |}  | ||
Add a   | Add a <tt>logic_relay</tt> with the following Settings:  | ||
::{| class=standard-table  | ::{| class=standard-table  | ||
!  Property Name || Value  | !  Property Name || Value  | ||
| Line 109: | Line 96: | ||
|}  | |}  | ||
4.)  | 4.) Create a block brush with the Trigger texture applied. Tie this brush to a {{ent|trigger_playerteam}} with the following outputs:  | ||
Create a block brush with   | |||
::{| class=standard-table  | ::{| class=standard-table  | ||
!   || My Output || Target Entity || Target Input || Parameter || Delay || Only Once  | !   || My Output || Target Entity || Target Input || Parameter || Delay || Only Once  | ||
| Line 123: | Line 109: | ||
|}  | |}  | ||
===Check Boxes===  | ===Check Boxes===  | ||
1.)  | 1.) Add a {{ent|prop_static}} with the following settings:  | ||
Add a   | |||
::{| class=standard-table  | ::{| class=standard-table  | ||
!  Property Name || Value  | !  Property Name || Value  | ||
| Line 131: | Line 116: | ||
|}  | |}  | ||
2.)  | 2.)  | ||
Create a   | Create a 32L×4W×32H {{ent|func_brush}} with the texture <tt>signage/signage_coop_teamdoor_orange</tt>.  | ||
::{| class=standard-table  | ::{| class=standard-table  | ||
!  Property Name || Value  | !  Property Name || Value  | ||
| Line 140: | Line 125: | ||
Align it to the left, inside the frame.  | Align it to the left, inside the frame.  | ||
3.)  | 3.) Repeat step 2, but use <tt>signage/signage_coop_teamdoor_blue</tt> for the texture instead.  | ||
Repeat step 2 but   | |||
Align it to the right, inside the frame.  | Align it to the right, inside the frame.  | ||
4.) Add two {{ent|env_texturetoggle}}s with the following settings:  | |||
4.)  | |||
Add two   | |||
::{| class=standard-table  | ::{| class=standard-table  | ||
!  Property Name || Value  | !  Property Name || Value  | ||
| Line 164: | Line 145: | ||
|}  | |}  | ||
5.)  | 5.) Add two {{ent|ambient_generic}}s with the following settings:  | ||
Add two   | |||
::{| class=standard-table  | ::{| class=standard-table  | ||
!  Property Name || Value  | !  Property Name || Value  | ||
| Line 173: | Line 153: | ||
| Sound Name || portal.button_down  | | Sound Name || portal.button_down  | ||
|}  | |}  | ||
::{| class=standard-table  | ::{| class=standard-table  | ||
!  Property Name || Value  | !  Property Name || Value  | ||
| Line 182: | Line 161: | ||
|}  | |}  | ||
6.) Add the following outputs to <tt>relay_o_in</tt>:  | |||
6.)  | |||
Add the following outputs to <  | |||
::{| class=standard-table  | ::{| class=standard-table  | ||
!   || My Output || Target Entity || Target Input || Parameter || Delay || Only Once  | !   || My Output || Target Entity || Target Input || Parameter || Delay || Only Once  | ||
| Line 193: | Line 170: | ||
|}  | |}  | ||
Add the following outputs to <  | Add the following outputs to <tt>relay_o_out</tt>:  | ||
::{| class=standard-table  | ::{| class=standard-table  | ||
!   || My Output || Target Entity || Target Input || Parameter || Delay || Only Once  | !   || My Output || Target Entity || Target Input || Parameter || Delay || Only Once  | ||
| Line 203: | Line 179: | ||
|}  | |}  | ||
Add the following outputs to <  | Add the following outputs to <tt>relay_b_in</tt>:  | ||
::{| class=standard-table  | ::{| class=standard-table  | ||
!   || My Output || Target Entity || Target Input || Parameter || Delay || Only Once  | !   || My Output || Target Entity || Target Input || Parameter || Delay || Only Once  | ||
| Line 212: | Line 188: | ||
|}  | |}  | ||
Add the following outputs to <  | Add the following outputs to <tt>relay_b_out</tt>:  | ||
::{| class=standard-table  | ::{| class=standard-table  | ||
!   || My Output || Target Entity || Target Input || Parameter || Delay || Only Once  | !   || My Output || Target Entity || Target Input || Parameter || Delay || Only Once  | ||
| Line 222: | Line 197: | ||
|}  | |}  | ||
You have now created a door   | You have now created a door that will open only if both co-op partners are in the [[trigger]]s.  | ||
Revision as of 05:54, 7 June 2022
 Co-Op doors consist of two triggers that both bots step on to open the door and for each trigger a person sign lights up.
Instance
1.) Create a func_instance with the following settings:
Property Name Value Name coop_exit_door VMF Filename instances/coop/coop_team_double_exit_door.vmf 
2.) Create a block brush with the Trigger texture. Tie this brush to a trigger_playerteam with the following outputs:
Manual Creation
The Door
1.) Add a prop_testchamber_door with the following settings:
Property Name Value Name door_01 
2.) Add a logic_coop_manager with the following settings:
Property Name Value Name coop_man 
and outputs:
Triggers
1.) Add a logic_relay with the following Settings:
Property Name Value Name relay_b_in 
and outputs:
2.) Add a logic_relay with the following Settings:
Property Name Value Name relay_b_out 
and outputs:
3.) Repeat steps 1-2, but change the following:
Property Name Value Name relay_o_in 
outputs:
Add a logic_relay with the following Settings:
Property Name Value Name relay_o_out 
outputs:
4.) Create a block brush with the Trigger texture applied. Tie this brush to a trigger_playerteam with the following outputs:
Check Boxes
1.) Add a prop_static with the following settings:
Property Name Value World Model models/props/sign_frame02/sign_frame02.mdl 
2.) Create a 32L×4W×32H func_brush with the texture signage/signage_coop_teamdoor_orange.
Property Name Value Name checkbox_o 
Align it to the left, inside the frame.
3.) Repeat step 2, but use signage/signage_coop_teamdoor_blue for the texture instead.
Align it to the right, inside the frame.
4.) Add two env_texturetoggles with the following settings:
Property Name Value Name textog_o Target Brush(es). checkbox_o 
Property Name Value Name textog_b Target Brush(es). checkbox_b 
5.) Add two ambient_generics with the following settings:
Property Name Value Name sound_out Sound Name portal.button_down 
Property Name Value Name sound_in Sound Name portal.button_up 
6.) Add the following outputs to relay_o_in:
Add the following outputs to relay_o_out:
Add the following outputs to relay_b_in:
Add the following outputs to relay_b_out:
You have now created a door that will open only if both co-op partners are in the triggers.