{"id":46,"date":"2009-11-05T23:40:05","date_gmt":"2009-11-06T07:40:05","guid":{"rendered":"http:\/\/legendofeuterra.com\/devblog\/?p=46"},"modified":"2009-11-05T23:41:13","modified_gmt":"2009-11-06T07:41:13","slug":"sound-is-not-your-friend","status":"publish","type":"post","link":"https:\/\/www.shadowdawngenesis.com\/devblog\/?p=46","title":{"rendered":"Sound is not your friend"},"content":{"rendered":"<figure id=\"attachment_47\" aria-describedby=\"caption-attachment-47\" style=\"width: 521px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-47 \" title=\"some fixes in place\" src=\"http:\/\/legendofeuterra.com\/devblog\/wp-content\/uploads\/2009\/11\/screenshot6.jpg\" alt=\"some fixes in place\" width=\"521\" height=\"305\" srcset=\"https:\/\/www.shadowdawngenesis.com\/devblog\/wp-content\/upLoads\/2009\/11\/screenshot6.jpg 744w, https:\/\/www.shadowdawngenesis.com\/devblog\/wp-content\/upLoads\/2009\/11\/screenshot6-300x175.jpg 300w\" sizes=\"auto, (max-width: 521px) 100vw, 521px\" \/><figcaption id=\"caption-attachment-47\" class=\"wp-caption-text\">some fixes in place<\/figcaption><\/figure>\n<p>I added\u00a0the all essential\u00a0pause\u00a0button which helps taking screenshots.\u00a0 Normally it&#8217;s supposed to display the word &#8220;Paused&#8221; and slightly dim the screen, I&#8217;ll add that in a Release build since it&#8217;s very simple to do.\u00a0 Here I&#8217;m showing off my damage indicators (the number 3) and the fancy font used for it.\u00a0 After doing a lot of research I decided I don&#8217;t even want to mess around with the horrific world of font licensing, so opted to stick with the safe free fonts that Microsoft has so kindly supplied with the XNA development studio.\u00a0 Arashi&#8217;s bokken slash kind of obscures the transparency effect the kittri has but if you look really closely you can see the monster fades out when damaged as well.\u00a0 Also, just to show I&#8217;m not lying, I let Arashi take some damage to show off the hit point bar ;p<\/p>\n<p>Now as you may have noticed my update is kind of late, and with good reason: sound in XNA is a pain in the butt.\u00a0 As always, audio seems to be the toughest thing to get to work well in my game development.\u00a0 First of all, raw .WAV files in the standard PCM encode (which is what Windows uses by default), is the only format that XACT (XNA&#8217;s audio manager) works with.\u00a0 Now, as you can probably guess, that means the audio files for BGM (background music) are HUGE as they are uncompressed.\u00a0 And to make matters worse, compression is not a default option in the XACT audition tool (another layer of development, which I&#8217;ll talk about in a second).\u00a0 So here I got a 30 MB file just for the first stage, and the maximum file size for the completed game has to be 150MB!<\/p>\n<p>XACT is fairly robust, but it is not actually part of Visual Studio and functions as a utility of XNA development studio (it is not integrated at all in the development, in fact, its projects are totally isolated from the game project).\u00a0 This is kind of a hassle for people just starting out because the directories are never automatically lined up and the file names you need to reference aren&#8217;t 100% intuitive.\u00a0 Take caution when using XACT and don&#8217;t rush it.\u00a0 I actually recommend MSDN&#8217;s help file online for XACT because I found it <em>far<\/em> more useful than any demo on the XNA community forum or even with a google search.\u00a0 And I don&#8217;t recommend MSDN often since it usually overcomplicates stuff.<\/p>\n<p>Now for the ironic part, I actually am using the MediaPlayer class built into the XNA framework&#8217;s Media library, because it decodes MP3 files (which are much more efficient spacewise).\u00a0 What&#8217;s even more amusing is for some reason this format plays much smoother than the uncompressed .WAV on my PC, so the background music doesn&#8217;t skip with MP3s.\u00a0 I also have it just playing preloaded sound effects in memory, because I don&#8217;t even want to bother with XACT at this point for sound &#8220;cues&#8221;.\u00a0 I&#8217;m having trouble finding good free sounds though&#8230; and I&#8217;ve run into one more problem, voice acting.\u00a0 I only need a limited amount of it for the combat voices (think Street Fighter), but I&#8217;m obviously not going to be able to do every voice in the game&#8230;<\/p>\n<p>Anyways, this was a bit of a rant, but needless to say I&#8217;m about ready to actually start designing the first playable level.\u00a0 Of course, that is a ways off, as I will be adding assets and more gameplay elements along the way, but now I have a base game to work from.<\/p>\n<div name=\"googleone_share_1\" style=\"position:relative;z-index:5;float: right; margin-left: 10px;\"><g:plusone size=\"tall\" count=\"1\" href=\"https:\/\/www.shadowdawngenesis.com\/devblog\/?p=46\"><\/g:plusone><\/div>","protected":false},"excerpt":{"rendered":"<p>I added\u00a0the all essential\u00a0pause\u00a0button which helps taking screenshots.\u00a0 Normally it&#8217;s supposed to display the word &#8220;Paused&#8221; and slightly dim the screen, I&#8217;ll add that in<a class=\"moretag\" href=\"https:\/\/www.shadowdawngenesis.com\/devblog\/?p=46\"> [&#8230;]<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[27,21,25,7,6,13,24,14,17,309,4,34,15],"class_list":["post-46","post","type-post","status-publish","format-standard","hentry","category-game-development","tag-2d-tiles","tag-action","tag-arashi","tag-development","tag-game","tag-jrpg","tag-legend-of-euterra","tag-music","tag-pc","tag-rpg","tag-shadowdawn","tag-sound-fx","tag-xbox-360"],"_links":{"self":[{"href":"https:\/\/www.shadowdawngenesis.com\/devblog\/index.php?rest_route=\/wp\/v2\/posts\/46","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.shadowdawngenesis.com\/devblog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.shadowdawngenesis.com\/devblog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.shadowdawngenesis.com\/devblog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.shadowdawngenesis.com\/devblog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=46"}],"version-history":[{"count":0,"href":"https:\/\/www.shadowdawngenesis.com\/devblog\/index.php?rest_route=\/wp\/v2\/posts\/46\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.shadowdawngenesis.com\/devblog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=46"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.shadowdawngenesis.com\/devblog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=46"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.shadowdawngenesis.com\/devblog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=46"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}