Posted on Leave a comment

Blog: Creating a machine learning algorithm to illustrate Magic cards

The following blog post, unless otherwise noted, was written by a member of Gamasutra’s community.
The thoughts and opinions expressed are those of the writer and not Gamasutra or its parent company.


[This post originally appeared on my blog]

image

Urza’s Dream Engine is a neural network project I’ve been working on for a few months. It’s a bot that creates art in the style of Magic: The Gathering cards. It began as an effort to create art to go with the cards created by the amazing Twitter bot, RoboRosewater, and grew into its own beast. It was my first foray into machine learning as well as my first project focused on producing still images.

You can see some of the output on the site for the project here: http://andymakes.com/urzasdreamengine/

Although Urza’s Dream Engine grew a life of its own, it culminated in a booster draft, held at Babycastles in NYC on Nov 18th 2017, using the RoboRosewater cards paired with my bot’s art. This was a game played by humans, but designed and illustrated by machines. In this post I’ll go through my process step by step starting from the initial idea to the Babycastles event.

The Urza’s Dream Engine site has downloads for the images, cards, and print-and-play booster packs used at the Babycastles event.

Conception

This whole project started because I was enamored with a twitter bot called @RoboRosewater. I certainly wasn’t the only one; as of this writing, the account has 23,500 followers. RoboRosewater is a neural network bot created by Chaz and Reed that has been running since 2015. Each day it posts a new Magic: The Gathering card generated by a machine learning algorithm. Basically, it is a program that has been trained on all of the existing MTG cards (roughly 30,000 over the course of the game’s two decade run) and which now attempts to create new ones in the same vein. The bot itself only generates the text for these cards.

Most of the cards it makes are borderline nonsense (but still very fun), but a surprising amount of the output is actually playable. Maybe broken in the sense that the card is too strong or too weak, but actually legal within the (fairly complex) rules of the game. Even these legal cards are still alien, like a glimpse into a bizarre alternate reality of the game. Some are amusingly pointless (like a card that states that players must pay the cost of the spells they cast). Others staple three seemingly unrelated abilities together. And some have genuinely interesting effects that as far as I know have never been used in the game’s long run. If you like Magic or bots I highly recommend following this account.

image

Given my interest in exploring unusual parts of the game in my Weird: MTG series, holding a RoboRosewater booster draft seemed like a natural fit. I had something of a convenient problem though: the cards posted on the RoboRosewater account use stock images of computers as their art. They basically all looked the same, and trying to play with them would be hugely difficult as card art is an important identifying feature, especially when playing with a new set. Imagine having to read 20 identical cards on a table every time you are thinking about your next move.

I say a “convenient” problem because I am usually keen to try a new project, and the challenge of creating illustrations for these cards sounded exciting. The text was generated via automation, so I knew the images should be as well. Early on I thought about trying to create an openFrameworks sketch that would cut up and recombine the existing art from the game, but it didn’t feel quite right. The cards were created by a neural network so the art should be as well. I’d never messed around with neural networks myself, but I was as blown away by Google’s Deep Dream algorithmas anybody else so now seemed like the time to learn!

Getting Started

I’m a total script kiddie when it comes to machine learning. People get their PhDs creating and working with these techniques. I’m a game designer who likes to tinker. As a result, I tried setting up a lot of different neural nets on my laptop (non-GPU enhanced, but I wasn’t going to let that stop me). With most, I ran into some roadblock after 5 or 6 hours that couldn’t be solved by importing a new Python library, and I’d move on to the next one. Finally I had success with a Tensorflow implementation of Deep Convolutional Generative Adversarial Networks by Taehoon Kim. I followed the instructions on the GitHub page and  trained the bot on some sample images of faces. After tweaking some of the source code to work on my machine, I produced a set of my own slightly-off faces and I was off to the races.

image

Getting the Data

Part of how neural networks function is that before they can attempt to replicate a style, they must first train on an existing dataset to learn what the thing is. This data set is no trivial thing. In order to work well, the data must be ordered (being of similar type and presented in the same way) and there must be a lot of it. The sample set that came with Kim’s Tensorflow implantation contained 200,000 images of celebrities–all from the neck up, facing the camera and cropped to be the same size.

Fortunately, the sheer volume of data associated with Magic: The Gathering is huge, probably rivaled only by major sports like baseball. It is the first & longest running collectible card game. It first launched in 1993, and Wizards of the Coast, the company that produces it, has released multiple new sets every year since then. This means that there are currently over 30,000 unique Magic cards. This pool, while small in terms of what would be best for neural net generated art, is still larger than any other game I could hope for. Of course, the art in the game is also not nearly as uniform as the celebrity data set I described above, but I didn’t need perfect output. I was ok with things getting weird and I wanted to see what the bot could do.

image

First things first, I needed to get that data. Luckily, I am not the first person who wanted to scrape info from all existing MTG cards. There is a piece of software called Gatherer Extractor that will download text and images within certain parameters from Wizard’s official MTG online card database, Gatherer. This software, release for free by MTG Salvation user chaudakh, prepares an Excel spreadsheet file with all of the requested information and can also download the card-scans (the image showing the full card). To my delight it also had a check-box to crop the card image to just the art, saving me a Python or openFrameworks script to do the same thing.

image

I tested Gatherer Extractor with a single expansion set, and after seeing that it did what I wanted, I set it to work pulling the card text and image of every card in the game. The resulting spreadsheet makes my computer chug a little bit, but it had everything, cross-referenced with the image associated with each card.

Sorting

Card art in Magic: The Gathering is dependent on a lot of things, but there are some game factors that are frequent indicators of aspects of the illustration. Card color is a big one. Red cards tend to lean toward warm colors in their palette, blue cards toward cool colors, etc. Creatures also tend to look different than artifacts, which look different that sorcery spells (or so I thought–more on that in a bit).

Initially I had hoped to have the bot simply train on all of the card text and art so that it could learn the difference between, say, a red creature and a white enchantment itself, but I soon realized that this was more than I could do with my setup (or at least with my experience level). It became clear that the best course of action was to sort the art beforehand by whatever metric I wanted to use, and then have the bot train only on those images. To do this, I built a simple Python script that would let me set some parameters (for instance “blue creatures” or “enchantments”) and would then scan the spreadsheet to find all cards that met the criteria. For each card that fulfilled the search query, the image associated with that card was copied to a new folder to use as the training set.

Early Batches

The first training set I tried was all creatures with the “goblin” creature type. This resulted in a little under 400 images for the bot to train on. After a few hours the results were still rubbish. After more experimentation I would learn that I had made two errors: 400 images was a minuscule dataset, and a few hours was not nearly enough time to train, even with a good data set.

image

I switched gears and tried white creature cards, figuring that color was the major indicator of the palette used in the art and that creatures would at least all have a main subject in the art (as opposed to sorceries or enchantments). I let it run for four days this time. As it worked, it would spit out a sample image every hour or so. I was able to watch a formless mess turn into something more discernible. (The sample images are produced in an 8×8 grid, so each sheet contains 64 separate images produced by the bot).

image

image

This bird-fish giant was the first image produced by Urza’s Dream Engine (then unnamed) that I really loved. It’s still one of my favorites.

At this point, I knew things were working. I messed around with the settings for other groups, but as far as the code I was using, very little changed. The biggest modification was that I shifted from breaking up the images by card type and started using color as the only criteria for sorting. Contrary to my initial assumption, I realized that nearly every card in Magic has a central figure in the art, not just the creature cards. In order to illustrate the magical effect of a spell or enchantment the art shows a central figure either reaping the benefits of or being victimized by the spell in question. Since there was little artistic difference between them, there was no reason to make smaller training sets.

image

These three cards all represent spells in the game, but the art could just as easily go with a creature, since each one focuses on a character.

Creating and Posting

The next two months or so were spent with the bot quietly running in the background of my laptop (and absolutely destroying my battery life when unplugged). I worked on other projects, most notably finishing up my sequencer toy Bleep Space with musician Dan Friel. During this time I occasionally posted the images the bot created on this Tumblr and on Twitter. The images resonated with a lot of folks and I always enjoyed hearing what people saw in them. The images are abstract enough that while conveying the general vibe of MTG art, they function a bit like a Rorschach test, allowing for many interpretations.

In order to make the images a bit more human-readable, I used a few Photoshop actions that I could run as a batch. The main one I used took the 8×8 grid of images that the machine learning bot spat out and cut the image into 64 individual images. These images were then blown up slightly to be a bit easier to see and so that they would eventually fit nicely onto the RoboRosewater card frames.image

Around this time, the images were featured in an article on Waypoint (The games culture wing of Vice) by Cameron Kunzelman. As I noted in the article, one of the things I was enjoying most about the bot was that it was generating images that seemed to have some of the flowing style of Rebecca Guay, my favorite illustrator for MTG.

imageOn top are Guay’s illustrations for Bitterblossom and Regenerate. On the bottom are two of the pieces created by Urza’s Dream Engine.

Creating The RoboDraft

I was collecting and displaying the images, but I still wanted to do something with them. My background is in interaction, and that hasn’t changed. My original plan was to pair my images with Roborosewater cards and hold a booster draft with them, and that was still what I wanted to do. My previous Weird MTG events had been much simpler (a booster draft using cards from Legends and Arabian Nights, a tournament only allowing cards from 1994, and a cube draft made of “rare” cards that were worth 25 cents or less). Most of these had involved printing proxies (printed cards used in place of real cards that are too valuable to actually play with), so I had a tool chain in place for that, but the scale of this one was much bigger, and it involved creating the card images before printing them.

A booster draft is a specific type of Magic tournament that involves creating a deck on the fly. The typical tournament type, called “constructed,” involves players building a deck at home with cards they own and bringing it to the tournament. Booster drafts are of a type of tournament, known as “sealed”, where players come empty handed and are given unopened MTG products to build their decks with. The “draft” part of “booster draft” comes from how players build their decks at these tournaments. The players sit in a circle, and each player opens a booster pack (containing 15 cards), selects one card to add to their pool, and passes the remaining cards to the player next to them. This process continues until each player has 15 cards, at which point the players open their next pack. Each player starts with three booster packs, so at the end each player has 45 cards to use in building their deck (not all of the cards need to be used), but because they drafted cards from the packs going around, the card pool for the tournament is actually much larger and players can exercise significant strategy in building their pool of 45 cards.

Being more interested in playing than actual deck-building (and being pretty awful at deck-building), booster draft has always been my favorite format. It also lends itself well to an event that uses cards that nobody owns or could possibly own. It did, however, mean that I had to construct booster packs for players.

Selecting the Cards

The first thing I needed to do was create the pool of cards to draw from. To do this I went through every image that @RoboRosewater has every posted (roughly 830 at the time). To get started, I sorted the images into four categories. Here are my criteria and a ballpark value on how many cards posted by the bot fell into that category

Legal: Cards that could be played as written. I’d say roughly 40% of the cards posted by RoboRosewater were legal.

image

Legal but Functionless: Cards that could be played but effectively did nothing. While these are fun to see printed, they essentially represented dead cards in a booster pack. This category was small, making up only about 5% of the cards. (Yes, there are niche cases where these cards would do something, but the use case is so narrow as to effectively be 0 in a sealed format)

image

Nearly Legal: Cards that were not technically legal within the rules of the game, but which had only one obvious interpretation. These had to be things that could be fixed with a slight edit that would not be dependent on me making design decisions for the card. I was pretty strict about not editorializing, so anything that could potentially be interpreted multiple ways was pushed to the next category. The result was that this also made up about 5% to the total cards.

image

Illegal: Cards that simply did not work within the rules of the game. These cards tend to be collections of Magic terms that do not work in any comprehensible way in the game (they also tend to come from shorter training period as indicated by the art on the card). The longer the text on the card, the more likely it was to veer into this territory. This was the biggest category, with about 50% of the posted cards landing here. While these cards can be great fun to see–the close-but-no-cigar nature of their wording exists in the same vein as videos of robots falling down–they wouldn’t work for this event.

image

Power level did not factor into the decision making at all (besides avoiding cards that basically did nothing). My goal was not to create a balanced environment, and in fact, I think that trying to “correct” for the weird power levels created by the bot would have undermined the authenticity of the event. All of the cards in the “legal” or “nearly legal” categories were initially included, even cards like Teferi’s Curse that threatened to stall out games.

A quick note: it may seem at first glance that having less than half of the cards be legal suggests some kind of failing on the part of RoboRosewater and its creators, but this simply isn’t true. Magic: The Gathering is a deeply complex game with many accumulated rules and abilities on cards over the years. The fact that RoboRosewater can create any cards that are legal is astounding. The fact that it can do it on a regular basis is all the more impressive. I would be over the moon if I made a similar project for any game that was able to succeed 40% of the time. I certainly did not include even 10% of the total output of Urza’s Dream Engine on my website for it. Furthermore, the purpose of the bot is to create interesting cards. They were never meant to be played, so my metrics for what would work for this event are not the same ones the bot’s creators were using.

After sorting the cards into these groups, I broke them down by color. Booster drafts work best when each color is represented somewhat equally. I found that black was the weakest with only 40 viable cards, while white and green were overrepresented with around 60 each. Although I was reluctant to apply my own design decisions to the game, I decided that removing some white and green cards in order to keep some color balance was a good idea. I bumped a few of the cards that were in the “nearly legal” category from those colors and pulled a few more that were borderline functionless. This was the extent of my own design decisions for the draft.

The result was a 308 card set. Definitely a large set, but not so big that players in a draft won’t see some of the same cards go around more than once. Because the cards generated have no rarity level (typically common, uncommon, rare & mythic), all cards were equally likely to show up in a given booster pack.

Putting the Cards Together

Now that I had all of the RoboRosewater cards sorted by color (or type in the case of artifacts and land), it was time to combine them with the images that Urza’s Dream Engine had created. Once again, I wanted to maintain automation’s control over the output. My purpose in this process was to curate and facilitate that automation. I wanted a program to randomly pair cards with art of the same type.

To do this, I built an openFrameworks application that would accept an input card image folder and an input art image folder. Once given these folders (for example, red RoboRosewater cards & red card images produced by Urza’s Dream Engine), it would randomly select from the two pools, combine the images and save the output as a new image. As it did this, it would remove both the card and image from the pool to guarantee that there would be no repeats.

image

As I mentioned earlier, the abstract images produced by Urza’s Dream Engine lend themselves to multiple interpretations. This wound up being a serious boon when paired with the cards. Between RoboRosewater’s liberal use of abilities and fascinating names, and my own bot’s hazy images, nearly every pairing felt like it made sense, even though it was random beyond the color of the card. Although I knew the power of the human mind to seek connections and narrative is an amazing thing I was pleasantly surprised by just how right everything felt.

image

Printing the Boosters

Luckily, this was not my first Weird MTG event that involved making proxy boosters. I’ve created a tool for myself that does exactly this which is available for free. This tool draws cards from input folders and creates PDFs of print-and-play ready booster packs. The printable cards include a small number in the bottom corner to identify what pack they belong to. The purpose of this is to preserve the randomness generated by the program, including the rule that no pack contain duplicates of the same card.

image

I printed a total of 72 packs. Enough for 24 players. The resulting stack had some real heft to it.

image

Cutting and Sorting

I took the whole thing to Kinkos and got to work at the paper cutter. It took a little over an hour to cut everything out.

image

Once I got home, my partner Jane and I watched shows while sleeving cards. Because these proxy cards are printed on paper, they do not have the weight to be played with by themselves. To get around this, they must be put in a protective card sleeve using a real card as a backing to give them the necessary weight. These sleeves are very common in the game, and are typically used to allow players to use valuable cards without worrying about scuffing them or having something spilled on them. I buy them in bulk.

image

Once they were sleeved (at the expense of nearly every common magic card I own), they were ready to be sorted into their packs. This is where the little ID number at the bottom of the card comes in handy. Because I am usually cutting multiple sheets at a time, the order gets a little shuffled as cards wind up not next to their neighbors, but actually the card that was in the same location on the sheet above or below it. I started by grouping everything by their tens place (0-9, 10-19 etc).

image

Once they were in more manageable piles, I got to work placing them into their actual packs. At the end I had 72 stacks of 15 cards for 1080 total cards, enough for 24 players to draft. After counting each pile to make sure it had the right number, I put them in baggies that would act as surrogate wrappers. I packed up a bunch of basic lands along with them (for players to use when building their decks) and the setup for the event was complete.

image

Contact with RoboRosewater

In the week leading up to the event, I posted about it a lot. I was having great fun creating sample packs that not only showed the Urza’s Dream Engine art, but also asked players to think about the RoboRosewater cards in a game context rather than just as abstract individual cards. I also made sure to tag RoboRosewater in these posts. I had previously attempted to reach out the the developers on the both on Twitter and on MTG Salvation, the forum where it had originally been posted. There was no info on either about who actually made the bot and I wanted to be sure that I could credit them and that I had their blessing.

Luckily, a few days before the event at Babycastles, I received a Twitter DM from the RoboRosewater account asking if there would be any pictures of the event. I was thrilled to hear from them, and honestly a bit starstruck. I was happy to know that they approved of the event and was glad for the opportunity to ask about how they wanted to be credited. I want to give a huge thanks to Chaz and Reed for making the bot that got the ball rolling on this project.

Playmats

As a prize to give away at the Babycastles event, I ordered two custom playmats from Inked Gaming with a collage of some of the images generated by Urza’s Dream Engine. It’s a small thing, but it was fun to see them, and I hope they’ll get some use from the folks who won them.

image

The Draft

The event itself was fantastic. I knew the cards would be interesting to play, but I wasn’t sure they would be fun. It turns out that as weird as the draft environment was, it was also very playable. The set offered multiple viable strategies both for deck building and playing. There are a few leftover packs and I’m looking forward to doing it again. A photographer, Lippe, took some lovely pictures of the event.

image

image

image

image

 

Closing Remarks

Magic is a game that I love, and this was a fascinating way to interact with it. It was also my first glimpse into machine learning and image generation as a whole. I’m very please with the result both of Urza’s Dream Engine and the resulting booster draft. Finally I want to extend another thanks to Chaz and Reed for creating RoboRosewater and giving me an tool to build around. 

Posted on Leave a comment

Report: Marvel Heroes dev Gazillion shuts down, lays off entire workforce

It seems that Marvel Heroes developer Gazillion has been shuttered, with all employees being let go on the day before Thanksgiving. 

Comments from employees on social media appear to confirm the news, as does an internal email (picked up by PCGamesN) from Gazillion CEO David von Dorman. 

Worse still, multiple Gazillion staffers have reported that those affected aren’t even being paid severance or PTO (paid time off). 

The studio hit rough waters earlier this week when the Disney-owned Marvel severed ties with the company, and confirmed that Marvel Heroes would be laid to rest. 

“We regret to inform our Marvel Heroes fans that we have ended our relationship with Gazillion Entertainment, and that the Marvel Heroes games will be shut down,” Marvel explained in an email sent to Kotaku. 

“We would like to sincerely thank the players who joined the Marvel Heroes community, and will provide any further updates as they become available.”

The game was originally due to shut down in December, but will now be winding down on Friday as a result of the extensive layoffs. We’ve reached out to Gazillion for comment.

Posted on Leave a comment

Portraying migrants’ struggles via cellphones in Bury Me, My Love

“The vast majority of migrants have smartphones. For them, that’s crucial. It’s a way to get info on their journey, but more importantly, it’s their only way to connect with their families and friends. So, we felt the best way to tell the story we wanted to tell efficiently was to mimic the device they use and the way they use it.” says Florent Maurin, producer and designer at The Pixel Hunt, developers of Bury Me, My Love.

Bury Me, My Love has players following the journey of their wife, Nour, as she works her way from Syria to Europe. However, players act as the husband, Majd, only able to know whatever parts of the journey Nour chooses to text back to him. Players can try to offer advice, support, and guidance to her via text, but otherwise, all they can do is hope and wait.

This play style was designed to mimic that sense of helplessness many immigrant families feel as their loved one leave for another country. It captures those long silences where you don’t know where they are or if they’re safe. The sense of never being sure if they’re telling you everything. Of wondering if this message will be the last.

“Even through Bury Me, My Love is a fiction, we wanted it to feel real. Lots of migrants take huge risks to try to get a better life, and lots of relatives spend days waiting, not knowing how things are going to turn out. Yet, when we (as Europeans) hear about migrants on the news, they’re often depicted as a faceless lump, some kind of horde that gathers at our borders. This is scary, and I think that’s part of the reason why hostility towards migrants has been on the rise in the last couple years.” says Maurin.

Bury Me, My Love is a simple reminder: migrants are human beings, with people who care and worry for them. It’s a game about love, really.”

bury1.jpg

“It all started with an article in Lemonde.fr, which was called ‘The Story of a Syrian migrant as told by her Whatsapp conversation‘. This piece really moved me, because it felt both very familiar (the use of WhatsApp, the emojis, the jokes…) and completely alien (the young woman in the article was risking her life).” says Maurin.

Bury Me, My Love was inspired by the real-world journey of a Syrian immigrant that had been captured in her Whatsapp conversations. While the banter between the two was immediately familiar in its comfort, intimacy, and humor, its subject matter was still foreign to Maurin. It took the terrifying travel from Syria to Germany, with all of its fearful moments and times things could have gone horribly wrong, and deeply personalized them. This was someone undertaking a journey that could have gone wrong in so many ways, and the messages from someone far away who could do nothing to help them but talk.

It was a powerful thing for Maurin to read, and something he felt others needed to see, and perhaps experience, for themselves. This would lead to the text-based play of Bury Me, My Love, where players can only communicate with a loved one through messages.

1.png

Maurin wanted to make the game’s messages and moments feel right, which can be a challenge for situations that feel foreign to the developer. It would be much more effective if, in seeking to really bring up feelings of helplessness in the player while on a journey fueled by hope, to learn what it felt like for someone who had gone through it.

“So, I got in touch with Lucie Soullier, the journalist at Le Monde who had written the piece, and I told her I thought her work would be an incredible basis for a game. She put me in touch with the Syrian woman, who was then settling in in Germany, and they both agreed to be our editorial advisors on the project. Once I knew they were on board I got pretty confident we’d be able to write a story as believable as possible.” says Maurin.

On top of speaking with the woman from the article, Maurin and his colleagues did research on migrants’ stories, watching interviews and reading articles to get a feel for what the journey was like, and the frightening events many met while on the road to what they hoped would be a new home.

“We gathered documentation during a 6 month period, read hundreds of articles, watched documentaries, interviewed people… Yet, when we started writing, we weren’t sure of ourselves. We really didn’t want to be over-the-top. We felt that those stories were powerful enough, so we did not need to ‘Hollywood-ize’ them.”

1 (1).png

This didn’t mean The Pixel Hunt got everything right on the first try. “Dana, the Syrian woman who consulted with us on the game, read our texts… and she often was strong with her comments. For instance, we had written a scene where Nour meets a smuggler on a beach before leaving to Greece… ‘It’s not frightening enough’, Dana told us. ‘The smugglers I met had guns. They were mean. They made us walk for two hours, in pitch darkness, with no light and no idea where we were going. Your scene looks like a joyride in comparison’. So… we rewrote this moment, and many others!” says Maurin.

Through their research and consulting with someone who had actually gone through this harrowing journey, Maurin and his team created an experience that would feel close to the real thing, conveying all of the fear and hope that mingles together in it.

Despite being able to consult with the person who had actually made the journey from Syria to Germany, Maurin did not put the player in control of the person travelling in Bury Me, My Love. Instead, the player is the family member who must helplessly watch the journey through their texts, hoping and praying for the next message to come through.

“From the start, it was obvious to me that the player would be put in the position of being the one that stays rather than the one that goes.” says Maurin. “I guess it’s because I did want to be very careful not to disrespect the game’s topic. If we had put the player in the position of a migrant, I fear we would have ended up with an awkward, over-simplistic depiction of this incredibly complex journey. A ‘Press A to stay alive’ kind of thing.”

1 (2).png

Something about making simple gameplay decisions to balance money, or choosing the correct path in a visual novel-style adventure, would cheapen the experience for Maurin. It would be too much like making survival into a game to play, which wouldn’t convey the emotional reality of all the decisions, fears, and hopes that go into it. Instead, it made far more sense to have the player be on the other end, feeling that helplessness as they tried to keep track of a loved one they couldn’t control.

“Pretty much all of the game is about this: accepting you’re not in control. Coming to terms with the fact that sometimes you are unable to help the ones you love. You wish you were, of course, but you just are not.” says Maurin.

“This really is something any game design teacher would advise against. In ‘classic’ video games, the pleasure and the fun often arise from the player’s capacity to make the best possible decisions to beat the rules system. But in order to be able to do that, players have to get clear information on their choice’s consequences. We do not provide them in our game. We don’t even display how much money Nour has left, for instance. Because this would have felt too much like a game, and not enough like reality. We made a game that is unfair, a game that takes control away from you, but we made it because we wanted to talk about a situation which is that way, too.” he continues.

Reality is unfair, which runs counter to how many games must feel in order for players to be able to work through them. Bury Me, My Love is designed to capture how unfair things are, though – how unfair it is to watch a loved one go through difficult times when you can do nothing to help them. When a person has to undergo terrifying times just to find a safe place to live. These are unfair parts of life, and for Bury Me, My Love to effectively convey them, it, too, had to be unfair.

1 (3).png

“When you play as Majd, there’s so much you’re not aware of that, even though it might seem unfair, you can easily understand that nothing really is your fault. You have next to no control over the course of the events. Even Nour is hiding things from you because she cares about you and doesn’t want to burden you with the challenges she faces. I guess helplessness is a feeling that isn’t often explored in video games, and that’s what struck us most about the stories of migrants we gathered. So, that’s what we wanted to talk about.” says Maurin.

Majd only gets to know whatever Nour tells him about the journey. He only knows what she chooses to text him. There is nothing players can do to help in this position, save for send some words of support or suggestions on what she do next. Beyond that, she will do whatever she wants, and all players can do is wait, in pseudo-real time, for that next message to arrive to tell them she’s ok.

Or have that message never, ever arrive.

For that to work, Maurin worked to ensure the players felt a connection with the couple and their journey, exploring their intimacy through the joking, loving, and heart-wrenching messages they send to one another.

“There’s something immediately intimate in texting someone. You really can express yourself, your concerns, your worries… in ways that are often more direct than if you had the very same person in front of you. I really like this type of game because of how simple they are, yet how nuanced in revealing your characters they allow you to be.” says Maurin.

1 (4).png

Texting allowed a great deal of the characters and their connections to come through, which is something Maurin and his co-writer worked on a great deal throughout development. “I wrote about 20% of the text, and the game’s main writer, Pierre Corbinais, wrote the rest. I hired him because I had loved his previous works, especially his ability to write extremely believable dialogues.” says Maurin.

“I think that to be able to really worry for a fictional character, you have to really love them first. I created a frame for Nour and Majd as characters, but I left him to flesh them out the way he pleased. And quickly, reading Pierre’s passages, I fell in love with Nour (he told me he loves her too), and then I knew seeing her going through troubled times would be hard.” he continues.

Part of this connection with the couple came from drawing from their ordinary life and dealings with loved ones, drawing on the tiny, warm moments with their own loved ones. “I tried to be consistent with this in my part of the writing. We both put little details of our personal lives into those two characters. The auto-correct typos that happen in the game are, in fact, derived from real discussions between Pierre and his significant other. The fate of Majd’s dad is inspired by how I lost mine. The jokes Nour tells children she vaccinates in the camp in Nizip are the actual jokes Dana told her sister when she was 8.” says Maurin.

“I think that those small details are precious, because the reader feels that they are real, and so they develop a bond with the characters that is close to a relationship with a real person. And when something bad happens to that person, well… of course, it’s troubling.”

Once they got the player to care for Nour through intimacy through texts, and through the believability of her journey, they could create the gulfs where no messages would be coming through. They had taught the player to care for her through an attention to detail for her journey, for the frightening realities she would meet, through the unfair helplessness of watching her from afar, and from the small, connecting touches from their own lives.

1 (5).png

And now, all you could do was wait, and hope, that she would come through all right.

“We felt compelled to have this feature in the game, because the stories we read during our documentation phase were unanimous. It’s the waiting that’s hard. It’s not knowing what the ones you love are going through. So, if we really wanted to have players feel a fraction of what migrants’ relatives feel, we had to incorporate those moments of waiting in the game.” says Maurin.

So the player must wait in Bury Me, My Love, all while hoping their loved one is all right, truly feeling those gaps in the conversation with the character they care for. Through that, they can feel a fraction of what an immigrant goes through, getting a sense of the fear and hope and helplessness that mingles in those travels. And hopefully, they will feel a little something more for the people making these journeys every day.

Posted on Leave a comment

Video: Rob Pardo breaks down Blizzard’s design philosophies circa 2010

Blizzard Entertainment has become one of the titans of the game industry. 

Devs curious to learn more about how that happened might like to look back at the presentation former Blizzard exec Rob Pardo gave at GDC 2010, in which he retread an internal presentation to show fellow devs some of the key philosophies that were driving the company.

It was an interesting presentation that included both high-level maxims (“Gameplay first!”) and practical examples of how those maxims have shaped Blizzard’s games — and the successes and failures the company encountered along the way. 

It’s a talk that’s hard to find nowadays, but thanks to the power of the Internet you can now watch it completely free via the official GDC Vault YouTube channel!

In addition to this presentation, the GDC Vault and its new YouTube channel offers numerous other free videos, audio recordings, and slides from many of the recent Game Developers Conference events, and the service offers even more members-only content for GDC Vault subscribers.

Those who purchased All Access passes to recent events like GDC, GDC Europe, and GDC Next already have full access to GDC Vault, and interested parties can apply for the individual subscription via a GDC Vault subscription page. Group subscriptions are also available: game-related schools and development studios who sign up for GDC Vault Studio Subscriptions can receive access for their entire office or company by contacting staff via the GDC Vault group subscription page. Finally, current subscribers with access issues can contact GDC Vault technical support.

Gamasutra and GDC are sibling organizations under parent UBM Americas

Posted on Leave a comment

Weekly Jobs Roundup: Blizzard, Heart Machine, and Insomniac Games are hiring now

Whether you’re just starting out, looking for something new, or just seeing what’s out there, the Gamasutra Job Board is the place where game developers move ahead in their careers.

Gamasutra’s Job Board is the most diverse, most active, and most established board of its kind in the video game industry, serving companies of all sizes, from indie to triple-A.

Here are just some of the many, many positions being advertised right now.

Location: San Diego, California

The Bartlet Jones Supernatural Detective Agency is looking for a Lead Artist to provide leadership and hands-on art creation to an unannounced Unreal Engine based game. The role will work closely with the Creative Director, Art Director, Animators and Tech Artists to bring 3D characters and props to life in the game.

Location: Austin, Texas

Aspyr Media is hiring Software Engineers with experience in Android native C++ development to expand its triple-A development team. The studio is looking for generalist capable engineers who are interested in working on a wide variety of challenges.

Location: Irvine, California

The World of Warcraft user interface team is looking for a UI engineer with the talent to create good UI but with the creativity and passion to make great UI. Blizzard is looking for collaborative, passionate engineers to identify and solve challenges within an existing yet constantly evolving code base.

Location: Los Angeles, California

Heart Machine is seeking a level designer with amble spacial reasoning skills, a strong sense of storytelling and pacing, and an artistic eye for great compositions to join its team in developing an ambitious project from the ground up.

Location: Burbank, California

Insomniac Games is looking for a Lead Facial Animator who would be responsible for leading a team of face animators and/or technical animators in establishing, maintaining, and continuously increasing the quality of facial animations of both in-game and cinematic animation excellence on game productions.

Posted on Leave a comment

FCC makes move to repeal net neutrality protections

Under chairman Ajit Pai, the Federal Communication Commission has released its ‘Restoring Internet Freedom‘ proposal which, if passed, would eliminate most of the protections that prevent internet service providers from throttling or otherwise controlling access to certain websites, online games, or services.

Introduced in 2015, those Obama-era protections imposed utility-like restrictions on ISPs that aimed to maintain an open internet by preventing companies from slowing or prioritizing web traffic.

Pai’s 200-page proposal would eliminate all but one of those net neutrality protections in a bid to stop the federal government from “micromanaging the internet.” The proposal goes to a vote on December 14.

However many are concerned that, without the rules in place, ISPs could theoretically lock access to certain websites or online games behind an additional paywall, as Business Insider points out is the case already in Portugal,

In a statement given to The Verge, Pai explains that the lone remaining rule would “simply require internet service providers to be transparent about their practices so that consumers can buy the service plan that’s best for them and entrepreneurs and other small businesses can have the technical information they need to innovate.”

From there, the FCC would give the Federal Trade Commission additional oversight to then “protect consumers” from “unfair, deceptive, and anticompetitive practices” that may crop up in the absence of regulation.

Posted on Leave a comment

Don’t Miss: Do we always have to strive for ‘realism’?

In this reprint from the January 2010 issue of Game Developer magazine, Damion Schubert contends that the pursuit of realism can sometimes lead to pretty unrealistic experiences. One can ask the makers of The Polar Express, the animated Christmas film released just in time for Thanksgiving in 2004. Despite huge investments, a big-named director, and Tom Hanks providing the voice and mocap animation for several roles, the film struggled at the box office, getting swamped by another animated film, The Incredibles, released five days prior. Around this time, the concept of the Uncanny Valley entered the public mind.

The Uncanny Valley is a theory that most game artists (especially modelers and animators) are well aware of now, but it wasn’t always the case. Around the same time The Incredibles was trouncing Polar Express in the box office, too many art directors believed real games made for gamers had to chase photorealism in order to be successful. World of Warcraft eschewed all of that for a cartoony appearance, and in doing so blew past all the competition and expectations. Three years later, Team Fortress 2 would do the same for a shooter market that had previously obsessed over realism to an insane degree.

Realism is a choice, both for artists and for designers — but it can also be also a trap, and one that is perilously easy to fall into. In art, chasing realism is expensive — technology can provide incredibly lifelike visuals now, but it’s also increasingly expensive and time-consuming to generate that content, and the end result is a screenshot that looks not all that different from competitors who are also chasing realism as an end goal. But realism isn’t just a pitfall for artists — game designers also flirt with realism as a source of inspiration for their game mechanics, often with staggering implications to their game designs.

The unwary designer can get into trouble by trying to follow realism too closely. Making a scene look realistic doesn’t necessarily make it look more beautiful, fantastic, or intriguing. Similarly for designers, a game mechanic that is realistic doesn’t necessarily make the game fun.

A common way that this makes itself evident inside our game designs is the rise of sandbox games. Once a mechanic largely limited to strict simulations, the success of Grand Theft Auto has resulted in game designers trying to shoehorn sandbox design principles on almost every genre of gaming. In sandboxes, players are free to go anywhere and tackle content in almost any order, rather than be drawn along a linear game path with unreachable areas blocked off by unrealistic obstacles or invisible walls. True, it’s more realistic, but it’s also more expensive to build and test that world.

And even if it weren’t, sandbox gameplay may fight with other tenets of the design. For example, most players get confused and overwhelmed when told to find their own fun, and systems need to be devised to lead them to interesting activities. Compelling narratives are harder to tell, because designers lose control of the order and flow. Sometimes issues are more insidious: Burnout: Paradise‘s open world structure made it difficult for players to attempt to do the same race or challenge twice in a row, as many racing game players want.

Are sandboxes inherently bad? No — some of the finest games in the world are sandboxes. But injecting this level of realism into a game has very direct repercussions on the cost and design of the game that the designers must be mindful of.

In the early days of Everquest, it was not uncommon to stumble upon another player in the wild who was throwing himself off a short cliff over and over again while spewing gibberish indecipherable to passers-by. Use-based advancement was to blame: While most of Everquest‘s advancement model was centered around a classic level-based advancement system, the non-combat skills like “Language” and “Safe Fall” advanced as the character performed in-game actions. Thus, our mysterious cliff diving tonguespeaker was someone whose character was, ostensibly, learning new trades.

The ironic thing, of course, is that these use-based systems are designed to be realistic — practice making perfect, and all. Some players and designers are bothered by the idea that you can learn how to speak Orcish by killing kobolds until you gain a level. A learning-by-doing system makes perfect sense to them.

But in practice, learning-by-doing falls into sort of an uncanny design of game mechanics. Efficient advancement in a use-based system often nudges people to perform odd gameplay that is frequently repetitive as well as not particularly fun. Rather than feeling natural and elegant, the game mechanic feels unnatural and contrived, and worse, draws attention to itself in the process. Learning Orcish by killing kobolds may not be terribly realistic, but at least at no point is the player being asked to do something he didn’t want to do anyway.

There’s a lot to like about Gotham Central. The DC comic was a police procedural set in Gotham city, and tried to describe what it was like to be a detective and have to clean up after Batman and Joker slugging it out amongst the rooftops. The comic ran for 40 issues, earning meager sales but strong critical praise. Those who loved it often cited the series’ gritty realism. Which is interesting, given the series still hinges on a man who fights crime dressed as a bat.

A lot of times, people think they want realism when what they really crave is internal consistency within a given universe. Gotham Central feels a lot like what happens if you merge the classic Dark Knight with gritty TV cop fare like The Shield. The goal is to make the rest of Gotham as real as possible, and the end result is a world where Batman is still amazing and mysterious, without becoming silly or ludicrous. He feels possible — even though he’s not.

Immersion is the goal. The player should be drawn into your worlds and experiences. Realism is good when it supports immersion, and bad when it gets into the way. For example, most single roomed buildings in games are huge, often with 18 foot ceilings. It’s not realistic, but the player rarely notices. On the other hand, he always notices when, in a small room, the camera moves in too close to see or do anything.

Jumping is an interesting place where realism and gaming diverge. Most games that have jumping allow ludicrously high jumps — often a character can leap 6 feet high from a dead stop, because it feels right (see Inner Product November 2009). But recently, some action games — such as Gears of War — have been experimenting with not allowing jumping, since jumping around like a jackrabbit in heat isn’t particularly realistic. For the most part, these experiments have been successful — until the player finds an obstacle that he can’t jump but could in real life. Even worse, he could clear it by five feet in a game that allows jumping. The obstacle feels unrealistic, and worse, noticeably so. It’s a problem because it breaks immersion.

To some degree, the realism we are bound to is determined not by real life, but by our forerunners. Hit points linger as a concept because most games teach us that you usually hit what you swing at, but fights shouldn’t be over instantly. When an NPC tells you to “hurry,” he doesn’t mean it unless a timer appears on your screen. Rocket launchers aren’t just great weapons, they’re also solid ways to propel yourself up to a hard-to-reach ledge. But it’s not just games — most gun effects in shooters sound more like they do in the movies than they do in real life, because the theatre is where most players learn what automatic gunfire sounds like.

In all these cases, following unrealistic conventions can make the games feel better than taking a more realistic approach that breaks player expectations. Worse, breaking convention can make the game feel less realistic, even though it is more so.

Designers make concessions to realism all the time, of course. In the real world, it only takes one bullet from an assault rifle to kill a man. Building a breast plate from raw iron doesn’t happen in less than 10 seconds. If you get brought near death by the jet of a flamethrower, you aren’t likely to be hopping back into battle after a couple of first aid kits. This is before we get to the inherent fantasy of the worlds we build: worlds full of dragons, gangsters, or battle cruisers. And lest we cut out the mundane — short of The Sims, no games require your characters take bathroom breaks.

But realism can enrich a game as well. An MMO that has crafting can have a much more realistic economy than one that doesn’t, even if the mechanics of crafting aren’t realistic. An assassin that trades in poisons feels more real, even if game balance requires that poison be a minor damage over time effect instead of being immediately lethal. Bouts of Madden that end with scores like 30–27 feel more real, even if it takes five minute quarters to keep the scoring that low.

At the end of the day, players play games escape the real world, so designers shouldn’t be such a slave to it. Players are hoping to live a fantasy provided by the game designer. Good games make those fantasies as immersive as possible, but they don’t always do that by making them realistic. Sometimes, too much realism gets in the way.

Posted on Leave a comment

Microsoft facing lawsuit over alleged HoloLens patent infringement

Microsoft is facing a patent infringement lawsuit over the technology used in its mixed reality headset HoloLens.

According to Engadget, the Connecticut-based company HoloTouch has come forward, alleging that the HoloLens’ imaging tech infringes on two of its own decade-old patents. HoloTouch also says it reached out to Microsoft about a possible partnership as early as 2006 without response.

The company again reached out in 2015 and 2016 to discuss a licensing agreement for its own patents, something Microsoft reviewed and declined at the time.

The court documents detailing the suit say that Microsoft filed a patent for the tech used in the HoloLens in 2013, citing HoloTouch’s patents as “prior art”, something that the suit says is evidence that Microsoft was aware of patents it is now accused of infringing on.

One of the allegedly infringed patents covers everything from holographic image generation to specifics of projecting and interacting with holographic input devices such as keyboards. Across both patents, HoloTouch says Microsoft has willfully infringed on 13 claims overall. 

As a result, HoloTouch is seeking a jury trial in hopes of being awarded damages from Microsoft for the alleged infringement, though no amount was given in the initial filing documents. 

Posted on Leave a comment

Steam Autumn Sale 2017 – The Steam Awards is Back!

The Steam Autumn Sale 2017 starts now, with great deals across the Steam catalog throughout Black Friday and Cyber Monday*. Come back every day to see new featured titles, or check out the games that are recommended for you.

In addition to discounts on thousands of great games, join the nomination process for the Steam Awards. Nominate your favorite games across a variety of categories, and earn profile XP and badges for participating! Your nominations will help determine the finalists for each category. In December, you can vote on the winners for each category during the Steam Winter Sale. Learn more about the Steam Awards here.

*Offers end Tuesday November 28th at 10am Pacific.

Posted on Leave a comment

Mass Effect’s dialog scenes were inspired by British sitcom ‘Extras’, says former dev

BioWare’ original Mass Effect turned 10 this week, and to celebrate the occasion animator Jonathan Cooper took to Twitter to share some trivia about the game’s production — including that its iconic over-the-shoulder dialog sequences were directly inspired by the British sitcom ‘Extras’.

It’s probably the most fun of the “10 fun facts” the animator shared, but all are worth a read given that Cooper (who now works at Naughty Dog) worked on Mass Effect and Mass Effect 2, both of which were celebrated for the quality of their dialogue-driven narratives and the strength of their characters.

In fact, sometimes it sounds like the characterizations may have been a bit too strong, as Cooper recounts a story about how one actor actually punched another in the jaw while performing (for motion capture) a scene in which the Mass Effect character David Anderson punches the Ambassador Udina character.

“During this climactic scene of Anderson punching diplomat Udina, cinematic lead Shane Welbourn, (suited up as Anderson), accidentally clocked the Udina actor on the jaw,” wrote Cooper. “I had to work with the poor chap shortly afterwards and he was less than impressed.”