Идея хороша, но ... к примеру, я знаю, что у меня 65 птс, а у моего фармирка тоже 65 (это не сложно сделать, если в самом начале олимпа напрячься, сделать 2 вина и выйти в тот ПТС, когда дают/отнимают по 10 очей. Ну или найти такого фармирка, который иеет такое же кол-во очей, короче мы так делали на том МВ). Мы прыгаем в одну волну. И тут 50 на 50. Если мы попались, то он сливает (-10), а я (+10) жду пока он проведет сделает 2 вина. Если не попались, то он подгоняет свой ПТС под мой, и мы делаем новый трай.И вот мы опять "душа-в-душеньку", опять прыгаем. И так далее. Звучит геморно, но этот алгоритм просчитывается. И тут есть варианты залить кого угодно. А хотелось бы, чтобы люди не абузили алгоритм, а рассчитывали лишь на свой эквип и скилл.
К твоему подходу, я бы добавил маленький рандом в полученных/снятых ПТС, скажем не 10, а в диапазоне от 7 до 10. Тогда после пары итераций разбежка в первом разряде ПТС будет увеличиваться, и вероятность следовать друг за другом и попадаться "по заказу" снизится к минимуму.
Ну или сортировали бы по птс, делили бы на группы по N >= 10 элементов, перемешивали элементы внутри каждой группы, формировали пары. Вероятность попасть на "своего" = 1/(N -1).
В таком варианте, все дерутся примерно в своём диапазоне, и вероятность залиться все же есть, но минимальна и имеет большие риски. Даже если ты будешь регать целую толпу по счету, тебе необходимо, чтобы у них были близкие друг к другу ПТС. После пары итераций, пул "своих ребят" все меньше и меньше. И то, это не гарантирует, что кто-то не вклинится в ваш "стройный" ряд, т.к. позиция каждого не зависит от времени регистрации. Таким образом, ты сможешь заливать своих только если у тебя в клане (к примеру) 20 топ фармеров, которые имеют все что движется, и они всегда в верхней части таблицы.