Збереження
Атрамент підтримує автоматичне збереження гри, контрольні точки та користувацькі збереження.
Автозбереження
Атрамент автоматично зберігає гру після кожного вибору. Якщо для гри існує автозбереження, після перезапуску застосунку гравець зможе продовжити гру, обравши пункт стартового меню "Продовжити".
Щоб вимкнути автозбереження, додайте глобальний тег #autosave в головний Ink файл і встановіть його значення false:
# autosave: false
Контрольні точки
Щоб зберегти гру в контрольній точці, використовуйте тег параграфу #CHECKPOINT:
=== story1
# CHECKPOINT
Історія продовжується.
Пізніше в грі ви можете відтворити гру з контрольної точки - тобто завантажити збережений стан гри:
На жаль, ви програли цей бій.
+ [Спробувати знову]
# RESTART_FROM_CHECKPOINT
->DONE // це необхідно, щоб в сценарії не було незавершених гілок
Ви можете мати декілька контрольних точок і розрізняти їх за іменами:
=== story2
# CHECKPOINT: level1
Ви входите на перший рівень підземелля.
І потім перезапускати гру з вказаної контрольної точки:
На жаль, ви програли цей бій.
+ [Спробувати знову]
// Якщо ім'я контрольної точки не вказане,
// RESTART_FROM_CHECKPOINT завантажує гру
// з найновішої контрольної точки
# RESTART_FROM_CHECKPOINT
+ [Почати з 1 рівня]
# RESTART_FROM_CHECKPOINT: level1
-
->DONE
Якщо ви хочете, щоб контрольні точки були присутні серед збережень в пункті "Завантажити гру", додайте глобальний тег #load_from_checkpoints в ваш сценарій і встановіть його значення true:
# load_from_checkpoints: true
Збереження
Щоб увімкнути користувацькі збереження, додайте глобальний тег #saves в головний Ink файл і вкажіть його значенням кількість слотів для збереження:
# saves: 5
Коли користувацькі збереження увімкнені, гравці можуть в будь-який момент зберігати і завантажувати гру в доступні слоти для збережень.
Сесії
Атрамент підтримує декілька користувацьких сесій, або профілів, в грі. Щоб увімкнути це, додайте глобальний тег #sessions в ваш Ink сценарій та вкажіть його значенням кількість можливих сесій:
# sessions: 3
Коли сесії увімкнені, перед початком гри гравець має обрати ігрову сесію. Кожна сесія має власні автозбереження, контрольні точки та користувацькі збереження.
Гравці можуть видаляти сесії. Коли сесія видаляється, всі пов'язані з нею збереження також видаляються.
Збережені змінні
Ви можете зберігати окремі змінні Ink між перезапусками гри - наприклад, щоб рахувати, скільки разів гравець починав грати, або щоб зберігати досягнення гравця чи рекордний рахунок.
Додайте глобальний тег #persist для кожної змінної, яку хочете зберігати:
# persist: restarts
# persist: highscore
VAR restarts = 0
VAR highscore = 0
VAR score = 0
~ restarts += 1
Ви грали в цю гру {restarts} разів.
Рекордний рахунок - {highscore} балів.
-> main
=== main
Ваш рахунок: {score} балів.
+ [Отримати бали]
~ score += 1
{
- score > highscore:
Ви побили рекорд!
~ highscore = score
}
-> main
Початкове значення змінної, що зберігається, буде замінене на збережене значення, якщо воно існує. Коли така змінна отримує нове значення, воно буде збережене автоматично.