Они на калькуляторах считают? Десятизначное число- это сверхбольшие числа? Любой современный процессор поддерживает 64-битные числа с плавающей запятой, порядок которых позволяет записать количество атомов во вселенной( и это только аппаратная поддержка, программно можно и покруче организовать). Средний десктопный процессор, к примеру Intel Core 2 Quad Q8300 выполняет 40ГФлопс в секунду, то есть 40 миллиардов операций в секунду с плавающей точкой. Я понимаю, что серверы заняты не только этим, я понимаю, что есть аппаратная,базова, операционная, программная прослойки, я не знаю сколько скрытых вычислений она совершает, но да же если взять 0,01% от 40Гфлопс, то 40 миллионов операций в секунду должно хватить на многое, ох как на многое. А в моем понимании, у них стоит оборудование другого уровня. Что-то я их не понял.
INT_MAX Это примерно 4 миллиарда для 32 битной системы. ХП боссов нового аддона будет близко к этой отметке, а показатели угрозы уже близки.
Клиент WoW это 32 битная программа. Это значит что вычисления с большими числами будут эмулироваться и ВоВ будет тормозить еще больше. Естественно никто не будет переводить клиент на 64битную платформу, потому что это годы работы и огромные требования к ПК и его ПО.
Про числа с плавающей точкой вообще бред. Такие операции выполняются на FPU.
Мощности современных процессоров еще слишком малы.
Даже для рендера методом обратной трассировки лучей требуется в десятки раз более мощные процессоры, чем есть сейчас.
В принципе, когда Вы предположили, что расчеты происходят в клиенте, а не в серверной части, на этом можно и закончить.
А FPU - это сферический юнит в вакууме? Странно, мне всегда казалось что этот один из модулей современных процессоров.
Вот этот ужасный, безобразный код, я скомпилировал в Delphi7.
var
i,x:real;
begin
i:=0;
x:=0;
while i< 123456789012345 do
begin
i:=i+RandomRange(100000,2000000);
Randomize;
x:=x+1;
x у меня в среднем равен 117 млн, время выполнения=3 сек. Теперь, скажите, что же это за странный тип данных-real(float). Кто это все считает? Как Вы думаете, оптимизирован ли компилятор для этих задач, код? Поддерживает ли он многоядерность, 64-битность? Все это, лишь для того, чтобы мы не вдавались в дурацкие технические подробности.
Я скажу только два слова.
LUA. Recount.
а я вам скажу другое слово, сокращения, в пределах аддона, можно скажем 768987265, сократить до 768987, расчитать с этими значениями, а в интерфейсе аддона добавить 3 случайных числа в конец, а погрешность в 0,001% при расчетах просто смешна.
заметил тут много умников рассуждающих о сложности вычисления, так вот специально для вас процессору требуется абсолютно идентичное время для сложения (10 и 2) и (7894654 и 4231575)
технические сложности возникнут при выходе 1 переменной за предел 4 млн...
вообще идейка у меня возникла в виде штрафа за уровень
ввести штраф на лоулвл гир
скажем 85лвл соответвует 360гир
а 90му 460
шп тировые честы 359/372/378/391 имеют 301/345/368/420 инты
на 90 лвл со штрафом на 1% от разницы илвл они будут иметь 0/41/66/130 инты, что делает их возможными для прокачки но бесполезными для рейдов
а на 90 лвл мы вводим рейдовые илвл 459/472/478/491 с теми же 301/345/368/420 инты
суть идее в остановке прироста статов, мы будем наносить тот же дамаг, иметь те же ХП
что автоматически сделает интересным и сложным старый контент (4.х.х и далее)