@inproceedings{aff3f46c6c7147809ef47a6aead81f95,
title = "Resource Entity Action: A Generalized Design Pattern for RTS Games",
abstract = "In many Real-Time Strategy (RTS) games, players develop an army in real time, then attempt to take out one or more opponents. Despite the existence of basic similarities among the many different RTS games, engines of these games are often built ad hoc, and code re-use among different titles is minimal. We created a design pattern called {"}Resource Entity Action{"} (REA) abstracting the basic interactions that entities have with each other in most RTS games. The paper discusses the REA pattern and its language abstraction. We also discuss the implementation in the Casanova game programming language. Our analysis shows that the pattern forms a solid basis for a playable RTS game, and that it achieves considerable gains in terms of lines of code and runtime efficiency. We conclude that the REA pattern is a suitable approach to the implementation of many RTS games.",
keywords = "Design Pattern, Source Entity, Language Extension, Game World, Resource Transfer",
author = "M. Abbadi and F. Giacomo and R. Orsini and A Plaat and P. Spronck and G Maggiore",
year = "2014",
doi = "10.1007/978-3-319-09165-5_21",
language = "English",
isbn = "9783319091648",
series = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",
publisher = "Springer",
pages = "244--256",
editor = "H. Lida and A. Plaat and {van den Herik}, H.J.",
booktitle = "Computers and Games, Lecture Notes in Computer Science (Selected papers of the CG 2013 Conference)",
note = "CG 2013, 12-08-2013 ; Conference date: 12-08-2013 Through 13-08-2013",
}