Difference between revisions of "Instance"

From Valve Developer Community
Jump to: navigation, search
(added tf2 to list of supported games)
(External links)
Line 41: Line 41:
 
== External links ==
 
== External links ==
 
* [http://www.youtube.com/watch?v=YvSZ2NEX1Y0 Source SDK Tutorial - Manifest Tool (YouTube)]
 
* [http://www.youtube.com/watch?v=YvSZ2NEX1Y0 Source SDK Tutorial - Manifest Tool (YouTube)]
 +
* [http://tf2maps.net/threads/mapping-collaboration-or-using-manifest-and-version-control.24787/ Manifests and Version Control Tutorial (TF2Maps.net)]
  
 
[[Category:Glossary]]
 
[[Category:Glossary]]

Revision as of 23:43, 20 September 2015

An instance is a map (.vmf) file referenced inside another map through a func_instance, possibly aided by a func_instance_parms and/or func_instance_io_proxy.

Note:While working inside Hammer for all Source games, instances are currently only supported by the map compilers for Left 4 Dead 2, Alien Swarm, Portal 2, Team Fortress 2, and Counter-Strike: Global Offensive, and will therefore not work for any other games. To use them in unsupported games, see below.

Instances are helpful in many ways:

  • They provide a more dynamic alternative to prefabs, as any changes to the instanced map will be reflected in all instances of it.
  • They provide an alternative to visgroups, as they can be used to divide a large, unwieldy map into several smaller, manageable ones (that can even be worked on by multiple authors simultaneously).
  • They provide a simple way to edit portions of a map that needs to be at a non-orthogonal angle. (Build the map on-grid inside a separate map, and then instance it into another map through a func_instance rotated at the correct angle.
  • They provide a way for maps to work on multiple platforms, such as Left 4 Dead and Left 4 Dead 2 versions of the same map.

How to

In portal 2 to give input to an entity within a instance use this:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png <Output> <Instance> instance:<entity>;<input> <none> 0.00 No

Or, alternatively, you can do this:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png <Output> <Instance>-<entity> <input> <none> 0.00 No

Manifests

To do

Workaround for any Source game

To use instances in unsupported Engine versions, Metapyziks wrote a program that merges used instances with the main VMF.

Also see

External links