Showing posts with label Advanced Production. Show all posts
Showing posts with label Advanced Production. Show all posts

Tuesday, December 15, 2020

Parasitic Release

Parasitic Release


After 4-5 months of production, our game has reached its final form. The amazing work of our programmers, modelers, level designers, and leads all led to this moment. I'm still in awe of being able to work with such a great and talented team of people. 

Our programmers have made it all possible with their awesome coding skills. Chase had done some incredible work implementing a lot of the art assets from audio to animation to particle effects. Jeremy's work on the UI and fog system really creates the game's atmosphere, his vocals also star in our game as the enemies' damage sounds. Ryan's slope system still amazes me, it looks fantastic and is very easy to pick up and use. It's really cool to be able to use it with some of the terrains of my first level. 

While we worked individually most of the time, I'm really grateful for the support of my fellow level designers who are both efficient and responsive. Joe is definitely the mood maker of us three, he's very supportive and tries his best to help everyone out. Xander definitely is the most experienced out of us because he is most experienced in both level design and turn-based strategy games, his feedback was very useful during the annotation phase of our levels. A big thanks again to them for helping me out and being there!  

Of course, the art and feel of the game would not be possible without our modelers, Brandon and Devin. Brandon was our environmental modeler, creating the high-quality low polys of what's visible in the game's environment. Level designers are able to give a list of assets we want in our levels and he creates them in a way where they all feel the same, which helps with the game's immersion and looks. Devin's work of our character and enemy models really sells the game. The players are able to differentiate the characters from not only each other but from enemies as well. 

Each and every one of us had worked in such a smooth and friendly environment thanks to our producer and game designer, Dylan and Alex. They are constantly and consistently giving feedback, keeping up an active Trello board, and helping everyone out. It's thanks to them our game had a smooth production due to the concept and idea being fleshed out thanks to Alex and having an active work environment thanks to Dylan. I could not have asked for better people to lead us. 
 
I'm really thankful to have been a part of this amazing team of people. This is my first time working on such a grand project of this scale where it really feels like you are developing a game in a work environment. And we did make an incredible game! Thanks to the hard work of our team Parasitic is published and ready to play! 

Get it here: Parasitic

Wednesday, November 18, 2020

Parasitic Sprint 6 Blog Post

Parasitic Level Design Post#6

I prioritized finalizing the level I was working on Sprint 6. So most of the cards assigned to me this sprint are the final pieces I need to add to my level as well as the rollover playtesting cards. Since I was almost done with all my cards near the end of the sprint I was also assigned to look for audio. The cards assigned to me are: 
  • "As a level designer, I need to hook up the unique win condition in each of my levels. (1)"
  • "As a level designer, I need to play through my level to test for discrepancies or errors. (1)" [Sprint 4]
  • "As a level designer, I need to populate the Dead Forest level with current assets to get the tone of the level established. (1)"
  • "As a level designer, I need to set up the lighting in the level to match the theme. (1)"
  • "As a level designer, I need to playtest my level to check for discrepancies so the level flows smoothly. (1)" [Sprint 5]
  • "As a player, I want to hear a swoosh and glass shatter as I throw a health potion to one of my teammates as an archer. (1) (Ability 2) (3 Different Clips)"
  • "As a player, I want to hear flames as my bow lights up to show my upgraded attack. (1) (Ability 1) (3 Different Clips)"
  • "As a player, I want to hear the swift pullback and let go of a bow and arrow when I attack as the archer. (1) (Attack) (3 Different Clips)"
The two cards I worked on coincidently during the beginning of this Sprint were populating my level and added mood-fitting lighting to the level. Populating my level took a while since I wanted to make sure the trees were not too big compared to the player models which would break immersion and I also had to make sure the branches weren't too close to each other so the players can actually see what was going on on the ground level. I also used the small leaf assets to make piles of levels that cover the floor of the level. There were three types of leaf piles. The yellow Ginko leaves would do a better job at drawing the player's attention and I used them to hint at secret locations or branching pathways that might or might not reward the player. 

Ginko Leaf Piles (Treasure/Secret Area Indicators)

The next piles are maple leaves that were used to cover empty space between trees, they indicate areas that players could not move towards/enter. 

Maple Leaf Piles (No Entry/Off-Limit Indicators)

The last and biggest piles are normal, plain leaves. These are not very visible but they path the way for the player. The reason I used this was to hint where the paths are in the level but since they are not obviously visible, the player would need to look closer and pay attention to find this "cheat". 

Normal Leaf Pile (Outline of paths)

These details took pretty long since I also had to move other assets around them. The whole scene probably has a total tri count of 10+M considering one camera frame is 1-2M tris. I was a bit scared of this since I wasn't sure if having this many assets would lag the level or not. Luckily Alex said that as long as the frames didn't drop below 60 or when playtesting things don't lag, it would be okay. While the assets took a while, I'm really happy with how the level turned out. There's a lot of details in the level that probably isn't even noticeable or many players would just brush off but I'd be very happy if someone were to notice the leaves placed gently on the rocks and the crates in the level. 

Tris of the starting area in the level

I also tweaked the lighting for this level. My first "draft" was a grey-blue that seemed like a bright evening or a foggy sunrise for the level. 


But it was a bit too bright for a "dead forest" level most likely set in the evening or late at night. So I went back and changed the key light intensity from 1 to .3 as advised. The dark lighting does really give a scary and unsettling vibe to the level since the player would feel cramped and lost. 


After finishing these cards, I did playtesting for the level to make sure the assets do not block the player or hinder the flow of the level. Since this was before adding the level's objectives/win-conditions, the level was pretty difficult. Since this is Level 4, more enemies were of a more advanced and higher tier, meaning they do more damage and had more HP. Players also took a bit longer to level up and get points to unlock abilities. It would take a couple of plays to defeat all the 45 total enemies in the level and win. The player characters had a better chance of survival if they stayed together since the level was more maze-like. Unlike my first level with plenty of open space, if the players split up in this level, it would be difficult to regroup. 

After making sure the player can actually win the level and that the flow and difficulty felt smooth, I added the win-condition to the level. For my level, I made the win-condition for the player was to defeat the boss at the end of the maze, the brood enemy. This was really easy thanks to our amazing programmers, Chase explained it to the level designers in a quick and easy-to-understand way as well. I'm really grateful that we have an amazing team. 

Win-condition/Objective feature added

At this time, my only card left was to playtest so I asked the leads to give me more cards to work on. Dylan asked me to do some of the audio, specifically the sound effects for the Archer abilities. I finished up a few more playtests which made me feel that my level was at a great level of flow and difficulty after some tweaks. I'm currently looking for audio clips that best fit the Archer's abilities. 

So the cards that will roll over from this sprint are: 
  • "As a player, I want to hear a swoosh and glass shatter as I throw a health potion to one of my teammates as an archer. (1) (Ability 2) (3 Different Clips)"
  • "As a player, I want to hear flames as my bow lights up to show my upgraded attack. (1) (Ability 1) (3 Different Clips)"
  • "As a player, I want to hear the swift pullback and let go of a bow and arrow when I attack as the archer. (1) (Attack) (3 Different Clips)"
We have almost reached the finish line! The next sprint is our seventh and last sprint. I'm amazed at how awesome our game has become and at all the people who worked very hard on it. I can't wait to see how it will be finalized. So until then!

Wednesday, November 4, 2020

Parasitic Sprint 5 Blog Post

Parasitic Level Design Post#5

My tasks in Sprint 5 focused on fleshing out my second level: "Level 4 - Dead Forest". The cards assigned to me this sprint are mostly rollovers from the last sprint with only a playtest card being newly assigned: 
  • "As a level designer, I need to block out a large Dead Forest level that starts with our heros having to maneuver a maze before finding the exit that leads to an arena for a mini boss battle. (3)"
  • "As a level designer, I need to play through my level to test for discrepancies or errors. (1)" [Sprint 4]
  • "As a level designer, I need to populate the Dead Forest level with current assets to get the tone of the level established. (1)"
  • "As a level designer, I need to create clear boundaries for the player to restrict going off path. (1)"
  • "As a level designer, I need to populate the Dead Forest level with current assets to get the tone of the level established"
  • "As a level designer, I need to playtest my level to check for discrepancies so the level flows smoothly. (1)" [Sprint 5]

For this sprint, I finished the block out for my level. This took a while since I also had to edit each tile to correspond to my annotated map. 

Block Out

Tile Map

Currently, I am populating the level with the newly added assets I requested in the asset list from the last sprint. Some problems I've encountered from this is figuring how to place the trees properly for a "forest" level but spaced far apart so that the player can move and see the other assets (such as enemies, buff tiles, and pickups) in the level. I also went back and removed the colorized trees and mainly used the leaf-less trees so the level corresponds to the theme of a "dead forest" 

After I implemented most of the assets, I realized I needed the terrain as well. So I played with the terrain editor in Unity, moved it to blender, edited it so it's low poly and colorized, and added it back into Unity. Now I can add assets around the terrain as well so the level and the terrain feel more intersected/fused and not just two separate pieces, which helps with immersion. Here are progress pictures of what I have so far:

Reached 271 trees and still need more for the terrain

Terrain

The cards I have left are: 
  • "As a level designer, I need to populate the Dead Forest level with current assets to get the tone of the level established"
  • "As a level designer, I need to create clear boundaries for the player to restrict going off path."
  • "As a level designer, I need to playtest my level to check for discrepancies so the level flows smoothly." [x2]
I'm concurrently working on "As a level designer, I need to populate the Dead Forest level with current assets to get the tone of the level established" and "As a level designer, I need to create clear boundaries for the player to restrict going off path." For the next sprint, I'll be finishing up my forest level and moving on to playtesting it before it gets implemented into the build. Ciao for now.

Thursday, October 22, 2020

Parasitic Sprint 4 Blog Post

Parasitic Level Design Post#4

My tasks in Sprint 4 revolved around finishing my first level and starting a new one. The cards assigned to me this sprint are: 
  • "As a level designer, I need to add enemies from the project into my scene based off of the annotated map"
  • "As a level designer, I need an asset list for the Dead Forest level that shares the asset theme from the meadow level but this time more decayed"
  • "As a level designer, I need to annotate a large Dead Forest level that starts with our heros having to maneuver a maze before finding the exit that leads to an arena for a mini boss battle"
  • "As a level designer, I need to block out a large Dead Forest level that starts with our heros having to maneuver a maze before finding the exit that leads to an arena for a mini boss battle"
  • "As a level designer, I need to populate the Dead Forest level with current assets to get the tone of the level established"
  • "As a level designer, I need to create clear boundaries for the player to restrict going off path."
  • "As a level designer, I need to playtest my level to check for discrepancies so the level flows smoothly."

 The first two cards I finished for this sprint was the card for the asset list and the annotated map for the new level. I did these two cards first because we were still waiting on some enemies and assets from the programmers and the artists. I got both cards done fairly fast. The asset list was fairly simple since the level's theme was a "dead forest", I mainly just needed different variations of dead trees or leaf-less trees and maybe more foliage. Though we do have several nature assets that I used for my first level and those can be used for this new level as well. The annotated map went through one iteration before it was approved. My first draft of it was too simple and some of the feedback I got about it was that it needed to be more maze-like and I should also add a legend for the different buff tiles. 


Initial Concept of Level

I quickly went back into photoshop to make it more complex and added in a few more tiles. The way this version works is similar to my first level where the player has three paths of varying difficulty where they can travel through. But unlike my previous level, the paths aren't as straightforward and direct and the difficulty varies a lot more. I also did a fog of war version of it to show how it would look like for the player and where the pockets of enemies would be at. 

Final Concept of Level

Fog of War Version

After those two cards, I went back to my first level and finished implementing the remaining enemies as well as adding the buff tile assets around the level and finally, playtesting-playtesting-playtesting. It took roughly 30 minutes to finish the level and around 100 round each time. My level was surprisingly difficult if you play too aggressively. The way the level is designed is that there technically are three pathways with three pockets of enemies each. The three characters the player controls should stick together because defeating one pocket of enemies alone is very difficult especially if those pockets housed any of the harder enemies such as the charger and stalker. It was decided that the charger enemy will be removed from the level.

100 rounds to win

The cards I have left are: 
  • "As a level designer, I need to block out a large Dead Forest level that starts with our heros having to maneuver a maze before finding the exit that leads to an arena for a mini boss battle"
  • "As a level designer, I need to populate the Dead Forest level with current assets to get the tone of the level established"
  • "As a level designer, I need to create clear boundaries for the player to restrict going off path."
  • "As a level designer, I need to playtest my level to check for discrepancies so the level flows smoothly."
The card I'm currently working on is blocking out the level. Next, I'll be working on populating the level based on the annotated map. I feel that I'm making steady progress and I hope to finish this new level by the end of the next sprint. So until then, ciao!



Thursday, October 8, 2020

Parasitic Sprint 3 Blog Post

Parasitic Level Design Post#3

For our third sprint, I focused on finishing the one big card from Sprint 2 about populating my level with assets and the two Sprint 3 cards I was assigned to, and those cards are: 
  • "As a level designer, I need to create clear boundaries for the player to restrict going off path."
  • "As a level designer, I need to set up the lighting of the level so the atmosphere of the level matches the theme."
This sprint was really about further "fleshing out the level" and waiting for enemies and other assets to be done so we could add them to our level. The first card of this sprint and technically, the card I was already working on since the last sprint was "As a level designer, I need to populate my level with current assets to get the tone of the level established." I worked on this card and the "As a level designer, I need to create clear boundaries for the player to restrict going off path" card at the same time because they coincided. I needed a terrain to visually layout the story and pathing of the level and I needed assets to get a feel of where the terrain elevates and comes in and out of the level. My first version was okay but from the feedback I got, the level would look much better with more color and shading, some height added to the level so that the level isn't completely flat, and assets spread out into the terrain and not just the area where the player moves in. 

Version 1

I did not really have any problems with adding assets in the level itself and populating the level. Adding height to the level itself was sort of a problem, however. Because the terrain would be decimated in blender so it would be low-poly, adding height within the level area (blue grid) would cause the terrain/ground to be uneven. There was a height difference, meaning some areas of the level were higher than others and this was sort of noticeable in-game because in those areas the map's grid would go into the terrain and come out. This would have been okay if it was at least around the small elevation pieces added into the area but it was in large portions of the level. While the elevation isn't tall, at most it's a 0 to 0.2 difference on the y-axis, the player movement does not detect elevation so it would be weird to see the player's feet go into the terrain as they move into some areas of the map. 

Terrain not flat, some areas slightly goes above the map grid 

The solution I had for this problem was done in two parts. First, in blender, I used a very low ratio of the decimate tool so the poly level was flattened as much as possible, and then I resculpted the terrain using blender's modeling tools to flatten it further by smoothening the vertices, this also meant the height added into the level would be shortened considerably. The picture below shows that the mounds with the mountains are much smaller and shorter.

Solution in blender

Then finally, in Unity, I moved the terrain down by -0.08 on the y-axis so most of the elevation would be below the map grid and I used the assets to hide the grid lines that go into any uneven terrain. This meant shifting a lot of assets around and adding more unmovable tiles into my level. Regardless since the camera is from a slight top-down perspective the slight de-elevation of the terrain from the map grid might not even be too noticeable. In the end, I feel like my level is a lot more natural with the height added and a rework of the level's assets. I'm proud of what it came to be and it feels like my hard work paid off. 

Most current version

With this, both the "As a level designer, I need to populate my level with current assets to get the tone of the level established." card and the "As a level designer, I need to create clear boundaries for the player to restrict going off path" card are verified and completed. My remaining cards are "As a level designer, I need to set up the lighting of the level so the atmosphere of the level matches the theme." and "As a level designer, I need to playtest my level to check for discrepancies so the level flows smoothly." I'm currently in-progress with the card about lighting and the latter card is more of a continuous card that goes beyond just 1 sprint. So overall, I feel like I got a lot done this sprint. And now that all our levels are moved into the main Unity project, we'll be able to add assets as they are added into the project and keep up with the rest of the team. I can't wait to fully furnish my level with enemies and player characters so that the level is playable and has clear objectives. Until the next one, cheers!



 



Wednesday, September 23, 2020

Parasitic Sprint 2 Blog Post

Parasitic Level Design Post#2

The second sprint was focused on transitioning from conception to proofing, meaning we would be moving from designing to implementation. The cards assigned to me this sprint are: 

  • "As a level designer, I need to make an asset list full of possible assets needed to fill my level with purpose and theme for the shrubbery-filled meadow level."
  • "As a level designer, I need to annotate an open-spaced basic introductory level that puts my newly found skills to work in a stress free environment." 
  • "As a level designer, I need to block out an open-spaced basic introductory level that puts my newly found skills to work in a stress free environment"
  • "As a level designer, I need to populate my level with current assets to get the tone of the level established."
There was also the "As a level designer, I need to create a testing ground where we can test the most up to date mechanics" from Sprint 1 that was assigned but wasn't moved. Luckily, we finished it pretty early on for this sprint since this card just entails the Unity collab we would need to set up to implement and test our levels with.

The first Sprint 2 card I work on was the asset list card. I decided to do this first so I would know what assets I'll need in my level. This would also help me annotate my level's map since I'd know what all the core assets would be. There weren't any problems with this card, but there was a bit of feedback about one asset, which is the elevation/terrain asset; instead of requesting this as an asset, it would be better to use the terrain editor in Unity to make elevation instead. 

The next card I worked on was the annotated map. We had been working on several versions of a map for our levels since the last sprint so for this sprint, it was time to fully polish up an annotated map and use it as a building guide for when blocking out our levels. I did encounter some problems with this card, mostly due to the size of the map in that it might be too big and how the level should play out.


The problem with this map was that it was still too large and that there shouldn't be multiple exits. After taking this into consideration, I went back into Photoshop to resize the grid and repaint the paths. 


This is the final approved version of my map. And the next step would be blocking it out in Unity.

Blocking took a while and this is because of 1) the size of my map and 2) I would need to check off the unmovable spaces individually. I had to go at a slower pace to avoid eye strain since I would need constantly to zoom in and out while also looking back and forth between the Unity scene and annotated map. 


After this was done, I could move on to actually blocking out the scene. And similarly, it took a while too since this wasn't just a choice between green and red dots but adding in different primitives as a way to keep track of what would be a tree and what was a rock. Luckily, I only needed to add six different kinds: cylinders for trees, squares for rocks, squashed cylinders for crates and barrels, spheres for buff spots, tilted squares for treasure, and of course, a capsule for the player. 


Midway through this card, there was still time left in the sprint so we were also assigned the asset implementation card. However, I didn't get to finish this card before Sprint 2 ended so this is the card I have in progress for now and for the beginning of Sprint 3. I have the level mostly populated, the only thing left is terrain building and pathing. 




For Sprint 3, I'll be finishing up the terrain and finally playtesting the level. I'm pretty satisified with the current state of my level and can't wait to see how everyone else's levels turn out. Cheers!





Tuesday, September 1, 2020

Parasitic Sprint 1 Blog Post

Parasitic Level Design Post#1

The first sprints are usually, always focused on building the foundations of the game. As a level designer that would mean research, concept-ing, and collaborating with the team. The cards assigned to me or rather our fraction of level designers are: 

  • "As a member of Parasitic Studios, I need a Unity account" 
  • "As a level designer, I need to create a testing ground where we can test the most up to date mechanics" 
  • "As a level designer, I need to research and annotate grid-based levels similar to that of XCOM 2" 



The cards that are completed are "As a member of Parasitic Studios, I need a Unity account" and "As a level designer, I need to research and annotate grid-based levels similar to that of XCOM 2". The first being the easiest since a Unity account is required in most CAGD classes. The next one was heavily concept-ing and researched. Collaboration was also a big part of this card as our level designers discussed and shared examples and guides of what strategy levels should feel like, how the grid-based levels would look like, and why certain concept levels work and others do not.


The one card that is still "In Progress" is the "As a level designer, I need to create a testing ground where we can test the most up to date mechanics". This card relied on components from other cards such as a collaborative Unity file where we could set up a testing ground and the grid-based systems and other scripts that our programmers were working on. Thus for this sprint, we focused more on concept-ing and making concept, grid maps of our level. 


Problems Encountered: 

There weren't any big problems aside from being blocked from working on the testing grounds. Problems in this sprint were mainly from developing my level's concept map. My first map was obviously a bit small and very linear. It was a basic block out of the level's terrain and it didn't include any of the enemies or any clear indication where the player would start. 



So to fix these issues my next map was more colorized and larger. This concept piece showed a larger level with more terrain and the enemies/player placements. However, the problem with this level is that it's not a grid, the shapes are hexagons and not squares. The level itself is still too linear and for a level that should that 20 minutes or so to complete this concept still falls short. 


The third concept map I made used pixels instead of hexagons. It's also considerably longer and larger. There are many more enemies and it's definitely less linear. The level starts on one path but splits into three different routes before leading the player into a larger field for a all-out brawl. But the downside of this level is that it's too large and there are way too many enemies, especially that last area which would overwhelm the player too much. Another concern was the fact that the design document described the first level as an open meadow and my map was more like a closed forest. 



My most recent map and final one of this sprint is designed to be more open and meadow-like. The path (yellow-ish) tiles show the player the intended routes but the openness of the level encourages exploration. There are fewer enemies and the length of the level looks good enough to last 20 or so minutes. The only problem with this level would be that it's not fleshed out enough and rather messy. I hope to fully realize this level when we get our testing ground set up and start building the level in Unity so I can test the level for accuracy of length and challenge.