{"id":1915,"date":"2024-04-05T14:03:57","date_gmt":"2024-04-05T13:03:57","guid":{"rendered":"https:\/\/www.katsbits.com\/site\/?p=1915"},"modified":"2024-04-05T14:03:57","modified_gmt":"2024-04-05T13:03:57","slug":"make-a-double-steam-jet-effect","status":"publish","type":"post","link":"https:\/\/www.katsbits.com\/site\/make-a-double-steam-jet-effect\/","title":{"rendered":"RtCW target_smoke Double Steam Jet Effect"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_80 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.katsbits.com\/site\/make-a-double-steam-jet-effect\/#Brushwork_Setup\" >Brushwork Setup<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.katsbits.com\/site\/make-a-double-steam-jet-effect\/#Entity_Setup\" >Entity Setup<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.katsbits.com\/site\/make-a-double-steam-jet-effect\/#Steam_Effect_In-Game\" >Steam Effect In-Game<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.katsbits.com\/site\/make-a-double-steam-jet-effect\/#Conclusion\" >Conclusion<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.katsbits.com\/site\/make-a-double-steam-jet-effect\/#Complex_Triggered_Effects\" >Complex Triggered Effects<\/a><\/li><\/ul><\/nav><\/div>\n<p>In the previous tutorial the basic premise of using &quot;target_smoke&quot; entities as &#8216;steam jet&#8217; effects was discussed. <\/p>\n<blockquote style=\"background-color: #ddecf3; color: #000;\"><p><b>Download<\/b>: <a href=\"https:\/\/www.katsbits.com\/files\/tutorials\/tute_steameffect.zip\" title=\"Download the RtCW steam jet sample map file\">Steam effect source file<\/a> (c. 200 KB | *.map, *.bsp)<\/p><\/blockquote>\n<p>In this next chapter the same basic set-up, with slight differences to help visually distinguisg which set of entities is cause which effect, will be used to create a &#8216;double&#8217; jet effect.<\/p>\n<p> As with the previous section, a basic understanding of level editing and using GtkRadiant, or a variant, is going to be needed to get the best from the following material. A familiarity with game entities is also essential.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Brushwork_Setup\"><\/span> Brushwork Setup<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Although the objects, entities and brushwork have been move further up the wall to make it easier to see the steam jet effect with two jets, it&#8217;s the same brushwork setup as shown in the previous section of this tutorial discussing the use of just one steam jet.<\/p>\n<div class=\"content_images\"><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/rtcw_steam_effect\/multiple-target_smoke-effect.jpg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/rtcw_steam_effect\/multiple-target_smoke-effect_sml.jpg\" alt=\"Brushwork and Item placement\" width=\"428\" height=\"241\" border=\"0\" \/><\/a><\/p>\n<p>Brushwork and Item placement<\/p>\n<\/p><\/div>\n<h3><span class=\"ez-toc-section\" id=\"Entity_Setup\"><\/span> Entity Setup<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The two target_smoke entities are placed in the same location to give the impression of two streams of steam being emitted from the same location (fracture in the pipe). Both entities use the same settings and set up as previous (shown below).<\/p>\n<div class=\"content_images\"><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/rtcw_steam_effect\/smoke_settings.gif\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/rtcw_steam_effect\/smoke_settings.gif\" alt=\"Entity setup, key\/value pairs and entity data values\" width=\"428\" height=\"497\" border=\"0\" \/><\/a><\/p>\n<p>Entity setup in the &quot;Inspector&quot; for multiple Steam effects<\/p>\n<p>       <a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/rtcw_steam_effect\/multiple-target_smoke-position.jpg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/rtcw_steam_effect\/multiple-target_smoke-position_sml.jpg\" alt=\"Connecting the target_smokes to the info_nulls\" width=\"428\" height=\"279\" border=\"0\" \/><\/a><\/p>\n<p>Connecting the target_smoke&#8217;s to the info_notnull&#8217;s (note both target_smoke Entities occupy the same location so the steam effect looks to originate in the same location) <\/p>\n<\/p><\/div>\n<h3><span class=\"ez-toc-section\" id=\"Steam_Effect_In-Game\"><\/span>Steam Effect In-Game<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The in game results of this one are interesting and display one of the various &#8216;issues&#8217; that seem to happen when trying to use multiple entities in this way (these &#8216;issues&#8217; are separate from the ones that happen running under MP where the smoke appears to only go straight up or down), note the angle of the lower smoke, it&#8217;s much shallower than shown in the in editor setup screen shot above.<\/p>\n<p>note also that although the entities set up in editor is approximately the same the results are very different because of the variation based on distance between the info_notnull target and the shorter &#8216;delay&#8217; key\/value.<\/p>\n<div class=\"content_images\"><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/rtcw_steam_effect\/ingame_2.jpg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/rtcw_steam_effect\/ingame_2.jpg\" alt=\"In game shot of the two steam jets\" width=\"500\" height=\"375\" border=\"0\" \/><\/a><\/p>\n<p>In game shot of the two steam jets<\/p>\n<\/p><\/div>\n<h3><span class=\"ez-toc-section\" id=\"Conclusion\"><\/span>Conclusion<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>There does appear to be a &#8216;bug&#8217; with approach though when trying to have more than one jet running at the same time from the same location. The angle on the lower jet doesn&#8217;t match what&#8217;s seen in game (less shallow angle) so there are some limits to what can be done.<\/p>\n<p>It must be noted thought this only appears to apply to entities being active at the same time so it should be possible to have several in the same place in the editor and spawn\/hide them according to the events needed without this error.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Complex_Triggered_Effects\"><\/span>Complex Triggered Effects<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Using an Entity Chain, it possible to set up a sequence, initiated by the player, which performs a number of actions from simply activating the effect on it&#8217;s own, or doing so whilst performing other functions such as dropping Entities, opening doors and so on. Depending on the required effect this sort of set-up requires the use of additional game Entities, namely &quot;<b>target_relay<\/b>&quot; (allows a function to propagate to connected entities) and &quot;<b>target_delay<\/b>&quot; (a &#8216;timer&#8217;).<\/p>\n<div class=\"content_images\"><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/rtcw_steam_effect\/user-trigger-entity-chain-effects.jpg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/rtcw_steam_effect\/user-trigger-entity-chain-effects_sml.jpg\" alt=\"Complex triggered events using an Entity Chain\" width=\"428\" height=\"241\" border=\"0\" \/><\/a><\/p>\n<p>Using an Entity Chain a complex &#8216;event&#8217; can be created, trigger by Player input\/activation &#8211; player activates a switch or button<sup>[1]<\/sup>, which triggers a relay<sup>[2]<\/sup> sending the action to a number of other entities to drop some Ammo<sup>[3]<\/sup> (or other &#8216;pick-up) whilst moving on to trigger the steam<sup>[4]<\/sup> which also activates a trigger_hurt<sup>[5]<\/sup> damaging the player or AI in or moving into the brush volume<\/p>\n<\/p><\/div>\n<div class=\"subNav\">\n<p>[1: <a href=\"https:\/\/www.katsbits.com\/site\/make-a-steam-jet-effect\/\" title=\"target_smoke as a steam jet effect in RtCW\" target=\"_self\" rel=\"noopener\">Steam Setup<\/a> | 2: <a href=\"https:\/\/www.katsbits.com\/site\/make-a-double-steam-jet-effect\/\" title=\"Setting up multiple steam jets using target_smoke\" target=\"_self\" rel=\"noopener\">Multiple Jets<\/a>]<\/p>\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":1917,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[14],"tags":[327,331,328,109,108,23,483],"class_list":["post-1915","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutorials","tag-map","tag-bsp","tag-entities","tag-level-design","tag-level-editing","tag-rtcw","tag-trigger"],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/www.katsbits.com\/site\/wp-json\/wp\/v2\/posts\/1915","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.katsbits.com\/site\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.katsbits.com\/site\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.katsbits.com\/site\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.katsbits.com\/site\/wp-json\/wp\/v2\/comments?post=1915"}],"version-history":[{"count":2,"href":"https:\/\/www.katsbits.com\/site\/wp-json\/wp\/v2\/posts\/1915\/revisions"}],"predecessor-version":[{"id":1919,"href":"https:\/\/www.katsbits.com\/site\/wp-json\/wp\/v2\/posts\/1915\/revisions\/1919"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.katsbits.com\/site\/wp-json\/wp\/v2\/media\/1917"}],"wp:attachment":[{"href":"https:\/\/www.katsbits.com\/site\/wp-json\/wp\/v2\/media?parent=1915"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.katsbits.com\/site\/wp-json\/wp\/v2\/categories?post=1915"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.katsbits.com\/site\/wp-json\/wp\/v2\/tags?post=1915"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}