SAGA: A Story Scripting Tool for Video Game Development
Loading...
Date
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
Video game development is currently a very labour-intensive endeavour. Furthermore it involves multi-disciplinary teams of artistic content creators and programmers, whose typical working patterns are not easily meshed. Usually a domain expert has to communicate their ideas to a programmer
in order to realize their designs into a final software product. This process of transferring information may introduce error or ambiguity, while also hampering productivity.
Domain-specific languages (DSLs) attempt to increase development productivity by allowing domain experts to express ideas in a customary manner, while also providing a mechanism to directly translate these ideas into usable code.
The SAGA tool, which includes a DSL and compiler program, uses these methods in an attempt to increase developer productivity. Various domains from video games were considered but the area of story design was chosen.
The story design DSL developed employs a text-based, natural language style in order to be less daunting to a non-programmer. A story is modeled as a transition system through some notions of story states and transitions that can progress the story according to important events.
From the DSL source code the compiler program produces a usable story manager module that interacts with game code to supervise the progression of story. This story manager module can be rendered in C#, C++, or Java. The compiler also creates a visual output of the story graph.
A video game developer can use the SAGA tool to easily model their story and employ a story management system in their products.