CAGD 370 Video Game Development

Cat-astrophe: Final Sprint




This final sprint was the shorter one of them all, and I felt like not much was done during this sprint for the same reason. I also was the one who did less during this sprint, since more of the important matters were made by my teammates (they were the real MVPs of this sprint).

This sprint was focused mostly on polishing the last-minute details of the prototype and making sure that everything was working properly, as well as making sure that the game was able to be played on any device. We also were focusing on the levels itself, making sure that they had all the elements implemented and that the game was fun to play.

Needless to say, this sprint was the one with the least number of points. In all these points we focus on: fixing the audio, redesigning level 2, adding a key to show the tutorial, adding a tutorial with the description of all the important elements, adding a way to remove the cone of shame, grace period for getting the cone of shame, changing the placement of the UI, and fixing last minute bugs.

The Sprint Kickoff was harder to make. Most of the points that we had were added in the new sprint because of what we were needing to fix and solved before the last play test. For this, the points that we currently had were almost useless at this point, so we added more.


Work Completed:
Like I said before, I was the one who did less during this sprint. Time was short and the amount of work that I was able to do (because of the time and available work) was limited. 

My teammates were fixing different issues that were found about code that they made and knew the solution for them, and I was mostly useless to solve those problems. To prevent making more bugs or becoming a burden, I decided to focus on simpler things and help my group from time to time. 


One of the things that I focused on was the creation of the tutorial image. This was to make it more easy for the player to understand the game. I made a simple image with some screenshots of items and dangers that were important, along with a little description of their function and what can be used for (or can do against the player). This was really easy and fun to make. The process was something fun to come up with. Having images to give more visual information to the players was something I am proud of and thought it worked well. This image was also use for Mariely’s toggle information card. 

Another thing that I did was, which at the end where discarded, was the permanent UI for the controls and some fixes on level 2. They were done before they were discarded.

For the permanent UI, I just deleted the code that got rid of it, as well as making it really simple so it would not disturb the player at all. This was change because we ended up deciding on the toggle information key to compensate for the lack of information, since the players where still getting confuse. Instead, we leave a text where it says the key to be sent to the tutorial image in its place. 

As for the level 2 fixes, it was mostly changing objects from places that were causing issues (like a bug we found with some of the scratchable objects). This was change because some playtesters felt like the level was too easy and did not present a challenge at all. Although the main appearance of the level is still the same, Justin decided to make a few changes in the position of the objects as well as the range of the cameras to make it more difficult for the player to destroy things and create dilemmas for them.


Incomplete Work:
The work incomplete was mainly art related. At first, we wanted to make models of different objects to make it more pretty or visually pleasant to look at. We also wanted to create our own images for the screen and UI, but decided to opt out of it because of the lack of time. We had them on the backlog, but some of them were only move to assigned. Aside from that, we are still happy with the results of what we had.

Final Thoughts:
This class was really fun to be in. At first I had some difficulties because of the agile development concept, but got use to it pretty quickly. I also got some difficulties by being the lead, since I thought I did not do such good job with managing my team. I am really thankful to my teammates for being understanding and great workers during the semester.

I enjoy this class and I hope to put on use all the new skills that I learned from it.


Cat-astrophe: Sprint 4

For this sprint the process was a little bit different than other sprints. Because of the bugs that we where able to find on different playtest (some of which were really specific to recreate), we decided to concentrate the whole sprint into fixing those bugs to prepare for the playtest. This was time consuming on itself since we fixed some bugs and others appeared.

This sprint was better than the last one. GitHub was not deleting things this time and was working properly, which was a huge help for me to be able to get more things done. We hope that this problem does not happen again to keep on doing a steady job.

Now that we have being working with the point system for Trello, things are getting better to understand. I still struggle a little to assign points according to the amount of work is required, but I am getting better at calculating time for each task to be assigned. I hope to get even better in the future, almost to a flawless point.

The Sprint Kickoff was really straightforward for us this time. Due to all the bugs, we found during personal playtests, we decided to focus on fixing all those bugs before adding anything more that we wanted to the game. Some were easy to solve, while others needed it the whole system to be redone (like the pickup system). It was interesting to see all the specific bugs that game breakers (A.K.A. friends and family) were able to find and were not even thought of by us.

 

Work Completed:

Before anything, I decided to make a few gameplay test to find bugs. I asked friends and my boyfriend to try to break the game as much as possible for this. They did not disappointed and found bugs that could be game breakers if not solve. They were really specific or were not noticeable while verifying progress, so it was interesting to see how much I need to try to break the game before verifying anything. This also had the task to add more cards to Trello, since a lot of new things to be fixed where added.

The next thing I decided to do was the basic tutorial system. This was really similar in how it the objective system works, so it was pretty straightforward. Although I would have to redo this system on sprint 5, since people were confuse when it vanished and think it would be better if it was permanent. I also need to find a way to make it more obvious and also to communicate better with the player what the objective of each object is. This would take a while so I may do all of this during the Thanksgiving break.

The third thing that I did was to fixed the mouse manager for the pause, menu, game over, leader board screens. At first I did not know how the cursor manager works, since Justin was the one who did it. But thanks to his explanation, it was pretty easy to fixed and was quick to see how to add each thing to the different screens.  I really enjoyed this task because it allowed me to see in more detail (code wise) the work of one of my teammates.

And lastly, I decided to fixed the cat-tree. Some players were having some troubles climbing it, so I decided to redo it from scratch. This was a very easy thing to do.

 

 

Incomplete Work:

Surprisingly enough, this sprint I was able to finish all my points. Most of the cards were more easy to fixed or to implement since I already knew how things worked and was more straightforward on how to solve them. Some things took time on how to figure it out, but overall I was happy with my work on this sprint. I was able to compensate my last sprint.

 

Currently Work:

This sprint I will focus on a new objective system that is more clear, as well as trying to look for more bugs to fixed and help my programmer with their workload. 

Cat-astrophe: Sprint 3

For this sprint the process was really similar as Sprint 2 when it came to assign cards. Although, the difference was mostly on the point base system that we are going to use now. It was a little bit hard for me to know which cards would be a 1, 3 or 7 points, and how to create the statistics for it to see if we had a good velocity or not. For me, it is still hard to adjust to it and I am not 100% sure I’m doing it right. In the future, I hope I can get it right and see if it came more easy for me to develop this statistic, or learn if I’m doing it right and how to read them.

This was a terrible sprint for my work. Most of the issues and problems came directly from GitHub this time. Progress was deleted out of nowhere from my branch, scripts seem to get corrupted and things where changed as how they once were without any of us doing anything. We were not able to solve the problem completely, but decided to make some packages just in case to try to not loose too much progress. This made us go down on productivity, but we still hope to try and catch up with the time lost. 

Other than GitHub doing weird things to our project, we did not find any other problems aside from adjusting to the new point system and trying to make more cards to keep doing for the rest of the sprints. I think my team is doing a great job adjusting and keeping with the new working pace that we need to implement. 

The Sprint Kickoff was a little weird for us. Almost all of our cards where gone when assigning this sprint. Our backlog was almost empty and the new point systems was a little hard to adjust to. Even we all this problems, we were able to adjust to the point system and I was able to add more cards so the backlog did not look so empty (although most of those cards are wishes than needed cards).

Work Completed:


For the first thing I finished, it was the Trello board. Like I said before, our backlog was looking really empty after assigning cards for this new sprint. I dedicated a few hours to try to come up with ideas of new cards and see if some cards needed adjustments with the new point system. I also dedicated time to assign points to each card, trying to figure out how long would it take to someone finished it.


For the second thing I finished, it was helping my level designer hook the objective system into level 1. Because I was the one who made this system, it was more easy for me to implement it onto level 1. I also helped with the dog, since I also made this enemy and it could be a little confusing on how to configure it.

For my third task completed, it was the level 2 environment. By environment I mean to put every object on its place, configuring the enemies and player on the level, creating new threats for the player, and making sure that every place would be reachable to the player. This took longer than anticipated since GitHub was deleting things or making the level go back to its block-out form. We were not able to figure out why it was doing that, but I was still able to finished it, although it prevent me from progressing much since I had to go back to it multiple times.

Incomplete Work:

For work assigned in this sprint that I did not finished, was the UI for the player controls as well as the interaction with the owner. I am planning to finished them this sprint, as well as starting new cards.

Currently Work:

I’m currently working on the UI for the player controls.



Cat-astrophe: Sprint 2

For this sprint the process was really similar. It became a little easier to do since we had a better idea of what we had to do this time. The kickoff was smoother and new cards were added on this kickoff. A lot of wants that were level as a minor priority were able to be added as a main feature for the game.

For this sprint I had more issues and problems with time management due to other classes and personal life problems. My main solution was to try to power through it mostly.

As for the game problems:

One of the problems that I ran into right away was mostly on coding. Specifically talking about the dog enemy movement and punishment. For the dog, it is going to follow the player when getting close enough to be detected by the dog, who is going to follow the player until getting far away to forget about you or until he catches you. When he catches you, you would be put on “Time Out”, which is just a punishment that traps you on a box for a few seconds.

The first problem with this process was the movement of the dog. The dog was moving backwards at first (tail going towards the player). I did not know what was causing these problems. I tried to change the code for directions, but it did not work and at some point, the dog was being repelled by the player. To fix this problem, I decided to just change the back of the dog for the front of the dog, which solved the whole problem.

Another problem that I faced was the count timing for the punishment time out. When put in the box, the timing was being calculated but not shown on the screen. The bar calculating the time remaining to be free was not moving down, even if in the Inspector the time was going down normally. This took the longest of time, since there was no solution online that could solve this problem. Talking with my main programmer Justin, he was able to come up with a minor code to make it work, and that was the solution for it.

The last problem that I faced was with the detection of the dog catching you. When the dog touched the cat, it did not transport the player to the box, which defeated the purpose of the dog. It was a really easy problem to solve, which was resolved by just making the dog’s collider bigger to make sure that it was touching the player.

 

Work completed:

The first thing that I finished was the annotated map for level two, which would be a kitchen. It was fun to make and think of new ideas that could be differentiate from the first level. This did not take much time to make, but it took time to think about what features this level would have that would be different than the first level. 






The second thing completed was the map out of the annotated map. This was also easy to do, which is interesting to see where the new problems/obstacles would be located around the level, and making sure that it is accessible for the player.


At last, the third thing that I completed was the dog enemy. This took the longest to complete because most of the problems came from this process. I was able to make a enemy that was able to detect the player with triggers and follow the movement (by mirroring) the player. When the player gets far away from that trigger, the dog stops following the player.

Another thing that was added to this enemy was the punishment for being caught. When caught, the player would be transported to a box and would not be able to move until a certain time has passed, making it more difficult for the player to be able to destroy things before the time runs out. When the dog catches the cat, the dog goes back to the starting point, to give the player a better chance to not be caught back right again.

 

The work that was assigned but not completed were some of the Sprint 1 cards that I still had. This was mostly because those cards lose importance on Sprint 2. Another one was the interactions between the player with the owner, which may be added on latter sprints, since we are focusing mostly on finishing level 1.

Right now, I am working on the new environment for level two, which is adding the new dangers of that level to make it feel more like a different level than level 1.

 

 Cat-astrophe: Sprint 1

When I first presented this game, I wasn’t sure if I would be able to bring it to fruition. I was nervous to think that it may not be a good enough idea to make it to a game. But people thought it was a good idea, so it gave me the courage to keep on pursuing it. Although the way of choosing my game wasn’t the most normal (we were deciding between two games and decided to throw a coin to see which would be chosen), my teammates and I embrace the idea of my game fully and keep having new ideas to improving it every time we meet each other. As a group, we haven’t had many problems or difficulties in agreeing with each other’s ideas. The only problem as a team is more technical with GitHub or Unity and having to work in different devices. As a team, they are great workers, and I could not wish to have a better team.

But I had struggles and problems working alone. Due to the game leaning heavily on code, we decided that the lead and level designer would help with coding to not leave too much work to the coder. Now, I must admit that code is my weakest point in game development and most of my problems originate from it. I have problems understanding code without a simple explanation of how it works, so I get confused and lost easily. This has been a challenge when trying to come up with a coder for a certain action or looking for a code online that could help me with this. I have received help from my teammates on this issue, so I was able to overcome it without delaying the sprint.

The Sprint 1 kickoff was weird for me. As the lead, is my first time doing this so I was not sure how long cards would take to complete or how to calculate estimated times to be able to be assigned cards to all my team. As time passed and saw how fast my teammates worked, I was able to estimate a little bit more how long certain tasks would take and how much work each of them need it. I am still having trouble calculating this, but I hope in the future I will pick up the pace and be better at it for my team.

Now to what I have completed this far. As the lead, I do not know if I should add the creation of our Trello page, as well as the organization for it and verification of each of my teammates’ cards. Leaving those to the side, my work was mainly on simple coding and some manual work:


1. Goal system – I decided to make the goal system notification, to let the player know what they need to do in the game. This was a simple code, but I had to look for tutorials on how to make it. Currently, is working good and does not have any problems.










2. Paper Prototype – Using Mariely’s base map, I made the paper prototype to be played by different people in our classroom. I decided to make it as a 2D map, since is made out for carboard. It was really simple prototype, but people seem to like it and enjoy playing with it.







3. Mini tutorial system - I also decided to make a mini tutorial system that consists of telling the player what key/button to use to interact with objects or to do certain actions. This was also a code that I searched for. Is also a really simple code that’s easy to understand.








4. Meow/Purr actions – As a team, we thought it would be a good idea to make the cat more alive, and for this reason we decided to add a meowing action to communicate with the owner of the cat… or just to be obnoxious. This was mainly a code that I came up with. I had troubles with it because it wasn’t working properly at first, but Justin helped me fixed it and now it works perfectly.








But there was work that was assigned, but not finished. In my case, some of these works where: Attacking Actions, Interactions with Owner. Although they may seem simple, the work was delayed due to external circumstances that prevented me working on them. In this next sprint, I hope that I can finish these stories without affecting my work for Sprint 2.

Meanwhile, I am working on creating new cards for the upcoming sprints. Because we have been working really fast, the number of stories that I created at the beginning of this project was not enough, so we are discussing what other features do we want to add as needs, wants, and wishes. This also collides with my work that has not being done on the last sprint.

In the future, I hope I can learn more on how to manage a team and be a good lead for my teammates. I am still learning what to do and how to do it, so I feel like I let down my team most of the time. But they are a great group and works with me to get the best results that we can.





No comments:

Post a Comment

Note: Only a member of this blog may post a comment.

Blog purpose This blog is to keep track of the  works that have done on my different classes in Chico State University.