Boardwalk

From OLPC
Revision as of 08:58, 19 April 2008 by Mikehahn (talk | contribs) (New page: {{olpcboxtop}} {{OBX team|Mike Hahn, volunteers welcome!}} {{olpcboxbottom}} [http://www.treenimation.net Treenimation] is a software tool used for creating web-based ...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
OlpcProject.png Mike Hahn, volunteers welcome!

Treenimation is a software tool used for creating web-based (real-time), multiplayer board games (as well as email-based board games). Subsequent versions of Treenimation will add support for games with 2D animation, and ultimately 3D animation. Treenimation includes a powerful yet easy-to-learn object-oriented scripting language called Treescript.

I am Mike Hahn, the creator of Treenimation. I have recently finished programming in Python (translating from what I originally programmed in Delphi) the first Treenimation module to be implemented: the TIL Loader. I am currently in the process of learning the Python programming language, and I intend to implement the rest of Treenimation in Python. Visit my blog for a play-by-play account of the process of implementing Treenimation.

Easy to Learn

Treescript, which is the built-in scripting language included with Treenimation, is at once powerful enough for professional game programmers to use to develop Treenimation-compatible game prototypes, yet so easy to learn that XO Laptop users (even children) can use it to learn how to program simple games, with only minimal intervention by an adult instructor.

Language Features

  • Operators precede their operand(s)
  • Optional infix mode for experienced Python/Java programmers
  • Structure Editor mode eases code entry for newbies
  • Type a question mark (?) at any time to display a context-sensitive popup menu of valid code choices
    • This feature disabled inside comments and string literals
  • Stepping-stone to learning Python programming:
    • Start them off in prefix mode (operators precede their operands), and later switch to infix mode (binary operators go in-between their operands)
  • RAD-style program development, in which user selects game components from a component palette, and edits their design-time properties
  • Game Editors:
    • Board Games (static)
    • Level Editor (animated)
    • Vector Editor (a vector is an animated/static object, which may be composed of other vectors)