Keywords

1 Introduction

Human impact on the environment and climate change are, and likely will remain, important societal issues. Increasing the attractiveness of using public transport is not only about increasing the effectiveness and timeliness of the transport network, but also about offering travellers a rewarding journey. As has been shown previously [1], context-aware games based on cues from the real-world can be effective in this regard. With the advent of large sets of open data, and the increasing willingness to share data, new opportunities arise for using contextual cues for both utility and more playful purposes.

In this paper, we report on the development of Bus Runner – a context-aware endless runner-style platform game for smartphones – which uses open and shared data. Bus Runner is playable while riding on one of the bus lines in Malmö, Sweden. To promote a changing gameplay experience for each gaming session, thereby increasing replayability, we use Procedural Content Generation (PCG) [2] to create the game’s levels. It has been suggested that PCG is particularly suitable for mobile games due to the need to adapt game content to their broad player bases with varying skill levels [3]. Since they are played in many different settings, mobile games also present an opportunity to use location and other physical context factors in the PCG process. Using actual contextual cues from the physical world to feed the procedural content generator is novel to our implementation compared with traditional endless runner games.

The main objective of this study is to explore challenges and opportunities of using contextual data as an input to the procedural generation of levels for mobile games in a public transport setting. To do this, we will share the initial cycles of our design research [4] driven study, where we lean upon development reflections and prototype testing, together with the results of observations and interviews with playtesters.

Furthermore, it is an indirect but purposeful choice to take on a more playful approach to the use of contextual data than what is typically done today, meaning we also hope to promote further exploration of the opportunities this affords. Rather than strive to use context as a way to inform technology to take better (typically from a utility perspective) action, we instead fully embrace the meaning of ‘cue’ as real-life contextual cues are relied upon to play loosely coupled relationship roles with dynamically generated game objects that first and foremost serve the purpose of increasing the gameplay value.

2 Related Work

2.1 Context-Aware Games

Context-aware games use aspects of the environment in which they are played to adapt their behaviour or content to a particular setting. Despite Schmidt et al.’s [5] assertion that “There is more to context than location”, location remains the most common form of context in context-aware games [6,7,8,9,10]. Other forms of context are however also seen, such as air pollution data [11] or driving-related data [1].

Motivations for the use of context-awareness in games vary significantly. Some games aim to affect the behaviour of their users. UKKO [11] is described as a persuasive game for children walking to and from school that makes use of an air-pollution sensor and location data to update the health of a digital pet in order to encourage users to walk through areas that are less polluted and to raise awareness about the issue of air pollution. CABdriver [1] uses driving-related data from a car to make passengers aware of the driver’s behaviour, possibly resulting in them challenging this behaviour (such as speeding). Further use of context is to provide appropriate information to users based on their location. Garay-Cortes and Uribe-Quevedo [9] developed a location-based game to help new students get to know their surroundings by providing them with information about landmarks.

Other games use context to inspire curiosity and investigation in their players. For example, GEMS [7] allows users to record stories attached to specific locations and encourages family members and friends to discover these stories as part of a larger science-fiction plot. Free All Monsters! [6] encourages players to visit physical locations to discover monsters designed by other users. Commercially successful games like Pokémon Go [10] also employ a similar strategy, encouraging players to explore the physical world to make in-game discoveries or complete objectives.

With the recent increase in popularity of augmented-, virtual- and mixed-reality systems, many context-aware games, both in the scientific and the commercial domain are making use of these technologies to increase immersion or build a connection between virtual and physical worlds [8,9,10]. In these cases, the act of exploring physical locations is a key component of the gameplay.

2.2 Procedural Content Generation

Procedural Content Generation (PCG) refers to the algorithmic generation of game content, such as maps, levels or items. Among the possible motivations for the use of PCG in game development is the potential for tailoring game content to the needs and desires of specific players in order to create more engaging and entertaining games [2]. PCG is also useful for increasing the longevity or replayability of a game by continuously generating new and diverse content – something that has been advertised as a selling point in recent games.

Lopes et al. [3] argue that PCG is particularly suitable for mobile games, since their broader audience of more casual players demands support for a wider range of abilities. They also point out that the wide variety of different settings mobile games are played in presents an opportunity for adapting the content of those games to the context in which they are played and suggest that this could produce more meaningful content.

2.3 Context-Aware PCG

Lopes et al. [3] introduce the term Context-Driven PCG as one of their modalities of adaptive PCG. They use it to refer to content that is generated under the influence of players’ implicit or explicit demands, such as a player-defined time-constraint. The other modality presented is Experience-Driven PCG, originally coined by Yannakakis and Togelius [12], where content generation relies on player-generated data, such as measured skill level.

While Lopes et al. investigate player-defined time constraints as a form of Context-Driven PCG and player skill level as a form of Experience-Driven PCG, these could both be considered examples of context-awareness according to Schmidt et al.’s [5] model for context-aware mobile computing. More specifically, player-defined time constraints and player skill level both fall into Schmidt et al.’s human factors. In the PCG literature, these human factors have mainly been explored through the use of player modelling for dynamic difficulty adjustment, where a game’s difficulty is adjusted according to the player’s actions [3, 13] but also by investigating how player modelling can be used to make games more engaging or fun [14]. While not framed as PCG, Olsson [1] takes a similar approach by using the actions of a car’s driver to influence the generation of levels for a game played by a passenger, with the goal of influencing the driver’s behaviour.

Despite the interest in human contextual factors in Experience-Driven PCG, there has been little investigation of how Schmidt et al.’s [5] second category of contextual factors – the physical environment – can be used as input for PCG systems. As mentioned above, previous research on context-aware games has often used physical context, such as location, but this data is more typically used to modify the behaviour of the system or to decide what type of information to display, rather than as an input to the generation of new content. We thus intend to investigate how the use of contextual data from the physical environment can be combined with human factors to generate content appropriate for a specific setting. Our research approach and results are presented in the following sections.

3 Research Approach

The research reported here relies upon a design research approach [4, 15] to guide the iterative stages of design, development and assessment. Design research was deemed appropriate given the exploratory nature of the work, and the emphasis design research places on practical contributions being considered as scientifically relevant [15].

While two main research cycles (the alpha cycle for the first version of the game, and the beta cycle for the second version) have been used in this research, considerable internal iteration between design and development has been used within each cycle, using self-testing and playtesting with participants familiar with the intentions of the game. This is common in game design [16] and has been motivated as relevant as such testers are more adept at focussing on the particular aspects that are being tested rather than aspects that may not be completed yet. These rapid internal iterations are in line with emergent design [17], and embrace the emergence of agile as well as continuous development principles to a higher degree than seminal approaches of design research (e.g. as outlined by Peffers et al. [4]). The overall research process still remains within the principles and motivations of design research.

For the alpha cycle, we recruited four external testers with two main goals: (1) to assess the difficulty level of the game, and (2) to determine if contextual cues were perceived by the players. For the beta cycle, we used six testers split into groups of three. One of the groups was asked to play the game in practice mode (which allows the game to be played without riding the bus) during a period of one week prior to the formal assessment session. The other group played the game for the first time during the assessment session, thus affording us an insight into differences between early adopters and those with some experience from the gameplay in addition to our overarching exploratory interest in the impact of using context cues to influence procedurally generated content in a game designed for public transport. The formal assessments were made up of two approximately 25 min sessions (depending on traffic and how well the busses kept to their schedule) per group. Researchers acted as observers during testing, taking field notes of game-related events, challenges the players appeared to have, and conditions on the bus. Interviews were recorded and transcribed after each gameplay session, which allowed the field notes to be complemented with more in-depth elaboration from the testers. The results of these sessions are presented in Sect. 5.

At the time of writing this paper, Bus Runner remains in open beta on Google Play and is available for anyone to download and play – either directly on the bus it is intended to be played on, or in practice mode and from anywhere. As long as the APIs and data sources which Bus Runner relies upon for contextual cues do not change, the game will be left available with periodical follow-up through the (fully anonymous) background data we collect. While we have access to such data from the additional players – who found the game on their own through Google Play, or through the advertising campaign that our collaborating public transport operator has done – this paper focusses on the formal alpha and beta playtest session observations and interview sessions. A particular emphasis is given in this paper to the beta cycle as that represents the current state of Bus Runner.

4 Bus Runner

The principal artefact of our design research process is Bus Runner, a context-aware game for bus users in Malmö, Sweden (see Fig. 1). Based on a combination of a number of forms of implicit and explicit contextual data, the game generates levels intended to engage players by reflecting recognisable aspects of their physical location in game. Inspired by the way augmented reality has been used in games to combine novel interactions with familiar environments [10], Bus Runner combines casual gameplay with a simplified representation of the physical world that players can easily recognise (Fig. 2). Context-awareness also provides us with opportunities to tailor the game to the requirements imposed by the intended gameplay setting – a bus – by, for example, choosing an appropriate game duration.

Fig. 1.
figure 1

Screenshot from a game session, showing the player character jumping on a bus shelter.

Bus Runner is a side-scrolling 2D endless runner-style platform game developed in Unity [18] for touchscreen Android devices. The player controls a character running automatically through the hectic streets of Malmö, which are filled with vehicles, stationary obstacles and other pedestrians. In order to avoid colliding with these obstacles, the player can jump by tapping the device’s screen or glide slowly back to the ground with an umbrella by pressing and holding the screen. This gliding ability is limited by a finite ‘energy’ resource, seen in the bar in upper right corner of Fig. 1, which regenerates slowly over time or more quickly by picking up cups of coffee and cinnamon buns. The game’s difficulty is adjusted dynamically according to how well the player is performing. If the player makes few mistakes, more difficult objects are likely to appear and energy boosts are harder to come by. As a reward for surviving the harder difficulty levels, the player earns points more quickly.

Fig. 2.
figure 2

Top: a landmark that can appear in the game. Bottom: its real-world counterpart

Context is used in a number of ways in Bus Runner. Before starting a game session, the player chooses a route by selecting it on the screen shown in Fig. 3. Then, rather than using GPS to directly determine the player’s location, this location is inferred from the time and data from two providers offering open access to their services. The first of these providers offers an API for retrieving bus schedule data updated several times a minute, allowing us to sufficiently accurately estimate approximately how far a bus is along its route. The second provider is the Data Innovation Platform (DIP), which was developed as part of the same project as Bus Runner and collects data from many open and shared sources and presents this data through a single interface. Through DIP we are able to obtain diverse data including the GPS coordinates of bus stops, lists of landmarks within a specified radius of a location and the name of the city district a given GPS coordinate lies in. Being able to access these data sources through a single API is valuable for a developer since it reduces the number of external dependencies and allows data to be accessed in a more consistent way. Using these combined data sources allows us to predict where the player will be several minutes from now and plan level generation in advance. For example, if the bus is running slowly due to heavy traffic, a section of the game between two stops will be extended. Another use of contextual data is seen in the dynamic adjustment of the game’s difficulty based on the player’s performance, though this is largely reactive, rather than based on player-modelling.

Fig. 3.
figure 3

Before playing, the user selects a start and a destination and can see when the next bus will depart from the start stop. Practice mode starts a game using static or simulated placeholder data instead of real data.

The location and real-time bus timetable data allow the level generator to select suitable components and also allow the duration of the game to be adapted to the length of the bus journey. In this way we hope to create the impression that each play session is custom-made for the player’s journey, while also taking into account practical concerns like reminding the player that they have reached their destination by ending the game shortly beforehand.

The version of Bus Runner available at the time of writing is limited to just one of Malmö’s bus lines, due to the effort needed to create graphics for more obstacles, landmarks and districts if it were to be expanded to cover more bus lines or the whole city. This means that the potential to examine the game’s effects as a driver to motivate exploration within the city is limited. Since the chosen bus line passes through areas with many recognisable landmarks, it may also be difficult to generalise our results to other lines that pass through more residential areas where fewer noteworthy buildings tend to be found.

5 Results of External Playtesting

We have divided the data gathered from interviews with six beta test participants into three categories: (1) sensemaking – the players’ processes of understanding the game and drawing connections between context and game content, (2) engagement – the role of context in producing a more entertaining and useful user experience, and (3) awareness – the extent to which players were aware of the connections between the game content and the physical world. These categories were chosen based upon trends in the discussion during the interviews and their relevance to our research goals. Here, we present the most relevant data along with our analysis based on both the content of the interviews and our observation of the interview participants while playing Bus Runner on buses in Malmö. Group 1 had played in practice mode in advance of the test session, while group 2 played for the first time during the session so that we could get an insight into what may separate new and more experienced players of the game.

5.1 Sensemaking

Having played the game’s practice mode in advance, members of the first group remarked upon differences in their perception of the game after playing on the bus.

“I think more happened now. When I was playing practice mode I didn’t really get what the point of the game was in the same way as now when we were on the bus and I could see how it followed along.” (Andy, group 1)

“I just thought that you were supposed to race against the bus or something to see who got there first.” (Andy, group 1)

“That’s what I thought too, at first.” (Simon, group 1)

After playing on the bus, the first group were confident they understood the point of the game:

“You run alongside the bus. You follow it, outside.” (Ludwig, group 1)

They also remarked on the differences between the content they had seen in practice mode and on the bus, making a connection between the appearance of landmarks and the route taken by the bus.

“I didn’t see Turning Torso this time, but I think I saw it in practice mode.” (Simon, group 1)

“Do you have any idea why?” (Researcher)

“We didn’t go past it, right?” (Simon, group 1)

When asked about the connections between the physical world and the game, the second group deduced that data from the local public transport provider were used.

“It felt like GPS, but you said it’s not.” (Casper, group 2)

“I guess it’s [local public transport operator]’s timetable.” (Jesper, group 2)

“Yeah, they have some digital thing where it has when every bus passes a stop.” (Sebastian, group 2)

In some cases the participants assigned more meaning to in-game events than there actually was. For example, the appearance of particularly tricky soft drink can-throwing pedestrians prompted one player to say:

“It feels like [the cola cans] were there to slow you down in case you were progressing too quickly, or something like that” (Ludwig, group 1)

When actually their appearance is a product of dynamic difficulty adjustment intended to increase the challenge for more skilled players. Participants also made indirect connections. One remarked:

“It’s affected by how the bus drives too. If there’s a lot of traffic it takes longer to arrive at the next bus stop.” (Ludwig, group 1)

The game isn’t making use of traffic data directly, but heavy traffic is reflected by delays in the real-time bus timetables we use, suggesting that this data may be enough to create the impression of a more complex data than we directly use.

5.2 Engagement

A frequent point of discussion throughout the interviews was how the representation of location in the game allowed the players to engage more fully with the game without the distraction of worrying about when it was time to get off the bus.

“You don’t have to look up, so you can use the game for that too: you can see where you are and you know, so you don’t miss your stop.” (Simon, group 1)

“You don’t need to pay attention to two things anymore.” (Andy, group 1)

“Exactly.” (Simon, group 1)

“You can just look down at the game and you sort of know where you are without even thinking about it.” (Andy, group 1)

Beyond the practical benefits of the use of contextual data, the participants valued that the content of the game reflected the physical world outside the bus.

“Is it meaningful that you’re sitting on the same green bus that you see and jump on in the game?” (Researcher)

“Yes, I think so. It adds to the engagement or whatever you call it, because it feels more real.” (Jesper, group 2)

“It feels like Malmö. You’re playing a game that’s in Malmö.” (Casper, group 2)

“It’s always fun to see things that you know really well in games.” (Simon, group 1)

Members of the first group commented on the differences between playing on the bus and in practice mode.

“I think it’s more appealing to play on the bus… partly because it’s a pretty nice way of killing time and also you really keep track of where you are so you can be totally calm about missing your stop.” (Ludwig, group 1)

When asked whether they would enjoy the game as much if it were to use the same kinds of contextual data in a different setting, such as in space, there was a general agreement in the second group that the game would still be interesting, but that by losing the concrete connection to the city of Malmö it would not be as entertaining to play.

“It wouldn’t be the same thing because you wouldn’t recognise the areas in the same way […] I think this fits much better, you get that recognition of the city.” (Jesper, group 2)

“I think I would rather play the game as it is now too, simply because you recognise places you’ve been […] if it was set in space you’d just have asteroids and it wouldn’t make the same impression on me at all.” (Sebastian, group 2)

“I think that the backgrounds are the most charming bit. If you got rid of those I don’t think it would be anywhere near as rewarding.” (Casper, group 2)

Furthermore, if the game content was not connected to its physical setting:

“Without the bus information it’s just another regular platform game, so it wouldn’t be much different from other platform games.” (Simon, group 1)

5.3 Awareness

The impact of Bus Runner relies on players being actively aware of the connection between the physical world and the content of the game.

“I saw from the background that it was Malmö central station. I wasn’t looking out of the window because I was focussed on the game, but it felt like we should be there so I thought to myself: I’m here now.” (Casper, group 2)

“The first thing I thought of in the beginning was probably that bridge over there – you go over it [in the game]. It was immediately recognisable and then the central station and then… there are some, I mean, I recognise the area even though I don’t know exactly where I am.” (Jesper, group 2)

Most of the participants remarked upon their relative unfamiliarity with the city, particularly the second group.

“I don’t live here so it was just the central station [that I recognised].” (Casper, group 2)

“Same here, my sense of direction in Malmö is hopeless.” (Sebastian, group 2)

“I haven’t lived here that long either and I think it affected my recognition of where we were.” (Jesper, group 2)

Despite this, between them, the three participants in group 2 identified at least three of the five landmarks that could appear during their play session.

When asked about the relative importance of the game’s background images, which are specific to particular areas of the city, and the moving buses, which are found throughout the whole game a player responded:

“They serve different purposes. The backgrounds give you a bit of an idea of which area you’re in. The buses didn’t really do that - they felt more like a way of making progress.” (Andy, group 1)

5.4 Differences Between Groups

Comparing the two beta test groups, it was clear that the first group had more quickly developed a deeper understanding of the use of contextual cues in the game. Having had the chance to learn and practice the basic mechanics in advance allowed them to focus on understanding the relationship between context and content in the game and to compare the experience of playing the game both inside and outside of its intended setting. In contrast, the second group’s interview was centred much more on discussions of the game mechanics and how to play the game most effectively, suggesting that the group needed to get past the initial hurdle of getting used to the gameplay before being able to fully consider why the game is the way it is and how it relates to the physical world. This presents a challenge for developers of games using contextual data to influence content generation since, while any game must consider how best to introduce players to its content, requiring that players understand the connections between the game content and context at the same time as learning the basic mechanics adds an addition element of complexity. A potential solution for this is a more gradual introduction to the game mechanics in order to not overwhelm new players.

6 Discussion

Previous research such as Olsson’s CABdriver [1] has shown that it is not necessary for context-aware games to portray realistic settings for their connection to the context factors to be understood, but a very explicit connection like that of location in Bus Runner may be helpful in facilitating this understanding. While augmented reality games like Pokémon Go [10] place game content directly within the real world to make the use of context explicitly, it can be technically challenging to implement well and particularly challenging in settings involving high-velocity motion, such as in a vehicle [19]. Bus Runner presents an alternative through the technically less expensive means of a simplified representation of the physical world and we have seen that this is enough to make players aware of their approximate location. Different systems will clearly require different levels of precision, but our results indicate that the representation of context in Bus Runner is sufficient to allow players to remain aware of what is going on around them without losing engagement with the game.

Something surprising to us was the importance the players associated with the practical use of the game as a tool for updating them about their location while playing so they wouldn’t miss their bus stop. Several players remarked that the game required too much attention to simultaneously consider what was going on around them while playing. Without the built-in information to keep them well informed of the physical location of the bus and the guarantee that the game will end before they need to get off it might be difficult for players to balance the need to focus on the game with remaining aware of their surroundings.

For players to be able to trust the information presented to them by the game, this information needs to be reliable. One of the largest problems facing developers of a context aware application is how and where to get access to reliable and accurate data. Bus Runner uses two external data providers and the design research process has occasionally been affected by service outages, bugs or data inaccuracies. Despite this, DIP allowed us to access many different kinds of data through one API, simplifying the process of integrating these data sources into the game, since all data was presented in a common format. It is our view that if useful context aware games are to be developed for use on public transport, it is important that the public transport operator makes an active effort to provide useful, accurate and reliable data to developers.

Of course, a game also needs to be fun to play and one of our goals was to investigate how to use contextual data in a playful way to create fun and appealing interactions and gameplay. Examples of using context-aware games to encourage curiosity and exploration like Free All Monsters! [6] rely on location as a source of contextual data, but the game content does not necessarily have any semantic connection to these locations. In Bus Runner, we rely instead on value added by the connection between locations seen in the game and the physical world. Beta playtesters found the experience of playing a game set in a familiar location enjoyable and valued the familiarity of the surroundings both for their utility and the feeling of recognition they produce.

The extent to which players are aware of how the game content relates to contextual cues may depend on how familiar they are with the game’s setting – in this case Malmö. All of our players were at least familiar enough with Malmö to recognise a few landmarks and locations, but a tourist who has never set foot in Malmö before might have a very different experience with the game, due to the loss of an obvious connection between the game content and the physical world. On the other hand, the game could be seen as a way of exploring the city and being introduced to unfamiliar landmarks, thus serving a similar purpose to Garay-Cortes and Uribo-Quevedo’s [9] study of using a context-aware game to encourage students to explore locations on a university campus.

While our main focus was on the use of environmental contextual factors – since these have not been extensively explored as inputs to PCG – our results suggest that human context factors remain important. One such factor, player skill level, has consistently been a challenge throughout the research process. During and before alpha testing, the game’s difficulty level was significantly higher and was not dynamically adjusted according to player performance. Consequently, several of the players involved at this stage had trouble progressing far enough to see even a single landmark. This severely limited their exposure to some of the context-based features of the game and it was clear that players had no real awareness of their location while playing, recognising only objects such as buses as being from Malmö, rather than perceiving parts of the game as characteristic of a particular area. In contrast, during the beta tests players described a more precise understanding of their location. This points to a need for this kind of game to adapt to player ability in order to preserve a consistent flow in the gameplay whereby the use of contextual data can be seen and understood. This agrees with Lopes et al.’s [3] argument that adaptive PCG should be used to balance games for a wide range of skill levels in mobile games. Yannakakis and Togelius [12] however present a much fuller framework for Experience-Driven PCG than examples based purely on dynamic difficulty adjustment, arguing for player models that capture not just player skill but much more diverse aspects of playing style and how players are emotionally affected by game content. As such, it would be interesting to examine how player modelling could be combined with the kind of context-aware PCG we have presented here to make games that are better adapted to a broad range of players.

7 Conclusions

In this paper, we have presented the results of a design research process intended to explore the use of context cues in the procedural generation of levels for a mobile game. Given the sparsity of studies that combine context-awareness with procedural generation of content, the positive impact in terms of sensemaking, engagement and awareness which players expressed from real-life testing indicates promise for further development and use of such mixed approaches.

Specifically, our results from external beta testers indicate that players are able to remain aware of relevant aspects of their surroundings while focussing fully on the game and without having to divide their attention. This also raises questions for future research about how detailed context representations need to be to still promote awareness, where we are seeing indications that it is appropriate and advantageous to use context cues that represent the general physical area. However, in games (and possibly in other areas as well) it may be desirable to take a less literal approach where creativity and engaging interactions are highlighted. Additionally, when relying on open or shared data rather than internal sensors for contextual data, it is important to have reliable access to accurate data in a consistent format. This can be supported by active efforts from data providers (in our case the local public transport operator) to provide high quality data to developers. Finally, our results indicate that there is a need to adapt content to human factors that may extend beyond simple skill-level-based dynamic difficulty adjustment so that the learning curve or frustration do not distract from players perception of contextual cues. An approach to this is to investigate the role of player modelling in context-aware PCG as an extension to Experience-Driven PCG.