Built with the Rive CLI and GPU Canvas. The whole scene is written in RML with the CLI, and two WGSL shaders on GPU Canvas handle the fog, candlelight, scanlines and glitch. Luau scripts drive the button, the price and the scare through Data Binding, and a State Machine runs the button states. I drew the ghost's mouth by hand in the Rive Editor.