I like the ideas of timing needed to hit for melee, but think any factor should be just that - one factor of several and not decide the result on its own. One thing that I haven't seen mentioned that would probably make a lot of sense tho is actually focusing on your target. I don't mean just selecting him, but having him dead in your sights (your crosshair turns red). Shouldn't someone who has locked onto their target longer than the other way around have an advantage? It's like the equivalent of focusing on your attack mentally. It should be relatively easy to code as well. Just have a counter in the code that starts to increment when you have someone in your crosshairs during a swoop (the counter would automatically reset if you get someone ELSE in your crosshairs). If target leaves your crosshairs for say more than 1 second or .5 seconds or whatever, then the counter resets. If your counter variable for your target is higher than your target's counter for you is (you've had him in your sights longer than he's had you) you will have an advantage factoring into some formula that decides who wins that headon. There should be a maximum value to this counter, and this max should maybe be a little higher for transformed characters (adding a little incentive to take the time to transform).
I also don't think this, or any other factor should be a hands down win to a head-on collision. I think just using ping, or just PL or just any one factor to decide an instant win is always going to be abusable. A few factors at least should decide the result if we're going for an instant balanced decision. One formula might a combination of what I mentioned above with the counter variable difference adding say up to 50% advantage, factor in each players current percentage of PL (not actual PL amount which would make it unfair to those with lower starting amounts) with perhaps a 10% bonus to this % if the char is transformed all adding to up to a 20% advantage from a higher PL percentage, factor in up to say a 20% advantage from who had better timing on the right click (it's too easy just being able to hold right click the whole time while swooping). There's up to 10% left which could maybe be factored by whoever was swooping longer or maybe (I have no idea if the collision detection is advanced enough for this) up to 10% bonus to whomever was closest to having their sights dead center on their opponents core at time of contact. All of this stuff could be combined to create a certain amount of damage/pushback done depending on how much advantage the winner of the collision had. Below could be an example...
Player 1 = Goku, Player 2 = Vegeta
Goku swoops at Vegeta first, but sloppily and doesn't really zero in well until last second. Vegeta teleports a bit, gets Goku in his sights and swoops later but keeping Goku dead on in his sights.
At the time they meet Goku had Vegeta in his sights for 0.8 seconds, Vegeta had Goku for 1.4. A 50% advantage would go to someone who's opponent didnt' even really get a good look at him, so for this about half the length Vegeta gets a 25% factor out of 50%.
At the time they hit Goku has about 50% of his max PL and Vegeta has about 80% BUT is transformed so it counts like a 90%. Pretty good difference, give Vegeta about 15% out of 20% factor for this one.
Goku has almost perfectly timed his right click, while Vegeta was a bit early. For numbers sake say Goku was .05 secs late of a perfect timing while Vegeta was .2 secs early. A perfect timing probably should have been right when the two models would first touch. Give Goku about 15% out of 20% for timing.
At time of contact, Vegeta had his sights aimed right at the center of Goku's body. Goku was kind of off, having his crosshairs more at Vegeta's legs. Vegeta gets the full bonus here of 10% for hitting Goku dead center while Goku was off (if they were both dead center or both way off there would be zero factor here).
Final result:
Goku's factors = +15% timing
Vegeta's factors = +25% better targetting, +15% higher % of max PL, +10% for better aim on hit
Goku's total = 15% vs. Vegeta's total = 50% DIFFERENCE = +35% for Vegeta
RESULT = Vegeta does 35% of some set maximum head on damage total (say the max is 40%) and some maximum amount of knockback.
Vegeta does 35% *40% = 14% damage to Goku and Goku is knocked back 35% of whatever a reasonable max amount of knockback is. No idea how far that should be, only been playing the mod for 2 days
There are other good factors that could be thrown in or used instead of some of the ones above, or much better numbers but you get the idea. The main points i wanted to make were that I really thing how long you had your enemy in your red crosshair sights should be a strong factor, and there should be several factors that play into the result of a head-on, not just one variable. You could even have some token automatic trade a few punches animations done before the result, just for asthetics while doing the math
I've never played 1.0 so sorry I can't make any comparisons there. And if there are restrictions about the mod that I don't know about that makes these ideas stupid sorry in advance. I'm real new to the mod hehe. But I think most of the above mentioned stuff and other timing factors could be fairly easy to implement in the code. Gotta say tho incredible job with the mod. I had no idea it would be this fun. Great music selection too.