Кожне завдання (рівень) у грі має набір параметрів, що визначають логіку його проходження, автопереходи, видачу підказок та нарахування бонусів.
Для проходження рівня гравці повинні ввести один або кілька кодів.
Ви можете налаштувати будь-яку кількість підказок для кожного завдання.
Іноді підказку хочеться видати одразу, але не показувати її вміст, поки гравець сам не попросить. Для цього текст підказки загортається в розкривний блок просто в режимі «Джерело»:
<details><summary>Натисніть, щоб побачити підказку</summary> <p>Текст підказки</p> </details>
Той самий ефект кнопкою, яка зникає після натискання:
<button class="btn btn-default" onclick="this.style.display='none'; this.parentNode.nextElementSibling.style.display='block';">Показати підказку</button> <div style="display:none"><p>Текст підказки</p></div>
Врахуйте, що схований так текст усе одно лежить у вихідному коді сторінки — це зручність, а не захист. Якщо вміст не має бути доступним до строку, використовуйте звичайний таймер підказки або шаблони.
Для захисту від простого перебору (брутфорсу) відповідей ви можете задати ліміт спроб.
Блок із таймером блокування можна переоформити або доповнити своїм елементом — див. Елементи сторінки рівня.
У полі «Автоперехід» задається час, після закінчення якого рівень закриється сам, навіть якщо команда його не пройшла. Зазвичай там стоїть тривалість у секундах — вона відлічується від моменту, коли команда зайшла на рівень, тому в кожної команди автоперехід настає у свій час.
Іноді потрібно, щоб рівень закрився в усіх одночасно в конкретний момент — наприклад, на багатоденній грі, де завдання нового дня починається о призначеній годині. Для цього в те саме поле вписується unix-час потрібного моменту (велике число замість тривалості). Такий автоперехід не залежить від того, коли команда потрапила на рівень.
Відрізнити його легко за поведінкою в тестуванні: при рестарті рівня час до автопереходу не скидається, а тестове перемотування часу рівня його не наближає.
Зазвичай рівень закривається, щойно вбито всі коди, — і недобрані бонуси при цьому зникають. Опція «Закрити завдання: Розумно» змінює цю поведінку: якщо коди вбито, але на рівні залишилися незакриті бонуси, завдання не закривається саме. Замість цього з'являється кнопка «Завершити завдання».
Поки команда її не натиснула, гравці можуть спокійно добивати бонуси. Зручно на рівнях, де бонуси дорожчі за час і прикро втрачати їх через те, що хтось вбив останній код раніше часу.
В умовах поганого мобільного інтернету на локації увімкнення офлайн-перевірки дозволяє гравцям бачити статус введення без очікування відповіді від сервера.
Увага (Безпека): Оскільки хеші кодів при офлайн-перевірці зберігаються на клієнті, теоретично гравці можуть запустити локальний перебір (брутфорс), щоб підібрати код. Особливо якщо коди короткі або відома їх маска (наприклад, слово + цифра).
Щоб захиститися від підбору, додайте штрафний бонус із помилковими кодами (кодами-пастками).
батон432.батон178 (і штрафом за його введення).%hide%. Команда не знатиме про існування пастки, але автоматичний брутфорс натрапить на неї і команда отримає штраф.Офлайн-перевірка за замовчуванням вимкнена. Рекомендується вмикати її лише на тих рівнях, де заздалегідь очікуються проблеми зі зв'язком.