2025

Echoes of Innsmouth

A first-person narrative mystery prototype set in Innsmouth, built around exploration, NPC dialogue, quests, and a state-driven story flow.

Description

This prototype explores a story-driven first-person experience in Unity. I worked on the overall game architecture, the sequential GameState system, NPC dialogue logic, quest progression, interaction handling, save/load functionality, intro and ending flow, environmental state feedback, UI logic, map and pause systems, and the general narrative gameplay structure.

Devlog notes

  • GameState System: The main story progression is controlled through sequential GameStates, which trigger events for quests, dialogue, fog, skybox changes, and other world-state updates.
  • Dialogue System: NPC dialogue is selected dynamically based on the current GameState and linked QuestState, with queued dialogue lines, portrait/name display, voice cues, and typewriter-style text output.
  • Quest System: Quests use explicit states such as NotStarted, InProgress, ReadyToTurnIn, and Completed, and react to NPC interactions or collected objectives to update player progress.
  • Story Flow: Completed main quests advance the global story state through an event listener, keeping narrative progression tied to gameplay objectives.
  • Save System: The current main GameState is stored through PlayerPrefs and restored on startup so the player can continue from the latest story progress.
  • Interaction System: Player interaction uses a camera-centered raycast, contextual interaction text, and UnityEvents to trigger NPC conversations, item behavior, or custom scene actions.
  • Environment Feedback: Fog and skybox colors listen to GameState changes and interpolate between configured colors to visually reflect story progression and atmosphere.
  • Intro and Ending Flow: The intro sequence locks player movement, displays story slides, fades into gameplay, while trigger-based UnityEvents handle ending or scripted scene moments.
  • Quest Markers: Quest markers face the camera and can be toggled based on quest conditions, helping guide the player through active objectives.
  • Worldbuilding: I worked on the scale of the world, adjusted visible objects, improved orientation, shaped atmosphere, and tuned the environment so exploration felt readable and coherent.
  • UI Systems: Dialogue panels, pause menu, credits scene, map toggle, and interaction prompts provide the main interface layer for the narrative prototype.