dev diary #5

This project got off to an interesting start. Both of my groupmates were from Erin’s section, so I knew very little about them. Luckily they’re both programmers and they want me to be narrative designer, which means I can finally flex my writing muscles!

I’ve actually been meeting a lot of new people thanks to this prompt’s emphasis no narrative. Four other classmates serving as first-time narrative designers for other teams have already already seeked me out for advice fulfilling the position, so I feel good about my skillset specialty finally entering the program purview. On the other hand, at this early stage I’m the bottleneck because the programmers are forced to follow my pace. I had to nail down the plot/storyline/puzzles before they could implement them, and I probably cut it too close by only finishing that up Thursday night. That’s mostly why we didn’t have a Unity prototype to showcase for today’s playtest, but I’m glad the paper prototype I designed last night made up for it; the audience seemed to enjoy solving our opening puzzles using the map on the whiteboard and myself GMing their progress. Always nice when my old college job as a professional GM comes back into play.

outdoor blocknig.png

The paper prototype our initial playtesters played.

It seems like every project I re-learn the same lesson about the importance of considering and incorporating feedback from other group members. When I first designed our game’s narrative, I wanted the crime to be something that wasn’t immediately recognizable as a crime, since I didn’t want the player guessing at suspects while the player character is the only person in the game. The player character was to be trapped in their apartment, which was on fire, and the twist was that he had started the fire to collect the renter’s insurance. My teammates were lukewarm to the premise, and suggested a plot influenced by (honestly, wholecloth stolen from) Memento, where the amnesiac player character followed ominous tattoos on his body hoping to discover who had killed his wife. It was confusing and contrived, and I initially wanted to just pull rank and insist we use my plot. Luckily, I had a talk with Kelsey, an alumni from last year, and she helped me realize that my teammates had valid points to make about the core elements of our plot, even if the exact narrative they suggested was unusable. My teammates were trying to convey that they didn’t find arson a particularly exciting crime, and they desired an edgier plot where the main character had more to hide. These were valid criticisms, and on the production end, incorporating their ideas gave me a chance to increase their investment in the project. In the past I’ve found that teammates work harder and feel happier about the final product if they can see the direct influence they’ve had in its creation. With this in mind, I crafted a new narrative that used murder and the themes my groupmates were looking for, but was a workable story we could actually deliver. My teammates are much happier, and it’s honestly a better storyline than the one I’d made before.

Chapter 5 talked about system dynamics, discussing how the scope of the game changes as it gets more complex. Not only do simpler games like Tic-Tac-Toe have fewer elements than larger games like Magic the Gathering, but the elements they share between each other (win condition, turns, limited playspace) can be larger in one than the other. This is extremely important to keep in mind as our timeframes and our group numbers increase, and it’s gotten me worried about the scope of our project. My original plan had a single room (the apartment that was on fire), but my teammates thought the narrative was too short and specifically requested at least three rooms. I’m worried they’re making the classic beginner’s mistake of thinking too big and dreaming up project roadmaps that are too large in scope. My usual philosophy is to assume that I’ll need to spend half of my development time on post-process bugfixing and addressing unforeseen setbacks, so I always think small. We only have three weeks total to complete this project, and having multiple rooms adds an entire dimension to the camera, inventory, and movement systems. It exponentially complicates everything we’ll need to implement. But I’ve brought up these concerns already and they insist they can finish three rooms within the timeframe. Since they know the programming side far better than I do, I guess I just have to trust them.

dev diary #4

Prompt: – Write about the week’s lecture and readings as they relate to your project 
– Write about this week’s industry guest speakers (if any)
-Write a description of your progress (both positive and negative) on your current project
– Must include at least one piece of media:
GIF, link to video, screenshot, sketch, etc.

A few days ago we got an email about a one-hour UCSC seminar on Imposter Syndrome. I was planning to attend before I tried to find the location and realized it was happening on the main campus. Bummer. But that is an issue I feel I’m struggling with at this point in the program, most of it directly stemming from the difficulty I’m having with C++ and my overall fear of programming. I know it doesn’t look great that I’ve waited three dev diaries to start admitting that I’m halfway expecting to get kicked from the program, but there’s this massive C-shaped hole in my skillset that’s negatively affecting my ability to contribute meaningfully to the duo project or to complete my assignments on time for C++.

Pretty much the only thing I’ve done for the duo project is asset creation. I’ve created over a dozen animations and four dozen sprites to populate Tyler’s vision, and as Emily pointed out when she learned this, “the program isn’t testing for that.” You want programmers and Tyler has programmed the entire game on his own. It’s also his concept; as mentioned in my last diary, I decided to withdraw my suggestions on fields and music in favor of going with Tyler’s office space and basketball mechanics because both concepts were equally usable and I figured Tyler would do a better job programming something he was invested in. I don’t have access to Tyler’s dev diary so I have no clue whether he’s pleased with my level of contribution to the project, but he certainly seems pumped about things when we talk. I’m quite satisfied with him as a partner as he’s open to suggestions, flexible with reacting to setbacks, eager to overcome obstacles and an overall hard worker. While we’ve both contributed plenty of suggestions and design concepts to the game, and I’m very satisfied with the final project, I can’t help but feel I’m regressing into my lifelong habits of avoiding programming by filling the void with content creation. I should have taken advantage of the solo and duo projects to learn Unity, even if it would have resulted in substandard products, because the proficiency disparity between me and the other students will only grow as the program goes on.

It’s just so easy to let him do all the programming and insert myself into more of an asset-creation position because that’s playing to my strengths. I can crank out sprites (I don’t think they’re particularly good but Tyler insisted he wanted to use my artwork and not default assets so apparently they’re of adequate quality in everyone else’s eyes) and I don’t know Unity as well as he does, so it’s logical and easy to let him program. But I didn’t come to this Master’s program to learn sprite creation, and we’re going to have an entire University of San Jose to do that for us for the next project. I need to find a way to serve a useful role on a team, especially considering nobody’s games from any point in this quarter have required a writer.

This all boils back to my fear of programming, something that’s plagued the majority of my life. When I was 11, I couldn’t wrap my head around a month-long tutorial of DarkBasic, so I used Multimedia Fusion (nowadays called Clickteam Fusion) to make games. As an undergraduate, I briefly considered switching my major to Computer Science but a terrible experience in a C class squashed those plans and I continued using Clickteam Fusion for my portfolio projects. After graduating, I took an online Unity class but eventually gave up after six months had passed and I couldn’t program anything more complicated than a text-based adventure game. Even in this class, I chose to use Clickteam Fusion for my solo project when I probably should have created an inferior project in Unity. I feel like the metaphorical elephant who learned as a calf that he couldn’t uproot the stake tying him to the ground, so he remains rooted even as a 15000-pound adult who could easily escape that stake if he tried to.

This is the part where I’m supposed to tell you that I’ve tried my absolute hardest to learn C++. I know that’s Andrew’s opinion on himself, but I feel like I should (and could) have worked harder, instead of constantly distracting myself by putting 110% into my other homework assignments. I love every other class in this Masters’, but I bet if I’d spent less time creating sprites, writing 2-page dev diaries and pulling all-nighters on The Wolf and the Waves I could have probably learned C++ at the same time. Instead my vision just swims when I stare blankly at Visual Studio and I do something superfluous like programming Tic-Tac-Toe instead of Connect Four. I can see the massive potential of games programmed in C# and I’ve wanted that knowledge for years, and this degree is probably the greatest chance I’m ever going to get to learn it. If I fail now, I’ll forever regret losing this opportunity.

Our lectures and reading discussed how the game designer uses the formal elements of a game. As a sandbox-style game, “Explore” would probably fit best as our player’s intended motivation. We found that most players clicked on everything once they were bored of shooting paper balls, so we didn’t to worry as much about telegraphing what items had scripted actions tied to them. (We added a few for the Inbox anyway, since the player misses a huge chunk of the game if they don’t click it.) The thing about ‘Calmness’ is, we had to avoid most of the things that video games use to create challenge because challenge isn’t calming. Our player character has infinite resources, no objective, and no stress because otherwise the player might not feel calm. We didn’t even have a clear ending (everything fades away and you’re now relaxing in the Rockies with nothing to do) until the very last build; we intended to let the player sandbox forever but playtesters didn’t find it calming when the game never clearly ended!

Believe it or not, Andrew Corcoran’s lecture actually helped us in a major way. He discussed dynamically adjusting your game so that it catered to people with different preferences. Originally, we tied the “slacking off” mini-game as calming and the “working” event as neutral. After Emily playtested our game and had the opposite reaction to both mini-games, we realized that some people found work more calming than laziness. So we tied the calmness mechanic to the player’s progress in either mini-game. Now people can finish the game through whichever playstyle they prefer, just like Corcoran’s UI and menus cater themselves to the player.

end sprites

Dev Diary #3

Prompt: – Write about the week’s lecture and readings as they relate to your project 
– Write about this week’s industry guest speakers (if any)
-Write a description of your progress (both positive and negative) on your current project
– Must include at least one piece of media:
GIF, link to video, screenshot, sketch, etc.

Not gonna lie, I’m nervous. I’ve had bad luck with duo projects. I’m far more comfortable either doing everything myself, thus giving myself control of every part of the game creation, or working in a giant team of 40+ developers where I can serve as a tiny cog in a giant machine. Luckily, Tyler doesn’t look like one to fall into the normal problem where one teammate never does any work. He’s slightly coding-focused, (more than me at least) meaning he can bear the brunt of that element. He’s also proven open to hearing ideas while also suggesting his own, a great balance that too many people lack. I can suggest things and know that he won’t smother his own ideas and blindly accept mine, or alternately throw mine out in favor of his own without due consideration.

Our cooperative skills were put to the test almost immediately, when we initially couldn’t decide what angle to take the game. After we missed our emotion of choice and had to settle for Calmness, we both developed different ideas for how to tackle our new direction. He wanted to adapt our ‘Nostalgia’ ideas (a basketball-style minigame in an office setting with crumpled pieces of paper) into a form that emphasized the new emotion, whereas I wanted to scrap the whole angle in favor of a new setting that was tailored for calmness from the word go (a peaceful field where clicking objects adds different instruments to the background music). Ultimately we came to an agreement and decided to stick with doing his because my suggestion was lacking in several elements of what makes a game (more on this in the final paragraph of this diary). Tyler’s idea still works, even if it chose a less obvious setting; we’ll just need to succeed at establishing calmness through gameplay instead of aesthetics. Plus office supplies are quicker to draw than naturey stuff, and I’m singly responsible for all sprite creation so I need to work fulltime on that because nothing else can progress until we have assets to work with.

Update: I kicked ass on sprites tonight! We got all the core sprites now, I’ll work on including more of course, but for now we’re easily on the road for a working prototype come the Friday playtesting.

sprites.png

The reading and lectures this week were mostly concerned with the elements of gaming as a medium, and they became very important in how Patrick and I chose which idea to go with. Particularly Objective and Conflict; my ‘nature-themed music generator’ idea lacked both of these core gaming elements, and for that reason wasn’t really selling itself as a completed concept. Tyler’s idea, with a stress meter and an element of time management, was more clearly a game by definition, and this factored heavily into why we ultimately chose his idea to move forward on developing.

 

Dev diary #2

Prompt: – Write about the week’s lecture and readings as they relate to your project
– Write about this week’s industry guest speakers (if any)
-Write a description of your progress (both positive and negative) on your current project
– Must include at least one piece of media:
GIF, link to video, screenshot, sketch, etc.
+ Why you want to make games

This week’s lectures -and reading- talked about how much pre-planning you need to do before you start on the project, and how much playtesting after you’ve started, and they weren’t kidding! I’d have saved a lot of time if I’d planned out a few more things before plowing into the coding and development elements of my “Two Verbs” project. Every single person who playtested my game had similar issues with it; they had trouble figuring out the controls and the mechanics of the objective. I redesigned my UI multiple times from the ground-up to try and fix these problems, and while many sources of the confusion were alleviated, it never fully went away. Finally, on the eve of the final day, MJ told me that I needed to work on my First Time User Experience so that new players can painlessly learn the mechanics and play the game. We’d talked about how the best games slowly showcase the mechanics one at a time, and the only way I could think to get that at such short notice is a full-fledged tutorial, so I added it with a day to go. Works pretty darn well if you want my biased opinion, but unfortunately I wasn’t able to let anyone playtest it due to how late it was added. But the game is done, and playable here on my itch.io account!

 

Thought I could showcase the “shapeshift” verb in a few GIFs. Here’s the primary form of transformation, switching between Wolf and Human form. There’s a third form, recon mode, which you get when you eat a blue mushroom, and finally the player becomes a bird when they win the game just because it’s more exciting than a generic “You win” screen.

 

Also, in order to get a picture in this diary, I’ll talk a bit about my favorite moment from playtesting. At the time I was frustrated that playtesters blitzed through my Main Menu without noticing any of the explanatory content therein; they’d immediately click the Play button and proceed to just stumble around confused in the main game. I realized they were doing this because ‘Play’ was in the top-left corner of the menu, the first thing you read. I moved it down to the bottom-right and put the ‘Backstory’ button in the top-left because I wanted people to click on it first. The remaining two buttons, Credits and Controls, would occupy the remaining two spots, but which of those two spots (upper-right and bottom-left) were more ‘important’ in the eyes of my players? Controls was far more important than credits and I wanted to give it as much attraction as possible. So, in order to figure this out, I wrote this short paper-and-pencil exercize and walked it around to various people in the labs:

name game.png

I gave them no direction beyond asking them to circle each of the names. As I suspected, almost everybody circled Jeff first, and the remainder circled Will, likely because they were pondering my intentions and wanting to subvert expectations. But I was really testing to see which name was most frequently circled second. And Sam, in the top-right, was overwhelmingly the most popular second choice. So that’s where I put Controls in my main menu, leaving Credits in the less popular bottom-left.

 

John Salwitz was our guest speaker for the week, and he talked about how the industry has changed over the years. Honestly, that’s why I’m going into this industry. I’ve seen it happen repeatedly over the years, as trends come and go, and it’s amazing. Everyone’s trying to keep up with the times, the community grows tired of certain gimmicks and they die, and the industry is constantly evolving. Remember when every new shooter was a Modern Warfare-esque gray-and-brown drabfest? Or how about the “early access first-person wilderness survival game” craze? These cycles come and go, right now it looks like we’re in a feedback loop of “it’s either got to be a hero shooter or a Hunger Games ripoff”, and its great to know that things are gonna eventually shift another way. I also like the increased specialization of teams in the modern era; as Salwitz’ lecture clearly demonstrated, teams are getting larger, and I can focus on my piece of the puzzle (likely writing) and play a part in a larger team.

 

I’ve written novels, screenplays, articles, and stage scripts, but I’ve found that I most love the versatility of narrative that game designers need to incorporate into their work. Games are unique in their ability to craft a story that can change every single time the audience experiences it. So many other storytelling mediums are focused on the work itself, and while games are no exception, they have to always keep the player’s moment-to-moment experience in mind. This interactivity with the audience, even if I’m not present during their playthrough, is why I find myself writing games in my spare time over other genres of fiction.

Dev diary #1

Hey all. So, this master’s program is intense. I’m loving it, but it’s sapped a lot of my free time so I haven’t been updating this blog even though I’m learning tons of stuff and working on projects right and left.

So, since I’m already writing weekly dev diaries for one of the classes, I figured I could publish them here! With names changed to protect the innocent, of course.

Dev Diary prompt 1: Your assignment (should be no longer than one page):
– What do you hope to get out of the next 12 months in this program?
– What are you most excited to learn about?
– Is there anything you’re worried about?
– In your spare time, what kinds of games do you prefer to play?

GAME 270: PROTOTYPING is of the classes I’m most excited about when scrolling through the quarter’s itinerary. The C++ sounds terrifying and the art class sounds promising but I suspect it’s less about making art and more about intelligently choosing pre-existing assets, when one of my favorite parts of game development is creating all my own art. I have always operated under the philosophy of creating many tiny games to learn new mechanics, and so I look forward to this class pressing me to the limits of what I can accomplish in a short time.

I can even get behind the philosophy of writing these diaries. When I took a Unity course over the summer preparing for this course, I wrote a daily diary keeping track of what I’d learned that day. I was less focused on what I’d hoped to learn, since it was just Unity, but this time there are three major tiers of knowledge I hope to explore:

  1. Programming. I want to learn Unity well enough to make my own games on that platform. Other languages like C++ and Unreal I hope to master well enough to pass the courses.
  2. Game Design. As mentioned, I’ve made several games on my own, so I’m not a completely newcomer to the design aspect of games, but I have never been formally trained so this opportunity is an invaluable asset.
  3. Networking. The other kids in this program are driven, ambitious, and knowledgeable in this field. I’ve never met so many people my age that I can bond with like this class. I need to befriend as many as possible and nurture connections to help me break into the industry proper.

My biggest weakness is my lack of programming experience. I passed a C class in junior year of bachelor’s, and I’ve taken multiple online courses attempting to learn Unity, but I’ve never felt like I was doing anything but stumbling through those classes and aping the instructor. I want to be able to make Unity games with the same proficiency I can create games in Clickteam Fusion 2.5.

In my spare time I play multiplayer shooters like Overwatch, Left 4 Dead 2, and Team Fortress 2. I specialize in healers and support classes.

Electra City goes in-browser…kinda

Electra City, my old 2-player brawler, has been updated with loads of sound effects and music and is now playable inbrowser on itch.io, though sadly it’s a buggy mess right now so I’m not making it public. The downloadable works perfectly, meaning the bugs are all involving the port and I have no clue how to fix it.

But hey, check out the downloadable version on the same page. It works perfectly.

1119

For some reason I feel more like using this blog as an actual blog, where I discuss things I’m thinking about. God knows why, maybe its the fact that my nonexistent audience can’t actually lose interest and unfollow. I can’t believe I’ve been regularly referencing and acknowledging you nonexistent readers since 2012.

I’m not going to lie, I’m pretty dejected by Blizzard saying no. I thought I had that one in the bag, it’s a customer service position to work for Overwatch, which would be a fucking dream come true for a cartoony FPS fan like me. I also thought the interview went great. I’ve been debating focusing exclusively on Blizzard because I know a workable if niche job-getting strategy is to just hound one company until it hires you simply out of name recognition. But with Lyft abandoning Austin, it has suddenly become difficult for me to even reach Blizzard. My roommate is working the current gig so had I landed it I’d have carpooled with him.

I’m so unbelievably jealous of my roommate. He has zero game development projects under his belt, he has never worked in the industry, and this was his first time applying for a gaming job. So of course he gets it (Overwatch! He gets Overwatch!!!), and my four years of experience gets me the door. It’s pretty clear I was considered overqualified, and its far from the first time. I appear to be in that sweet spot where I’m not qualified enough to hire for a decent game dev position, but I’m too qualified to hire for a shit gave dev position.

What to do, then? The obvious answer is to keep plugging away at volunteer/indie projects and find one that’s worth the time and will pay dividends. After all, with the internet and endless tutorials/training at my disposal I (and everyone else, to be fair) have no good excuse not to. It would just be so much easier to drive to work, do a thing from 9 to 5 and then come home and get paid. And then get a nice sizeable refund on tax day instead of kicked in the nuts by Schedule Cs. It’s so stress-free. I’ve been doing it entry-level for under $10 at dead-end customer service jobs for months now. I guess I just hubristically feel like I’m ready to advance to something better. Consider this blog post my Disney princess song.

Luckily I’ve worked out a completely separate source of stress, that of my lifelong singlehood. I guess its around 25 that my biological clock finally started whining about how it was sick of being lonely and to start looking for charming gals and gents to spend nights with. And I may have wasted a few nights in bars wondering why the fuck I wasn’t at home writing or playing video games, and then ultimately going home eventually and doing just that. But me and my eros had some long conversations and eventually convinced it that I’m just not ready to spend time on another person right now. I want a steady job and a satisfactory level of content-creation skills under my belt before I can afford to try and balance my life along with someone else’s.

I have to remember that I’m incredibly lucky with where I already am. Not only am I a white decently-thin male in a first-world country who lacks any physical deformities, I’m doing something most people can only dream of. I’m risking everything and toiling in a self-chosen city following my dream. When I look at someone and feel jealous, I remind myself “Would you trade lives with them?” And the answer is always hell no. I’ve got my priorities straighter than anyone I know my age. And I’m going to succeed.

Day 39

Continuing the theme of bizarre bugs, I did what the prof said and uploaded my game to their website. (Link dies in 30 days, that’s lame so I’m gonna upload it here or something but not before I fix the following). However I’m getting this weird bug so I’m holding on releasing it to anyone who isn’t a diehard reader of this blog.

bd65420a2662f572d4a2bfac91a3c258

For some reason if the text reaches the 10th line there’s this black bar that partially cuts off the 10th and 11th lines. That really annoys me and I don’t know how to fix it. I reuploaded after resizing the canvas, didn’t fix it. Guess I’m asking the discussion thread. Too bad my query will almost certainly be consumed by the hundreds of “PLAY MY GAEM PL0X” since this video lesson requires posting your game…

Day 38

So I got home from work and for some reason i was feeling inspired. So I wrote twice as much content for the game as originally planned. It’s a full game now, not exactly a super long game, but it meets the requirement for being an actual game, not a demo. And I’m pretty proud of myself cause I had to code the whole darn thing in Unity.

So the game’s done. I know I said it was done yesterday, but that before adding 13 new scenes, more than doubling the amount of content. There are even two different endings!

So tomorrow’s when we keep moving forward and finish the game, since it’s midnight 30 right now and I’ve got work tomorrow. But I don’t have work the two days after that! 😀 (It’s been so nice to abuse the ‘one video per day’ rule with the 00:57 second Course 3 closing video. I’ll be sad when I’m done with Course 3.

Day 37

So I added all the new text for the game, but I hit a completely unrelated snag. My computer restarted itself last night, and while MonoDevelop was completely saved, apparently the game wasn’t and my base game is gone, lol. Easy fix really, just rewatch that earlier video and put the few things back in. But I can’t do it tonight, got work in six hours. Video done for the night, its happening tomorrow. Same time same bat-channel.