[15]                               home                            [17]

Edited September 17, 2004

 

The BCNGroup Beadgames

 

Anticipatory Web

 

Wednesday, May 26, 2004

 

Design document for the Manor based GBG

 

 

The Manor:  down load from

www.madwolfsw.com

 

Introduction

 

The Bead Game is one of the most ancient games of all time. Based around Hermann Hesse's observations of a game of the mind loosely described in "The Glass Bead Game (Magister Ludi)".

 

The best way to quickly describe the game is as;

 

"an intellectual exercise in which one idea elaborates off another"

 

A core topic is decided at the beginning of the game upon which the game is played on.

 

The game is basically a conversation, or discussion that is constrained around this core topic. The game is a elaboration of topics, it is not an argument. Games will be played accordingly.

 

The conversation/discussion represents the game, while the concepts represented within the game are the playing pieces of the game, or the beads.

 

Within the context of the games currently being played by BCNGroup, each new thread in a game forum is considered to be a bead. Each of these posts are then linked together by players according to their conceptual similarities.

 

These links are to be visualized so that one can view the form of the game as it progresses. Visualization also allows the game to be navigated quicker and easier once the game has been completed, in order to learn from what the game has taught members. Further, this final mapping of the game provides a means upon which to develop learning material or curriculum to teach about that topic.

 

The game is not over until all beads are linked together, and the beadmaster (game moderator) decides to call end game.

 


 

The Three Circles

 

The three circles are important to the development of the game. The three circles have been labeled, simply enough, the inner, the middle, and the outer.

 

The outer circle consists of members whom are able to observe the game during play, but are not able to contribute. They benefit by observing the flow and content of the game, from which they learn new concept ideas and perspectives about the core topic of the game. Once the game is complete, they also have full access to use the results of the game as a learning tool and reference upon which to base studies of the core topic of the game.

 

Upon game completion, the outer circle members are able to post replies to any bead (thread) of the game. These replies are to be considered new beads, which can then be played into a secondary game. By playing this secondary game, outer game members are able to identify themselves to the game masters as a person whom should be involved in the middle circle.

 

Thus, we come to the middle circle. The middle circle is often called the "Academic Circle". The inner circle participates in game play by adding beads, concepts, and ideas as the game evolves. Further, the middle circle members are able to expand their set of knowledge throughout the game by observing others viewpoints on similar concepts and ideas, while creating further beads related to those viewpoints and ideas.

 

Upon game completion, the middle circle also has the opportunity to see what outer circle members felt about the game, and see what types of beads they decide to play against the middle circle members beads. Middle circle members also have the opportunity to distinguish themselves in such a way that the inner circle wishes for that member to become a part of the inner circle.

 

Now for the inner circle. The inner circle members are the "masters". One or two members of the inner circle are selected for each game to be the "beadmaster". All inner circle members are able to participate in the game in much the same way as middle circle members. Those selected to be the beadmaster(s) however, have a completely different set of responsibilities. These masters are given the responsibility to moderate the game. By moderate, one means that the beadmaster(s) have the ability to remove beads in order to help the flow of the game, or remove off-topic beads, as well as move the game play in a positive direction.

 

The beadmaster(s) must also guide inner circle members when they have gone off the path of the ethics of the game, and remove those members from the middle circle if they do not come back onto the correct path. The responsibility of the beadmaster(s) is significant.

 


 

Game Ethics

 

A certain number of game ethics have been established and are being established as the games continue to develop.

 

They surround around the basic premise of being kind and non-judgmental.

 

1) The games are debates or conversations, they are NOT arguments

2) All ideas and opinions are to be respected as if they are your own, regardless of their controversial nature

3) Derogatory comments about any member or members ideas/concepts will not be accepted within game play

4) Devaluating a player's beads and the concepts held within those beads will not be tolerated

 

Beadmasters will observe the rules strictly. You may or may not get a warning depending on the severity of your actions. The beadmaster reserves the right to remove a player to the outer circle, or to a temporary "observers only" status as a result of violating these ethics.

 


 

System Design Overview

 

The glass bead game system will consist of a centralized server with a number of different types of clients connecting to it remotely.

 

Information used for the glass bead games will be stored within a standard SQL database in various forms. Each table within the database has a specific purpose within the context of the entire system, and plays a critical role.

 

Each client will provide secure access to the SQL Database in order to read and write information to and from the database. All writing operations will require a username and password in order to allow the user to complete them.

 

Client capabilities within the context of playing and administering the game include;

* Administrative (Level 0)

o Adding/Removing Games

o Adding/Removing Users

o Modifying User Permissions/Level

* Inner Circle (Level 1)

o Adding/removing beads

o Viewing Beads

o Modifying Beads

o Identifying significant concepts in beads

o View and navigate visualization of bead game

* Middle Circle (Level 2)

o Add/remove own beads

o View Beads

o Identify significant concepts in own beads

o View and navigate visualization of bead game

* Outer Circle (Level 3)

o View beads after game is complete

o Post new, secondary game, beads after game completion

o View visualization of bead game during play

o Navigate visualization of bead game after play

 


 

SQL Database Design

 

The SQL Database is the central storage container for all shared information across the glass bead games.

 

 

Tables;

Users

The "Users" table stores User information for login, access control, etc.

o UserID

* A distinct ID number which each user has

* Used to track which user is doing what throughout database

o UserLevel

* 0 - 3 for the user's global level

* User cannot exceed their global level for any specific game

o UserName

* The user's login name

* Alphanumeric < 12 Chars

o Password

* Hashed user password for login

o Name

* Real name of user

o Email

* User's e-mail address

o JoinDate

* User's join date

o LastActive

* User's last active date

 

Games

 

The "Games" table stores information about specific Bead Games and their members, which gives the system a knowledge of user permissions.

o GameID

* A distinct ID number which each game has

* Used to track what game specific beads and players belong to

o GameTitle

* The title of the game

o GameDesc

* A description of the game

o InnerMems

* A list of the inner circle member's IDs for this game

o MiddleMems

* List of middle circle member's IDs for this game

o StartDate

* Game's start date

o EndDate

* Game's end date

* May be a date in the future for it to expire

* May be blank if there is no expiry date and it is not complete as yet

 

Beads

 

The "Beads" table stores information about each specific bead (posting) to any bead game. This information includes the user identified significant concepts, and those concepts which are considered as insignificant to the bead.

 

o BeadID

* A distinct ID number which each bead has

o GameID <key>

* The game ID for the game which the bead belongs to

o AuthID <key to UserID>

* The UserID of the author of the bead

o ModID

* The UserID of a person whom modified the bead, if not the owner

* Blank if no modifications or if owner modified

o BeadTitle

* Title for the bead

o BeadText

* The actual contents of the bead

o SigConcepts

* ConceptID's for all concepts marked as significant for this bead

* Separated by a comma (,)

o InsigConcepts

* ConceptID's for all concepts not marked significant for this bead

o CreateDate

* Bead's date/time of creation

o ModDate

* Bead's date/time of modification

Concepts

"Concepts" stores the relation between all words within the bead games and their unique ConceptID. This ConceptID is used throughout the database to identify specific words.

o GameID <key>

* The GameID for the game which the concept exists under

o ConceptID

* A distinct ID number which is assigned to each concept

o Concept

* The actual concept

* This should be indexed within the database regularly so that we can quickly determine ConceptIDs for specific words to allow dynamic navigation, and the substitution of these ConceptIDs in place of the concept names within encoding

Neighborhoods

"Neighborhoods" contains neighborhood information specific to certain beads and concepts within those beads.

o NbrID

* The unique NeighborhoodID

o BeadID

* The Bead this neighborhood comes from

o ConceptID

* The ConceptID related to the neighborhood

o Nbr

* The actual neighbourhood

* Separated by a comma (,)

 

Links

 

"Links" is a constantly updated list of links which are found within a specific bead game. Can be used for visualizations and other link related activities. This table is processed over by the server on a scheduled basis. The process which occurs is that off removing un-necessary links and adding new links which are a number of steps away from the clients perspective of creating the links. Further, rules can be defined so as to limit the number of unique links related to each concept, or the number of total links which are the same from occurring. This may be defined so as to keep only the most important links in the visualizations. The specifics of visualization processing may also be defined by the clients.

 

o LinkID

o GameID

o A

* BeadID

o R

* ConceptID of relationship between A and B

o B

* BeadID

o Active

* 1 = yes

* 0 = no

o LinkCount

o ModDate

* The date/time of creation or deletion (depending on active status)

 

Most of the tables are relatively self explanatory, and the links among the tables should be quite clear. The tables are setup in a nested sort of fashion so that for each level of detail you require beyond your current level of detail/information, you move to the next table down in the structure.

 


 

Software to be Developed

 

There is three pieces of software which are proposed to be developed. All pieces of software are separate entities, yet are interconnected into one set of Glass Bead Games. Each has their own specific application, but draws on the same data source for all glass bead game operations.

 

The two pieces of software are;

 

1) Windows Client

2) The Manor Games

 

In addition, a single server will be put into place running Linux.

 

Windows Client

 

The windows client is the backbone for the entire system. Although many operations will be able to be completed using the other two pieces of software, the windows client will serve as the main demonstration piece of the technology and allow all bead game operations to occur. Although it is currently being labeled as the windows client, the possibility exists to convert this over to Mac and Linux operating environments if such requirements come up.

 

The Windows client will be written in Visual Basic 6 (VB6), which will include support to read and write remote SQL databases.

 

The final application will be coded in such a way as to remove dependencies on any non-standard external modules/dlls. This is done so as to maintain stand-alone status for the program, and keep it simple to install and use.

 

The Windows client will allow all glass bead game operations, as defined earlier, to occur. The GUI will provide a fully functional menu-bar providing easy access to global operations such as Login/Log Off, Preferences, Exit, an About screen, and built in direct links to manuals/documentation about program operation.

 

The GUI will also include tool-tips which will assist the user in navigating the environment.

 

The start-up screen every time the client is run will be a login screen to allow the user to login to the system.

 

After login, the users screen will display navigation and operation choices dependant upon their permissions. All users will be able to see the global bead game information (a list of bead games which are opened and closed), as well as those game's status and last update/post.

 

Those games accessible to the user will be available to be navigated by the user. The initial screen a user encounters after clicking on a game they are part of includes the game's current visualization, and list of the 5 - 10 most recent bead additions, and options to create new beads, list all beads, add/remove beadgame members (admins only), and to close the beadgame (admins only).

 

Bead game visualizations will be a simple visualization of all beads (denoted using specific icons or images) with their titles and lines between beads symbolizing the links among beads, as derived by identifying significant concepts. The client side visualization is derived directly from the links table, which is created at the server side.

 

Specific beads can be viewed by clicking on them in the visualization or in the list all beads section. Upon entering a bead, the user can perform bead specific operations such as moderation, bead deletion, and significant concept identification depending on their user level.

 


 

The Manor Games

 

The Manor is a Palace like 2D Visual Chat system developed by Mad Wolf Software. The Manor provides a very interesting environment from which to navigate and play the glass bead games.

 

Currently, The Manor supports PHP scripting to allow for information to be directly obtained from a SQL database using standard PHP methods. This would allow BCNGroup/OSI to create an entire Manor server which is specifically tailored to create itself from the Bead Games database.

 

The Manor also, currently, does not support the posting of data back to a database through PHP. This means that the initial application of a glass bead game Manor client would allow navigation of the bead games only. The links table could be directly used to allow users to move from room to room visually. Each room within a game would contain the text for a specific bead, and links (or doors) out of that room into all linked/related rooms (beads).

 

As a bead game is refined and completed, such a visual navigation system is suggested to be highly useful to enhance the distance education use of The Manor in a significant way. Not only can users move through a bead game on a topic of their choice through this medium, it would also enable them to hold live interactive chats with other people whom are viewing the same game or bead.

 

When/if The Manor begins to support posting of information back from The Manor to a database, the discussions on games and beads held within The Manor can be used as secondary games. Such capabilities could also be used to play beads into a specific game, by holding a discussion which is directly translated into a game which the Inner Circle members can link after the discussion has completed.

 

A Manor server can be run on the same Linux server as the database is run.