99

Глюк с количеством существ в Heroes of Might & Magic III

Вчера в посте #comment_147746154 зашел разговор про глюк с максимальным числом существ в одном стеке(отряде). Что из-за особенностей хранения данных(на количество существ выделяется 2 байта), число существ в отряде может быть от 0 до 65535(чисто положительные значения чисел), а при превышении что-то происходит:

Получилось что собрать в одну кучу можно и больше 65535 существ, но при перемещение этого стека в любую другую ячейку все лишние существа дезертируют))

То есть из толпы в 69993 копейщика осталось только 4457 человека.

Так же вчера в камментах писали и про возможность отрицательных значений этих двух байт.

То есть в таком случае максимальное положительное значение существ в отряде может быть равно 32767 единиц. И действительно:

32766, 32767 существ спокойно существуют(тавтология). Но когда их становится 32768 отряд пропадает. И так продолжается до числа 65536.

Кароч чтобы не сильно компостировать мозг объясняю кратко:

Количество существ максимальное 32667, потом игра воспринимает их как отрицательное значение и запиливает их вплоть до значения 65536, после чего идёт отсчёт с единицы.

То есть количество существ 65544 на самом деле будет всего 8 голодранцев.

Так что если решили принимать участие в чемпионате Пикабу по Героям учитывайте этот момент. Не получится у вас сделать 49,5к юнитов в одном стеке))

пс

Я хз зачем Пикабу при заливе видео, так сильно режет его качество. Поэтому вся суть видео описана в тексте.

Найдены возможные дубликаты

+23

Ограничение-то хрен бы с ним, но вот использовать ущербный HD-эдишн от Юбисофт когда есть HotA и HD-мод — это реальный изврат :)

раскрыть ветку 3
+7

Да,  он очень мерзопакостный, но суть была про:

Да мне вообще было интересно обоснование комикса(ссылка на который в посте).

С какого хера Гнолл полез на скелета, если скелетов так много?

Я просто помнил , что в старых героях вроде был косяк с отображением количества с-в в стеке....вот и поэтому я решил проверить что там и как.

Возможно в последних версиях этот баг пофиксили. Но тащемто мой пост предлагает это проверить тем кто собирается играть.

Так как я проверял старый косяк, я делал это на "полуванильной" мерзопакостной HD.

Ибо в Хоте много багов было исправлено. А мне нужно было именно отражение этих старых проблем.

раскрыть ветку 1
+2

Тогда мотивация понятна, обвинения в изврате частично снимаются :) Частично, потому что для чистоты следственного эксперимента тогда уж лучше было качнуть где-нибудь оригинальный Restoration of Erathia 1999 года.

+3

Кстати, в них могли этот косяк и пофиксить, надо почитать в документации.

+4

Не получится у вас сделать 49,5к юнитов в одном стеке))
Как работает Парагон, в котором есть стек на 200к архимагов?

раскрыть ветку 1
+1

Да мне вообще было интересно обоснование комикса(ссылка на который в посте).

С какого хера Гнолл полез на скелета, если скелетов так много?

Я просто помнил , что в старых героях вроде был косяк с отображением количества с-в в стеке....вот и поэтому я решил проверить что там и как.

Возможно в последних версиях этот баг пофиксили. Но тащемто мой пост предлагает это проверить тем кто собирается играть.

+2

Ну там вообще то 4 х байтовые и ничего не пропадает 999999999шт можно

+3

>>>Количество существ максимальное 32667, потом игра воспринимает их как отрицательное значение и запиливает их вплоть до значения 65536

Что это значит???

Очень плохо изложены мысли.

раскрыть ветку 3
+2

потом игра воспринимает их как отрицательное значение и запиливает их вплоть до значения 65536

"их количество как отрицательное", слово "количество" потерялось.

Суть такова:

У тебя есть 10 клеток.  Они могут быть пронумерованы от от 0 до 9 или например от -5 до +4 (например тебе надо в клетки с отрицательным значением сажать отрицательные значения и vice versa)/

в данной игре фишка в том, что как ты не обозначай клетки:

(+) 0 1 2 3 4 5 6 7 8 9

(-)  5  4  3  2 1  0 (+) 1 2 3 4

Игра воспринимает все значения клетки со знаком (-) как отсутствующие.

Так же и клетки с номерами больше 4.

Поэтому доступны только 0 1 2  3 4 (в нашей теме об игре от 0 до32767)

Всё нормально до 32667, потом пробел до 65536, а потом всё сначала.

раскрыть ветку 2
+1

То есть в пробеле от 32667 до 65536 ничего не будет в клетке, а потом будет отсчет с одного юнита?

раскрыть ветку 1
+1

Мне бы ваши проблемы, чуваки...

+1
Я в телевизоре. )
+1
ArtMoney в помощь)) там целое поле для исследований
0
Когда играю в hota на очень больших картах и имею в собственности пару-тройку оплотов, часто сталкивался с багом, что количество золота "бах!" и становится неприлично отрицательным. Из-за фичи оплота добавлять 10% к кол-ву золота каждый понедельник, золота фармится до неприличных количеств. Тоже связано с ограничением по байтам?
раскрыть ветку 6
0
0

30 или 60 тысяч в золоте в отличие от единиц войск не такая заоблачная сумма, так что туда должно влезать достаточно. после двух байт обычно используют 4 байта, а это уже 2 миллиарда, сомневаюсь что ты столько накопил с оплотами. так что скорее всего это какой-то другой баг, а не простое переполнение

раскрыть ветку 4
+1

С пятью замками оплота такую сумму можно набрать менее чем за пол года.

раскрыть ветку 3
0

то есть количество скелетов которых я хотел набрать 9999999999 и пойти расхуярить всех не проканало бы. НетЪ? и все мое детсво прошло зря ? Хных.jpg В WOG эти глюки были пофиксены жеж на сколько я помню?

-1

Это называется stack overflow. Существуют файлы для починки подобного косяка, но только на клиент на базе Era II. Обычное HD или хота не поймут эти файлы.

раскрыть ветку 1
+1
Речь идёт о целочисленном переполнении, а не переполнении стека
Похожие посты
Похожие посты не найдены. Возможно, вас заинтересуют другие посты по тегам: