Difference between revisions of "Maintaining Production Game Boxes"

From BOARD18 Project WIKI
Jump to navigation Jump to search
(→‎Minor Corrections: rewrite and added Revised Game Boxes)
m (Updated and revised text, especially on how to handle minor changes. (Changed "minor corrections" to "minor changes" as some revisions may not actually be "corrections".)
Line 1: Line 1:
Maintaining game boxes for production is a bit more complex than it would appear at first glance. <br>
Maintaining Gameboxes for production is a bit more complex than it would appear at first glance. <br>
This is the way that it has been handled for the board18.org sites.
This is the way that it has been handled for the Board18.org sites.


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


== Storage of Game Boxes ==
== Storage of Game Boxes ==
Production game boxes are currently stored in three places. The first, of course, is in at least one production site. <br>
Production Gameboxes are currently stored in three places. The first, of course, is in at least one production site. <br>
The second is in  
The second is in  
[https://drive.google.com/drive/folders/1lETqfd0JRmIgAc9nuV1jyqDdbniwzGsw?usp=sharing the repository of game boxes on Google Drive]. <br>
[https://drive.google.com/drive/folders/1lETqfd0JRmIgAc9nuV1jyqDdbniwzGsw?usp=sharing the repository of Gameboxes on Google Drive]. <br>
The third is in a redundant backup folder that should be kept on the administrator's local PC. <br>
The third is in a redundant backup folder that should be kept on the administrator's local PC. <br>
Also note, for correct sorting, all ZIP file names should begin with a capital “B”.
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.<br>
Non production game boxes that are running on at least one production site should also be stored in a “Not prod yet” folder.<br>
This folder should be kept on the administrator's local PC.
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.
There are two Workflows involved in maintaining this arrangement.


== First Workflow ==
== First Workflow ==
The first workflow is triggered by someone submitting a game box. It goes like this:
The first workflow is triggered by someone submitting a new Gamebox. It goes like this:


# If the submitter is known and trusted then skip to step 4.
# If the submitter is known and trusted then skip to step 4.
Line 32: Line 32:
The second workflow should occur periodically [every week or 2?] for each box in the  “Not prod yet” folder. It goes like this:
The second workflow should occur periodically [every week or 2?] for each box in the  “Not prod yet” folder. It goes like this:


# Use [https://wiki.board18.org/w/Administrator The Manage Boxes Page] to see if the game has been played to completion.
# Use [https://wiki.board18.org/w/Administrator The Manage Boxes Page] to see if a game has been played to completion.
# If not, go to the next game in the folder.
# If not, go to the next game in the folder.
# If it has been played to completion then move the game box from “Not prod yet” folder to Google Drive and the redundant backup folder.
# If it has been played to completion then move the Gamebox from “Not prod yet” folder to Google Drive and the redundant backup folder.
# Go to the next game in the folder
# Go to the next game in the folder


== Revised Game Boxes ==
== Revised Game Boxes ==
In general revised game boxes should have a new version number. <br>
In general revised Gameboxes should have a new version number. <br>
After such a game box is in production status the version being replaced should be deactivated.<br>
After such a Gamebox is in production status the version being replaced should be deactivated.<br>
Deactivation of a game box has no effect on ongoing games using that game box.<br>
Deactivation of a Gamebox has no effect on ongoing games using that box.<br>
Deactivation of a game box will prevent any new games from using that game box.
Deactivation of a Gamebox will prevent any new games from using that box.


== Minor Corrections ==
== Minor Changes ==
Minor corrections to existing game boxes can occur without a version number change.<br>
Minor changes to existing Gameboxes can occur without a version number change.<br>
Minor corrections to existing game boxes can also skip the above workflows.
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.
To qualify as a minor correction, both of the following things must be true.


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


The above two items are critical. '''Treating a game box change without them''' <br>
The above two items are critical. '''Treating a Gamebox change without them''' <br>
'''as a minor correction will break all existing games that use that game box.'''<br>
'''as a minor correction will break all existing games that use that box.'''<br>
 
# 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. <br>
# 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. <br>


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

Revision as of 13:07, 4 June 2020

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.
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 without them
as a minor correction will break all existing games that use that box.

  1. 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.
  2. 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.