Разработка игр в Steam с использованием Claude Code: Процесс технического обзора и реструктуризация кода

Техническая интеграция со Steam
Разработчик использовал Claude Code для выполнения технических требований Steam. Для интеграции Steamworks SDK, настройки депозита, загрузки сборки и настройки сохранений в Steam Cloud он делал скриншоты необходимого чек-листа из магазина, вставлял их в чат и спрашивал "как это сделать?". Claude генерировал пошаговые инструкции, которые затем перемещались в папку проекта. Разработчик говорил Claude Code "следуй этому и выполни работу", и он автоматически загружал файлы сборки Steam, сопоставлял идентификаторы приложений магазина и генерировал исполняемые файлы для развёртывания.
Трудности с требованиями к изображениям
Магазину Steam требуются капсульные изображения, скриншоты и баннеры с идеально точными спецификациями. Отклонение даже на 1 пиксель приводит к отказу. Разработчик загрузил изображение для DLC и несколько раз получал отказ, в итоге принудительно изменил размер с помощью ImageMagick, чтобы его приняли. Эта некодовая проблема заняла больше всего времени в процессе запуска.
Реструктуризация кода для DLC и локализации
При добавлении двух DLC и поддержки 7 языков (корейский, английский, японский, китайский, русский, испанский, бразильский португальский) существующая структура кода не справлялась. Разработчик отметил, что код Claude содержал жёстко заданные элементы — каждый раз, когда он добавлял нового персонажа, карту, навык или языковую поддержку, он чувствовал, что "это снова жёсткое кодирование".
Claude предложил два подхода к реструктуризации: JSON и CSV. Разработчик выбрал JSON, так как был с ним знаком, и преобразовал все игровые данные в эту структуру. В процессе Claude Code сопротивлялся работе, предлагая "это не нужно сейчас, давайте сделаем позже", особенно при добавлении новых персонажей.
Реализация локализации
Перевод 291 ключа на 7 языков был выполнен Claude, который управлял всем — от структуры файлов локализации до самих переводов. Разработчик признал, что переводы могут быть не идеальными, но отметил, что поддержка 7 языков в таком масштабе была бы невозможна без ИИ для разработчика-одиночки.
Проверка и тестирование
После реструктуризации самой длинной частью была проверка, особенно валидация покупки DLC. Разработчик поручил Claude реализовать проверку, а затем лично несколько раз протестировал процесс покупки, чтобы убедиться, что персонажи правильно появляются при покупке DLC.
Игра прошла техническую проверку Steam с первой попытки. Разработчик пришёл к выводу, что части, решаемые кодом, с помощью ИИ оказались удивительно быстрыми, а части, требующие человеческого взгляда (например, работа с изображениями), заняли больше всего времени.
📖 Read the full source: r/ClaudeAI
👀 Смотрите также

Разбивка затрат на ИИ-агента: $12 в месяц с локальными моделями и облачными API.
Разработчик запускал ИИ-агента в течение месяца, используя Mac Mini + Ollama для локальных моделей и облачные API, общая стоимость составила $12, при этом 80% использования локально стоило $0, а 20% облачного использования обошлось примерно в $12. Один цикл повторных попыток потребил $4.80 за 11 минут, что привело к внедрению механизма автоматического отключения.
Hermes против OpenClaw: бенчмарк на реальной работе закончился уроком о памяти
Пользователь сравнил Hermes и OpenClaw на реальных задачах, обнаружив схожую производительность, но явная память OpenClaw победила после того, как Hermes превратил случайный комплимент в ошибочное правило.

OpenClaw + Birdweather: Получение данных о птицах для создания карточек в стиле Pokémon
Разработчик использует OpenClaw для извлечения данных о птицах из API Birdweather каждый час и создания коллекционных карточек в стиле Pokémon для каждого вида. Увлекательный проект, знакомящий детей с природой.

Использование Claude в качестве наставника по обучению с контекстом документации
Разработчик делится методом использования Claude в качестве инструмента обучения, загружая документацию по инструментам в его контекст и используя специальный промпт для создания наставника, основанного на задачах. Этот подход позволяет отказаться от традиционных курсов и руководств в пользу практического обучения с немедленной обратной связью.