A virtual-reality archery game for HTC Vive
Game design, UX, sound
JAMES PAI, justin pai, Joshua Jones
unity, C#, photoshop, illustrator, audacity, HTC Vive
Bowslinger is a virtual-reality archery game for HTC Vive that allows players to practice their bow & arrow skills in a collection of target-based minigames. It was commercially launched on Steam to coincide with the Vive release (April 5th, 2016). Created by a team of three, this was our first foray into virtual reality game development.
My responsibilities on this project included game design, user experience, and sound. Having joined the project after initial conceptualization had begun, I focused on fine-tuning game mechanics through user testing, providing sound assets, and creating all branding materials.
The project began as I was lucky enough to win an HTC Vive Pre developer kit as part of a contest that also allowed me to attend the SteamVR Developer Showcase in Seattle. The exhibiting developers and their variety of projects inspired me to create my own VR experiences, and I teamed up with my brother to familiarize ourselves with this new technology once I got my hands on my own headset.
While we were already familiar with Unity for traditional game development, getting started with VR for the Vive was a different story that required a bit of a learning curve to get going. We already had wild ideas about what could be done, but we quickly created a few simple interaction experiments to get the ball rolling. These experiments ranged from pool cues to lightsaber throwing and helped us understand what kinds of interactions worked well with the Vive's novel controllers.
Since we were developing on the side as a hobby, we decided to start off by creating a simpler game as our first VR project and allocate a tight schedule for development. Archery target shooting was chosen as the core concept since it suited the motion controllers well and also worked well with limited play space (which we heard as a concern at the time). We wanted to create a stylized archery game with a bow & arrow interaction model that felt realistic but easy to pick up. Furthermore, we wanted players to focus on improving their accuracy and speed.
The motion-tracked Vive controllers lend themselves readily to complex interactions involved in archery, but the "correct" way to design such actions such as drawing an arrow was not as obvious. Do players prefer to pull an arrow from behind their back? Where might they reach for an arrow? How would they grab it? These sorts of questions required us to create rapid prototypes and test them with real users for feedback.
We believed that bow & arrow mechanics would make or break an archery game, so this was one interaction that we had to prioritize and start prototyping as soon as possible. We started out with a simple interaction of pulling an arrow from behind the head, pulling it on the bowstring, and releasing. As we began testing it ourselves and with friends to gather feedback, we iterated on this interaction and added more nuances to make it feel not only more realistic but comfortable and satisfying.
Later on, we would continue on to prototype various game modes and new features.
- players often hit the headset with the controller when pulling back arrows
- continuously gripping the bow can be physically straining
- players often miss the point to nock the arrow
- players are divided in preference for drawing arrows
- offset the arrow to prevent controller-headset collision and added translucent controller models to increase controller awareness
- added toggle to automatically grip bow
- increased nock hitbox and automatically snap arrow based on both alignment and proximity
- added option to switch to simplified quiverless mode that only requires pulling back on the bowstring to draw an arrow
VR playtesting was something I had never conducted before and was a great learning experience. For example, one has to take into account the user's experience with not only VR but also real-life archery, since these will influence the way they interact with the virtual mechanics. We also learned that in VR, accessibility matters more than ever; even for "normal" variables such as player height.
We hooked up an external display to the headset and set up a large playspace where we could simultaneously observe what the players were doing in game as well as in real life. This would allow us to understand potential pain-points as their actions match up with in-game mechanics. We would then present different interaction models and be able to tweak parameters on-the-fly for feedback.
Our initial playtests helped us nail down the bow mechanics before moving on to work on game modes and other assets. We started by prototyping a challenge mode then a handful of other modes while conducting informal playtests along the way to make sure we could account for different skill levels.
Meanwhile, art and sound was continuously refined and added to the project. I also spent time exploring more experimental features such as a physical radio to play in-game music and a spectator camera that could be attached to arrows.
Approaching UI in VR was an interesting experiment since it does not yet have the established patterns that traditional UI has that we see across the web and mobile apps. It seemed reasonable to place the UI within the virtual world where it is easily accessible but can still be ignored if desired. This led us to create a target-based menu that navigates between minigames on arrow hits. This interaction proved to be intuitive and unmistakable with players in user tests, though it requires a certain baseline level of skill to use. Because of this, a controller-based toggle menu may still be a better option.
The name Bowslinger was chosen from a brainstorming session and I began creating branding materials to promote the game, including a logo, gameplay trailer, and promotional images.
We sent a playable demo build over to Valve and were thrilled and nervous when they approved us for release on Steam and in time for the Vive launch. Every last hour before our scheduled release was spent making further tweaks and bug fixes to the build, but the result was our first game launched on Steam.
VR as a technology is a new frontier that demands careful interaction models that consider how intuitive physical actions map to controllers in a virtual space. Moreover, designing virtual reality experiences that are both usable and satisfying requires careful evaluation with users and an open mind for new factors that are generally overlooked in traditional testing for apps and games.
Launching a game on Steam was a huge deal for us and was as exciting as it was nerve-wracking, but having done so was quite rewarding as well as a tremendous learning experience that will only help us improve in future projects. While there were decisions throughout the project that could have gone better given our constraints, we are proud of what we accomplished and are looking forward to supporting Bowslinger and future VR projects.