At present, movement orders are simply Toward X or Away From X, and all occur at maximum speed.

I would like to be able to program my bots with tropisms, such as "Move toward X until at Medium Range, Move away from Y until at medium range, Move away from Z until out of range, Move to intercept W until at medium range."

Further, I would like to be able to give each movement order an internal priority, such as "Go faster" or "Go slower" the closer the bot is to the subject of the movement order, or "Move at constant speed"

I would also like to be able to give each order in an order set a weight, from 0% to 200% or more, that would define the proportion of motive power that will be applied in each relevant direction, up to the total available, of course.

Movement orders would be toward or away from static objects, and could be toward, away, or to intercept moving objects.

AMWild wrote:I would like to be able to program my bots with tropisms, such as "Move toward X until at Medium Range, Move away from Y until at medium range, Move away from Z until out of range, Move to intercept W until at medium range."

i don't know if i'm missing something but that can be done with "move toward X NOT at medium range from me", once you are in middle range with X, the condition is no more valid and you stop moving.same applies to "flee from Y at medium range from me", "flee from Z NOT out of range of me".

I'd say that you are missing something... I want the bots to be able to do all of these things at the same time, based upon the weights given to each movement order, so that the end result may be a sort of averaged path between each of the specified paths.

For example, "Move toward enemy carrying resource 50%, Move toward nearest eemy base that an enemy is moving toward 50%" would not move toward the enemy base or the enemy, but toward a point half-way between the two.

"Move toward nearest enemy 50%" would move the bot toward the enemy... but at half speed.

"Move away from nearest ally at short range 100%, Move toward nearest enemy 100%" would result in the bot moving away from its allies, as well as moving toward the enemy at the same time, until the allies were at medium range, then it would head straight for the enemy.

"Intercept nearest enemy 100%" would put the bot on course to intercept another moving bot, not just moving toward the enemy, but moving to the point where the enemy will be when it gets there.