- Created Friday, March 28th 2014 @ 04:12:01
Replays show each separate army placement order, which uses a rather slow animation. Some bots place each army separately, slowing down playback. It would be great if you could make the replay combine all placements for a region combine into one.
It's possible that this placement behavior could be useful to see in some way, so it should perhaps be an option, but I think it would be best to default to combining them.
- Created Friday, March 28th 2014 @ 09:59:50
But i rather ask to players to code their bot in that way. Just before sending place-armies-orders, lets make a loop that will group armies placed in the same place, it's so easy (at less in Python) : you do not place armies directly but append them in a dict (array) where keys are region_id, then loop through this dict to send your orders.
DeveloperCreated Friday, March 28th 2014 @ 10:07:37
I don't think this would be something that's going to be implemented. It would only speed up the viewing a bit, but skipping through the moves speeds it up as well. And most people want to see what the bot does exactly, so it would get confusing because you don't actually see what the bot has outputted.
- Created Friday, March 28th 2014 @ 17:15:44
Unfortunately, even some fairly high ranked bots don't combine orders themselves.
At top replay speed, placing 5 armies vs 1 group of 5 takes an extra second. As bots get super regions, that adds about 1 minute total to the replay duration. Half the fun of this competition for me is watching replays, but it's so slow to watch +1, +1, +1... for dozens of turns that I only watch those matches if necessary. Skipping through moves is a lot of clicks or presses just to make it watchable.
- Created Friday, March 28th 2014 @ 22:14:10
And combining unit placing is really easy to do;
This is the only line I use in c#, at the end of my method
// Sanitize the output var result = moveList.GroupBy(x => x.region) .Select(region => new Move(gameState, Player.Me, region.Sum(x => x.Armies), region.Key)).ToList();
So if for some reason I placed two move orders on the same place, it gets grouped into one, and the sum is returned
- Updated Saturday, March 29th 2014 @ 00:10:38
In Chrome, this can be achieved by opening the console and typing "sliderValue=x". I haven't tried it on any other browsers yet...
While this doesn't fix the problem, it does make it more bearable.
- Created Saturday, March 29th 2014 @ 02:10:12
And that sliderValue is tied to the speed slider on the bottom right of the game board, you can set it too fastest there too.
- Updated Saturday, March 29th 2014 @ 04:54:26
Yes. However, by assigning the sliderValue manually, you can give it values outside those supported by the slider, and consequently make the pace of the game faster than possible by changing the slider's position alone.