X-Git-Url: https://git.xonotic.org/?a=blobdiff_plain;f=Bot.md;fp=Bot.md;h=21feef451b03de97df7eeca1ba4295cf77d52f7b;hb=7109b8babe4774475435a44a66ef26539666d15f;hp=0000000000000000000000000000000000000000;hpb=9b875abc7eacfdfbfb7a20fbbdc1e4086fe4cd1c;p=xonotic%2Fxonotic.wiki.git diff --git a/Bot.md b/Bot.md new file mode 100644 index 0000000..21feef4 --- /dev/null +++ b/Bot.md @@ -0,0 +1,62 @@ +Bot +=== + +General behaviour +----------------- + +### Goals + +Pathfinding +----------- + +### Goals + +- Plan A - Grid based + +- Plan B - Waypoints based + - Cached waypoint links + +- A\* based + +- Cached nodes _(applies to both plans)_ + - This means that most of map discovery or waypoint creation will be done offline + +Navigation +---------- + +### Goals + +- Steering behaviour + +- Swimming + - Support getting out of water + - Float in the same place if until a path is found + - Eventually support navigation under water as long as the pathfinder supports it too + +- Able to get out of lava, acid, etc + - Ideally it should request quickly a new path to the pathfinder, instead of improvising on the movement code + +- Never, ever, get stuck in the same place. Wander around if there nothing better to do. + +- Able to rocket-jump _(as a last resource measure, when they're thrown into space void)_ + +- Plan A - Waypoint based + - Avoid path congestion _(this happens when more than one bot on the same team are traveling over the same path)_ + +- Filter insanely quick movements (aka shaking) + +Talking +------- + +### Goals + +Aiming +------ + +### Goals + +Coding guidelines +----------------- + +Links +-----