\documentclass[12pt]{article} \usepackage[a4paper, margin=1in]{geometry} \usepackage{titlesec} \usepackage{enumitem} \usepackage{xcolor} \usepackage{hyperref}

\titleformat{\section}{\large\bfseries\color{purple}}{}{0em}{} \titleformat{\subsection}{\normalsize\bfseries\color{teal}}{}{0em}{}

\begin{document}

\begin{center} {\LARGE \textbf{Haunt-GPT}}\[0.5em] {\large \textit{Kiroween Hackathon 2025 Submission}}\[1em] \end{center}

\section{Inspiration} Halloween has always been about jump scares, dark stories, and mysterious encounters.
But we wanted to build something interactive — something that doesn’t just tell a horror story, but reacts, whispers, and evolves with your choices.

\textbf{Haunt-GPT} was inspired by: \begin{itemize}[noitemsep] \item Atmospheric horror games with branching narratives, \item AI chatbots that behave as characters, \item The desire to create a \textit{haunted storyteller} powered by LLMs. \end{itemize}

Our mission was simple:
\textit{“Can we make an AI that feels alive… even when it shouldn’t be?”}

\section{What It Does} \textbf{Haunt-GPT} is an interactive AI horror companion that generates personalized spooky stories using a custom RAG pipeline.

It: \begin{itemize}[noitemsep] \item Retrieves eerie story fragments from a vector database, \item Mixes them with user prompts to create dynamic horror scenes, \item Responds in a haunted persona with atmospheric pacing, \item Uses sound cues and visual effects (optional frontend) for immersion. \end{itemize}

The result is a storytelling system where \textbf{no two horror encounters are ever the same}.

\section{How We Built It} \subsection*{Tech Stack} \begin{itemize}[noitemsep] \item \textbf{Python (FastAPI):} Backend, LLM orchestration, and RAG pipeline. \item \textbf{ChromaDB:} Storing embeddings for 30+ haunted narrative chunks. \item \textbf{SentenceTransformers:} For semantic search and embeddings. \item \textbf{OpenAI GPT Models:} For narrative continuation and persona behavior. \item \textbf{React + Tailwind (optional UI):} Dark-mode haunted interface. \end{itemize}

\subsection*{System Workflow} \begin{enumerate}[noitemsep] \item User sends a story start or selects a horror theme. \item Backend retrieves story fragments using cosine similarity:
[ \text{score} = \frac{A \cdot B}{|A||B|} ] \item GPT blends retrieved context with its haunted persona. \item Response is returned with atmospheric formatting. \end{enumerate}

\section{Challenges We Ran Into} \begin{itemize}[noitemsep] \item Balancing \textbf{creativity vs. creepiness} without losing coherence. \item Fine-tuning prompts to maintain a consistent haunted persona. \item Avoiding overly long or uncontrollable horror monologues. \item Preventing context drift in multi-turn conversations. \item Managing embedding relevance for thematically similar stories. \end{itemize}

\section{Accomplishments That We're Proud Of} \begin{itemize}[noitemsep] \item Created a fully working RAG-based horror storytelling engine. \item Designed a stable persona prompt that behaves consistently. \item Generated over \textbf{300+ unique horror sequences} in testing. \item Developed a modular backend that can scale to more genres. \item Achieved smooth, real-time horror narrative generation. \end{itemize}

\section{What We Learned} \begin{itemize}[noitemsep] \item RAG dramatically improves narrative grounding and atmosphere. \item The importance of \textbf{prompt shaping} for character-like AI behavior. \item How embeddings control story tone and pacing. \item Techniques for managing long-context horror conversations. \item FastAPI + ChromaDB is a powerful combo for lightweight AI apps. \end{itemize}

\section{What's Next for Haunt-GPT} \begin{itemize}[noitemsep] \item Add branching storyline paths and user decision-making. \item Integrate spooky audio + jumpscare visuals in the UI. \item Build a multi-character horror mode (ghost, demon, entity). \item Enable multiplayer story sessions. \item Release Haunt-GPT as a public web app for Halloween 2025. \end{itemize}

\begin{center} \textit{``Haunt-GPT — where the AI doesn’t just tell a story… it becomes the story.''} 👻🔮 \end{center}

\end{document}

Built With

Share this project:

Updates