Wheelvalve: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
No edit summary
m (Wisdurm moved page User:ThePaperDog/Wheelvalve to Wheelvalve: Useful page which is finished enough to warrant being moved out of user space)
 
(68 intermediate revisions by 4 users not shown)
Line 1: Line 1:
== HOW TO MAKE A VALVEWHEEL TURN ON/OFF (OPEN AND CLOSE) ==
{{essay}}
== '''HOW TO MAKE A WHEELVALVE TURN (OPEN AND CLOSE)''' ==
[[file:ValveWheel1.png]]
----
'''Introduction'''


RESULTING EFFECTS 
During the game, players will encounter various scenarios, where they will need to turn a pipe (wheelvalve) on and/or off to achieve an effect or desired progress in the gameThis page will describe steps on how to build a functional wheelvalve prop for a custom map, where:
Player can +USE the pipe valvewheel and the valvewheel will turn (to Open)User can repeat the +USE action and the valve will toggle (turn the other way (to Close))


*The Player can ''+USE'' the valve object and it will turn (to open position).
*The Player can repeat the ''+USE'' action and the valve object will toggle back (to closed position)...OR...
*With the '''Toggle (Disable Auto Return)''' Flag '''un-checked''', the valve object will automatically return to closed position.
== REQUIRED ENTITIES AND OBJECTS ==
1) '''MOMENTARY_ROT_BUTTON''' (This is a brush-model entity.)
:a) Create a new texture brush on your map.
:b) Use your editor's 'MOVE SELECTED TO:' feature to convert the brush from World to Entity.
:c) Set the entity's class as a ''momentary_rot_button''.
:d) Name the entity as "FM1"
:e) Select and apply the brush-texture: "Invisible" to the entity.
:f) For ''vertical position'' of the valve, set the following flags:
::*Not Solid Checked
::*Toggle Unchecked (optional)
::*X Axis Checked
::*Y Axis Checked
::*Use Activates Checked
:g) For ''Horizontal position'' of the valve, set the following flags:
::*Not Solid Checked
::*Toggle Unchecked (optional)
::*Use Activates Checked


Create the following in your map


1) A new texture brush and set it as a '''momentary_rot_button''' entity.
2) '''PROP_DYNAMIC''' (This is a point entity (Wheelvalve prop).)
:a) Place a new prop_dynamic entity on your map.
:b) Choose and select its world model skin from one of the following, as:
::*[models\props_pipes\valvewheel001.mdl]
::*[models\props_pipes\valvewheel002.mdl]
::*[models\props_pipes\valvewheel002a.mdl]  --- ''Note: This model is larger.''
:c) Name the entity as "W1"
:d) Select its Parent as [Func_for_Valve]


2)  Ensure these flags are set:


      '''Not Solid      ''' ''Checked''     
3) '''PROP_STATIC''' (This is a point entity (Pipe-valve prop))
      '''Toggle'''          ''Checked''
:a) Place a new prop_static entity on your map.
      '''Use Activates ''' ''Checked''
:b) Choose and select its world model skin from one of the following, as:
::*[models\props_pipes\valve001.mdl] --- ''Note: Best if used with the larger wheelvalve model.''
::*[models\props_pipes\valve002.mdl]  
:c) Naming this entity is not required
== SET INPUTS/OUTPUTS (I/O)==
1) Set the following output trigger(s) in the (FM1) brush's I/O.


3)  A new '''prop_dynamic''' entity and browse/set its world model/skin as model:
[[file:I O WheelValve.png]]
    valvewheel002.mdl
==PLACE, ALIGN AND GROUP THE OBJECTS ==
Follow these steps:


Bind these two objects together, making the momentary_rot_button entity as the parent of the the prop_dynamic entity.
*Center the origin of the prop_static entity (pipe system).
*Place the prop_dynamic entity '''"W1"''' into the desired position on the pipe system.
*Set the desired Pitch Yaw Roll (Y Z X ) values for entity "W1". 
*Center the origin for "W1".
*Align "W1"'s origin with the prop_static's origin ''as close as possible''.
*Place the momentary_rot_button brush entity '''"FM1"''' over "W1", making sure that "FM1" completely encloses "W1".  Allow enough extension of "FM1" for the player to ''touch'' it.
*Center the origin for "FM1".
*Align "FM1"'s origin with "W1"'s origin ''as close as possible''. 
*Set the (Y) value for "FM1" equal to the (Y) value of "W1".  (''Note; If you move and/or re-orient these objects to a different position in the map, repeat this step.'')
*Group all the objects. (You can also save the finished group as a pre-fab)
== NOTES == 


4)  Set the '''Name''' property for each of the entities.  (Give each entity a unique, meaningful name.)  For example:
Also see paragraph on '''Exploiting Origin''' in:
*[[User:ThePaperDog/WORKING WITH AXIS ORIENTATION ORIGIN | WORKING WITH AXIS, ORIENTATION AND ORIGIN]]


    momentary_rot_button Name =  MyValveRotator
    prop_dynamic Name =          MyValve
   
5) Set the '''Parent''' property of the prop_dynamic entity to the name of the momentary_rot_button entity.
   
    prop_dynamic Parent =        MyValveRotator
   


6) Set an output statemet in the momentary_rot_button entity's ''OTIP'' settings  (i.e. Output, Target, Input, Parameter override settings in the entity's Properties | Outputs tab-page).  Use the following values:  
--The PaperDog 05:57, 15 March 2009 (UTC)
 
  Output...    '''OnPressed'''
  Target...    '''MyValve'''
  Input...    '''SetAnimation'''
  Parameter... '''Open'''
 
 
Finally, drag the momentary_rot_button entity over the prop_dynamic entity, making sure that the prop_dynamic entity is completely enclosed.  '''IMPORTANT!'''  The momentary_rot_button brush size should be as close to the size of the prop as possible.  This will ensure that the prop (wheel) rotates in proper axis and does not behave like a right/left/up/down lever.  (You can experiment with the brush size to illustrate this.)
 
 
 
 
More instructions pending.

Latest revision as of 12:59, 7 June 2024

Icon-essay.png
This is an essay.
It contains the advice or opinions of one or more of the Valve Developer Community's contributors.
This page is not an encyclopedia article, nor is it one of the Valve Developer Community's policies or guidelines, as it has not been thoroughly vetted by the community.
Some essays represent widespread norms; others only represent minority viewpoints.

HOW TO MAKE A WHEELVALVE TURN (OPEN AND CLOSE)

ValveWheel1.png


Introduction

During the game, players will encounter various scenarios, where they will need to turn a pipe (wheelvalve) on and/or off to achieve an effect or desired progress in the game. This page will describe steps on how to build a functional wheelvalve prop for a custom map, where:

  • The Player can +USE the valve object and it will turn (to open position).
  • The Player can repeat the +USE action and the valve object will toggle back (to closed position)...OR...
  • With the Toggle (Disable Auto Return) Flag un-checked, the valve object will automatically return to closed position.

REQUIRED ENTITIES AND OBJECTS

1) MOMENTARY_ROT_BUTTON (This is a brush-model entity.)

a) Create a new texture brush on your map.
b) Use your editor's 'MOVE SELECTED TO:' feature to convert the brush from World to Entity.
c) Set the entity's class as a momentary_rot_button.
d) Name the entity as "FM1"
e) Select and apply the brush-texture: "Invisible" to the entity.
f) For vertical position of the valve, set the following flags:
  • Not Solid Checked
  • Toggle Unchecked (optional)
  • X Axis Checked
  • Y Axis Checked
  • Use Activates Checked
g) For Horizontal position of the valve, set the following flags:
  • Not Solid Checked
  • Toggle Unchecked (optional)
  • Use Activates Checked


2) PROP_DYNAMIC (This is a point entity (Wheelvalve prop).)

a) Place a new prop_dynamic entity on your map.
b) Choose and select its world model skin from one of the following, as:
  • [models\props_pipes\valvewheel001.mdl]
  • [models\props_pipes\valvewheel002.mdl]
  • [models\props_pipes\valvewheel002a.mdl] --- Note: This model is larger.
c) Name the entity as "W1"
d) Select its Parent as [Func_for_Valve]


3) PROP_STATIC (This is a point entity (Pipe-valve prop))

a) Place a new prop_static entity on your map.
b) Choose and select its world model skin from one of the following, as:
  • [models\props_pipes\valve001.mdl] --- Note: Best if used with the larger wheelvalve model.
  • [models\props_pipes\valve002.mdl]
c) Naming this entity is not required

SET INPUTS/OUTPUTS (I/O)

1) Set the following output trigger(s) in the (FM1) brush's I/O.

I O WheelValve.png

PLACE, ALIGN AND GROUP THE OBJECTS

Follow these steps:

  • Center the origin of the prop_static entity (pipe system).
  • Place the prop_dynamic entity "W1" into the desired position on the pipe system.
  • Set the desired Pitch Yaw Roll (Y Z X ) values for entity "W1".
  • Center the origin for "W1".
  • Align "W1"'s origin with the prop_static's origin as close as possible.
  • Place the momentary_rot_button brush entity "FM1" over "W1", making sure that "FM1" completely encloses "W1". Allow enough extension of "FM1" for the player to touch it.
  • Center the origin for "FM1".
  • Align "FM1"'s origin with "W1"'s origin as close as possible.
  • Set the (Y) value for "FM1" equal to the (Y) value of "W1". (Note; If you move and/or re-orient these objects to a different position in the map, repeat this step.)
  • Group all the objects. (You can also save the finished group as a pre-fab)

NOTES

Also see paragraph on Exploiting Origin in:


--The PaperDog 05:57, 15 March 2009 (UTC)