TileGamer

From OLPC
Revision as of 19:44, 2 October 2008 by Mikehahn (talk | contribs)
Jump to navigation Jump to search
OlpcProject.png Mike Hahn, volunteers welcome!

Virtual Environment Construction Set

Vecset is a software tool used for creating multiplayer games, such as board games and animated games. There are 2 versions of Vecset: a Windows version, and a scaled-down version for the XO Laptop. The Windows version will be implemented in Java, and the XO version will be implemented in Python. The Windows version includes a built-in scripting language called Vecscript, and enables users to play games over the Internet (in their web browsers). The XO version uses Python as its scripting language, and users cannot play games in their web browsers. Instead they can play games with other nearby XO users, over the wireless network.

Older Versions of Vecset

Vecset is an evolution of an earlier project, Treenimation. The XO version of Treenimation was called Boardwalk.

Project Status

I am Mike Hahn, the creator of Vecset. So far part of Vecset for Windows has been implemented in Python: the VEC Loader and the initial code that will eventually become the Code Editor. In a couple of days I will finish the Python coding, and then translate what I've developed so far (just the Code Editor part) into Java.

User Interface

Board Games

Drag-and-drop board games are constructed out of 5 basic components:

  1. Card, such as a playing card or chess piece
  2. CardStack, a stack of Card objects
  3. BoardGrid, such as a chess or Go board
  4. RackGrid, a collection of Card-stack objects arranged in a row (or column)
  5. TableGrid, a more flexible version of a Board-grid object (not just a plain grid), such as a Monopoly board.

Board Editor

The Board Editor is used to layout the board and attach components to event handlers. The event handlers are coded in Python, using a built-in code editor.

Animated Games

The default user interface is 2-dimensional, consisting of 2 windows side-by-side (split screen). One window is always an overhead view, and the other window is split into 2 windows, one on top of the other: left-side/right-side, or front/rear. All 3 windows are separated by splitters, so it's easy to resize them. Clicking on the point of intersection in the center of the screen resets the sizes of the 3 windows to their default values.

User Commands

The user uses the cursor keys to go forward (up arrow), left, right, or backwards (down arrow). Ctrl+Left Arrow and Ctrl+Right Arrow rotates the overhead view 90 degrees in the given direction. Clicking on an object carries out the default primary user action, and right-clicking on an object brings up a popup menu of choices. Pressing Tab highlights the next command in an onscreen menu. Clicking in the non-overhead view toggles between left/right and front/rear. Right-clicking in the non-overhead view and selecting Backpack (or typing Ctrl+B) displays contents of backpack in the window clicked upon.

Contribute to Vecset

If you can program in Python, and wish to contribute to the development of Vecset, I would like to hear from you. All feedback from the OLPC community is welcome anytime. Also, any Java programmers who wish to contribute to the development of Vecset for Windows are welcome to contact me.