National Parks 101

An immersive VR experience designed to teach anyone how to safely
and responsibly enjoy the beauty of America's National Parks

April 9th, 2024

Week 3

Final Trailer

During our final week of development, we focused on polishing our game's map, interactions, and UI to improve players' experiences. We first improved our map's appearance by adding mountains in the distance to cover the black horizon of the scene's skybox. We also adjusted the terrain elevation around the park to better resemble the terrain in Yellowstone. For polising the appearance of the park, we also added different textures around the rivers and bodies of water and added more trees to make the terrain less sparse. We also adjusted the direction, shape, and placement of the rivers and geyser basin to appear more realistic. We then added more animals to increase the probability of players encountering different types of animals on the trails.

We then improved the players' interactions and overall experience in the game by fixing small bugs that were noticed during this week's playtest. Many of the bugs involved adjusting parameters in the code to make the player's experience better. For the geyser and raccoon interactions that result in death, we found that the parameters in our code resulted in these deaths to be triggered too easily, which players found irritating. To make the geyser death trigger less sensitive, we decreased the size of the colliders around the geyser basin that trigger death when overlapped by the player. For the raccoon, we decreased the distance threshold between the player's hand and the raccoon actor necessary to trigger death. Players also found that they would often pull the safety clip from the bear spray before holding the canister, which does not reflect how bear spray would be used in real life. In order to fix this, we enabled collisions on the safety clip child component on the bear spray when the player grabbed the canister and disabled collisions when the player dropped the bear spray canister. While these changes are small, they add to the overall immersion players will experience while playing our game.

In addition to tweaking the interactions, we also added sound over the animal walking animations so players can be alerted of an approaching animal. We also split the interactions associated with the bear into two types of bears commonly seen in the National parks, a black bear and a grizzly bear. In real life, people are instructed to use bear spray on aggressive grizzlies. For black bear encounters, people are instructed to make noise and raise their hands over their heads as black bears are more timid and can be scared away easily. This change allows the player to see the difference between how grizzly bear encounters should be handled versus black bear encounters. We also added additional death triggers to make the game more structured. Players now die and must restart the game if they walk into rivers or stay out on the trails past dusk. These death triggers further restrict where the player can travel to in the map as well as make the game more realistic to reflect the actual rules enforced in the National Parks.

This week, we also added additional UI to better guide the player through the game. We first added a main menu where the player can view the title of the game and its purpose before choosing a map to explore. We currently only have a map corresponding to Yellowstone National Park, but in the future, we would add other parks such as Zion or Yosemite. We then added a diagram of the Oculus controllers that maps each control to its function in our game. We placed this diagram in the main menu area as well as in the player's base camp in the game for easy referencing. We also added an equipment page to our guidebook that lists the three main items players will use during their time in the game and instructions on how to use them. We also included additional context for the checklist of hiking trails in the guidebook to make the objective of the game explicit and clear to the player. We also improved the appearance of the tip screen that appears when the player does something that is against the rules of the park but does not directly result in death, like leaving the trail. We included additional tips or messages that appear when the player uses bear spray on animals besides the grizzly bear. This is to reflect the importance of respectful behavior towards the parks and its wildlife.

In addition to polishing our game, we also worked to create a marketing trailer this week. By having a marketing trailer, we can easily present our product and its purpose to potential buyers. We also improved our website by removing the extra text on the homepage to make the viewer's experience better. We also added our trailer and a gallery section so that viewers can easily see what our game is without having to look through the devlogs. Lastly, we added a pricing page so that potential buyers can see the features included in the game and the cost. This pricing plan would allow us to sustain the current Yellowstone map as well as begin to develop maps based on other National Parks. Adding additional maps would allow us to expand our potential buyers and make the game more appealing for use by other National Parks besides Yellowstone. Our changes this week and last week have been focused on improving the educational aspect of our game. This makes our game stand out as a potential tool to be used by National Park outreach programs or visitor centers to better educate visitors about the rules in place to preserve both the parks and the safety of their visitors. During our four weeks of development, our game has become a fun and interactive way to learn about the best way safely and respectfully travel through the National Parks and the consequences of breaking these rules.

April 9th, 2024

Week 3

This week, we focused on making our game more structured in order to better reflect the game's objective, which is to educate players on the rules and proper etiquette in the National Parks. We first finished the player's guidebook by adding pages containing facts about each animal the player may encounter and the proper safety measures that should be taken. We also added a checklist of trails that the player can hike in the game. We first decided to base the map of our game off of Yellowstone National Park. We edited the map of our game to include three Yellowstone hiking trails: Lamar River Valley, Upper Geyser Basin, and Sky Rim Loop. After reaching the end of a trail, players will recieve a check mark next to the trail name in their guidebook. We also used trigger meshes over the trails to display a message encouraging players to stay on the trail if they leave the bounds of the trail. Next week we may implement a stricter feature that punishes players for leaving the trail.

We also focused on improving interactions and adding new features to make our game more realistic and educational. We started by changing our inventory system to resemble a backpack, where players can open their inventory, place their held item inside, and close it. This forces players to remember to pack the necessary items for their hike, such as bear spray and water. We also added a day-night cycle which we implemented using a timeline to update the map's directional light and a global time parameter throughout the player's time in the game. We also added a watch UI to the player's wrist that displays their hydration level, health, and current time. The player can sleep and reset the time to the beginning of the day by standing in front of their tent in the base camp. Next week, we will allow the player to reset their health and hydration by sleeping as well as add a mechanic that punishes the player for staying out on the trails past night fall.

In addition, we added a feature that allows the player to die after improperly interacting with an animal or not abidding to park rules. After dying, the player will be shown a message informing them of the reason for their death and ways they can prevent it next time. The game will then be reset, including the player's position and their progress on completing the three trails. By implementing this feature, players are encouraged to follow the rules of the National Parks while punishing them for unsafe behavior.

We also added two new animals to our game. The first is a rabbit that serves as being a background animal that flees if the player gets too close. In the future, we may add other background animals such as deer or fox to improve the player's overall experience in the game. We then added a raccoon that will roam peacefully around the base camp and occasionally approach the player to beg for food. The player must ignore the raccoons, as petting them will cause the player to die. This interaction reflects the reality in National Parks where animals that have become docile due to being fed frequently will approach visitors. This is a big problem as interacting with these animals can spread diseases such as rabies to visitors. In order to improve the realism of our game, we added models and animations for each of the animals in the game. We were able to find a fully animated moose on Sketchfab. We also found rabbit and raccoon models on Sketchfab with running animations, and we used Blender to add idle animations to both and a begging animation for the raccoon. We also added ambient sounds to reflect the noises of the forest, river, and geysers. We also added sound effects to the animal interactions and the other mechanics, like the water station. Next week, we will continue adding more sound effects as well as adjusting the volume of the sounds added this week to make the player's experience more enjoyable.

In addition to development, we also completed our research this week. We were able to interview our stakeholder to gain more insight on the current state of our game. We were told that current solutions for educating National Park visitors mainly consist of traditional education through outreach programs and signs throughout the parks. National Parks also rely on social media to educate the public about the damage to the parks. With this, we can see that the National Parks are not using products like ours to educate people, so we will continue to work on making our game as informative as possible to make our product a viable option for use by the National Park services. The main feedback we recieved about our animal interactions was that bears generally will not approach visitors. Although our game aims to prepare players for any possible scenario they may encounter in the parks, we will try to make the bears less aggressive in the game to better reflect their behavior in real life. We will allow the player to gain experience using bear spray to deter an aggressive bear, but we will try to make the player's encounters with a aggressive bears less frequent.

Next week, we will work to polish the models, features, interactions, and UI in our game. Our main goal next week will be continuing to improve the educational aspect of our game. We will add UI that explains the controls of the game as well as park signs and other UI that include additional facts about park safety. We will also make the map less sparse by adding more variety to the terrain as well as making animal spottings and interactions more frequent. We will also localize certain animal interactions to different trails to add to the uniqueness and variety of the different hikes.

April 2nd, 2024

Week 2

We started our second week of development by adding audio capture functionality to our base animal class. This will allow us to easily create overriding functions within each derived animal class to allow them to handle audio input from the player accordingly. We can now create various noise based interactions in our application to add another layer of immersion and teach users valuable skills. One future interaction we plan to create is to have players maintain a low and steady amount of noise throughout the hike to warn otherwise harmless wildlife of their presence, to prevent startling them. Additionally, we may add dedicated wildlife viewing zones where silence might be encouraged to prevent the users from disrupting the animals.

This week, we mainly focused on improving the player's interactions with the bears. We first worked on making a more realistic bear spray, where players must remove the safety to use the spray. After removing the safety, players can freely use the spray to deter bears using the trigger button on the right joystick. We also used a Niagara particle system with an added mist texture to create a more realistic looking spray that shoots from the canister when bear spray is used. When the player aims the spray at an attacking bear, the bear will now flee from the player. We also implemented motion tracking to detect when the player raises their arms over their head. When players perform this action while being attacked by a bear, the bear will flee. We also used the audio capture feature described above to allow the player to scare away aggressive bears by raising their voice near the bear. In addition to improving the bear interactions, we also added in a bear model. Using Blender, we were able to add animations to a rigged model found on Sketchfab. We added three animation states to the bears in our game: an idle state, walking state, and an attacking state. While the bears typically roam around the park, if an aggressive bear gets too close to the player, it will trigger the attacking animation and damage the player.

We then added a UI inventory bar for the player to store the items they may need throughout their time in the game. The player can view and choose items in their inventory bar using the right thumbstick. When an item is chosen, its icon in the inventory bar will become opaque, and the object is spawned in the player's hand for use. Currently, we have three objects in the player's inventory: bear spray, water bottle, and an air horn. In the future, we will likely add the ability for users to add an item in their inventory by picking the object up in the game.

We also implemented a survival feature that forces the player to drink water to maintain hydration throughout the game. Players will lose hydration as they play our game, and they can view their hydration status by looking at a UI panel attached to the player's wrist, similar to a watch. If the player has water, they can drink by holding the water bottle up to their face while tilting the bottle upside down. We implemented this feature by detecting a collision between the top of the water bottle and the camera and checking if the bottom of the bottle is raised higher than the top of the water bottle. When the player drinks water, the volume of water visible in the water bottle will decrease while the player's hydration bar refills. The player can also refill their water bottle at one of the water stations placed around the park. We used Unreal's Niagara particle system to create a stream of water and an invisible line trace to check whether the player's bottle is being held underneath the stream. By refilling their water, the volume of water visible in the bottle will also increase.

Lastly, we implemented a basic moose interaction. Once a player moves within a certain distance to a moose, the moose will stop moving to observe the player. If the player moves far away enough from the moose, the moose will continue without any aggressive behavior. However, if the player makes any loud noises, the moose will charge and attack the player. In real life, hikers who encounter moose are instructed to slowly and quietly move away from the moose. Next week, we improve the interaction by tracking the player's speed; if the player moves away from the moose too quickly, the moose will be startled and attack.

In addition to developing our game this week, we also have identifed a stakeholder for our product. As a former employee of the National Park service, our stakeholder can provide us with insight to help us make our product as impactful as possible. Next week, we will interview our stakeholder to see how we can make the interactions in our game more realistic and educational. We also spent the majority of this week researching the potential social impact of our game. Overall, we found that as the number of National Park visitors increases every year, more and more safety issues arise due to uninformed visitors. In addition to safety concerns, we found that uninformed visitors often harm the land and wildlife within the parks by leaving the trails, littering, and mistreating the wildlife. We also found that there are currently other products similar to ours, such as Gander National Park and Qualium Systems Virtual Tours of National Park. However, these products focus on simulating the leisurely exploration of National Parks while our product aims to educate players through simulation-based learning while emphasizing park conservation ideas such as Leave No Trace. We hope that our final product can inform people of the proper etiquette and safety rules currently in place to protect both the National Parks and their visitors.

Next week, we will begin by fixing some of the bugs present in our game, the most prominent being the motion controls used by players in the game. We will also add more wildlife interactions as well as more features to reflect the safety rules of the park. We plan to add signs that can inform players of the important rules within the parks and a mechanic that punishes players for leaving the park trails. In addition, we will finish implementing an interactable guide book that the player can use to view facts about the animals they may see, instructions for safe interactions, and controller directions for each interaction. In order to create a more realistic experience, we will also edit the landscape to resemble a real National Park, add more animated animal models, and add sound effects to our game.

March 27th, 2024

Week 1

We got started on development by creating a basic environment for our game which included assets for trees, shrubs, sticks, and various landscape materials. We used Unreal Engine 5's landscape tools to sculpt hills and paint paths out of dirt material where the player will traverse through. After creating a basic environment, we built a small base camp where the player will start in by flattening out a clearing and placing temporary assets in it, including a tent. We then began coding basic animal AI and created a base animal actor which we used to derive bear, moose, and wolf actors from. The animal had basic roaming behavior which we accomplished by calculating random locations around the actor every few seconds and using the AI controller to move towards the locations. We also set up navigation mesh volumes so the animals will be able to navigate around obstacles like trees. For our first interaction, we began implementing a bear spray feature. We used an invisible line trace to allow players to ward off bears within a close proximity by pointing a bear spray canister at the bear actor. Because the game focuses on the player's exploration throughout the park, we also began experimenting with smooth player locomotion to simulate a more realistic hiking experience rather than using Unreal Engine 5's default teleportation mechanic. In addition to development, we put together a design document with various ideas for animal interactions and how we could help the user best react to various wildlife encounters.

Our plan is to have the player start in a base camp, then require them to complete various tasks in far away locations. The base camp will contain food and water (which the player will learn to store in high places to keep from bears) as well as equipment like bear spray and a revolver. As the player embarks on tasks to travel to various locations, they will encounter wildlife which they will need to know how to react to. The player will be equipped with a guidebook on wildlife, which they should study or look through as they hike. The book will have information like pictures, habitat, and maybe audio clips of various sounds and calls. The key part of the guidebook, will be information on how to react to certain wildlife, like standing high and spreading arms around black bears, or walking backwards slowly while avoiding eye contact for moose. These interactions will help train individuals to recognize what to do in stressful situations and prepare them for real life situations. This week, we discussed several possible stakeholders, with one being a certified wilderness guide. In the following weeks, we will begin to reach out to relevant stakeholders and develop a sustainable financial plan for our product

Next week, we will find better assets for our basecamp as well as put together story and context for each player outing. We plan to improve the basic bear spray interaction by using controller buttons to trigger the interaction, adding sound effects, and having the bear run away from the player rather than disappearing immediately. We will also improve the player's movement in the game by allowing for realistic movement over elevated terrain. We will also add an air horn that wards off bears and other large animals, as well as build basic survival features like thirst. We will also try to add features for various encounters, and implement ways to detect certain movements, like standing up high and spreading hands.