Понедельник, 25 Ноября 2024, 13:03

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
сохранение GMS 1.4
madeinvradiivkaДата: Понедельник, 27 Декабря 2021, 22:49 | Сообщение # 1
уже был
Сейчас нет на сайте
Здравствуйте!
Прошу помочь!

У меня появилась проблема со стандартным сохранением игры в файл save.sav. Файл сохранения вообще не создаётся в директории.
в моем случае нужно именно сохранение функцией save_game().
код (в событии шага):
if keyboard_check_pressed(ord("S"))
{
global.Saved = true;
game_save("save.sav");
}
else if keyboard_check_pressed(ord("L"))
{
if(global.Saved = true)
{
game_load("save.sav");
}
}


Загрузка тоже не происходит соответственно.

Компилятор в "дебаг" режиме пишет следующее:
_WriteFile: No such file or directory
WARNING: Game load failed,  not found

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

В чем может быть причина сбоя работы сохранения?


no sign
GrannerДата: Понедельник, 27 Декабря 2021, 23:30 | Сообщение # 2
почетный гость
Сейчас нет на сайте
Разве сохранение не создается в папке "песочница" типа c:\Users\AppData\Roaming или Local\игра\? Это в ГМ 8 стандартное сохранение было в папке с игрой на каком-нибудь диске Д

Лучше - быть, чем - казаться.
P.S. Прежде чем задавать вопрос - всегда просматриваю форум и справку


Сообщение отредактировал Granner - Понедельник, 27 Декабря 2021, 23:30
madeinvradiivkaДата: Понедельник, 27 Декабря 2021, 23:43 | Сообщение # 3
уже был
Сейчас нет на сайте
Granner, какая разница впрочем, где он должен создаваться? Он вообще не создается при вызове функции save_game()...
Один вопрос. Стандартное сохранение вообще работает в GMS или нужно писать свою систему на ini (чего мне очень не хочется)?


no sign
GrannerДата: Вторник, 28 Декабря 2021, 00:16 | Сообщение # 4
почетный гость
Сейчас нет на сайте
Разница большая. Я поэтому и намекнул, что в отличии от ГМ 8 стандартное сохранение и загрузка идет в другое место, т.н. песочницу и путь стандартной загрузки надо прописывать вручную. И вообще-то все создается (только что проверил), именно этой командой, именно в GM 1.4 и именно в папке c:\Users\AppData\Local\игра или в другом (смотри настройки файла global game setting, вкладка Windows, раздел Save Data Location), а не там где у тебя проект с игрой.
Как вариант - кириллица в пути к директории игры.


Лучше - быть, чем - казаться.
P.S. Прежде чем задавать вопрос - всегда просматриваю форум и справку


Сообщение отредактировал Granner - Вторник, 28 Декабря 2021, 00:24
JesusOnExtasy88Дата: Суббота, 01 Января 2022, 09:22 | Сообщение # 5
частый гость
Сейчас нет на сайте
Проще сделать так через Скрипты.

Сохранения
function scr_SaveData () {
var map = ds_map_create();
map[? "Nick"] = global.Name;
map[? "Sound"] = global.Sound;
map[? "Music"] = global.Music;
ds_map_secure_save(map, "SaveData")
// destroy ds_map
ds_map_destroy(map);
};

Загрузка
function scr_LoadData () {
//Load Data
if file_exists("SaveData") {
var map = ds_map_secure_load("SaveData")
global.Name = map[? "Nick"];
global.Sound = map[? "Sound"];
global.Music = map[? "Music"];
//Destroy Map
ds_map_destroy(map);
};
CoreДата: Суббота, 01 Января 2022, 15:40 | Сообщение # 6
заслуженный участник
Сейчас нет на сайте
JesusOnExtasy88, Нет, это наоборот самый стремный вариант. через ini будет проще и понятнее

MagicHeroДата: Воскресенье, 02 Января 2022, 12:06 | Сообщение # 7
участник
Сейчас нет на сайте
madeinvradiivka, Забей на это сохранение, оно может вообще часть игры не сохранять. Когда делал первую простую игру то там использовал его но во второй оно уже не работало нормально и ничего толком не сохраняло. Проще всего сделать сохранение через ini. Там все хорошо будет видно, что сохраняешь а при добавлении чего то нового игрок загружая старое сохранение будет получать значения по дефолту записанные в коде загрузки сохранения.
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг