I forget who originally posted this system, but this is a variation giving an average 28 pt buy scheme, but still allowing for variation.
1. Choose your primary 3 stats, put a +1 by each.
2. Roll 3d6 in order for the 6 stats.
3. Swap 1 pair of stats. (IE Str's roll for Wis's)
4. Add the +1's in your 3 primary stats.
5. Tabulate what your point buy amount would have been via these semifinal scores.
6. Determine how many points above or below a 28 pt buy this amount is.
7. Regardless of your final score, spend 4 more point buy points or, if you were below 28 by more than 4, use the difference (the greater number) to get up to a base 28 point buy.
8. Add any racial, etc. bonuses for your final scores.
Oh yeah, if any roll is less than 8 (0 via the point buy method), they still cost 1 point per point raised; meaning you can't raise your very low scores to 8 without spending any points.
I've found that this system very rarely gives more than a 28-32 point buy spread, with a good many scores ending as 28 point buys. The straight 3d6 insures that some scores are higher or lower than a standard race-class combo minmaxed point buy system would follow. However, with the +1's, score swap, and final point buy a player can raise the score's they feel as important. The whole party's final scores are relatively the same, the character's have a "naturalness" to them, like the old-school days, and a player who rolls well, gets to keep those rolls.
You may wish to lower scores if a player rolls exceptionally high. However, this almost never happens with an honest rolling of the straight 3d6.