{"id":4150,"date":"2023-02-08T12:31:13","date_gmt":"2023-02-08T03:31:13","guid":{"rendered":"https:\/\/blog.criware.com\/?p=4150"},"modified":"2024-05-20T16:50:26","modified_gmt":"2024-05-20T07:50:26","slug":"designing-a-catapult","status":"publish","type":"post","link":"https:\/\/blog.criware.com\/index.php\/2023\/02\/08\/designing-a-catapult\/","title":{"rendered":"Designing a Catapult"},"content":{"rendered":"<p>Siege machines are an integral part of medieval or fantasy games. In this post, we will see how to design and implement the sound of a catapult in Atom Craft.<\/p>\n<div class=\"wp-video\" style=\"width: 800px; display: block; margin: 40px auto;\">\n<div style=\"width: 800px;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-4150-1\" width=\"800\" height=\"450\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/mp4\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2023\/02\/video_catapult.mp4?_=1\" \/><a href=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2023\/02\/video_catapult.mp4\">https:\/\/blog.criware.com\/wp-content\/uploads\/2023\/02\/video_catapult.mp4<\/a><\/video><\/div>\n<\/div>\n<h2 style=\"font-size: 150%; font-weight: bold; margin-top: 40px;\">Assets Preparation<\/h2>\n<p>Our goal is to be able to produce many variations of the catapult sound, while choosing between different types of projectiles.<\/p>\n<p>To achieve this, the sound is separated into different layers (each containing several variations): the initial impact, the final impact, the creaking, the sliding, and the whoosh.<\/p>\n<p>The whoosh itself is then divided into three types to reflect the kind of projectile: normal, fire, and acid.<\/p>\n<p>In our example, we created five variations for each layer, which should be enough to generate a wide variety of sounds.<\/p>\n<h2 style=\"font-size: 150%; font-weight: bold; margin-top: 40px;\">Implementation<\/h2>\n<p>Once your assets ready, you can import them in the Material Tree in Atom Craft and start the implementation:<\/p>\n<ul>\n<li>Create a new <em>Polyphonic Cue<\/em>.<\/li>\n<li>In this Cue, create four tracks: Impacts, Slide, Creaking, and Whoosh.<\/li>\n<li>Create two <em>Sub Sequences<\/em> of type <em>Shuffle<\/em> in the Impact track, and one <em>Sub Sequence<\/em> (also of the <em>Shuffle<\/em> type) in the Slide and Creaking tracks.<\/li>\n<li>Place the Initial Impact, Slide and Creaking Sub Sequences at the start of the Cue, and the Final Impact at around 900ms.<\/li>\n<li>Drag and drop the corresponding Materials into the Sub Sequences in the <em>Work Units Tree<\/em> to automatically create the tracks that will be played in shuffle.<\/li>\n<li>Finally, for each Sub Sequence, change the <em>Pitch Random Range<\/em> (200 cents max) and the <em>Playback Timing Random<\/em> properties (between 50 and 200ms) to add more variation.<\/li>\n<\/ul>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-4152\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2023\/02\/01-Cue-and-SubSequences.png\" alt=\"01 Cue and SubSequences\" width=\"1309\" height=\"620\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2023\/02\/01-Cue-and-SubSequences.png 1309w, https:\/\/blog.criware.com\/wp-content\/uploads\/2023\/02\/01-Cue-and-SubSequences-300x142.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2023\/02\/01-Cue-and-SubSequences-768x364.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2023\/02\/01-Cue-and-SubSequences-1024x485.png 1024w\" sizes=\"auto, (max-width: 1309px) 100vw, 1309px\" \/><\/p>\n<p>For the Whoosh layer, a Sub Sequence of type <em>Switch<\/em> is used to allow for the selection of the projectile\u2019s type.<\/p>\n<ul>\n<li>In the Project Tree, create a new <em>Selector<\/em> named Projectile_Type, and add three <em>Selector Labels<\/em>: Normal, Fire, and Acid.<\/li>\n<li>On the Whoosh track of the Cue, create a <em>Sub Sequence<\/em> of type <em>Switch<\/em> starting at about 400ms.<\/li>\n<li>Open the Switch Sub Sequence and set the <em>Switch Variable<\/em> property to the Projectile_Type selector.<\/li>\n<li>Then, create three tracks in the Sub Sequence (Normal, Fire, Acid) and assign the corresponding Selector Label for each track.<\/li>\n<\/ul>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-4153\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2023\/02\/02-Switch-Cue.png\" alt=\"02 Switch Cue\" width=\"1043\" height=\"456\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2023\/02\/02-Switch-Cue.png 1043w, https:\/\/blog.criware.com\/wp-content\/uploads\/2023\/02\/02-Switch-Cue-300x131.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2023\/02\/02-Switch-Cue-768x336.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2023\/02\/02-Switch-Cue-1024x448.png 1024w\" sizes=\"auto, (max-width: 1043px) 100vw, 1043px\" \/><\/p>\n<ul>\n<li>Finally, on each track of the Switch Sub Sequence, create a Sub Sequence of type Shuffle, and drag and drop the corresponding materials, allowing for several variations by type of projectile.<\/li>\n<\/ul>\n<p>With all that done, if you play the Cue in the <em>Session<\/em> window you will be able to change the Selector and switch the sound to a different type of projectile.<\/p>\n<p>As you can see in the downloadable project below, we created a Cue with a deep hierarchy, but combined with timing and pitch randomization it can generate a wide variety of sounds.<\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-4154\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2023\/02\/03-Cue-Hierarchy.png\" alt=\"03 Cue Hierarchy\" width=\"958\" height=\"559\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2023\/02\/03-Cue-Hierarchy.png 958w, https:\/\/blog.criware.com\/wp-content\/uploads\/2023\/02\/03-Cue-Hierarchy-300x175.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2023\/02\/03-Cue-Hierarchy-768x448.png 768w\" sizes=\"auto, (max-width: 958px) 100vw, 958px\" \/><\/p>\n<div style=\"max-width: 800px; margin: 0 auto; margin-bottom: 20px; text-align: center;\"><a style=\"display: block; border: 1px solid #ccc; padding: 20px; max-width: 100%; margin: 0 auto;\" href=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2023\/02\/AtomCraft_Project_Catapult.zip\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1813\" style=\"display: block; margin: 0 auto;\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2018\/06\/zip.png\" alt=\"zip\" width=\"80\" height=\"78\" \/>AtomCraft_Project_Catapult.zip<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Siege machines are an integral part of medieval or fantasy games. In this post, we will see how to design<\/p>\n","protected":false},"author":2,"featured_media":5441,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"colormag_page_container_layout":"default_layout","colormag_page_sidebar_layout":"default_layout","footnotes":""},"categories":[5,7],"tags":[],"class_list":["post-4150","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-adx","category-tutorials"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/posts\/4150","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/comments?post=4150"}],"version-history":[{"count":9,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/posts\/4150\/revisions"}],"predecessor-version":[{"id":5447,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/posts\/4150\/revisions\/5447"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/media\/5441"}],"wp:attachment":[{"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/media?parent=4150"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/categories?post=4150"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/tags?post=4150"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}