home *** CD-ROM | disk | FTP | other *** search
- Node Node
- \ /
- Node - Hub - Node Global War InterBBS Technical Documentation
- / \
- Node Node
-
-
- Global War InterBBS Routing - OVERVIEW
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
- Global War InterBBS networks are arranged with one central Hub connected
- to any number of Nodes.
-
- All games must be Fixed Turn Order games. This is a new type of game in
- Global War 3.0 where players take their turns in sequence.
-
- New games created on a Node are MOVED to the Hub. The Hub receives the
- new game, assigns it a game number, and adds it to its games area.
- Copies of the game are then sent to all Nodes.
-
- New games created on the Hub are sent to all Nodes.
-
- When any change occurs in a game, the Node sends a copy of the game to
- the Hub and the Hub sends copies of the game to all Nodes.
-
- When changes to a game on the Hub occur, copies of the game are sent to
- all Nodes.
-
- Score changes on a Node are saved in a file called updscore.war. When
- any scores change, this file is moved to the Hub. The Hub combines the
- score changes in updscore.war with those in the master (winners.war)
- score file. Copies of the updated winners.war file are then sent to all
- Nodes. If the upper limit of the rankings is exceeded (see war.cfg line
- 35) the Hall of Fame (HOF) utility is executed. HOF resets the ranks in
- winners.war and updates the Bulletin.Ans file. Bulletin.Ans is then sent
- to all Nodes.
-
-
-
- GWIBBS InterBBS processing program
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
- GWIBBS In File.ZIP (input games to a node)
-
- Copies specified zip file into inzip directory.
-
- Unzips inzip\zip file into infiles directory.
-
- Checks for valid key (1) within the ZIP file. If invalid, deletes
- inzip and infiles dirs and quits.
-
- If valid key (1) found, proceeds with the following:
-
- Deletes zip file.
-
- Examines the Stage (2) value of all incoming games and compares it
- with the Stage (2) value of the existing game (if there is one). If
- the Stage (2) value of the incoming game is greater or equal, the
- incoming game is imported (3). If there is no existing game the
- incoming game is imported (3). If the Stage (2) value is less, the
- incoming game is not imported.
-
- If a WAR.CFG file is found, lines 3, 4, 7, 10-12, 15, 17-30, 33-35,
- 39, 53-61 and 63 of the Node's WAR.CFG file are updated to match
- those of the WAR.CFG file received from the Hub.
-
- If an IBBS.CFG file is found, lines 1 and 4 are updated to match
- those of the IBBS.CFG file received from the Hub.
-
- Any *.TOP, *.WAR, *.ANS or *.EXE files found are moved to the door
- directory. They will replace any files by the same name unless the
- file in the door directory is write protected.
-
- All files in the infiles directory are deleted.
-
-
- GWIBBS Out (output games from a node)
-
- Reads GWIBBS.$$$ (a log file created by Global War) to get N:ew,
- U:pdated game numbers and S:corechange indication
-
- New games: moves the warxx.dat, warxx.log, warxx.msg to outfiles dir
- where they are renamed newxx.dat, newxx.log, newxx.msg
-
- Updated games: copies the warxx.dat, warxx.log, warxx.msg files to
- outfiles directory.
-
- Score Updates: moves updscore.war to outfiles where it is renamed
- score##.war (## is a unique id from 1..255 incremented each time).
-
- Zips all files in outfiles dir, adds Key, calls IBBSMOVE to send to
- hub.
-
-
- GWIBBS InHub File.Zip (input games to a Hub)
-
- Copies specified zip file into inzip directory.
-
- Unzips inzip\zip file into infiles directory.
-
- Checks for valid key (1) within the ZIP file. If invalid, deletes
- inzip and infiles dirs and quits.
-
- If valid key (1) found, proceeds with the following:
-
- Deletes ZIP file.
-
- If any new games exist (newxx.*), copies them to current dir & names
- them warnn.* where nn is an unused game number. Moves game to
- outfiles dir to send to all Nodes.
-
- Examines the Stage (2) value of all incoming games and compares it
- with the Stage (2) value of the existing game (if there is one). If
- the Stage (2) value of the incoming game is greater, the incoming
- game is imported (3) and copied to the outfiles directory to send to
- all Nodes. If there is no existing game the incoming game is
- imported (3). If the Stage (2) value is less or equal, the incoming
- game is not imported or sent to Nodes.
-
- If score file updates (score##.war) exists, they are moved to the
- door directory and renamed updscore.war, combined with the scores in
- the master score file winners.war. If the maximum score is exceeded
- then the Hall of Fame utility is run to generate a Bulletin.Ans
- file. Winners.Top is deleted. Bulletin.Ans and winners.war are
- copied to the outfiles dir to be sent to all Nodes.
-
- For every Node listed in Route.Cfg - Zips all files in outfiles dir,
- adds Key (1), calls IBBSMOVE send Zip file to each Node.
-
-
- GWIBBS OutHub (output games from a Hub)
-
- Reads GWIBBS.$$$ (log file created by Global War) to get N:ew,
- U:pdated game numbers and S:corechange indication
-
- New and Updated games: copy the *.dat, *.log, *.msg to outfiles dir
-
- Score file updates: copy winners.war to outfiles directory.
-
- Deletes updscore.war, which is not used on the hub.
-
- For every Node listed in Route.Cfg - Zips all files in outfiles dir,
- adds Key (1), calls IBBSMOVE send Zip file to each Node.
-
-
- GWIBBS HubInit [NodeAddress] (initialize a node. If NodeAddress is not
- specified, reinitializes all nodes)
-
- Copies all games (WAR*.DAT, WAR*.LOG, WAR*.MSG) to outfiles dir.
-
- Copies current score file (WINNERS.WAR) to outfiles dir.
-
- Copies current Hall of Fame (BULLETIN.ANS) to outfiles dir.
-
- Copies WAR.CFG and IBBS.CFG to outfiles dir.
-
- Copies WAR.EXE and GWIBBS.EXE to outfiles dir.
-
- Zips all files in outfiles dir, adds Key (1), calls IBBSMOVE to send
- Zip file. Zip file is sent to NodeAddress if specified on command
- line and matches entry in ROUTE.CFG. If no NodeAddress is specified
- (or if NodeAddress is "ALL" then Zip files are created and sent to
- all Nodes listed in ROUTE.CFG.
-
- GWIBBS HubSend [NodeAddress] (sends all files in outfiles dir to a
- node. If NodeAddress is not specified,
- sends to all nodes)
-
- Zips all files in outfiles dir, adds Key (1), calls IBBSMOVE to send
- Zip file. Zip file is sent to NodeAddress if specified on command
- line and matches entry in ROUTE.CFG. If no NodeAddress is specified
- (or if NodeAddress is "ALL" then Zip files are created and sent to
- all Nodes listed in ROUTE.CFG.
-
- -------------------------------------------------------------------------
- Notes:
-
- (1) What is The Key file? It identifies the ZIP file as a valid IBBS
- archive. If no key file is found in the ZIP file, the ZIP file will
- not be accepted for processing. The Sysop may have tried to process
- the wrong ZIP file. The Key file is also for security. The key file
- contains the secret password for the net. If the password is wrong,
- the ZIP file will not be accepted. This prevents a hacker from
- sending us a bogus ZIP file. When the ZIP file is created, it is
- encrypted using PKZIP's -S switch. If the ZIP file should ever fall
- into the wrong hands, the encryption will prevent a hacker from
- unzipping the file and discovering the password stored in the key
- file.
-
- (2) Stage value. This is a number that indicates how far the game has
- progressed. It is used when comparing two games to see which one is
- newer and to prevent an older game from replacing a newer game.
- Stage=100 when a game is created. Stage is incremented by 1 every
- time a player takes a turn, changes a vote or password. Stage is
- incremented by 100 every time a player joins or removes their name
- from a game. When a game starts, Stage is set to 10000. The higher
- the stage value, the newer the game.
-
- (3) Imported means the WAR*.DAT, WAR*.LOG and WAR*.MSG files are
- accepted by the node. They are copied from the infiles directory to
- the door directory and replace any files with the same name.
-
-