Thread: United Bot
View Single Post
Re: United Bot
Old
  (#13)
botmeister
Ex-Council Member
 
botmeister's Avatar
 
Status: Offline
Posts: 1,090
Join Date: Nov 2003
Location: Canada
Default Re: United Bot - 14-03-2004

I think this whole United Bot thread should be placed into a forum of it's own so it does not get buried away.

Here's some more ideas for a united bot:

1. If we proceed with a bot that can be built up using "plugin" parts, then we'll have to solve some interesting design challenges, which are generic and should apply to bot development outside HL.

2. A united bot will need a common API which should work across game engines. There would be an interchangeable plugin (or driver) for the bot that would be designed to work with each specific game engine - sort of like using a specific device driver that works with a specific video card, yet the software that uses the device driver does not care about which card is in use.

3. A new concept will have to be developed, I'll call it the Data API. Traditionally, an API is used as both for calling functions (FAPI) and for data interchage (DAPI). If you think about a united and generic bot for a while you'll see that the traditional API is not well suited for the task. The DAPI can allow for the generic interference free exchange of data between loosely integrated plugins that are designed to solve a common task.

More details on the DAPI:

Imagine that a plugin is created to replace the default aiming plugin which will perform more realistic aiming. The replacement plugin needs to add extra data fields to the common bot structure. Other plugins may or may not make use of the new data fields, and all existing data fileds must not be removed or interfered with in the process.

The concept of dynamically adding "sharable" data fields to a default structure, is what the DAPI will do. Each plugin can check to see what data fields exist or do not exist, and they can add their own data fields dynamically as the plugin is initialized without interfering with the needs of the other plugins. The DAPI can work for any structure, even for complex waypoint and navigation needs.

I can write volumes on this, so I better stop here for now and let other people chip in their own ideas.

*edit*

I just realized that the FAPI should be extended to make it dynamic, allowing the common interface to be extended as needed by each plugin. The DAPI idea is reasonably well thought out, and I even have something working already, but a dynamic FAPI is just a thought at this point, but I can see at least one method already (sort of).


Maker of the (mEAn) Bot.Admin Manager

"In theory, there is no difference between theory and practice. But, in practice, there is." - Jan L.A. van de Snepscheut

Last edited by botmeister; 14-03-2004 at 04:51..
  
Reply With Quote