1 вариант
Целое число (uint32), занимает 4 байта или 32 бита. Это значит, что в двоичном представлении, мы можем закодировать аж 2^32 (в 32 степени) значений, включая ноль.
Но ноль нам не нужен. Поэтому 2^32 - 1 = 4 294 967 295. Ровно такое число мы можем впихнуть в 4 байта.
Что будет если мы впихнем 4 294 967 295 + 1 в 4 байта? Во первых нам нужен будет 33-ий бит, но раз его нету, то мы получим 0. Это и есть переполнение.
Ближе к делу!
Всем известен предел количества аденок, который можно накопить на чаре, после которого цифра становиться отрицательной. Посмотрим в чем тут дело.
Итак сновово наши 4 байта или 32 бита int32 значения. Как нам указывать отрицательное число? Для этого будет использовать 32 бит, указывая 0 значит положительное, 1 значит отрицательное число.
У нас остается 31 бит, а это значит мы можем закодировать аж 2^31 значений, включая ноль. Без нуля, мы сможем впихнуть туда 2^31 - 1 = 2 147 483 647.
Мы запомним два числа 4 294 967 295 и 2 147 483 647.
Чтобы заработать аденки, нам нужно что-то продать. При этом продать нечто, что мы купили за бесценок.
Берм в руки переполнение и идем к трейдеру, покупать резуректы. Свиток стоит 2 500 аден, а продать его мы можем по 1 000 аден.
Поделим 4 294 967 295 на 2500 и получим 1 717 986,9180. Округляем вниз и добавляем еденичку - 1 717 987.
Момент истины! Умножаем 1 717 987 на 2 500, отнимаем 4 294 967 295 и получаем 205! Да, да! 205 аден сдерут с вас за покупку 1 717 987 свитков.
Если продать эти свитки по 1000, то мы получим 1 717 987 000 аден (помним про 2 147 483 647).
2 вариант
2^32, это не что иное, как 2 в степени 32. С начальной теорией разобрались. Теперь перейдем к более глубокому изучению сути вопроса. Вообще когда речь идет о багах, то сразу же возникает 3 вопроса:
1. Насколько сложно это реализуемо
2. Что можно с этого поиметь
3. Как быстро это могут пофиксить
Когда мы говорим о баге 2^32, то на эти вопросы можно ответить так: 1) Проще простого; 2) Много денег 3) Этот баг нельзя пофиксить силами админов, хотя и не всегда!. Если ответы тебя удовлетворили, то поехали дальше. Число 2, возведенное в степень 32, дает нам число 4,294,967,296. Это то самое хитрое число, благодаря которому можно купить целую кучу итемов по нулевой цене. Самый простой пример: некий итем стоит 5к, а теперь если в окне покупки выбрать 8,589,934,592 этих итемов, то мы их купим по нулевой цене! Но это все конечно в идеале, т.к. на некоторых серверах ставят ограничение на количество покупаемых итемов, или что встречается реже, ставят на продажу итемы по нулевой цене сразу. Но как говорится, кто ищет, тот всегда найдет. Дерзайте.
как то так
данное работает там где нет ни каких ограничений и на хрониках там где аденка равна максимум 2 милиарда ну точнее предельное максимальное значение типа integer да и в целом если нет ограничения на ввод то просто пишем число больше чем придел если ввести больше нельзя то считаем
в новых хрониках не пашет так как тип сменен как все знают адены теперь 99 милиардов и в целом вроде опять предельное значение но не видел сборок с ограничение ну те где не дает ввести больше чем 99 и считать не получаеться число постоянно растет
ну а вот собственно новый предел
long 9, 223, 372, 036, 854, 775, 808