Solitude is an attempt to reflect on a potential relationship between artificial intelligence and humanity. We wanted to fully capture the feeling behind being entirely alone with just a computer, but also suggest that maybe Artificial Intelligence is a close ally. We used Virtual Reality to provide the immersive aspect of the game, and we especially wished to convey the sense of isolation and loneliness that comes with being trapped in outer space. In our experience, we sought to answer fundamental questions and cover important topics, toying with ideas such as "Is A.I. a replacement for humanity? Is A.I. better than humans? Can it provide the same sense of comfort as a human"? We wanted to make a profound experience, and we did exactly that.
What it does
You are a captain aboard a ship in space, starting after a major battle in which your crew was wiped out and your ship is left badly damaged and far from home. The game begins with ANNA, your computer, reading battle reports and informing the player that they are the only remaining beings on the ship. After a brief tour around interface, voice commands, and your ship, ANNA informs that there are several hostile ships approaching and you will have to fight them, thus ending exposition.
You are forced into combat, and using the Razer Hydras as an input mechanism to select targets for ANNA, you can destroy attacking ships. ANNA then explains that destroying ships helps you gather resources from the ships to boost your own stats and obtain upgrades. You will be forced, at each stage, to choose between Individual or AI upgrades. In this sense, you can either improve your own ability, or improve your computer's power. Eventually, you will have enough parts and upgrades to go home, but you will have to make a fundamental choice: Humanity or Artificial Intelligence.
You are informed that Earth has stopped supporting Artificial Intelligence and is mandating that you disable ANNA. You must then choose whether to "Kill" Anna and return home, or fight against humanity and their violent punishment for disobedience.
If you kept ANNA, you leave Earth and are denounced by humanity. You must fend them off in an attack, but ANNA easily protects you if you upgraded her. You place ANNA in charge of the ship, and she proceeds to install on other Earth ships, creating an army of Artificially Intelligent ANNA ships.
If you deactivated ANNA, you will have a final battle with invaders, this time without ANNA aiding you. Earth will be in communications saying they’ll send reinforcements. But you have to keep them away until then, relying only on your individual commands. Waves of reinforcements could enter and die fighting the invaders, while you know full well that if ANNA was there the battle would quickly be over.
How I built it
We built Solitude using the Unity Game Engine as our main interface. The models were made using Maya software, and the hardware we used included the Oculus Rift and the Sixense Razer Hydras. The language we used was C#.
Initially, the work was split simply into three categories: Razer Hydra control, modeling, and plot. We focused a lot on plot to ensure that we could convey our message about artificial intelligence clearly. However, as more tasks came up, more work was needed to be done. Tasks consisted of creating the space environment, importing assets like asteroids and planets, finding a way to implement ANNA's speech, managing the queue for ANNA's attack, modeling the user and enemies ship, animating the flight and movement of the ships, and the upgrade system for both the user and ANNA.
The upgrade system was carefully thought out so that ANNA's updates were more likable because, as a computer, her's were more advanced than a human.
Player upgrades include laser cannons for continuous lasers, shields to absorb damage, homing missiles, and full manual control.
ANNA upgrades include more RAM for bigger queues, targeting for multiple attacks, control of enemy ships, and full autonomy of the ship.
Challenges I ran into
Solitude was an incredibly ambitious project, for we started with a goal of making a beautiful, deep, and profound game. The size of the project alone was a major challenge, and even though we remained optimistic, we were forced to drop some crucial features in order to finish on time. One of those features included voice control, a mechanism we wanted to use to help the player communicate with ANNA.
Accomplishments that I'm proud of
In the end, we still accomplished more than we could've dreamed of. We were able to make a game that could force critical thinking and deep analysis of artificial intelligence and humanity as a species. In this sense, we created a VR experience that transcends itself and serves a greater purpose in the community.
What I learned
We learned a lot about importing Audio into scenes and using it in order to create ANNA's voice. We also discovered a fair amount about multithreading and race conditions as we dealt with multiple ships being targeted at the same time. Above all else, we discovered how difficult it is to truly implement a meaningful plot. In the end, we were fighting as hard as possible to keep Solitude from being just another "Space Game".
What's next for Solitude
Solitude has an incredible amount of potential, and we want to make that happen. First and foremost, we want to finish adding upgrades to the game, such that they're fully fleshed out and functional. We then want to make sure our message is communicated clearly to audiences that care. Of course, we also want to implement voice control and beautify what we already believe to be an incredible experience. The possibilities are endless, and we hope to continue working to create something that has meaning to us and hopefully to others.
We would like to get the voice control working in Virtual Reality because that would improve user interaction with the 'AI' ANNA. Furthermore, we would like to implement more upgrades for the player and ANNA so there can be a larger variety of options for user choices. One of those is the control. While we ran out of time to implement it, we believe that it is a good idea and would like to follow through with it. There's even a turrent we were suppose to attach to the sides of the user's ship but again also ran out of time. But I feel we made such good progress that we are still excited at the outcome!