Unreal EngineФорумBlueprints

Кто шарит в системе сохранения игры в UE4

#0
23:17, 7 янв 2024

Здорова мне нужно узнать как сделать систему сохранения UE4 а именно как сохранять предметы которые я подобрал.

Ссылка на код сохранения - https://blueprintue.com/blueprint/ed0a3a2r/
Ссылка на код фонарика (то что я хочу сохранить) - https://blueprintue.com/blueprint/2gcubi_v/
Картинка BP_SaveGame - BP_SaveGame | Кто шарит в системе сохранения игры в UE4
Картинка Дополнения к фонарику когда я его подобрал (если нужно) - Посмотри | Кто шарит в системе сохранения игры в UE4

Могу дать бесплатно игру и тебе и твоим друзьям если ты поможешь мне :з Если что это хоррор игра, Которая уже готовая на 88% не хватает только этой механики. Я реально дам вам игру бесплатно и тебе и твоим друзьям если ты поможешь мне, так как мне потом нужны будут люди которые будут тестировать игру. Удачи
Моя почта -

#1
0:06, 8 янв 2024

В анрил слот сохраняется UObject унаследованный от соответствующего объекта(я конкретного названия не помню, смотри доки или туторы)
1. В этом объекты ты можешь создать поля обычные UPROPERTY и они сохранятся.
2. Ты можешь в нём создать массив TArray<uint8>, создать врапперы на этот массив(наследники от FArchive) и у нужных тебе обхектов(например у акторов) вызвать функцию Serialize. Тогда указанный актор сохранит себя автоматически в этот массив в бинарном виде. Сохранит все UPROPERTY(SaveGame) поля.

Таким образом сохранение сводится к двум шагам:
1. Сохранение отдельныхъ данных в виде полей сейв объекта.
2. Сохранение всего остального в бинарном виде.

#2
2:53, 8 янв 2024

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

1. Если все предметы уникальны и имеются в единичном экземпляре, то достаточно в BP_SaveGame добавить переменные типа boolean: PickedFlashlight, PickedRoomKey и т. д.

Это самый простой, но далеко не самый лучший, я бы даже сказал плохой пример, но для иллюстрации решения - сойдет.

2. Если предметы могут содержать некое количество, или типов предметов очень много, то тут уже нужно разрабатывать систему, которую не описать в пару предложений.

#3
10:13, 8 янв 2024

Как написали выше есть куча вариантов, один из возможных сохранить массив с id и кол-вом, а параметры брать из таблицы по id.

Unreal EngineФорумBlueprints

Тема в архиве.