Jason Eaton
United States
West Bloomfield
Michigan
flag msg tools
Saw some threads on this topic, and wondered what people thought about a more intuitive way to play board games by web.

I have a prototype of such a system, and even allows for creation of nearly an entire board game with a simple xml file.

The philosophy I used to create this is to make it behave as closely as possible to a real board. So there are no windows, nearly no menus (except for navigating to the games themselves). Its like a large table where all UI objects are just pieces that can be moved around, flipped to front/back or flipped to a side (dice).

Some things it would need is a way to randomize selected pieces (rolling dice), randomize piece layering (shuffling) and a way to hide areas of the table to specific users. The idea is that the system does not enforce any rules, but will log if players look at hidden areas (so you know if something was looked at)

I know there are similar programs for playing magic and such, the attempt with this system is to be able to play any board game that you are able to feed it xml of a piece set and images to represent front/back areas of pieces.

One other addition it probably needs is a sheet of some sort that has text fields on it, so players can type information, and even draw on the sheets.

This system works in real time, you can see other players manipulate pieces and even send messages real time. Its rather slow, probably needs a better back end than Php (possibly erlang for real time stuff). I wrote this prototype as a masters project.

Anyway, here is the link:

http://jeaton.matero.net/board/

And some instructions in case someone actually wants to try it out (is a little complicated to get started, but could be improved, i mainly focused on the board manipulation itself)


First go to Connect -> Register

type in desired user name and password, click Register.

You should be logged in at this point.

Go to Session -> Create Session

Select "Boom", give the game session a name and password, click Create

Should now be able to view the game, but can't manipulate any pieces.

To affect the game, go to Session -> Control Hand

Click the color hand you want to control (these are like seats, only one person can have a hand at a time)

Then click Control. Your user name should appear next to the color you selected. Now click Close.

You can now manipulate the pieces to your hearts desire. They are all stacked up on each other though, so to
fix that Go to Session -> Load Configuration, and select
"This is a configuration to play boom with!" then click Load. The board configuration should now be loaded, ready
to mess with!


Controls are:

text field at bottom & enter: type and send text messages
click drag: draw view around
mouse wheel/slider on bottom: zoom
click & release: pick up piece to hand/drop piece currently in hand
shift + mouse button & drag: select multiple pieces
space bar + mouse movement: rotate view if hand is empty, rotate pieces in hand is full
right click: menu to perform some operations (none currently implemented)

(note: you will notice that the pieces set looks alot like DOOM the board game, i used the piece set, but changed the graphics. Could have easily used doom piece graphics)
1 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Herodian Smith
United States
Alabama
flag msg tools
Avatar
mbmbmbmbmb
BananaForSale wrote:
Saw some threads on this topic, and wondered what people thought about a more intuitive way to play board games by web.

...

(is a little complicated to get started, but could be improved, i mainly focused on the board manipulation itself)

...

Controls are:

text field at bottom & enter: type and send text messages
click drag: draw view around
mouse wheel/slider on bottom: zoom
click & release: pick up piece to hand/drop piece currently in hand
shift + mouse button & drag: select multiple pieces
space bar + mouse movement: rotate view if hand is empty, rotate pieces in hand is full
right click: menu to perform some operations (none currently implemented)


Disclaimer: I am a huge fan of Vassal.

Graphically, this is cool looking. I like the appearance of the interface, it's very clean. I love the fact that it is browser based instead of a standalone application.

However, these commands don't seem more intuitive than Vassal, to me. The ones that do seem intuitive, such as right clicking to get a context menu, are already how Vassal works. Selecting multiple items should be accomplished by just dragging a box, like in other windows applications, right? Instead of Shift-click-dragging? Also, the "control hand" seems like an unnecessary and counter-intuitive layer of complexity in between my mouse cursor and the objects I'm trying to click. I also had some kind of sync problem between the mouse cursor and the control hand that came and went when I would drag things around. It was somewhat disorienting (even counter-intuitive!) to not just have the mouse cursor be the point of contact.

Please keep working on it, this has huge potential!
 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Drew Dallas
United States
Tennessee
flag msg tools
badge
Avatar
mbmbmbmbmb
It definately has potential but I agree with Hero that the controls aren't more intuitive than vassal.
 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Jason Eaton
United States
West Bloomfield
Michigan
flag msg tools
Thanks for the feedback, I know it needs lots of work. The first problem I had to tackle with this is what client side software to use. Right now its flash, but flash was giving me some headaches with performance.

Quote:
However, these commands don't seem more intuitive than Vassal, to me. The ones that do seem intuitive, such as right clicking to get a context menu, are already how Vassal works.


Actually I was attempting to not use a context menu at all. I was also going for mouse/single button interface, but that was a little too restrictive. The experience I had with Vassal was trying to get some people to play warrior knights on, and I had some trouble navigating the menus, to find where my information sheet was, and other various sheets were. I liked the idea to have it more like a real life table, where you can see everything at once, and focus on the one thing you want to look at at any point in time. That seemed more intuitive than searching though different windows to find the decks and other pieces I needed. Also I couldn't simply move pieces around to anywhere I wanted so I couldn't organize my pieces the way I wanted, like I do in a normal game.

Quote:
Selecting multiple items should be accomplished by just dragging a box, like in other windows applications, right? Instead of Shift-click-dragging?


This was a problem because I don't know if click/drag means they want to pan the camera, or select multiple pieces. Maybe it would be better if shift went in to pan camera mode? I thought about what would be the most intuitive here, but I was running out of time. Remapping some of the controls wouldn't be too difficult, the real issue is if the operations themselves are intuitive or not.

Quote:
Also, the "control hand" seems like an unnecessary and counter-intuitive layer of complexity in between my mouse cursor and the objects I'm trying to click.


This is sorta like sitting down at a table... so players could have a colored hand attached to them. When multiple people are connected, you see their hands moving around too. Maybe people could set a color and have their name appear by the hand, and have it happen automatically. But then anyone could move pieces around.

Quote:
I also had some kind of sync problem between the mouse cursor and the control hand that came and went when I would drag things around. It was somewhat disorienting (even counter-intuitive!) to not just have the mouse cursor be the point of contact.


Uses a Php/MySQL backend, it will always be slow, especially with lots of users. Would need a more serious back end to have this work better. Right now I just left the sync issues so you realize that the server is taking time to update your actions (would be more disorienting if it allowed you to pick up things any time, then snapping pieces away from you when I realized that another player actually picked up the piece before you, and your client just wasn't informed yet)

Quote:
Please keep working on it, this has huge potential!


Probably won't happen, until there's more support for HTML5... Client side browser applications or web apps are in a pretty big state of flux at the moment, hard to start a large project and pick a platform that is going to have good support a few years down the line. Also if I do work on it more i'm thinking I could gear it more towards touch screen, maybe that will help with intiuitiveness.

The real nice feature of this system is defining new game boxes. Here are the xml files that define some of the games.

http://jeaton.matero.net/board/games/chess/game.xml
http://jeaton.matero.net/board/games/boom/game.xml

The idea is that all games in the physical world have like 4 operations (in my mind, tried to come up with more)
1. move and orient pieces (translate/rotate)
2. flip (cards, chits), change side (dice, like 3d orientation basically)
3. shuffle, alter stack arrangements, randomize a bin of chits randomize their orientations
4. reorient your view (walk around the table, focus on areas of the board, hide pieces behind a screen, look at a hand of cards while hiding the faces from other players)

This way you can get away without doing any special scripts, and define new games and play test new game ideas simply by creating a xml element defining each piece.

Again, thanks for taking a look!
1 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Jason Eaton
United States
West Bloomfield
Michigan
flag msg tools
This looks more like my vision, gonna have to try it out, will probably just contribute to this instead of working on this anymore.

http://anywhereboardgames.com/

1 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Front Page | Welcome | Contact | Privacy Policy | Terms of Service | Advertise | Support BGG | Feeds RSS
Geekdo, BoardGameGeek, the Geekdo logo, and the BoardGameGeek logo are trademarks of BoardGameGeek, LLC.