Where do I even begin?
I guess it all started one fateful day many years ago when I got a call from my cousin on our home phone (too young to have a cell phone then). He was raving about this game where we could both play and see each other, even though we weren’t in the same room, and the best part was…it was free! This gem of a game was none other than Club Penguin. We became obsessed playing almost everyday whenever we could. As the years went by, we delved into even more of these types of games, which we eventually learned were dubbed Massively Multiplayer Online games (MMOs) such as Free Realms (rip), Aura Kingdom, Dragon Nest, Black Desert Online and so many others. In between our time spent playing MMOs, I delved into single player games on my own. Got my own console (Xbox 360 at the time) and eventually got my own personal laptop. I had discovered a world I knew I wanted to be a part of for the rest of my life, and it all started with that phone call.
Games are actually what originally made me interested in programming and computer science. I became curious as to how they were made, and through researching all of the roles it was the programmers that stuck out to me. It felt as if they were the ones who would be breathe life into a game and make it…function. It’s funny, I actually wrote about this story in my Stanford application, and I remember when I got my letter from my admissions officer, she talked about how she was hoping I would be able to pursue game design and development during my time here. Unfortunately, I found classes centered around game design few and far between, so instead I just kept to the core CS classes to bide my time. Which finally leads us here, CS247G: Design for Play!
While I came into this class with the knowledge of a gamer, I had no real knowledge on game design. The things I thought I knew were quickly proven not entirely correct, and of course there were countless things I had no idea game designers even thought about. I think this was first made clear in week 2 when we learned about the different types of fun there was. What is fun? A question I never really thought about on such a deep level, but one I thought I had the answer to regardless. After all when I played games I either had fun or I didn’t right? Learning about the different types of fun served as an eye opener for me, that this class would not only teach me new things, but also reframe what I thought I already knew.
Every assignment had its purpose, but I think my favorites, besides the critical plays, were the sketchnotes/mindmaps on GDC videos. Hearing people in the industry talk about one or two elements that can be found in games, but expanding on it was a joy, for example, the talk by George Fan for the onboarding in Plants vs. Zombies assignment. I don’t know exactly how I thought developers designed tutorials for new players, but I definitely didn’t think that much thought went into it, I figured there were more important things for them to worry about. After watching that talk though I cannot believe how wrong I was. The onboarding experience is the first impression for many players. Everytime you introduce a new game mechanic, it’s how you introduce it that will really stick with the player as they’re playing the game. When it came to P2, we tried to incorporate some of the different methods shown here. Like weaving the tutorial into the narrative with a secondary character, having tutorial displays stay static on the screen where they are relevant, and giving hints to a certain puzzle in the case the player fails it too many times to save some frustration.
Speaking of P2 this is definitely where I was met with a lot of challenges. Since my team and I decided to create a digital game we went with Unity for our game engine which was great because I always wanted to make a video game and now I had the chance to. And while I had some experience with Unity from previous classes, it was not at the level needed for the game we wanted to make. This meant looking up a lot of tutorials and going through a lot of debugging. And while frustrating at times, I genuinely didn’t want to stop once I got started on some component. This taught me something new about myself, I was having fun making this game for P2. It never felt like work or an assignment, it was just fun to sit and do for a while.
And that, I think, is the biggest takeaway from this class for me. When I complete any other CS assignment it feels good, the feeling is truly indescribable. But it’s the completed work that gives me that feeling, not the process of actually coding the assignment, that is more frustration than good feelings. While working on P2, I felt that good feeling times 1000, and what’s more is I felt it the entire time I was developing, not just while reveling in the final slice. You know when people say you should find a career that you can actually enjoy pursuing? This class showed me how very possible it is for the game industry to be that for me.
This Summer I think I’ll try my hand at a MVP, I really want to make a game from start to finish even if not all that polished, or at the very least participate in a few Game Jams! With the experience I gained from P2, I think I can do even better next time. Truly this class has become my absolute favorite class I’ve taken here at Stanford and for that I want to thank Christina, Jean, all the other amazing TAs, and of course Nina!!! Hope to see you next year in CS377G!