Duck the Rules
EN Discord (в новой вкладке) Хочу демо
Бортовой журнал

Неделя 11 · с 24 по 30 октября 2026 · дни с 69 по 75

Та же школа, но другая

  1. сб 24
  2. вс 25
  3. пн 26
  4. вт 27
  5. ср 28
  6. чт 29
  7. пт 30
27 октября. Тот же класс 1А во второй реальности: стены теплее, ученики в чужих цветах
27 октября. Тот же класс 1А во второй реальности: стены теплее, ученики в чужих цветах

Запись: день 71

Суббота и воскресенье без коммитов в игре. В понедельник я написал бортинженеру: «мне кажется, я не сделал простые движения и механику без багов, а уже улетел куда-то в усложнение и поднял планку игры, и ожидания увеличатся». И попросил аудит ядра.

Бортинженер прогнал 57 проверок хода, рук, посадки и камеры. Зелёных 45, красных 12. Потом прошёл первую главу и снял семь кадров первого урока из живой школы.

Кадры нашли настоящую беду. Учительница объявляет фильм и спрашивает: «а шторы кто опустит?» Школьник идёт опускать, а на третьей шторе слышит «Сядь на место!». Хождение у неё на глазах и шум шнура копили её терпение, как у того, кто встал без дела. Теперь шестьдесят секунд после объявления фильма, пока класс не потемнел, терпение не копится. Звонок просьбу стирает.

Вечером я сказал «давай» по списку того, что видит игрок. Посреди работы добавил: «без оверинжиниринга. Стандартизировать. Универсализировать». Каждая правка стала одним общим правилом в коде, который уже есть.

Главное: ученики снова садятся за парты сами. С 18 октября путь отводили от стен, и конец пути тоже уезжал от парты на полметра. Ученик вставал там, видел, что до стула далеко, и шёл снова. Через 45 секунд страховка пересаживала его телепортом. После каждой перемены так садились 24 ученика из 73. Теперь у дела «дойти» есть флажок «точно», его ставит только посадка за парту. Все 73 садятся сами за время от 20 до 29 секунд.

Запись: день 72

Вторник, десять коммитов.

Утром колени. 17 октября сустав бедра переехал в пах, а клипы вставания и «цапли» были сделаны под старую ногу. Решатель ноги не находил места и гнул колено вперёд. Бортинженер поставил одно правило на все ноги всех клипов: колено гнётся только назад, упор 165 градусов. Сначала лист до и после, я ответил: «Принимаю, выгружай». Заодно доводка до стойки пошла по кратчайшей дуге. Раньше бедро встающего прокручивалось на угол от 70 до 104 градусов.

Потом я написал: «В Гусе же классно так всё без багов, плавно и прочее...» И попросил найти, где можно упростить. Нашлось: только мой школьник жил на AnimationTree, а 73 тела ходили своей смесью клипов с семью десятками ручных доводок поверх. Перевели всех. На глаз разница мала, так и задумано. Поза деревом стоит 39 микросекунд против 108. Я посмотрел ролик и сказал: «оставляем дерево у всех».

Следом дыхание и привычки. Раньше вдох и перенос веса добавлял код поверх клипа. Я посмотрел варианты роликом: «Берём покой Б и три привычки как есть». Покой, руки в боки, руки в карманах, руки за спиной теперь клипы из Blender. Из кода ушло около 250 строк.

Встать и сесть тоже стали переходами дерева. Новая проверка мерит каждый такт физики. На прежнем коде она нашла девять щелчков, худший 63 радиана в секунду. Теперь ноль.

Ещё переписали семь проверок двора: они краснели вещами сада, которого под крышей атриума больше нет. Одна требовала сушилку в узком санузле. Я ответил: «В узких санузлах у входа хватит полотенец».

Потом провалы второй главы. У вони, стульев и жвачки провала не было вовсе, школа молчала. В первом варианте прилипший снимал стул сразу. Я не понял: «Что значит прилипший к стулу снимает немедленно? У меня когда-то в ролике было, что это прикол, что он идёт с ним какое-то время». Выбрал так: «ученик ходит со стулом сколько сам ходит, учительница только грозит пальцем, снимать не велит».

В 13:50 в соседней сессии мы обсуждали, чем цеплять игрока. Бортинженер расписал шесть идей. Я ответил: «Нет, ты в детали закапываешься. А может, надо что-то глобальное, как будто с идеей параллельной реальности... Вроде бы всё та же, но что-то другое, дизайн школы, цвет или одежда учеников».

Условия набирались по ходу. Мебель не переставляем. «Я бы не делал зеркальными надписи. Не настолько». Реальностей становится больше с каждой шалостью. А когда перекидывает? «Не, перекидывает вообще в рандомный момент... Хватит что-то усложнять всё время». В 15:59 в другом окне я спросил: «А что мы делаем вообще сейчас? Не ушли ли мы в сторону от нашей изначальной идеи?»

Бортинженер снял лист: класс 1А и коридор, один и тот же миг в трёх реальностях. Я сказал: «Берём обе: 2 и 3». Во второй стены теплее, а ученики в чужих цветах. В третьей стены холоднее, все в одной форме.

Лист реальностей: наша школа, тёплая и холодная. Кадры из игры, один миг
Лист реальностей: наша школа, тёплая и холодная. Кадры из игры, один миг

Дальше переход. Сначала было мигание светлой пеленой. Я попросил «глитч-комикс-растр-эффект, 2 секунды где-то». Посмотрел три облика и написал: «Надо сделать что-то типа 1+2. И со звуком глитча». И ещё попросил, чтобы смена кадров была очевиднее, с наложением одной реальности на другую. Теперь старая реальность и новая идут полосами, на середине двойная экспозиция, сверху растр. Потом: «давай и звук, и анимацию перехода этого ускорим в 2 раза». Переход стал длиной в секунду. В 16:47: «Круто. Внедряем в игру. Мне нравится».

По закону реальности открываются на второй, третьей, пятой и восьмой шалости, а перекидывает раз в одну-три минуты. Но в 18:40 я попросил для теста: «Пока что для теста делать переход даже в первой миссии. Просто рандомно. Каждую минуту». Так и сделали.

А вечером я запустил игру и спросил: «почему я всё ещё вижу зимний сад». Игра была свежая. Сад был картинкой под заставкой. Её сняли 7 октября, за девять дней до атриума.

27 октября: заставка у меня, под логотипом сад с беседкой и пнями
Было. 27 октября: заставка у меня, под логотипом сад с беседкой и пнями
Новая картинка под заставкой: атриум, дуб с овальной скамьёй, трибуна
Стало. Новая картинка под заставкой: атриум, дуб с овальной скамьёй, трибуна

Запись: день 73

Среда без коммитов в main. Утром я спросил про реальности: «А как эти „реальности“ параллельные относятся к миссиям? Какова их роль?» Через час сам ответил: «Не, надо как-то попроще механику, и идею. Правда. Не придумал, почему вдруг началось перекидывание в другие реальности». И добавил мысль: в разных реальностях разные улики и разный шалун при одной и той же миссии. Вечером открыл сессию под названием «Проход демо».

Запись: день 74

В четверг я прошёл начало сам и написал: «Я нажал „Новая игра“ и не увидел пролога! Какой-то онбординг неудавшийся. Где же инструкции, что делать, куда нажимать, куда идти». И про центр экрана: «Раздражают наши линии у тега в центре „Никто не смотрит“, слишком много анимации».

Мой скриншот 29 октября: дрожащие штрихи вокруг «NOBODY'S WATCHING!», а у «stand up» нет клавиши
Мой скриншот 29 октября: дрожащие штрихи вокруг «NOBODY'S WATCHING!», а у «stand up» нет клавиши

Пролог терялся из-за порядка. «Новая игра» закрывала заставку раньше, чем открывался кадр. Букварь успевал посадить школьника, и пролог решал, что игра не новая. Теперь холодный старт сам говорит, что пролог положен. Подсказки получили обводку, клавиша стала тёмной плашкой с золотой буквой. Штрихи вокруг пузыря сняли.

Потом я попросил: «когда мы показываем, что никто не смотрит, надо прям чётко сказать и дать инструкцию, можно даже мыслями игрока „Пора спрятать журнал!“». Теперь под пузырём облако мысли «Пора спрятать классный журнал!».

Бортинженер прошёл дорогу журнала нажатиями и нашёл дыру. В двух ящиках учительского стола из трёх лежат мел, ручка и ключ. Правило стола было «ящик занят, если в нём хоть что-то». С журналом у такого ящика подсказка говорила «поставить на место», и E клала журнал обратно на стол. Теперь вещь ложится поверх мелочи, если хватает высоты.

Дорога журнала: взять, выдвинуть ящик, убрать, задвинуть. Мысль «Теперь быстро на место!»
Дорога журнала: взять, выдвинуть ящик, убрать, задвинуть. Мысль «Теперь быстро на место!»

Вечером я сыграл ещё раз и написал: «Что-то не то.... Вот почему-то мне неспокойно от онбординга, сразу в классе оказываюсь. Стресс какой-то....» Бортинженер разобрал: игрок с первого кадра сидит, не знает, где он, а первое, чему его учат, это шалость на время с риском провала. Спокойной минуты просто потрогать мир, как в саду у «Гуся», не было. Он предложил три варианта, я выбрал: «А и Б вместе».

Теперь после пролога школьник стоит в коридоре у дверей 1А. Класс уже за партами. Часы стоят, задания нет, школа на него не смотрит. Сел на своё место, и только тогда звонок, задание и урок. Первое окно «никто не смотрит» длится 90 секунд вместо 30.

Было: первый кадр сразу за партой. Стало: у дверей 1А, дверь, посадка, первое окно
Было: первый кадр сразу за партой. Стало: у дверей 1А, дверь, посадка, первое окно

Потом я прислал кадр, где разом стояли пузырь, мысль, правило и клавиша: «Вот это самый кошмарный кадр. С точки зрения человека с СДВГ! Сразу три места, которые надо почитать!» И тут же: «Но в общем и целом мне нравится, как мы стали делать».

Тот самый кадр: пузырь, мысль, строка правила и «E stand up» одновременно
Тот самый кадр: пузырь, мысль, строка правила и «E stand up» одновременно

Строку правила сняли. Пузырь появляется сразу, мысль через полсекунды, клавиша ещё через полсекунды. Глаз идёт сверху вниз.

Урок по очереди: сначала пузырь, потом мысль, потом клавиша
Урок по очереди: сначала пузырь, потом мысль, потом клавиша

Пробный режим реальностей посреди спокойного начала рвал первую шалость глитчем. Я сказал: «Давай, да, со второй шалости». Выключили. Для «разных улик в разных реальностях» бортинженер нарисовал три варианта поверх доски J. Решения пока нет.

Три варианта: улики разложены по реальностям, своя реальность на главу, три Никто сразу
Три варианта: улики разложены по реальностям, своя реальность на главу, три Никто сразу

Ещё в одной сессии шёл аудит доделанности: проход новичка нажатиями, журнал камеры по кадрам. Я ответил: «давай. Согласен. Иди по топам». Встать по E двигало взгляд на 43 сантиметра за один кадр. Теперь не больше 6,5 сантиметра за такт. Камера садящегося шла зигзагом два с лишним метра ради полуметра. Теперь 0,33 метра. Севший смотрит вперёд, а не в парту. После первой доски J звенит звонок. Подсказка под прицелом называет одно действие.

Поздно вечером я попросил: «Ты ещё следи за производительностью». Игре ещё выходить в Steam на ПК. Замер на M4 Pro: урок в 1А около 19 миллисекунд кадра, перемена у сердца и в атриуме от 36 до 40. Переключение реальности ускорили с 400 миллисекунд до примерно 90, подъём школы с 25,3 до 18,1 секунды, открытие доски J с 440 миллисекунд примерно до 70.

Запись: день 75

В пятницу утром дальние тела. Поза ученика дальше 12 метров теперь кладётся через кадр, дальше 25 метров через два. Я посмотрел ролик до и после: «Да, коммит и слить». У сердца на перемене средний кадр стал 32,9 миллисекунды вместо 39,7, а один процент худших кадров 53,3 вместо 84,6. В атриуме 28,8 вместо 32,7.

Лупа ×1,5 на дальний конец коридора: до и после

Параллельно я думал про облик реальностей. Может, в какой-то реальности подменить персонажей: у всех длинные руки и ноги, или большие головы, или вообще не люди. Бортинженер снял листы обликов. Длинные руки-ноги отпали: ломают парты и посадку. Зверушки сначала понравились, чуть позже отпали тоже. Взяли «бумагу», где всё белое, и кожа, и одежда, и школа, и «головастиков в школе-игрушке». Пластилин без лиц я попросил сам, посмотрел и ответил: «ой не, пластилин пока не берём. Совсем кринж».

Первый лист обликов: как сейчас, головастики, длинные руки-ноги, зверушки
Было. Первый лист обликов: как сейчас, головастики, длинные руки-ноги, зверушки
Второй лист: бумага, головастики в школе-игрушке, нарисованная школа, пластилин
Стало. Второй лист: бумага, головастики в школе-игрушке, нарисованная школа, пластилин

В 8:56 я сказал: «Да, переносим». Бумага и школа-игрушка переезжают в игру как четвёртая и пятая реальности. К утру пятницы это ещё не закоммичено. Двенадцать коммитов недели лежат в main, ещё восемь, начало без стресса, аудит и производительность, ждали слияния.

Откуда ноги растут

Моя мысль, что я «улетел в усложнение», и вопрос, чем цеплять игрока. Мой проход начала 29 октября со скриншотами. Аудит ядра 26-го и аудит доделанности 29-го. Листы вариантов: колени, покой, реальности, переходы, улики, облики. И «Гусь», с которым я снова сравнивал всё подряд.

Неделя в цифрах