A recent project of mine has reminded me just how much Circuits does to free
the programmer. A good friend and I are designing a game built specifically for
an artificial intelligence to play. The game being a real-time war strategy
game and us being the competitive programmers we are it turned into a personal
challenge between us. Who can make the best AI?
Well the answer is I can but not because of my skill. My friend and I are
fairly well matched in that regard. I won, and will continue to win, because of
the tools I use.
The first day my friend set to work on his main loop and I set to work on
navigation and resource gathering. Day two he's working on hooks and intercepts
while I'm figuring out defense and prioritizing orders. Day three he's finally
getting to work on a TCP client and basic protocol implementation. I'm already
tweaking my strategy and testing my AI.
It went on like that for about a week and a half. On Sunday we played our first
game. My AI had seen extensive testing, had a refined battle strategy and was
very quick to make key decisions. His was green, unrefined and ineffecient. It
was a quick victory.