Abstract
This paper explains the RAGE project, which proposes a component-based software architecture to accommodate and amplify serious game development. The RAGE project (rageproject.eu) is a serious gaming flagship project funded by the Horizon 2020 Programme of the European Commission. Compliancy with the component-based architecture preserves the portability of software to different platforms and programming languages and its easy integration in wide variety of game engines. RAGE has developed up to 40 cutting edge reusable software components (all free, open source software) and has made these available on its market place portal at gamecomponents.eu.
Access provided by CONRICYT-eBooks. Download conference paper PDF
Similar content being viewed by others
Keywords
1 Introduction
Serious gaming is a priority area of the European Commission, having recognised the potential of games for e.g. teaching and training, social inclusion, heath, the digital transformation and other societal purposes. Although scholars and teachers have shown great interest in serious games for quite some years, the uptake of games in schools and business has been quite limited [1, 2]. While the leisure game industry has become a well-established industry dominated by major hardware vendors, publishers, and a fine-grained network of development studios, distributors and retailers, the serious game industry still displays many features of an emerging, immature branch of business, which is characterised by weak interconnectedness, limited knowledge exchange, and absence of harmonising standards [3]. Notably, progress is hampered by the wide variety of programming languages, game development systems and delivery platforms that game studios have in use, all of which go with specific technical constraints and incompatibilities that pose severe barriers to growth. Moreover, the small game studios often do not have access to emerging media technologies that could be incorporated in serious game projects, such as novel adaptation algorithms, artificial intelligence kernels, or natural language processing methods, while the alternative of in-company development of such technologies is not feasible, either because of required investments or because of lacking know-how.
This paper provides a brief summary of the work in RAGE in order to provide a starting point for the technical workshop arranged by RAGE at the Joint Conference of Serious Games 2018.
2 The RAGE Component-Based Software Architecture (RCSA)
The RAGE component-based software architecture (RCSA) was devised to accommodate the development of software components that can be easily reused and integrated in serious game projects across a wide variety of prevailing technology platforms. The RCSA [4, 5] distinguishes between server-side components and client-side components. While remote communications of server-side components with centralised applications can be easily achieved with web services using the HTTP-protocol (e.g., REST), client-side components need to be integrated into client-machine applications (viz. game engines), which is often problematic. With respect to client-side components, the RCSA is based on a limited set of established coding practices and software patterns (API, Bridge, Publish/Subscribe, Web Services), generally aiming at the abstraction of operations in order to accommodate reuse in different technical environments. Components based on the RCSA avoid dependencies on external software frameworks and minimise code that may hinder integration with game engine code. They do not access or do not make assumptions about the underlying operating system, do not directly interfere with the game code, and consequently, do not access the game’s user interface, thus leaving all functional and creative decisions about screen layout style, look and feel in the hands of the game designers and developers. Technical proofs of concept of the RCSA portability have been established for C#, C++, Java and JavaScript/TypeScript, which are among the predominant programming languages used in game development [6]. Also, RCSA-compliant components have been successfully integrated in various game engines, including e.g. Unity3D, MonoGame, Cocos2D, Xamarin and Emergo, and have been deployed at the most popular desktop and mobile delivery platforms [5].
3 Game Software Components at Gamecomponents.eu
An initial set of game components can be accessed through the RAGE marketplace portal at gamecomponents.eu (Fig. 1). The exposed components offer a variety of cutting-edge functionalities of potential relevance for serious games, ranging from adaptation and personalisation, to language-based sentiment analysis, facial emotion recognition, sensor-based arousal detection, social gamification, affective computing and other topics. All components are compliant with the RCSA, which guarantees the seamless integration into a variety of game engines or other software environments. The collection of components includes both server-side components and client-side components, as well as hybrids. To maximize the reuse of software, all components use the Apache 2.0 license (white label software), which allows for reuse by third parties both for commercial and non-commercial purposes, either under open source or closed source conditions.
All software exposed at the portal are enriched with user guides, manuals, instructional materials, integration templates, demonstrators, and proof cases. For the purpose of practical validation a set of seven serious games based on the various software components was developed, which were then tested and evaluated in real end-user pilots. The games focus on various social and entrepreneurial skills and address diverse educational contexts. Overall, over 1500 participants were involved in the game pilots. The gamecomponents.eu marketplace portal differs from existing portals by its platform independency: the compliancy with the RCSA preserves the easy integration of components across a variety of different software environments. In contrast, existing platforms such as the Unity Asset Store and the Unreal Marketplace, are inherently platform bound, and thereby lead to vendor lock-in. Moreover, existing marketplaces are mostly dominated by media objects (e.g. terrains, audio, buildings, weapons, user-interface objects, and templates) rather than software, which reduce the efforts required for content creation, but still preserve the programming load.
4 The Component Integration Workshop
The workshop arranged at the Joint Conference on Serious Games 2018 comprises a hands-on session about the technical integration of RCSA components in game projects. In a step-by-step process, participants will be guided to quickly unpack, install and integrate software components in their game project, which not just speeds up the game development process, but also allows the inclusion of cutting-edge functionalities that would not be easily accessible otherwise. Component-based approaches and the reuse of software will support developers at creating better games easier, faster, and more cost-effectively.
References
Abt, C.: Serious Games. Viking Press, New York (1970)
Connolly, T.M., Boyle, E.A., MacArthur, E., Hainey, T., Boyle, J.M.: A systematic literature review of empirical evidence on computer games and serious games. Comput. Educ. 59(2), 661–686 (2013). https://doi.org/10.1016/j.compedu.2012.03.004
Stewart, J., et al.: The potential of digital games for empowerment and social inclusion of groups at risk of social and economic exclusion: evidence and opportunity for policy. In: Centeno, C. (ed.) Joint Research Centre, European Commission (2013)
van der Vegt, G.W., Westera, W., Nyamsuren, E., Georgiev, A., Martinez Ortiz, I.: RAGE architecture for reusable serious gaming technology components. Int. J. Comput. Games Technol. Article ID 5680526. https://doi.org/10.1155/2016/5680526 (2016)
van der Vegt, W., Nyamsuren, E., Westera, W.: RAGE reusable game software components and their integration into serious game engines. In: Kapitsaki, G.M., Santana de Almeida, E. (eds.) ICSR 2016. LNCS, vol. 9679, pp. 165–180. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-35122-3_12
RedMonk: The RedMonk programming languages rankings: January 2015. http://redmonk.com/sogrady/2015/01/14/language-rankings-1-15/. Accessed 5 Sept 2018
Acknowledgment
This work has been partially funded by the EC H2020 project RAGE (Realising an Applied Gaming Ecosystem); http://www.rageproject.eu/; Grant agreement No 644187.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer Nature Switzerland AG
About this paper
Cite this paper
van der Vegt, W., Nyamsuren, E., Westera, W. (2018). Making Serious Games with Reusable Software Components. In: Göbel, S., et al. Serious Games. JCSG 2018. Lecture Notes in Computer Science(), vol 11243. Springer, Cham. https://doi.org/10.1007/978-3-030-02762-9_3
Download citation
DOI: https://doi.org/10.1007/978-3-030-02762-9_3
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-02761-2
Online ISBN: 978-3-030-02762-9
eBook Packages: Computer ScienceComputer Science (R0)