Goodmorning all,
One thing I am hoping for in is an improvement in the Auto explore AI.
The GC auto explore AI worked as
'find nearest(to original starting point?) unexplored region, set destination, when arrive repeat.' The algorithm doesn't cause the scout to cross the territory very often, so some use of the current location is also taken into account.
It's a perfectly functional auto explore, but i hope that the Elemental one will be better.
When mapping out a region (in a game where you map perfectly first pass) a much more efficient algorithm would determine the farthest out the scout can be, such that it's field of vision ends at the point it wants to see (and therefore it sees that point, and 2 fields of vision beyond that point,rather then one). and take a curved path to get there.
Unit Y in field, X is unexplored o is explored. d is destination. line of sight is one unit (for simplicity), p is path, S is starting point
Y is told to auto Explore,
XXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXooooXXXXXXXXXXXXXXX
XXXXXXXXoooooXXXXXXXXXXXXXXX
XXXXXXXXooYooXXXXXXXXXXXXXXX
XXXXXXXXooooXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXX
Turn1
old algorithm Suggested
XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXooooXXXXXXXXXXXXXXX XXXXXXXXXooooXXXXXXXXXXXXXXX
XXXXXXXXoooooXXXXXXXXXXXXXXX XXXXXXXXooopoXXXXXXXXXXXXXXX
XXXXXXXXooYpoXXXXXXXXXXXXXXX XXXXXXXXooYopXXXXXXXXXXXXXXX
XXXXXXXXoooodXXXXXXXXXXXXXXX XXXXXXXXooooXdXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXX
Turn3
old algorithm 5 squares Suggested 3 squares
XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXooooXXXXXXXXXXXXXXX XXXXXXXXXooooXXXXXXXXXXXXXXX
XXXXXXXXoooooXXXXXXXXXXXXXXX XXXXXXXXooooooXXXXXXXXXXXXXX
XXXXXXXXooSoooXXXXXXXXXXXXXX XXXXXXXXooSoYoXXXXXXXXXXXXXX
XXXXXXXXooooYoXXXXXXXXXXXXXX XXXXXXXXoooopoXXXXXXXXXXXXXX
XXXXXXXXXXdpooXXXXXXXXXXXXXX XXXXXXXXXXdpXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXX
Turn 4
old algorithm 9 squares Suggested 6 squares
XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXooooXXXXXXXXXXXXXXX XXXXXXXXXooooXXXXXXXXXXXXXXX
XXXXXXXXoooooXXXXXXXXXXXXXXX XXXXXXXXooooooXXXXXXXXXXXXXX
XXXXXXXXooSoooXXXXXXXXXXXXXX XXXXXXXXooSoooXXXXXXXXXXXXXX
XXXXXXXXooooooXXXXXXXXXXXXXX XXXXXXXXooooYoXXXXXXXXXXXXXX
XXXXXXXXXXdYooXXXXXXXXXXXXXX XXXXXXXXXXdpooXXXXXXXXXXXXXX
XXXXXXXXXXoooXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXX
Turn 5
old algorithm 11 squares Suggested 10 squares
XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXooooXXXXXXXXXXXXXXX XXXXXXXXXooooXXXXXXXXXXXXXXX
XXXXXXXXoooooXXXXXXXXXXXXXXX XXXXXXXXooooooXXXXXXXXXXXXXX
XXXXXXXXooSoooXXXXXXXXXXXXXX XXXXXXXXooSoooXXXXXXXXXXXXXX
XXXXXXXXooooooXXXXXXXXXXXXXX XXXXXXXXooooooXXXXXXXXXXXXXX
XXXXXXXXdpYoooXXXXXXXXXXXXXX XXXXXXXXXdoYooXXXXXXXXXXXXXX
XXXXXXXXXooooXXXXXXXXXXXXXXX XXXXXXXXXXpooXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXX
Turn 6
old algorithm 13 squares Suggested 15 squares
XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXooooXXXXXXXXXXXXXXX XXXXXXXXXooooXXXXXXXXXXXXXXX
XXXXXXXXoooooXXXXXXXXXXXXXXX XXXXXXXXooooooXXXXXXXXXXXXXX
XXXXXXXXooSoooXXXXXXXXXXXXXX XXXXXXXXooSoooXXXXXXXXXXXXXX
XXXXXXXXooooooXXXXXXXXXXXXXX XXXXXXXXooooooXXXXXXXXXXXXXX
XXXXXXXXdYooooXXXXXXXXXXXXXX XXXXXXXXdoooooXXXXXXXXXXXXXX
XXXXXXXXoooooXXXXXXXXXXXXXXX XXXXXXXXXpYooXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXoooXXXXXXXXXXXXXXXX
It is trivial to see that the new algorithm will reveal field faster then the older algorithm.
The new algorithm reproduces a maximally expanding spiral search pattern in most instances. It also allows multiple scouts to combine thier efforts with moderately high efficiency without additional code.
Ideally the AI explore algorithm would take into account the number of units and the speed of each unit... but that may be too much to ask, This proposed method would provide a significant boost to explore speed, and automatically provide some ability to efficiently use multiple scouts without explicitly coding rules for those units. Addition bonus for having the path be chosen to maximize the amount of dark area reviled.
Second request, much like the first request.
When a stack of troops march together traditionally the march together at the speed of the slowest member. I would like to request that groups be allowed to made are not required to march together. Clicking on one unit and giving it an order would give all the units the order, Unless the unit in question was broken off from the group (with some obvious UI method of showing they are still grouped.).
This would free up faster scout units to preform scouting and advanced lookout functions for slower tank units.
The UI would have to have an option to force the group to stay together, i would suggest 3 levels of cohesion, One stack, One turn to one stack, and maximal spread. The middle option would allow units of the group to be no further then a distance which would allow them to group back together in one turn.
The algorithm would calculate when the slowest member of the team will arrive. Then assign each faster method a route that gets them to that destination on the same turn, by way of a less direct curved path(or a path that overshoots the destination, then backtracks to arrive on time, as a look-ahead).
The method would allow Faster units to function as scouts at the risk of being caught/killed or ending up in a different branch and arriving later then expected due to having to correct its course and backtrack. It would add another layer of strategy, do you keep your unites together for safety, or use the fast units as scouts for more information, advanced warning?
As a bonus Troops traveling together could come with the additional bonus of traveling slightly faster perhaps. Fast units carrying the supplies or some of the weight of the slower unites, giving a small boost to the total groups movement speed. Having one fast troop in a large army would provide almost no advantage, but having one slow troop in a large team of fast units would move somewhat faster then the slow troop would move alone. [some form of weighted average, where slower troops have more effect on final speed then fast troops, but a lot of fast troops for each slow troop would result in a speed bonus.]. For example team of pike-men and Calvary. The pike-men don't fight on horse back, but if there are as many Calvary as pike-men the group can travel 2 to a horse. The horses would be slower however for the extra weight (and the clumsy pike), then the Calvary traveling alone.
If that was to be used, the default would be less then a turns ride at all times, spread out would give a scouting bonus, combined would give a small speed bonus.
Just my requests, what does everybody think??
Robbie Price.