Micro sized mirage gun
Great work! I'm very curious how it would do when combined with nano-sized melee movement. In case it helps (and you haven't already done it) you could reduce the code size by
- Removing the gameTime > 1 check.
- Use a constant state instead of makeState(...) when the opponent wasn't scanned for consecutive ticks.
- Instead of replacing a random table entry, just keep replacing the last one when the table is full.
- Don't add the weight/5 addition to the midpoint aim bin.
I imagine these changes would only slightly degrade performance while saving a decent amount of code size, but I kept them in Mirage because I had the space.
Thank you!
For a while I was noticing quite a drop in performance without the gameTime > 1 check. It was driving me nuts because I couldn't figure out why but trying it now it has minimal impact. I'm still confused but won't say no to another 5 bytes! That gets me down to 665 bytes without any movement code or colours.
I've tried it with Quantum, Lib and Infinity's movements so far. Quantum's movement isn't a great fit, presumably because it moves about and changes target quite frequently. Lib's movement wasn't quite as good as expected, not much (if any) better than just doing Infinity's box movement without seeking the edge which itself might still be good enough to hit top five in the micro melee.
Sprout's movement gave some pretty exciting results. I've not tested extensively but it wouldn't surprise me if it challenged Wallaby. Gotta squeeze a bit more out for that to fit though.