A Look Back at the VR Design of Archangel: Hellfire

This blog post is about Archangel: Hellfire, a competitive multiplayer VR game that I worked on at Skydance Interactive during 2017-2018. We were given the task of creating a follow up to our single player VR narrative game, Archangel. We took some of the art assets from the original title but programmed and redesigned most of the game systems from the ground up. After a year of hard work, we were about ready to wrap up Archangel: Hellfire.

Archangel: Hellfire is a valuable case study because we were forced to push against the grain of standard VR first person shooter games. Hellfire’s premise (as a cockpit-based mech game) allowed us to focus a lot of our development time on game design rather than VR specific feature development. By dialing back the amount of simulation and touch control based interactions, and iterating on combat mechanics, movement systems, and multiplayer gameplay experience, we discovered several valuable insights into VR game development in general.

Design Principles

Every time new hardware technology comes out, developers are pressured to prove its worth by designing products that showcase what it can do. The problem is, there is no truth in the idea that using all of the new features of hardware makes for good software. Sometimes it does, but in the case of a VR game, we are dealing with such a big jump from a regular video game that everyone stands to benefit from taking a step back and contemplating what is truly advantageous about gaming in a VR headset. With so many new options for things that you can do in VR, it is easy to let your imagination run wild and think of a million different things you can simulate (steering a wheel, shooting a gun, flipping a burger, petting a cat, bowling a ball etc…) However, perhaps it is better to momentarily forget all of that, and think about what it takes to make a great game that uses only a few features afforded by VR and mostly aims to be something people actually want to play more than once.

Popular culture gives a wildly inaccurate representation about the capabilities of VR, as well as the function of VR in a contemporary setting. Thus, people tend to gravitate toward the marvelous aspects of VR and have unrealistic expectations about what it should be. You will hear over and over “The technology will get there.” But if you think about it, the current technology is pretty great if you just use it correctly. Films like Avatar and Ready Player One plant the idea that the ultimate gameplay experience is one in which you inhabit a virtual body which feels and functions exactly as your own – and then you engage in warfare. In this way pure VR is the truest simulation of the most treacherous of human experiences. But you must ask yourself – is this really better than what other experiences have to offer? We already have sports: football, lacrosse, paintball, hockey, and these activities already give all of the violent adrenaline you could ever ask for. Reading a great book can be more immersive than any technological experience on earth, and it requires zero technology. Given this, what can we achieve with the VR technology we have today without assuming that a future version of VR would be automatically better?

Did we already run out of ways to create great games on PC, console, and mobile? Market trends would suggest not. 2017 revealed a complete reinvention of the first person shooter, PUBG and the battle royale style. By simply changing around a few systems, Brendan Greene and his team at PUBG Corp were able to take the world’s gaming community by storm. People are completely content playing games on their desktop in their living rooms. There is no real market demand for something more immersive than screen based gameplay. When contributing ideas to Archangel: Hellfire, I always kept this in mind. We were creating a game that not only competes against other VR titles, but also regular first person shooters like PUBG. Why would someone want to try our game when they could just keep playing Fortnite? Being in VR is not enough. 

Image result for roomscale vr

At first experience it seems like walking around in a room (standard HTC Vive room scale VR) with a headset on your face and getting to interact with a 3D virtual space is the coolest thing ever – you feel like you are in another world! You can crouch to dodge bullets flying at you. You can pick up a coffee cup and drink it. You can throw a plate at your grandpa. You have never experienced that before, and it feels so visceral! Who would have thought this could be possible? Except unless you are at a location based experience like “The Void” you realize you are confined to a 40 square foot virtual cell which limits your ability to travel through virtual space unless by awkward teleportation or weird floating. If you look at the history of video games, the vast majority of them involve traversing space in an engaging way. Room scale VR immediately revokes that possibility. The novelty quickly wears off. Games tend to be based on moving through levels using a joystick or directional pad. Movement and world exploration is a core part of engaging gameplay, and the first thing room scale VR hardware did was make that a low priority by necessitating that your physical space (which is more often than not limited to a tiny room) match the virtual space in order for movement to be intuitive. The solution to this situation is free movement VR experiences with deep game mechanics that focus less on VR quirks and more on gameplay. Thanks to the Oculus Rift touch controllers, we were able to able to execute this solution in Archangel: Hellfire.

Movement and Motion Sickness

In the first several months of development, the biggest challenge that we faced was the implementation of a movement scheme that was fun and did not make the player sick. The original Archangel game was a rail shooter so there was no user-controlled movement. When we were given the opportunity to make Archangel: Hellfire, we had to design and program a movement scheme from scratch. Initially, we were going to try to make a control scheme that worked well for PSVR, Vive, and Oculus Rift. Because the PSVR touch controllers do not have joysticks or directional pads, we were trying to design a way to handle motion via waypoints and other non traditional modes of input. After 3 months of experimental development, many arguments, and iterations on different waypoint systems to accommodate the PSVR touch controllers, we gave up, and decided not to include PSVR in our designs. Our executives noted that the waypoint controls were awkward, and not reactive enough for people accustomed to FPS style movement. Because of its joysticks, the Oculus Rift handled great. The Vive would handle about the same as the Rift but slightly worse due to the controller’s touch pads and lack of accessible buttons.

Image result for oculus rift

Our entire development cycle was focused on the Oculus Rift. The game would be playable on Vive. But by focusing on the Oculus Rift, whose controllers are most similar to most console controllers, we were able to line up our sights on making an intuitive control scheme. It was about 6 months into development when we settled on what our game’s core design would be, and that is when development became quite fun.

At the time, our game is unique because you move fast, jump, fly, and spin all over the place and you never feel nauseous. We spent a lot of time trying to make the best movement scheme possible, and we were constantly fighting against the specter of nausea invalidating our designs. Nonetheless, by disregarding popular opinions, taking risks, and making thousands of small adjustments, we achieved something nausea safe and highly functional. 

Gameplay and Combat Design

Image result for edmund burke

Edmund Burke, an 18th Century Scottish Philosopher and Politician, wrote about beauty and the sublime. One of his claims was that a metaphorical poem about hell will emotionally affect a human more than a perfectly detailed painting of hell. It is a general premise that giving a clear picture of something is actually less pleasing to the human passions than an obscure (verbal) depiction. Obscurity ignites emotions more powerfully than does clarity.

When developing VR features, the granular control afforded by touch controllers prompted every single first person shooter developer to add in hyper realistic, gesture and motion based gun mechanics. You could pump your shotgun by moving your hands to and fro, manually place a new clip into your gun, rotate the chamber on your revolver in order to empty all of the casings, aim down the scope of your gun while you awkwardly bump your headset into the controller. In short, the developers of many of these games tried to make it feel like as close to handling a real gun as it would be in real life. They were simulating what it was like to use a gun. This was certainly endearing to those who knew how guns worked, but it eluded a very particular point – simulation is usually not the thing that sells. In contrast, simplicity is entertaining and accessible to everyone. I would argue that Burke’s claim of the clarity vs obscurity is analogous to simulation vs. representation in game development. Coming up with a good representation of something in a game often ends up being more entertaining than simulating its functionality with exact precision to reality. In Hellfire, we skipped a lot of potential VR weapon simulation so that we could throw players straight into the action, so that we could toss a stick of dynamite on their laps.

VR needs accessibility and replay-ability. When I played most of the gun simulator VR games, I could hardly figure out how to kill an enemy, let alone traverse through the menu screens. This made me realize what I wanted for Archangel: Hellfire: get into the action as fast as possible, make the game so intuitive that a first time player will effortlessly rack up kills and feel like a boss. No simulation or gestural interference necessary.

Image result for counter strike crosshair

There is a quote by Quentin Tarantino that goes something like this “When I make movies, I light a stick of dynamite and throw it in the viewer’s lap.” Ingmar Bergman said something similar, “My films must always retain the purpose of entertainment, even at the peak of their ingenuity.” I like these quotes because at the end of the day, video games are also an industrial art form and must be profitable and entertaining in order to persist as a medium.

When we take a step back and look at the top selling first person shooter franchises in history (Halo, Call of Duty, Counter-Strike) they did not simulate anything. Tap a button to reload, and use a crosshair to see where your bullet is going to go. You do not get a crosshair in real life, yet every single great first person shooter uses one because it is a great representation of how to aim a gun. Adding VR gun simulation is sacrificing a lot of space in our innovation economy because it is different from prior successes. If you are going to make your game about gun simulation, there isn’t going to be a lot of room or time to add in anything else unique or interesting. How much bang for your buck are you getting out of a unique feature? We decided that gun simulation was the least important fun factor in our game, so we did not even attempt it. Like Archangel, Archangel: Hellfire uses on screen crosshairs that project from the touch controllers out into the world. Even though you never get to hold a gun, Archangel: Hellfire is more similar to gun based console shooters like Call of Duty and Halo than any of the other VR games because it represents shooting instead of simulating it. We were fortunate that having a mech game essentially forced us down this path due to the fact that you are in a cockpit instead of on foot. Admittedly, shooting a gun in VR is enjoyable, but not having to worry about gun handling in Archangel: Hellfire allowed us to elaborate on other aspects of game design.

This concludes my review of the design behind Archangel: Hellfire. I felt compelled to share this year old writing, which would have otherwise remained unpublished on my google drive, because all of this thought leads directly into the game design of Extreme Tactical Executioners (xTx), the game I designed and programmed with Baby Rage Games. Had I not worked on Archangel directly before xTx, I would not have approached the game with the same design sentiment on “minimal VR features and maximal game features”.

Book recommendation: “No Ordinary Time”, by Doris Kearns Goodwin for an informative look into the presidency of Franklin Delano Roosevelt.

Becoming a Game Developer in LA

Chapter 1: The Value of a Dollar

On a Saturday afternoon in a Mandeville canyon residential courtyard, I was conversing with one of my mentors about why game companies fail so often. After some careful thought, Nolan Bushnell set down his dry martini and made an aphoristic declaration: “A successful business should be focused on generating outcomes, not just ideas or intentions.” What he meant was that when you decide to build a product or start a company, you have to envision how to generate a real outcome as fast as possible. A real outcome is a finished product that puts money in the bank. If you are not dead set on getting money in the bank as soon as possible, you should not start a company. If you meet someone who is not dead set on getting money in the bank as soon as possible, do not go into business with them. You should always err on the side of pragmatism, especially when you are young.

If you want to make an original game, you need investment capital. Video games are an industrial art form and they ordinarily require lots of teamwork combined with lots of money to yield a successful result. In order to receive investment capital, you need to have already made money off of a game and proven that you know what you are doing. If you have not already made money off of a game, you will not receive investment capital – unless you have great connections.

The reality is that people do not understand how hard it is so make just one dollar doing what you love. It is a major achievement which takes time, experience, dedication, and repeated failure. Even the most creative or artistic person must confront the reality of having a solid revenue stream if he or she wants to get serious about having a lasting creative career.

The ultimate challenge in video game development is making enough money from your own games to continue to make more games without having to do contract work. Like any problem, it can be dissected and broken down into constituent parts. One part is that people do not have a basic need for video games. In order to sell a video game, people have to be convinced that they need it. Here are a couple of ways that someone could be convinced that they need to buy a game:

  • Joe has a crush on a girl named Sally who likes a certain game called Fire Dash. Sally loves talking about Fire Dash, but since Joe has not played it, he cannot keep up the conversation. He goes home and buys Fire Dash just so he can have a better conversation with Sally. Sold.
  • Wendy’s little brother has a birthday coming up. He likes video games. She asks a store attendant for a recommendation. The store attendant says Fire Dash is the perfect gift. Sold.
  • Alex wants to be in the know regarding the latest indie games on the market. Fire Dash comes up on Steam as a top new release. Sold.

It is obvious that there is a market for video games. A huge one. But achieving the aforementioned sales scenarios in a saturated market is very difficult and almost impossible for someone just starting out. Selling even a few copies of a game is incredibly hard. Finishing a game and having it accepted by an online store is incredibly hard. Working on a game by yourself can be a deathtrap.

The first thing you need to do in your mission to become a game developer is join a game company and work for someone else. This is the first step in getting experience and making connections.

If you are not qualified to work for someone else, work for free until you are. If you cannot afford to work for free, save up money until you can. Every obstacle is a problem that can be broken down into constituent parts. Getting a job at a game company is about being in the right place at the right time and having the evidence that you are going to add value to someone else’s team. To provide evidence, have sample work, prototypes, and a CV ready at all times. To be in the right place at the right time, well, you just have to move to Los Angeles.

Los Angeles is without a doubt the best place on earth to become a gamedev. Given USC’s constant stream of newly founded game projects, AAA studios including Riot and Naughty Dog, and weekly networking events helping newcomers integrate into the scene, if you are not in LA and you are trying to become a game developer you should pack your bags and fly out tomorrow “Mulholland Drive” style because no where on earth is there better opportunity for gamedev success than here in Silicon Beach.

No matter who you are there is a niche for you in this city. With LA’s rich history in art and entertainment you find a lot different types of artists, writers, and musicians coming into the game world making LA’s games the coolest and best. Video games are just beginning to be recognized as an artform capable of self expression. LA is a breeding ground for this type of direction in games due to its booming indie game developer scene concretized by groups like Glitch city a game dev collective or the youtube celebdevs like YandereDev. However, LA is a brutally isolating and unforgiving place. Between the traffic, urban sprawl, cost of living, heat, and generally closed off social climate, Los Angeles is the type of place to chew up and spit out a newcomer who does not have the hustle and thick skin to endure the dramatic ups and downs that come during the acclimation period. It is for this reason that Los Angeles produces such incredible works of art. People constantly struggle to exist – whether the struggle is social, financial or psychological, many people here are suffering and the only way to alleviate that suffering is by working hard.

Spending money is an essential part of living in most big cities and to spend money you have to earn it. The differences between earning 20k, 40k, 60k, and 80k per year are quite different. You do not become comfortably independent until you are making between 40k-60k, and you do not really get to buy things you want or save money until you make more than that. This is just for taking care of yourself. If you throw another person into the equation it is another story.

The reality of money hits hard in this city, but it is important to remember that everyone started out broke and that successful people are not expecting you to be rich. Even if you are not making a whole lot of money, if you are passionate, humble, hardworking, well mannered, and fun to be around, you will find that helpful people will give you the benefit of the doubt. These people will provide you with the support to find your path and make money off of a career that you believe in.

As a creative person, it may be easy to say “I do not care about money, I am just going to be an artist and dive right into an ambitious project and hope that it gets picked up,” but the unfortunate truth is that you will most definitely fail if you have that attitude, especially in Los Angeles. You need money to survive and connections to achieve your dreams, you cannot do anything on your own.

There are a lot of ways to become financially successful in LA, but if it means working with people you do not like or doing something you are not passionate about, you will find yourself with a state of depression and regret. People with power will see talent in you and want to keep you around so they can get a cut when all of your work pays off. These people will employ you or even help you out when you need it most. But they will also hold you back once you are on your feet. Remember that just because people appear to care for you does not mean they do. You have to be skeptical of almost everyone and truly get to know people before getting into serious business. The worst thing that can happen is going into business with someone who you cannot trust.

Book Recommendation: “Genealogy of Morals” by F. Nietzsche, for a look into the history of good and evil, good and bad, power relationships, societal organization, and the study of asceticism and its effect on the individual.

Riot Games: “Day in the Life” Blogs

Me via text message: How do you feel about company blogs?

Friend at Riot Games: They are the single most effective recruiting tool.

http://www.riotgames.com/articles/20160707/2315/day-life-software-engineer

The above link is an exemplar of blog as recruiting tool and company culture branding. Reading through it, we find out about a smart, self-motivated engineer who works at Riot’s Hong Kong location. What is particularly effective about this blog is the way in which the man’s day is scheduled and how it reflects both his personality and the company culture, the two things that prospective employee are going to want to understand before working at Riot.

407350-league-of-legends-windows-screenshot-two-vs-one-ryze-probably
League of Legends, Riot’s world famous title.

On the train to work, he spends time doing a little extra programming OR plays some mobile games. This shows that he is both disciplined but understands how to relax in smart ways that boost his knowledge in the games space: he is a go-getter. At work by 8am, we see that his morning is not too overwhelming, he gets communication and a bit of work in before the 10am meeting, programs hard until noon at which point he goes out to eat with his friends. When he gets back, he plays LoL against his co-workers until around two, he then goes into a deep focused programming session until around 5 at which point he works on his personal growth by researching tech or playing with Unity3D for his side project. Before heading home to his WIFE, he stops by a yoga studio to meditate.

Chalking up his day, this man only programs for two intense 2-hour sessions. The rest is communication, meetings, and leisure. You can tell that every day is extraordinarily well balanced and not oppressive in the slightest, and that this man is a highly productive, top talent, major value add who loves his job and lives an ideal life.
Riot is a billion dollar leader in today’s game industry and a forerunner of “zen” tech culture replacing the “crunch” video game culture of the past. Riot seeks to enrich the lives of its employees rather than oppress them, but the more important fact is that this could be a myth and perhaps there are many overworked employees at Riot. Nonetheless, the best game developers on earth are going to want to work at Riot simply because they heard the myth in the first place, a myth that is generated by word of mouth and blogs like this.

Book Recommendation: “The Power Elite” by C Wright Mills, for anyone interested in a fascinating look into the origin of neo-conservative beliefs.

Unity uNet [ClientRpc] to Update Color of an Object

I have been hard at work on my game Sentry Wars, a VR RTS for HTC Vive.

I struggled for several days trying to figure out how to update the Color of a Network.Spawned object, but I finally got it to work. The trick is that you have to call a ClientRpc from the Server, pass the color as a parameter, and have the color set as a [SyncVar]:

Screen Shot 2016-04-08 at 7.06.11 PM

In this case, SetMeshRendererColor is called from another script which checks isServer before calling it. GetBuildingColor in my case is just checking which player owns the building, and sets thisBuildingColor accordingly. Worked like magic. Thanks to Miller Tinkerhess and Zack Rock for helping me understand Client/Server relationships.

In other news, Mykolas and I are hard at work on our book about Pathologic, we have recently received advice from Gabe Durham of Boss Fight books regarding steps in completing a book of this sort. We are still gathering notes, reading up on additional resources, and coming to basic conclusions about how we want to approach Pathologic’s game design analysis. Mykolas found this gem: Pathologic Games as Art Manifesto which goes to show just how deliberate Ice Pick Lodge’s artistic intentions were when beginning the production of Pathologic – we definitely plan on citing this in the introduction to our book.

Book Recommendation: “Road Side Picnic” by the Strugatsky Brothers, for anyone who wants to know about an author who had a tremendous influence on Russian Film and Video Games, especially STALKER the film and STALKER Shadow of Chernobyl.

 

Unity3D: Creative Design Process

I recently developed a standardized design process for my team at BrainRush because we had so much design work that it needed to start being distributed to members that were not previously ordained as “designers”.

Screen Shot 2016-01-12 at 2.37.13 PM
A screenshot from one of our recent corporate games.

If you do not create a Design Document before implementing a design, you will find yourself conceptualizing solutions to problems while working rather than just quickly implementing items off of an already solved list. Determining development solutions on the fly can lead to lulls in attention of “what to do next” and make for a slower development process. Of course, a Design Document does not need to be followed in extreme detail, but it certainly serves to expedite the process of implementation and keep a nice record of work progress.

At BrainRush, we follow the Design Document template below to complete a design task: a creative task that a developer must complete before implementing a substantial feature into a game. Design Documents do not work for everyone, but in order for teams to share responsibility, trust one another’s design sensibilities, and maintain transparency of intention, it is always best to have a preconceived set of solutions and tasks before programming, modeling, and developing a feature.

Design Document Requirements:

  1. Written List of Core Design Elements
    1. All of the core pieces of programming functionality required for a design to work from start to finish
    2. All of the art assets that will be required for the design to be visually complete from start to finish
    3. All of the audio assets that will be required for the design to be aurally engaging from start to finish
  2. Synopsis
    1. A paragraph about how all of the programming, art, and audio will work together in the completed state of the design.
    2. A paragraph about major challenges or unknowns that will need to be confronted during the design process
    3. A paragraph about the goals behind the design and what the user will ideally experience with the completed version of the design
  3. Technical Design / Drawings / Flow Charts
    1. A technical design for a strictly programmatic design can be
      1. A highly detailed pseudo code word documents that outlines the functions and variables of each class
      2. A flowchart or diagram for the flow of input data, classes and their relationship to one another, and changes of state that may occur in the application.
    2. A level design, UI design, or 3D Art Design can be
      1. A hand or computer drawn sketch organizing the visual elements with text description of each element
      2. A series of images that represent the different visual states in which a design may appear and how they transition between one another
    3. NOTE: Hand drawn/written documents are encouraged and are to be photographed and uploaded to the design document in addition to written text of sections 1 and 2
  4. Submit the document for manager/peer review

 

Book Recommendation: “Drawing on the Right Side of the Brain” by Betty Edwards for anyone looking to improve their drawing and perception skills. This book provides foundational insight into how to interpret images you want to draw such that you can break them down into elements and procedures rather than feel overwhelmed by their complexity.

-Pablo Leon-Luna

What is caRPG-13?

caRPG-13 is the early prototype of a game in which human beings have all become hover cars and consume gas to survive. When a car runs out of gas, it dies just like a human would if it ran out of oxygen or food. Just like humans, these cars can also fall in love. I wanted to make a game where you felt romantic feelings toward a car while struggling to survive in an apocalyptic, resource starved, labyrinthian city. The goal of the game is to reach the top of the city and get into an escape pod before it is too late – time is always ticking and gas is always being spent.

carpg13.png
Encountering a Mechanic AI who can help repair broken cars

So far, all art assets in caRPG-13 are modified versions from a failed racing game I worked on a year ago – shout out to the artists who made these – you know who you are. The practical thing about using hover cars as humans is that you do not have to worry about animations of any sort, so you can focus on programming other features – in my case I am most interested in NPC AI and character interaction and how they can fit into a game’s design and emotional experience.

I am modeling caRPG-13 off of the famous game Pathologic by using resources vs time to propel the game objectives forward. However, unlike Pathologic which focuses on the simulation of a complex, evolving society, caRPG-13 will focus on character evolution over time and aim to derive narrative meaning out of non-static character interaction.

Pathologic024
A typical Pathologic character interaction

While Pathologic was a masterpiece, it left a little to be desired in terms of character interaction. With a whole cast of interesting characters all you could do with them was go into one of their houses and talk. These main characters did not move and could not react to you in physical space. In games, it seems that the most common way to interact with characters in a non-violent way is through quests and text trees. While these are a nice staple for storytelling, there are certainly many other ways to build relationships between characters – namely through physical action. What I want to do in caRPG-13 is experiment with a few new types of non-violent interaction between a player and NPC that may enrich the emotional consequences of player agency in the game. In my next blog post, I will talk about the romance that evolves between two lucky cars in caRPG-13. Please subscribe.

Book Recommendation: “The Death of Ivan Ilyich” by Leo Tolstoy, a novella for those who prefer to work hard and make tons of money rather than address their deeper personal issues.

-Pablo Leon-Luna