Wow. I glanced at this thread a day or two ago and I thought it would take you all a lot longer to get a almost fully functioning wild double battle going.
Now, I have no knowledge about anything you guys have done and I wouldn't know where to start implementing but in regards to running could you not run a check at the beginning of the escape routine to check if it is a double battle and if it is use a modified version of the runaway script.
The formula for the normal Run routine is ((Speed of your pokemon) x 32 / (speed opponent) divided by 4, mod 256) plus 30 times (amount of escape attempts).
Edit: I forgot to add this would require the run command to be executed before any attacks happen and would require the battle to finish if successful ... but I imagine you all knew that already.
In regards to a capture could you not force the routine to treat the captured pokemon as knocked out and then proceed with the battle as normal. Would this not enable the other pokemon to be captured? or does the game only allow for 1 capture per battle.
As I said, I have no knowledge of this sort of thing so please don't kill me, I'm just trying to help.
However for a wild double battle could it not be ((Speed of both player pokemon divide by 2) x32 / (speed of opponents) divide by 8, mod 256) plus 30 times (amount of escape attempts)
Thus effectively averaging out the wild pokemon to trainers pokemon ratio. If you need me to clarify the formula, just ask.