User talk:Srs bsnss: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(Created page with "I'm sick of seeing the red text at the top of my screen, so here I am, making this page exist.")
 
No edit summary
 
(13 intermediate revisions by the same user not shown)
Line 1: Line 1:
I'm sick of seeing the red text at the top of my screen, so here I am, making this page exist.
I'm sick of seeing the red text at the top of my screen, so here I am, making this page exist.
[[User:Srs bsnss|Srs bsnss]] 01:33, 4 July 2013 (PDT)
=Vactubes=
This is kinda tricky. There are three ways that it can be done.
# Animations - this is what Valve uses. There's a cube model, I forget it's name, which has animations that are designed for specific sets of pipes and so I wouldn't recommend it, unless you copy-paste some tubes from Valve maps.
# A system of trigger_push entities. This is the dodgiest method, and is used only once or twice in the official game. It involves trigger_pushes pushing the cube through the pipes. It would not recommend it, unless you need to use the physical cube in the test.
# Path_tracks and tracktrains. This is how I do tube cubes and have generally found it to be the easiest and best way.
==How to do method #3==
*Inside your pipe system, at the start, '''create a path_track entity'''. Give it a name like vac_path1. Set the 'Next Stop' to vac_path2. Duplicate it (hold shift + drag), and it should automatically re-name it and connect it to the first one. Continue this process of duplicating the one before until you have enough to satisfy your pipes (pro tip: more path_tracks in bends will make it smoother). One the last one, give it the output:
OnPass > !activator > Kill
*Create a prop_dynamic_override. Set it's model to metal_box.mdl. Name it whatever you want (e.g. vac_box)
*Use the brush tool to create a func_tracktrain (a brush entity). It only needs to be a 32x32x32 cube, if not smaller. Align it with the center of the prop_dynamic_override. Give it the following settings:
Name = vac_tracktrain
First Stop = vac_path1
Max/Initial Speed = 800 is good, but whatever you like
*Go back to the prop_dynamic_override's settings, set 'Parent' to vac_tracktrain.
*Create a point_template entity. Name it vac_temp. Give it the following settings:
Temp 1 = vac_tracktrain
Temp 2 = vac_box
* '''''MAKE SURE THE FLAG "PRESERVE ENTITY NAMES" IS NOT TICKED.'''''
*Create a logic_timer. Give it the following settings:
Name = vac_timer
Random Time = Yes
Min. Interval = 0.3 is good but whatever you want
Max. Interval = 1.3 is good but whatever you want.
Smaller gap will mean a greater frequency of cubes.
* Give it the following output:
OnTimer > vac_temp > ForceSpawn.
* Simply trigger the logic_timer, and you're done! Cubes!
==But what if you want different objects? This only produces one type of cube!==
* Repeat the middle steps, I.E., create a new prop_dynamic_override, a new func_tracktrain, and a new point_template for your other object.
* Create a logic_case. Give it a name like vac_spawner and give it the following outputs:
OnCase01 > vac_temp > ForceSpawn
OnCase02 > vac_temp2 > ForceSpawn
OnCase03 > vac_temp3 > ForceSpawn
etc. etc.
*Go into the settings of the logic_timer. Remove the original output and give it this one:
OnTimer > vac_spawner > PickRandom.
* Ta-da! Random objects through your tubes! Make sure you give them separate names, of course, as well as re-parenting and so on.
Hopefully this helps.

Latest revision as of 05:17, 15 March 2016

I'm sick of seeing the red text at the top of my screen, so here I am, making this page exist. Srs bsnss 01:33, 4 July 2013 (PDT)

Vactubes

This is kinda tricky. There are three ways that it can be done.

  1. Animations - this is what Valve uses. There's a cube model, I forget it's name, which has animations that are designed for specific sets of pipes and so I wouldn't recommend it, unless you copy-paste some tubes from Valve maps.
  2. A system of trigger_push entities. This is the dodgiest method, and is used only once or twice in the official game. It involves trigger_pushes pushing the cube through the pipes. It would not recommend it, unless you need to use the physical cube in the test.
  3. Path_tracks and tracktrains. This is how I do tube cubes and have generally found it to be the easiest and best way.

How to do method #3

  • Inside your pipe system, at the start, create a path_track entity. Give it a name like vac_path1. Set the 'Next Stop' to vac_path2. Duplicate it (hold shift + drag), and it should automatically re-name it and connect it to the first one. Continue this process of duplicating the one before until you have enough to satisfy your pipes (pro tip: more path_tracks in bends will make it smoother). One the last one, give it the output:
OnPass > !activator > Kill
  • Create a prop_dynamic_override. Set it's model to metal_box.mdl. Name it whatever you want (e.g. vac_box)
  • Use the brush tool to create a func_tracktrain (a brush entity). It only needs to be a 32x32x32 cube, if not smaller. Align it with the center of the prop_dynamic_override. Give it the following settings:
Name = vac_tracktrain
First Stop = vac_path1
Max/Initial Speed = 800 is good, but whatever you like

  • Go back to the prop_dynamic_override's settings, set 'Parent' to vac_tracktrain.
  • Create a point_template entity. Name it vac_temp. Give it the following settings:
Temp 1 = vac_tracktrain
Temp 2 = vac_box

  • MAKE SURE THE FLAG "PRESERVE ENTITY NAMES" IS NOT TICKED.
  • Create a logic_timer. Give it the following settings:
Name = vac_timer
Random Time = Yes
Min. Interval = 0.3 is good but whatever you want
Max. Interval = 1.3 is good but whatever you want.

Smaller gap will mean a greater frequency of cubes.

  • Give it the following output:
OnTimer > vac_temp > ForceSpawn.

  • Simply trigger the logic_timer, and you're done! Cubes!

But what if you want different objects? This only produces one type of cube!

  • Repeat the middle steps, I.E., create a new prop_dynamic_override, a new func_tracktrain, and a new point_template for your other object.
  • Create a logic_case. Give it a name like vac_spawner and give it the following outputs:
OnCase01 > vac_temp > ForceSpawn
OnCase02 > vac_temp2 > ForceSpawn
OnCase03 > vac_temp3 > ForceSpawn

etc. etc.

  • Go into the settings of the logic_timer. Remove the original output and give it this one:
OnTimer > vac_spawner > PickRandom.
  • Ta-da! Random objects through your tubes! Make sure you give them separate names, of course, as well as re-parenting and so on.

Hopefully this helps.