{"ID":2876133,"CreatedAt":"2026-06-01T04:54:23.091178241Z","UpdatedAt":"2026-06-01T04:54:23.091178241Z","DeletedAt":null,"paper_url":"https://arxiv.org/abs/2509.04481","arxiv_id":"2509.04481","title":"Narrative-to-Scene Generation: An LLM-Driven Pipeline for 2D Game Environments","abstract":"Recent advances in large language models (LLMs) enable compelling story generation, but connecting narrative text to playable visual environments remains an open challenge in procedural content generation (PCG). We present a lightweight pipeline that transforms short narrative prompts into a sequence of 2D tile-based game scenes, reflecting the temporal structure of stories. Given an LLM-generated narrative, our system identifies three key time frames, extracts spatial predicates in the form of \"Object-Relation-Object\" triples, and retrieves visual assets using affordance-aware semantic embeddings from the GameTileNet dataset. A layered terrain is generated using Cellular Automata, and objects are placed using spatial rules grounded in the predicate structure. We evaluated our system in ten diverse stories, analyzing tile-object matching, affordance-layer alignment, and spatial constraint satisfaction across frames. This prototype offers a scalable approach to narrative-driven scene generation and lays the foundation for future work on multi-frame continuity, symbolic tracking, and multi-agent coordination in story-centered PCG.","short_abstract":"Recent advances in large language models (LLMs) enable compelling story generation, but connecting narrative text to playable visual environments remains an open challenge in procedural content generation (PCG). We present a lightweight pipeline that transforms short narrative prompts into a sequence of 2D tile-based g...","url_abs":"https://arxiv.org/abs/2509.04481","url_pdf":"https://arxiv.org/pdf/2509.04481v2","authors":"[\"Yi-Chun Chen\",\"Arnav Jhala\"]","published":"2025-08-31T01:45:56Z","proceeding":"cs.GR","tasks":"[\"cs.GR\",\"cs.AI\",\"cs.CL\",\"cs.MM\"]","methods":"[\"Large Language Model\",\"Language Model\"]","has_code":false}
