Problems
The downside to BoloViewer is that the representation of the game events will
not be 100% accurate. This is because BoloViewer is not the actual game and was
developed through a process trial and error, working backwards from recorded
games. Although its accuracy has been greatly improved since the first version,
it is still possible that oddities and flaws will show themselves.
Bolo log files differ from the game network operation in what happens when a
player is no longer in the game. When a player quits a game, an appropriate
indication (called a "packet") is sent and recorded in the log file. Bolo
announces these events with a "Bubba is quitting" line on the message
wire.
Because of its network ring structure, Bolo knows immediately when a player is
no longer in the game and puts a notification on the message wire as "Bubba left
game" (the same message is used for both quits and network splits).
Unfortunately, this information is not recorded in the log file.
BoloViewer attempts to overcome this limitation in two ways. First, it takes
advantage of the process that occurs when a tank joins a game. Part of this
process involves every player already in the game identifying themselves. By
comparing this list with the previous player list, splits can be detected.
Second, tanks in the ring must send at least one packet every 20 secs, even if
they are doing nothing. Therefore, splits can also be detected by keeping track
of the time since the last packet was sent by a player, but it may take some
time to do so. In the meantime, it is possible to see frozen "ghost" tanks
that are no longer in the game.
BoloViewer sometimes reports that it cannot open a log file because there
is not enough memory. This is a bug in the operating system, specifically
something called Navigation Services. The error only occurs when the following
conditions are true: 1) Mac OS 8.6 running, and 2) the log file is opened
with the Open... command in the File menu (or command-O). You can workaround
the problem by upgrading to Mac OS 9 (or later). Alternatively, opening
with drag-and-drop (drag the log file onto the BoloViewer icon avoids the
problem by circumventing the open file dialog. Also, if the log has been
been created with Bolo 0.99.7bv, you can simply
double click the log file itself to open it in the viewer.