Перейти до основного вмісту
Версія: 2.4.0

Збереження

Атрамент підтримує автоматичне збереження гри, контрольні точки та користувацькі збереження.

Автозбереження​

Атрамент автоматично зберігає гру після кожного вибору. Якщо для гри існує автозбереження, після перезапуску застосунку гравець зможе продовжити гру, обравши пункт стартового меню "Продовжити".

Щоб вимкнути автозбереження, додайте глобальний тег #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 для кожної змінної, яку хочете зберігати:

story.ink
# 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

Початкове значення змінної, що зберігається, буде замінене на збережене значення, якщо воно існує. Коли така змінна отримує нове значення, воно буде збережене автоматично.