Проблема: часть хэш-ключей в game cache не записывается на диск.
Т.е. во время игры все данные в кэше работают нормально.
Но когда я вызываю SaveGameCache чтобы все сохранить, то часть данных записывается нормально, а часть пропадает и в следующей игре этой части нету - GetStoredInteger возвращает 0 для части значений.
Т.е. во время игры все данные в кэше работают нормально.
Но когда я вызываю SaveGameCache чтобы все сохранить, то часть данных записывается нормально, а часть пропадает и в следующей игре этой части нету - GetStoredInteger возвращает 0 для части значений.
Есть какой-то алгоритм для выбора этих ключей?
Принятый ответ
Я бы при старте вычищал кешь перед загрузкой, то он имеет багу - создаваться не пустым.
Так же процесс сохранение ресуросемкий, не стоит делать в циклах и так далее.
Так же процесс сохранение ресуросемкий, не стоит делать в циклах и так далее.
string talentkey = ConvertTalentNumberToKey(n) //
string creakey = ConvertCreatureToKey(i) //
Вот это всеще не советую юзать, у меня ломалось взятие имени абилки, поэтому прямо вбивайте в код ключи, никогда не пытайтесь читать строковые ключи откуда-либо, начинаются непонятные баги (вероятно упущение со строками, в JASM машине).
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Отредактирован Vlod
Отредактирован biridius
задержка перед загрузкой с диска для проверки у меня была 3 секунды.
Одни ключи сохраняются, а другие нет.
Как пример, пара "гуль" + "талант1" работает, а "скелет лучник" + "2" не работает.
либо "настройки" + "язык" не работает, а "настройки" + "смещение текста" работает, хотя ключ длиннее.
Отредактирован Koladik
версия 1.26.
В свое время мне говорили, что кэш бывает не записывает данные в цикле, данные теряются.
Так же, если карт несколько, нужно сохранять из карты в карту все имеющиеся данные. Например, если вы сохранили "А" в карте "1", не загружаете его в карте "2", но загружаете в карте "3", то данные тоже могут потеряться.
У меня в моем проекте 5 полноценных карт и система сохранения/загрузки через кэш работает идеально. Логические вот точно знаю, что иногда пропадают, поэтому перешел полностью на целочисленные.
Отредактирован biridius
перед перезагрузкой с диска всегда показывает 1
Так же процесс сохранение ресуросемкий, не стоит делать в циклах и так далее.