Technical Specification · v2.0

🧬 Tycoon-симуляция
замкнутой ИИ-экосистемы

Интерактивная браузерная игра в стиле Transport Tycoon / SimCity для моделирования строительства, запуска и выхода на самоподдерживаемость замкнутой ИИ-экосистемы Фонда Изобилия.

Автопилот ✈️ · 30.07.2026 · ziggyserver.ru/gameplan

🎯 1. Концепция и цели

Игра моделирует полный цикл: выбор участка → закупка оборудования → строительство → запуск → выход на самоподдерживаемость → экспансия. Игрок выступает в роли основателя Фонда Изобилия. Каждое здание имеет стоимость, энергопотребление/генерацию, износ и требует обслуживания.

🎮 Жанр

Экономическая стратегия / Tycoon в реальном времени. Вид сверху на сеточной карте. Пиксельная эстетика в духе Transport Tycoon Deluxe.

📐 Масштаб

Карта 30×20 клеток. 1 клетка = 1 гектар. 1 игровой день = ~1 секунда реального времени (на скорости 1×). Ускорение до 60×.

🎯 Цель

Построить самоподдерживающуюся экосистему: R ≥ 0.90, энергобаланс положительный, ≥2 роботов, контур замкнут. Получить Вердикт-отчёт.

🏗️ 2. Арсенал: здания и объекты

Игрок размещает здания на сетке. Каждое занимает N×M клеток, имеет стоимость постройки, срок строительства, потребление/генерацию ресурсов, износ и срок службы.

ЗданиеРазмерСтоимостьСтроительствоЭнергияСрок службыРабочих
☀️ Солнечное поле 2×2 ₽120M / 4 га 6 мес +1 МВт 25 лет 2 чел (стр.), 0 (экспл.)
🌬️ Ветротурбина 1×1 ₽45M 3 мес +0.5 МВт 20 лет 1 чел (стр.)
🔋 Накопитель (Li-ion) 1×1 ₽80M 3 мес ±5 МВт·ч ёмкость 10 лет 1 чел (стр.)
⛏️ Добывающий комплекс 2×2 ₽200M 9 мес −2 МВт 15 лет 8 чел (стр.), 4 (экспл.)
🏭 Завод-репликатор 3×2 ₽500M 12 мес −5 МВт 20 лет 15 чел (стр.), 6 (экспл.)
♻️ Рециклинг-центр 2×2 ₽350M 9 мес −3 МВт 15 лет 10 чел (стр.), 3 (экспл.)
🤖 Робо-депо 1×1 ₽150M 4 мес −0.5 МВт 15 лет 5 чел (стр.), 1 (экспл.)
📦 Распределительный центр 1×1 ₽60M 3 мес −0.3 МВт 20 лет 3 чел (стр.)
🏗️ Строительная база 1×1 ₽30M 2 мес −0.2 МВт 30 лет
🔌 ЛЭП (линия) 1×1 ₽5M 1 мес 40 лет 2 чел
🛣️ Дорога 1×1 ₽3M 1 мес 25 лет 2 чел

📊 3. Ресурсы и потоки

⚡ Энергия (МВт·ч)

Генерируется солнцем/ветром. Потребляется всеми зданиями. Избыток → в накопители. Дефицит → отключение потребителей по приоритету. Сезонность: зима −40% генерации.

⛏️ Сырьё (тонны)

6 типов: Fe, Al, Cu, полимеры, керамика, электроника. Добывается комплексом или возвращается рециклингом. Склад неограничен (условно).

📦 Продукция (единицы)

Завод производит: детали роботов, потребительские товары. Измеряется в условных единицах. Распределяется через центр.

🗑️ Отходы (тонны)

Производственный брак + износ + потреблённые товары. Направляются в рециклинг. Непереработанное → потеря массы системы.

💰 Бюджет (₽)

Стартовый капитал. Расходы: стройка, зарплаты, обслуживание. Доходы (фаза 2+): продажа избытка энергии в сеть.

👷 Персонал (чел·ч)

Строители — временные бригады. Операторы — постоянный штат. С фазой 2+ персонал сокращается (замена роботами).

Приоритеты при дефиците энергии

ПриоритетПотребительДействие при дефиците
P0🤖 Робо-депо (зарядка)Не отключается никогда
P1🏭 Завод (активное производство)Снижение мощности до 50%
P2♻️ РециклингСнижение мощности до 30%
P3⛏️ ДобычаПолная остановка
P4📦 РаспределениеПолная остановка

⚙️ 4. Игровые механики

4.1 Амортизация и износ

Каждое здание имеет срок службы. Каждый месяц — +1 к счётчику износа. При 80% срока — эффективность падает на 20%. При 100% — здание выходит из строя. Ремонт роботами продлевает срок на +10%.

4.2 Роботы

Производятся заводом (1 робот = 50 ед. продукции + 0.15 т сырья). Базируются в депо. Каждый робот: обслуживает ≤3 здания, имеет MTBF (5 000 ч по умолчанию). Может ремонтировать других роботов. Минимальный парк для замыкания — 2.

4.3 Строительство

Размещение здания на карте → spent из бюджета → прогресс-бар (месяцы) → готово. Строительная база ускоряет стройку на 30% в радиусе 5 клеток. Дороги нужны для связи.

4.4 Рециклинг и R

R не параметр, R — результат. Вычисляется каждый месяц: R = recovered / input. Зависит от: мощности рециклинг-центра, его износа, числа циклов для каждого материала, доступной энергии. Деградация: R_mat = sepEff × exp(−λ × cycles).

4.5 Bootstrap (фазы)

Фаза 0: Ручной старт

Всё строят люди. Роботов нет. Энергия только от станции. Персонал максимальный. Цель: построить завод + депо.

Фаза 1: Первые роботы

Завод произвёл ≥2 роботов. Часть обслуживания автоматизирована. Персонал сокращается. Цель: R > 0.85, энергобаланс +.

Фаза 2: Контур замкнут

≥2 здоровых робота, R ≥ 0.90, энергия избыточна. Человек — только наблюдатель. Завод может копировать себя.

4.6 Вердикт (финальный отчёт)

По достижении Фазы 2 (или банкротства/коллапса) генерируется отчёт:

МетрикаОписание
⏱️ Общее времяСколько месяцев заняло строительство до замыкания контура
💰 Общий бюджетПотрачено ₽ всего (стройка + зарплаты + обслуживание)
👷 Человеко-часыСуммарно: строители × месяцы + операторы × месяцы
⚡ Пиковая мощностьМаксимальная генерация (МВт)
♻️ R финальныйКПД переработки на момент замыкания
🤖 Роботов произведеноСколько всего роботов выпустил завод
📦 Продукции розданоСколько единиц товаров ушло населению
💀 Причина остановаУспех / банкротство / коллапс энергии / гибель роботов
🏆 Итоговый вердикт«Система жизнеспособна» / «Требует доработок» / «Провал»

🖥️ 5. Интерфейс (wireframe)

┌─────────────────────────────────────────────────────────┐
│ 💰 ₽2 450M │ ⚡ +3.2 / −2.8 МВт │ ♻️ R=0.93 │ 🤖 4/3 │ ⏱️ Март 2028 │
├───────────────┬─────────────────────────────────────────┤
│ 🏗️ АРСЕНАЛ   │                                         │
│               │         🗺️ КАРТА 30×20                 │
│ ☀️ Поле       │    ☀️☀️  🏭🏭🏭  ♻️♻️                  │
│ 🌬️ Турбина   │    ☀️☀️  🏭🏭🏭  ♻️♻️                  │
│ 🔋 Накоп.     │       🛣️🛣️🛣️🛣️🛣️                    │
│ ⛏️ Добыча     │          🔋  🤖                          │
│ 🏭 Завод      │          ⛏️⛏️                           │
│ ♻️ Рециклинг  │          ⛏️⛏️  📦                       │
│ 🤖 Депо       │                                         │
│ 📦 Центр      │                                         │
│ 🏗️ Стройбаза  │                                         │
│ 🛣️ Дорога     │                                         │
│ 🔌 ЛЭП        │                                         │
├───────────────┴─────────────────────────────────────────┤
│ 📋 ЛОГ: [Март 2028] Завод произвёл робота #3           │
│ [Апр 2028] Робот #1 отремонтировал солнечное поле      │
│ [Май 2028] ⚠️ R упал до 0.87 — проверьте рециклинг!    │
└─────────────────────────────────────────────────────────┘

🔧 6. Техническая архитектура

🍦 Frontend

Один HTML-файл. Canvas 2D для карты. DOM для UI-панелей. Чистый JavaScript. Никаких фреймворков. Шрифт: Press Start 2P (CDN) для ретро-стиля.

⚙️ Движок

Game loop: 60 FPS рендер + 1 игровой тик/сек. ECS-подход (Entity-Component): здания = entities, ресурсы = global state. Событийная система для лога.

🗺️ Карта

Tile-based: 30×20 клеток × 32px = 960×640 px. Слои: земля → дороги/ЛЭП → здания → анимации. Перетаскивание (drag) и зум колёсиком.

💾 Сохранения

localStorage: текущее состояние игры. Экспорт/импорт JSON. Автосохранение каждые 60 игровых дней.

Стек технологий

index.html
├── <style>  — все стили (тёмная тема, Transport Tycoon palette)
├── <canvas id="map"> — игровая карта
├── <div id="hud"> — статус-бар
├── <div id="arsenal"> — панель зданий
├── <div id="log"> — событийный лог
├── <div id="report"> — модалка финального отчёта
└── <script>
    ├── CONSTANTS — все таблицы (здания, ресурсы, цены)
    ├── GameState — глобальное состояние
    ├── Map — рендер карты (Canvas 2D)
    ├── Buildings — логика зданий
    ├── Resources — учёт ресурсов
    ├── Simulation — игровой цикл (тик)
    ├── UI — панели, логи, отчёты
    └── main() — инициализация и game loop
  

Производительность

Цель: 60 FPS на среднем ноутбуке. Максимум 200 зданий на карте. Оптимизация: рендер только видимых тайлов, dirty-флаги для перерисовки.

📋 7. Декомпозиция задач

Разбито на 4 фазы разработки. Каждая задача — атомарна и тестируема.

Фаза 1: Ядро и карта P0 — фундамент

T1.1Инициализация проекта~1 ч
1.1aСоздать index.html с базовой структурой (canvas + панели)
1.1bОпределить все константы: размеры карты, тайлы, здания, цены, ресурсы
1.1cПодключить ретро-шрифт (Press Start 2P) через CSS
T1.2Рендер карты~2 ч
1.2aОтрисовка сетки 30×20, тайлы 32×32 px, ground + grid
1.2bСистема слоёв: terrain → roads → buildings → overlays
1.2cDrag-to-scroll и zoom (колесо мыши)
1.2dПодсветка клетки при наведении курсора
T1.3Игровой цикл и время~1.5 ч
1.3aGame loop: 60 FPS рендер + 1 тик/сек симуляция
1.3bИгровое время: 1 сек = 1 день. Ускорение: 1×, 5×, 15×, 60×
1.3cКалендарь: месяцы, сезоны (влияние на солнечную генерацию)

Фаза 2: Здания и ресурсы P1 — геймплей

T2.1Панель арсенала~1.5 ч
2.1aБоковая панель со списком зданий (иконка + название + цена)
2.1bКлик по зданию в арсенале → режим размещения на карте
2.1cВалидация: можно ли разместить (нет коллизий, хватает денег)
2.1dОтображение радиуса/зоны влияния при размещении
T2.2Логика зданий~2.5 ч
2.2aКласс/объект Building: type, pos, size, age, wear, efficiency, powered
2.2bКаждый тип здания — свой tick(): генерация/потребление ресурсов
2.2cИзнос: каждый месяц wear += 1/shelfLife. При wear>0.8 — штраф эффективности −20%
2.2dРемонт: робот снижает wear на 5% за визит (не чаще раза в 3 мес)
2.2eИндикаторы на здании: ⚠ (износ > 0.8), ✓ (работает), ✗ (нет энергии)
T2.3Учёт ресурсов~2 ч
2.3aГлобальный пул ресурсов: energy, materials[6], products, waste, money, personnel
2.3bКаждый тик: агрегация со всех зданий → net-баланс
2.3cПриоритеты при дефиците энергии (P0–P4)
2.3dR-вычисление: recovered / (recovered + lost) каждый месяц

Фаза 3: Роботы и bootstrap P1 — ядро геймплея

T3.1Роботы: производство и жизненный цикл~2 ч
3.1aПроизводство робота: завод + 50 ед. продукции + 0.15 т сырья → робот
3.1bКаждый робот: id, health, age, mtbf, assignedTo[], status (idle/working/repairing/dead)
3.1cОтказы: Weibull-распределение, P(fail)=1−exp(−(age/MTBF)^2.5)
3.1dРемонт роботов: здоровый чинит деградировавшего (+15% здоровья)
T3.2Bootstrap-фазы и замыкание контура~1 ч
3.2aДетект фаз: 0 (ручной) → 1 (≥2 робота) → 2 (R≥0.90, энергия+, ≥2 здоровых)
3.2bВизуальный индикатор фазы (цвет рамки карты)
3.2cСокращение персонала с ростом фазы (роботы заменяют людей)
T3.3Строительство и обслуживание~1.5 ч
3.3aПрогресс-бар строительства над зданием
3.3bСтроительная база: +30% скорости стройки в радиусе 5 клеток
3.3cОбслуживание роботами: назначение на здания, патрулирование

Фаза 4: Отчёт и полировка P2 — UX

T4.1HUD и индикаторы~1.5 ч
4.1aВерхняя панель: бюджет, энергобаланс, R, роботы, дата
4.1bЦветовые индикаторы: зелёный/жёлтый/красный для каждого показателя
4.1cИнфо-панель при клике на здание: характеристики, износ, статус
T4.2Событийный лог~1 ч
4.2aНижняя панель с прокручиваемым логом (последние 50 событий)
4.2bТипы событий: info (строительство), good (контур замкнут), warn (износ), crit (отказ)
4.2cЦветовое кодирование и фильтрация по типу
T4.3Финальный отчёт (Вердикт)~1.5 ч
4.3aАвтоматическая генерация при Фазе 2 (или коллапсе)
4.3bМодальное окно с таблицей: время, деньги, чел·ч, R, роботы, продукция
4.3cИтоговый вердикт с рекомендациями («Система жизнеспособна» / «Увеличьте мощность рециклинга»)
4.3dКнопка «Экспорт отчёта» (JSON / печать)
T4.4Графика и анимации~2 ч
4.4aПиксель-арт для каждого здания (32×32 спрайты в стиле TTD)
4.4bАнимации: дым из завода, вращение турбины, роботы-точки на карте
4.4cЧастицы: искры при строительстве, зелёные '+' при ремонте
T4.5Тестирование и баланс~1 ч
4.5aПрогон 3 сценариев: оптимистичный, реалистичный, хардкор
4.5bБалансировка стоимости зданий и времени строительства
4.5cПроверка edge-cases: все роботы мертвы, энергия в ноль, банкротство

⏱️ 8. Оценка трудозатрат

ФазаЗадачЧасовСодержание
Фаза 1: Ядро и карта3~4.5HTML-структура, canvas-рендер, game loop, время
Фаза 2: Здания и ресурсы3~6Арсенал, размещение, логика зданий, ресурсы
Фаза 3: Роботы и bootstrap3~4.5Роботы (производство/отказы/ремонт), фазы
Фаза 4: Отчёт и полировка5~7HUD, лог, вердикт-отчёт, графика, баланс
ИТОГО14~22 чОдин HTML-файл, ~3000 строк кода