top of page
Search

Week 1 - 4/1/2024

  • Writer: Lucas Van Houten
    Lucas Van Houten
  • Apr 1, 2024
  • 4 min read




Starting Out

In the beginning, we set up communications and project management protocols like shared Google Drive documents, a Github repository, and a JIRA workflow. Then we had to decide what sort of application we wanted to design. All of us came to the general conclusion that we would prefer to develop in VR with Unreal Engine. This allowed us to focus on the ideas that we wanted to potentially pursue. In our first meeting, we voted in multiple rounds to determine the project and out of our final options of exercise/hand eye coordination app, car/airplane simulator, or natural disaster/medical response simulator, the disaster response simulator won. Then we decided it would be easier to implement something with a high quality with a natural disaster scenario. From there we began to flesh out ideas for potential scenarios and how to implement them, starting with a fire-based scenario and working from there.


Map

As we wanted to make the different disaster simulations as realistic as possible, we decided to import a 3d map asset from the Unreal Engine Marketplace because we did not want to spend too much time building a hyperrealistic environment but instead spend that time on the development of disaster scenarios. The choice of Assetsville Town (found here: https://marketplace-website-node-launcher-prod.ol.epicgames.com/ue/marketplace/en-US/product/assetsville-town) was a strategic decision because it was somewhat realistic enough for a proper disaster simulation but it was not too detailed and hence not occupying too much space in our shared Github repository.


File Structure

We began by implementing a basic file structure for the project. Having multiple mini simulations within a single map complicates things as we need a way to structure our scripts so that we can ensure that there is no overlap between the logic of different simulation. We have a game state blueprint which serves as our “main” function where we have global game mode state variables that we can access to determine which simulation we are in right now, the game state base class blueprint also controls the main menu and which scene spawns upon the simulation selected. The map level has a default level blueprint which calls other respective level blueprints (we have one level blueprint per simulation) and this is basically how we structured our project to ensure efficient compartmentalization and little repeatability. Currently the framework is set up, but the details are still being worked out. Simultaneously, we changed the way that the character moves around in the game. In order to have a character move around the map smoothly, which we thought would work better with our variety of planned scenarios, we implemented continuous joystick movement instead of the default teleporting motion, but our solution right now could use some improvement.


Fire Asset

To begin development on the fire scenario itself, we created a fire asset to drive the simulation’s core gameplay. The asset, fully animated with flames, smoke, heat distortion and fire debris was done using Unreal’s Niagara plugin and fountain template and connected to an audio source playing the accompanying fire sound effect, is coded to behave in a way that the fire will spread to all flammable objects (such as the warehouse boxes) if left unattended to and extinguished when colliding with fire extinguishing foam. As we continue development, we intend to increase the realism of the fire by adding burn effects to the objects it comes into contact with as well as negative effects for the player when coming into contact with smoke. 


Fire Extinguisher & Alarm

For the player-side interactions, we implemented two fire scenario responses that they are encouraged to take against the fire. The first feature is a fire alarm very similar to project one, though in this case, we hope that the inclusion will be less of a novelty and used as another step in the process of dealing with an indoor fire, as not pulling it will negatively impact the outcome of the play through for a player in the finished version of the scenario. Upon touching any fire alarm that is on the pillars near the warehouse loading bay, a red light will flash over and over while a fire alarm sound will be played. The second feature for this phase is the fire extinguisher, the main tool we give players to use against the fire. As of this build, the extinguisher shoots out foam to suppress the fire whenever the player clicks the right index trigger while holding it, but in the future, we intend to expand on the extinguisher itself to give more accurate instructions on how to use one in real life.


Future Plans

Further steps we plan to take within the fire scenario before moving forward in other scenarios include; adding functionality to call 911 in the game, adding informative information visible as the scenario starts to prep the player if they choose to read it, and definitive and informative end game states for success and failure in the scenario, and, potentially, multiple locations with a fire scenario in order to increase the number of ways that a player can practice responding to a fire. These features should make the fire simulation an informative and useful tool for emergency fire response training for the average person. From this point, we will consider which of our list of possible scenarios is the most feasible and useful to begin development on next.

 
 
 

Comentarios


Developed by:

Lucas Van Houten, Kai Jun Han, Sebastian Park, Benjamin Duenas, and Austin Wahle

Studio 8

bottom of page