Please or Регистрация to create posts and topics.

Принцип работы сохранений

В 6.1. Причём сохранения не работают, как в моей игре на других ОС, так и я более не могу сохраняться/загружаться в других играх AXMA на своей ОС. Вот, как пример, открыл игру "Отряд" (совсем простенькую), а там при попытке сохранения выдаёт вот что: 

 

 

 

В 6.1 ничего не менялось. Проверьте возможность сохранений на другом компьютере.

А можно в JS версии отключить возможность сохраняться?

Да: asm.save = false;

Пару дней тестировал сохранения в 6.1.

1. На всех платформах (разных компьютерах и ОС разных людей) в исходном sm моей игры отсутствовала загрузка сохранений (кроме самого первого захода в первую сцену).

2. при попытке создать в 6.1. игру с нуля, всего лишь простейшую последовательность параграфов для загрузки, сохранения также не работали. Вот простейший пример, готовый html-файл (https://dropmefiles.com/F1uLi), где сохранения, увы, не работают. То же самое в формате sm (прикреплён). Аналогично sm не работал и на других машинах в 6.1.

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

Загруженные файлы:
  • Вам нужно войти, чтобы просматривать прикрепленные файлы..

И правда, не работают сохранения в 6.1. Ни на одном устройстве.

Благодаря помощи Morych-а было выяснено, что сохранения в 6.1. пропадают из-за невозвратных ссылок. Попробовал без них, действительно, всё работает. Но ведь невозвратки крайне необходимый элемент для игры.

Процитирую ответ Morych-а:

я кажется понял - все дело в невозвратных ссылках, они блокируют сохранение. точнее все объекты сохраняются, но из-за невозвратных ссылок не правильно сохраняется объект отвечающий за текущий параграф - и получается когда ты загружаешь сохранение - асм не может перейти к нужному параграфу

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

Я попробую исправить эту ошибку.

Да, очень нужна нормальная система сохранок. Большие игры без сохранений - вообще никуда не годится

Возможно, разумным выходом будет сохранять состояние не всей игры, а только одного определённого системного объектаSav. А там уже автор должен сам позаботиться о том, когда класть значения в этот объект и когда их доставать.

Вопрос в том, что делать с системными переменными, которые автор не может изменять произвольно? Думаю, лучший вариант - иметь внутри объектаSav забитые 'копии' этих системных переменных. И сделать функцию, заносящую значения всех системных переменных в объектSav и функцию, восстанавливающую значения всех системных переменных из объектаSav. И хорошо бы дать возможность автору самому заносить произвольные значения в 'копии' системных переменных объектаSav.