Как разработчикам монетизировать свои игры в 2026?
Всем привет! Хотели похвастаться очередным сложным, но очень важным шагом на пути к возрождению российского геймдева и заодно спросить мнения окружающих (да, мы всегда сначала делаем, потом думаем).
Традиционный подход подразумевает, что разработчик заключает договор с площадкой (Steam, VK Play, Itch и т.д.). Игрок покупает игру, и деньги идут на счёт платформы. После этого в определенные даты происходит выплаты на счета разработчиков за вычетом комиссий. Где-то больше, где-то меньше, где-то по-другому. Но смысл тот же. Этот подход позволяет, во-первых, брать комиссии, во-вторых, легче работать с возвратами и в-третьих, быстрее распознавать отмывание денег и мошенничество.
Мы решили использовать схему маркетплейсов, где каждый разработчик приходит со своим статусом (ООО, ИП, смз). Но приходит он в первую очередь не к нам, а к платёжным агрегаторам типа Юкасса, Робокасса, любая …касса. Одним словом, подключает себе интернет-эквайринг, такое делает любой банк. Банк ему даёт API для подключения, ID магазина, ключи для проведения оплат и всё, действуй.
Где здесь мы? Мы предоставляем бесплатный хостинг для игр. Сама площадка + страница игры + страница разработчика. Всё тоже самое что у itch[.]io. Заодно есть консоль разработчика, в которую добавляется всё больше и больше возможностей. Соответственно, в этой консоли разработчик указывает тот самый идентификатор магазина, суперсекретный ключ и дальше надеется на магию.
Если магия происходит, то наш скрипт подставляет его данные в другой скрипт, только уже от платёжного агрегатора. Игрок видит кнопку обычную кнопку оплаты и оплачивает, после чего денюжки магическим образом летят на счёт разработчика. На этом магия заканчивается, начинается то ли математика, то ли бухгалтерия (я в этом не силён, не шарю).
Опережу (почти) все вопросы и сразу отвечу:
Q: На что вы будете существовать если у вас комиссии 0%?
A: При покупке игры рядом есть еще кнопочка “поддержать платформу”, надеемся, что это сработает
Q: Вы делаете очередного убийцу стима?
A: Нет
Q: Это точно не развод?
A: Точно нет, чесслово
На остальные вопросы обязательно ответим. Так как это не реклама, то прямо указывать название площадки не буду, но подскажу, что наш канал https://t.me/dustore_official
В мою шутливую мини апку о борьбе чиновников с интернетом за ночь пришло более сотни людей. Могу теперь хвастаться перед вайбкодерами об успешном саас.
Хотели бы побыть в шкуре чиновника-технофоба, блокирующего в интернете всё, до чего могу дотянуться пухленькие ручки?
Мне показалось это хорошая идея для первоапрельской Telegram Mini App и я написал PZDNET — где гильдии чиновников и общественников борются за максимальное количество блокировок в интернете.
Никакого здравого смысла. Только холодный расчет и нездоровая жажда «регулирования».
Представлен открытый проект Claude Code Game Studios. Это игровая ИИ-студия на базе нейросетей, которые умеет создавать различные проекты от простых бродилок до прорывного экшена:
48 нейросетей, которые могут работать без остановки. Это не устающий отдел геймдева прямо на локальном ПК;
среди ИИ есть: креативный директор, технический директор, продюсер, QA, нарративный директор, левел-дизайнер и другие ИИ-системы;
нейросети до мельчайших деталей знают актуальные движки: Godot 4, Unity и Unreal Engine 5. Они напишут на них игру и запустят с тестами;
ИИ-системы сами проверяют работу: коммиты, комментарии, задачи и итоги спринтов, а также все важные нововведения и ревью;
все действия нейросети согласовывают с пользователем как с гендиректором: с полным отчётом, предложениями и планом. Да, команда автономна, но задаёт вектор именно пользователь;
авторы проекта также добавили 28 шаблонов документов: по геймдизайну, архитектуре проекта, экономике, фракциям, UX и так далее.
Valve выпустила обновление для Counter-Strike 2, в котором изменила механику перезарядки. Теперь все неиспользованные патроны в рожке пропадают, если пользователь перезарядил оружие. Запас патронов стал отображаться в виде количества магазинов, пуль либо снарядов. Теперь при смене магазина оставшиеся в нём патроны будут пропадать, а не переноситься в запас. По словам разработчиков, это заставит игроков более обдуманно подходить к выбору момента для перезарядки вместо того, чтобы делать это после даже одного выстрела.
Кроме того, для некоторых видов оружия изменили количество патронов. Например, AWP теперь имеет 15 патронов на 3 магазина, P2000 – 64 патрона на 5 магазинов, USP-S — 36 патронов на 3 магазина и так далее.
Кроме того, Valve добавила на соревновательные карты специальные руководства, которые позволят изучать места и траектории для бросков дымовых гранат прямо во время матча. Подсказки будут работать в течение первых пяти раундов. Последним изменением, которое произошло с патчем, стала возможность присоединяться к пользовательским играм через список друзей, если сервер позволяет это сделать.
Представлена играбельная версию Pokemon Red прямо в Excel. Разработчик встроил GPT-5.4 в приложение, загрузил туда исходники игры, после чего она собрала демку карты прямо внутри таблицы. Каждая ячейка Excel используется как пиксель, а персонаж двигается по карте через обычные формулы — пользователю достаточно нажимать WASD.
Конкурс с самолетами, креативом и призами в Minecraft от Selectel
Привет, Хабр! Просто напомню, что у Selectel есть свой открытый Minecraft-сервер, поиграть на котором может любой желающий. И кажется, пришло время вернуться к нашим регулярным событиям, которые мы проводили там в прошлом году.
Начнем с конкурса самолетостроения. Если коротко — кто построит самый классный самолет, тот молодец и получит реальный приз. А теперь немного деталей.
Совсем скоро мы создадим на сервере еще один мир, в котором всем игрокам будет доступна игра в креативном режиме. При переходе в мир каждый игрок автоматически получит приватный участок, взаимодействовать с которым сможет только он. В пределах этого участка нужно будет построить самолет.
Какой? Любой. Создавайте игровые копии реальных машин, стройте самолеты из других игр, придумывайте что-то свое. Мы верим, что ваше творчество не знает границ. Только имейте в виду, что самолет все же должен быть реалистичным, это главный критерий конкурса. Например, джакузи на крыше — это классно, но сохранение аэродинамического профиля крыла все же будет важнее (а джакузи можно разместить внутри салона).
В течение пары недель я вернусь с апдейтами и точными датами конкурса. А пока на всякий случай напомню о важных моментах:
регистрация на сайте (без этого мы не сможем вручить вам приз, если вы победите);
для игры на сервере нужна ПК-версия Java Edition 1.21.11 и новее.
сервер доступен бесплатно, донатов у нас нет (кто-то считает это минусом).
Шкала оценки определена на основе анализа 45+ реальных, крупных игровых провалов, практического опыта в управлении рисками и работе с операционной эффективностью процессов различных компаний. Только здравый смысл, методология, данные и статистика.
Как считать:
По каждой категории поставьте балл от 1 до 5 (не обманывайте себя)
Умножьте на вес категории
Сложите и посмотрите на итоговый балл
Значения порогов:
42 – 83 🔴 Красная - критический риск, стоит переосмыслить концеп игры и/или управление ее развитием
84 – 147 🟡 Жёлтая - средний риск, можно работать, но необходимы корректировки
148 – 210 🟢 Зелёная - хороший потенциал, кандидат в успешные проекты
Обратная связь
Надеюсь, данный мини-шаблон поможет вам увеличить шансы вашего проекта на успешный релиз. Пользуйтесь, проверяйте свои проекты. Буду вам признателен, если поделитесь результатами оценок ваших проектов, а также за конструктивную критику или похвалу.
Если шаблон оценки показался вам полезным, заходите в Telegram-канал - @GameDevRiskAdvisor. Подписывайтесь. Сможете больше узнать о рисках, метриках и ранних индикаторах проблем, присущих игровым проектам в индустрии GameDev. На канале мы регулярно и кратко разбираем игровые провалы, риски, делимся рекомендациями.
Мнение и опыт
Поделитесь вашим мнением и опытом в комментариях. Как вы управляете вашим игровым проектом и присущими проекту рисками, с каким трудностями сталкивались и как вы эти трудности преодолевали. Возможно, именно ваш опыт убережет коллег от "граблей" и потенциальных провалов.
Удачи в построении эффективных и устойчивых процессов.
Я создала карту для мода на Portal 2. Что из себя представляет мод: Захват флага (Capture The Flag) с портальной пушкой. Проект Portal: Capture The Flag делается на движке Godot. При создании карты для Portal 2 я вдохновилась знаменитой картой из Unreal Tournament, в которую я играла в детстве.
Представлен клон Minecraft в браузере minecraftopus.vercel.app — игра полностью собрана в Claude Opus 4.6. Нейросеть сгенерировала рабочую версию с блоками, передвижением и базовой механикой строительства — всё запускается без скачивания.
Инди-разработчик Daivuk представил шутер в стиле Quake, размер которого составил всего 64 килобайта (QUOD.exe 64 kB или QUOD_uncompressed.exe 102 kB). Игра получила название QUOD, там есть три уровня, четыре уникальных врага и битва с боссом. Кроме того, на выбор есть несколько видов оружия.
Проект QUOD не требует подключения к каким-либо внешним ресурсам: все текстуры, звуки, музыка, уровни, модели, анимация и код сжаты в один файл. Именно этот файл доступен на сайте разработчика, причём скачать его можно бесплатно.
Для запуска QUOD потребуется относительно мощный ПК на Windows. Необходимо 8 ГБ оперативной памяти, GTX 770 (или аналог) и Intel i5 (или аналог).
Представлен проект HYPERHELL - первый в своём роде четырёхмерный вариант игры в стиле DOOM (тестовый уровень).
«Наш слабый человеческий разум способен воспринимать лишь до трёх измерений, поэтому приготовьтесь к дезориентации, погружаясь в четырёхмерный лабиринт HYPERHELL и прокладывая себе путь сквозь полчища заблудших душ, демонов и темных ангелов, чтобы выжить», — пояснил автор проекта.
В Steam вышела демо-версия симулятора Data Center Demo. В игре нужно строить дата-центры, собирать стойки с оборудованием, прокладывать коммуникации и обеспечить ЦОД всем необходимым для беспрерывной работы. При этом нужно следить за нагрузкой на архитектуру и балансировать её, чтобы серверная часть не вышла и строя.
Игровые студии начали оптимизировать игры, чтобы победить кризис ОЗУ, например, они урезают системные требования и уже просят 16 ГБ вместо 32 ГБ. Так сделали авторы LEGO Batman: Legacy of the Dark Knight. Они обновили рекомендуемые характеристики для ПК и оптимизировали игру, потому что сейчас многие геймеры просто не могут обновиться.
Классические Need for Speed вернули к жизни. Разработчик собрал сборник из пяти ремастеров культовых гонок 2003–2007 годов. Там исправлены баги, добавлена поддержка широкоформатных мониторов, модов из коробки, Win 10/11 и Steam Deck. Игры работают на современных геймпадах. Доработаны отражения, интерфейс и наклейки в HD, улучшены тени от машин.
Сколько я плачу за AI инструменты и как они у меня взаимосвязаны
Claude — мой основной AI инструмент уже как 9 месяцев — Плачу за него 100$
Состоит из Claude Desktop, Claude Code UI и Claude Code CLI
Если хочу работать в приятном UI с текстом → Claude Desktop Если работаю локально с кодом → Claude Code CLI Если хочу поправить код с телефона → Claude Code UI
Коротко что все это такое • Claude Desktop — как чат GPT, но с поддержкой MCP + Skills и еще всякими штуками • Claude Code — UI для работы с вашим репозиторием • Claude Code CLI — Command Line Interface Агент. По сути это микс Claude Desktop + Claude Code по функционалу, но без интерфейса и работает внутри вашего компьютера. Мое любимое развлечение последних двух месяцев
Claude Code CLI — пока что самый прокачанный на рынке CLI агентов
———
OpenAI, который chatGPT — за него плачу 20$
• ChatGPT UI — им почти перестал пользоваться, только ради генерации картинок иногда залетаю. Они после недавнего релиза стали их генерировать на уровне с Nano Banana • Codex UI(Аналог Claude Code) — UI для работы с вашим репозиторием • Codex CLI (Аналог Claude Code CLI) — чуть менее прокачанный как Command Line Interface, но зато их модель Codex 5.2 Extra-high уделывает OPUS 4.5 в плане UI дизайна и продумывания/рефакторинга сложных вещей
Но в Codex CLI вроде как отсутствует аналог ESC + ESC из Claude Code CLI для откатки написанного кода, без него тяжко жить 🍌
OpenAI недавно признали то, что их гонка с Claude за тем, чтобы сделать лучший кодинг агент, привела к тому, что 5.2 потеряли человечность в общении и стали сильно более директивными и сухими
Это помогает при работе с кодом, но общаться с ней сложнее
———
Экосистема Google — плачу 8$ за Plus подписку
Google у меня для трёх вещей: картинки через Nano Banana, NotebookLM и Antigravity для просмотра кода. Халява за 8$
• Nano Banana, иногда Veo 3 для генерации картинок / видео — лучшие генераторы картинок / видео на рынке • NotebookLM — прикольный RAG UI, всем советую потестить • Antigravity — Fork VS Code по типу Cursor, но с продвинутым Agent Workflow. Есть доступ к Gemini Pro + почему-то Claude моделям. Плюс Antigravity может генерировать картинки сразу вам в код через Nano Banana, такой вот бесшовный воркфлоу
Ни Gemini UI ни Gemini CLI я особо не пользуюсь. Мне они кажутся сильно сырыми по сравнению с Claude Code | GPT
———
Как выглядит мой воркфлоу
Claude Desktop для задач, где мне хочется иметь приятный UI и фичи именно Desktop интерфейса. Например написание постов, создание табличек, графиков и всего такого — те задачи, где CLI сильно проседает по UX
Claude Code UI почти не использую, только когда нужно изменить репозиторий с телефона, например на улице или в поездке
Claude Code CLI — мой day to day tool для работы с кодом. Пишу на Opus 4.5. Для сложных задач прошу создать промпт для Codex.
Antigravity юзаю для просмотра кода и папок, иногда запускаю Gemini 3 pro как третье мнение
Codex, как я уже и говорил, требует особого навыка общения. так как она может думать по 40 минут и перековырять вам весь код, но зато она у меня всегда находит те корнер кейсы, которые не находит ни Opus 4.5 ни Gemini 3 pro. По стилю общения вы будто общаетесь с Сеньёром, который вас презирает, зато резалт пушка
———
Прикольные фишки, которые я постоянно применяю
Через Antigravity прошу генерировать изображения со вставкой сразу в код, получается бесшовный воркфлоу Prompt => Generation => Insertion
Используй Claude CLI Opus 4.5 для Day to Day задач
Используй Codex CLI xhigh для задач на рефакторинг или поиск corner cases, он сильно тщательнее это делает
Планируя новую фичу, проси Claude создать локальный MD с планом, а затем Codex xhigh + Gemini 3 pro пусть покритикует этот план и напишет ниже свои комменты
Не забывай про кнопку ESC + ESC в Claude Code CLI
Claude Code CLI в начале сессии загружает себе CLAUDE.MD, Codex загружает в себя AGENTS.MD, а Gemini — GEMINI.MD.
Команда /context покажет контекст текущей сессии, старайся держать его как можно ниже Good context engineering means
Genie 3 — продукт для генерации видео с встроенной моделью мира от Google DeepMind. Пользователям предлагается управлять персонажем, который может передвигаться по генерируемому в реальном времени окружению. Понятно, что и персонаж, и окружение могут быть любыми. Видео в формате 720p с частотой 24 кадра в секунду не рассыпается, генерация остаётся осмысленной иногда даже минуты.
Мир отреагировал на выход продукта лёгким обвалом рыночных котировок акций игроразработчиков. При этом никто даже не задумался, может ли Genie 3 заменить игровые движки. На самом деле этот исследовательский прототип с интерактивным видео — не замена 3D-движку. В самом благоприятном случае Genie 3 в его текущем виде может послужить инструментом только для превиза и быстрых набросков.
На практике ничего особенно интересного и не произошло. Это очередной продукт с заградительным ценником: получить доступ к Genie 3 возможно только в США и только с подпиской Gemini Ultra за 250 долларов в месяц. В Сети обычно обсуждают различные видеоролики, которые сгененировал кто-нибудь ещё.
Один из обладателей Ultra показал слабое место нового продукта. В традиционном геймдеве хорошие зеркала — редкость из-за требований по производительности, а у Genie 3 проблемы возможны из-за неправильного оптического поведения.
В минутном видеоролике происходит всё, что только можно представить. Поначалу персонаж реалистично отражается, но вскоре отражение начинает вести себя некорректно. Если зеркал два, то в одном случае отражение теряется. При большом желании из зазеркалья можно пригласить двойника или сходить к нему в гости. Число персонажей на экране менятся непредсказуемо: то их четыре, то всего один.
Глава Pocketpair (компании-создателя Palworld) Такуро Мидзобэ (Takuro Mizobe) сообщил о нестандартном требовании к кандидатам на должности геймдизайнеров в компании — соискатели должны быть активными пользователями платформы Steam с обширной игровой историей. На собеседовании кандидатов просят предоставить скриншоты своей игровой истории Steam и подробно проанализировать игры, в которых они провели больше всего времени. Студия ищет специалистов, которые понимают особенности жанра не только как разработчики, но и как заядлые игроки. Соискатель должен объяснить, почему были приняты те или иные дизайнерские решения в любимых играх и чем они отличаются от конкурентов в своём жанре.
Профессиональный художник по окружению Бен Маколи (Ben Macauley) воссоздал вступительную миссию из Half-Life 2 на Unreal Engine 5 и показал результат в отдельном ролике на YouTube. Проект потребовал около месяца работы. Автор полностью переработал интерьер железнодорожного вокзала, создав окружение с нуля, изготовив множество уникальных ассетов и материалов и добавив собственные художественные и дизайн-решения, при этом сохранив визуальный дух оригинала Valve. Маколи подчёркивает, что для достижения этого эффекта опирался на оригинальные модели персонажей, звуковые эффекты и другие ассеты Half-Life 2, а сам проект предназначен прежде всего как демонстрация навыков и пополнение портфолио — релиз карты для широкой публики не планируется.
Пользователь сделал игру про лучника, который стреляет во врагов, а управление происходит за счёт вставления и вытаскивания зарядного кабеля из разъёма при подключённом блоке питания. Никаких кнопок, тачскрина и свайпов — только провод и порт.
Это упрощенный вариант кода, нет проверок на границы чанков, только чистая логика света. И представим _blockIds заполнен данными 0 и 1 (0 - нету блока, 1 - есть блок), а _blockLights имеет значения от 0 до 15.
1. Блок света (Лампа) устанавливается в ячейку с координатами (x, y, z), а сила его света lightForce = 15. 2. Перебираю соседние ячейки: (x - 1, y, z), (x + 1, y, z), (x, y - 1, z), (x, y + 2, z), (x, y, z - 1), (x, y, z + 1). 2.1 Если в соседней ячейке есть блок, то он пропускается. И если lightForce внутри блока уже больше или равен присваиваемому lightForce, то блок пропускается. 2.2 Если блока нет, то ячейке присваивается lightForce= 14. Так же эта ячейка добавляется в очередь _lightsQueue. 3. Запускаю цикл While и также перебираю блоки внутри _lightsQueue.
Если вам интересно следить за разработкой игры и влиять на саму игру, у меня есть телеграмм канал.
Группа игроков в Minecraft пять лет воссоздавала Нью-Йорк в масштабе 1:1, и теперь проект полностью готов. Это не упрощённая версия города, а максимально точная копия с реальными размерами и детальной проработкой. С большого расстояния виртуальный город легко спутать с настоящим, но при приближении становится ясно, насколько глубоко команда ушла в детали — вплоть до цветочных горшков на балконах реальных зданий. В проект вошли многие знаковые районы и места города, включая Всемирный торговый центр, Трайбеку, Ту-Бриджес, Маленькую Италию и Чайна-таун.
Разработка не обошлась без трудностей: команда допускала множество ошибок, а ранние версии города со временем были полностью переделаны. В итоге первоначальные постройки больше не существуют — их неоднократно перестраивали, доводя проект до нынешнего уровня качества.
🎯 Цель игры Выиграть больше раундов из 6, правильно расставив карты и используя свапы.
🃏 Карты В колоде 9 карт: по 3 карты каждого типа (Камень, Ножницы, Бумага). Из них случайным образом выбираются 6 карт — это стартовый набор игрока.
🪨 Камень побеждает ✂️ Ножницы
✂️ Ножницы побеждают 📄 Бумагу
📄 Бумага побеждает 🪨 Камень
🔄 Ход игры 1. Этап подготовки Оба игрока видят свои карты и карты соперника. Это время для анализа и планирования стратегии. Нажмите «Готов», когда изучите карты.
2. Этап создания руки Перетащите карты в слоты, чтобы определить порядок игры. Первая карта будет сыграна в 1-м раунде, вторая — во 2-м, и так далее. После подтверждения изменить порядок нельзя.
3. Игровые раунды Игра состоит из 6 раундов. В начале каждого раунда у вас есть время, чтобы сделать свап или пропустить ход. После этого карты обоих игроков раскрываются и определяется победитель раунда.
⚡ Свапы У вас есть 3 свапа за всю игру. Свап позволяет поменять местами две соседние карты перед раундом. Используйте их с умом!
🏆 Победа Побеждает игрок, выигравший больше раундов. При равном счёте — ничья.
Итак, мы в деревне и почему бы нам не извлечь подарки из под ёлки, и не спрятать по всему дому? За пару дней я таки добился, чтобы Gemini AI studio собрал игру "Поиск подарков с Мортимером", где AI-ворон Мортимер придумывал мрачные импровизированные загадки на английском языке. Ещё в процессе отладки поразило сколько рифмованных загадок в стиле Уильяма Блейка LLM может придумать на одно и то же слово. Итак, Gemini-генератор выдал изображение, переключаемся на другое окно, и Gemini-вайбкодер тут же предложил дизайн. Скорость, с которой родилась концепция, слегка ошеломила… Процесс построения приложения, с другой стороны, со всеми задуманными фичами (хотелось озвучку от ElevenLabs, бесплатное API без лимита и сохраняемые сетапы), похож на бросание камня с закрытыми глазами. Но результат порадовал, день релиза был днем смеха и поисков.
Я целую неделю отлаживал свой блок GPU, в котором с мая месяца сделал новый подблок, которого не было у AMD, у которого Самсунг лицензировал технологию RDNA. Моим единственным желанием на Новый Год было чтобы прошел тест. Так как баг проявлялся только на подсистеме, тест которой шел 6 часов в софтвере и 8 часов на эмуляторе, после каждого изменения нужно было ждать это время. И вот я проснулся 1 января и тест прошел. Это значит, что с высокой вероятностью этот новый подблок моего дизайна войдет в телефоны Самсунг 2028 года. Все, сегодня можно не работать, а идти в лес или редактировать статью, которую у меня приняли на крутую конференцию. С Новым Годом!
Всем привет, это снова stalker320. Делаю что-то вроде анонса, я тут изучаю что появилось в C23 и думаю записать пару уроков с помощью него, так как пара новых функций выглядят теперь довольно интересными, к примеру, при объявлении перечисления теперь можно указать размер поля (: char). Вот он в исходном виде:
Балетный слэшер «Царевна» в мрачном сеттинге сказок Пушкина выйдет в ноябре 2026 года. Студия Watt Studio показала геймплей и раскрыла детали экшена «Царевна» (Tsarevna). Это переосмысление «Сказки о царе Салтане», в котором главная героиня станет гораздо мрачнее своего классического образа. Царевна‑Лебедь здесь — агрессивная воительница, движимая желанием отомстить за своих родных.
Боевая система игры строится вокруг балетной хореографии. Разработчики вдохновляются популярными зарубежными слэшерами, но уделяют особое внимание уникальной анимации: все боевые приёмы и удары должны соответствовать реальным балетным па.
Помогать героине будет Кот Баюн. В игре он выступает в роли древнего бога, который непосредственно участвует в сражениях, помогает перемещать Царевну между мирами, а также рассказывает о лоре вселенной и саркастично комментирует происходящее.
Ожидаемый возрастной рейтинг игры — «18+», хотя авторы отмечают, что чрезмерной жестокости не планируется. У проекта есть страница в Steam, а список платформ включает все современные консоли, кроме Nintendo Switch.
Команда Mandragora представила ретро-игру ReStory по починке гаджетов в токийской мастерской по ремонту электроники в середине 2000-х, включая тамагочи, телефоны Nokia, PSP и Walkman. Проект доступен для тестирования перед запланированным релизом в 2026 году.
Проверяем osu! и рассказываем про фишки статических анализаторов
Про существование инструментов статического анализа известно многим, но почему их часто используют и в чём конкретно заключается практическая польза? В этот раз мы предлагаем рассмотреть несколько основных особенностей этого инструмента на примере анализа исходного кода игры osu!
Первая особенность: экономит время
Одной из особенностей статических анализаторов является возможность сэкономить время на код-ревью за счёт схожего подхода (просмотра исходников), только за вас всё делает инструмент :)
Предлагаю начать с небольшой разминки: сможете ли вы самостоятельно найти ошибку?
public partial class TopScoreStatisticsSection
: CompositeDrawable
{
public ScoreInfo Score
{
....
if (score == null && value == null)
return;
if (score?.Equals(value) == true)
return;
score = value;
accuracyColumn.Text = value.DisplayAccuracy;
maxComboColumn.Text = value.MaxCombo
.ToLocalisableString(@"0\x");
ppColumn.Alpha = value.BeatmapInfo!
.Status
.GrantsPerformancePoints() ? 1 : 0;
}
}
Если нужна подсказка или хотите убедиться в своём варианте, можно посмотреть на предупреждение PVS-Studio:
V3125 [SEC-NULL] The 'value' object was used after it was verified against null. Check lines: 128, 120. TopScoreStatisticsSection.cs 128
Нашли? Ну я в вас и не сомневался :)
Для протокола давайте всё же разберём, что произошло. Выглядит как логическая ошибка, а их не так просто заметить, потому что не все захотят высматривать все возможные сценарии. В нашем же случае один из них сразу может вызвать проблемы.
В начале есть две проверки.
Первая проверка:
if (score == null && value == null)
return;
Вторая проверка:
if (score?.Equals(value) == true)
return;
Скорее всего, они предназначались для обработки двух переменных по разным сценариям (если score = null, если value = null, если они равны и т. д.). Но вот если комбинация будет score = "NotNull" и value = null, то первая и вторая проверки отработают без выхода из метода, и мы пойдём дальше по коду, где непременно наткнёмся на разыменовывание свежеполученного null
Хотите узнать еще? Если вас заинтересовало какие еще есть особенности статических анализаторов и что еще мы смогли найти в osu! То предлагаю прочитать полную версию статьи.
В игре Escape from Tarkov на магазине P90 долгое время висела надпись «Потом будет прозрачный» — после релиза её поменяли на «По ходу не будет». Игру делали девять лет, включая восемь лет и три месяца тестирования.
База проектов опен-сорсных игр, а также различных аналогов платных тайтлов различных жанров. Многие проекты устанавливаются за один клик или открываются прямо в браузере.
Знакомьтесь: мобильный разработчик Контур.Диадока, Дима Моисеев. 😎 Уже 12 лет делает на Ютубе авторское шоу Old Hard о незаслуженно забытых играх, их переизданиях и ремейках, железяках и source-портах. А ещё — пилит собственную игрушку про мистическую техподдержку Creepy Support. 👽 Увлечению Димы мы посвятили второй выпуск «Пет проектов», где программисты гуляют по полю с собаками из приюта Хаски Екб и рассказывают о своих хобби. Выбрали для вас несколько главных тезисов из этой прогулки. 👇
С чего всё начиналось и чем мотивировался, чтобы не бросить
Я вместе со своим другом вёл текстовый блог (он всё ещё существует, вот ссылка на него), нам понравилось, и мы решили: а что, если пойти дальше и начать снимать видео? Я тогда как раз закончил институт и пришёл работать в Контур.
Первая игра, на которую мы сделали обзор, называлась «Подземелья Кремля». Это шутер 1995 года от первого лица — российский ответ американскому Doom.
Сейчас на моём канале 71 тыс подписчиков. А когда начинал, то думал: если до такого-то числа наберу сотню, прекрасно — продолжаем. Если нет — видимо, это не моё, займусь чем-то другим. И вот дата икс, я смотрю, а там 101 подписчик! Это был знак 👣 идти дальше.
Сначала я поставил себе цель — выпускать ролики не реже двух раз в месяц
Потом понял, что это начинает превращаться во вторую работу, ещё и начальник [Дима сам себе директор] требовательный. 😁Решил: буду делать в максимально комфортном темпе — появилась интересная железяка > я её неторопливо в свободное время исследую > записываю потихоньку ролик > выкладываю. Сейчас у меня около четырёх сценарных видео в год, раньше было 8-10. Иногда проскакивают и не сценарные форматы — подкасты, реже — стримы.
Где нахожу старое железо для выпусков
На барахолках. Часто попадается что-то классное, например, трёхмерный ускоритель 95-го года или джойстик под MS-DOS довиндосовских времён. А ещё — ноутбуки, звуковые карты, игровые консоли… Там много интересных штук!
Как работаю над выпусками
Помощников у меня нет, выпуски делаю сам от начала до конца: съёмка, монтаж, публикация. Если зритель указывает на ошибку, мне не на кого её спихнуть 😁, иду исправлять. А ошибки бывают — за всем не уследишь. Но к ним отношусь спокойно и не принимаю близко к сердцу.
Закадровый текст я обрабатываю примерно один к двум: на 20 мин черновика выходит 10 мин готового текста.
В принципе, мне нравятся в этой работе все этапы, особенно — писать текст и монтировать. Запись закадра и съёмка — тоже норм, но если в будущем нейронка сможет моим голосом и с правильной расстановкой интонаций записать текст, я перестану следить за микрофоном и это очень облегчит процесс создания роликов.
Блог забрасывать не хочу: мне нравится мой сегодняшний комфортный темп, плюс остаётся время на другие проекты. Например, я ещё делаю свою видеоигру под названием Creepy Support. Суть игры: ты играешь за работника техподдержки в тайной организации, в которую обращаются люди, столкнувшиеся с чем-то паранормальным. Например, кому-то на 15-м этаже постучал в окно человек или позвонил по телефону кто-то странный. 👻 Задача игрока — уточнить детали и дать совет, что человеку делать дальше. Потом можно даже узнать, как этот совет повлиял на жизнь того человека.
Надеюсь, на эту игру тоже в будущем будут делать обзоры. 😉 Кстати, я уже видел несколько отзывов на неё на английском языке.
Что дают мне пет-проекты
Я познакомился с кучей новых людей.
Расширил кругозор. Например, для игры Creepy Support выбрал другой язык программирования, не тот, на котором пишу в Контуре. И это здорово помогает мне отвлечься от рабочих задач.
***
Полный выпуск про Диму, его пет-проекты и ушастую Феню, с которой бродили по зелёному полю, можно посмотреть в VK Видео, на RuTube и YouTube. Подпишись на нас на любой из площадок, чтобы не пропустить новые видосы! 😉
Мой опыт в вайб-кодинге: AI-инструменты для создания приложений и первой игры-змейки! 🚀😂
Несколько месяцев назад я был на онлайн-мастерклассе по вайб-кодингу, где мы знакомились с разными AI-инструментами для создания приложений, игр и других задач через описательные промпты и автоматизированный кодинг. Это был крутой опыт, где мы не писали код вручную, а "вибили" идеи, и AI генерировал всё за нас.
В мастерклассе мы работали с такими инструментами:
Cursor: Сначала мы использовали его для базового редактирования кода с AI-подсказками. Мы создавали простые веб-страницы, описывая дизайн и функционал в чате, и Cursor генерировал HTML/CSS/JS, а потом помогал отлаживать баги. Этот инструмент больше всего используется в сочетании с моделями вроде Claude Sonnet для генерации и редактирования кода.
Harvi-pro и Harvi code: Этот инструмент мы применяли для интеграции GPT-моделей в кастомные приложения. Мы строили AI-ассистентов для обработки запросов, например, простого бота для рекомендаций, задавая промпты на русском, и Harvi-pro автоматизировал backend, а Harvi code помогал с генерацией и интеграцией кода в связке. Эти инструменты больше всего используются в сочетании с ChatGPT, VS Code и Cursor для создания GPT-ассистентов.
Lovable: Здесь фокус был на быстрой сборке мобильных приложений. Мы пробовали создавать чат-боты и простые утилиты, просто описывая UI и логику в естественном языке, и Lovable строил полноценный прототип с деплоем. Этот инструмент больше всего используется в сочетании с Cursor для прототипирования приложений и UI-дизайна.
Bolt: С Bolt мы экспериментировали с веб-разработкой в браузере. Мы создавали динамичные сайты, как лендинги или формы, просто загружая скриншоты или описывая "виб", и он генерировал код с мгновенным превью. Этот инструмент больше всего используется в сочетании с браузером и другими AI-инструментами вроде Cursor для быстрого создания прототипов веб-приложений.
KiloCode: В нём мы работали как в VS Code с AI-агентом. Мы автоматизировали задачи, такие как генерация скриптов для обработки данных, и KiloCode сам проверял код, запускал тесты и исправлял ошибки. Этот инструмент больше всего используется в сочетании с VS Code и JetBrains IDE для автономной разработки и автоматизации задач.
Мне больше всего понравилось создание игр — это был мой первый опыт в такой сфере (я впал в детство и создал всеми известную игру змейку, в которую добавил несколько персонажей с уровнями сложности с боссом Пэкмена и Марио 😂).
Недавно я копался в мире ИИ-инструментов для разработки — тех, что помогают писать код быстрее и умнее. Знаете, когда сидишь за проектом и думаешь: "А не взять ли помощника, который подхватит идеи на лету?" Решил поделиться обзором нескольких интересных вариантов на рынке. Это не глубокий разбор с бенчмарками (для этого нужны отдельные тесты), а просто описание, чтобы понять, что можно выбрать под свои нужды. Я опираюсь на личный опыт и отзывы из сообществ — вдруг кому-то пригодится для экспериментов.
Давайте по порядку:
Cursor — это как эволюция VS Code с встроенным ИИ. Он автокомплитит код, генерирует фрагменты по описанию, понимает контекст проекта и даже помогает с отладкой. Подходит для тех, кто любит привычный интерфейс, но хочет ускорить рутину. Работает на Windows, macOS и Linux, есть бесплатная версия, но премиум открывает больше моделей ИИ. Идеально для соло-разработчиков или команд, где нужно быстро итератировать.
Harvi Code — российский продукт, первый в России аналог Cursor, построенный на мощной модели Sonnet 4.5 (от Anthropic, которая славится точностью и скоростью). Это расширение для VS Code и Cursor с удобным интерфейсом, как в знакомых IDE, плюс фокус на хороших ценах (не дерут втридорога за подписку). Подходит для генерации кода, отладки и работы с проектами. Если вы в РФ и ищете локальный вариант без заморочек с платежами — стоит попробовать.
Lovable — здесь акцент на создание веб-приложений без глубокого кодинга. Чат с ИИ: описываешь идею на естественном языке, и он генерирует full-stack app — от фронта до бэка. Удобно для прототипов или MVP, особенно если вы не хотите копаться в деталях. Поддерживает интеграции с базами данных и API. Минус — иногда нужно дорабатывать вручную, но для стартапов или хобби-проектов это спасение.
Bolt (bolt.new) — браузерный инструмент для быстрого создания сайтов, приложений и прототипов. Вводишь промпт — и вуаля, он строит всё от начала до конца, включая деплой. Работает с веб, iOS и Android. Круто для тех, кто хочет экспериментировать без установки софта. Есть интеграции с Expo для мобильных apps. Подходит новичкам или когда нужно быстро проверить концепцию.
Roo Code — это расширение для VS Code и Cursor, как целая команда ИИ-агентов прямо в вашем редакторе. Он анализирует весь проект, предлагает мульти-шаговые решения, ускоряет редактирование в 10 раз. Поддерживает разные модели ИИ (Anthropic, OpenAI), есть инструменты для автоматизации задач. Хорош для сложных проектов, где нужен глубокий контекст — не просто автокомплит, а умный помощник.
Kilo Code — открытый ИИ-агент в виде расширения для VS Code, JetBrains и Cursor. Генерирует код, автоматизирует задачи, предлагает рефакторинг. Есть система инструментов для взаимодействия с окружением (безопасно, с контролем). Бесплатный, с опцией кастомизации. Идеален для тех, кто предпочитает open-source и хочет интегрировать в свой workflow без лишних зависимостей.
В общем, выбор зависит от вашего стиля: если любите браузер — Bolt или Lovable; если вглубь кода — Cursor, Harvi, Roo или Kilo. Я пробовал пару из них на пет-проектах, и реально сэкономил время. Что вы думаете? Пользовались кем-то из списка? Делитесь в комментах, может, вместе разберёмся, какой подойдёт под разные языки или фреймворки. Буду рад обсуждению! 🚀
Делимся цифрами Next Fest: смотрите динамику и делайте выводы для своей игры
Я и еще два человека решили открыть данные игры на время Steam Next Fest. Мы отслеживаем:
1. Количество вишлистов
2. Количество уникальных игроков (сколько людей реально запустило игру)
3. Количество показов банера демо версии
4. Пик игроков за день
Интересно посмотреть на динамику этих показателей - как отработают алгоритмы Steam во время фестиваля. Если интересно мониторить, то вот ссылка на Google Sheets. Мы решили сделать для себя, но вдруг кому будет полезно.
Через пару дней после фестиваля документ закроем скорее всего.
П.С. На графике выводятся не абсолютные значения, а разница день ко дню.