ebook img

Mechanizing Exploratory Game Design - Adam Smith PDF

327 Pages·2013·4.09 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Mechanizing Exploratory Game Design - Adam Smith

Mechanizing Exploratory Game Design Adam M. Smith Copyright (cid:13)c 2012 Adam M. Smith 1 Introduction 1 2 Interdisciplinary Context & Motivations 13 3 Game Design 15 4 Design Studies 37 5 Computational Creativity 49 6 Symbolic AI 61 7 Synthesis of Goals 83 8 Mechanizing Appositional Reasoning 87 9 Computational Caricature 101 10 ASP for Design Automation 115 11 Applied Systems Overview 173 12 Ludocore 175 13 Biped 191 14 Variations Forever 207 15 Refraction Tools 223 16 Rational Curiosity 245 17 Evaluation 261 18 Conclusion 279 iii iv Contents Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . xiv 1 Introduction 1 1.1 Goals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1.1 Amplify creativity of human game designers . . . . 3 1.1.2 Support deep, play-time design automation . . . . 3 1.1.3 Demonstrate tools that respect design problems. . 4 1.2 Research Context . . . . . . . . . . . . . . . . . . . . . . . 4 1.2.1 Game Design . . . . . . . . . . . . . . . . . . . . . 4 1.2.2 Design Studies . . . . . . . . . . . . . . . . . . . . 5 1.2.3 Computational Creativity . . . . . . . . . . . . . . 5 1.2.4 Symbolic AI. . . . . . . . . . . . . . . . . . . . . . 6 1.3 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.3.1 Mechanizing Design Spaces . . . . . . . . . . . . . 7 1.3.2 Situating Mechanized Design . . . . . . . . . . . . 8 1.4 Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.4.1 Design Spaces . . . . . . . . . . . . . . . . . . . . . 10 1.4.2 Computational Caricature . . . . . . . . . . . . . . 10 1.4.3 Target Audience: Procedurally Literate Designer- Programmers . . . . . . . . . . . . . . . . . . . . . 10 1.4.4 Automating Logical Reasoning . . . . . . . . . . . 11 1.4.5 Artifacts as Communication . . . . . . . . . . . . . 11 1.5 Outline of Dissertation . . . . . . . . . . . . . . . . . . . . 11 2 Interdisciplinary Context & Motivations 13 3 Game Design 15 3.1 Best Practices . . . . . . . . . . . . . . . . . . . . . . . . . 16 3.1.1 Prototyping . . . . . . . . . . . . . . . . . . . . . . 16 3.1.2 Playtesting . . . . . . . . . . . . . . . . . . . . . . 18 3.1.3 Balancing . . . . . . . . . . . . . . . . . . . . . . . 20 v 3.2 Folk Psychology in Game Design . . . . . . . . . . . . . . 21 3.3 Call for Structure . . . . . . . . . . . . . . . . . . . . . . . 22 3.4 Procedural Content Generation . . . . . . . . . . . . . . . 25 3.4.1 PCG Meets Game Design . . . . . . . . . . . . . . 26 3.4.2 Typical Architectures for Content Generators . . . 28 3.5 Attempts at Formalization and Automation . . . . . . . . 30 3.5.1 MDA . . . . . . . . . . . . . . . . . . . . . . . . . 30 3.5.2 A Factoring of the Concerns in Game Design . . . 31 3.5.3 Ludi . . . . . . . . . . . . . . . . . . . . . . . . . . 32 3.5.4 A Generic Framework . . . . . . . . . . . . . . . . 33 3.6 Game Design as a Design Discipline . . . . . . . . . . . . 34 4 Design Studies 37 4.1 The Relationship between Science and Design . . . . . . . 38 4.2 Methods of Design Studies . . . . . . . . . . . . . . . . . . 39 4.3 Vocabulary of Design . . . . . . . . . . . . . . . . . . . . . 40 4.3.1 Glossary . . . . . . . . . . . . . . . . . . . . . . . . 44 4.4 The Automated Architect . . . . . . . . . . . . . . . . . . 45 5 Computational Creativity 49 5.1 Vocabulary of Creativity . . . . . . . . . . . . . . . . . . . 50 5.1.1 “Creativity”. . . . . . . . . . . . . . . . . . . . . . 50 5.1.2 Novelty, Value, and Surprise. . . . . . . . . . . . . 50 5.1.3 Process vs. Product vs. Producer. . . . . . . . . . 52 5.1.4 Combinational, Exploratory, and Transformational Creativity . . . . . . . . . . . . . . . . . . . . . . . 52 5.1.5 Closed Loops . . . . . . . . . . . . . . . . . . . . . 54 5.2 Computational Creativity Meets Game Design . . . . . . 56 5.3 Mechanization and Computational Creativity . . . . . . . 57 6 Symbolic AI 61 6.1 Logic Programming . . . . . . . . . . . . . . . . . . . . . 62 6.1.1 Deductive Logic Programming . . . . . . . . . . . 64 6.1.2 Inductive Logic Programming . . . . . . . . . . . . 65 6.1.3 Abductive Logic Programming . . . . . . . . . . . 66 6.1.4 Prolog . . . . . . . . . . . . . . . . . . . . . . . . . 67 6.1.5 Constraint Logic Programming . . . . . . . . . . . 68 6.1.6 Answer Set Programming . . . . . . . . . . . . . . 69 6.2 Standard Problems . . . . . . . . . . . . . . . . . . . . . . 70 6.3 Standard Solutions . . . . . . . . . . . . . . . . . . . . . . 72 6.3.1 Backtracking and Completeness . . . . . . . . . . . 72 6.3.2 Heuristics . . . . . . . . . . . . . . . . . . . . . . . 73 6.3.3 Consistency and Propagation . . . . . . . . . . . . 74 vi CONTENTS 6.3.4 Constraint Learning . . . . . . . . . . . . . . . . . 74 6.3.5 Randomness and Restarts . . . . . . . . . . . . . . 75 6.4 General Game Playing . . . . . . . . . . . . . . . . . . . . 76 6.4.1 History . . . . . . . . . . . . . . . . . . . . . . . . 77 6.4.2 Rule Representations. . . . . . . . . . . . . . . . . 77 6.4.3 General Game Playing vs. Action Planning . . . . 79 6.5 Super-symbolic AI: The Knowledge Level . . . . . . . . . 81 7 Synthesis of Goals 83 8 Mechanizing Appositional Reasoning 87 8.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 87 8.2 Appositional and Abductive Reasoning . . . . . . . . . . . 88 8.3 Design Spaces . . . . . . . . . . . . . . . . . . . . . . . . . 90 8.4 Requirements for Knowledge Representations . . . . . . . 91 8.4.1 Constructivity . . . . . . . . . . . . . . . . . . . . 92 8.4.2 Constraint. . . . . . . . . . . . . . . . . . . . . . . 92 8.4.3 Evolution . . . . . . . . . . . . . . . . . . . . . . . 93 8.4.4 Analysis . . . . . . . . . . . . . . . . . . . . . . . . 94 8.5 Means of Mechanization . . . . . . . . . . . . . . . . . . . 94 8.5.1 SAT Solvers . . . . . . . . . . . . . . . . . . . . . . 94 8.5.2 Abductive Logic Programming . . . . . . . . . . . 96 8.5.3 Answer Set Programming . . . . . . . . . . . . . . 96 8.5.4 Future Demands . . . . . . . . . . . . . . . . . . . 97 8.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . 98 9 Computational Caricature 101 9.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 102 9.2 Computational Caricatures . . . . . . . . . . . . . . . . . 103 9.2.1 Visual Caricature . . . . . . . . . . . . . . . . . . . 103 9.2.2 Procedural Portraits and Computational Caricature 104 9.3 Computational Caricature of the Game Design Process . . 106 9.4 Exemplars . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 9.4.1 A Designer in a Box . . . . . . . . . . . . . . . . . 108 9.4.2 Cooperating with the Machine . . . . . . . . . . . 109 9.4.3 Imagining Gameplay . . . . . . . . . . . . . . . . . 110 9.4.4 Summary . . . . . . . . . . . . . . . . . . . . . . . 112 9.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . 112 10 ASP for Design Automation 115 10.1 ASP in Context . . . . . . . . . . . . . . . . . . . . . . . . 116 10.1.1 AnsProlog as a Little Language . . . . . . . . . . . 116 10.1.2 Perspectives . . . . . . . . . . . . . . . . . . . . . . 119 CONTENTS vii 10.2 Design Spaces in ASP . . . . . . . . . . . . . . . . . . . . 120 10.2.1 Representing Artifacts . . . . . . . . . . . . . . . . 122 10.2.2 Representing Spaces . . . . . . . . . . . . . . . . . 123 10.2.3 Modeled and Unmodeled Properties . . . . . . . . 123 10.2.4 Modeling, Solving, Interpretation, and Refinement 124 10.3 Programming Tutorials . . . . . . . . . . . . . . . . . . . 129 10.3.1 Hello Soggy World . . . . . . . . . . . . . . . . . . 129 10.3.2 Graph Coloring, Complexity, and Visualization . . 131 10.3.3 GolombRulers, Optimization, andNumericalCon- straints . . . . . . . . . . . . . . . . . . . . . . . . 136 10.4 Existing Design Automation Examples . . . . . . . . . . . 140 10.4.1 Diorama . . . . . . . . . . . . . . . . . . . . . . . 140 10.4.2 Anton . . . . . . . . . . . . . . . . . . . . . . . . 144 10.4.3 Toast. . . . . . . . . . . . . . . . . . . . . . . . . 147 10.5 Modeling Tutorials . . . . . . . . . . . . . . . . . . . . . . 149 10.5.1 Chess Mazes . . . . . . . . . . . . . . . . . . . . . 149 10.5.2 Strategy Game Maps. . . . . . . . . . . . . . . . . 157 10.5.3 PlatformerLevelswithSupportforMixed-Initiative Interaction . . . . . . . . . . . . . . . . . . . . . . 163 11 Applied Systems Overview 173 12 Ludocore 175 12.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 12.2 Building Games on the Event Calculus . . . . . . . . . . . 176 12.3 The Logical Game Engine . . . . . . . . . . . . . . . . . . 178 12.3.1 State, Events, and Consequences . . . . . . . . . . 180 12.3.2 Player Model Interface . . . . . . . . . . . . . . . . 182 12.3.3 Relation to the General Event Calculus . . . . . . 183 12.4 Ludocore in Action . . . . . . . . . . . . . . . . . . . . . 184 12.4.1 Gameplay Trace Inference . . . . . . . . . . . . . . 184 12.4.2 Modifying Rules and Configuration . . . . . . . . . 186 12.4.3 Using Player and Nature Models . . . . . . . . . . 188 12.5 Applications Enabled. . . . . . . . . . . . . . . . . . . . . 188 12.5.1 Game Design . . . . . . . . . . . . . . . . . . . . . 188 12.5.2 Crafting Game Playing Agents . . . . . . . . . . . 190 12.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . 190 13 Biped 191 13.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 13.2 Playtesting Background . . . . . . . . . . . . . . . . . . . 193 13.2.1 Playtesting with Humans . . . . . . . . . . . . . . 193 13.2.2 Playtesting with Machines . . . . . . . . . . . . . . 193 viii CONTENTS 13.3 System Overview . . . . . . . . . . . . . . . . . . . . . . . 194 13.3.1 Game Sketching Language . . . . . . . . . . . . . . 194 13.3.2 Interface elements . . . . . . . . . . . . . . . . . . 196 13.3.3 Supporting Playtesting. . . . . . . . . . . . . . . . 198 13.3.4 Implementation . . . . . . . . . . . . . . . . . . . . 200 13.4 Example Prototype . . . . . . . . . . . . . . . . . . . . . . 201 13.4.1 Game Mechanics . . . . . . . . . . . . . . . . . . . 201 13.4.2 UI Bindings . . . . . . . . . . . . . . . . . . . . . . 201 13.4.3 Human Playtesting . . . . . . . . . . . . . . . . . . 203 13.4.4 Machine Playtesting . . . . . . . . . . . . . . . . . 203 13.5 Conclusions and Future Work . . . . . . . . . . . . . . . . 204 14 Variations Forever 207 14.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 14.1.1 Variations Forever as a Game Project . . . . . . . 209 14.1.2 Variations Forever as a Research Project . . . . . 209 14.2 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . 211 14.3 Representing Game Rulesets in Logical Terms . . . . . . . 213 14.4 VF’s Generative Space . . . . . . . . . . . . . . . . . . . . 214 14.5 Zooming in on Games of Interest . . . . . . . . . . . . . . 217 14.6 Generating Playable Mini-games . . . . . . . . . . . . . . 218 14.6.1 Game Generator . . . . . . . . . . . . . . . . . . . 218 14.6.2 Game Engine . . . . . . . . . . . . . . . . . . . . . 219 14.7 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . 220 14.7.1 Coupling between Generator and Engine . . . . . . 220 14.7.2 Tradeoffs in Levels of Abstraction . . . . . . . . . 220 14.7.3 Evaluation . . . . . . . . . . . . . . . . . . . . . . 221 14.8 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . 222 15 Refraction Tools 223 15.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 224 15.2 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . 226 15.3 Answer Set Programming . . . . . . . . . . . . . . . . . . 227 15.3.1 ASP for PCG . . . . . . . . . . . . . . . . . . . . . 227 15.4 Refraction Puzzle Design . . . . . . . . . . . . . . . . . . 228 15.5 Problem Formalization . . . . . . . . . . . . . . . . . . . . 230 15.5.1 Mission Generation . . . . . . . . . . . . . . . . . . 231 15.5.2 Grid Embedding . . . . . . . . . . . . . . . . . . . 231 15.5.3 Puzzle Solving . . . . . . . . . . . . . . . . . . . . 232 15.6 System Descriptions . . . . . . . . . . . . . . . . . . . . . 234 15.6.1 Feed-Forward Mission Generation. . . . . . . . . . 234 15.6.2 Grid Embedding with DFS . . . . . . . . . . . . . 235 15.6.3 Puzzle Solving with DFS . . . . . . . . . . . . . . 236 CONTENTS ix 15.6.4 Grid Embedding with ASP . . . . . . . . . . . . . 237 15.6.5 Mission Generation with ASP . . . . . . . . . . . . 238 15.6.6 Puzzle Solving with ASP . . . . . . . . . . . . . . 239 15.7 Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240 15.7.1 Quantitative Comparisons . . . . . . . . . . . . . . 240 15.7.2 Qualitative Comparisons. . . . . . . . . . . . . . . 241 15.8 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . 242 16 Rational Curiosity 245 16.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 245 16.2 Game Design Practices . . . . . . . . . . . . . . . . . . . . 247 16.3 An Analogy with Science . . . . . . . . . . . . . . . . . . 248 16.3.1 Scientific Practices . . . . . . . . . . . . . . . . . . 248 16.3.2 Automated Discovery . . . . . . . . . . . . . . . . 249 16.4 Newell’s Knowledge Level . . . . . . . . . . . . . . . . . . 250 16.5 Creativity as Rational Curiosity. . . . . . . . . . . . . . . 252 16.5.1 Transformational Creativity in Game Design . . . 253 16.6 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . 256 16.6.1 Computational Creativity in Game Design. . . . . 256 16.6.2 New Perspective for Computational Creativity . . 258 16.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . 260 17 Evaluation 261 17.1 ASP for PCG . . . . . . . . . . . . . . . . . . . . . . . . . 263 17.2 Applied Systems . . . . . . . . . . . . . . . . . . . . . . . 265 17.2.1 Ludocore . . . . . . . . . . . . . . . . . . . . . . . 265 17.2.2 Biped . . . . . . . . . . . . . . . . . . . . . . . . . 266 17.2.3 Variations Forever . . . . . . . . . . . . . . . . . . 271 17.2.4 Refraction Tools . . . . . . . . . . . . . . . . . . . 273 17.3 Recap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276 18 Conclusion 279 18.1 Goals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280 18.1.1 Amplify creativity of human game designers . . . . 280 18.1.2 Support deep, play-time design automation . . . . 280 18.1.3 Demonstrate tools that respect design problems. . 281 18.2 Research Context . . . . . . . . . . . . . . . . . . . . . . . 281 18.2.1 Game Design . . . . . . . . . . . . . . . . . . . . . 281 18.2.2 Design Studies . . . . . . . . . . . . . . . . . . . . 282 18.2.3 Computational Creativity . . . . . . . . . . . . . . 282 18.2.4 Symbolic AI. . . . . . . . . . . . . . . . . . . . . . 283 18.3 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . 283 18.4 Approaches . . . . . . . . . . . . . . . . . . . . . . . . . . 284 x CONTENTS

Description:
1.2.1 Game Design . 1.4.4 Automating Logical Reasoning . 11 5.1 .4 Combinational, Exploratory, and Transformational . 12.4 Ludocore in Action . . programs can concisely encode the key conditions of artifact appropriate-.
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.