Какая самая неотъемлемая часть сюжета?
Конечно же чат. Ведь в отсутствие возможности передавать мысли персонажей голосом, мы делаем это через текст — тот самый, который читаете вы и Рома. Именно поэтому мы уделяем ему отдельное внимание.
Например, если вы посмотрите первую и третью серии Игры Бога, то заметите, как мы начали работать над айдентикой чата.
Наши персонажи всегда пишут в квадратных скобках — [Картер] — это сразу позволяет понять: перед вами сюжетный герой, а не просто системное сообщение или реплика от энтити из какого-нибудь мода.
Кроме того, у каждого сезона есть свой уникальный цвет чата, и он тоже выбран не случайно. Он отражает настроение и тематику сезона — и я уверен, уже успел отложиться у вас в голове как визуальная ассоциация.
Фан-факт:
Для последних сезонов выбор цвета был настолько детализированным, что на это реально ушло несколько дней и масса обсуждений между сценаристами, геймдизайнерами и Ромой.
Вот такие вот мелочи, которые на самом деле — совсем не мелочи :3
Конечно же чат. Ведь в отсутствие возможности передавать мысли персонажей голосом, мы делаем это через текст — тот самый, который читаете вы и Рома. Именно поэтому мы уделяем ему отдельное внимание.
Например, если вы посмотрите первую и третью серии Игры Бога, то заметите, как мы начали работать над айдентикой чата.
Наши персонажи всегда пишут в квадратных скобках — [Картер] — это сразу позволяет понять: перед вами сюжетный герой, а не просто системное сообщение или реплика от энтити из какого-нибудь мода.
Кроме того, у каждого сезона есть свой уникальный цвет чата, и он тоже выбран не случайно. Он отражает настроение и тематику сезона — и я уверен, уже успел отложиться у вас в голове как визуальная ассоциация.
Фан-факт:
Для последних сезонов выбор цвета был настолько детализированным, что на это реально ушло несколько дней и масса обсуждений между сценаристами, геймдизайнерами и Ромой.
Вот такие вот мелочи, которые на самом деле — совсем не мелочи :3
❤🔥88❤11🕊7🦄3🔥2🤯2👀1
Есть интересная и очень крутая вещь в нашем флоу работы, в процессе написания серии кодером и её тестирования тестером, она может немного изменится в сторону лучшего визуала и геймплея. Что я имею в виду? Ну смотрите, первая серия Игры Бога.
Помните все страшилки которые насылал на Рому Люциус? На самом деле их изначально было на одну больше, когда бы он рубил первое дерево, его бы ударила молния, но в процессе разработки и тестирования было решено что этот момент излишен и он был успешно вырезан.
А помните алмазный блок в конце тоннеля? Тоже такой момент, его не было, хоба, и появился в процессе разработки, как мотивация чтобы Рома зашёл в тоннель, а не сбежал куда подальше.
И так мы работаем до сих пор, бывают крайне маленькие изменения, бывают чуть большие, вплоть до смены локации чтобы катсцена или файт выглядели эпичнее. Вот как-то так)
Помните все страшилки которые насылал на Рому Люциус? На самом деле их изначально было на одну больше, когда бы он рубил первое дерево, его бы ударила молния, но в процессе разработки и тестирования было решено что этот момент излишен и он был успешно вырезан.
А помните алмазный блок в конце тоннеля? Тоже такой момент, его не было, хоба, и появился в процессе разработки, как мотивация чтобы Рома зашёл в тоннель, а не сбежал куда подальше.
И так мы работаем до сих пор, бывают крайне маленькие изменения, бывают чуть большие, вплоть до смены локации чтобы катсцена или файт выглядели эпичнее. Вот как-то так)
🔥57❤7🥰4👌2🤩1
Время моей (и, надеюсь, вашей) любимой рубрики!
Что мы смотрим во время миграции (ну или просто долгого математического расчёта).
И сегодня на наш стол падает «Баракамон» — прекрасное аниме о том, как молодой каллиграф по стечению обстоятельств оказывается сослан в глухую деревушку на острове. Там он постепенно переосмысливает свою жизнь, ценности, работу — и учится заново быть собой.
Это очень тёплое аниме в жанре повседневности. Обязательно посмотрите его, если вы сейчас сталкиваетесь с выгоранием, потерей своего стиля или просто нуждаетесь в теплоте.
Но меня особенно зацепила одна тема, которая в отличие от прочих не проговаривается напрямую, но играет важную роль.
Нару — вторая главная героиня. Активная, весёлая девочка лет семи. Живёт с дедом — родителей у неё нет. Вроде бы она прекрасно справляется, не выглядит «покинутой» или грустной, но по ходу сюжета ты начинаешь чувствовать: ей не хватает взрослого, стабильного, тёплого присутствия. И именно ГГ постепенно становится для неё такой фигурой.
Не сразу, не по плану, но — становится.
И в их отношениях рождается нечто среднее между связью старшего и младшей, и… почти родительской заботой.
Это не проговаривается словами, но чувствуется.
И вот в этом, как мне кажется, и кроется одна из важных тем «Баракамона»:
люди могут стать семьёй не по крови, а по выбору и совместному пути.
(Если будете смотреть Баракамон, то обязательно вместе с ним смотрите Мидзикамон, это 2-ух минутные Чиби ролики которые подготовлены для просмотра после каждой серии)
Что мы смотрим во время миграции (ну или просто долгого математического расчёта).
И сегодня на наш стол падает «Баракамон» — прекрасное аниме о том, как молодой каллиграф по стечению обстоятельств оказывается сослан в глухую деревушку на острове. Там он постепенно переосмысливает свою жизнь, ценности, работу — и учится заново быть собой.
Это очень тёплое аниме в жанре повседневности. Обязательно посмотрите его, если вы сейчас сталкиваетесь с выгоранием, потерей своего стиля или просто нуждаетесь в теплоте.
Но меня особенно зацепила одна тема, которая в отличие от прочих не проговаривается напрямую, но играет важную роль.
Нару — вторая главная героиня. Активная, весёлая девочка лет семи. Живёт с дедом — родителей у неё нет. Вроде бы она прекрасно справляется, не выглядит «покинутой» или грустной, но по ходу сюжета ты начинаешь чувствовать: ей не хватает взрослого, стабильного, тёплого присутствия. И именно ГГ постепенно становится для неё такой фигурой.
Не сразу, не по плану, но — становится.
И в их отношениях рождается нечто среднее между связью старшего и младшей, и… почти родительской заботой.
Это не проговаривается словами, но чувствуется.
И вот в этом, как мне кажется, и кроется одна из важных тем «Баракамона»:
люди могут стать семьёй не по крови, а по выбору и совместному пути.
(Если будете смотреть Баракамон, то обязательно вместе с ним смотрите Мидзикамон, это 2-ух минутные Чиби ролики которые подготовлены для просмотра после каждой серии)
❤41❤🔥4🤩4🔥2🤝2🆒1
Кукловод. О чём вы подумали, прочитав это слово? Фильм? Страшилка? Кукла из «Пилы»?
А ведь именно так можно назвать Storytelling.
Почему? В ранние времена в сюжете часто использовались сущности из других модов и ванильной игры: зомби, Картер, да даже Селести.
С нашими сущностями всё понятно — мы ими управляем напрямую. Но что насчёт чужих?
Тут в дело вступает наша комплексная система, которая полностью перехватывает управление существом на себя — прямо как кукловод управляет своей марионеткой.
Наш «кукловод» может:
- поворачивать и направлять
- менять маршрут
- подменять текстуры
- глушить систему целей (goals)
и многое другое…
В итоге любая сущность подчиняется нашей воле.
Вот так вот :3
А ведь именно так можно назвать Storytelling.
Почему? В ранние времена в сюжете часто использовались сущности из других модов и ванильной игры: зомби, Картер, да даже Селести.
С нашими сущностями всё понятно — мы ими управляем напрямую. Но что насчёт чужих?
Тут в дело вступает наша комплексная система, которая полностью перехватывает управление существом на себя — прямо как кукловод управляет своей марионеткой.
Наш «кукловод» может:
- поворачивать и направлять
- менять маршрут
- подменять текстуры
- глушить систему целей (goals)
и многое другое…
В итоге любая сущность подчиняется нашей воле.
Вот так вот :3
❤83☃12🔥7🤯3🫡3👍2🤔2🤝2💘2🤗1
Пока посты пишутся, для вас вопрос, у меня тут возникла возможность провести стрим(ы) где мы будем шалить с разработкой вечерами, что думаете, и где?
Final Results
49%
Да, в Telegram (полная свобода и прекрасный плейлист)
14%
Да, в YouTube (мы ограничены content ID)
26%
Да, на Twitch (надо ещё создать)
1%
Да, на w.tv (надо прочитать пользовательское соглашение ещё)
10%
Я пасс
❤🔥50❤16🤗5👍2🔥2💘2😎2🍓1
Бессонный кодер
Пока посты пишутся, для вас вопрос, у меня тут возникла возможность провести стрим(ы) где мы будем шалить с разработкой вечерами, что думаете, и где?
Первый, тестовый, стрим в 19:00 по МСК 😘
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥56👏12💘5❤4🎃2🦄2😎2🔥1🥰1
Сказ о том, как мы финал пытались пережить
Ага, наконец-то пост-разбор инцидента 14 августа. Поехали!
Что изменилось по сравнению с прошлыми финалами?
Мы выросли. В ансабе уже 60 000 человек, бот стоит в тысячах чатов (включая чат архимага), и нагрузка выросла в разы. Было ясно: финал — это стресс-тест. Но мы ещё не знали, насколько, и что это тест наших нервов.
Подготовка началась заранее:
- за сутки до финала заморозили релизы (чтобы случайно не деплойнуть баг в самый ответственный момент);
- за 10 минут до премьеры сделали лучшее, что могли — открыли дашборды и начали молиться.
Хронология (UTC+3)
14:57 — первый алерт: повышенная нагрузка на приём обновлений. Началось.
15:24 — странность: поток обновлений резко падает. Нагрузка есть, а обновлений нет.
15:28 — понимаем, что не достучаться до Telegram: запросы уходят в таймаут. Начинаем действовать.
15:29 — пробуем стандартную меру (ресет подключений). Не помогает. В логах только это:
15:39 — экстренно перезапускаем всю ноду.
15:42 — ребут завершён. Всё ещё таймауты. Решаем перенести работу с Telegram на сервер в РФ.
15:47 — запускаемся с запасной локации.
Параллельно тестируем пинг:
15:58 — обрывается внутренний VPN (ТСПУ, привет). Мы снова в нокауте.
16:02 — запускаемся на резерве. Пинг огромный, но живём.
16:10 — датацентр сообщает: проблему устранили. Запускаем миграцию трафика обратно.
16:11–16:13 — аккуратно переводим очередь и приёмку сообщений.
16:17 — заканчиваем обработку накопившейся очереди. Мы снова в бою.
Что же случилось?
Один из промежуточных провайдеров на маршруте до Telegram ушёл на техработы/сломался. Сервер был доступен, но маршрут — нет. Вот комментарий от ДЦ:
Что мы пережили?
За 2.5 часа инцидента мы успели обработать:
- 20 000 сообщений,
- 3 000 входов в чаты,
- 30 000 обновлений от Telegram.
Что мы вынесли?
Нужно серьёзнее думать о кластеризации и геораспределении: несколько локаций, стабильные каналы, отсутствие зависимости от одного ISP и минимизация рисков со стороны ТСПУ.
Вот как-то так, в итоге вся наша команда не смогла посмотреть финал на премьере(
Ага, наконец-то пост-разбор инцидента 14 августа. Поехали!
Что изменилось по сравнению с прошлыми финалами?
Мы выросли. В ансабе уже 60 000 человек, бот стоит в тысячах чатов (включая чат архимага), и нагрузка выросла в разы. Было ясно: финал — это стресс-тест. Но мы ещё не знали, насколько, и что это тест наших нервов.
Подготовка началась заранее:
- за сутки до финала заморозили релизы (чтобы случайно не деплойнуть баг в самый ответственный момент);
- за 10 минут до премьеры сделали лучшее, что могли — открыли дашборды и начали молиться.
Ну что, @imguardbot, я запомню тебя таким. Земля пухом твоим серверам.
Хронология (UTC+3)
14:57 — первый алерт: повышенная нагрузка на приём обновлений. Началось.
15:24 — странность: поток обновлений резко падает. Нагрузка есть, а обновлений нет.
15:28 — понимаем, что не достучаться до Telegram: запросы уходят в таймаут. Начинаем действовать.
15:29 — пробуем стандартную меру (ресет подключений). Не помогает. В логах только это:
Failed to fetch updates. Waiting: 1s request to https://api.telegram.org/botXXXX/getUpdates...
failed, reason: connect ETIMEDOUT 149.154.167.220:443
15:39 — экстренно перезапускаем всю ноду.
15:42 — ребут завершён. Всё ещё таймауты. Решаем перенести работу с Telegram на сервер в РФ.
15:47 — запускаемся с запасной локации.
Параллельно тестируем пинг:
12 packets transmitted, 0 received, 100% packet loss
15:58 — обрывается внутренний VPN (ТСПУ, привет). Мы снова в нокауте.
16:02 — запускаемся на резерве. Пинг огромный, но живём.
16:10 — датацентр сообщает: проблему устранили. Запускаем миграцию трафика обратно.
16:11–16:13 — аккуратно переводим очередь и приёмку сообщений.
16:17 — заканчиваем обработку накопившейся очереди. Мы снова в бою.
Что же случилось?
Один из промежуточных провайдеров на маршруте до Telegram ушёл на техработы/сломался. Сервер был доступен, но маршрут — нет. Вот комментарий от ДЦ:
Мы наблюдаем ухудшение маршрута (потеря пакетов/высокий пинг) с несколькими ISP на промежуточных узлах. Из-за этого соединение может обрываться, даже если сервер доступен. Вероятно, техническое обслуживание или временная перенастройка маршрута.
Что мы пережили?
За 2.5 часа инцидента мы успели обработать:
- 20 000 сообщений,
- 3 000 входов в чаты,
- 30 000 обновлений от Telegram.
Что мы вынесли?
Нужно серьёзнее думать о кластеризации и геораспределении: несколько локаций, стабильные каналы, отсутствие зависимости от одного ISP и минимизация рисков со стороны ТСПУ.
Вот как-то так, в итоге вся наша команда не смогла посмотреть финал на премьере(
❤81❤🔥11🕊6🔥5😭4😨2💘1
Когда мы начали строить полноценные сюжетные локации и запускать Рому в целые сюжетные миры, сразу встала дилемма: открытый разрушаемый Minecraft vs необходимость ограничивать всевластие Ромы.
Сначала мы пошли простым путём — использовали «волшебное Ай-яй-яй»: словами запрещали ломать сюжетные постройки. Но такой подход слишком рушил игровой опыт.
Начиная с Идеального Мира мы изменили тактику — полностью отключили возможность ломать блоки там, где это не задумывалось нами. Рома пару раз попробовал, понял, что это бесполезно, и привык: ломать можно только то, что специально выделено.
Метод оказался рабочим, но имел минус — мы слишком сильно ограничивали свободу действий и вариативность взаимодействия. Поэтому в Точке невозврата мы рискнули: разрешили разбирать весь мир по кирпичикам.
И тут случился неожиданный эффект — у Ромы возник своеобразный синдром выученной беспомощности. Даже имея полное право, он часто забывал или боялся ломать мир. Получилось, что излишние ограничения в прошлом закрепили у него привычку действовать «только по правилам».
Сейчас мы ищем баланс: как совместить разрушаемость мира, которая даёт ощущение свободы, с реакцией сюжета на такие действия.
Сначала мы пошли простым путём — использовали «волшебное Ай-яй-яй»: словами запрещали ломать сюжетные постройки. Но такой подход слишком рушил игровой опыт.
Начиная с Идеального Мира мы изменили тактику — полностью отключили возможность ломать блоки там, где это не задумывалось нами. Рома пару раз попробовал, понял, что это бесполезно, и привык: ломать можно только то, что специально выделено.
Метод оказался рабочим, но имел минус — мы слишком сильно ограничивали свободу действий и вариативность взаимодействия. Поэтому в Точке невозврата мы рискнули: разрешили разбирать весь мир по кирпичикам.
И тут случился неожиданный эффект — у Ромы возник своеобразный синдром выученной беспомощности. Даже имея полное право, он часто забывал или боялся ломать мир. Получилось, что излишние ограничения в прошлом закрепили у него привычку действовать «только по правилам».
Сейчас мы ищем баланс: как совместить разрушаемость мира, которая даёт ощущение свободы, с реакцией сюжета на такие действия.
👍120❤37🔥10👏3😎3❤🔥2
А задумывались ли вы, что Рома — далеко не самый надёжный рассказчик? Всё, что вы видите, проходит через его взгляд и ракурс. А значит, кое-что всегда ускользает.
Например, в пятой серии Игры Бога: когда на него напал призрак, вокруг на самом деле должно было быть куда больше противников, но Рома слишком быстро умер. Кстати, в момент его смерти все мобы эффектно растворились в облаках пара. Но из-за угла обзора Ромы зрители и этого так и не увидели.
Или Точка невозврата: тот самый уборщик в мусорке, которого Рома так и не поймал [пост про это], или интерьеры домов с отсылками [пост про это]. Всё это осталось за кадром.
И это лишь мелочи. Есть и куда более крупные, даже сюжетно важные вещи, которые так и не попали в объектив. Иногда внимательные зрители подмечают детали на видео — и это один из самых радостных моментов для нас. Потому что история всегда чуть больше, чем видно с первого взгляда.
Например, в пятой серии Игры Бога: когда на него напал призрак, вокруг на самом деле должно было быть куда больше противников, но Рома слишком быстро умер. Кстати, в момент его смерти все мобы эффектно растворились в облаках пара. Но из-за угла обзора Ромы зрители и этого так и не увидели.
Или Точка невозврата: тот самый уборщик в мусорке, которого Рома так и не поймал [пост про это], или интерьеры домов с отсылками [пост про это]. Всё это осталось за кадром.
И это лишь мелочи. Есть и куда более крупные, даже сюжетно важные вещи, которые так и не попали в объектив. Иногда внимательные зрители подмечают детали на видео — и это один из самых радостных моментов для нас. Потому что история всегда чуть больше, чем видно с первого взгляда.
Telegram
ST Live
Рома нашел всех уборщиков, кроме одного, который был спрятан тут. С него всё и началось.
Как бы вы его назвали? 🤔
Автор: 🔨 Hakagron
ST Live
#Разработка #Тестеры
Как бы вы его назвали? 🤔
Автор: 🔨 Hakagron
ST Live
#Разработка #Тестеры
❤64👍8💋6🔥4❤🔥2🎃2✍1
Сюжет у нас полон разных построек, и самое время рассказать, как мы вообще добавляем их в мир Ромы.
На первый взгляд может показаться, что всё просто: Рома кидает нам карту, мы возвращаем карту с постройками (и заодно сжигаем гигабайты трафика). Но нет — такой подход слишком медленный, а главное, не подходит для построек, которые появляются прямо посреди серии.
Можно было бы использовать схематики, но у нас требования куда выше. Что именно нам было нужно?
1) Экспорт и импорт участка карты с фиксированными координатами (файл хранит относительные координаты внутри постройки + абсолютную координату нуля в мире).
2) Поддержка Tile Entity как из ванильного Майнкрафта, так и из модов.
3) Полное копирование сущностей.
4) Хранение кастомных данных (например, проводов из Immersive Engineering или navigation mesh для нашего сторителлинга).
И именно поэтому мы сделали собственное решение —
На первый взгляд может показаться, что всё просто: Рома кидает нам карту, мы возвращаем карту с постройками (и заодно сжигаем гигабайты трафика). Но нет — такой подход слишком медленный, а главное, не подходит для построек, которые появляются прямо посреди серии.
Можно было бы использовать схематики, но у нас требования куда выше. Что именно нам было нужно?
1) Экспорт и импорт участка карты с фиксированными координатами (файл хранит относительные координаты внутри постройки + абсолютную координату нуля в мире).
2) Поддержка Tile Entity как из ванильного Майнкрафта, так и из модов.
3) Полное копирование сущностей.
4) Хранение кастомных данных (например, проводов из Immersive Engineering или navigation mesh для нашего сторителлинга).
И именно поэтому мы сделали собственное решение —
StructIO. Эта система родилась ещё в ранних сезонах и до сих пор дорабатывается вместе с нами. Она работает с .dat файлами в формате NBT, а сами файлы внутри команды мы ласково называем датниками. Возможно, вы встречали это слово в постах участников ST.❤65🤩13❤🔥5☃4🔥3🫡3👍2🍌2
Ребята, я нашёл бота, который реально смог затащить меня на несколько часов — и хочу поделиться!
Думаю, многие знают про Character AI и похожие штуки. Но там только диалог. А теперь представьте: у вас есть не просто разговор, а целый мир истории, который меняется под ваши действия.
Хотите — это будет добрая домашняя история. Хотите — приключение в стиле D&D. А может — жуткий триллер. Вы сами решаете, кто вы и что делаете, а история подстраивается под ваши шаги. Это одновременно и развлечение, и крутой тренажёр креативности.
Но главное — тут есть мультиплеер! Можно играть в одиночку, можно с друзьями, а можно — с той самой особенной для вас половинкой.
И всё это — Иммерсия. Бот, который использует генеративные нейросети так, что это действительно увлекательно. В мире, где каждый второй бот — это «скачать с тиктока» или очередной анонимный чат, такое реально радует. Идея и реализация — 🔥, за это автору огромный респект.
Так что давайте поддержим проект, а заодно — попробуем сами. Погружайтесь в Иммерсию и открывайте новые грани интерактивных историй.
(Да, новый спонсор пропущенных дедлайнов).
Думаю, многие знают про Character AI и похожие штуки. Но там только диалог. А теперь представьте: у вас есть не просто разговор, а целый мир истории, который меняется под ваши действия.
Хотите — это будет добрая домашняя история. Хотите — приключение в стиле D&D. А может — жуткий триллер. Вы сами решаете, кто вы и что делаете, а история подстраивается под ваши шаги. Это одновременно и развлечение, и крутой тренажёр креативности.
Но главное — тут есть мультиплеер! Можно играть в одиночку, можно с друзьями, а можно — с той самой особенной для вас половинкой.
И всё это — Иммерсия. Бот, который использует генеративные нейросети так, что это действительно увлекательно. В мире, где каждый второй бот — это «скачать с тиктока» или очередной анонимный чат, такое реально радует. Идея и реализация — 🔥, за это автору огромный респект.
Так что давайте поддержим проект, а заодно — попробуем сами. Погружайтесь в Иммерсию и открывайте новые грани интерактивных историй.
(Да, новый спонсор пропущенных дедлайнов).
🔥33❤9❤🔥5🕊1🤝1👾1