Postmortem
As the final sprint is here,
this is a post mortem of the whole process of the development process within
370. A lot of things went right and a lot of things went wrong. Starting from
the beginning, my team and I came to the decision to make my game, Skate and
Scoot and for that reason I was the designer. I think we started off good and
strong with making and working on the paper prototype. Another thing that went
well was the AGILE Development pipeline. This pipeline helped me with
organization and a glimpse into how the work within the industry takes place.
The first things we started on regarding if the game is fun and to test out
different mechanics we came up with for our digital prototype. This eventually
evolved into the rule sheet and what little things are present within our game.
One worry was that there would be no one to one with the paper prototype and
the digital but we found out that there are certain things that could still be
tested while on paper such as movement and more importantly, an early grinding.
So we focused on the main things we wanted to test and structured our sprint 1
around this.
Within the fourth sprint, a lot of things went right
and one big thing went wrong. For the things that went right, a lot of
additions and fixes and refinements were made in this sprint. Things such as a
pedaling movement, a better grinding system, enemy and enemy combat, etc. This
sprint was one where a lot of core mechanics got done. One thing that went
wrong was that some of these things didn’t get finished in time for the
playtest so a lot of them weren’t tested out by the playtesters, rather within ourselves.
Another thing that went wrong that I can do better next time is to have a
better made level to test out certain mechanics. While the mechanics were
tested, the map could have been made better to accommodate the players. Certain
things like the large map nature of it really made us go back to the drawing
board for how to approach the level.
This led to
the making of the board game. We decided to make a rough game outline just to
see how the players are going to traverse the level and how they might approach
the grinding as well. During this, Veronica was starting on the digital
prototype by getting a moving character within the game. This was all going
well. The playtest yielded more results and information that we could apply to
our digital prototype with certain foundations such as grinding.
In the second sprint, things still went pretty well
with some things that went wrong. With kickoff and having some things already
done digitally from the last sprint, we were in a good place to start. The main
focus was the grind mechanic for me. I decided to go with the method of having
a bunch of points that the player just moves towards when they hit a trigger. I
also had the idea to implement a quicktime event within the game.
One thing that went wrong in this sprint would be the
development organization of our game. Using github, we made forks that didn’t
pull from dev and that made it so a lot of our things were not connected
properly and weren’t up to date in some branches. This was thankfully resolved
but it was one hiccup that came up during development.
Moving on to the third sprint, most things went well
but there were some things that went wrong, mostly in the playtest. We
focufeefsed on the kinesthetic prototype and this involved me working on
various different items. One thing that went wrong this sprint was that even
though we did a fair amount of playtesting, there were some things that went
under our radar and didn’t work during the playtest. More specifically, my
quicktimes weren’t working and wouldn’t reset. One other thing that needed work
was our burndown chart and where we were at with setting up the numbers and
such. I think next time, we would playtest even more and try to get on top of
the burndown chart early.
Onto sprint 5, thankfully, a lot of things went right in this sprint. Some things that did go wrong are the wishes being cut and the quicktime system being cut. However, the things that went right I feel overshadowed the things that went wrong as we had a very good pedaling system, a good combat system, a good grinding system, UI, and many more things. This was a satisfying place for the team and I to stop and and say that we actually did make something cool.
Coming out
of it, If I learned anything, its that I personally need to take more time to
flesh out things within development and always be in some sort of communication
with the team. Even though our communication was good, there were points where
there was no talking and that would not happen the next time.
Sprint 4
For the
fourth sprint, the main goal was to have some sort of a system prototype with
various components of our game working in tandem with each other. This now
meant that our prototype needed to have movement refined a little more along
with different aspects of our game such as level and enemies in a better
condition than before. So, my team and I worked on having a more cleaned and
polished movement, UI, grind rail, level, and enemies
I worked
on implementing a new system for the rail grind as it wasn’t as smooth or as
functional as we wanted it to be. I did some research and looked into the
Spline package that’s in the Unity Package manager. This allowed me to make a
new rail system that is developer friendly as well as engaging for the player
to encounter in the level. This new system was miles better than the old one
with how it plays in game as you are not arbitrarily moving along some
predetermined points within the game but instead have geometry that you’re
stuck to and actually grinding on. It also allowed me to make the rail grind a
tool for my partners to make. They can also go in and add rails where they see
fit.
Another
aspect of the game I worked on was the main level. I made the decision that
maybe we should switch to a tutorial screen with the info rather than having
the tutorial embedded within the level. So, I made the first scene to hold the
information that people would need to know about the game and then moved on to
the main level. I wanted to give the feeling of being in a large highschool
that has different paths that people can go on with the main level. After
playtesting, we saw that players actually didn’t like the large aspect of the
level and preferred having a smaller level. This aspect will be discussed again
with my team as we made changes on our movement, especially its speed, so to
counteract that we need to figure out how big to make the level.
As I was
working on the grind rail, I also needed to connect our new movement we created
with the grind rail and detect when were skating or not. This wasn’t so hard
but took talking with Connor and Veronica as they worked on the movement
scripts. One issue that arose was that our character would sink into the rail.
We then figured out the different rigid body attributes were changed and that
makes the character sink. I then fixed the problem and the rail grind worked. I
also made the rail jump equal to the spacebar and not to mess with the regular
jumping.
On playtest day, it was really helpful to know what specific components needed to be ironed out even further. Unfortunately, the playtest didn’t involve the new movement but we will be holding our own playtests for the new movement with other students before the final playtest. The playtest still helped us figure out what specific things needed ironing out such as enemy strafing, map size, level design, and other things that we will implement. Thankfully, A lot of these things are changes that we can add and the state of our game looks like it is in a very healthy state. Its in a place where now were adding the final finishing touches on stuff so that we can playtest earlier to get a sense of what absolutely final things we may need to fix and add on.
Sprint 3
For the third sprint, one of the main goals we had to accomplish was getting a kinesthetic prototype working. This just meant that we needed to have a prototype to test out the movement mechanic we have and how it works in tandem with our camera. With some of the core systems worked on in sprint 2, we had to work a little more to get some of our basics done in time for the prototype. Some of the things we wanted to have for the prototype and subsequent playtest was movement, UI, grind rail, a basic level, enemies, doors, death, and QuickTime events. These aspects make up the core of the game so getting them ready was the main goal for our sprint.
I focused on the grind rail, UI,
doors, and QuickTime events. I added on to the original grind rail I had that I
made during sprint 2 and worked on getting a better QuickTime event working for
the player in order for the player to stay on the rail. This involved a countdown
using UI elements to have the player essentially have about 10 seconds to be
able to hit Q to stay on. Next, I implemented a very basic door system. This
just consisted of a collider and a button that once pushed, made the door disappear.
I also implemented multiple grind rails in my test level to even see if the method
I made can handle multiple grind rails. Thankfully, after adjusting a little
bit of code, it did work with multiple different rails throughout the level.
One thing we had to work on for our
organization and backend was a Burndown chart. This chart was a visual tool to
show us and other people how far along our project is and to project the future
scope for our project. It uses math and calculates a line graph detailing how your
current progress is going and how the future progress might look like, depending
on the current progress. I made the burndown chart as I had experience with
making excel charts in the past and I could customize and automate it so any of
my partners could go in there and edit and the chart and it would automatically
update and calculate based on the numbers added or taken away.
I also worked on the actual
tutorial level for the playtest in order for players to get the system one by
one and know how to play the game gradually rather than give all the
information all at once. This meant that we worked together to figure out what’s
the best way for information to be presented to the player and how the level
should start out. We decided that having text on screen and long hallways are actually a good idea for the tutorial
level because the player really doesn’t know anything so to have these large
patches for players to experiment and figure out stuff was crucial. We essentially
led them from a long hallway with the basics of movement to the actual level in
which we had enemies and parkour for the player to engage in. After doing the
parkour, the player is then introduced to the first grind rail and the rest of
the level is an extension of our aspects.
In our playtest, we found that players found our game to be easy but also fun. They found the parkour of the level to not really fit the skateboard theme but could see where we were going with the idea. Some of the controls were sensitive and needed to be adjusted. Players wanted a little bit of a better checkpoint system. The quick time event system was intriguing to play testers but they asked for improvements.
Sprint 2
For the second sprint, we had to focus on working
on our digital prototype and make our core aspects of our game. Thankfully, we
started some aspects of our digital prototype during sprint 1. One main aspect
would be the movement for our prototype. This meant we did not need to start
from scratch or spend as much time on movement as it would have hindered development
time, we could get started on other things almost right away. This involved working
with my team to break down our backlog and determine what are the core things
we need to have done within this sprint. After breaking down our backlog and
seeing what the main components are, we got started.
My main job this sprint was
to work on the grind mechanic for the game. This involved figuring out
different ways to approach the aspect of grinding. As this was a prototype, we
needed to show off the mechanic without putting all the bells and whistles on
it yet. This meant getting a pretty good interpretation for the grind mechanic.
I figured there were two different ways for us to approach the mechanic. One involved
setting up a lot of points on the rail and the player just moving from point to
point. The other method would involve making hit boxes on the rails and have
the player constantly checking the hitbox and going along it. I wanted to
implement a QuickTime event also so the method that I went with also needed to
work in tandem with the QuickTime event to stay on and to switch rails.
I decided to work on the first method with all the points as I saw that as the easier path to take. I approached this after doing some research about the TransformTowards command within unity. This allowed me to make a simple script where when a trigger is hit, the player starts moving toward empty game objects within the game. I then attached these points onto the rails present within the game. This allowed the player to “grind” the rail by moving along the rail.
A big problem arose when we came into class one time and found out that our unity file was disorganized and messed up. In our unity file, we have the main branch, followed by our dev branch. Through our dev branch, we create different subbranches to work on our individual pieces of code and implement the things we need to work on. After that, we then push our work onto the dev which means dev would hold all the current work we all have. However, when we came in on a Thursday, we noticed some of our branches were disorganized. Some branches were a piece of main and one of our groupmates worked on the dev branch itself.
It was a good thing we caught this early in the sprint as this would have
presented a large issue later as a lot of our work would have been lost all
over the place. I initially lost my first update and work that I did for the
point method regarding the grinding. Thankfully, it did not take me too long to
remake the work and move on to the next thing.
After remaking where I was, I had to clean up and make the actual grinding for the grind rail cleaner and make it seem like the player jumped onto the grind rail. I wanted to add on more but I had a lot of other homework and projects with other classes and couldn’t get around to add on a lot more with it.
Sprint 1
This semester, for the class of 370,
I am the designer of the game Skate and Scoot. For sprint 1, I was in charge of
essentially creating the documentation, ideas, checking other peoples work,
collaborating, and so on and so forth. A lot of my work during this sprint was more
focused on documentation and working on the paper prototype.
I first came up with and pitched the idea for Skate and Scoot before the sprint kickoff. After forming a group, we brainstormed a lot on what the game needs to have and what should look like at the end. It was my job to be at the forefront of these discussions and pitch many of ideas that will or won’t be in the game. This was done under the umbrella of a development process known as AGILE Development. This was a new development style that I hadn’t engaged in regarding game development, but I was sort of familiar with using the Trello board and the idea of designating tasks.
We then started on the paper prototype as that was the big objective/ mark of sprint one being completed. This was where I collaborated a lot with my producer, Conner, on what the paper prototype needs so that we can see if the game is fun and to test out different mechanics we came up with for our digital prototype. We decided that we should get started with the rule sheet first and have a basic idea on how to approach this. We would meet up in calls outside of class to first make a skeleton of the rule sheet with different aspects that would make up the paper prototype. After we got a rough sketch, we then clarified and cleaned up a lot of our rule sheet so that there were clear rules and procedures.
However, while we were making the
rule sheet, we realized a lot of different mechanics and rules and things that
happen in the game don’t translate very well over to the paper prototype. This
caused an issue in that we had to essentially rethink our rule sheet and the actual
parts that we want to test and get feedback on. Instead of making the whole
game in a disorganized paper prototype, we instead focused on the main foundations
to test out, which were grinding, combat, the actual platforming, puzzle solving,
and score. Now with these limits, we could make a paper prototype that tests
these things that can be transferred into the digital prototype rather than
making two separate and distinct games.
With this new foundation, we
started to also work on the game boards of our game. Conner and I both worked
together as the level designer to figure out how we would want to approach the levels
and islands within the game. We would make a rough outline on how the level
should look and I would go into Photoshop and work on making the gameboard itself.
I would reconvene with Conner to discuss and break down the level if we needed to
get the best possible level and its corresponding spaces.
All while working on this, I as the
designer had to sign things off and I was doing that regarding the digital
prototype that Veronica was working on. She needed to verify the movement mechanic
she created, and I signed off because it was a great starting point for us to
build upon.
After a quick playtest with Conner,
we went into the public playtest with other students. This playtest was very helpful
as it helped us see how players felt regarding these main foundations of our game.
If the grinding or the traversing sucked, then this would reflect on our digital
prototype that the way we are approaching this method sucks, regardless of the
difference between paper and digital. This also allowed us after to see how we
can actually transfer and transform the things we learned from the playtest and
its mechanics to the digital prototype.
No comments:
Post a Comment