Show HN: A competition game to write bots for the most efficient algo (github.com)
I had an idea on a competition in a highly constrained environment: 32x32 matrix, with bots running code you write! The live site is https://kingofthegrid.com/.
Each bot emulates Z80 CPU and they all get equal execution time, so the most efficient algorithm wins.
Bots can move, eat, clone themselves, and most importantly, survive the competition.
Each submission, leaderboard is re-calculated, such that each participant has a match against each other, and the bot that makes the most wins gets to the top.
It includes includes an online in-browser IDE: https://kingofthegrid.com/ide/ that way you don't even have to download anything to spitball ideas. After compiling, you can test your code in browser as well.
I am also hoping for submitters to come up with ingenious ideas that would force others to re-think the strategy, etc.
8 comments
[ 4.7 ms ] story [ 20.1 ms ] threadhttps://en.wikipedia.org/wiki/Core_War
I have been messing around with Z80 processor for some time and given how it's slow and simple I had to do some really dirtry tricks to make game code efficient, and that made me thinking "hey, this has potential as a benchmark, what if I make a competition where speed of decision making is key". Since Z80 Emulators allow for precise tick control, every bot gets equal chance.
And because of Z80 simplicity I was able to go 100% deterministic route: every game has a seed and it's guaranteed that games with the same seed and players end up the same, so players can debug what happened after they've lost, etc.
There are C compilers for it, but I am also curious if somebody with enough Rust-fu just provides a binding for it, since this is technically not about C, but about machine code.
Something to have fun with on weekend :)
Here I focus instead on sheer performance of your code. You 64k of ram is all you get, every move you do blocks you and you get an equal chance to execute your program – e.g. everyone gets a slice of 10'000 T-states per game iteration. For context, on ZX spectum machine, you get 70'000 T-states between frames. So this, potentially, creates a competitive environment, where a bot that takes 500 T-states less to take decision to move and does so earlier, eats you, it wins.
I've been a witness of competitions when people would take "who can make this problem solved the cheapest" and it's fun. So I figured I should try and take it to extreme.
https://web.archive.org/web/20060224022835/http://www.symant...