**Creating Games** Williams College Spring 2017
A game is an aperture on strategic thought and interaction. The ideas behind board games, puzzles, and video games find applications in economics, business, biology, psychology, and politics. Games are also art. They literally contain graphic, sculptural, and industrial design. They are beautiful mathematical constructs. Games are an interactive medium that communicates that which is inaccessible through passive forms. Underlying disciplines as diverse as biology and art are deep, shared ideas: of a space containing design, decision, and constraints; of computation and process; and of the ultimate limits on reason and efficiency. This course reveals a surprising name for those deep ideas: computer science. This multidisciplinary course explores games and their serious applications through design exercises and game playing. Evaluation will be based on attendance, participation, analysis assignments, and a significant final project. For the project, you will work in a group to design a new game using both traditional art media and software like Photoshop, following the principles discussed in class. Along the way you will develop an intuitive grasp of computer science concepts including heuristics, minimax, and emergence. Required Texts =========================================================================================== Purchase ------------------------------------------------------------------------------------------- - McGuire and Jenkins, _[Creating Games: Mechanics, Content, and Technology](http://amzn.to/1Hm0clo)_, A K Peters, 500 pages, 2008 ("CG" in the syllabus. Check the [errata](https://www.cs.williams.edu/~morgan/creatinggames/).) - Harebrained Schemes, *_Shadowrun Returns_*, Video game for [Windows, OS X, SteamBox,](http://store.steampowered.com/app/234650/) [iOS,](https://itunes.apple.com/us/app/shadowrun-returns/id667026182?mt=8) [and Android](https://play.google.com/store/apps/details?id=com.harebrainedschemes.shadowrun&hl=en), 2013 - The Fullbright Company, *_Gone Home_*, Video game for [Windows, OS X, Linux, SteamBox,](http://store.steampowered.com/app/232430/) [PS4,](https://store.playstation.com/#!/en-us/games/gone-home-console-edition/cid=UP1012-CUSA01228_00-GONEHOME00000000) [and Xbox One](https://www.microsoft.com/en-us/store/p/gone-home-console-edition/bp74gq3n60z1), 2014 - Valve, *_Portal 2_*, Video game for [Windows, OS X, SteamBox](https://www.microsoft.com/en-us/store/p/gone-home-console-edition/bp74gq3n60z1), [PS3, and Xbox360](http://amzn.to/2jGheUy), 2011 These will collectively cost between $30 and $100 depending on the platforms that you choose and whether they are new or used. Choose the platform to which you have the best access. OIT provides certain game consoles in Sawyer and Jesup. You may be able to use OIT computers and tablets for assigned gaming. Provided ------------------------------------------------------------------------------------------- - Koster, *_A Theory of Fun for Game Design_*, O'Reilly Media, 299 pages, 2013 ("Koster" in the syllabus) - David Sirlin, *_Flash Duel_*, Revised 2nd Edition, 2011 - Donald X. Vaccarino, *_Dominion_*, Board game, 2008 - Klaus Teuber, *_Settlers of Catan_*, Board game, 1995 - John Yianni, *_Hive_*, Board game, 2001 - Robin Johnson, [*_Detectiveland_*](http://versificator.net/detectiveland/), Interactive fiction, 2016 - Lexaloffle, PICO-8 software, 2016 Schedule =========================================================================================== Unless otherwise noted, "A" sessions meet 8:30am - 9:45am in TCL 206 and "P" sessions meet 1:00pm - 4:00pm in TCL 217a. Office hours are: - Morgan: Mon 2-3pm TCL308 - [Brianna Rettig](ber2@williams.edu): Tue 9:45am-12:45pm, Wed 8-11pm, Sun 10am-1pm TCL217a - [Diego Gonzalez](drg4@williams.edu): Sun 7-9pm, Tue 7-10pm TCL217a Days marked with "★" have homework due, typed, at the _beginning_ of class. Reading can be done before or after the given day. The following schedule and assignments are subject to change. Always check the latest online version. Wed 1 Feb 2017: A: Introduction Read: Ch. 1. Start playing _Shadowrun Returns_. - Student introductions - Name, year, and major - Describe an interesting game in two sentences - Minigame exercise - Course policies - Required materials (Wed 1 Feb 2017): P: No Class (Thu 2 Feb 2017): Claiming Williams Day Tue 7 Feb 2017: Decisions in _Hive_ Read: Ch. 2 - _Hive_ demonstration - State, rules, and actions - Static evaluation - Decision trees - Equilibria Thu 9 Feb 2017: A: Probability ★ Due: Write one paragraph on some element of the interaction between progressive/story and emergent/RPG mechanics in _Shadowrun Returns_. Avoid summarizing your unique experience or providing a verdict-driven review. Read: Ch. 7-8 - The role of randomness - Cards (no replacement) - Dice (replacement) - Sums of dice - Mean and variance - Distributions Thu 9 Feb 2017: P: _Catan_ Play [_Catan_](https://boardgamegeek.com/boardgame/13/catan) (a.k.a. _The Settlers of Catan_) in TPL114 and then discuss: - Initial reactions - Strategies - Role of randomness - Maximizing payoff (expected value) - Minimizing risk (variance) - Game length - Complexity - Fairness - Balance - Replayability TA: Diego Tue 14 Feb 2017: Mechanics in _Catan_ Read: Ch. 9-10 and selections from [Koster](koster.pdf), [Monty Hall Problem](https://en.wikipedia.org/wiki/Monty_Hall_problem) - Review mechanics in _Tic-Tac-Toe_ - Express with only numbers, text, booleans, and arrays of values - State of _Checkers_...with restricted values - State of _Catan_ - Public vs. private state - Rules and Actions - Commodities and their flow Thu 16 Feb 2017: A: Role Playing Read: Ch. 4 - **Reward cycles** - Types of "role playing" - Filling a role on a team (party-based systems) - Acting/creating a character (pen & paper, LARP) - **Statistical combat** - Stochasm - Upgradable equipment (may be deterministic) - **RPG mechanics in _Shadowrun Returns_** - Work in groups and report back - Arrays of state for maps - Emergence vs. progression - Note: _CYOA_ books - ... in _Shadowrun_ - _playing Detectiveland before next Thursday_ Thu 16 Feb 2017: P: _Flash Duel_ Learn and play _Flash Duel_, and then discuss its design. Meet in TPL114. - Play 1:1 w/o powers - Play 1:1 w/ powers - Play 2:2 - Create a new, balanced character - Internal playtest - External playtest - Revise design - External playtest #2 ("Kleenex") TA: Diego (Fri 17 Feb 2017): Winter Carnival Tue 21 Feb 2017: NPCs - NPCs - Random walks are unsatisfying - Changing velocity - State machines - Traversal graphs - Conversation trees - Inspiring empathy - _Choose Your Own Adventure_ books - Interactive fiction Thu 23 Feb 2017: A: Programming ★ Due: _Detectiveland_ short response: Sketch the state and main mechanics of _Detectiveland_. - Discussion of _Detectiveland_ - Mechanics behind characters in _Flash Duel_ - Mapping concepts from board to video games Thu 23 Feb 2017: P: Paddle 1. Write the _Paddle_ game 2. Add two custom features, such as: - different colors - faster ball - larger paddle - timer - 2nd ball - 2nd player - score counter - background image TA: Diego (Mon 27 Feb 2017): GDC/No office hours (Morgan away at [I3D](http://i3dsymposium.github.io/2017/) and [VRDC](http://www.gdconf.com/vrdc/)) (Tue 28 Feb 2017): GDC/No class (Morgan away at [VRDC](http://www.gdconf.com/vrdc/)) (Thu 2 Mar 2017): A: GDC/No class (Morgan away at [GDC](http://www.gdconf.com/)) Thu 2 Mar 2017: P: Arrays and Loops ★ Due: Design a "2D" _Flash Duel_ mod/expansion: - May work with a partner (hand in one copy in that case) - Provide everything needed to play including printed rules, except the base game - Gaming materials such as blank cards, paper, and counters available by request - Base game [card images are here](http://sirlingames.com/flash-duel-card-gallery) Start playing _Gone Home_. Diego will lead the class on: - Grouping state with *objects* - Collecting objects into *arrays* - Processing arrays with *loops* - Implement 10 balls in _Paddle_ - Make each ball a separate color (Morgan away at [GDC](http://www.gdconf.com/)) Tue 7 Mar 2017: A: Modifying Arrays Meet in lab, TCL216 Read: Ch. 11-12 - Review objects, arrays, and loops - Animated sprites - Modifying arrays from loops - Addition - Deletion - Fire missiles on a key press, have them end at the top of the screen - Create explosions on a key press, have them expire after time TA: Brianna Thu 9 Mar 2017: A: Collisions ★ Due: Midterm proposals: - Design a board game or choose-your-own-adventure - Team of 2-3 students - Every student must submit at least one unique proposal, but proposals can include multiple students - Two sheets of paper (four pages): 1. Proposal sheet (one piece of paper) [PDF](https://www.cs.williams.edu/~morgan/creatinggames/worksheets/proposal-worksheet3.pdf) | [DOC](https://www.cs.williams.edu/~morgan/creatinggames/worksheets/proposal-worksheet3.doc) 2. Schedule with milestones and individual assignments (one page; see examples at the back of the book) 3. One-paragraph overview In class: - Discuss Midterm plans and deliverables - Self-Evaluation - Game design document 1. Title page 2. Abstract/Executive Summary 3. "Proposal" 4. Mechanics analysis/discussion 5. Schedule - Objective deliverables - Team member names - Dates 6. Change log - Review building a space shooter - Inserting into arrays - Collision detection - Removing objects from arrays - Nested loops Thu 9 Mar 2017: P: Space Invaders Extend _Paddle_ with a core mechanic similar to _Space Invaders_: - Objects to break ([_Breakout!_](https://www.youtube.com/watch?v=AMUv8KvVt08)) - Objects that shoot back ([_Space Invaders_](http://www.pacxon4u.com/space-invaders/)) - Falling objects ([_Kaboom!_](https://en.wikipedia.org/wiki/Kaboom!_(video_game)) - Sliding objects ([_Tapper_](https://www.youtube.com/watch?v=u17mTefrodo)) TA: Diego Tue 14 Mar 2017: A: Midterm Launch ★ Due: For _Gone Home_, provide: - A graph of the house, in which play spaces (rooms, cabinets, notes) are nodes and doors or other portals are edges. Note which edges are conditionally available. You may use online walkthroughs and maps, and the game itself to construct this. It need not be 100% complete...I'm looking for some interesting "lock and key" design sequences, not a complete walkthrough. - A 1-paragraph discussion of a moment in which you experienced a specific emotion in the game (that was likely intended by the developers), and how the game's content or design provoked that experience. Start playing _Portal 2_. - Discuss _Gone Home_ - Midterm workshopping TA: Brianna Thu 16 Mar 2017: A: _Detectiveland_ Workshop a software implementation design and plan: - Design the branching narrative - Authoring environment - Inventory state - Display of inventory - World map navigation - Timed events TA: Brianna Thu 16 Mar 2017: P: Mid. Workshop Meet in TPL114 TA: Diego (Mon 20 Mar 2017): Spring Break Begins (Fri 31 Mar 2017): Spring Break Ends Tue 4 Apr 2017: Midterm Workshop ★ Due: Midterm Milestone 1. GDD Full Structure 2. Changelog demonstrates: 1. Internal Playtests 2. External Playtests 3. Design changes for balance 3. Schedule demonstrates: 1. Production plan 2. Presentation plan 4. Playable prototype 5. Written rules TA: Brianna (Thu 6 Apr 2017): No class Thu 6 Apr 2017: P: Midterm Present Meet in TPL 114 Tue 11 Apr 2017: A: Sex and Gender ★ Read: - [APA Definitions](http://www.apa.org/pi/lgbt/resources/sexuality-definitions.pdf) - [A Gay History of Gaming](http://www.ign.com/articles/2012/01/25/a-gay-history-of-gaming) - [I'm a 12-year-old girl...](https://www.washingtonpost.com/posteverything/wp/2015/03/04/im-a-12-year-old-girl-why-dont-the-characters-in-my-apps-look-like-me/?utm_term=.0296d561bde9) - [The games industry is wrong...](http://www.polygon.com/2015/3/5/8153213/the-games-industry-is-wrong-about-kids-gaming-and-gender) - [How Video Game Breasts Are Made](http://kotaku.com/how-video-game-breasts-are-made-and-why-they-can-go-so-1687753475) - [Female Gamers Speak About the Bayonetta Franchise](http://www.negativeworld.org/feature/11720/female-gamers-speak-about-the-bayonetta-franchise-part-1-of-2#.WKXf_RIrJE4) - [Building a Character: Cremisius "Krem" Aclassi](http://blog.bioware.com/2014/12/04/building-a-character-cremisius-krem-aclassi/) Due: 1-paragraph response to one of the articles (not the APA definitions). Graded pass/fail. Don't spend more than 20 minutes on this--you have an outstanding video game assignment and I just want you to write as a way of preparing for the in-class discussion. [Slides from class](sex+gender.pdf) (Thu 13 Apr 2017): No class Thu 13 Apr 2017: P: Programming ★ TBD Due: _One_ of the following: - A codeheart.js top-down map-based interaction with barriers, 4-direction movement, picking up an item, and avoiding an enemy (which need not move). This should be mechanically comparable to one "room" of _The Legend of Zelda_ or _PAC MAN_, but need not be visually or mechanically sophisticated. - A simple PICO-8 program (comparable to Paddle or the above) - A _Portal 2_ mod (one chamber) - A _Shadowrun Returns_ mod (one area) - Any other game mod or video game...but you must negotiate it with me first. Come to class prepared to present your homework and discuss/prototype final project video game ideas. TA: Diego (Mon 17 Apr 2017): No office hours Tue 18 Apr 2017: A: Board Game Props. Meet with Brianna to work on final project proposals for *board games*. If your game is a board-video game hybrid or has complex board game-like mechanics in a video game (e.g., RPG, deck-building), then you must attend this session. Everyone is _invited_ to attend. (Morgan is out of town) (Thu 20 Apr 2017): A: No class (Morgan is out of town) Thu 20 Apr 2017: P: Video Game Props. Meet with Diego to work on final project proposals for *video games*. If your game is a board-video game hybrid, then you must also attend this session. Everyone is _invited_ to attend. (Morgan is out of town) Tue 25 Apr 2017: Violence ★ Read: - [Why Hotline Miami is an important game](http://www.gamasutra.com/blogs/RamiIsmail/20121029/180408/Why_Hotline_Miami_is_an_important_game.php) - [Inside](http://casual-effects.blogspot.com/2016/07/inside-understanding-games-3.html) - [_Uncharted 4_ Sam Pursuit sequence](https://www.youtube.com/watch?v=sB0xy74Zrj8) - _This War of Mine_ - _Superhot_ - _God of War_ Due: 1-paragraph response to one of the articles or games Come prepared to give a two-sentence summary of your intended final project game medium, group, setting, and primary mechanic. Thu 27 Apr 2017: A: Final Project Launch Due: - Proposal sheet - Proposal sample You must be greenlit by the end of class session (you can get approval beforehand, too!) TA: Brianna Thu 27 Apr 2017: P: Project Workshop TA: Diego Tue 2 May 2017: A: Project Workshop ★ Due: Final Project Milestone TA: Brianna Thu 4 May 2017: A: Project Workshop Board and hybrid game teams must attend in TCL206. Video game groups work in TCL216. TA: Brianna Thu 4 May 2017: P: Video Game Work. Video and hybrid game teams must attend in TCL217a. Board game groups meet 1-4pm at a location of your choice. TA: Diego Thu 4 May 2017: Class of 1960 Lecture Come see distinguished [Prof. Hany Farid](http://www.cs.dartmouth.edu/farid/) of Dartmouth discuss the impact of computer image analysis on social and legal issues at 7:30pm in TCL123! Optional, with extra credit granted for attendance. (Mon 8 May 2017): GTC/No Office hours Tue 9 May 2017: A: Present. Workshop - Meet with Brianna in TCL216 - Polish presentations - Cut and workaround broken features Morgan away at [GTC](http://www.gputechconf.com/) Thu 11 May 2017: A: Final Present. Due: [Final Project Deliverables](final.pdf) Final project presentations: - 8:30 PAC-Annie - 8:45 Shea - 9:00 Amphibians - 9:15 (en)Danger Thu 11 May 2017: P: Celebration - Final project presentations: - 1:00 Blocked - 1:15 Gravity Watch - 1:30pm Course evaluations - 2pm Play each other's games Evaluation =========================================================================================== You'll receive both quantitative and qualitative evaluation of your work. I evaluate the creative art aspects of assignments primarily based on your *demonstrated approach* to the work and secondarily on the success of the work. A professional-quality game submitted without evidence of a good process would likely receive a failing evaluation. I reward a conscious and academic approach, not luck or preexisting talent. I'm sympathetic to students who take responsibility by respecting the material, supporting their teams, lifting up others, and engaging in class. There's a lot of leeway to *negotiate your own assignment* topics and specifications if you conduct yourself in that manner. I'm unsympathetic to those who let down their teams, skip assignments or class, and make excuses. I encourage and value feedback on the course in office hours and by e-mail. Many assignments have time limits to which I expect you to adhere, under the Honor Code. I know that you could produce more work given more time, and maybe earn a slightly higher grade. But, in my experience teaching courses like this over the last decade, more time just allows students to compensate for a lack of skill. It snowballs because you need even more time for future assignments if you haven't mastered skills. Limited time forces you to develop skills to work better, and that leads to more learning and usually better grades in the long run. It also leads to you sleeping more and honoring your commitments to other courses, people, and activities. So, work smarter, not harder. We study methods for managing group work. When you're on a team, it is important that everyone agree on the level and distribution of effort, and then deliver what they promise. There's a difference between pulling your weight and being a martyr. We seek to avoid the mutual resentment generated by the latter. Grades will reward teams that actively address management problems over those that seek to compensate for them. I employ the full range of grades, which I report for assignments on the range [0.0, 4.3] (following the Williams scale) rather than coding in letters and modifiers. Objectively completing the required aspects of an assignment will typically earn a 3.0. Neglect reduces grades below that quickly. Work that earns higher than 3.0 must demonstrate (subjective) insight, technical ability, care, process, and passion. Grades above 3.0 increase sublinearly in quality; the quality difference between a 3.0 and 3.3 assignment is less than that between a 4.0 and 4.3 assignment. I expect the *average grade on most assignments to be 2.7* ("B-") and the average final grade in the course to be no higher than 3.2 (according to the Williams grading policy for 100-level courses). Most group projects will earn the same grade for all members. The contributions of different activities to your 100-point final grade are: Component | Value ----------------------|------------ Engagment | 10 Short Assignments | 50 Midterm Game | 20 Final Game | 20 The *short assignment* topics are: - _Shadowrun Returns_ - _Gone Home_ - _Detectiveland_ - _Flash Duel_ - _Portal 2_ - Programming - Sex and Gender - Violence and Post-modernism The *midterm* and *final* grades are based on a series of checkpoints and an individual self-evaluation. While they are team projects, the grades of individuals may differ based on awareness of the strengths and limitations of the work as expressed in that self-evaluation. Recommended projects include: - A codeheart.js game - A modification for _Flash Duel_, _Hive_, _Settlers of Catan_, or _Dominion_ - A PICO-8 game - A set of three _Portal 2_ levels - A _Shadowrun Returns_ module *Attendance is required* in class. More than one absence without pre-arranged written approval or from me or a retroactive excuse from a dean in writing will reduce your final course grade by 5 points per session missed. Lateness by more than 10 minutes or repeated lateness will count as absence. Students absent from the first or second class session will be dropped from the course. The reading is interesting but sometimes takes a while (at least, by Art and CS standards). The online quizzes contain tedius, simplistic comprehension questions, but fortunately are short. They incentivize completing the reading on time, which is important for your performance in class and on other assignments but is something students tend to devalue without an explicit graded reward. *Engagement* is my subjective evaluation of how you interact with the material and students. I use the full range from 0% (e.g., performs required work but does not interact) to 10% (e.g., asks questions in discussion, goes a bit beyond the requirements on assignments, comes to office hours, raises new topics in class) for this. You of course cannot engage if you are not present in class or don't submit assignments. At the end of the semester, I subjectively assign final grades after ranking students according to their numerical average and looking for natural clumps in the distribution. There is no a priori linear relation between your numerical average and the final grade, although I almost always maintain the ranking and will not adjust final grades below the raw numerical averages. Because of the cumulative and group nature of some projects, in fairness to other students, to avoid work piling up on you, and out of a desire to return graded work as soon as possible, it is essential that everyone begin and end assignments at the same time. So, *late work is not accepted and I do not grant extensions* in Art/CS 107. Please read the entire schedule for the course to avoid missing deadlines as a result of planned absences, and start work early to minimize the impact of unplanned absences. Expect that at least one member of a team will become sick or injured during any project and make your schedules suitably conservative. If you believe that you have an exceptional situation arising from an unavoidable, long-term absence, then apply to the dean's office to be excused from the work that was or will be due during that period. Deans can make a recommenation on your behalf without you having to divulge private details to me. Resources =========================================================================================== Supported Tools ------------------------------------------------------------------------------------------- - [codeheart.js framework and documentation](https://casual-effects.com/codeheart/) - [Games in Sawyer library](http://librarysearch.williams.edu/primo_library/libweb/action/search.do?fn=search&ct=search&initialSearch=true&mode=Advanced&tab=default_tab&indx=1&dum=true&srt=rank&vid=01WIL&frbg=&tb=t&vl%28164626582UI0%29=any&vl%28164626582UI0%29=title&vl%28164626582UI0%29=any&vl%28freeText0%29=&vl%28376572935UI0%29=AND&vl%28164626583UI1%29=any&vl%28164626583UI1%29=title&vl%28164626583UI1%29=any&vl%28freeText1%29=&vl%28376572937UI1%29=AND&vl%28164626698UI2%29=any&vl%28164626698UI2%29=title&vl%28164626698UI2%29=any&vl%28freeText2%29=&vl%28376572935UI2%29=AND&vl%28164626701UI3%29=any&vl%28164626701UI3%29=title&vl%28164626701UI3%29=any&vl%28freeText3%29=&vl%28376572935UI3%29=AND&vl%28513573627UI4%29=lsr01&vl%28freeText4%29=game&vl%28376572935UI4%29=AND&vl%28513573622UI5%29=lsr02&vl%28freeText5%29=&vl%28376572935UI5%29=AND&vl%28164626857UI6%29=all_items&vl%28513573678UI7%29=all_items&vl%28513573691UI8%29=all_items&vl%28376572942UI9%29=00&vl%28376572943UI9%29=00&vl%28376572944UI9%29=Year&vl%28376572945UI9%29=00&vl%28376572946UI9%29=00&vl%28376572947UI9%29=Year&scp.scps=scope%3A%2801WIL_ALMA%29%2Cscope%3A%2801WIL_OAI%29%2Cprimo_central_multiple_fe&Submit=Search) - [Creative commons and public domain assets](library.williams.edu) Unsupported Tools ------------------------------------------------------------------------------------------- - [Offical PICO-8](http://www.lexaloffle.com/pico-8.php) fantasy console and unofficial [cheatsheet](https://neko250.github.io/pico8-api/) - [Twine](http://twinery.org/) Javascript/browser interactive fiction framework - [JSGAM](http://jsgam.sourceforge.net/) Javascript/browser point-and-click adventure game engine - [rot.js](http://ondras.github.io/rot.js/hp/) Javascript/browser ASCII Rogue-like game engine - [Roguelike Blueprint](https://github.com/gamelab/Roguelike-Blueprint) Javascript/browser graphical Rogue-like game framework - [melon.js](http://melonjs.org/) Javascript/browser arcade game engine - [Programming guide for video gamers](http://ithare.com/programming-guide-for-video-gamers/) Recommended Reading ------------------------------------------------------------------------------------------- ### Mechanics - [What makes players feel satisfied?](http://www.gamesprecipice.com/satisfaction/) in Harkey, Satisfaction Guaranteed - Laying a Foundation for Fun in Games, blog post http://www.gamesprecipice.com/satisfaction/ viewed 1 March 2015 - [Mechanics analysis of chess](http://www.randalolson.com/2014/05/24/a-data-driven-exploration-of-the-evolution-of-chess-match-lengths-and-outcomes/) in Olson, A data-driven exploration of the evolution of chess: Game lengths and outcomes, 2014 blog post - [Archive.org's old video games](https://archive.org/details/historicalsoftware) playable in a browser - [Players value what they have more than what they want](http://en.wikipedia.org/wiki/Endowment_effect) in the Endowment effect, Wikipedia entry http://en.wikipedia.org/wiki/Endowment_effect viewed 1 March 2015 - [Why desire for individual style paradoxically leads to conformity](http://rsos.royalsocietypublishing.org/content/2/3/140437) in Smaldino and Epstein, Social conformity despite individual preferences for distinctiveness, Royal Society Open Science, DOI: 10.1098/rsos.140437, 4 March 2015 - [Gerrymandering as a mechanic](http://www.washingtonpost.com/blogs/wonkblog/wp/2015/03/01/this-is-the-best-explanation-of-gerrymandering-you-will-ever-see/) in Ingraham, This is the best explanation of gerrymandering you will ever see, Washington Post, 1 March 2015 - Bille, [The Invisible Hand of Super Metroid](http://www.gamasutra.com/blogs/HugoBille/20120114/90903/The_Invisible_Hand_of_Super_Metroid.php), Gamasutra, 14 January 2012 - Das et al., [Examining Game World Topology Personalization](http://sauvik.me/system/papers/pdfs/000/000/012/original/camera_ready.pdf?1429749870), Proceedings of CHI 2015 - [Modeling what we perceive instead of what is real](http://www.theatlantic.com/technology/archive/2013/05/the-philosophy-of-simcity-an-interview-with-the-games-lead-designer/275724/) in Manaugh and Twilley, The Philosophy of SimCity: An Interview With the Game's Lead Designer, The Atlantic, 9 May 2013 - [Game design as search and optimization](http://www.gamasutra.com/blogs/TynanSylvester/20130311/188256/The_Design_Landscape.php) in Sylvester, The Design Landscape, Gamasutra, 11 March 2013 - [Creating a casual indie megahit through gentle in-app purchases](http://www.polygon.com/2015/3/3/8142247/crossy-road-earnings-10-million-gdc-2015) in The story of Crossy Road, Polygon, 3 March 2015 - [How to compute the number of possible Go positions](http://tromp.github.io/go/gostate.ps) in Tromp and Farnebäck, Combinatorics of Go, 22 Nov 2009 - [An optimal strategy for Poker, taking imperfect information and betting into account](http://www.sciencemag.org/content/347/6218/145.abstract) in Bowling et al., Heads-up limit hold'em poker is solved, Science, volume 347, no. 6218, pages 145-149, 9 January 2015 - [Blizzard's chief economist applies what he learned in games to saving Greece's economy](http://www.nytimes.com/2015/02/17/opinion/yanis-varoufakis-no-time-for-games-in-europe.html?_r=2), Varoufakis, Yanis Varoufakis: No Time for Games in Europe, New York Times, 16 Feb 2015 - [Ultimatums and extortion can succeed in the Prisoner's Dilemma game](http://www.ncbi.nlm.nih.gov/pubmed/22615375) in Press and Dyson, Iterated Prisoner's Dilemma contains strategies that dominate any evolutionary opponent, Proc Natl Acad Sci U S A, 109(26):10409-13. doi: 10.1073/pnas.1206569109, 26 June 2012 - [Computing without revealing private information](http://www.scientificamerican.com/article/cryptographers-could-prevent-satellite-collisions/) in Hemenway and Welser, Cryptographers Could Prevent Satellite Collisions, 20 Jan 2015 - [How to prove that you know something without giving it away](http://en.wikipedia.org/wiki/Zero-knowledge_proof) in Wikipedia entry for Zero-knowledge proof, http://en.wikipedia.org/wiki/Zero-knowledge_proof, viewed 1 March 2015 ### Technology - [Interview with AI pioneer Stuart Russell](https://www.quantamagazine.org/20150421-concerns-of-an-artificial-intelligence-pioneer/) in Wolchover, Concerns of an Artificial Intelligence Pioneer, April 2015 - Van Verth, [Doing Math with RGB (and A)](http://www.essentialmath.com/GDC2015/VanVerth_Jim_DoingMathwRGB.pdf), GDC 2015 - [Robots learning to play arcade games](http://www.nature.com/articles/nature14236.epdf) in Mnih et al., Human-level control through deep reinforcement learning, Nature 518, 529-533, 26 Feb 2015 (see also the [Science blog](http://news.sciencemag.org/technology/2015/02/artificial-intelligence-bests-humans-classic-arcade-games) summary) - [An example of 3D video game computer graphics algorithms](http://www.adriancourreges.com/blog/2015/03/10/deus-ex-human-revolution-graphics-study/) in Courreges, Deus Ex: Human Revolution - Graphics Study, blog post at http://www.adriancourreges.com/blog/2015/03/10/deus-ex-human-revolution-graphics-study/, 10 March 2015 - [Female breast simulation technology and content](http://kotaku.com/how-video-game-breasts-are-made-and-why-they-can-go-so-1687753475) in Hernandez, How Video Game Breasts Are Made, Kotaku, 24 February 2015 - [Math for working with hexagonal grids](http://www.redblobgames.com/grids/hexagons/) in Patel, Hexagonal Grids, blog post http://www.redblobgames.com/grids/hexagons/, March 2015 ### Content - [Cultural appropriation](http://www.rockpapershotgun.com/2015/03/04/hopi-less-how-kachina-became-donut-county/) in Walker, Hopi-less: How Kachina Became Donut County, Rock, Paper, Shotgun, March 2015 - [A post-modern video game](http://www.gamasutra.com/blogs/RamiIsmail/20121029/180408/Why_Hotline_Miami_is_an_important_game.php) in Ismail, Why Hotline Miami is an important game, Gamasutra - [Art and This War of Mine-- An Interview with 11 bit Studios](http://techraptor.net/content/art-war-mine-interview-11-bit-studios), TechRaptor, 2015 - [Poster-style art design in Firewatch](http://www.polygon.com/features/2015/3/12/8190441/before-firewatch-was-a-3d-world-it-was-a-painting) in Tach, Before Firewatch was a 3D world, it was a painting - [The battle for a female protagonist in Remember Me](http://www.gamesindustry.biz/articles/2013-03-19-dontnod-publishers-said-you-cant-have-a-female-character) in Weber, Dontnod: Publishers said you can't have a female character, gamesindustry.biz, 19 March 2013 - [Racism by omission and stereotyping in video game character design](http://www.polygon.com/2014/8/13/5995139/a-life-spent-gaming-while-black) in Payne, A life spent gaming while black, Polygon, 13 Aug 2014 - [Girls want to play female characters and boys don't care](http://www.polygon.com/2015/3/5/8153213/the-games-industry-is-wrong-about-kids-gaming-and-gender) in Hall, The games industry is wrong about kids, gaming and gender, Polygon, 5 March 2015 (Wiseman and Burch's primary paper is not yet available) - Artist timelapses. Pay attention to how effects are achieved, where the artist spends his or her time, and when in the process different elements are added. You should mimic their processes: - [2D coloring](https://www.youtube.com/watch?v=kgCH0pGe-N4) - [Flat pixel art](https://www.youtube.com/watch?v=pNacAIOGvVo) - [Representational pixel art](https://www.youtube.com/watch?v=sQQWMeQOZM8) - [3D modeling in ZBrush](https://www.youtube.com/watch?v=Rxf9JaG-3fo) - [3D modeling in Maya](https://www.youtube.com/watch?v=J1mExXURsWk) - [Texturing in ZBrush](https://www.youtube.com/watch?v=mqkMaLmIG5w) - [Rigging a character for animation in 3DS Max](https://www.youtube.com/watch?v=9KiL7G1RrbA) - [Fingle](http://fingleforipad.com), an iPad game about intimacy - [Consentacle](http://deadpixel.co/2014/09/consentacle-how-do-i-get-some/), a board game about sex - [How do you do it?](http://store.steampowered.com/app/353360/) - A video game about a child's sexual curiosity - [Hand-drawn animation over photographs for Last Window](https://www.youtube.com/watch?v=xv6L26DZYEs) in Last Window: The Secret of Cape West (Behind the Scenes: Animation), video, 13 Oct 2010 - [A survey of papers on the positive and negative social impact of video games](https://www.reddit.com/r/GamerGhazi/comments/2yeh1f/in_answer_to_where_are_the_scientists_who_study/) in Anonymous, Reddit post https://www.reddit.com/r/GamerGhazi/comments/2yeh1f/in_answer_to_where_are_the_scientists_who_study/ 9 March 2011 - [Dys4ia](http://wizardofvore.itch.io/dys4ia) A journal game about deciding to begin hormone replacement therapy. - [A female gamer's plea for more inclusive mobile games](http://www.washingtonpost.com/posteverything/wp/2015/03/04/im-a-12-year-old-girl-why-dont-the-characters-in-my-apps-look-like-me/?postshare=6231425504096857) in Messer, I'm a 12-year-old girl. Why don't the characters in my apps look like me?, Washington Post, 4 March 2015 - [Language heavily influences conscious perception of color](http://www.businessinsider.com/what-is-blue-and-how-do-we-see-color-2015-2) in Loria, No one could see the color blue until modern times, Business Insider, 27 Feb 2015 (original podcast) ### Miscellaneous - [Crypt of the NecroDancer](https://www.youtube.com/watch?v=3EL6VK557Yk) documentary - [Double Fine Adventure!](https://www.youtube.com/playlist?list=PLIhLvue17Sd7F6pU2ByRRb0igiI-WKk3D) documentary - [How I Found Games Useful in Dealing with Disability](http://ayogo.com/blog/games-useful-in-dealing-with-disability/) - [Bogost, The Cathedral of Computation](http://bogost.com/writing/the-cathedral-of-computation/) - [Rise of video games and Silicon Valley](http://amzn.to/18Of7oe) in Levy, Hackers: Heroes of the Computer Revolution, 2010 - [Game development culture](http://www.amazon.com/gp/product/0262028190/ref=as_li_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=0262028190&linkCode=as2&tag=casueffe06-20&linkId=KEAFRRFC7KBPXUNK) in O'Donnell, Developer's Dilemma: The Secret World of Videogame Creators, 2014 ### Going Indie - [Contract creator](http://docontract.com/) - [Presskit creator](http://dopresskit.com/) - [Press release creator](https://dodistribute.com/) Rules =========================================================================================== Content and Culture ------------------------------------------------------------------------------------------- We'll play several games in and out of class, during evening sessions, and online. Game are a form of communication between humans, mediated by cards, boards, and computers. Good games address topics important to us, such as politics, love, ethnicity, food, gender, religion, and music. They may address these obviously through theme or in more subtle ways through mechanics (e.g., consider those "colonists" in _Puerto Rico_ or the "melons" in _Papa and Yo_). I chose the games for this class because they're artistically or technically important, but I don't endorse the message or content of any of them. In some cases I particularly hope that you'll question the viewpoint implied by the game. Some of the games that we study contain elements that may affect you strongly, including *religion, violence (including domestic abuse and non-consensual sex acts), racism, consensual sex acts, and drug use and abuse*. You should research games before class or assignments and use your own judgement on whether to participate or discretely leave the room ahead of time. You may also request to be excused or pursue an alternative assignment. I'll seriously and respectfully consider those requests. Outside of these concerns, I expect you to respond in a mature and academic matter to content in class, even when that content is not itself mature in its treatment of its subject. Part of respecting your peers and the material is to guard against casual assumptions and our own biases. Nobody in this class is a designated representative of a cultural group. It is appropriate and essential to use your identity privately to prompt a line of thought and then to publicly present your findings, without the origin of the line of inquiry. That is, it is academically inappropriate to use your identity to support an argument or as a basis for questioning someone else. For example, consider the group of heterosexual, white, Christian men. A lot of American culture, including video games, presents group as the default. This is important to challenge, so it will probably arise in discussion. A student who presents as identity doesn't and can't speak for that group. What they feel as an individual provides biased and statistically insignificant evidence to the rest of us. (And they might not actually be any of those things, either, despite our perception!) But the way that a game makes them feel should provoke them to investigate _why_ the work makes them feel that way, how universal that reaction is, and how a different background would have produced a different experience when playing it. *Your identity, inspirations, and passions are all welcome in my classroom.* I encourage you to draw on them for your material and observe that the best work is often that which is personally meaningful to the creator. If you're an athlete passionate about your sport, then make a game about that. If you want to address the Israeli-Palestinian conflict, make an ode to your favorite NY restaurant, or explore your grandmother's history, then focus on that. When working with powerful material, *respect your audience* and consider carefully whether it will have the impact that you desire on someone with a different background. When you're in the audience, *respect each other's work and the works that we study*. They will often delight you and you may agree with their viewpoints. They also often will upset or offend you and may assume views with which you disagree. That's what art and academic discourse are about, and you should respond appropriately towards the piece (and not the author) through your criticism and own creative work. Honor Code ------------------------------------------------------------------------------------- Students are bound by the [Williams Honor Code](http://wiki.williams.edu/display/facom/Honor+Code), [Williams Computing Policies](http://oit.williams.edu/w/?u=docs/Policies), and [CS Honor Code and Computer Policy](http://www.cs.williams.edu/resources/usage.pdf). Artwork and text require appropriate attribution. Any action, including misrepresentation, taken to give oneself or another an advantage over other students in this course is a violation of the Honor Code. This includes lying in an attempt to be excused from work or deadlines; plagiarism from oneself, external sources, or other students; and misrepresenting the contributions of individual members of a group. Teams are jointly responsible for their projects and I expect members to help one another and reassign work in the face of absence, illness, or competing obligations. However, all members are responsible for ensuring that the individual contributions are clearly documented. Doing more than your share of work without credit may seem self-sacrificing, but it is in fact equivalent to doing someone else's homework, and that is cheating, regardless of your intention. Likewise, allowing someone else to fulfill your responsibilities without crediting them is cheating by taking advantage of that person as well as the other students who did their own work. Preserve the Games ------------------------------------------------------------------------------------- We use many games in the course that are variously owned by the CS Department, the libraries, and me personally. Students are expected to maintain the integrity of these collections for future courses. Treating all of these objects with the care and respect due to academic collections, regardless of their perceived monetary value or mass-produced nature. For board games, it is particularly important to ensure that all of the pieces are present when they are returned to the library--the *games can become unplayable if even one piece or card is lost*, and many are out of print and irreplacable. On average, one game a year is rendered unusuable through student neglect. The library may hold you financially responsible for this, but your primary concern should be preserving these resources and not a fine. Copyright ------------------------------------------------------------------------------------- The materials for this course, including game instructions, source code, music, images, 3D models, readings, and films, are protected by the [Copyright Law of the United States of America](http://www.copyright.gov/title17/) and are presented to you with the permission of the copyright holder or in accordance with the Fair Use provisions. *You may not redistribute materials from the course or ones that you obtain otherwise without permission from the copyright holder*, which is often not me or the College. This includes making materials available on websites and file-sharing programs. As is the case with any copyrighted materials, beware that if you distribute these materials you may be liable for substantial civil and criminal penalties, including imprisonment, and that this is entirely outside of the College's and my ability to protect or excuse you. Likewise, you must follow all relevant copyright laws for the content in your own work for the course. Do not use models, music, text, code, or other material for which you do not have permission and do not redistribute the provided licensed material. _This section of the syllabus does not constitute legal advice and is beyond the honor code--I am advising you of my own understanding of the relevant law, but it is your responsibility to be aware of and follow all applicable laws._