<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Jiaqi Zhang &#8211; Advanced Game Studio</title>
	<atom:link href="https://courses.ideate.cmu.edu/53-472/s2022/?feed=rss2&#038;author=17" rel="self" type="application/rss+xml" />
	<link>https://courses.ideate.cmu.edu/53-472/s2022</link>
	<description>53-472  &#124;  Spring 2022 &#124;  Carnegie Mellon University</description>
	<lastBuildDate>Tue, 03 May 2022 21:23:32 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.2.5</generator>
	<item>
		<title>Spiral Studios: Parasite – Final Post</title>
		<link>https://courses.ideate.cmu.edu/53-472/s2022/?p=337</link>
					<comments>https://courses.ideate.cmu.edu/53-472/s2022/?p=337#respond</comments>
		
		<dc:creator><![CDATA[Jiaqi Zhang]]></dc:creator>
		<pubDate>Tue, 03 May 2022 21:23:32 +0000</pubDate>
				<category><![CDATA[Spiral Studios]]></category>
		<category><![CDATA[Team Posts]]></category>
		<guid isPermaLink="false">https://courses.ideate.cmu.edu/53-472/s2022/?p=337</guid>

					<description><![CDATA[Howdy, parasites! Are you ready for the trailer of the game? If the video can not be played for some reasons, please visit the following link: https://drive.google.com/file/d/1vkLkpot9gfwAr89js7cmC1ycleFSGkHl/view?usp=sharing Want to know [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Howdy, parasites! Are you ready for the trailer of the game? </p>



<figure class="wp-block-video"><video controls src="https://drive.google.com/file/d/1vkLkpot9gfwAr89js7cmC1ycleFSGkHl/view?usp=sharing"></video><figcaption>Trailer &#8211; Parasite</figcaption></figure>



<h6 class="has-text-align-center wp-block-heading">If the video can not be played for some reasons, please visit the following link: </h6>



<h6 class="has-text-align-center wp-block-heading">https://drive.google.com/file/d/1vkLkpot9gfwAr89js7cmC1ycleFSGkHl/view?usp=sharing</h6>



<p>Want to know more about the game? Please have a look at our project video!</p>



<figure class="wp-block-video"><video controls src="https://drive.google.com/file/d/1d-xkqQsHgCWAWiaPPu9GMWpY_ejqkiaC/view?usp=sharing"></video><figcaption>Parasite &#8211; Project Video</figcaption></figure>



<h6 class="has-text-align-center wp-block-heading">If the video can not be played for some reasons, please visit the following link: </h6>



<h6 class="has-text-align-center wp-block-heading">https://drive.google.com/file/d/1d-xkqQsHgCWAWiaPPu9GMWpY_ejqkiaC/view?usp=sharing</h6>



<p>We are still making some final adjustment to the game. The download link will be updated here soon.</p>



<p>After having an overview of the game, let&#8217;s see the new changes spiral made in the last week to polish the final build.</p>



<h3 class="wp-block-heading">New Changes in Week 13</h3>



<h2 class="wp-block-heading">Programming <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/2328.png" alt="⌨" class="wp-smiley" style="height: 1em; max-height: 1em;" /></h2>



<p>In our last week of the semester our team’s programming had one focus and one focus only: polish. We ran full tests many times each meeting to maximize the probability that our last presentation went completely smoothly and could effectively showcase everything we had been working on over the last 14 weeks. </p>



<h3 class="wp-block-heading">Audio Implementation</h3>



<p>The biggest source of issues was audio this week since we didn’t get to actually implementing our audio assets until the last few weeks, so these elements were the most under cooked and needed the most fleshing out. The networking element made implementing the sounds particularly non-trivial, especially with FMOD. We had dynamic sounds designed for the background music but unfortunately couldn’t get the audio parameters to work. </p>



<h3 class="wp-block-heading">UI</h3>



<p>Since the last blog post, I worked primarily on implementing the UI for the tutorial into the game, as well as polishing the existing start menu. I tried to be as faithful to the design drafts as possible, since they were very excellently made.</p>



<figure class="wp-block-video"><video controls src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/05/Richard-Video.mov"></video></figure>



<p>Most of the heavy lifting was just making a tutorial menu script to handle interactions between the different panels, and hooking up the tutorial to the existing NetworkMenu script. Had I more time, I would have thrown in a tweening library and animated the menu to be more vibrant (ie animating the parasites to bounce up and down, having better fade in fade out options for the menus and panels, etc.)</p>



<h2 class="wp-block-heading">Audio <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f3b9.png" alt="🎹" class="wp-smiley" style="height: 1em; max-height: 1em;" /></h2>



<p>The final rush from beta to final focused heavily on implementing existing assets as well as fixing and refining our existing work. In our beta there were still many sounds that were not yet hooked up to the unity project, so getting those in there was one of our first priorities.</p>



<p>We went through many cycles of putting in audio, then testing, finding bugs, and starting over again. This was also done alongside all the non-audio programming as well, meaning it was harder to find time to work on specific sound errors. During this process of implementation, we were also creating a few new sound assets for the human tasks which the player completes in order to win the game. There are a total of six tasks scattered throughout the ship, and we decided that each should have its own unique sound effects. This not only adds some audio feedback for the player completing the tasks, but also acts as a hint for any parasite that hears a task being completed nearby.&nbsp;</p>



<p>The six tasks are: repair fuse box, repair ventilation, submit lab sample, redirect power, start power core, and start escape pod. These tasks are only completed by each player a maximum of one time, therefore the sounds were not randomized in any way and will sound the exact same each time. Not only does this save time on the asset creation side, but it also adds some consistency to the player experience as a parasite can learn what certain tasks sound like and use them to track where the human is. </p>



<figure class="wp-block-audio"><audio controls src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/05/EscapePod_Launch.wav"></audio><figcaption>Escape Pod Launch</figcaption></figure>



<figure class="wp-block-audio"><audio controls src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/05/FuseBox_Complete.wav"></audio><figcaption>Fuse Box Repair</figcaption></figure>



<h2 class="wp-block-heading">Art <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f58d.png" alt="🖍" class="wp-smiley" style="height: 1em; max-height: 1em;" /></h2>



<h3 class="wp-block-heading">UI</h3>



<p>The UI in the game was keeping updating in the last week. We finished the start, ending screens, designed for the tutorials. Also, we refined the task list to be a call out list that does not take much screen space.</p>



<p class="has-text-align-center"><img decoding="async" loading="lazy" width="306px;" height="185px;" src="https://lh3.googleusercontent.com/ABUhZIzMV37SWDPLfqSd8nIVuQ9AKBzxAwO1FfWZ57WLulpNHmUnq-itirTR2T8ZPPd0gy6UJkR_4zS114QyzYKPtNYww-E8FU3BKBd96EMDiOmoExvoqdmGr5D5RqEgkfM9UtDsBaQ0ao1qtAjRKw"></p>



<p class="has-text-align-center"><img decoding="async" loading="lazy" width="166px;" height="185px;" src="https://lh6.googleusercontent.com/syfVIEgYswpiALVz7K4QOlrPISEag_8pfnGKQUtMJk5KqUI2NeeU3klkyJPugNCdmzrWQjwfQEHhGiQyBDgQh3tPqBErK7dgMJz2dJjL3ogqTIoRmIbcBm7kA_W4EBD0utXEvEx9sSX1e2Il3ceoyQ"></p>



<h3 class="wp-block-heading">Lighting</h3>



<p>At the final stage, we adjusted the lighting of the level. Spot lights were added to emphasize task related objects, and the lightness increased the visibility for players to navigate in the level.</p>



<p class="has-text-align-center"><img decoding="async" loading="lazy" width="567px;" height="344px;" src="https://lh4.googleusercontent.com/wff768A7tKS17iJdR4ebmN9QDk3CKm5GnhrRRCo-qP97oE8mJK4UAw0_R7uogi_mqnSEn6ti2S-HZVgsd4AcyhWsyYqpFIJUJVPfyjKJytcfPQ3v1KJpuuPknM-b7ClaWTdWrKVQVNxMqgX2jWV7OQ"></p>



<h2 class="wp-block-heading">Summary &amp; Reflection</h2>



<p>It is the time to celebrate the result, and also the time to look back and reflect on what we did. Our team members have some words to say.</p>



<h4 class="wp-block-heading">Thomas</h4>



<h6 class="wp-block-heading">Programmer &amp; 3D Artist</h6>



<p>For 3D art, my main task was designing and modeling the level itself. I deliberately designed each component of the level to fit in a 20&#215;20 unit grid and kept each doorway geometrically identical, which allowed us later in development to move the components around and reconnect pieces like legos without any gaps. This definitely helped in the design phase of the main level’s development. The only downside to this strategy was the level looking fairly uniform which made it hard to navigate for new players. I think if I had more time and a second try I would try to make multiple prefab variants out of each repetitive component (especially the hallways) which had more small details like vents and pipes which could differentiate them. The lighting and extra effects like posters helped with this but it could have been much better.&nbsp;</p>



<p>For programming, the main difficulty was maintaining state across the network. If we had each computer in the game perfectly sync their memory state, this game would be game-jam level in complexity, but having to sync state across the network added a huge amount of difficulty. In particular, having a complex gameobject which could be possessed and unpossessed by multiple players was quite complicated to engineer. The strategy which helped us keep tech debt down was tying state updates into as few RPC calls as possible, even if it was at the cost of performance. For example I had an “UpdateOwnership” function inside the HumanController script which would act as a state reducer: check if the human was meant to be controlled by the local player, and depending on that update the state of the entire entity (toggle camera, audio listener, etc). Any time we added a new feature to the Human we would add its proper behavior to that one function. If we ever ran into trouble with portions of the human code not reacting to possession properly, we could just call that function in a few more places (at one point it was even in update but we removed that) and it would usually resolve the problem, which saved a lot of debugging time. The main source of real issues came from poor documentation or even bugs in unity’s Netcode for GameObjects, which was the networking library we were using. Unfortunately the library is fairly new and esoteric edge cases and I even had to change and debug portions of the library itself to get the behavior we needed. Overall I am still glad I used it since I know how to wrangle it now. I suspect it will be the future of unity networking, and I plan on using it in future multiplayer projects.&nbsp;</p>



<h4 class="wp-block-heading">Ian</h4>



<h6 class="wp-block-heading">Audio Artist &amp; QA</h6>



<p>For our game I was the designated sound designer, encompassing both sound effects as well as music. For the music I tried to evoke the feeling of cartoons from the 1950s &#8211; 60s, by using primarily orchestral sounds with emphasis on woodwind instruments such as oboe, bassoon, and clarinet. The winds were supported by pizzicato low strings to make sure that there were no sustained notes, this kept the music always feeling bouncy. The only held notes were sul ponticello (bowed near the bridge) violin tremolo in order to add an aspect of suspense to the music. This backbone of orchestral sounds was then mixed with some synths (set with high gliss time between notes) to add in the vintage sci-fi feeling as our game takes place in a spaceship with aliens.&nbsp;</p>



<p>The sound effects were mostly non-stylized as I felt that the music conveyed enough of the cartoony nature that we needed. The few exceptions to this were the possession sound, which ended up being a very cartoon-like popping sound, and the parasite’s voices. These voices were done by recording myself making various grunts and laughs, then pitching them up by about 8-10 semitones, and finally running them through a grain delay effect. This effect was set to chop up the sound into little pieces and make each piece a bit higher than the last, giving the voices an alien-like rising echo effect. These parasite voices were then used when a parasite did a successful possession or whenever they jumped, just to give them a little more personality because I thought they were really cute.</p>



<p>I had a great time working on this project as it really took me out of my comfort zone musically. I normally like to write very dramatic or tragic orchestral music, so being able to write something fun and bouncy was quite the change. I think overall the music worked well, except for the adaptive system which we couldn’t quite get working in the end. The plan was for the music to evolve along with the game state through changing FMOD parameters. However we weren’t able to debug this system in time for the final. Luckily I still got to showcase a bit of the “rush music” in our trailer. On the topic of FMOD, I’m very glad to have gotten the opportunity to learn it over the semester. For a few years now, it has been a goal of mine to use it on a larger project and I think by the end I got the hang of it pretty well. The main thing that I would do differently if I could would be to constantly be implementing audio from the very beginning of the process. Most of our builds didn’t have audio in them until the very end, which made it much more likely to run into bugs later in the process.&nbsp;</p>



<h4 class="wp-block-heading">Richard</h4>



<h6 class="wp-block-heading">Programmer</h6>



<p>I worked primarily on programming, and toward the latter half of the semester, implementing UI into the game. I worked best during periods where tasks were atomic and could be done within the span of a single work session &#8211; having small and manageable tasks kept me focused during meetings and led to my greatest periods of productivity. Examples of these are shown in the mana system/pickups present in the game and the implementation of the start screen UI. Since the tasks were usually small enough to be done in a few hours, I was able to usually get a quicker turn around on those tasks and handled them on time.</p>



<p>Overall, I learned a lot from working on this project this semester. This might repeat my sentiments from the Post Mortem document, but I ran into a lot of difficulties with work that was ultimately cut from the game and failing to put out working code in time for implementation. This reinforced the reality that game development is never a straight shot journey, and that, more than just accepting, being communicative and clear about hardships and roadblocks along the way is key to putting out a project of this scope. This reality exponentially augments in size relative to the complexity of the game, and my experiences working on this project served to not only hone my programming skills, but my time management and communication skills, in order to be a better teammate in the future.</p>



<h4 class="wp-block-heading">Hongyu</h4>



<h6 class="wp-block-heading">Visual Artist</h6>



<p>This is my first game project and the first time I worked as an art designer in an interdisciplinary team. For the first few weeks I was quite confused about the workflow and how I would contribute to our project. I gradually walked into the right track when I started to draw the characters and search for people’s opinion and help. What I did not do well is I realize there are still lots of improvements I can make in the last 2 weeks and I do not have enough time to achieve them in this time. If I have more time I will reach out to my peers more often and start to work on my idea ealier.&nbsp; Next time I will try to be more brave to explain and practice my idea. My first game design is not perfect but I do learn from it.</p>



<p>Another important lesson is teamwork. I usually work with people from design/architecture background, sometimes I take it for granted that they should have the same understanding as I have for my stuff but it is not, so communication skills are quite important. Not only the language, sometimes I find sketch / storyboard is also a very effective tool to express my ideas.&nbsp;</p>



<p>Also next time I will spend more time discussing the initial idea, the concept and the mechanisms which I think is the part we have most of the space to make improvement.</p>



<p>During this semester, I questioned myself several times, but thanks to Tom and my teammates, they kept encouraging me to keep it up.</p>



<h4 class="wp-block-heading">Jiaqi</h4>



<h6 class="wp-block-heading">Producer</h6>



<p>It is a wonderful experience to work with my team on a game development project! Every time when I editing the blogs, I am proud of the progress we made. I appreciate my teammates bearing with me in the past 14 weeks.</p>



<p>It is my first game project, and it is interesting to be a producer while I am still learning about game development. </p>



<p>After the alpha, we made changes on people&#8217;s roles and responsibilities. As the producer, I was working on workload balance across the team. I thought it is helpful to have team meetings as well as short talks with each teammate. What is special about our team is that some of us are very knowledgeable about the process of design development, while others may even don&#8217;t know their skillset can be applied into the game. It is important to get out everyone&#8217;s concerns and visions and find chances of communication between group members to make the whole process smoother.</p>



<p>We sometimes met problems with time management and meeting the expectations of weekly goals, but it is better in the last week after we make the tasks more digestible.</p>



<p>With the knowledge of game development I have now, there are a few of things to think about if we start from the beginning again: the task tracking and management tools we use, how to organize team meetings and team communication, and team decision making.</p>



<p>The experience of being in the position of managing a team is definitely meaningful to me. People have different expectations, work styles and knowledge, and it needs thoughtful working process design to help these people be a &#8220;team&#8221; and be efficient, happy and successful as a whole.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://courses.ideate.cmu.edu/53-472/s2022/?feed=rss2&#038;p=337</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		<enclosure url="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/05/Richard-Video.mov" length="2701244" type="video/quicktime" />
<enclosure url="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/05/EscapePod_Launch.wav" length="1626388" type="audio/wav" />
<enclosure url="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/05/FuseBox_Complete.wav" length="308744" type="audio/wav" />

			</item>
		<item>
		<title>Spiral Studios: Parasite – Week 12</title>
		<link>https://courses.ideate.cmu.edu/53-472/s2022/?p=322</link>
					<comments>https://courses.ideate.cmu.edu/53-472/s2022/?p=322#respond</comments>
		
		<dc:creator><![CDATA[Jiaqi Zhang]]></dc:creator>
		<pubDate>Fri, 29 Apr 2022 00:15:29 +0000</pubDate>
				<category><![CDATA[Spiral Studios]]></category>
		<category><![CDATA[Team Posts]]></category>
		<guid isPermaLink="false">https://courses.ideate.cmu.edu/53-472/s2022/?p=322</guid>

					<description><![CDATA[Running towards the final build! Learning from Beta feedback, we are wrapping the mechanism and making improvements to level design and UI. Additional sound effects are prepared for different tasks [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Running towards the final build! Learning from Beta feedback, we are wrapping the mechanism and making improvements to level design and UI. Additional sound effects are prepared for different tasks in the game.</p>



<h2 class="wp-block-heading">Programming <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/2328.png" alt="⌨" class="wp-smiley" style="height: 1em; max-height: 1em;" /></h2>



<h3 class="wp-block-heading">Network stability</h3>



<p>This week was a lot of networking and server stability work. We transitioned from the outdated UNet transport protocol to the newer UTP which helped with getting clearer error messages particularly when connecting to addresses which had no server listening.</p>



<h2 class="wp-block-heading">Art <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f58d.png" alt="🖍" class="wp-smiley" style="height: 1em; max-height: 1em;" /></h2>



<h3 class="wp-block-heading">UI</h3>



<p>This week, we worked on updating the UI for the main menu and overhauling the UI for the game. The design mockups below are the intended designs for the UI. If time permits, I&#8217;ll look into adding a tweening library and animating some of the parasite figures to be more playful.</p>



<div class="wp-block-image"><figure class="aligncenter size-large is-resized"><img decoding="async" loading="lazy" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image1-4-1024x728.png" alt="" class="wp-image-323" width="570" height="405" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image1-4-1024x728.png 1024w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image1-4-300x213.png 300w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image1-4-768x546.png 768w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image1-4.png 1198w" sizes="(max-width: 570px) 100vw, 570px" /></figure></div>



<div class="wp-block-image"><figure class="aligncenter size-large is-resized"><img decoding="async" loading="lazy" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image3-3-1024x728.png" alt="" class="wp-image-324" width="570" height="405" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image3-3-1024x728.png 1024w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image3-3-300x213.png 300w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image3-3-768x546.png 768w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image3-3.png 1198w" sizes="(max-width: 570px) 100vw, 570px" /></figure></div>



<h3 class="wp-block-heading">Level: Lighting</h3>



<p>This week, we light up the whole level and use color and spot light to emphasize the difference of rooms and highlight task related objects.</p>



<div class="wp-block-image"><figure class="aligncenter size-large is-resized"><img decoding="async" loading="lazy" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/unknown-1024x547.png" alt="" class="wp-image-325" width="789" height="421" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/unknown-1024x547.png 1024w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/unknown-300x160.png 300w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/unknown-768x410.png 768w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/unknown-1536x820.png 1536w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/unknown-2048x1094.png 2048w" sizes="(max-width: 789px) 100vw, 789px" /></figure></div>



<p>This adjustment in lighting adds more effect of shadows and aims to help the players to navigate though the level.</p>



<h2 class="wp-block-heading">Audio <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f3b9.png" alt="🎹" class="wp-smiley" style="height: 1em; max-height: 1em;" /></h2>



<p>This week much of the focus was on polishing existing mechanics and working on UI. To that end the main task for audio was to create unique sounds for each of the tasks that the human needs to complete in order to win the game. These, along with additional UI sounds, are all just simple one shots that can be played so creation and implementation is fairly simple.</p>



<p>The more elusive goal of this week is to work on balancing our current audio and debugging any sound issues that may occur. The audio balancing is done using the real-time mastering feature of FMOD, where each sound event can be edited in the FMOD editor while unity is running the build. This allows sounds to be adjusted in real time while playing, making quick fixes to the audio balance very easy.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://courses.ideate.cmu.edu/53-472/s2022/?feed=rss2&#038;p=322</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Spiral Studios: Parasite – Week 11</title>
		<link>https://courses.ideate.cmu.edu/53-472/s2022/?p=309</link>
					<comments>https://courses.ideate.cmu.edu/53-472/s2022/?p=309#respond</comments>
		
		<dc:creator><![CDATA[Jiaqi Zhang]]></dc:creator>
		<pubDate>Tue, 19 Apr 2022 06:24:11 +0000</pubDate>
				<category><![CDATA[Spiral Studios]]></category>
		<category><![CDATA[Team Posts]]></category>
		<guid isPermaLink="false">https://courses.ideate.cmu.edu/53-472/s2022/?p=309</guid>

					<description><![CDATA[Here comes our Beta! From Alpha version, our team have responded to the feedback we got and fixed game mechanism and add more living elements to our level design. Let&#8217;s [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Here comes our Beta! From Alpha version, our team have responded to the feedback we got and fixed game mechanism and add more living elements to our level design. Let&#8217;s have a look!</p>



<h2 class="wp-block-heading">Programming <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/2328.png" alt="⌨" class="wp-smiley" style="height: 1em; max-height: 1em;" /></h2>



<h3 class="wp-block-heading">Tasks</h3>



<p>This week required writing the code for visualizing and implementing the new tasks decided on for the final version of the game. We have two types of tasks: </p>



<p>Pickup tasks, where players must pick up an object and place it in a certain location. These tasks were harder to implement since the object needed to visually appear in the hand of the human for both the human player and the other players, so some delicate network programming needed to be done to make sure everything worked correctly even across possessions.</p>



<p>Hold tasks, where players must interact with an object for an extended period of time. These were simple enough to implement using our existing interaction system.</p>



<p>Both tasks were implemented with their own components which integrated with our universal interaction and win condition system. </p>



<div class="wp-block-image is-style-rounded"><figure class="aligncenter size-large is-resized"><img decoding="async" loading="lazy" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image2-2-1024x562.png" alt="" class="wp-image-312" width="849" height="465" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image2-2-1024x562.png 1024w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image2-2-300x165.png 300w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image2-2-768x422.png 768w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image2-2.png 1202w" sizes="(max-width: 849px) 100vw, 849px" /></figure></div>



<div class="wp-block-image is-style-rounded"><figure class="aligncenter size-full is-resized"><img decoding="async" loading="lazy" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image3-2.png" alt="" class="wp-image-313" width="720" height="581" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image3-2.png 931w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image3-2-300x242.png 300w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image3-2-768x620.png 768w" sizes="(max-width: 720px) 100vw, 720px" /></figure></div>



<h3 class="wp-block-heading">Visualizations</h3>



<p>In order to help players navigate the tasks I used Quick Outline from the asset store which puts a solid outline around the mesh of its gameobject. These outlines toggle depending on the state of the task, for example the place where players must insert the objects for hold tasks glow only when the player is holding the necessary object.&nbsp;</p>



<p>These helped a lot with player confusion and eliminated any need for a minimap or complex visual navigation system. </p>



<h3 class="wp-block-heading">UI</h3>



<p>A visual task list was also implemented which shows which win conditions are fulfilled for each player. Tasks start as red and turn green as they are fulfilled. Once all tasks are fulfilled, the win screen appears which provides a button that takes the player back to the main menu. </p>



<div class="wp-block-image is-style-default"><figure class="aligncenter size-full"><img decoding="async" loading="lazy" width="910" height="458" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image1-3.png" alt="" class="wp-image-314" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image1-3.png 910w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image1-3-300x151.png 300w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image1-3-768x387.png 768w" sizes="(max-width: 910px) 100vw, 910px" /></figure></div>



<h3 class="wp-block-heading">Bug Fixes</h3>



<p>Heaps of bugs and networking race conditions were also resolved this week. We no longer run into any issues with parasite and player movement and their animations are also networked correctly. A change in the official network animator was required which allowed non-server clients to influence the animation state. </p>



<h2 class="wp-block-heading">Audio <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f3b9.png" alt="🎹" class="wp-smiley" style="height: 1em; max-height: 1em;" /></h2>



<p>Let&#8217;s listen to two new music made for the ending of the game!</p>



<figure class="wp-block-audio"><audio controls src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/BminorEnding.mp3"></audio></figure>



<figure class="wp-block-audio"><audio controls src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/DminorEnding.mp3"></audio></figure>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://courses.ideate.cmu.edu/53-472/s2022/?feed=rss2&#038;p=309</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		<enclosure url="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/BminorEnding.mp3" length="400195" type="audio/mpeg" />
<enclosure url="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/DminorEnding.mp3" length="400195" type="audio/mpeg" />

			</item>
		<item>
		<title>Spiral Studios: Parasite – Week 10</title>
		<link>https://courses.ideate.cmu.edu/53-472/s2022/?p=261</link>
					<comments>https://courses.ideate.cmu.edu/53-472/s2022/?p=261#respond</comments>
		
		<dc:creator><![CDATA[Jiaqi Zhang]]></dc:creator>
		<pubDate>Tue, 12 Apr 2022 01:02:01 +0000</pubDate>
				<category><![CDATA[Spiral Studios]]></category>
		<category><![CDATA[Team Posts]]></category>
		<guid isPermaLink="false">https://courses.ideate.cmu.edu/53-472/s2022/?p=261</guid>

					<description><![CDATA[We are getting close to Beta! In this busy carnival week, we identified goals for Beta, and made some great progress. Programming ⌨️ This week, we worked on developing a [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>We are getting close to Beta! In this busy carnival week, we identified goals for Beta, and made some great progress.</p>



<h2 class="wp-block-heading">Programming <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/2328.png" alt="⌨" class="wp-smiley" style="height: 1em; max-height: 1em;" /></h2>



<p>This week, we worked on developing a set of abilities for the parasites to use, based on a new mana system. The current planned abilities&nbsp; The parasites will be limited in their capacity to use their abilities, and the aim is to have environmental pickups spread across the map in order to disincentivize the parasites from simply pursuing the human player throughout the whole game.</p>



<p>Changes to the codebase included increasing the abstraction of the ability system, in order to have more reusable code components that interface with the UI and mana system.&nbsp; Displayed below is a screenshot of the mana system and current ability parameters visible within the editor &#8211; the aim is to make sure that the ability system allows us to rapidly prototype for balance by allowing us to fine tune cool downs, durations, and mana costs without having to significantly much around in the code.</p>



<div class="wp-block-image"><figure class="aligncenter size-full is-resized"><img decoding="async" loading="lazy" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image1-1.png" alt="" class="wp-image-263" width="345" height="365" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image1-1.png 616w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image1-1-283x300.png 283w" sizes="(max-width: 345px) 100vw, 345px" /></figure></div>



<p>Due to the hectic nature of the last week, progress was slower than anticipated. Looking ahead, the aim is to finish implementing these abilities alongside the camera changes from last week by Tuesday and, moving into the next week, integrate the ability system with the HUD in order to start displaying information to the users in a more visually appealing manner.</p>



<h2 class="wp-block-heading">Audio <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f3b9.png" alt="🎹" class="wp-smiley" style="height: 1em; max-height: 1em;" /></h2>



<p>This week focused on finishing the music system used in our game. A triggerable ‘rush state’ music has been finished for when one of the players is nearing completion of all of their tasks. The rush state music stays in effect permanently after one player gets a certain number of tasks done, regardless of whether they currently control the human or not. When the player close to completion is in the human the music adapts to add a ticking clock sound to further heighten the sense of urgency that should be felt by all the players at this point.</p>



<figure class="wp-block-audio"><audio controls src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/RushStateLayer1.mp3"></audio></figure>



<p>Due to the transition into the rush state including an increase in tempo it was a bit difficult to make the beats line up well in FMOD. To solve this we separated the short 2 bar transition into its own audio file that triggers once before starting the rush loop. Our next challenge is creating a satisfying ending that can trigger from anywhere within the rush loop music. This is made especially difficult due to the music modulating through many different tonalities making it difficult to find a smooth harmonic transition that works from any point in the music. One possible solution to this would be to create multiple endings in different keys that can trigger depending on where in the loop the music currently is.</p>



<p>There has also been work done this week on UI sounds such as sounds for our new cool down systems as well as standard menu button press sounds.</p>



<h2 class="wp-block-heading">Art <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f58d.png" alt="🖍" class="wp-smiley" style="height: 1em; max-height: 1em;" /></h2>



<h3 class="wp-block-heading">Level Design</h3>



<p>This week my primary focus was finishing the level design and improving the final visual style for the environment.&nbsp;</p>



<h4 class="wp-block-heading"><strong>New Rooms</strong></h4>



<p>Our level as of last week was very hard to navigate since every single corridor and intersection looked the exact same &#8211; I changed that this week by adding in 4 new rooms which should break up the monotony of the level and make it easier to memorize, navigate, and simply make the game more fun.</p>



<div class="wp-block-image is-style-rounded"><figure class="aligncenter size-large"><img decoding="async" loading="lazy" width="1024" height="654" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image3-1024x654.png" alt="" class="wp-image-265" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image3-1024x654.png 1024w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image3-300x192.png 300w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image3-768x491.png 768w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image3.png 1064w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure></div>



<p>Our four rooms are:</p>



<ul><li>The Control Room</li></ul>



<div class="wp-block-image is-style-rounded"><figure class="aligncenter size-full is-resized"><img decoding="async" loading="lazy" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image6.png" alt="" class="wp-image-266" width="761" height="629" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image6.png 1004w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image6-300x248.png 300w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image6-768x636.png 768w" sizes="(max-width: 761px) 100vw, 761px" /></figure></div>



<ul><li>The Lab</li></ul>



<div class="wp-block-image is-style-rounded"><figure class="aligncenter size-large is-resized"><img decoding="async" loading="lazy" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image7-1024x728.png" alt="" class="wp-image-267" width="799" height="568" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image7-1024x728.png 1024w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image7-300x213.png 300w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image7-768x546.png 768w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image7.png 1109w" sizes="(max-width: 799px) 100vw, 799px" /></figure></div>



<p>The lab will also serve as the new spawn point for all parasites, since they all broke out of the vials in the lab.</p>



<ul id="block-c13290ae-aebd-4e58-8cff-1a2c5ea50a23"><li>The Power Room</li></ul>



<div class="wp-block-image is-style-rounded"><figure class="aligncenter size-large is-resized"><img decoding="async" loading="lazy" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image4-1024x770.png" alt="" class="wp-image-268" width="740" height="555" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image4-1024x770.png 1024w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image4-300x226.png 300w" sizes="(max-width: 740px) 100vw, 740px" /></figure></div>



<ul><li>And finally a blank room that appears twice to bookend the other corners of the map</li></ul>



<div class="wp-block-image"><figure class="aligncenter size-large is-resized"><img decoding="async" loading="lazy" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image5-1024x368.png" alt="" class="wp-image-269" width="886" height="318" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image5-1024x368.png 1024w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image5-300x108.png 300w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image5-768x276.png 768w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image5.png 1210w" sizes="(max-width: 886px) 100vw, 886px" /></figure></div>



<h4 class="wp-block-heading"><strong>Props</strong></h4>



<p>I also built several props we will sprinkle around the map to give it more detail and easier to differentiate various areas.</p>



<div class="wp-block-image"><figure class="aligncenter size-large is-resized"><img decoding="async" loading="lazy" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image2-1024x580.png" alt="" class="wp-image-270" width="786" height="445" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image2-1024x580.png 1024w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image2-300x170.png 300w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image2-768x435.png 768w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image2.png 1314w" sizes="(max-width: 786px) 100vw, 786px" /></figure></div>



<h3 class="wp-block-heading">Art Style</h3>



<p>This week we modify the whole color code and art style, make it more sci-fi and more interesting, especially make characters more prominent. We also come up with a guideline for the art stuff to make sure all the new components will follow the same style.</p>



<div class="wp-block-image is-style-rounded"><figure class="aligncenter size-large"><img decoding="async" loading="lazy" width="1024" height="578" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image1-2-1024x578.png" alt="" class="wp-image-271" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image1-2-1024x578.png 1024w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image1-2-300x169.png 300w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image1-2-768x434.png 768w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image1-2-1536x868.png 1536w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image1-2.png 1999w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure></div>



<div class="wp-block-image"><figure class="aligncenter size-large is-resized"><img decoding="async" loading="lazy" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image3-1-1024x785.png" alt="" class="wp-image-272" width="619" height="474" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image3-1-1024x785.png 1024w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image3-1-300x230.png 300w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image3-1-768x589.png 768w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image3-1.png 1076w" sizes="(max-width: 619px) 100vw, 619px" /></figure></div>



<h3 class="wp-block-heading">Animation</h3>



<p>We figured out possible animation for the characters, although they may not be added into our final version of game, I believe it could bring more interesting interaction for the players.</p>



<figure class="wp-block-image size-large"><img decoding="async" loading="lazy" width="1024" height="378" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image6-1-1024x378.png" alt="" class="wp-image-273" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image6-1-1024x378.png 1024w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image6-1-300x111.png 300w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image6-1-768x283.png 768w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image6-1-1536x566.png 1536w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image6-1.png 1999w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<div class="wp-block-image"><figure class="aligncenter size-large"><img decoding="async" loading="lazy" width="1024" height="437" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image5-1-1024x437.png" alt="" class="wp-image-274" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image5-1-1024x437.png 1024w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image5-1-300x128.png 300w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image5-1-768x328.png 768w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image5-1-1536x656.png 1536w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image5-1.png 1999w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure></div>



<div class="wp-block-image"><figure class="aligncenter size-large"><img decoding="async" loading="lazy" width="1024" height="447" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image2-1-1024x447.png" alt="" class="wp-image-275" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image2-1-1024x447.png 1024w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image2-1-300x131.png 300w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image2-1-768x335.png 768w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image2-1-1536x670.png 1536w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image2-1.png 1770w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure></div>



<h3 class="wp-block-heading">Character</h3>



<p>We modified the human characters to make it match the style of the parasites, and since we reorganized our storyline, I differential the human character by adding some details on the character.</p>



<figure class="wp-block-image size-large"><img decoding="async" loading="lazy" width="1003" height="1024" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image4-1-1003x1024.png" alt="" class="wp-image-276" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image4-1-1003x1024.png 1003w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image4-1-294x300.png 294w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image4-1-768x784.png 768w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/image4-1.png 1034w" sizes="(max-width: 1003px) 100vw, 1003px" /></figure>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://courses.ideate.cmu.edu/53-472/s2022/?feed=rss2&#038;p=261</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		<enclosure url="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/RushStateLayer1.mp3" length="1812897" type="audio/mpeg" />

			</item>
		<item>
		<title>Spiral Studios: Parasite &#8211; Week 9</title>
		<link>https://courses.ideate.cmu.edu/53-472/s2022/?p=238</link>
					<comments>https://courses.ideate.cmu.edu/53-472/s2022/?p=238#respond</comments>
		
		<dc:creator><![CDATA[Jiaqi Zhang]]></dc:creator>
		<pubDate>Sat, 02 Apr 2022 07:04:03 +0000</pubDate>
				<category><![CDATA[Spiral Studios]]></category>
		<category><![CDATA[Team Posts]]></category>
		<guid isPermaLink="false">https://courses.ideate.cmu.edu/53-472/s2022/?p=238</guid>

					<description><![CDATA[After getting feedback from Alpha, members of Spiral Studio did reflection on our production progress and set up new working sessions. This week, we focused on fixing existing bugs and [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>After getting feedback from Alpha, members of Spiral Studio did reflection on our production progress and set up new working sessions. This week, we focused on fixing existing bugs and prepared for new features that might make the gameplay more fun! </p>



<h2 class="wp-block-heading">Programming <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/2328.png" alt="⌨" class="wp-smiley" style="height: 1em; max-height: 1em;" /></h2>



<h3 class="wp-block-heading">Bug Fixes</h3>



<p class="has-small-font-size">Written by Thomas</p>



<p class="has-regular-font-size">The first half of the week I focused on addressing the bugs and lack of polish that we ran into during alpha affecting the parasite controller and game state. There were several issues where information was not properly being communicated over the network, in particular the task completion (and thus the win state) and animation state for the human player was only replicating to the server. Some of those issues had to do with not fully understanding the networking library and some were just straightforward bugs in my code, but they are all addressed now.</p>



<p>Another annoying bug was a camera issue when the human player would run too close to the wall and could see past the environment mesh, giving them a view of the skybox and the entire level from the outside. This was fixed by simply reducing the near clipping plane for the main human player camera.</p>



<p>The biggest set of bugs came from the parasite controller. We took a step back and reassessed the design of the parasite controller and decided the cost of allowing the player to run across the walls and ceilings was too great for the gameplay it added. I rebuilt the controller so that now the parasite will simply stick to any surface it touches that isn’t the ground plane, and we are planning a “grab” feature which will require the player to pass a skill check (by pressing a key right before they hit the surface) to successfully attach to a surface. Now we no longer run into issues with the parasite passing through the environment collider or flying around when touching a corner or weird angle.</p>



<h3 class="wp-block-heading">Viewmodel</h3>



<p class="has-small-font-size">Written by Thomas</p>



<p>So far the human player has had to deal with looking from inside their own body, which is not a fantastic experience. So I modeled a set of astronaut hands and some basic idle animations to give them something better to look at.&nbsp;</p>



<div class="wp-block-image is-style-rounded"><figure class="aligncenter size-full is-resized"><img decoding="async" loading="lazy" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/Picture1.png" alt="" class="wp-image-251" width="529" height="332" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/Picture1.png 433w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/Picture1-300x188.png 300w" sizes="(max-width: 529px) 100vw, 529px" /></figure></div>



<p>In addition to the basic idle animation, there is a script attached to the viewmodel which will make it bob and move with mouse and WASD movement, so it isn’t just hard locked to the camera.</p>



<figure class="wp-block-video aligncenter"><video controls src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/viewmodel-recording.mov"></video></figure>



<h3 class="wp-block-heading">Cinemachine Human and Parasite Changes</h3>



<p class="has-small-font-size">Written by Richard</p>



<p>Since the majority of the players in a lobby would be parasites, I worked on making sure piloting them would feel as intuitive as possible. Since the human player and the parasites would have different point of views, I decided to use Cinemachine in order to be able to set up different virtual cameras, and have them blend between each other during cutscenes (such as possession).</p>



<div class="wp-block-image"><figure class="aligncenter size-full"><img decoding="async" loading="lazy" width="468" height="204" src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/Picture1-1.png" alt="" class="wp-image-252" srcset="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/Picture1-1.png 468w, https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/Picture1-1-300x131.png 300w" sizes="(max-width: 468px) 100vw, 468px" /></figure></div>



<p>Getting the parasite camera feeling nice took a lot of fiddling with numbers, including a 20 minute stretch where I was trying to get the camera to not follow the parasite directly (Cinemachine is a little finicky, especially with a target this small).</p>



<p>Final adjustments to the camera rig values, plus some Perlin noise on the middle rig to simulate a moving camera gives us this as the current camera view for the Parasites (some fiddling with camera sensitivity still required):</p>



<figure class="wp-block-video aligncenter"><video controls src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/Week-10-Vid-1.mov"></video></figure>



<p>As for the human, since they are in a FPS POV, their changes aren&#8217;t as drastic &#8211; for now, I set their culling mask to ignore their own model until we add in the view model for their hands:</p>



<figure class="wp-block-video aligncenter"><video controls src="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/Week-10-Vid-2.mov"></video></figure>



<p>Blending between parasite and human cameras during possession and cleaning up the parasite camera movement during their jumps and the like is up next.</p>



<h2 class="wp-block-heading">Audio <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f3b9.png" alt="🎹" class="wp-smiley" style="height: 1em; max-height: 1em;" /></h2>



<p class="has-small-font-size">Written by Ian</p>



<p>This week the main focus of audio development has been the expansion of our current music system.</p>



<p>Our previous plan for the “rush state” music was for it to act as a oneshot audio that would correctly end with the end of the level. After further considering the win conditions of the game, we instead decided it would be more appropriate to write the music as a loop. This way it can trigger when a player is nearing completion of their tasks and not rely on a set level timer countdown. We plan to write a separate “ending” oneshot that can be triggered to conclude the rush state music when the game ends.</p>



<h2 class="wp-block-heading">Art <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f58d.png" alt="🖍" class="wp-smiley" style="height: 1em; max-height: 1em;" /></h2>



<p class="has-small-font-size">Written by Jiaqi</p>



<p>Based on the feedback we received from Alpha, we are preparing for coming changes on Art of the game that aims to keep the style of character, level design and UI consistent, which communicates with the players about the theme of the game. </p>



<p>We are looking for inspiration in several topics:</p>



<ul><li>How to make the environment more distinguishable and interesting</li><li>Interactable objects for Human tasks and Parasite mana/energy system</li><li>Add more rooms for players to explore</li><li>Color code of the game</li><li>UI elements for Human and Parasite in gameplay</li></ul>



<p>We believe a bunch of new changes will happen next week! Come back to our blog and check them out!</p>
]]></content:encoded>
					
					<wfw:commentRss>https://courses.ideate.cmu.edu/53-472/s2022/?feed=rss2&#038;p=238</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		<enclosure url="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/viewmodel-recording.mov" length="6671901" type="video/quicktime" />
<enclosure url="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/Week-10-Vid-1.mov" length="13816261" type="video/quicktime" />
<enclosure url="https://courses.ideate.cmu.edu/53-472/s2022/wp-content/uploads/2022/04/Week-10-Vid-2.mov" length="9236073" type="video/quicktime" />

			</item>
	</channel>
</rss>
