RAIL: A Domain-Specific Language for Generating NPC Behaviors in Action/Adventure Game
Original version
10.1007/978-3-319-76270-8_58Abstract
Domain-Specific Modeling (DSM) has shown its effectiveness of improving software productivity in many software domains [1], where Domain Specific Language (DSL) plays a key role. Also in the domain of video games, researchers have proposed various DSLs for developing different aspects of several game genres. This paper presents a DSL named RAIL for generating Non- Playable Character (NPC) behaviors in Action/Adventure Games. Our DSL borrows concepts from State Machines and adds some features to better suit the target domain. Further, we have implemented a tool-chain for RAIL using the Eclipse language workbench, and the tool-chain has been integrated with the level editor of the Torque2D game engine. To evaluate the DSL, we developed a prototype game and collected data regarding the development time and code lines. The results showed that RAIL significantly improves the productivity of devel‐ oping NPC behaviors in the target game with a reasonable associated cost. In addition, the integration of the RAIL and the Torque 2D tool-chains provides a smooth development workflow.