Hypertalk Scripting

by Michael Le Bien

Michael is interested in non-virtual reality, mega-flow experiences, drumming, martial arts, and ambient music composition.

Instructional Objective The learners will be able to write simple HyperTalk scripts.

Learners/Context The learners are graduate educational technology students without prior computer programming skills. They are enrolled in Ed. Tech. 541. There ages range from 21 to 50. After the learners are familiar with HyperCard and introductory scripting, they will play the game during class.

Rationale The game will provide instructional punctuation as well as remediation and practice of HyperTalk scripting methods. The game could be used for team building, or as an ice breaker for a group project assignment.

Learning scripting from a book can be intimidating. This game brings the mystique of programming down to earth. It is simple and uses scripts that educational technology students use most.

Rules Players must build coherent sequences of cards into HyperTalk scripts. This is similar to a straight in the card game "Rummy". Cards are marked with individual HyperTalk commands such as "On MouseUp", or "visual dissolve". A dealer gives each players 10 cards from a deck of 60. The dealer places the rest of the deck face down, with the top card turned face up to begin the discard stack. The players take turns choosing either a card from the deck, the top discard, or the entire discard stack. The first player to use all of their cards to build coherent scripts, wins.

Card Design

Deck Design There are 60 cards. Twenty four cards are 'handler' scripting cards which include:

* On MouseUp

* On OpenCard

* On OpenStack

* End MouseUp

* End OpenCard

* End OpenStack

* On mouseEnter

* End mouseEnter

Six cards contain erroneous syntax, such as "go to the card named "field"." These cards make the player more aware of incorrect syntax. If a player attempts to play one of these, they will lose points. The remaining 30 cards are made up of the most common scripting syntax used by beginning HyperTalk programmers. These include:

* visual dissolve

* go next

* go to card id=2343

* go to card "name"

* visual effect barndoor open

* set cursor to none

* show field "hello"

* answer "Do you want a hint" with "No" and "Ok"

* set the hilite of button "one" to true

Design Process I started to see some problems when initially describing the content of the cards. The main problem was deciding the ratio of handler scripts to commands. There must be enough handler cards so the possibility of two players waiting for the same handler card to finish their script is low. The objective is not to create player frustration over the luck of the game. I remain undecided whether dealing ten cards is the best number. I want the players to be able to build more than one script with ten cards. The game needs a list of possible scripts so players can tell if their script is realistic. For example, this script would not be allowed:

on mouseUp

go next

on opencard

go next

end mouseup

The players need to verify whether their script is allowed. But, I do not want them looking at the allowed scripts while they play. It may prevent them from learning and remembering proper HyperTalk syntax.