Art 412 Final Assignment  -  An Adventure Game 'tour' of San Francisco

Introduction

Adventure games offer sequenced experiences.  Players demonstrate some skill, solve some puzzles, or undergo some experiences that allow them to move on to other 'levels' or sequences in the game. Some emphasize ascending levels of difficulty; others are more episodic with different places to explore - not necessarily requiring more skill.   You are asked to borrow some aspects of the form of an adventure game to create a Director-based interactive art event.

Read wikipedia history/analysis of Adventure Games

Conceptually you are asked to focus your event on San Francisco. Pick some theme of interest to you that will guide your selection of places. The theme can be personal, conceptual, socio-cultural, historical, aesthetic, ....whatever.  Find 4-5 spots in San Francisco that somehow relate to your theme.   Identify some underlying dimension that structurally relates these places. For example, they could be increasingly strong illustrations of the theme or they could illustrate opposite perspectives on the theme or you could arbitraily make the places relevant by props/graphics/performances you place in the spots.  Collect some information from the places that your incorporate in the event - for example, recorded sound, video, photos, scans of objects you got at those locations, etc. Pick a character to be the guide or virtual personality that interacts with the player.  Use Lingo to program some kind of challenge at each place that the player must deal with before they can go on to the next place.  Incorporate interactive video in one of the sequences.

For example, you could pick sin as your topic.  You might pick these five places  as the locations- The city jail, catholic cathedral on Geary, the zoo, a playground, Babary Coast.  Your character could be Buddha, Brittany Spears, Satan, or ....  The interactive event could be the challenge to find the sin in each spot.

Steps in the Process

- Pick some theme of interest to you that will guide your selection of places. The theme can be personal, conceptual, socio-cultural, historical, aesthetic, ....whatever.   Here are some examples:

- Find 4=5 spots in San Francisco that somehow relate to your theme. Identify some underlying dimension that structurally relates these places. For example, they could be increasingly strong illustrations of the theme or they could illustrate opposite perspectives on the theme. You could arbitraily make the places relevant by props/graphics/performances you place in the spots.

-Pick a character to be the guide, host or virtual personality that interacts with the player.  The character could be from history, popular culture, your personal life, fiction, movies, cartoons, whatever.  Pick some character that has an interesting relationship to your theme.

- Capture visual, sonic and/or conceptual material from each spot - for example, recorded sound, video, photos, scans of objects you got at those locations, rubbings, etc

- Include a lingo controlled interactive video in at least one of the locations.  The video could be from the web, a videodisc, or something you recorded.  (**check with professor)

- Create an interactive Director work that asks a viewer to deal with some challenge your pose at each location in order to go on to the next spot.  Link your challenge to your theme. You will need to devise the Lingo to realize the challenge.  You want something that is interesting but not impossible. (See discussion below)

- Be prepared to explain in detail your theme, the relationship of the real places to your theme, the dimension of variation of the places, and the nature of the programmed challenges. 

Technical Requirements

It should use some intermediate Lingo programming structure to enable your events.  Often interesting interactive events do not require complicated lingo.   Here are some examples and links to sample scripts.
Remember all the lingo tutorials/handouts  are at: 
http://userwww.sfsu.edu/%7Einfoarts/technical/director/wilson.director.tutorial.html



--games,  arrow keys move sprite, check for word typed, check if user has clicked all the buttons, check if they have moved puzzle pieces to the right place, check for intersection of sprites


Javacript Examples

This routine reads the user typing on arrow keys and moves a sprite accordingly (up, down, right, left).  It also tests for when the sprite touches a target and responds.  Makes use of keydown function and intersects property

This example contains two routines.  Routine 1 offers the user 3 sprites.  It does not move to the next exvent until the user has clicked 3 times on any comtination of the sprites.  Routine 2 offers the user 3 sprites.  It does not move on until the user has clicked at least once on each of the 3 sprites.
This routine offers the user 3 sprites and 3 boxes.  Like a jigsaw puzzle, each sprite must be put in the appropriate box determined by the author.  The next event does not happen until the user has moved each sprite to its box.

This routine shows how Director javascript can check what word  the user has typed into an entry field. It uses the keydown function to test for the user typing the enter key.  Once it detects the enter/return key, it checks for particular words the user has typed and responds.  In this example, it uses speech synthesis to say something appropriate to what they have typed.


This routine shows how to use the intersect function to detect whether sprites are touching.  In this example, animated sprites move on the screen.  Speech synthesis is used to let one sprite apologize for touching the other.

lingo versions

arrow move -  check for arrow keys, move sprite based on arrow keys
check for buttons clicked -  example 1 Only do action after 3 buttons clicked.  example 2  Only do action after each of 3 buttons clicked
check for intersection  - only do action if two sprites are touching
move puzzle pieces  -  example 1 Only do action if 3 puzzle pieces moved into certain space.   example 2 Only do action if each puzzle piece is moved to its right spot
check for word typed  -  only do action if particular words are typed into a field
 

Javascript Example
Javascript Video control screenshot - start, stop, control rate, move to particular position, activate events based on position    Javascript Video control.dir zip file

  -  lingo video control commands