Skip to Content

Let's not re-invent the wheel

4 replies [Last post]
sedjtroll's picture
Joined: 07/21/2008

I think it's important that we start from scratch decideing what we want this program to do without relying heavily on what other programs have done. But once we know about what we want, it would be a good idea to look at other similar prgrams to see (a) if we missed anything obvious, and (b) how the other programs went about doing those things. If Thoth has a good way to keep track of tokens, then we should borrow that rather than try and figure out how to do it ourselves. Obviously if an existing program has something we don't like, we will not borrow it :)

Darkehorse wrote:

We are aware of such projects as Thoth, Cyberboard, Vassal, Zillions of Games and BrettSpielWelt, most of us have used them and found them to be lacking in one respect or another.

Before we get too far into the project (but after brainstorming what we want from the final product) we should take a look at the above mentioned programs as well as Apprentice

These programs have their good points and their bad points, and each one has ways of dealing with different aspects of the game, like drawing a card, or manipulating a pawn. I can't speak for Vassal or Zillions, and I have very limited experience with Thoth, but I know for a fact that in Apprentice you can draw cards in secret, put cards on the table face up or face down, rotate them, peek at your own facedown cards, flip them over, take control of opponent's cards that are on the table (or give control back), you can even do things like look at the top X cards of your deck and put them back in any order. It also lets you create a card and add it to your hand (useful for producing a token that wasn't there before).

- Seth


After months of absence, I came to bgdf for a quick glance. Became surprised to see a new forum and some “hype” about it: Online boardgame prototyping. I’m not against it, but I’m not with it either. I work in SW engineering, typically over 60hrs a week. When deadlines are getting closer, 80hrs is the rule. Boardgames for me is a hobby, transforming into more work sucks the fun right out. Besides, where would the “face-to-face” key factor of boardgaming end up being? The pretzels, the bears, the laughts? :cry:

IMHO, attempting to create a new platform from scratch is just re-inventing the wheel. I agree with Seth. I think that conducting a serious evaluation of currently available “platforms” such as the ones mentioned by Darke in the first thread should be the right approach.

I looked at Vassal once (2yrs ago) and appeared to be some kind of markup & scripting language. Mastering that platform may take some time but definitely a lot less than implementing a new platform, especially for computer savvies as many of the BGDF members driving this initiative are. In fact, Vassal is on (open-source community). It appears to be written in Java (see If a feature or component doesn’t satisfy certain need, it could be modified.

I propose to set up a team responsible for implementing simple prototypes in each of these platforms to get a “feeling” of what the capabilities are and what’s the effort to use them.

Once the evaluation period concludes, we could engage in creating “modules” for certain common operations in boardgames (pawn movement, dice rolling, card dealing, etc.).

The most tricky piece to implement, IMO, is the rule set of any game: how/when things in the game happen. That would be the most time consuming part and, unfortunately, would have to be tackled by each individual prototyping his own creation.

Regards and good luck,

- Henddher

I think the goal is to make a DESIGN tool

I too am a SW engineer, and enjoy the human-to-human element of boardgaming. But I think the goal here is to come up with a tool for _design_ of board games. I think it makes great sense: theoretically board game design could be a collaborative process, in which multiple people with a common vision can work together to produce a product. Alas, such would-be collaborators are far too widely distributed to be able to meet face-to-face. I believe this tool could bring those dispersed designers together.

It would be helpful however to explicitly lay out the ambitions/requirements of such a project. What is the desired functionality for the final product? It seems that many who are posting to this forum have somewhat different ideas about this. Perhaps a new "Requirements" thread would be required.

Also, and importantly, might there be a way to dovetail with existing open source projects like Vassal? That is probably the scope for this thread.


Joined: 12/31/1969
Let's not re-invent the wheel

Just to put in my 2 cents worth.

I've been a software engineer for 6 years myself. While I appluad the idea of such a project, nothing is going to go anywhere unless a clear objective of what this project is going to acheive.

Like the last two posts, what is the software intended for? Is it intended for a designing aid, or is it meant to be something set up for players to play each other over the internet.

This fundamental question needs to be answered.

My personal opinion is that I believe that the software should be created as a board game design aid. This is afterall a board game design forum. I don't believe that there is any software out there that specifically is designed with a board game designer in mind.

I am personally against anything like Vassal if it is simply going to allow players to play on-line against each other. As someone already mentioned, the main strength of board games which seperates it from the digital media is the face to face interaction between people. Board games in and of themselves are social forms of entertainment.

To me in this crazy world where we become so isolated from each other, and pushed to be individualistic where money becomes the god over personal relationships and family (at least in the U.S.), computer entertainment media is just a wrong step in the wrong direction.


Leveraging open source collaborative tools

In the new Requirements-gathering thread "What do we need?" I posted this:


Many of the required functionality of our product would be fairly stereotypic for any collaborative tool. These include:
(1) Ability to create project
(2) Ability for users to sign up, request membership, be assigned to roles within a project (~= "access control list")
(3) Ability to post rules (~= "documentation")
(4) Ability to post new graphics, cards, tiles (~= documents)
(5) Ability to automatically package latest version for download as PDF or other format, so people can test
(6) Version control

This is an incomplete list and represents extensive software "plumbing" that has been re-invented a thousand times over. As such, existing software should be leveraged to fulfill these more stereotyped & mundane tasks where possible.

So I suggest the scope of the "Let's Not Reinvent the Wheel" topic within this forum should expand to find open source, extensible collaborative systems we could leverage.

So when/if we determine that no suitable open source game design project exists, we should shift the focus to finding a suitable extensible open source collaborative system.

Syndicate content

forum | by Dr. Radut