This wiki is archived and useful information is being migrated to the main bzflag.org website
Difference between revisions of "BZRobots/Ideas"
From BZFlagWiki
Line 1: | Line 1: | ||
=Overview= | =Overview= | ||
− | This page is to | + | This page is to collaborate on ideas for the [[BZRobots]] Programmable Computer Player Client |
= Implementation ideas = | = Implementation ideas = | ||
* [[BZRobots/ShotsAndEnemies]] | * [[BZRobots/ShotsAndEnemies]] | ||
− | = | + | = Suggested ideas = |
==Scripting== | ==Scripting== | ||
− | + | * Be able to load multiple modules. | |
− | * Be able to load | + | |
==API functions== | ==API functions== | ||
− | |||
* Provide an API for visual targets based on the same rules a player would see. | * Provide an API for visual targets based on the same rules a player would see. | ||
+ | * Provide global, team, admin, and report chat APIs so bots can communicate just like players, perhaps with some parsing helper functions. | ||
* Have methods to compute travel paths to desired locations, with updates for moving targets. | * Have methods to compute travel paths to desired locations, with updates for moving targets. | ||
+ | * Add a getTank(callsign) function | ||
== Input == | == Input == | ||
* Allows input of coordinates/properties from stdin, so info from other apps, gps, etc. can be pumped into the bot | * Allows input of coordinates/properties from stdin, so info from other apps, gps, etc. can be pumped into the bot | ||
− | = | + | = Accepted ideas = |
− | * | + | * Add support for getShots() in BZAdvancedRobot - return a list of shots (class Shot) |
− | * | + | * Add support for a Shot class |
+ | ** getPosition(dt) -return position after dt seconds as is assumed | ||
+ | ** getType() - normal? gm? laser? ... | ||
+ | ** getShooter() - who shot it? at least own shots should be distinguished because on no-rico servers we could just throw them away when doing collision forecasts | ||
+ | ** unique identifier so that frontend and backend can refer to individual shots: can be composed using player id and shot id | ||
+ | |||
+ | = Rejected ideas = | ||
+ | ==API functions== | ||
+ | * Have methods to compute travel paths to desired locations, with updates for moving targets. | ||
+ | ** (Rejected as it defeats the purpose of BZRobots as an AI learning tool) |
Revision as of 05:59, 4 August 2009
Contents
Overview
This page is to collaborate on ideas for the BZRobots Programmable Computer Player Client
Implementation ideas
Suggested ideas
Scripting
- Be able to load multiple modules.
API functions
- Provide an API for visual targets based on the same rules a player would see.
- Provide global, team, admin, and report chat APIs so bots can communicate just like players, perhaps with some parsing helper functions.
- Have methods to compute travel paths to desired locations, with updates for moving targets.
- Add a getTank(callsign) function
Input
- Allows input of coordinates/properties from stdin, so info from other apps, gps, etc. can be pumped into the bot
Accepted ideas
- Add support for getShots() in BZAdvancedRobot - return a list of shots (class Shot)
- Add support for a Shot class
- getPosition(dt) -return position after dt seconds as is assumed
- getType() - normal? gm? laser? ...
- getShooter() - who shot it? at least own shots should be distinguished because on no-rico servers we could just throw them away when doing collision forecasts
- unique identifier so that frontend and backend can refer to individual shots: can be composed using player id and shot id
Rejected ideas
API functions
- Have methods to compute travel paths to desired locations, with updates for moving targets.
- (Rejected as it defeats the purpose of BZRobots as an AI learning tool)