Skip to content

Implement ambient sound systems for different room types #83

@deavid

Description

@deavid

Feature: Enhanced Audiovisual Immersion - Dynamic Ambient Soundscapes

Description:

Enhance the game's soundscape by implementing dynamic ambient sound systems that play different ambient tracks based on the type of room the player is currently in. This will contribute to the atmosphere and improve player immersion.

Goals:

  • Create distinct and immersive soundscapes for different room types.
  • Enhance the player's ability to differentiate between and be aware of different
    locations.
  • Enhance the game's overall atmosphere.

Implementation Details (Potential Tasks):

  • 1. Room Type Definitions:

    • Identify the different room types within the game (e.g., Bedroom, Bathroom, Kitchen, Attic, Outdoors, etc.). This can be done by looking at the Tiled map classnames.

    • Define a list of ambient sound assets (OGG files) for each identified room type.

      • Example Room Types & Sounds (for inspiration):
        • Bedroom: Creaking floorboards, distant whispers, soft music box tune.
        • Bathroom: Dripping faucet, echoing water sounds, faint humming.
        • Attic: Dust rustling, creaking roof, rats scurrying.
        • Kitchen: Refrigerator hum, clinking dishes, distant conversation snippets.
        • Outdoors: Wind, birds chirping, rustling leaves, distant traffic.
        • Basement: Dripping water, rats rustling, chains sounds.
        • Hospital: Beeping, and voices
  • 2. Room Detection:

    • Modify the current room management to have a definition per room name, so each
      one is tied to a room type.
    • Add a new variable for the "room type".
  • 3. Sound System Integration:

    • Implement a system to monitor the player's current room.
    • Play the appropriate ambient sound track based on the player's current
      location, fading sounds in and out smoothly when the player moves
      between rooms.
    • Stop all previous sounds when the player is in the main menu, and start with
      the "Outside" sound.
  • 4. Sound Volume Management:

    • The volume of the sounds should be controlled by the AudioSettings
    • Test the system
      • Test different sounds.
      • Test volume adjustments in different areas.
      • Test volume adjustments with ghost sounds.
    • Document.

Dependencies:

  • The existing room management system.
  • The game's audio system.
  • Game Assets (sound effects).
  • Uncore system for playing audio.

Acceptance Criteria:

  • Different ambient soundscapes are played based on the player's current room type.
  • Sound transitions between rooms are smooth and seamless.
  • The audio experience enhances player immersion and creates a unique atmosphere for
    each location.

Notes:

  • Consider implementing a system to prevent or to control sounds from repeating too
    frequently.
  • Explore the use of layering multiple ambient sounds within each room to create
    more dynamic and immersive soundscapes.
  • The Insane audio should be applied when the player gets low sanity.
  • Add a system to control the overall audio volume.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions