Bejeweled Part II

Progress Report

 

Summary of Proposed Project(unchanged):

   We will build a Competitive AR version of Bejeweled.  Bejeweled is a puzzle game where a single player moves multi coloured jewels on a grid. The jewels are moved by swapping them with a neighboring jewel.   A string of three or more jewels in the horizontal or vertical direction makes those jewels disappear, the game then adds the same number of jewels from the top with  random colours.  First we will build a server program that run the game.  The players will use Argon to connect to the server and to display the current game board.  All of the players at the “playsite” will on the same board.  We will define a few preset location with trackable objects as “game boards”.  Player will then arrive on the scene and join the game at the location which will then be hosted at the server.  Players will interact with the game board by walking around in the space in front of the game to choose the squares in the grid they wish to move.  Tapping on the screen of the device will select the current square.  The player with the highest score wins.  Games will run for a specified amount of time or until there are no more moves left.  This project is a application of Outdoor AR and collaborative/competitive interaction.

 

Argon Client Code:

 

We are now using a printed poster with an image that tracks very well for testing.  Using this image we were able to implement the basics of the display in Argon.  The client can now render a basic game board and it is able to handle touch events to swap jewels on the game board, which is in addition to the distance mechanism mentioned in the previous deliverable. Also interesting to note is that we discovered that the phone tracks horizontal motion in with different angles based upon the phone’s rotation.

 

We now are able to change focus on the grid based on the position of the player. The focused cell can be selected by tapping the phone screen. In order to swap we just need to focus some other cell and tap the phone again. This mechanism felt intuitive for bejeweled game play.

 

 

App Engine Server Code:

 

The server now has all of the logic it takes to run a game(Implemented and tested).  Though it doesn’t have the planned networking features.  We have agreed upon a protocol that we will use but have not fully implemented it yet.

 

 

Reflection on this Milestone:

 

We were able to complete most of the planned features.  One of our group members was sick on and off this week which certainly decreased productivity.  Google App Engine is fairly complicated and it took us longer then expected to study the docs and begin writing code.  While it is unfortunate that were not able to meet all of this milestone’s goals we feel confident that we are not that far behind and will be able to complete the rest of the project before the last deadline.

 

Milestone 3:

– Server: Multiple Games

– Client: Fully animated as well as working in more than one location.

 

Contributions:

 

Client: Suraj coding, Shane debugging.

Server: Shane coding and testing

video : http://www.youtube.com/watch?v=JpkgYJIVsuY

Comments are closed.