Flow Analytics in TFD
For our Human Computer Interaction (HCI), led by Prof. Katherine Isbister, I collaborated with Anish Kumar, M.S. Computer Science at NYU Poly, on ways to optimize flow in the Fisherman’s Dilemma game. Here is what we found:
Implementing “Flow” mechanics in The Fisherman’s Dilemma (prototype title) Game
With the increase in popularity of games, and introduction of thousands of new ones every month, game companies are required to provide an enthralling experience to gamers. In order to achieve a persistent retention rate in games, the introduction of “flow” in games becomes inevitable. Flow, a notion set by psychologist Mihaly Csikszentmihalyi, keeps the player’s emotions on the edge by maintaining an optimal game experience. In this paper we attempt to understand the relevance of flow theory in games and its adaptive behavior. After a close study of the notion and how it was already implemented in existing games, we set a workframe to implement “flow” in the “The Fisherman’s Dilemma” (TFD), an augmented reality game. TFD is currently in prototyping phase and has four layers of interactivity: 1. Application User Interface; 2. Physical board and holding a mobile device 3. Augmented Reality 4. Social network. The goal is to optimize TFD gameplay experience by close examination of the interaction layers and optimizing the game flow variables to create a more meaningful and educational game experience.
What is Flow?
Mihaly Csikszentmihalyi, is best known for establishing the field of positive-psychology and the notion of “flow” to investigate the source of happiness and creativity. Csikszentmihalyi grew up in Europe post-world war II, and was searching the answers for “why people who lose everything find a good reason to keep on living, be happy, and occasionally creativite”. While researching the topic, Csikszentmihalyi, found that people are the happiest when they are in a state of “flow,” a state of concentration and complete absorption with the activity or situation. Flow is a “state in which people are deeply involved in an activity, that nothing else seems to matter” (Csikszentmihalyi, xviii). In his book, “Beyond Boredom and Anxiety” Csikszentmihalyi states that “flow” consists of activities that have eight major components derived when observing dancers, composers, chess players and athletes. The components are: the activity is challenging and requires a skill; the activity is a merger of action and awareness; it has clear goals; direct immediate feedback; concentration on the task at hand; a sense of control; a loss-of self-consciousness; and an altered sense of time. Csikszentmihalyi states that the game “Chess” has the complexity, intellectual levels and competitive nature and is an ideal activity to investigate the notion of “flow”. Flow in chess, as in any other activity is dependent on a very delicate balance between being in control and being overwhelmed. Moreover, flow is influenced by the time spent playing, time spent studying playing, and the number of clubs each chess player belongs too.
Evaluating player enjoyment in games
Player enjoyment being the most important aspect of games, there is no direct mechanism to find it. In the essay “GameFlow: A model for evaluating Player Enjoyment in games,” Penelope Sweetser and Peta Wyeth try to provide a method for this evaluation over the regular analysis of the interfaces and mechanics of gameplay for game betterment. There are a few models used to analyze enjoyment in games, but most of them are specific to a particular aspects like attitudes, parasocial and transportation theory which indicates the positive experience on immersion. On the contrary, flow theory indicates that elements of enjoyment are universal irrespective of the involved activity. The general nature of the flow theory makes it suitable to understand the enjoyment in games, and thereby construct a model for it to be used during design. The reasoning that games are played for fun and experience, rather than rewards and glory suit the analysis of using the elements of flow theory to understand enjoyment. In attempts to building a model to understand the enjoyment and better the player engagement, the eight elements of flow were related to games. The concentration and attention can be increased by increasing the workload to optimal levels. The tasks can be made more challenging based on the skill set and thereby pacing the game accordingly. The skill of the player need to be improved to increase challenges and therefore should have a good tutorial which does not require any help or online interference. The player should be able to assert control over their actions which makes them feel they are not being played upon. The goals of the games should be appropriately informed and delivered, be it the main or secondary goal. Right feedback should be given to the player indicating the progress or achievements. High immersion levels are achieved when the emotions of the player are affected by the gameplay. Also, a good audio and a storyline lead to achieving good immersion. Social interaction sometimes plays a major role in games because players are introduced due to social connectedness and therefore the games should have external and internal social factors. When Sweetser and Wyeth compared WarCraft III and EverQuest, it was clear from the results analyzed that Warcraft III outperformed in every element of the flow related to gameplay as it complies with the flow elements better than EverQuest. Players play a major role in improving the game flow as there is a lot of dependency on the skill, interest and emotions the player undergoes. Even though the model developed could be used in understanding the enjoyment in games, this approach was mostly concentrated on the game mechanism ignoring the other components like the players role. However, this indicates that the flow theory can be used to study games and its emotional implications allowing the design of games with better experience.
Understanding of Flow in Games
In the essay “Toward an Understanding of Flow in Video Games” Ben Cowley et al. define concepts of game structure, player modeling, and approaches to find unique experience for players. A game, according to Cowley et al., is a formal information system that has rules and mechanics that can be adjusted to find the optimal game experience. Identifying the rule structure becomes important in formal specification which provides the opportunities to understand the game at different levels of formality. Cowley et al. identifies three rule structures: 1. Constitutive – formal structures creating the mechanics and controlling the operative rules; 2. Operative – players operations and interactions; 3. Implicit rules – Social informal rules brought in by the players. Cowley et al. also state that games are formulated as nouns, verbs, environment and the time (when the verb was actioned on nouns) which allow the understanding of player agency and practical experience. Identifying the player becomes equally important in delivering the flow which was missed in the Sweetser and Wyeth analysis. Player modeling is used to compliment the static topological construct captured prior to gameplay. Also, the other techniques as description decision theory could be used to understand the player types. The demographic game design (DGD) classifies the players as conquerors (win all times), managers (gain mastery), wanderer (fun and experience oriented), participant (enjoys social play). Other classification is based on the forms of playing agon (competition), alea (game of chance), mimicry (role-playing) and ilinx (immersion) which establishes the connections between the player types relating the player to the game. The experience of a player becomes important as well because this relates to a range of feelings during the gameplay and it becomes important to establish the right connection and feeling towards a game. To accomplish an optimal experience, skills and challenges should be complemented well otherwise a low skill and a hard challenge will lead to apathy. It is also observed that games facilitate flow much easily and do not have any hard prerequisites like prior knowledge and experience as indicated in the flow theory. Games are treated as information systems as games ideally work on inputs or actions by the player to interact with some meaningful content. The information in the game is then broken into the information known to all, known to one, known by the game and randomly generated, which is to be distributed and used optimally to provide optimal experience. The other observation is that the information processed by the players gives a better pleasurable experience when the information is relatable than when it is simple. Also, the more complex comprehension the player has of the content, more data can be processed which asserts control and interest. The difficulty in finding out the emotional states of the player without external hardware, leads to an assumption of occurrence of flow in games. However, this is a safe assumption as the player will already be in an emotional state and have a personality while playing a game to experience flow. This approach provides a broader implication of flow theory in games over the previous analysis which considered only the game ignoring the player and the environment. The consideration of game, player and flow information systems allows facilitates the design of adaptive games to induce right emotions and engagement towards the game with flow.
The Fisherman’s Dilemma (TFD) Game
The above research and analysis provides strong validations on using the flow theory in games to optimize the experience. Drawing inferences and approaches from the above research we decide to implement and test flow theory in the Fisherman’s Dilemma Game. TFD is a coopetition (cooperative and competitive) game designed for the game design thesis class by Liron Lerman. The idea for the game was inspired by Hardin’s 1968 essay “The Tragedy of the Commons.” The “tragedy” is a metaphor for the tension between the individual and the group where a shared common resource is depleted by self-interested individuals, on the expense of the group long-term goals. Common goods such as forestry, the atmosphere, noise and fisheries are subjected to exploitation that is slowly tapping into international public awareness. On the contrary to Hardin’s belief, Nobel prize winner Elinor Ostrom found that small groups of players can coordinate their actions and sustain the commons without external governing or punishment mechanism. TFD is a combination of a board game with augmented reality component – each of the players is going to use a mobile device (phone/ tablet) with a camera , which once pointed at the “common” board – they will be presented with augmented data behind a GUI interface through which they are going to execute their decisions. Players start the game with random distribution of fish, and circle the board 12 times to complete the game – each round represents a month – and in the end of each month, players have opportunity to sell their fish and buy upgrades. The game is kept interesting and test the users skill by imposing rules and restrictions on fishing which we will discuss later, play a major role in maintaining the flow. The winner of the game is the player with most points. The points will accumulate on a leadership board and will create an effect of repeated game – where reputation and shaming matters. The goal of TFD is to sustain a fishery. Each player will be represented through a fisherman’s boat that tries to maximize its monetary gains while maintaining a sustainable fishery. The tension of the game is coming from the the conflicting objectives of fishing on one hand, and sustaining on the other – creating a Prisoner’s Dilemma like situation.
Layers of Interaction in TFD
There are four layers of interactions in TFD game:
First Layer (APP UI): A simple, easy to use UI facilitating the user to start a new game, join an existing game, and provide various configuration options for managing the upgrades (sonar, boat speed, fish net size, cargo, sustain capacity). It also provides constant feedback on the players current standings in the game, level of other players conformity, current monetary units and the overall leadership board position “Global Stats.”
Second Layer (Physical): The physical component consists of the physical board game that has the target image in which the augmented reality is superimposed on. Another physical component is the actual mobile device used to play the game.
Third layer (Augmented Reality): This layer displays the hidden information that would be unique to each player – for example: Fisherman can only “see” what fish are surrounding their boats. Moreover, through the augmentation there will be a change in atmosphere based on the performance level of the player – when a game is played in a non-sustainable way, the water will turn red (due to blood) and there will be more volcanic activity. Through the AR, players would know their relative location to other players and “feel” the remaining amount of fish in the sea.
Fourth Layer (Social): This layer represents the social interaction component. The decisions taken by all players will influence the game. The players may “talk” and coordinate their actions, express their concerns, create truce or deter the group from reaching its goal. A second layer of social elements is the “leadership board” – through it, players would be able to indicate who is more cooperative than other.
Mapping flow components to TFD
The game TFD has a very basic game mechanic, and the tension and strategy is determined by how the variables will be used to optimize the game experience. Our initial research started by relating and identifying a few major variables (fish growth, fish price, upgrades and karma meter) which impacts the flow (balancing) of the game, through a system of positive and negative feedback. However, with extensive play tests it was clear that there was a potential for introduction of many more aspects like set of rules to complement cooperation and immersion which had major impact on the flow. All eight components of the flow by Mihaly Csikszentmihalyi is represented in the table A in relation to the game. In table B we discuss how the information is distributed across the gameplay which is used for flow analysis. The 4 core flow variables
We consider major emphasis is on “challenge and skill” and “activity as a merger of action and awareness.” We realized that many variables could be optimized by tweaking them, instead we choose to keep it to no more than four variables and focus on them. The four variables we choose are Fish Growth, Fish Price, Upgrades and Karma Meter as depicted in the table C which is a merger of tables A and B.
1. Fish Price The fish price is determined by the fish population at the end of each round. Analyzing several games, we realized that keeping the fish price same throughout the game does not impact the decision of the players to fish more. Therefore we wanted to make the change more significant and decided to implement an approximate exponential growth in fish price. How fast the exponential growth impacted the price, were for us to fine tune based on data we received from game analysis. While fine tuning the price, we took in account the theoretical flow chart created previously, which demonstrates that higher price per fish will result in overfishing, and lower price will create passiveness.
In the beginning of each game there are 100% of each of the five fish types. The “cheapest” fish being the Atlantic Cod has the initial population size (in a game for two people) set to 12, which is 100% of Cods in the game at the beginning. If 4 Cods were fished then only 8 of them remain and the population of Cods drop to 66%, which is rounded to 60% to calculate the fish price for the next round. The variation of the initial price of the Cod from 10$ when there were 100% Cods to 12$ per fish when the Cod population drops to 60% affects the gameplay, increases challenge, tests the skill, increases immersion and awareness there by affecting the flow of the game.
2. Fish Growth Fish Growth is similar in principle to the price growth – with a little twist: In nature, the growth of the fish is impacted by the population size per square area, a phenomenon called “Allee Effect.” This would translate in our game to an exponential decline in fish population. Lesser the fish, the harder it is for them to find each other and reproduce. Initially following this approach resulted in a dramatic decline of fish in the sea and practically, players lost the game around the fifth round (out of 12). To reverse this phenomenon of idle rounds when there is little fish and to increase immersion, challenge and skill, we decided to manipulate the actual fish growth by increasing the fish growth percentage when the population decreases dramatically (after all it is a game). To the player who is unaware of the working of the formula behind the scenes, they will see growth rate which is enough to keep them in the game but will be aware of the depletion increasing the challenge. In the table below we show the range of percentage increase in growth, when the fish population is 100% to more than 1%.
Again, we took into account both data from play tests and the theory we had in place initially which states that faster the growth rate will result in too many fish, and too less will cause scarcity and anxiety. The graph below represent how change in “Fish Population Size” affect the the “Fish Price” and “Fish Growth” to keep the game within the flow channel. The graph was standardized according to percentage:
3. Upgrades There are two basic types of upgrades which were derived based on the play tests, boat (sonar, speed, fish net size and cargo) and conservatory (conservation units to save fish). The price of these upgrades are derived from the average price of fish and fish growth rate to keep expenses proportional. Initially the price of any upgrade remained same throughout for any number of upgrades, which created imbalance in the game and reduced the opportunity of contesting to win the game very early. To discourage players from disproportionately upgrading their boat features, we made it more challenging to select the right upgrade by doubling the price from one upgrade to another besides the 3rd and 4th upgrade that had identical price. This also improved immersion and by allowing the flexibility to reconfigure the boat upgrades end of each round tested the skills and actions of the players. The boat upgrades demonstrated significant importance in the paper prototype version of game creating balance to some degree. The conservation upgrades also had an impact based on the challenges each players had to accomplish. Overall we could see a major impact the upgrades had on flow of the game asserting control to the players, testing skills, making it challenging and indulging the players in deeper thought for the game.
4. Karma meter The “Karma Meter” is used to improve the feedback magnitude through visual feedback , where extensive fishing (noncooperative game) leads to the display of change in the color of ocean from tropical blue to blood red. This is a visual indicator to how much cooperative the other players are, thus improving the experience. Also, other changes in the environment, like excess volcanic activity, change in sky color, and sea level, indicates the progress in time through change in season.
From Excel to a Database
We started by outlining the flow variables we identified and map them into an excel sheet. once we had the variable set we started connecting them to the game sequence – round after round. The excel sheet is a fully working prototype that calculates fish growth, price and upgrade price based. PRior to converting the excel sheet to a mySQL database we revised the excel sheet and made the formulas and macros work more efficiently. The entire “Tables” were outlined on the same sheet – and from one play test to another, we only had to duplicate the page – reset the input area – list the new players name and start “recording.”
The Database: From the excel sheet above we derived the architecture for the database warehouse. The latest version includes the following tables: TFD_PLAYER_TABLE – Contains player information such as name, game that is currently part of, money, upgrades, and boat location. TFD_GAME_TABLE – Contains data about the current state of the game, all the common information such as fish distribution, water color and volcanic level. TFD_CURRENT_GAME – this tables lists all the games that are played at the moment. TFD_FLOW_TABLE – this table is the key table of the database, which mash together all of the excel sheets data together. TFD_HISTORY_TABLE – this table is recording all of the players action for future flow analysis and optimization.
The Database Architecture Map: The database “primary key” is the GAME_ID, the key that links the data between most of the tables; The database “secondary key” is the FISH_TYPE that is linked only the game table. The TFD_GAME_TABLE is the main table (the heart) of the database. Whereas the GAME_TABLE, CURRENT_GAME, AND PLAYER_TABLE are focused on containing raw data – the flow table is of interest to this paper – and content is displayed below:
TFD_FLOW_FISH_TABLE VARIABLES and DATA_TYPE FISH_TYPE(INT): is an integer that identifies the fish by a number. Each fish type has a unique number.
FISH_NAME(STRING): Fish name – does not have any effect on the flow calculations.
INIT_FISH_QUANT_2(INT): The amount of fish that a game for 2 players consists of – in this model we start with a total of 30 fish – 12 Red (Cod), 8 Yellow (Tuna), 5 Blue (Salmons), 3 Green (Sharks) and 1 purple (Whale). The code that generates the random fish distribution is tapping into this database and creates the string out of it.
INIT_FISH_QUANT_3(INT): Same like the above, but optimized for 3 players and has a total of 45 fish in the random string. FISH_GROWTH_30(INT): The growth rate of the fish type given the population is above 30%.
FISH_GROWTH_0(INT):The growth rate of the fish type given the population size is above 0%. – this is a little higher growth rate to make the game more interesting towards the end (See Fish_Growth) Flow Variable.
FISH_PRICE_X: The fish price relative to the population size, much more elastic and contains several brackets: <0% , <20% , <40%, <60%, <80%, <100%
Other Major Aspects Impacting Flow Play testing and optimizing the initial 4 core flow variables identified in the earlier part of the research led us to finding more potential aspects which impacted the flow
1. User Interface and HCI factors: Optimal flow maintenance is obtained during the gameplay itself and not exactly while setting up the game and starting it. Provided the initial configuration experience to be ordinary will have negative impacts on the game itself and reduces the retention rate. To increase retention we had to provide a simple easy to use UI with as less button clicks and navigations to start the game. The fonts and button size are kept optimal for everyone to use providing a pleasant experience. UI with augmented reality comes in handy where the players can take the device closer to the physical board to get a detailed view of the scenery and increasing the tile size for easier and better navigation of the boat, this also increases the button size which makes it easier to click and fish. Initially the game had the players moving the boats moving physically on the board, with extensive feedbacks after playtests we understood this caused interruptions in the augmented reality display and reduced the experience by regular pawn movement on the board. Considering this we had to make the boat movement on the mobile interface and augmented reality thereby providing a better smoother experience and increasing immersion. The boat movement was also a smooth transition from the current location to the final selected location on the screen just like how the boat moves in reality. The other factor which we came up was the material of the board to be non reflective to provide continuous and better augmented reality experience. The augmented reality also enhanced the user experience by adding an element of surprise by displaying the information which was hidden on the board to only the player having the device. To create a more immersive feel the progress of the game is indicated by changing the environment of the augmented reality scenery. The scenery changes the color of the sky which is indicative of time and the color of the water turns reddish indicating extensive fishing and depletion of the fish, which also added to the feedback and the karma meter.
2. Mission Cards: The other major aspect impacting the flow of the game is the inclusion of mission cards in the game, which are of two basic types (common and personal) which are distributed at random. The core objective of these mission cards is to offer more challenge in the game and setting intermediate goals which spreads both a social and economical awareness, offers equal chance for every player to comeback and win the game. There are 3 common mission cards are assigned at the beginning of the game and if at least 2 of it is not completed at the end of the game each player will lose the game which improves the social factor and creates awareness. The private mission cards are distributed at random to the players at the end of each round and they are given an option of taking up the challenge or not. The common cards are mostly the ones to save fish and the private cards are to fish more, which adds dilemma in the players thought process. Accomplishing the common card targets every player is going to receive equal bonus which combined together is more than the private mission card target to fish. For example, if 4 players save a shark each player gets a 100 points but combined together the bonus is 400 and if a player fishes a shark the points are 125. In such a case the players need to save the fish ignoring the greed to fish and gain more points to save the game, which keeps the game interesting on how far the players can coordinate and still make profits.
3. Leadership Board: A good retention rate is very important for any game and this can be achieved by maintaining the history and ranking offering a status for the players to hold even after the end game. This leadership board is also indicative of how cooperative and how environmentally aware the players are. higher ranks in the leadership board lets the player make more points in every game by providing them the opportunity to increase the game limit. Points on the leadership board is considered based on the total points won and also the total games played.
Future and other implementation
While investigating the core variables we realized that there is a whole universe of services that provide additional analysis to the game. For example: google analytics can provide us with a cookie that will give us user demographic information such as geolocation, age and gender. We can receive information on the device on which the game was played on – the type of operating system. Based on the extra information, we can target specific audience and optimize the game experience accordingly. Moreover, the game has meaningful decisions around cooperation and competition and it would be interesting to analyze from the economic point of view as a social experiment. Last, we realized that there where as many Software-as-a-Service (SaaS) companies providing analytical information by demand, such as google analytics. Most of these companies are monetary oriented and are interested in increasing the volume of ads sells. We believe that there is a market for “Flow” analytics, that can take form either as a consultation firm, or as a web service. This service will be focused solely on increasing engagement time, and can be implemented beyond digital means, for example a tour in a museum, reading a paper magazine, etc.
Games consist of systems that have hundreds of variables, from which only a selected few are influencing the positive and negative feedback of the game, these are the flow variables. Flow variables are balanced back and forth to keep the player in the flow channel, and therefore increase the duration of engagement. Many game designers do not need, or use technical flow solution, like the one presented in this paper. Game designers are using their intuition, experience and taste to balance their game to create a meaningful experience. However, when a technical solution is implemented it is usually appealing to a wider audience – because it is based on a larger set of testers. Flow variables that were optimized to maximize game engagement time – will eventually reach a plateau because there are many external variables that are not quantifiable that makes a good game. The “External Variables” influencing the flow are the game visuals, audio esthetics and feedback, interesting game mechanics it self, and larger social implication that we tried to optimize, along with other flow variables. Each additional variable added to flow optimization – increase the complexity of optimization exponentially, therefore a flow solution has to consist core variables that impact solely the main feedback system. Flow in games is similar in many aspects to designing an A.I.: We can either hard code the flow-variables, and trigger them in specific event conditions (fish population size impacts price and growth rate ) – or we can create a learning “flow” engine that will create a unique experience for the players based on the few couple of games played or even the few rounds played initially. For example, if the players demonstrate an aggressive and uncooperative behavior, make the game even more difficult for them to encourage them to do otherwise. With such extensive and close observation of playtests we conclude saying that although there are flow variables and flow mechanisms, there are multiple other factors that need to be considered to influence the optimal experience.
Additional Images and graphs: The Global-Network (Ocean): The Board Game: Augmented Board Game: Multi-player augmentation: Paper prototype:
1. Adams Ernest, Balancing Games with Positive Feedback, Gamasutra.com http://www.gamasutra.com/features/20020104/adams_01.htm
2. Bellotti, Francesco, Assessment in and of Serious Games: An Overview, University of Genoa, Italy.
3. Cowley et al., Using Decision Theory for Player Analysis in Pacman, University of Ulster, Northern Ireland.
4. Cowley et al.,Toward an Understanding of Flow in Video Games, University of Ulster, Northern Ireland.
5. Caillois R, Barash M (translation), Man, Play and Games, London: Thames & Hudson, 1962. Chen, Jenouva. Welcome to Flow in Games. Website. Accessed on 10/26/2013 http://www.jenovachen.com/flowingames/flowtheory.htm
6. Costikyan Greg, Dynamic Difficulty Adjustment http://www.costik.com/weblog/2004_01_01_blogchive.html#107539921797922680
7. Csikszentmihalyi Mihaly, Flow: the Psychology of Optimal Experience. Harper Perennial, 1990
8. Csikszentmihalyi Mihaly, Beyond boredom and anxiety: Experiencing flow in work and play. Jossey-Bass Publishers, San-Francisco, 2000
9. Csikszentmihalyi Mihaly, Flow: the secret to happiness, TED TALK, http://www.ted.com/talks/mihaly_csikszentmihalyi_on_flow.htm, viewed on 10/25/2013
10. Dekoven Bernie, Of Fun and Flow, DeepFun.com, http://www.deepfun.com/funflow.htm
11. Huizinga J, Homo Ludens: a Study of the Play Element in Culture, Temple Smith, 1970.
12. Sweeteser, Penelope et al. GameFlow: A model for Evaluating Player Enjoyment in Games. University of Queenland, St. Lucia, Australia