Read part one here: Unleash the Geek – day I

Unleash The Geek Series

After reaching Silver League today I focused on refactoring a couple critical parts of the code and implementing more advanced movements.

The way robots select a move each turn was fine for just 3 or 4 options but now it was getting messy. That was the first part of the day: clarifying preconditions for each move and defining a clear priority in case multiple moves are possible.
For example, requesting a radar is more important than collecting ore when the map is still slightly explored, but once there is plenty of ore visible, collecting it is the priority.

Moving a bot
Moving a bot

Second part was harder cause I focused on placing more traps and being aggressive, but that didn’t work. Most enemies never fell in my traps so I mostly wasted some time on this idea.
And that was a surprise cause the enemy cannot see your traps. Not even the items your robots carry so there is no way you can guess trap locations. But I will come back to this later.

Another idea that I thought about was trying to remove enemy radars. But once you place a radar and discover the ores in range you really don’t care about that radar anymore so why would anyone take time to remove them?

I did some minor improvements and some tracking for my own traps and reducing ore count after digging to increase accuracy but that did not help much.
Something that did help a bit was tweaking the radar placement again. Instead of placing it closer to the base I now prefer to go a bit to the right where there is a higher probability of finding ore.

Ore probability
Ore probability is higher on the right side

But even with all the improvements I did not manage to reach top 500. Not until I added a «safe mode» to my bots that prevents them from digging where the enemy has created a hole already. I cannot see enemy traps, but if there is a hole, and I didn’t dig there, I better not try my luck.

And this was to my surprise very effective: I jumped from below 500 to top 200. Right above my expectations of reaching top 300 as I mentioned yesterday. Not sure I will be able to progress to Gold League tomorrow but I will try.

Read the third part: Unleash the Geek – day III