ИИ агент для игр
Скинь код шейдера, опиши механику или спроси про архитектуру — агент поможет с любым аспектом gamedev
3 ч/день
экономит на рутине
Unity/Unreal
и другие движки
10×
быстрее прототипирование
Знакомо?
🌀
Шейдеры — чёрная магия
HLSL, GLSL, Shader Graph — документация на 500 страниц. Нужен простой эффект свечения, а ты уже 2 часа разбираешь UV-координаты.
⚖️
Баланс механик — бесконечные правки
Урон мечей, скорость врагов, таблица лута. Изменил одну цифру — сломалось всё остальное. Нет формулы, только ощущения.
🏗️
Архитектура кода — спагетти
Начал с простого прототипа, дорос до 50 скриптов. Всё ссылается на всё. Добавить новую фичу — рефакторить 3 дня.
📝
GDD пишется дольше, чем прототип
Дизайн-документ на 40 страниц, половина устарела к концу первого спринта. Команда читает разные версии.
Реальные кейсы
1
Система лута для RPG на Unity
Инди-разработчик Кирилл делал roguelike на Unity. Система дропа предметов не давала интересного разнообразия — лут был случайным и бессмысленным.
Настройка
👤
Пользователь
Делаю roguelike на Unity, C#. Сейчас лут генерируется через Random.Range — предметы выпадают случайно и бессмысленно. Хочу weighted loot table с учётом прогресса игрока, редкости и синергии с текущим билдом. Вот текущий код:
public Item GenerateLoot(Enemy enemy) {
int index = Random.Range(0, allItems.Length);
return allItems[index];
}
🤖
Агент
🎲 Анализ текущей системы:
Random.Range без весов = равная вероятность меча и легендарного артефакта. Игрок быстро теряет интерес.
Предлагаю архитектуру:
1. LootTable — ScriptableObject с весами по редкости (Common 60%, Uncommon 25%, Rare 12%, Legendary 3%)
2. ProgressModifier — множитель весов от этажа и уровня игрока
3. SynergyBonus — +15% шанс на предметы, синергирующие с текущим билдом
4. PityTimer — гарантия редкого предмета каждые N убийств
Начать с LootTable ScriptableObject?
Ежедневное использование
👤
Пользователь
Да, давай LootTable + PityTimer. Хочу чтобы на 5 этаже шанс Legendary был 8%, а pity — каждые 30 убийств без Rare+.
🤖
Агент
✅ Два скрипта готовы:
LootTable.cs (ScriptableObject):
[CreateAssetMenu(menuName = "Loot/LootTable")]
public class LootTable : ScriptableObject {
public LootEntry[] entries;
public AnimationCurve rarityByFloor; // кривая: этаж → множитель
public float synergyBonus = 0.15f;
}
LootGenerator.cs:
• Weighted random с учётом этажа (5 этаж: Legendary 3% × 2.7 = 8.1%)
• PityTimer: счётчик сбрасывается при дропе Rare+, на 30 принудительно выдаёт Rare
• SynergyCheck: анализирует теги текущего инвентаря
Полный код — 87 строк. Скинуть?
2
Шейдер растворения для Unreal Engine
Художник по эффектам Лена делала визуал смерти врагов в UE5. Нужен эффект dissolve — враг распадается на частицы. Документация по Material Editor запутанная.
Настройка
👤
Пользователь
Unreal Engine 5, нужен dissolve-шейдер для смерти врагов. Враг должен распадаться снизу вверх, с оранжевым свечением на границе растворения. Делаю в Material Editor, но не могу связать ноды правильно.
🤖
Агент
🎨 Dissolve-шейдер — пошаговая сборка:
Нужные ноды:
• Noise Texture (для паттерна растворения)
• World Position Z (для направления снизу-вверх)
• Scalar Parameter "DissolveAmount" (0 = цел, 1 = растворён)
• Emissive для свечения границы
Схема:
1. WorldPosition.Z нормализуешь через InverseLerp(MinZ, MaxZ)
2. Смешиваешь с Noise через Multiply
3. Сравниваешь с DissolveAmount через Step
4. Разница |noise - dissolve| < 0.05 → оранжевый Emissive (граница)
5. Подключаешь к Opacity Mask
Скинуть скриншот нодов или HLSL-код Custom Expression?
Ежедневное использование
👤
Пользователь
Лучше HLSL Custom Expression — так проще контролировать. И как анимировать DissolveAmount из Blueprint?
🤖
Агент
✅ Два элемента готовы:
Custom HLSL Expression:
float noise = PerlinNoise3D(WorldPos * NoiseScale);
float heightMask = saturate((WorldPos.z - MinZ) / (MaxZ - MinZ));
float dissolve = noise * 0.7 + heightMask * 0.3;
float edge = smoothstep(Amount - 0.05, Amount, dissolve)
- smoothstep(Amount, Amount + 0.05, dissolve);
EmissiveColor = edge * float3(1.0, 0.4, 0.0) * 15.0;
OpacityMask = step(Amount, dissolve);
Blueprint (Timeline → Material):
• Timeline: 0→1 за 1.5 секунды, кривая EaseIn
• Create Dynamic Material Instance на BeginPlay
• Timeline Output → Set Scalar Parameter "DissolveAmount"
• По завершении — Destroy Actor
15.0 в Emissive — интенсивность свечения, регулируй по вкусу.
3
GDD и балансировка tower defense
Геймдизайнер Павел работал над мобильной tower defense. Баланс 24 башен и 18 типов врагов — бесконечные таблицы в Excel. Агент помог структурировать формулы.
Настройка
👤
Пользователь
Мобильная tower defense, 24 башни, 18 типов врагов, 50 волн. Баланс — полный хаос: одни башни бесполезны, другие ломают игру. Нужна система формул для урона, стоимости и масштабирования. Сейчас всё вручную в Excel.
🤖
Агент
📊 Проблема: ручной баланс не масштабируется.
Предлагаю формульную систему:
1. DPS-стоимость: каждая башня должна давать ~X DPS на 100 монет потраченных. Дорогие башни эффективнее на 10-15%, чтобы был смысл копить
2. Масштабирование врагов: HP = BaseHP × 1.12^волна (12% рост за волну = удвоение каждые 6 волн)
3. Типизация урона: матрица 4×4 (физический, огонь, лёд, молния) × (лёгкий, тяжёлый, летающий, босс) с множителями 0.5/1.0/1.5
4. Gold curve: gold_per_wave = 80 + wave × 15 (покупка 1 новой башни каждые 3-4 волны)
Скинь текущую таблицу урона — покажу где дисбаланс.
Ежедневное использование
👤
Пользователь
Вот 5 башен для примера: Лучник (dmg 10, rate 1.0, cost 100), Маг (dmg 25, rate 0.5, cost 200), Катапульта (dmg 40, rate 0.3, cost 350), Лёд (dmg 5, rate 0.8, slow 30%, cost 150), Тесла (dmg 15, rate 0.7, chain 3, cost 250).
🤖
Агент
📋 Анализ DPS/стоимость:
• Лучник: 10 DPS / 100 gold = 0.100 DPS/gold
• Маг: 12.5 DPS / 200 gold = 0.063 DPS/gold — на 37% хуже Лучника
• Катапульта: 12 DPS / 350 gold = 0.034 DPS/gold — катастрофа, никто не купит
• Лёд: 4 DPS + slow / 150 gold — utility, считаем отдельно
• Тесла: 10.5 × 3 цели = 31.5 effective DPS / 250 gold = 0.126 DPS/gold — лучшая башня
Проблемы:
1. Тесла доминирует — спам Теслами выигрывает любую карту
2. Катапульта бесполезна — DPS/gold в 3 раза хуже Лучника
3. Маг слишком дорогой для своего урона
Исправления:
• Катапульта: AOE радиус 2.5 → effective DPS ×4-6 при скоплениях, тогда 0.034 × 5 = 0.17 — сильна на узких тропах
• Маг: rate 0.5 → 0.7 (17.5 DPS, 0.088 DPS/gold) + магический урон ×1.5 к тяжёлым
• Тесла: chain 3 → 2, стоимость 250 → 300
Вопросы про агента и gamedev
Агент работает с Unity, Unreal или другими движками?
Со всеми. Unity (C#), Unreal Engine (C++, Blueprints), Godot (GDScript), Phaser (JS), Love2D (Lua) и другие. Копируешь код в чат — агент разбирается.
Может ли агент писать шейдеры?
Да — HLSL, GLSL, Shader Graph ноды (описание), compute shaders. Объясняет логику, исправляет ошибки, оптимизирует. Не генерирует визуально в редакторе, но даёт код и пошаговые инструкции.
Поможет с геймдизайном, не только с кодом?
Да. Структура GDD, формулы баланса, дизайн уровней, диалоги NPC, экономика, монетизация, UX-анализ. Любой аспект gamedev кроме рисования графики.
Я новичок, стоит ли пробовать?
Особенно стоит. Агент объяснит концепцию простым языком, поможет выбрать движок под задачу, проведёт через первый проект пошагово. Вместо 100 часов туториалов — конкретные ответы на твои вопросы.