2IOE0 Interactive Intelligent Systems Erik de Vink, Huub van de Wetering TU/e 2014-2015 Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 1 / 18 Introduction Course resources 1 http://www.win.tue.nl/˜wstahw/edu/2IOE0 2 http://www.win.tue.nl/˜wstahw/edu/2IOE0/studyguide.html 2IOE0 = Two India Oscar Echo Zero Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 2 / 18 Introduction Design Based Learning 1 Work in a team of upto 6 participants. 2 Apply knowledge of previous courses. 2IV60 Computer Graphics 2ID90 Artificial Intelligence 3 Process guided by tutors. Erik de Vink Huub van de Wetering 4 Realize an interactive intelligent system. 2014/15: a game Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 3 / 18 Introduction Team composition Time slots E (obligatory). either A (Monday morning, Thursday afternoon) or B (Monday afternoon, Wednesday morning) In the break find your favourite team mates with matching time slot preference. Restrictions Team size either 5 or 6. |#teams in A − #teams in B| ≤ 1 Remaining issues are solved by the tutors. Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 4 / 18 Introduction Team resources Each team has a project room will be announced Each team is monitored by a tutor time slot B (Monday afternoon, Wednesday morning) Erik de Vink time slot A (Monday morning, Thursday afternoon) Huub van de Wetering Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 5 / 18 Introduction Project execution For the rest, read study guide!!! Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 6 / 18 Interactive Intelligent System: Game should contain challenging/non-trivial/interesting elements of Computer Graphics geometry, rendering, algorithms, efficiency, HCI, ... Artificial Intelligence searching, planning, learning, ... Supporting tools may also earn you credits if properly designed, implemented, demonstrated, and reported upon. Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 7 / 18 Terminology PC or player character: character controlled by a human player e.g. pac-man NPC or non-player character: the other characters e.g. the ghosts in Pac-Man Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 8 / 18 General Game Architecture Game state: contains current state of the world may be queried on state of objects in the world Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 9 / 18 General Game Architecture Controller: each character has at least one selects actions PC: controller interprets “joy stick” events NPC: controller is character’s brain: AI, ... Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 9 / 18 General Game Architecture Renderer: renders the game state outputs images (and sounds) Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 9 / 18 General Game Architecture Simulator: encodes how game state changes responds actions of the controllers Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 9 / 18 General Game Architecture Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 10 / 18 Controllers either programmed or learned reactive controller: stateless function of its input stochastic controller more interesting to play against non-predictable NPC randomness may break symmetry to avoid, e.g. being trapped in a corner mimicks noise in real world for instance, add randomness to controller’s output Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 11 / 18 Controllers Hierararchy several controllers together may determine the next (game) action, e.g. one controller determines goal of NPC a second controller searches a path to the goal a third controller computes next move. Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 12 / 18 Controllers Percept A percept functions as a filter/facade for the game state. game state is only available via its methods. may be replaced by another percept, for example, one which uses other info from gamestate, a ’confused’ one with randomized values if (N)PC has taken a hit on the head. Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 13 / 18 Game Design Players: how many? Any requirements? Special knowledge, roles ... ? Objective: What is the objective of the game? Procedures: What are the required actions? Rules: Any limits on player actions? Rules regarding behaviour? Conflict: What causes conflicts? Outcome: What are the possible outcomes? ... Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 14 / 18 Game Design All video game types are allowed: action, adventure, role-playing, simulation, strategy, sports, .... But,be realistic not everything is possible in one quartile. Make the CG and AI shine! Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 15 / 18 Game Realization Build modular decide on interfaces document interfaces Use fast prototyping iteratively build your game Play testing find problems tune parameters Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 16 / 18 First Team Actions 1 Make weekly appointment with tutor. 2 Read the studyguide. 3 Brainstorm on game concepts. 4 Work out a concept on paper. 5 ... Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 17 / 18 References 1 Artificial Intelligence for Computer Graphics, John David Funge. 2 Game Design Workshop, Tracy Fullerton. Erik de Vink, Huub van de Wetering (TU/e) 2IOE0 Interactive Intelligent Systems 2014-2015 18 / 18