<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.bzflag.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Gilly</id>
	<title>BZFlagWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.bzflag.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Gilly"/>
	<link rel="alternate" type="text/html" href="https://wiki.bzflag.org/Special:Contributions/Gilly"/>
	<updated>2026-04-06T20:50:27Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://wiki.bzflag.org/index.php?title=BZRobots/ShotsAndEnemies&amp;diff=4088</id>
		<title>BZRobots/ShotsAndEnemies</title>
		<link rel="alternate" type="text/html" href="https://wiki.bzflag.org/index.php?title=BZRobots/ShotsAndEnemies&amp;diff=4088"/>
		<updated>2008-02-19T21:38:27Z</updated>

		<summary type="html">&lt;p&gt;Gilly: New page: = Overview =  This page lists some ideas and issues in delivering the shot and player info to Frontend from Backend.  = Shots =  == In BZAdvancedRobot == * getShots() -type of functions (g...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Overview =&lt;br /&gt;
&lt;br /&gt;
This page lists some ideas and issues in delivering the shot and player info to Frontend from Backend.&lt;br /&gt;
&lt;br /&gt;
= Shots =&lt;br /&gt;
&lt;br /&gt;
== In BZAdvancedRobot ==&lt;br /&gt;
* getShots() -type of functions (get all shots, shots in certain volume, ...) return a list of shots (class Shot)&lt;br /&gt;
&lt;br /&gt;
== In Shot ==&lt;br /&gt;
* getPosition(dt) -return position after dt seconds as is assumed&lt;br /&gt;
* getType() - normal? gm? laser? ...&lt;br /&gt;
* 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&lt;br /&gt;
&lt;br /&gt;
* unique identifier so that frontend and backend can refer to individual shots: can be composed using player id and shot id&lt;br /&gt;
&lt;br /&gt;
= Players =&lt;br /&gt;
&lt;br /&gt;
== About the current Tank system ==&lt;br /&gt;
&lt;br /&gt;
* We can only get all the players at the same time and all the information is sent too&lt;br /&gt;
* Sending callsigns there is a problem with spaces in callsigns (i haven&#039;t tested it but I&#039;d assume so)&lt;br /&gt;
&lt;br /&gt;
What could be instead?&lt;br /&gt;
&lt;br /&gt;
== In BZAdvancedRobot ==&lt;br /&gt;
* getPlayers() -type of functions return a list of players (class Tank)&lt;br /&gt;
&lt;br /&gt;
== In Tank ==&lt;br /&gt;
* getPosition(dt) -return assumed position after dt seconds, &amp;quot;Haha meet my bullet there!&amp;quot;&lt;br /&gt;
* getVelocity() -return current velocity, &amp;quot;So that&#039;s the speed you got&amp;quot;&lt;br /&gt;
* getAngularVelocity() -return current angular velocity, &amp;quot;It&#039;s turning to face us! Fire!&amp;quot;&lt;br /&gt;
* getHeading() -which way the bot is heading? &amp;quot;ARGH It&#039;s aiming us!&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* unique identifier so that frontend and backend can refer to individual players: we got playerid&lt;br /&gt;
&lt;br /&gt;
= Issues =&lt;br /&gt;
&lt;br /&gt;
Functions in Tank and Shot will have to call backend. Should we make a&lt;br /&gt;
separate request for each of them or some kind of general&lt;br /&gt;
&amp;quot;GetShotInfoRequest &amp;lt;command&amp;gt; [arguments]&amp;quot; ?&lt;br /&gt;
&lt;br /&gt;
Are there functions ready in bzflag to ask for assumed positions of tanks&lt;br /&gt;
or bullets after dt seconds without updating them first?&lt;/div&gt;</summary>
		<author><name>Gilly</name></author>
	</entry>
	<entry>
		<id>https://wiki.bzflag.org/index.php?title=BZRobots/Ideas&amp;diff=4087</id>
		<title>BZRobots/Ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.bzflag.org/index.php?title=BZRobots/Ideas&amp;diff=4087"/>
		<updated>2008-02-19T21:33:23Z</updated>

		<summary type="html">&lt;p&gt;Gilly: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
This page is to describe the community ideas for the BZRobots API that is to be provided as part of the Programmable Computer Player Client project for the Google Summer Of Code &lt;br /&gt;
&lt;br /&gt;
= Implementation ideas =&lt;br /&gt;
* [[BZRobots/ShotsAndEnemies]]&lt;br /&gt;
&lt;br /&gt;
= Feature ideas =&lt;br /&gt;
==Scripting==&lt;br /&gt;
* Integrate python as a scripting language on top of C++&lt;br /&gt;
* Be able to load C++ or python modules transparently.&lt;br /&gt;
&lt;br /&gt;
==API functions==&lt;br /&gt;
* Provide global, team, admin, and report chat APIs so bots can communicate just like players, perhaps with some parsing helper functions.&lt;br /&gt;
* Provide an API for visual targets based on the same rules a player would see.&lt;br /&gt;
* Have methods to compute travel paths to desired locations, with updates for moving targets.&lt;br /&gt;
&lt;br /&gt;
== Input ==&lt;br /&gt;
* Allows input of coordinates/properties from stdin, so info from other apps, gps, etc. can be pumped into the bot&lt;br /&gt;
&lt;br /&gt;
=See Also=&lt;br /&gt;
* [[Google_Summer_of_Code|Google Summer of Code]]&lt;br /&gt;
* [[BZRobots/About]]&lt;/div&gt;</summary>
		<author><name>Gilly</name></author>
	</entry>
</feed>