This wiki was in read-only mode for many years, but can now be edited again. A lot of information will need to be updated.

BZRobots/Protocol: Difference between revisions

From BZFlagWiki
Jump to navigation Jump to search
Daxxar (talk | contribs)
No edit summary
Bulldozer (talk | contribs)
 
(17 intermediate revisions by 3 users not shown)
Line 1: Line 1:
== BZRobots Enhanced Protocol ==
=Overview=
This page describes the [[BZRobots]] Enhanced Protocol that forms the internals of the BZFlag Programmable Computer Player Client


This is a draft of the protocol that's being planned for the new bzrobots as a part of GSoC.
=Description=
The [[BZRobots]] client currently consists of two parts called the "backend" and the "frontend". The "backend" is a lightweight game client that communicates with BZFS. It also runs a lightweight line-by-line text-based server, on which commands can be sent to control a robot. The "frontend" is an instance of a BZAdvancedRobot, including the necessary parts to communicate with the "backend".


{| cellspacing="0" border="1"
==Available Commands==
|+ Backend messages
See the [[BZRobots/API]] for the commands currently available to the BZRobots protocol.
!Message syntax
!Description
!Example
|-
|SOME_COMMAND_HERE <float>
|THIS RUNS SOME COMMAND WITH FLOAT ARGUMENT
|SOME_COMMAND_HERE 15
|}


{| cellspacing="0" border="1"
==Legacy==
|+ Frontend messages
Eventually, in an effort to simplify the internals of BZRobots, the "frontend" and "backend" will likely be altogether removed, thereby eliminating the internal protocol. It is recommended to develop bots in C or Python using the published API, rather than attempting to develop a seperate client for the BZRobot backend.
!Message syntax
!Description
!Example
|-
|SOME_COMMAND_HERE <float>
|THIS RUNS SOME COMMAND WITH FLOAT ARGUMENT
|SOME_COMMAND_HERE 15
|}

Latest revision as of 06:14, 4 August 2009

Overview

This page describes the BZRobots Enhanced Protocol that forms the internals of the BZFlag Programmable Computer Player Client

Description

The BZRobots client currently consists of two parts called the "backend" and the "frontend". The "backend" is a lightweight game client that communicates with BZFS. It also runs a lightweight line-by-line text-based server, on which commands can be sent to control a robot. The "frontend" is an instance of a BZAdvancedRobot, including the necessary parts to communicate with the "backend".

Available Commands

See the BZRobots/API for the commands currently available to the BZRobots protocol.

Legacy

Eventually, in an effort to simplify the internals of BZRobots, the "frontend" and "backend" will likely be altogether removed, thereby eliminating the internal protocol. It is recommended to develop bots in C or Python using the published API, rather than attempting to develop a seperate client for the BZRobot backend.