A Framework for the Semi-Automatic Testing of Video Games
Total Page:16
File Type:pdf, Size:1020Kb
Proceedings of the Fourth Artificial Intelligence and Interactive Digital Entertainment Conference A Framework for the Semi-Automatic Testing of Video Games Alfredo Nantes, Ross Brown and Frederic Maire Faculty of Information Technology Queensland University of Technology [email protected], [email protected], [email protected] Abstract functionality, game usability and game mechanics Game environments are complex interactive systems that (Desurvire, Caplan, & Toth, 2004). The Environment require extensive analysis and testing to ensure that they are Integrity Inspection aims to look for perceptual anomalies at a high enough quality to be released commercially. In such as sound, textures, meshes, lighting and shadowing particular, the last build of the product needs an additional malfunctions. Finally, the Software Inspection validates the and extensive beta test carried out by people that play the software interfaces amongst components and the integrity game in order to establish its robustness and playability. of the components itself. This includes code inspection, This entails additional costs from the viewpoint of a data analysis and algorithm specific testing. Entertainment company as it requires the hiring of play testers. In the and Environment Integrity inspection is usually performed present work we propose a general software framework that by the Quality Assurance (QA) personnel, whereas the integrates Artificial Intelligence (AI) Agents and Computer Vision (CV) technologies to support the test team and help Software inspection is responsibility of the development to improve and accelerate the test process. We also present a team (Irish, 2005). prototype shadow alias detection algorithm that illustrates Irish points out how QA and game testing are two very the effectiveness of the framework in developing automated important steps in bringing a video game to completion visual debugging technology that will ease the heavy cost of before its commercial release and that rushing these steps beta testing games. could affect the functionality and the playability of the Keywords: Video Game Testing, Synthetic Image product. On the other hand, testing is also a time Debugging, Virtual Environment Testing, Artificial consuming and frustrating activity especially with early Intelligence (AI), Computer Vision (CV). software builds when the game cannot run for more than a few minutes before crashing. In addition, making testers play the same game over and over again could push them 1. Introduction to overlook defects for the haste of getting their job done. This entails an additional cost from the viewpoint of a Video Games cover a large component of the company as it requires the hiring of a sufficient number of entertainment industry running into billions of dollars spent play testers during the test-cycle in order to test the game annually (Riley, 2007). Present games differ from early thoroughly for release. generations where the graphics consisted of very few Although the burden of debugging graphical polygons and the user-game interaction was restricted to applications is usually lightened by performance analysis few commands entered through the keyboard. Today and shader debugging tools such as Microsoft PIX®1 and games provide remarkably realistic graphics with highly GLIntercept®2, to the best of our knowledge there has been interactive scenarios held together by complex software little contribution to assisting the higher level that requires large development and testing teams. The Entertainment and Environment game testing. In this more complex the software, the more crucial the effort of paper, we propose a general framework for addressing the the companies in testing their product in order to ensure a automation of the game testing problem by using Artificial high enough quality in terms of functionality, stability and Intelligence (AI) and Computer Vision (CV) technologies. robustness in general. Furthermore, a computer game is not The implementation of such architecture can bring only expected to work properly but it has to be, amongst important benefits to the game industry. Indeed it will other things, fun, challenging, realistic and well animated. bring costs savings by decreasing the number of play In the light of all these aspects we can then split the testers required during the test process. Moreover, it will testing problem for a game into three sub problems which increase the robustness of the product to release by we can name: Entertainment Inspection, Environment allowing the coverage of a far larger set of test cases Integrity Inspection and Software Inspection. The former currently performed only by human players. aims, at a high level, to check playability issues against In Section 2 we review the AI technology that has been playability heuristics such as story progression, gameplay applied to computer games and human-agent systems. Copyright © 2008, Association for the Advancement of Artificial 1 Intelligence (www.aaai.org). All rights reserved. http://msdn2.microsoft.com/ 2 http://glintercept.nutty.org/index.html/ 197 Section 3 presents a list of visual anomalies that often games. In particular Urlings et al. applied the Belief- affect virtual environments. The general framework is Desire-Intention (BDI) syntax and JACK – a commercial presented in Section 0. In Section 5 we show an BDI agent development language architecture – to implementation of a visual bug detection agent. demonstrate their teaming framework of human-agent coordination within the commercial computer game Unreal Tournament (UT). 2. Related Work Seeing the promising results obtained from such architectures it is reasonable to think that they can be Many approaches have been proposed for improving the adapted or extended to accommodate also autonomous game design in terms of its entertainment factors. game inspection problems, in that autonomous agent Researchers have also studied human-machine cooperation systems could be built in a similar manner to cooperate for solving tedious and difficult tasks or operating in with humans for improving and accelerating the testing hostile environments. These two research areas are phase of video games. reviewed in the following section. 2.1. Human Entertainment and Computer Games 3. Perceptual Anomalies in Virtual Abundant literature exists (Laird, 2001; Merrick & Maher, Environments 2006) aiming to provide non-playing characters (NPCs) with a convincing human-like behavior by using Artificial In order to have a more general and comprehensive view of Intelligence to improve the entertainment features of a the Environment Inspection problem we briefly list here game. possible environment issues classified by typology. Such a Also research in AI has investigated human list has been drawn up thanks to the support of the QA entertainment models for measuring qualitative factors team of the game company THQ® Australia: such as challenge and curiosity (Yannakakis & Hallam, • Graphics: textures may become corrupted, may 2006) and approaches for analyzing and reasoning about disappear or flicker, they may appear distorted or the user experience when interacting with virtual discolored. Items could appear floating in the air, environments (Yang, Marsh, & Shahabi, 2005). Recently sticking out or through walls. Shading may also cause self-playing experiments have been applied to computer effects like aliasing or acne; games with the aim of modeling the integrity and fairness • Camera: a character may be obscured by another object in rudimentary computer games, assisting the game design or seen at an awkward angle; the camera may allow clip (Macleod, 2005). Denzinger et al. (2004) have applied through effects letting the user to view objects from similar systems to a complex game (FIFA-99) showing inside; how their agents, employing a genetic algorithm (GA), • Collision: the objects in the game may intersect each were able to find faults in the game mechanics. other or do not intersect appropriately; barriers may exist Although all these results could be used for automating in inappropriate places or may not exist where they the game testing process, they do not address Environment should (for instance the character would be able to walk Integrity issues that surely affect playability and gameplay through walls and objects); functionality or in general the human experience when • Sound: a sound or music may not play when expected or interacting with the Environment. In our work we propose it may contain imperfections; the game may play music to extend the previous research to encompass also lower or sound effects at inappropriate levels or may not play level, yet important Environment Inspection issues in order them at all; to thoroughly address the automation of the game testing • Framerate: when the framerate drops down the action on problem. the screen will appear in slow motion. 2.2. Human-Agent teaming All the above mentioned anomalies surely affect the play experience; hence they need to be fixed early on in the In modern AI research, agents are seen as assistants in development phase so that the product can be assessed advisory and decision support roles in critical or high against higher level playability or entertainment issues. In workload situations. An agent is a computer system having the rest of this document we present an approach for the ability to provide simple autonomy, sociability, dealing with the automatic detection of environment reactivity or sensing capability and pro-activeness