Maintaining Production Game Boxes

From BOARD18 Project WIKI
Jump to navigation Jump to search

Maintaining Gameboxes for production is a bit more complex than it would appear at first glance.
This is the way that it has been handled for the Board18.org sites.

Two Types of Game Boxes

We differentiate between Gameboxes that are running on production sites and game boxes that are considered in production status.
By definition, Gameboxes that are in production status have been played to completion at least once on a production site.
Until then they should not appear in the repository of production game boxes.

Storage of Game Boxes

Production Gameboxes are currently stored in three places. The first, of course, is in at least one production site.
The second is in the repository of Gameboxes on Google Drive.
The third is in a redundant backup folder that should be kept on the administrator's local PC.
Also note, for correct sorting, all ZIP file names should begin with a capital “B”.

Non production game boxes that are running on at least one production site should also be stored in a “Not prod yet” folder.
This folder can be kept in a Google drive or on the administrator's local PC.

There are two Workflows involved in maintaining this arrangement.

First Workflow

The first workflow is triggered by someone submitting a new Gamebox. It goes like this:

  1. If the submitter is known and trusted then skip to step 4.
  2. Install the box on a test system and try it out.
  3. If there are problems then return the box to the submitter with comments.
  4. Place box in a “Not prod yet” backup folder.
  5. Install box on a production site.
  6. End of workflow.

Second Workflow

The second workflow should occur periodically [every week or 2?] for each box in the “Not prod yet” folder. It goes like this:

  1. Use The Manage Boxes Page to see if a game has been played to completion.
  2. If not, go to the next game in the folder.
  3. If it has been played to completion then move the Gamebox from “Not prod yet” folder to Google Drive and the redundant backup folder.
  4. Go to the next game in the folder

Revised Game Boxes

In general, revised Gameboxes should have a new version number. Some changes to boxes that should have a new version number include:

  • adding or rearranging tiles or tokens,
  • changing number of duplicates of tiles or tokens,
  • changing appearance of tiles or tokens,
  • adding flip side for tokens,
  • substantially changed map or market.

After such a Gamebox is in production status, the version being replaced should be deactivated. Deactivation of a Gamebox has no effect on ongoing games using that box. Deactivation of a Gamebox will prevent any new games from using that box.

Minor Changes

Minor changes to existing Gameboxes can occur without a version number change. Minor changes to existing boxes can also skip the above workflows.

To qualify as a minor correction, both of the following things must be true:

  1. No new tiles or tokens can have been added.
  2. The order of all items in all trays must be unchanged.

The above two items are critical. Treating a Gamebox change otherwise as a minor correction will break all existing games that use that box.
In particular, the tiles/tokens and number of duplicates will be based on the old data.

  • If the minor change is a revision of the JSON, an image file, etc, and just the revised file is sent to the administrator, then replace the old file with the new one in the zip file in the Gamebox Google drive folder, upload the updated zip file to Board18, and replace the old zip file with the new one in the Gamebox and local backup folders.
  • if the minor change comes in as a complete zip file, then upload the zip file to Board18 and replace the old zip file with the new one in the Gamebox Google drive and local backup folders.

Note: Changes to "rots" or "flip" can occur in a minor correction with no ill effects. But changes to the "dups" count of any items will not be seen by existing games.