Вылетает варкрафт (1.26) при загрузке сохраненной игры из за HashTable:
Not enough memory resources are avalible to process this command
Object: GamehashTableIntegerReg
(.?AUGameHashTableIntegerReg@@)


Да, у меня тяжелая генерация, но хеш она не юзает.
А памяти для загрузки hashtable почему то не хватает.

Зато реплеи работают.

Кажется разобрался:
Как ни странно хеш оказался ни при чем.
Проблема была в слишком длинной строке на ~900 русских символов которую я использовал для описания квеста.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
16
ничего интересного, аргумент передается супер-большой, который должен быть индексом (?) массива
26
ScorpioT1000:
В vJass есть большие массивы, главное, поток не порвать, но всегда можно перейти на lua)
Уже пофиксил тем там всего 1500-3000 вызовов TerrainDeformCrater было, так что массива вполне хватило.

А вот SetTerrainType у меня было 32 к вызовов. Так как я их на этапе генерации использую их как разметку, для быстрой проверки местности. Тут пришлось слегка пожертвовать визуалом при загрузке сохранения (ужал до 7 к) . После загрузки сохранения она немного отличается, но это незаметно.
24
Если карта рандомно генерится - почему не запоминать зерно рандома и не рескручивать рандом из него заново для генерации карты после загрузки? Тогда останется запоминать только изменения которые произошли после генерации, в результате действий игрока.
26
prog:
Да я это планирую сделать в дальнейшем, но пока просто исправлял баг обычных сохранений.
38
Можешь заполнять сначала по чанкам, потом уже детальнее)
26
Щас еще обнаружил, что инвентарь куда то пропал. Даже если после загрузки герою дать способность 'AInv' то инвентарь всеравно не появляется.

Починил, оказалось инвентарь пропадал из-за того что герой имел обе способности:
'Aien' (Носильщик) и 'Aher' (Предметы - Герой).

Карта пример

Столько проблем уже с загрузкой нашел, что хоть статью пиши.
Загруженные файлы
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.