<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.svencoop.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tunac</id>
	<title>Sven Co-op - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.svencoop.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tunac"/>
	<link rel="alternate" type="text/html" href="https://wiki.svencoop.com/Special:Contributions/Tunac"/>
	<updated>2026-04-29T12:18:10Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://wiki.svencoop.com/index.php?title=Worldspawn&amp;diff=966</id>
		<title>Worldspawn</title>
		<link rel="alternate" type="text/html" href="https://wiki.svencoop.com/index.php?title=Worldspawn&amp;diff=966"/>
		<updated>2023-11-12T16:43:46Z</updated>

		<summary type="html">&lt;p&gt;Tunac: No link to sky list exists. Hiding text that claims so.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Entity_Infobox&lt;br /&gt;
| title=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Worldspawn is non-interactive entity, everything that builds a map except placed or spawned entities- brushes, sky, tool textures e.t.c. Map itself is an unique entity, which options you can access by going into &#039;Map&#039;--&amp;amp;gt;&#039;Map properties&#039;. Environmental death are caused &lt;br /&gt;
by World e.g. when player dies because of fall damage, the entity which killed player is &amp;quot;worldspawn&amp;quot;. Whenever mapper is placing new brush into the map, it&#039;s becomes the part of the &amp;quot;worldspawn&amp;quot;. You can change important settings of your map like sky texture to use, render distance, replacement files and even player models restrictions.&lt;br /&gt;
&lt;br /&gt;
== Keyvalues ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_keyvalue|Map Description / Title|message|Title of the map. The usage is unknown- it won&#039;t show any kind of text.}}&lt;br /&gt;
{{Entity_keyvalue|Environment Map|skyname|Name of sky to use, e.g. &#039;cliff&#039;. You can check all skies names by going into &#039;gfx&#039;--&amp;amp;gt;&#039;env&#039; folder&amp;lt;!--, or just choose you sky by going here: Sky List--&amp;gt;. Note that every sky is split into 6 different files, two last characters represent the direction. Remember to NOT include those characters (as well as &#039;_&#039; symbol in some of skies), if you do, the default sky will be used (&#039;desert&#039;). To determine where the sky will be seen, use &#039;sky&#039; texture on surfaces where you want your sky.}}&lt;br /&gt;
{{Entity_keyvalue|CD Track to play|sounds|Doesn&#039;t work- it&#039;s an old method to play music from CD.}}&lt;br /&gt;
{{Entity_keyvalue|Default light level|light|Seems to not working.}}&lt;br /&gt;
{{Entity_keyvalue|Default Wave Height|WaveHeight|Wave height of func_water entities. It is not overriding func_water &amp;quot;Wave Height&amp;quot; setting.}}&lt;br /&gt;
{{Entity_keyvalue|Max viewable Distance|MaxRange|Render distance, higher values for farther distance but slower render. Decrease this value greatly improves performance but causes player to see end of the render plane what looks terrible.}}&lt;br /&gt;
{{Entity_keyvalue|Chapter Title Message|chaptertitle|Simple method to show a text message on screen- it&#039;s a chapter-type string that appears on map start.}}&lt;br /&gt;
{{Entity_keyvalue|Level Fade In|startdark|If set to &#039;Yes&#039;, the fade in effect (from completely dark to fully tranparent) will be applied as soon as map starts.}}&lt;br /&gt;
{{Entity_keyvalue|Display game title|gametitle|If set to &#039;Yes&#039;, the Half Life logo title (as seen in the beginning of Half-Life campaign) will be displayed.}}&lt;br /&gt;
{{Entity_keyvalue|New Level Unit|newunit|Removes data and global triggers from previous levels. Not applicable for Sven Co-op.}}&lt;br /&gt;
{{Entity_keyvalue|Map Team List|mapteams|Not supported- Sven Co-op does not spit players between teams.}}&lt;br /&gt;
{{Entity_keyvalue|Default Team|defaultteam|Same as above.}}&lt;br /&gt;
{{Entity_keyvalue|Roaming Monsters (node graph)|freeroam|If set to &#039;Yes&#039;, monsters will use nodes (info_node entities) to roam (walk from one point to another freely) at map start. &lt;br /&gt;
&lt;br /&gt;
Note that each monster can override this behaviour by &amp;quot;Monster Roaming (nodes)&amp;quot; keyvalue.}}&lt;br /&gt;
{{Entity_keyvalue|Map Team List|mapteams|Not supported- Sven Co-op does not spit players between teams.}}&lt;br /&gt;
{{Entity_keyvalue|Default Team|defaultteam|Same as above}}&lt;br /&gt;
{{Entity_keyvalue|Custom Sentences File|sentence_file|You can specify your own &amp;quot;senteces.txt&amp;quot; file in a replacement of default sentences.}}&lt;br /&gt;
{{Entity_keyvalue|Custom Materials File|materials_file|You can specify your own &amp;quot;materials.txt&amp;quot; file in a replacement of default material sounds. &lt;br /&gt;
&lt;br /&gt;
Example path string: &amp;quot;sound/mapname/filename.txt&amp;quot;.}}&lt;br /&gt;
{{Entity_keyvalue|Global Sound Replacement File|globalsoundlist|Path to a sound replacement file to use.}}&lt;br /&gt;
{{Entity_keyvalue|Global Model Replacement File|globalmodellist|Path to a model replacement file to use.}}&lt;br /&gt;
{{Entity_keyvalue|Force Player Models|forcepmodels|List of models that can be used for this map, separated by comma &amp;quot;,&amp;quot; symbol. Model names are the same as subfolders&lt;br /&gt;
&lt;br /&gt;
in &amp;quot;models/player&amp;quot; folder. Note that models not listed here cannot be used in this map.}}&lt;br /&gt;
{{Entity_keyvalue|Minimum Game Version|scversion2|Game version required for this map to run. Leave that as it is.}}&lt;br /&gt;
&lt;br /&gt;
== Changes ==&lt;br /&gt;
&lt;br /&gt;
5.0 Steam Release: Added &#039;Custom Materials File&#039; keyvalue, updated &#039;Minimum Game Version&#039; keyvalue with new entries.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{entity_title}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Entities]]&lt;br /&gt;
[[Category:Point entities]]&lt;/div&gt;</summary>
		<author><name>Tunac</name></author>
	</entry>
	<entry>
		<id>https://wiki.svencoop.com/index.php?title=Trigger_teleport&amp;diff=964</id>
		<title>Trigger teleport</title>
		<link rel="alternate" type="text/html" href="https://wiki.svencoop.com/index.php?title=Trigger_teleport&amp;diff=964"/>
		<updated>2023-09-08T08:33:23Z</updated>

		<summary type="html">&lt;p&gt;Tunac: Improved description for Flag 64&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Entity_Infobox&lt;br /&gt;
| title=&lt;br /&gt;
| type=b&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A brush entity which teleports a player to a destination of your choice as he enters the trigger.&lt;br /&gt;
&lt;br /&gt;
== Keyvalues ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_keyvalue|Target|target|Name of the entity which the player is teleported to. Ideally an [[info_teleport_destination]] entity, but other entities can be used.}}&lt;br /&gt;
{{Entity_keyvalue|Delay before trigger|delay|Delay before the trigger_teleport triggers its target after being activated by an entering player or monster. This is usable if there is other entity we want to trigger that has same name as info_teleport_destination. }}&lt;br /&gt;
{{Entity_keyvalue|Target Path|netname|This is not a trigger destination as FGD says. This value is obsolete, use &amp;quot;Target&amp;quot; instead.}}&lt;br /&gt;
{{Entity_keyvalue|Allow Tiny Monsters|tiny_monsters|If set to &#039;Yes&#039;, monsters like cockroaches can trigger this entity as well as other monsters.}}&lt;br /&gt;
{{Entity_keyvalue|Teleport Cooldown Delay|teleport_cooldown|Time, in seconds, the trigger_teleport can be used (can teleport another entity/player) again.}}&lt;br /&gt;
{{Entity_keyvalue|Ignore Delays|teleport_ignore_delay|If set to &#039;Yes&#039;, &amp;quot;Teleport Cooldown Delay&amp;quot; will be ignored.}}&lt;br /&gt;
{{Entity_keyvalue|Start Inactive|teleport_start_inactive|If set to &#039;Yes&#039;, this Trigger starts disabled, which means it need to be triggered in order to work.}}&lt;br /&gt;
{{Entity_keyvalue|Teleport If Blocked|teleport_if_blocked|If set to &#039;Yes&#039; (as it is by default), players will be teleported to target even if this target is blocked.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Inventory Rules, InventoryRules @BaseClass: ===&lt;br /&gt;
List of inventory-related keyvalues used with item_inventory entity. Whenever player is attempting to use an entity, the inventory test runs. If test result is negative, the entity won&#039;t work. In other case, entity can be used as normal, but only by player who passed the test with required inventory conditions:&amp;quot;Inventory: Need item(s)&amp;quot;, item_name_required : Item(s) (names separated by spaces) required to use this entity. &lt;br /&gt;
Refers to &amp;quot;Item name&amp;quot; value of item_inventory.}}&lt;br /&gt;
{{Entity_keyvalue|Inventory: Need item(s) from group(s)|item_group_required|Groups (separated by spaces), in which carried items belong to, required to use this entity. Refers to &amp;quot;Item group name&amp;quot; value of item_inventory.}}&lt;br /&gt;
{{Entity_keyvalue|Inventory: Item count in group need have|item_group_required_num|Minimal number of items, that belong &lt;br /&gt;
to specified group, required to use this entity. Use with &amp;quot;Inventory: Need item(s) from group(s)&amp;quot; keyvalue. Value of &#039;0&#039; means that all items from current group are required.}}&lt;br /&gt;
{{Entity_keyvalue|Inventory: CAN&#039;T have item|item_name_canthave|Items in player inventory that will fail the test, and disallow usage &lt;br /&gt;
of this entity. Refers to &amp;quot;Item name&amp;quot; value of item_inventory.}}&lt;br /&gt;
{{Entity_keyvalue|Inventory: CAN&#039;T have item from group|item_group_canthave|Items in player inventory, which belong to specified group, that will fail the test, and disallow usage of this entity. Refers to &amp;quot;Item group name&amp;quot; value of item_inventory.}}&lt;br /&gt;
{{Entity_keyvalue|Inventory: Item count in group CAN&#039;T have|item_group_canthave_num|Minimal number of items in player inventory, which belong to specified group, that will fail the test, and disallow usage of this entity. Refers to &amp;quot;Item group name&amp;quot; &lt;br /&gt;
value of item_inventory. Value of &#039;0&#039; means no single item from current group should be equipped to pass the test.}}&lt;br /&gt;
{{Entity_keyvalue|On pass: Ignore item&#039;s on use triggers?|pass_ignore_use_triggers|If set to &#039;Yes&#039; item&#039;s trigger targets from &#039;Target: On use (by trigger)&#039; will not be fired when item is used by this entity.}}&lt;br /&gt;
{{Entity_keyvalue|On pass: Drop item(s)|pass_drop_item_name|Items to force-drop when the test result is positive, and entity is used successfully. Refers to &amp;quot;Item name&amp;quot; value of item_inventory. Multiple item names are separated by spaces.}}&lt;br /&gt;
{{Entity_keyvalue|On pass: Drop item(s) from group(s)|pass_drop_item_group|Items to force-drop, that belong to specified group, when the test result is positive, and entity is used successfully. All items from this group will be dropped. &lt;br /&gt;
Refers to &amp;quot;Item group name&amp;quot; value of item_inventory. Multiple item names are separated by spaces.}}&lt;br /&gt;
{{Entity_keyvalue|On pass: Ignore item&#039;s on drop triggers?|pass_ignore_drop_triggers|If set to &#039;Yes&#039; item&#039;s trigger targets from &#039;Target: On drop&#039; will not be fired when item is dropped by this entity with &#039;Drop items(s)&#039; events above.}}&lt;br /&gt;
{{Entity_keyvalue|On pass: Return item(s)|pass_return_item_name|Items to return to their starting positions when test result is positive. Refers to &amp;quot;Item name&amp;quot; value of item_inventory. Multiple item names are separated by spaces.}}&lt;br /&gt;
{{Entity_keyvalue|On pass: Return item(s) from group(s)|pass_return_item_group|Items, that belong to specified group, to return to their starting positions when test result is positive. All items from this group will be returned. Refers to &amp;quot;Item group name&amp;quot; value of item_inventory. Multiple group names are separated by spaces.}}&lt;br /&gt;
{{Entity_keyvalue|On pass: Ignore item&#039;s on return triggers?|pass_ignore_return_triggers|If set to &#039;Yes&#039; item&#039;s trigger targets from &#039;Target: On return&#039; will not be fired when item is returned by this entity with &#039;Return items(s)&#039; events above.}}&lt;br /&gt;
{{Entity_keyvalue|On pass: Destroy item(s)|pass_destroy_item_name|Items to remove when test result is positive. Refers to &amp;quot;Item name&amp;quot; value of item_inventory. Multiple item names are separated by spaces.}}&lt;br /&gt;
{{Entity_keyvalue|On pass: Destroy item(s) from group(s)|pass_destroy_item_group|Items, that belong to specified group, to remove when test result is positive. All items from this group will be removed. Refers to &amp;quot;Item group name&amp;quot; value &lt;br /&gt;
of item_inventory. Multiple group names are separated by spaces.}}&lt;br /&gt;
{{Entity_keyvalue|On pass: Ignore item&#039;s on destroy triggers?|pass_ignore_destroy_triggers|If set to &#039;Yes&#039; item&#039;s trigger targets from &#039;Target: On Destroy&#039; will not be fired when item is destroyed by this entity with &#039;Destroy items(s)&#039; events above.}}&lt;br /&gt;
{{Entity_keyvalue|Target: Inventory rules failed|target_on_fail|Entity to trigger whenever test result is negative.}}&lt;br /&gt;
&lt;br /&gt;
== Flags ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_flag|1|Monsters|If set, monsters can trigger this.}}&lt;br /&gt;
{{Entity_flag|2|No Clients|If set, players won&#039;t be able to trigger this.}}&lt;br /&gt;
{{Entity_flag|4|Pushables|If set, func_pushable entities can trigger this.}}&lt;br /&gt;
{{Entity_flag|8|Everything else|If set, everything other than monsters, clients and pushables can trigger this. Does not exclude the above.}}&lt;br /&gt;
{{Entity_flag|16|Fire on Enter|Not applicable on trigger_teleport- it&#039;s already fires on enter!}}&lt;br /&gt;
{{Entity_flag|32|Fire on Exit|If set, trigger_once will fire as soon as something that entered it left it, instead of the instant something enters it.}}&lt;br /&gt;
{{Entity_flag|64|Random Destination|If multiple targets have the same &amp;lt;code&amp;gt;targetname&amp;lt;/code&amp;gt;, one will be chosen as the destination randomly for every player as he enters the trigger.}}&lt;br /&gt;
{{Entity_flag|128|Relative Teleport|The player&#039;s destination will be the location of the destination plus his offset from the trigger_teleport&#039;s origin in the moment of the player entering the trigger. If you decide to use this, you will probably want to add an origin brush to your trigger_teleport.}}&lt;br /&gt;
{{Entity_flag|256|Keep Angles|Instead of copying the destination entity&#039;s angles onto the player as part of the teleportation, let the player keep his angles as they are.}}&lt;br /&gt;
{{Entity_flag|512|Keep velocity|Do not set the players velocity to 0 as he enters the trigger_teleport and keep his current velocity instead.}}&lt;br /&gt;
{{Entity_flag|1024|Rotate (Dest Angles)|Add the angles of the trigger_teleport&#039;s destination onto the player&#039;s angles.}}&lt;br /&gt;
&lt;br /&gt;
== Notes ==&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Kill Target&amp;quot; and &amp;quot;Delay Before Trigger&amp;quot; keyvalues does not work on this entity. Also &amp;quot;Target&amp;quot; keyvalue can be used only to specify teleportation destination. That means this trigger can&#039;t act like touch detectors (to fire it&#039;s target when touched).&lt;br /&gt;
&lt;br /&gt;
== Changes ==&lt;br /&gt;
&lt;br /&gt;
5.0 Steam Release: Transposed &#039;Ignore Delays&#039; and &#039;Start Inactive&#039; flags into keyvalues. Added &#039;Teleport if Blocked&#039; keyvalue.5.06: Now uses &#039;InventoryRules&#039; base class.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{entity_title}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Entities]]&lt;br /&gt;
[[Category:Brush entities]]&lt;/div&gt;</summary>
		<author><name>Tunac</name></author>
	</entry>
	<entry>
		<id>https://wiki.svencoop.com/index.php?title=Player_weaponstrip&amp;diff=816</id>
		<title>Player weaponstrip</title>
		<link rel="alternate" type="text/html" href="https://wiki.svencoop.com/index.php?title=Player_weaponstrip&amp;diff=816"/>
		<updated>2023-01-07T12:50:50Z</updated>

		<summary type="html">&lt;p&gt;Tunac: Spawnflag for removing HEV is 1&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Entity_Infobox&lt;br /&gt;
| title=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Removes all weapons and ammo from player. It&#039;s possible to also remove HEV suit.Keyvalues&lt;br /&gt;
&lt;br /&gt;
{{Entity_keyvalue|Players to strip|m_iAffected|Allows to change which players will be affected by player_weaponstrip.}}&lt;br /&gt;
&lt;br /&gt;
== Flags ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_flag|1|Strip suit, too|(Also) remove HEV suit.}}&lt;br /&gt;
&lt;br /&gt;
{{entity_title}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Entities]]&lt;br /&gt;
[[Category:Point entities]]&lt;/div&gt;</summary>
		<author><name>Tunac</name></author>
	</entry>
	<entry>
		<id>https://wiki.svencoop.com/index.php?title=Info_node_air&amp;diff=815</id>
		<title>Info node air</title>
		<link rel="alternate" type="text/html" href="https://wiki.svencoop.com/index.php?title=Info_node_air&amp;diff=815"/>
		<updated>2023-01-07T12:22:11Z</updated>

		<summary type="html">&lt;p&gt;Tunac: Info about swimming NPCs added, linked to nodes tutorial&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Entity_Infobox&lt;br /&gt;
| title=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Equivalent to [[info_node]] for flying &amp;amp; swimming monsters, like monster_alien_controller, monster_stukabat, and monster_ichthyosaur.&lt;br /&gt;
&lt;br /&gt;
An in-depth tutorial on [[Mapping/All_about_info_nodes|how to use nodes]] is available in the [[Mapping]] section of the wiki.&lt;br /&gt;
&lt;br /&gt;
== Keyvalues ==&lt;br /&gt;
 &lt;br /&gt;
{{Entity_keyvalue|Activity|hinttype|Currently non-functional.}}&lt;br /&gt;
{{Entity_keyvalue|Hint type|activity|Currently non-functional.}}&lt;br /&gt;
&lt;br /&gt;
== Changes ==&lt;br /&gt;
&lt;br /&gt;
5.0 Steam Release: Added &#039;Activity&#039; and &#039;Hint Type&#039; keyvalues.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{entity_title}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Entities]]&lt;br /&gt;
[[Category:Point entities]]&lt;/div&gt;</summary>
		<author><name>Tunac</name></author>
	</entry>
	<entry>
		<id>https://wiki.svencoop.com/index.php?title=Info_node&amp;diff=814</id>
		<title>Info node</title>
		<link rel="alternate" type="text/html" href="https://wiki.svencoop.com/index.php?title=Info_node&amp;diff=814"/>
		<updated>2023-01-07T12:14:00Z</updated>

		<summary type="html">&lt;p&gt;Tunac: Added link to nodes tutorial and paragraphed the wall of text&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Entity_Infobox&lt;br /&gt;
| title=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Nodes are required in order for monsters to navigate around the map properly.&lt;br /&gt;
&lt;br /&gt;
It is advised to have nodes&#039; origins hover slightly over the ground by 1 to 4 units, in order to prevent nodes from being ignored in nodegraph calculation due to them falsely being identified as being stuck in the floor. The nodegraph is created about 3 seconds after a map has loaded, if the current nodegraph appears to be outdated (Map&#039;s &#039;Create date&#039; later than nodegraph&#039;s) or does not exist. The nodegraph-file is located in &#039;maps/graphs/mapname.nod&#039;. The *.nrp-file which is also produced is a log file containing rather difficult-to-use information. There is no distance limitation for two nodes to connect. Try to place them in as little quantity as possible and as great quantity as required.&lt;br /&gt;
&lt;br /&gt;
Nodes are also used when a monster is ordered to move somewhere by a scripted_sequence, unless the monster is set to not use them. Without nodes, monsters can only walk to their target if it is in direct line of sight with no obstacles blocking the path.&lt;br /&gt;
&lt;br /&gt;
The nodegraph will never change in the middle of play. If a path between two nodes is being blocked sometime after nodegraph-generation, monsters will understand this. However, if a path is blocked while the nodegraph is being calculated, and opened afterwards, monsters won&#039;t grasp this. This can happen when you have a door that starts closed. To fix this, you will have to make the door start open and close it about 5 seconds after the map has loaded, when the nodegraph is generated, using a [[trigger_auto]].&lt;br /&gt;
&lt;br /&gt;
An in-depth tutorial on [[Mapping/All_about_info_nodes|how to use nodes]] is available in the [[Mapping]] section of the wiki.&lt;br /&gt;
&lt;br /&gt;
== Keyvalues ==&lt;br /&gt;
&lt;br /&gt;
 {{Entity_keyvalue|Activity|hinttype|Currently non-functional.}}&lt;br /&gt;
{{Entity_keyvalue|Hint type|activity|Currently non-functional.}}&lt;br /&gt;
&lt;br /&gt;
== Changes ==&lt;br /&gt;
&lt;br /&gt;
5.0 Steam Release: Added &#039;Activity&#039; and &#039;Hint Type&#039; keyvalues.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{entity_title}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Entities]]&lt;br /&gt;
[[Category:Point entities]]&lt;/div&gt;</summary>
		<author><name>Tunac</name></author>
	</entry>
	<entry>
		<id>https://wiki.svencoop.com/index.php?title=Game_text&amp;diff=813</id>
		<title>Game text</title>
		<link rel="alternate" type="text/html" href="https://wiki.svencoop.com/index.php?title=Game_text&amp;diff=813"/>
		<updated>2023-01-07T11:46:54Z</updated>

		<summary type="html">&lt;p&gt;Tunac: Put resolution and position in a table for increased readability&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Entity_Infobox&lt;br /&gt;
| title=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
An entity to display HUD messages to the player who activated it, or all players.&lt;br /&gt;
&lt;br /&gt;
== Keyvalues ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_keyvalue|Message text|message|The message to send. Can have a maximum of 490 chars. However, Valve Hammer Editor will truncate the string to 128 if longer than that and crash if the keyvalue is displayed while having more than 127 chars. If you need a message that long, it is adviced to manually assemble it once using a few trigger_changevalue entities. Using &#039;\n&#039;, you can get into the next line.}}&lt;br /&gt;
{{Entity_keyvalue|X|x|Horizontal positioning. 0.0 to 1.0. 0.0 means left. 1.0 means right. More accurately, this defines the horizontal offset of where every line of the message starts. A value of 1.0 would literally shove the message off of the right side of the screen. &#039;-1&#039; centers every line depending on its length.}}&lt;br /&gt;
{{Entity_keyvalue|Y|y|Vertical positioning. 0.0 to 1.0. 0.0 means top. 1.0 means bottom. &#039;-1&#039; centers the whole message as one, if it has multiple lines. It is adviced to not center this, as it obscures the players view too much and looks shabby when drawn over the crosshair. Try values like 0.4 or 0.6 instead. Note that depending on the resolution, too high/low values may end up out of screen. Try to stay between 0.2 and 0.8. In case you ever wondered how big of an y-value equals exactly one line break, here is a list showing that in dependence on the player&#039;s resolution:}}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Resolution !! Position&lt;br /&gt;
|-&lt;br /&gt;
|1600 x 1200||0.016666&lt;br /&gt;
|-&lt;br /&gt;
|1280 x 960||0.020800&lt;br /&gt;
|-&lt;br /&gt;
|1280 x 1024||0.019550&lt;br /&gt;
|-&lt;br /&gt;
|1152 x 864||0.023150&lt;br /&gt;
|-&lt;br /&gt;
|1024 x 768||0.026000&lt;br /&gt;
|-&lt;br /&gt;
|800 x 600||0.033333&lt;br /&gt;
|-&lt;br /&gt;
|720 x 576||0.034700&lt;br /&gt;
|-&lt;br /&gt;
|640 x 480||0.041600&lt;br /&gt;
|-&lt;br /&gt;
|960 x 600||0.033333&lt;br /&gt;
|-&lt;br /&gt;
|1088 x 612||0.032700&lt;br /&gt;
|-&lt;br /&gt;
|1280 x 720||0.027800&lt;br /&gt;
|-&lt;br /&gt;
|1280 x 800||0.025000&lt;br /&gt;
|-&lt;br /&gt;
|1600 x 900||0.022222&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Entity_keyvalue|Text effect|effect|Specify a text effect. &#039;Fade in/out&#039; has a time-value to fade in, to stay on screen and to fade out. &#039;Credits&#039; is the same as &#039;Fade in/out&#039;, except that it causes the message to flicker. &#039;Scan out&#039; has a time-value for per-char color transition and fade-in time per char.}}&lt;br /&gt;
{{Entity_keyvalue|Color 1 (Add 4th number &amp;amp;gt;0 for opaque)|color|Color with which the text is rendered. Note that HUD messages are rendered additive. If you want your text to appear darker, make the color darker. You can add optional 4th parameter for opaque.}}&lt;br /&gt;
{{Entity_keyvalue|Color 2 (Add 4th number &amp;amp;gt;0 for opaque)|color2|Another color with which the text is rendered. It comes to use with &#039;Credits&#039;- and &#039;Scan out&#039;-effect only. Note that HUD messages are rendered additive. If you want your text to appear darker, make the color darker. You can add optional &lt;br /&gt;
&lt;br /&gt;
4th parameter for opaque.}}&lt;br /&gt;
{{Entity_keyvalue|Fade in time (or character scan time)|fadein|If the effect is &#039;Fade in/out&#039; or &#039;Credits&#039;, this specifies the fade-in time. If the effect is set to &#039;Scan out&#039;, this sets the time that is taken for every single char to change its color from &#039;Color 2&#039; to &#039;Color 1&#039;. Fade-in time should be short.}}&lt;br /&gt;
{{Entity_keyvalue|Fade out time|fadeout|If the effect is &#039;Fade in/out&#039; or &#039;Credits&#039;, this specifies the fade-out time. If the effect is set to &#039;Scan out&#039;, this has no effect. Fade-out time should be longer than fade-in time, so the player notices that the message is going to disappear and can react by trying to read faster.}}&lt;br /&gt;
{{Entity_keyvalue|Hold time|holdtime|Time the message stays on screen after fading in, before it will being to fade out. For effect &#039;Scan out&#039;, this delay will start after all chars have faded in.}}&lt;br /&gt;
{{Entity_keyvalue|Scan time|fxtime|For effect &#039;Scan out&#039;, this defines the time required for a character to fade in to &#039;Color 2&#039;. The next char will only start fading in as the previous one finishes. Small values like 0.01 to 0.1 seconds make sense here.}}&lt;br /&gt;
{{Entity_keyvalue|Text channel|channel|Select one of four channels to use. If a message already exists in one channel, it will be replaced.}}&lt;br /&gt;
&lt;br /&gt;
== Flags ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_flag|1|All players|If set, the game_text&#039;s message will be displayed to all players instead of just the activator.}}&lt;br /&gt;
{{Entity_flag|2|No console echo|If set, players will not receive a duplicate of the message in their console. Set this for messages that can be reread or are sent often to prevent console-spam and reduce network-bandwidth-usage.}}&lt;br /&gt;
&lt;br /&gt;
== Notes ==&lt;br /&gt;
&lt;br /&gt;
The game_text&#039;s target will be fired when the game_text entity is triggered. This is very useful when you want to use a single notification sound consistently on all your game_text entities.&lt;br /&gt;
Sven Co-op features a HUD monster-/player-info, which uses HUD message channel 3. Avoid using that channel for important messages. Even if you disable monster-info by setting the CVar &#039;mp_allowmonsterinfo&#039; to &#039;0&#039;, player-info will still display on that channel.&lt;br /&gt;
&lt;br /&gt;
== Issues ==&lt;br /&gt;
&lt;br /&gt;
If a text message is replaced by another one because it is set to use the same channel, the time-values won&#039;t be updated, causing the new message to expire earlier than desired. Furthermore, only one text message can exist at a specific screen coordinate at a time, even if two different channels are provided.&lt;br /&gt;
If one line of the message is too long to fit on a player&#039;s screen, it will crash the game.&lt;br /&gt;
&lt;br /&gt;
== Changes ==&lt;br /&gt;
&lt;br /&gt;
5.0 Steam Release: Colour can now have opacity parameter specified.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{entity_title}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Entities]]&lt;br /&gt;
[[Category:Point entities]]&lt;/div&gt;</summary>
		<author><name>Tunac</name></author>
	</entry>
	<entry>
		<id>https://wiki.svencoop.com/index.php?title=Custom_precache&amp;diff=812</id>
		<title>Custom precache</title>
		<link rel="alternate" type="text/html" href="https://wiki.svencoop.com/index.php?title=Custom_precache&amp;diff=812"/>
		<updated>2023-01-07T10:56:34Z</updated>

		<summary type="html">&lt;p&gt;Tunac: Added info about sky map precaching&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Entity_Infobox&lt;br /&gt;
| title=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Allows you to set 9 custom models, 9 custom sounds, and 9 custom skyboxes to be precached. Note that model and sound replacements done through model and/or sound replacement file are already precached automatically. In case 9 of either sort do not suffice for your case, create another custom_precache entity. Model path starts in Sven Co-op&#039;s directory.&lt;br /&gt;
&lt;br /&gt;
* You should put your models into the &#039;models&#039;-folder.&lt;br /&gt;
* Sound path starts in the &#039;sound&#039;-folder.&lt;br /&gt;
* Skyboxes are placed in the &#039;gfx/env/&#039; directory.&lt;br /&gt;
Creating subfolders by your map&#039;s name for models &amp;amp; sound is advised.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{entity_title}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Entities]]&lt;br /&gt;
[[Category:Point entities]]&lt;/div&gt;</summary>
		<author><name>Tunac</name></author>
	</entry>
	<entry>
		<id>https://wiki.svencoop.com/index.php?title=Ambient_music&amp;diff=811</id>
		<title>Ambient music</title>
		<link rel="alternate" type="text/html" href="https://wiki.svencoop.com/index.php?title=Ambient_music&amp;diff=811"/>
		<updated>2023-01-06T22:51:44Z</updated>

		<summary type="html">&lt;p&gt;Tunac: Created page with &amp;quot;{{Entity_Infobox | title= }}  This entity is used to play music within a level. The difference from Ambient Generic is the volume being controlled via the...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Entity_Infobox&lt;br /&gt;
| title=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This entity is used to play music within a level. The difference from [[ambient_generic|Ambient Generic]] is the volume being controlled via the CVar &#039;mp3volume&#039; instead of &#039;volume&#039;.&lt;br /&gt;
&lt;br /&gt;
== Keyvalues ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_keyvalue|Sound File|message|Name of the sound file to play. File Path starts in the &#039;sound&#039;-folder, example: &#039;mymap/musicfile.ogg&#039;.}}&lt;br /&gt;
{{Entity_keyvalue|Volume|volume|Set how loud the sound shall be in a range from 0 (not audible) to 10 (normal), but ultimately controlled by the player from the options menu.}}&lt;br /&gt;
&lt;br /&gt;
== Flags ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_flag|1|Start Silent|Music starts once the entity is triggered.}}&lt;br /&gt;
{{Entity_flag|2|Loop|Replays the music until toggled off.}}&lt;br /&gt;
{{Entity_flag|4|Activator Only}}&lt;br /&gt;
&lt;br /&gt;
{{entity_title}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Entities]]&lt;br /&gt;
[[Category:Point entities]]&lt;/div&gt;</summary>
		<author><name>Tunac</name></author>
	</entry>
	<entry>
		<id>https://wiki.svencoop.com/index.php?title=Svencraft&amp;diff=810</id>
		<title>Svencraft</title>
		<link rel="alternate" type="text/html" href="https://wiki.svencoop.com/index.php?title=Svencraft&amp;diff=810"/>
		<updated>2023-01-06T18:33:41Z</updated>

		<summary type="html">&lt;p&gt;Tunac: Fix broken link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Svencraft is the Map Editor for Sven Co-op. It closely resembles Valve Hammer Editor in design and use but comes with additional features. &lt;br /&gt;
&lt;br /&gt;
If you want to use Svencraft, please refer to the guide on [[Mapping/Setting up the SDK|Setting up the SDK]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Game]]&lt;/div&gt;</summary>
		<author><name>Tunac</name></author>
	</entry>
	<entry>
		<id>https://wiki.svencoop.com/index.php?title=Mapping/All_about_info_nodes&amp;diff=809</id>
		<title>Mapping/All about info nodes</title>
		<link rel="alternate" type="text/html" href="https://wiki.svencoop.com/index.php?title=Mapping/All_about_info_nodes&amp;diff=809"/>
		<updated>2023-01-06T18:10:35Z</updated>

		<summary type="html">&lt;p&gt;Tunac: Tiny edit to force-reload the new images&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This guide teaches you all about the usage of info_nodes. There is actually a bit more to it than just tossing a few of them into your map, so here we go:&lt;br /&gt;
&lt;br /&gt;
==What is a node?==&lt;br /&gt;
A node is a nagivation point used by the AI to help them move around in your map. You might have seen the message &amp;quot;&#039;&#039;Rebuilding Node Graph&#039;&#039;&amp;quot; when loading up a new map. At this stage the engine is creating a network of lines between all nodes, so monsters and NPCs know where valid paths are from one node to another.&lt;br /&gt;
&lt;br /&gt;
==Nodes and AI==&lt;br /&gt;
Even without the nodes, the AI in the Goldsrc engine knows how to walk through 3D space and navigate around small objects. The AI has been improved in Sven Co-op over the years and is even better at navigating on its own. However, it still relies on nodes to find its way through more complicated scenarios and execute its AI behaviour.&lt;br /&gt;
&lt;br /&gt;
This first example scenario puts the Zombie behind the counter. It will want to walk towards the player but it will fail since it can&#039;t determine a clear path. The AI might be smart enough to navigate past smaller objects but this large counter is too much for it to handle.&lt;br /&gt;
&lt;br /&gt;
[[File:NmcnQdj.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Let&#039;s add some info_nodes (yellow squares). These points will generate a network of paths for the Zombie to take. As soon as it spots the player and it can&#039;t directly engage him, it will look to the node network for guidance and determine the fastest path from its current node to the node the player is currently closest to (indicated by the red line).&lt;br /&gt;
&lt;br /&gt;
[[File:Tc1vzny.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Another example of the usage of nodes is to help the AI execute its special behaviour. The AI code of this Grunt for instance, tells it to find cover when it is taking damage. It will look to the node network to find this spot, so I&#039;ve placed a strategic node behind the sandbag.&lt;br /&gt;
&lt;br /&gt;
[[File:Zyqp87F.png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Node Networks==&lt;br /&gt;
As we&#039;ve established, nodes are important for the AI to function properly. But how is the network built? The engine will determine if there is a straight visual line between two nodes and if there is, a link is made. I&#039;ve placed four nodes in this room, and the links will look like this:&lt;br /&gt;
&lt;br /&gt;
[[File:VV1RNjq.png|400px]]&lt;br /&gt;
&lt;br /&gt;
You can actualy see these links in game. Walk to a spot where you know a node is at and type &#039;&#039;&#039;impulse 199&#039;&#039;&#039; into the console. This will show you all links for this node for a limited amount of time. Mind that it will only show this information for nodes you are close enough to, it will not show you the network for the entire map.&lt;br /&gt;
&lt;br /&gt;
[[File:NSCSirg.jpg|400px]]&lt;br /&gt;
&lt;br /&gt;
A single node can hold very many link to the rest of the network. As long as there is a possible line of sight, there shall be another link.&lt;br /&gt;
&lt;br /&gt;
[[File:Wu17QvH.png|400px]]&lt;br /&gt;
&lt;br /&gt;
The visibility between the nodes can be blocked by solid world geometry and also by func_walls, &#039;&#039;&#039;as long as the wall is higher than 32 units.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[File:KhV5Z2u.png|400px]]&lt;br /&gt;
&lt;br /&gt;
The point where the node will be created will always float at 32 units above ground level, so if a wall is 32 units or lower there will be a link. The engine will also create links through non-solid brushes no matter how high they are.&lt;br /&gt;
&lt;br /&gt;
[[File:KsdYcxT.png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Four different types==&lt;br /&gt;
Now we know how the network is built, we can expand on this knowledge by introducing the different types of monsters. There are four types:&lt;br /&gt;
*Small sized (Headcrab, Chumtoad, etc)&lt;br /&gt;
*Normal sized (Zombie, Grunt, etc)&lt;br /&gt;
*Large sized (Gargantua, Bullsquid, etc)&lt;br /&gt;
*Flying (Alien Controller, Stukabat, etc)&lt;br /&gt;
&lt;br /&gt;
When the node network is built, it will also determine if a certain monster type can actually use the paths. A passage might be too small for a Large sized creature, so it will not establish a usable link between the nodes. You can highlight the different types by use of the other impulse commands. Small creatures will use the default path visible with &#039;&#039;impulse 199&#039;&#039;, &#039;&#039;impulse 197&#039;&#039; will show you the paths for Normal sized creatures, &#039;&#039;impulse 196&#039;&#039; for Large sized Creatures and &#039;&#039;impulse 195&#039;&#039; for all airborne creatures (more on them later!).&lt;br /&gt;
&lt;br /&gt;
In the following example you can see how the node network for Normal sized creatures (highlighted as a pink beam) doesn&#039;t extend under the low beam, because the brush blocks the way. Small sized creatures would however be able to crawl under it and use the default node link to find their way.&lt;br /&gt;
&lt;br /&gt;
[[File:4eJNF4S.jpg|400px]]&lt;br /&gt;
&lt;br /&gt;
==How to properly place info_nodes==&lt;br /&gt;
Now that we know how the node network works, we can move on to placing our nodes. What are good practises to get the most out of our nodes?&lt;br /&gt;
&lt;br /&gt;
When the map starts, all info_node entities will fall to ground level, so it does not matter how high above the ground you place them. Node points will always be created 32 units above the ground where you place your info_node entity. Just make sure that the origin on the info_node is not inside the floor because this might cause the engine to overlook them.&lt;br /&gt;
&lt;br /&gt;
[[File:CQZrkhs.png|400px]]&lt;br /&gt;
&lt;br /&gt;
So where to place your nodes? We&#039;ve seen that AI can get into trouble whenever there is an obstacle or no clear line between it and the player. So it&#039;s good to add a few nodes to help them navigate around (green). You can see those nodes at the door and around the counter. Next to that it&#039;s good to place a few &#039;anchor points&#039; (blue) in the room. This will give the AI a starting point to navigate from and it can serve as a spot for special AI behaviour (such as the Grunt running for cover earlier).&lt;br /&gt;
&lt;br /&gt;
[[File:WlKqghy.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Some guides might tell you to place an info_node every X units. This is not strictly necessary. The engine also doesn&#039;t require it. You can place two nodes at a distance of 9000 units from eachother and they will still create a link, as long as they have a line of sight to eachother. You just have to place enough nodes for the AI to have enough anchor points. If you do not have enough, you might encounter undesirable AI behaviour. For instance, if the node a Grunt is falling back to is too far away, it will not resume its normal behavior for a long time. If the node is closer, it will then decide on a new course of action once it has reached the node.&lt;br /&gt;
&lt;br /&gt;
As mentioned before, nodes will only create a link where there is a visual line of sight between two nodes. Luckily, it ignores movable brush entities, such as func_doors, so you can place this door in between the nodes and there still will be a link.&lt;br /&gt;
&lt;br /&gt;
[[File:GKabYUx.png|400px]]&lt;br /&gt;
&lt;br /&gt;
The nodes will link through most brush entities that are movable, such as func_train, func_rotating, func_button, but also func_breakables. Next to that it will go through all non-solid entities such as func_illusionary and everything that uses zhlt_noclip 1.&lt;br /&gt;
&lt;br /&gt;
==info_node_air==&lt;br /&gt;
Airborne monsters use a special type of node called the info_node_air. Just as regular info_nodes, these are used for navigation and AI behaviour. However, you might find that airborne monsters are not as good as finding their way to the player as land creatures, since they also have to navigate in upward and downward directions. Info_node_air will not drop down to ground level and info_node_air and info_node will not create links to eachother.&lt;br /&gt;
&lt;br /&gt;
Especially the Alien Controller will hardly move on its own without the help of air nodes. To make sure it will float down or up to engage players on their level, you&#039;ll need enough air nodes on that same level. Without these, the Alien Controller will just hover there, not knowing how to get to the player under the ledge. So when you use these monsters, it&#039;s good to place extra nodes.&lt;br /&gt;
&lt;br /&gt;
[[File:BoVrm08.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Other flying creatures that use the air nodes are the Stukabat and the Flyer Flock but also swimming creatures make use of them, such as the Leech and the Ichthyosaur. So make sure you place enough info_node_air entities in the waters that house them.&lt;br /&gt;
&lt;br /&gt;
[[File:AHxgxAw.png|400px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Apache and the Osprey technically also use the air nodes network for navigation, however, the Osprey will only function with path_corners to guide it (the game crashes without). The Apache will use air nodes to find its way to the player but isn&#039;t very good at it and will just wierdly wobble after the player. Setting up a network of path_corners for the Apache will make it behave far more realisticly and it will then require no air nodes for its navigation.&lt;br /&gt;
&lt;br /&gt;
==Less is more==&lt;br /&gt;
As we&#039;ve established, you just need enough nodes for the monsters to find their way around. But often maps are littered with nodes that serve hardly any function at all. The example below shows you the route (red line) the Grunt has to take to find its way to the player. It only needs those four nodes to get there, so each node in between is just an extra unnecessary step. So if we remove all of those and leave a few nodes as anchor points for navigation and AI behaviour, we can do with almost a third of the nodes we started with.&lt;br /&gt;
&lt;br /&gt;
[[File:UBuzlT1.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Having less nodes is good in multiple ways. First, it uses up less entity slots (which are limited). Secondly, it makes the node graph calculation faster and finally, it makes the node network far less complex. This can benefit the performance of your map, since each monster has to do route calculations. For only a handfull of monsters this will not be a problem but imagine a large map with many active roaming enemies accessing the node network constantly.&lt;br /&gt;
&lt;br /&gt;
==Misc. info==&lt;br /&gt;
In Sven Co-op, the info_node entity also has an Activity and Hint type keyvalue. These currently have no function. Judging from the source code, Valve planned to put extra information into nodes, so the AI could use them for specific purposes. Imagine a node that suggests to a Grunt that this is a place to find cover. These hint nodes actually ended up being used in Half-Life 2. In HL1 the code for hint nodes is only found for the Houndeye, where it can investigate buzzing machinery and blinking lights.&lt;br /&gt;
&lt;br /&gt;
[[Category:Mapping]]&lt;br /&gt;
[[Category:Tutorials]]&lt;/div&gt;</summary>
		<author><name>Tunac</name></author>
	</entry>
	<entry>
		<id>https://wiki.svencoop.com/index.php?title=Func_breakable&amp;diff=808</id>
		<title>Func breakable</title>
		<link rel="alternate" type="text/html" href="https://wiki.svencoop.com/index.php?title=Func_breakable&amp;diff=808"/>
		<updated>2023-01-06T15:43:05Z</updated>

		<summary type="html">&lt;p&gt;Tunac: Added info about instant break weapons&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Entity_Infobox&lt;br /&gt;
| title=&lt;br /&gt;
| type=b&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A brush entity, which receives damage from all normal damage sources, such as weapon fire, and can, eventually, break from it, spilling some debris/gibs in its place.&lt;br /&gt;
&lt;br /&gt;
== Keyvalues ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_keyvalue|Classification|classify|Classification of this entity. If specified, enemies of this class will attack this entity.}}&lt;br /&gt;
{{Entity_keyvalue|Strength|health|Set how many hitpoints the func_breakable has.}}&lt;br /&gt;
{{Entity_keyvalue|Material type|material|Choose the material which matches what your func_breakable is supposed to be the most. The material type affects the func_breakable&#039;s sounds emitted when it takes damage, as well as which gibs are created when it is destroyed. If the material is set to &#039;Unbreakable glass&#039;, the func_breakable is, regardless of how funny that is, in fact, unbreakable.}}&lt;br /&gt;
{{Entity_keyvalue|Instant break weapon|weapon|Allows you to specify an instant-break weapon other than the crowbar. Requires &amp;quot;Instant Break&amp;quot; flag to work.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Crowbar&#039;&#039;&#039; is the default option and will work with both the crowbar and electric crowbar. Will not work with a thrown crowbar.&lt;br /&gt;
* &#039;&#039;&#039;Crowbar (Electric Only)&#039;&#039;&#039; requires the electric-mode of the crowbar. Will not work with a thrown crowbar.&lt;br /&gt;
* &#039;&#039;&#039;Pipe Wrench&#039;&#039;&#039;}}&lt;br /&gt;
{{Entity_keyvalue|Gibs direction and velocity|explosion|Set whether the gibs fly relative to where the attack came from, damage received and material (e.g. concrete gibs fly with less velocity) or randomly. This has no effect on func_breakables destroyed via a trigger. Note: Blowing up stuff is much more fun when shit goes flying instead of just falling to the ground as if nothing happened.}}&lt;br /&gt;
{{Entity_keyvalue|Delay before fire|delay|Delay between the func_breakable breaking and it actually firing its target. If the &#039;Touch&#039;-flag is set, the func_breakable will break in the same moment in which it fires its target.}}&lt;br /&gt;
{{Entity_keyvalue|Gib model|gibmodel|Custom model of broken entity parts. Models with multiple &#039;Submodels&#039; uses all of sub-models for gibs.}}&lt;br /&gt;
{{Entity_keyvalue|Spawn on break|spawnobject|If the func_breakable is broken, the specified item will drop. It does not respawn after collected.}}&lt;br /&gt;
{{Entity_keyvalue|Explode magnitude &amp;lt;nowiki&amp;gt;(0=none)&amp;lt;/nowiki&amp;gt;|explodemagnitude|If greater than zero, the func_breakable will cause an explosion at its position when it breaks. The greater the magnitude, the more damage the explosion will cause. Note that explosion damage values above 200 are know to cause explosion damage to even go through walls.}}&lt;br /&gt;
{{Entity_keyvalue|Sound replacement file|soundlist|Allows you to setup a sound replacement file for the func_breakables sounds. The path begins in &#039;svencoop/sound/mapname&#039;, whereas &#039;mapname&#039; would be your map&#039;s name. You can go to the parent directory using &#039;../&#039;. A valid sound replacement file contains one or more lines with two sound-paths, which are separated by a space and wrapped into quotes. The first sound is the sound to be replaced. The second sound is the new sound. Sound-paths start in the sound directory. You cannot go to the parent directory using &#039;../&#039; in that case. These sounds do not need to be precached using a custom_precache point entity.}}&lt;br /&gt;
{{Entity_keyvalue|Show HUD info|showhudinfo|If set to &#039;Yes&#039;, the HUD information (name, health etc.) are shown.}}&lt;br /&gt;
&lt;br /&gt;
== Flags ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_flag|1|Only trigger|If set, this func_breakable will only break when triggered, even if its health value is set to &#039;1&#039;.}}&lt;br /&gt;
{{Entity_flag|2|Touch|If set, this func_breakable will break as soon as a player touches it. If a delay before fire is set, the func_breakable will wait for that to run out before breaking after a touch.}}&lt;br /&gt;
{{Entity_flag|4|Pressure|If set, the func_breakable can be destroyed from pressure, as is e.g. inflicted by a func_train, regardless of the train&#039;s damage.}}&lt;br /&gt;
{{Entity_flag|8|Repairable|If set, this func_breakable can be repaired, as in, have its health restored, by a player &#039;attacking&#039; it with weapon_pipewrenches&#039; primary attack, for the amount of that weapon&#039;s primary damage value.}}&lt;br /&gt;
{{Entity_flag|32|Show HUD info|If set, the func_breakable will show HUD info for players looking at it. This is not affected by CVar &#039;mp_allowmonsterinfo&#039;.}}&lt;br /&gt;
{{Entity_flag|64|Immune to Client|If set, the func_breakable will be immune to player attacks.}}&lt;br /&gt;
{{Entity_flag|256|Instant Break|If set, this func_breakable will break instantly if hit with a crowbar.}}&lt;br /&gt;
{{Entity_flag|512|Explosives only|If set, this func_breakable can be damaged by explosives only.}}&lt;br /&gt;
&lt;br /&gt;
== Changes ==&lt;br /&gt;
&lt;br /&gt;
* 5.0 Steam Release: Renamed &#039;Target on Break&#039; keyvalue to &#039;Target&#039; (removed from this subpage, it&#039;s not unique anymore).&lt;br /&gt;
&lt;br /&gt;
{{entity_title}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Entities]]&lt;br /&gt;
[[Category:Brush entities]]&lt;/div&gt;</summary>
		<author><name>Tunac</name></author>
	</entry>
	<entry>
		<id>https://wiki.svencoop.com/index.php?title=Func_pushable&amp;diff=807</id>
		<title>Func pushable</title>
		<link rel="alternate" type="text/html" href="https://wiki.svencoop.com/index.php?title=Func_pushable&amp;diff=807"/>
		<updated>2023-01-06T15:37:52Z</updated>

		<summary type="html">&lt;p&gt;Tunac: Added info about instant break weapons&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Entity_Infobox&lt;br /&gt;
| title=&lt;br /&gt;
| type=b&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Similar to [[func_breakable]], but this entity can also be pushed and carried by players.&lt;br /&gt;
&lt;br /&gt;
== Keyvalues ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_keyvalue|Classification|classify|Classification of this entity. If specified, enemies of this class will attack this entity.}}&lt;br /&gt;
{{Entity_keyvalue|Target on break|target|The func_breakable triggers its target when it breaks.}}&lt;br /&gt;
{{Entity_keyvalue|Strength|health|Set how many hitpoints the func_breakable has.}}&lt;br /&gt;
{{Entity_keyvalue|Material type|material|Choose the material which matches what your func_breakable is supposed to be the most. The material type affects the func_breakable&#039;s sounds emitted when it takes damage, as well as which gibs are created when it is destroyed. If the material is set to &#039;Unbreakable glass&#039;, the func_breakable is, regardless of how funny that is, in fact, unbreakable.}}&lt;br /&gt;
{{Entity_keyvalue|Instant break weapon|weapon|Allows you to specify an instant-break weapon other than the crowbar. Requires the &amp;quot;1-Hit Break&amp;quot; flag to work.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Crowbar&#039;&#039;&#039; is the default option and will work with both the crowbar and electric crowbar. Will not work with a thrown crowbar.&lt;br /&gt;
* &#039;&#039;&#039;Crowbar (Electric Only)&#039;&#039;&#039; requires the electric-mode of the crowbar. Will not work with a thrown crowbar.&lt;br /&gt;
* &#039;&#039;&#039;Pipe Wrench&#039;&#039;&#039;}}&lt;br /&gt;
{{Entity_keyvalue|Gibs direction and velocity|explosion|Set whether the gibs fly relative to where the attack came from, damage received and material (e.g. concrete gibs fly with less velocity) or randomly. This has no effect on func_breakables destroyed via a trigger. Note: Blowing up stuff is much more fun when shit goes flying instead of just falling to the ground as if nothing happened.}}&lt;br /&gt;
{{Entity_keyvalue|Delay before fire|delay|Delay between the func_breakable breaking and it actually firing its target. If the &#039;Touch&#039;-flag is set, the func_breakable will break in the same moment in which it fires its target.}}&lt;br /&gt;
{{Entity_keyvalue|Gib model|gibmodel|Custom model of broken entity parts. Models with multiple &#039;Submodels&#039; uses all of sub-models for gibs.}}&lt;br /&gt;
{{Entity_keyvalue|Spawn on break|spawnobject|If the func_breakable is broken, the specified item will drop. It does not respawn after collected.}}&lt;br /&gt;
{{Entity_keyvalue|Explode magnitude &amp;lt;nowiki&amp;gt;(0=none)&amp;lt;/nowiki&amp;gt;|explodemagnitude|If greater than zero, the func_breakable will cause an explosion at its position when it breaks. The greater the magnitude, the more damage the explosion will cause. Note that explosion damage values above 200 are know to cause explosion damage to even go through walls.}}&lt;br /&gt;
{{Entity_keyvalue|Sound replacement file|soundlist|Allows you to setup a sound replacement file for the func_breakables sounds. The path begins in &#039;svencoop/sound/mapname&#039;, whereas &#039;mapname&#039; would be your map&#039;s name. You can go to the parent directory using &#039;../&#039;. A valid sound replacement file contains one or more lines with two sound-paths, which are separated by a space and wrapped into quotes. The first sound is the sound to be replaced. The second sound is the new sound. Sound-paths start in the sound directory. You cannot go to the parent directory using &#039;../&#039; in that case. These sounds do not need to be precached using a custom_precache point entity.}}&lt;br /&gt;
{{Entity_keyvalue|Friction (0-400)|friction|Friction of func_pushable, higher values makes it harder to move. Set it to 400 or values near to 400 to make it unmovable by pushing it (still func_pushable can be easily moved by using it and pressing left/right).}}&lt;br /&gt;
{{Entity_keyvalue|Buoyancy|buoyancy|How well this entity will float in liquid.}}&lt;br /&gt;
{{Entity_keyvalue|Max Hull size|maxhullsize|Obsolete.}}&lt;br /&gt;
{{Entity_keyvalue|Min Hull size|minhullsize|Obsolete.}}&lt;br /&gt;
{{Entity_keyvalue|HUD Info name|displayname|Name you will see on the in-game HUD when looking at this entity. Requires &amp;quot;Show HUD Info&amp;quot; flag.}}&lt;br /&gt;
&lt;br /&gt;
== Flags ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_flag|8|Repairable|Players can repair this entity with the wrench.}}&lt;br /&gt;
{{Entity_flag|16|Monsters Ignore?|Monsters will ignore this entity.}}&lt;br /&gt;
{{Entity_flag|32|Show HUD Info|Whether or not to show the name and health of this entity when looking at it in-game.}}&lt;br /&gt;
{{Entity_flag|128|Breakable|Can be broken.}}&lt;br /&gt;
{{Entity_flag|256|1-Hit Break|Can be broken in one hit by the weapon set in &amp;quot;Instant Break Weapon&amp;quot;.}}&lt;br /&gt;
{{Entity_flag|512|Explosives Only|Can only be broken with explosives.}}&lt;br /&gt;
{{Entity_flag|1024|Liftable|Players can lift this entity off of the ground. It&#039;s recommended to not using this feature, it&#039;s heavily bugged.}}&lt;br /&gt;
&lt;br /&gt;
== Issues ==&lt;br /&gt;
&lt;br /&gt;
* Liftable pushables shake when being held (and fly away when let go of).&lt;br /&gt;
* Stacking liftable pushables on each other breaks them, making them fly infinitely up when attempting to be lifted again.&lt;br /&gt;
* Pushables tend to get stuck in or go through complex geometry. Try to keep the area around this entity as square as possible.&lt;br /&gt;
* Hull Size key is obsolete.&lt;br /&gt;
&lt;br /&gt;
{{entity_title}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Entities]]&lt;br /&gt;
[[Category:Brush entities]]&lt;/div&gt;</summary>
		<author><name>Tunac</name></author>
	</entry>
	<entry>
		<id>https://wiki.svencoop.com/index.php?title=Func_platrot&amp;diff=806</id>
		<title>Func platrot</title>
		<link rel="alternate" type="text/html" href="https://wiki.svencoop.com/index.php?title=Func_platrot&amp;diff=806"/>
		<updated>2023-01-06T14:38:34Z</updated>

		<summary type="html">&lt;p&gt;Tunac: Language tweaks&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Entity_Infobox&lt;br /&gt;
| title=&lt;br /&gt;
| type=b&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Same as [[func_plat]], but it also rotates with customizable rotation speed. Vertically moving elevator that moves up automatically when a player steps on it. It&#039;s also automatically called when player wait for it at the top of the whole travel altitude. This entity requires an origin brush tied to it.&lt;br /&gt;
&lt;br /&gt;
== Keyvalues ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_keyvalue|Move Sound|movesnd|Sound that is played while the platform is moving.}}&lt;br /&gt;
{{Entity_keyvalue|Move Sound Loops?|movesnd_loop|Sets if Move Sound should be looped during brush movement until it stops.}}&lt;br /&gt;
{{Entity_keyvalue|Stop Sound|stopsnd|Sound which is played once as the train stops moving.}}&lt;br /&gt;
{{Entity_keyvalue|Sound Volume|volume|Self-explanatory.}}&lt;br /&gt;
{{Entity_keyvalue|Sound Replacement File|soundlist|Allows you to setup a sound replacement file for the func_plat sounds. The path begins in &#039;svencoop/sound/mapname&#039;, whereas &#039;mapname&#039; would be your map&#039;s name. You can go to the parent directory using &#039;../&#039;. A valid sound replacement file contains one or more lines with two sound-paths, which are separated by a space and wrapped into quotes. The first sound is the sound to be replaced. The second sound is the new sound. Sound-paths start in the sound directory. You cannot go to the parent directory using &#039;../&#039; in that case. These sounds do not need to be precached using a custom_precache point entity.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Open Start|fireonopening|Entity to trigger when platform starts opening.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Open Start Trigger State|fireonopening_triggerstate|Set the use-type with which the entity specified above will be fired.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Close Start|fireonclosing|Entity to trigger when platform starts closing.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Close Start Trigger State|fireonclosing_triggerstate|Set the use-type with which the entity specified above will be fired.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Open End|fireonopened|Entity to trigger when platform ends opening.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Open End Trigger State|fireonopened_triggerstate|Set the use-type with which the entity specified above will be fired.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Close End|fireonclosed|Entity to trigger when platform end closing.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Close End Trigger State|fireoncloed_triggerstate|Set the use-type with which the entity specified above will be fired.}}&lt;br /&gt;
{{Entity_keyvalue|Damage inflicted when blocked|dmg|Damage to deal when entity is blocked.}}&lt;br /&gt;
{{Entity_keyvalue|Speed of rotation|speed|Movement-speed in units per second.}}&lt;br /&gt;
{{Entity_keyvalue|Travel altitude|height|How many units func_plat travels up to the top. It CAN&#039;T be negative, the FGD lies!}}&lt;br /&gt;
{{Entity_keyvalue|Spin amount|rotation|Total amount of degrees this entity spins from it&#039;s starting to ending position.}}&lt;br /&gt;
{{Entity_keyvalue|Move Sound Override|noise|Custom sound file that is playing when entity is moving. Overrides default &amp;quot;Move Sound&amp;quot; sound.}}&lt;br /&gt;
{{Entity_keyvalue|Stop Sound Override|noise1|Custom sound file to play when the entity ends movement. Overrides default &amp;quot;Stop Sound&amp;quot; sound.}}&lt;br /&gt;
&lt;br /&gt;
== Flags ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_flag|1|Toggle|If selected, the lift is no more automatically called from top and activated by stepping on it. It required trigger to do so.}}&lt;br /&gt;
{{Entity_flag|64|X Axis|Enable this to make platform rotate around x axis instead of z axis.}}&lt;br /&gt;
{{Entity_flag|128|Y Axis|Enable this to make platform rotate around y axis instead of z axis.}}&lt;br /&gt;
&lt;br /&gt;
== Changes ==&lt;br /&gt;
&lt;br /&gt;
* 5.0 Steam Release: Added &#039;Damage inflicted when blocked&#039;, &#039;Move Sound Override&#039; and &#039;Stop Sound Override&#039; keyvalues.&lt;br /&gt;
&lt;br /&gt;
{{entity_title}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Entities]]&lt;br /&gt;
[[Category:Brush entities]]&lt;/div&gt;</summary>
		<author><name>Tunac</name></author>
	</entry>
	<entry>
		<id>https://wiki.svencoop.com/index.php?title=Func_plat&amp;diff=805</id>
		<title>Func plat</title>
		<link rel="alternate" type="text/html" href="https://wiki.svencoop.com/index.php?title=Func_plat&amp;diff=805"/>
		<updated>2023-01-06T14:34:58Z</updated>

		<summary type="html">&lt;p&gt;Tunac: Language tweaks&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Entity_Infobox&lt;br /&gt;
| title=&lt;br /&gt;
| type=b&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Vertically moving elevator that moves up automatically when a player steps on it. It&#039;s also automatically called when player waits for it at the top of the whole travel altitude.&lt;br /&gt;
&lt;br /&gt;
== Keyvalues ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_keyvalue|Move Sound|movesnd|Sound that is played while platform is moving.}}&lt;br /&gt;
{{Entity_keyvalue|Move Sound Loops?|movesnd_loop|Sets if Move Sound should be looped during brush movement until it stops.}}&lt;br /&gt;
{{Entity_keyvalue|Stop Sound|stopsnd|Sound which is played once as the train stops moving.}}&lt;br /&gt;
{{Entity_keyvalue|Sound Volume|volume|Self-explanatory.}}&lt;br /&gt;
{{Entity_keyvalue|Sound Replacement File|soundlist|Allows you to setup a sound replacement file for the func_plat sounds. The path begins in &#039;svencoop/sound/mapname&#039;, whereas &#039;mapname&#039; would be your map&#039;s name. You can go to the parent directory using &#039;../&#039;. A valid sound replacement file contains one or more lines with two sound-paths, which are separated by a space and wrapped into quotes. The first sound is the sound to be replaced. The second sound is the new sound. Sound-paths start in the sound directory. You cannot go to the parent directory using &#039;../&#039; in that case. These sounds do not need to be precached using a custom_precache point entity.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Open Start|fireonopening|Entity to trigger when platform starts opening.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Open Start Trigger State|fireonopening_triggerstate|Set the use-type with which the entity specified above will be fired.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Close Start|fireonclosing|Entity to trigger when platform starts closing.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Close Start Trigger State|fireonclosing_triggerstate|Set the use-type with which the entity specified above will be fired.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Open End|fireonopened|Entity to trigger when platform ends opening.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Open End Trigger State|fireonopened_triggerstate|Set the use-type with which the entity specified above will be fired.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Close End|fireonclosed|Entity to trigger when platform end closing.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Close End Trigger State|fireoncloed_triggerstate|Set the use-type with which the entity specified above will be fired.}}&lt;br /&gt;
{{Entity_keyvalue|Damage inflicted when blocked|dmg|Damage to deal when entity is blocked.}}&lt;br /&gt;
{{Entity_keyvalue|Travel altitude|height|How many units func_plat travels up to the top. It can be set to negative only if &amp;quot;toggle&amp;quot; flag is selected.}}&lt;br /&gt;
{{Entity_keyvalue|Speed|speed|Movement-speed in units per second.}}&lt;br /&gt;
{{Entity_keyvalue|Move Sound Override|noise|Custom sound file that is playing when entity is moving. Overrides default &amp;quot;Move Sound&amp;quot; sound.}}&lt;br /&gt;
{{Entity_keyvalue|Stop Sound Override|noise1|Custom sound file to play when the entity ends movement. Overrides default &amp;quot;Stop Sound&amp;quot; sound.}}&lt;br /&gt;
&lt;br /&gt;
== Flags ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_flag|1|Toggle|If selected, the lift is not automatically called from top and activated by stepping on it. It requires a trigger to do so.}}&lt;br /&gt;
&lt;br /&gt;
== Changes ==&lt;br /&gt;
&lt;br /&gt;
* 5.0 Steam Release: Added &#039;Inventory Rules&#039;, &#039;Damage inflicted when blocked&#039;, &#039;Move Sound Override&#039; and &#039;Stop Sound Override&#039; keyvalues.&lt;br /&gt;
&lt;br /&gt;
{{entity_title}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Entities]]&lt;br /&gt;
[[Category:Brush entities]]&lt;/div&gt;</summary>
		<author><name>Tunac</name></author>
	</entry>
	<entry>
		<id>https://wiki.svencoop.com/index.php?title=Func_mortar_field&amp;diff=804</id>
		<title>Func mortar field</title>
		<link rel="alternate" type="text/html" href="https://wiki.svencoop.com/index.php?title=Func_mortar_field&amp;diff=804"/>
		<updated>2023-01-06T14:24:10Z</updated>

		<summary type="html">&lt;p&gt;Tunac: Spelling &amp;amp; language fixes&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Entity_Infobox&lt;br /&gt;
| title=&lt;br /&gt;
| type=b&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This entity serves as a spawnzone for mortars, which cause a sound effect, shortly followed by an explosion on the ground straight below where they were spawned. This entity can be hooked up to [[momentary_rot_button|momentary_rot_buttons]] or [[func_rot_button|func_rot_buttons]] to do aimed mortar strikes.&lt;br /&gt;
&lt;br /&gt;
== Keyvalues ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_keyvalue|Spread Radius|m_flSpread|Mortars spreading radius, bombs will spawn randomly within specified radius.}}&lt;br /&gt;
{{Entity_keyvalue|Repeat Count|m_iCount|Amount of mortars to spawn each airstrike call.}}&lt;br /&gt;
{{Entity_keyvalue|Targeting|m_fControl|Controls area of airstrike with the following options.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Random&#039;&#039;&#039; makes mortars spawn randomly within the volume of func_mortar_field.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Activator&#039;&#039;&#039; option simply force mortars to strike at &#039;!activator&#039; (activator of the script) e.g. when player pushed a button which fires func_mortar_field, and the &#039;Activator&#039; option is selected, the mortars spawns above the player. Note that bombs will be called at &#039;!activator&#039; location during the moment of firing func_mortar_field, which means the &#039;!activator&#039; has time to escape from within the airstrike area. Another thing about &#039;Activator&#039; option is that &#039;!activator&#039; location is not important- the bombs will strike &#039;!activator&#039; even if it&#039;s outside the volume of the func_mortar_field- the location, placement and size of this entity does not matter.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Table&#039;&#039;&#039; variant can be seen in Half Life single player campaign- Gordon controls the airstrike area by two momentary button, first button controls X position of mortarts, and the second button controls its Y position. This option enables &amp;quot;X Controller&amp;quot; and &amp;quot;Y Controller&amp;quot; keyvalues. When func_mortar_field is triggered, the entity picks percentage of X and Y position (from left/top to right/bottom) of func_rot_buttons hooked to it, and converts those to X and Y sizes of this entity volume, e.g. when the left/right momentary button (X Controller) is in the far left side, and the top/bottom momentary button (Y Controlled) is in the center of the whole movement distance, the airstrike will be called at 0% X and 50% Y position of func_mortar_field.}}&lt;br /&gt;
{{Entity_keyvalue|X Controller|m_iszXController|The name of momentary_rot_button or func_rot_button to control X coordinates of mortar spawnpoint. Requires &#039;Table&#039; value in &amp;quot;Targeting&amp;quot; key (see above).}}&lt;br /&gt;
{{Entity_keyvalue|Y Controller|m_iszYController|The name of momentary_rot_button or func_rot_button to control Y coordinates of mortar spawnpoint. Requires &#039;Table&#039; value in &amp;quot;Targeting&amp;quot; key (see above).}}&lt;br /&gt;
&lt;br /&gt;
{{entity_title}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Entities]]&lt;br /&gt;
[[Category:Brush entities]]&lt;/div&gt;</summary>
		<author><name>Tunac</name></author>
	</entry>
	<entry>
		<id>https://wiki.svencoop.com/index.php?title=Func_mortar_field&amp;diff=803</id>
		<title>Func mortar field</title>
		<link rel="alternate" type="text/html" href="https://wiki.svencoop.com/index.php?title=Func_mortar_field&amp;diff=803"/>
		<updated>2023-01-06T14:16:43Z</updated>

		<summary type="html">&lt;p&gt;Tunac: Changed keyvalues to be clearer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Entity_Infobox&lt;br /&gt;
| title=&lt;br /&gt;
| type=b&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This entity serves as a spawnzone for mortars, which cause a sound effect, shortly followed by an explosion on the ground straight below where they were spawned. This entity can be hooked up to [[momentary_rot_button|momentary_rot_buttons]] or [[func_rot_button|func_rot_buttons]] to do aimed mortar strikes.&lt;br /&gt;
&lt;br /&gt;
== Keyvalues ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_keyvalue|Spread Radius|m_flSpread|Mortars spreading radius, bombs will spawn randomly within specified radius.}}&lt;br /&gt;
{{Entity_keyvalue|Repeat Count|m_iCount|Amount of mortars to spawn each airstrike call.}}&lt;br /&gt;
{{Entity_keyvalue|Targeting|m_fControl|Controls area of airstrike.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Random&#039;&#039;&#039; makes mortars spawn randomly within volume of func_mortar_field.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Activator&#039;&#039;&#039; option simply force mortars to strike at &#039;!activator&#039; (activator of the script) e.g. when player pushed a button which fires func_mortar_field, and the &#039;Activator&#039; option is selected, the mortars spawns above the player. Note that bombs will be called at &#039;!activator&#039; location in a moment of firing func_mortar_field, what means the &#039;!activator&#039; have a time to escape from within airstrike area. Another think about &#039;Activator&#039; option is that &#039;!activator&#039; location is not important- the bombs will strike &#039;!activator&#039; even if it&#039;s out of volume of the func_mortar_field- the location, placement and size of this entity does not matter.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Table&#039;&#039;&#039; variant can be seen in Half Life single player campaign- Gordon controls the airstrike area by two momentary button, first button controls X position of mortarts, and the second button controls it&#039;s Y position. This option enables &amp;quot;X Controller&amp;quot; and &amp;quot;Y Controller&amp;quot; keyvalues. When func_mortar_field is triggered, the entity picks percentage of X and Y position (from left/top to right/bottom) of func_rot_buttons hooked to it, and converts those to X and Y sizes of this entity volume, e.g. when the left/right momentary button (X Controller) is in the far left side, and the top/bottom momentary button (Y Controlled) is in the center of the whole movement distance, the airstrike will be called at 0% X and 50% Y position of func_mortar_field.}}&lt;br /&gt;
{{Entity_keyvalue|X Controller|m_iszXController|The name of momentary_rot_button or func_rot_button to control X coordinates of mortar spawnpoint. Requires &#039;Table&#039; value &lt;br /&gt;
in &amp;quot;Targetting&amp;quot; key (see above).}}&lt;br /&gt;
{{Entity_keyvalue|Y Controller|m_iszYController|The name of momentary_rot_button or func_rot_button to control Y coordinates of mortar spawnpoint. Requires &#039;Table&#039; value &lt;br /&gt;
in &amp;quot;Targetting&amp;quot; key (see above).}}&lt;br /&gt;
&lt;br /&gt;
{{entity_title}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Entities]]&lt;br /&gt;
[[Category:Brush entities]]&lt;/div&gt;</summary>
		<author><name>Tunac</name></author>
	</entry>
	<entry>
		<id>https://wiki.svencoop.com/index.php?title=Func_ladder&amp;diff=802</id>
		<title>Func ladder</title>
		<link rel="alternate" type="text/html" href="https://wiki.svencoop.com/index.php?title=Func_ladder&amp;diff=802"/>
		<updated>2023-01-06T14:01:47Z</updated>

		<summary type="html">&lt;p&gt;Tunac: Added entry for its spawnflag&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Entity_Infobox&lt;br /&gt;
| title=&lt;br /&gt;
| type=b&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Invisible brush-entity which allows players to climb on its surface on touch. Player won&#039;t stop using the ladder unless jumping off or moving away from the ladder&#039;s surface sideways. Ladders on ceilings works as well. Sloped ladders produce dissatisfactory results and should not be used. Touching a ladder while falling will nullify the player&#039;s velocity and safe him from falling damage. Usually used in combination with a [[func_illusionary]] with ladder-textures for the visual counterpart.&lt;br /&gt;
&lt;br /&gt;
== Flags ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_flag|1|Start Off|If selected, the func_ladder is disabled at map start, which means it needs to be triggered in order to be enabled.}}&lt;br /&gt;
&lt;br /&gt;
{{entity_title}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Entities]]&lt;br /&gt;
[[Category:Brush entities]]&lt;/div&gt;</summary>
		<author><name>Tunac</name></author>
	</entry>
	<entry>
		<id>https://wiki.svencoop.com/index.php?title=Func_trackchange&amp;diff=801</id>
		<title>Func trackchange</title>
		<link rel="alternate" type="text/html" href="https://wiki.svencoop.com/index.php?title=Func_trackchange&amp;diff=801"/>
		<updated>2023-01-06T13:30:30Z</updated>

		<summary type="html">&lt;p&gt;Tunac: Fix broken markup in flags&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Entity_Infobox&lt;br /&gt;
| title=&lt;br /&gt;
| type=b&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Brush entity that works as a rotating ascending/descending elevator for func_tracktrain.&lt;br /&gt;
It connects two path_tracks- elevator takes the train from last path_track of the top path, rotating and descending, and then, after finishing, the train is assigned to path_track of the bottom path. &lt;br /&gt;
This can be reverted for ascending platform. The func_trackchange platform need origin brush (preferably located at the center of entity), and the top and the bottom path_corners should be centered to this entity &lt;br /&gt;
for best results.&lt;br /&gt;
&lt;br /&gt;
See the picture on the left- the platform with origin brush tied to it (func_trackchange), and orange cubes &lt;br /&gt;
that represents the top and the bottom path_track.&lt;br /&gt;
&lt;br /&gt;
Similar variant to this entity is func_trackautochange, however you can&#039;t trigger func_trackautochange&lt;br /&gt;
in other way than by path_track&#039;s &amp;quot;Fire on dead end&amp;quot; value, you would trigger connected train instead.&lt;br /&gt;
&lt;br /&gt;
== Keyvalues ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_keyvalue|Move sound|movesnd|Sound playing when func_trackchange is moving:}}&lt;br /&gt;
{{Entity_keyvalue|Move Sound Loops?|movesnd_loop|Sets if Move Sound should be looped during brush movement until it stops.}}&lt;br /&gt;
{{Entity_keyvalue|Stop sound|stopsnd|Sound to play when the func_trackchange stop moving.}}&lt;br /&gt;
{{Entity_keyvalue|Sound volume|volume|Volume of move and stop sounds.}}&lt;br /&gt;
{{Entity_keyvalue|Sound Replacement File|soundlist|Set the path to a sound replacement file for this entity. The path begins in &#039;svencoop/sound/mapname&#039;, whereas &#039;mapname&#039; would be your map&#039;s name. You can go to the parent directory using &#039;../&#039;. A valid sound replacement file contains one or more lines with two sound-paths, which are separated by a space and wrapped into quotes. The first sound is the sound to be replaced. The second sound is the new sound. Sound-paths start in the sound directory. You cannot go to the parent directory using &#039;../&#039; in that case. These sounds do not need to be precached using a custom_precache point entity.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Open Start|fireonopening|Entity to trigger when platform starts opening.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Open Start Trigger State|fireonopening_triggerstate|Set the use-type with which the entity specified above will be fired.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Close Start|fireonclosing|Entity to trigger when platform starts closing.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Close Start Trigger State|fireonclosing_triggerstate|Set the use-type with which the entity specified above will be fired.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Open End|fireonopened|Entity to trigger when platform ends opening.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Open End Trigger State|fireonopened_triggerstate|Set the use-type with which the entity specified above will be fired.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Close End|fireonclosed|Entity to trigger when platform end closing.}}&lt;br /&gt;
{{Entity_keyvalue|Fire On Close End Trigger State|fireoncloed_triggerstate|Set the use-type with which the entity specified above will be fired.}}&lt;br /&gt;
{{Entity_keyvalue|Damage inflicted when blocked|dmg|Damage to deal when entity is blocked.}}&lt;br /&gt;
{{Entity_keyvalue|Travel Altitude|height|Travel distance, from top to bottom. If &amp;quot;Start at Bottom flag is selected, the travel distance won&#039;t change from bottom to top,&lt;br /&gt;
&lt;br /&gt;
it only makes platform start at bottom and awaits for func_tracktracin to arrive.}}&lt;br /&gt;
{{Entity_keyvalue|Spin amount|rotation|The spin done by this platform on entire way up/down.}}&lt;br /&gt;
{{Entity_keyvalue|Train to Switch|train|Name of func_tracktrain this platform will transport to top/bottom track.}}&lt;br /&gt;
{{Entity_keyvalue|Top track|toptrack|Name of last path_track of the top path (if &amp;quot;Start at Bottom&amp;quot; is selected this is the name of the first path_track at the top path).}}&lt;br /&gt;
{{Entity_keyvalue|Bottom track|bottomtrack|Name of first path_track of the bottom track. (if &amp;quot;Start at Bottom&amp;quot; is selected this is the name of the last path_track &lt;br /&gt;
&lt;br /&gt;
at the bottom path).}}&lt;br /&gt;
{{Entity_keyvalue|Move/Rotate Speed|speed|Speed in which func_trackchange travel the whole way up/down (units per seconds).}}&lt;br /&gt;
{{Entity_keyvalue|Move Sound Override|noise|Custom sound file that is playing when entity is moving. Overrides default &amp;quot;Move Sound&amp;quot; sound.}}&lt;br /&gt;
{{Entity_keyvalue|Stop Sound Override|noise1|Custom sound file to play when the entity ends movement. Overrides default &amp;quot;Stop Sound&amp;quot; sound.}}&lt;br /&gt;
{{Entity_keyvalue|Blocked Sound|noise2|Custom sound file to play when train is blocked.}}&lt;br /&gt;
&lt;br /&gt;
== Flags ==&lt;br /&gt;
&lt;br /&gt;
{{Entity_flag|1|Auto Activate train|If selected, train isn&#039;t paused at the top/bottom of the path after func_trackchange finish it&#039;s movement. Instead, it&#039;s continue moving forward.}}&lt;br /&gt;
{{Entity_flag|2|Relink track|The functionality of this flag is unknown. However, this entity seems to work fine whenever this flag is selected or not.}}&lt;br /&gt;
&lt;br /&gt;
{{Entity_flag|8|Start at Bottom|Platform starts at the bottom instead at the top path_track if this flag is ticked.}}&lt;br /&gt;
{{Entity_flag|16|Rotate Only|If selected, the platform only rotates in place of it&#039;s origin without travelling specified altitude. &lt;br /&gt;
&lt;br /&gt;
The top and the bottom path_tracks should have their origin positioned in the same coordinates.}}&lt;br /&gt;
&lt;br /&gt;
{{Entity_flag|64|X Axis|Train rotates around X axis instead of Z axis. Can be combined with &amp;quot;Y Axis&amp;quot;.}}&lt;br /&gt;
{{Entity_flag|128|Y Axis|Train rotates around Y axis instead of Z axis. Can be combined with &amp;quot;X Axis&amp;quot;.}}&lt;br /&gt;
&lt;br /&gt;
== Notes ==&lt;br /&gt;
&lt;br /&gt;
Remember to create origin brush for this entity around which func_trackchange rotates.It is said that func_trackchange works better with controllable func_tracktrain, however it seems to both controllable &lt;br /&gt;
and non-controllable func_tracktrains supports both func_trackchange and func_trackautochange.&lt;br /&gt;
&lt;br /&gt;
== Changes ==&lt;br /&gt;
&lt;br /&gt;
5.0 Steam Release: Added &#039;Damage inflicted when blocked&#039;, &#039;Move Sound Override&#039;, &#039;Stop Sound Override&#039; and &#039;Blocked Sound&#039; keyvalues.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{entity_title}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Entities]]&lt;br /&gt;
[[Category:Brush entities]]&lt;/div&gt;</summary>
		<author><name>Tunac</name></author>
	</entry>
</feed>