Arg, I wrote up this big reply with the algorithm described but I guess I didn’t click submit and forgot about it sigh Anyways, as you guys pointed out, changing loadouts makes it very difficult as switching in and out a huge missile could mean that the “optimal” design for the fleet in terms of positioning and orders would need to change entirely and not incrementally. So I’m thinking if you started with good positioning, and a good loadout, both of which I’m sure there are plenty of good examples out there, you could use the GA to evolve a near optimal set of orders for that placed fleet. I think orders would be the most friendly of the three to incremental adjustments. Over the next week I’ll try to start taking a crack at it, maybe put something up on github that can drop into the folder and iterate over parameter sets stored in a sqlight db, loading them into the directories as orders for a specific fleet each time, and that has a hook to run a program which should run the game and return some value from 0 to 1 or something that rates how well it did.
So say if I am spamming plasma. If I am fighting a rush I want to stop as soon as possible. But if facing MWM I am forced to move into range.
Or take Co-op vs rescuer. Co-op is generally preferred, but if the other side is using armor tanks, then rescuer is preferred.
Or take priority settings on fighters. If you are fighting those slow Tribe Dual weapon fighters, shooting them down in dogfight is plausible. But if you are fighting single rocket fighters or lure fighters, you better off shooting the cruisers instead.
Yeah, I mean, I was suggesting training them against a specific opponent deployment, which granted, wouldn’t make the ultimate deployment against all other deployments, but it could show you something interesting about how to deal with that type of deployment, and if you changed the fitness function to test each parameter set against 3 very different enemy deployments then you could get a rating closer describing it’s “overall” effectiveness… But of course it would take 3 times as long to rate them. I think an interesting use case would be to load up a couple weapons/hulls that you’re curious about how to use against large ships, or maybe make a fleet of a ton of really light fighters with an assortment of loadouts and see what kind of orders it comes up with for them for various situations.
Believe it or not, countering any one (or 3) fleets in this game is extremely easy. This has little to do with how “good” a fleet is, but because the challenger has the advantage of perfect information and the ability to change. This however makes posting even a mediocre challenge nearly impossible. Just because you know it will lose to X, Y and Z doesn’t mean you can do anything about it without making it lose to A, B, and C.
What will be interesting though is to see how “little” of the hard counter element is needed to beat a specific fleet. Rather than trying to push a win from 85% to 86%.