TileGamer

From OLPC
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 the very near future 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 CardStack objects arranged in a row (or column)
  5. TableGrid, a more flexible version of a BoardGrid 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

I would like to team up with someone whose main role will be developing the Python/Linux version of the Vecset prototype, and then building on that prototype towards the final implementation of Vecset for the XO Laptop. Anyone interested in taking on that role is encouraged to visit the Vecset web site, and peruse "Vecset for the XO" for some background. To dive right in and view the design specs of the Vecset prototype, click on "Vecset Prototypes", and for an explanation of how Vecset can make money (the Windows version), click on "The Power of Vecset". After all that, if you feel up to the task of turning my design specs into a working activity, please contact me.