Laboratory & Shop Systems

23 июля 2026 г.
Разработчики:
wratixor-y-avatar Wratixor
The grid is neon, the cards are fresh, but the digital meat grinder feels exactly the same. (c)

EN

Hey everyone! Wratixor here with a massive update. Two brand-new systems are now live: the Laboratory and the Shop — plus a complete overhaul of how your units interact with the Roguelike mode.

🧬 Laboratory

The Laboratory is your new genetic playground. It features six specialized banks, each with unique mechanics:

  • 🧬 Mutation — Select 1–3 units. Each parent produces one mutated offspring (15% genome mutation rate). Parents are preserved. Cooldown: 12 hours.
  • ❤️ Crossover — Select 2–6 units. Random pairs are formed, each pair produces one child (crossover + 5% mutation). Cooldown: 12 hours.
  • ✂️ Chimerization — Select 1–6 units. Produces ceil(N/2) chimera offspring, each assembled from 6 randomly chosen parent genome segments. Cooldown: 12 hours.
  • 📊 Calibration — Select exactly 6 units. Runs calibration battles against opponents from -250 to +250 ELO in 50-point steps. Complete battle logs are saved. Cooldown: 6 hours.
  • 🎲 Random — Generates a completely random unit with ELO 1200. Has 3 charges that regenerate every 6 hours. No unit selection required.
  • ♻️ Recycle — Select 1–6 units to permanently delete them and earn GC equal to each unit's total wins. No cooldown.

Drag-and-drop selection: All banks display a visual 2×3 slot grid (🧬 occupied, ➖ empty). Drag units from your free pool or right-click to quick-select mutation, crossover, or chimerization banks.

Free Pool (18 slots): Holds up to 18 units outside of teams. Can be filled via Random bank, mutations, crossovers, and chimerizations.

Team Management:

  • Roguelike team — View-only in Lab. Your team is automatically saved after each roguelike run finalization. It serves as your starting roster for new runs.
  • Campaign team — Reorder-only (drag-and-drop within the team). No new units can be added.
  • Arena team — Full drag-and-drop with instant server-side saving.

MTG-style tooltips: Hover over any unit card to see detailed stats, skills, ultimate, and meta ranking.

Unit highlighting: Units selected for a bank are highlighted with that bank's color across the entire interface.

🛒 Shop

The Shop is your source for time-saving boosters. Spend your hard-earned GC to buy crate packs:

  • 250 GC Crate — Uncommon, Rare, Epic (70/25/5 weight)
  • 500 GC Crate — Rare, Epic, Legendary (70/25/5 weight)
  • 750 GC Crate — Epic, Legendary, Mythic (70/25/5 weight)
  • 1000 GC Crate — Legendary, Mythic, Transcendent (70/25/5 weight)

Each crate contains 3 boosters. Every crate has a pity counter — after 20 openings without the target rarity, you're guaranteed one.

Booster types:

  • % Speedups — Reduce cooldown by a percentage (5% Uncommon → 50% Transcendent)
  • 🕒 Fixed Speedups — Reduce cooldown by fixed time (20 min Uncommon → 6 hours Transcendent)

Boosters are specific to each bank type (mutation, crossover, chimerization, calibration, random).

Bulk purchase: Buy 10 crates at once with a 10% discount.

Inventory: Manage all your boosters in a dedicated modal, sorted by rarity. Apply them directly to banks in the Lab.

🎮 Roguelike Integration

New candidate selection: When starting a roguelike run, your 12 candidates are now:

  1. Your Roguelike team (from the Lab/previous run finalization)
  2. Units from your Lab free pool
  3. Random units (ELO 1175–1225) from the database

This means you can strategically breed units in the Lab and use them directly in your next roguelike run!

Automatic team saving: After selecting your 6 units at the end of a run stage, your team is automatically saved as your Roguelike team.

Isolated pools: Roguelike units no longer contaminate your Lab pool. Lab pool only grows through Lab operations.

💻 Admin Console

Admins now have an interactive command-line console with commands:

text

promote <login> — Make a user admin
demote <login> — Remove admin rights
makeroot <login> — Grant root access (root only)
addgc <amount> [login] — Add GC to any user
refund <order_id> — Cancel & refund T‑Bank payment
create <code> -a|-p — Create admin/promo codes
rights — Check your permissions

Plus three new cleanup buttons:

  • Delete orphan units — Remove units not assigned to any team/pool
  • Reset evolution — Clear all generations & battles
  • Clean old battles — Delete battles older than 30 days

🔧 Technical Fixes

  • Fixed Lab inventory not displaying due to middleware routing issue
  • Fixed Random bank cooldown & booster interaction logic
  • Fixed deployment pipeline (git merge conflicts, venv preservation, torch CPU build)
  • Nginx configuration updated for new Lab & Shop routes
  • Server memory limits adjusted for PyTorch (800M soft, 1G hard)
  • All roguelike unit leakage to Lab pool eliminated

Jump in, experiment with the banks, open some crates, and build your ultimate team!

RU

Всем привет! Wratixor на связи с крупным обновлением. Две новые системы запущены: Лаборатория и Магазин, плюс полная переработка взаимодействия юнитов с режимом Рогалик.

🧬 Лаборатория

Лаборатория — ваша новая генетическая площадка. Шесть специализированных банок с уникальной механикой:

  • 🧬 Мутация — Выберите 1–3 юнитов. Каждый родитель даёт одного мутировавшего потомка (15% мутаций генома). Родители сохраняются. Откат: 12 часов.
  • ❤️ Скрещивание — Выберите 2–6 юнитов. Формируются случайные пары, каждая даёт одного потомка (кроссовер + 5% мутаций). Откат: 12 часов.
  • ✂️ Химеризация — Выберите 1–6 юнитов. Создаётся ceil(N/2) потомков-химер, каждый собран из 6 случайно выбранных сегментов геномов родителей. Откат: 12 часов.
  • 📊 Калибровка — Выберите ровно 6 юнитов. Проводит серию калибровочных боёв против противников с ELO от -250 до +250 с шагом 50. Все логи сохраняются. Откат: 6 часов.
  • 🎲 Случайный — Генерирует полностью случайного юнита с ELO 1200. Имеет 3 заряда, восстанавливающихся каждые 6 часов. Выбор не требуется.
  • ♻️ Утилизация — Выберите 1–6 юнитов для безвозвратного удаления и получите GC, равные количеству побед каждого юнита. Без отката.

Drag-and-drop выбор: Все банки отображают сетку 2×3 (🧬 занято, ➖ свободно). Перетаскивайте юнитов из пула или используйте правый клик для быстрого выбора мутации, скрещивания или химеризации.

Свободный пул (18 слотов): Хранит до 18 юнитов вне команд. Пополняется через банку Random, мутации, скрещивания и химеризации.

Управление командами:

  • Команда рогалика — Только просмотр в Лаборатории. Автоматически сохраняется после финализации забега. Используется как стартовый состав для новых забегов.
  • Команда кампании — Только перестановка (drag-and-drop внутри команды). Новых юнитов добавить нельзя.
  • Команда арены — Полный drag-and-drop с мгновенным сохранением на сервере.

MTG-подсказки: Наведите на карточку юнита, чтобы увидеть детальную статистику, навыки, ульту и мета-рейтинг.

Подсветка юнитов: Юниты, выбранные для банки, подсвечиваются цветом этой банки во всём интерфейсе.

🛒 Магазин

Магазин — источник ускорителей. Тратьте заработанные GC на ящики:

  • Ящик 250 GC — Необычные, Редкие, Эпические (70/25/5)
  • Ящик 500 GC — Редкие, Эпические, Легендарные (70/25/5)
  • Ящик 750 GC — Эпические, Легендарные, Мифические (70/25/5)
  • Ящик 1000 GC — Легендарные, Мифические, Трансцендентные (70/25/5)

Каждый ящик содержит 3 бустера. Пити-система: после 20 открытий без целевой редкости вы гарантированно получаете её.

Типы ускорителей:

  • % Ускорители — Сокращают откат на процент (5% Необычный → 50% Трансцендентный)
  • 🕒 Фиксированные — Сокращают на точное время (20 мин Необычный → 6 часов Трансцендентный)

Бустеры привязаны к типу банки (мутация, скрещивание, химеризация, калибровка, случайный).

Оптовая покупка: 10 ящиков сразу со скидкой 10%.

Инвентарь: Управляйте ускорителями в модальном окне, отсортированными по редкости. Применяйте напрямую к банкам в Лаборатории.

🎮 Интеграция с Рогаликом

Новый подбор кандидатов: При старте рогалика 12 кандидатов формируются так:

  1. Ваша команда рогалика (из Лаборатории / прошлой финализации)
  2. Юниты из свободного пула Лаборатории
  3. Случайные юниты (ELO 1175–1225) из базы данных

Теперь вы можете стратегически разводить юнитов в Лаборатории и использовать их в следующем забеге!

Автосохранение команды: После выбора 6 юнитов в конце этапа забега команда автоматически сохраняется как команда рогалика.

Изолированные пулы: Юниты рогалика больше не загрязняют пул Лаборатории. Пул Лаборатории растёт только через операции в Лаборатории.

💻 Консоль администратора

Администраторы получили интерактивную консоль с командами:

text

promote <login> — Сделать пользователя админом
demote <login> — Снять права админа
makeroot <login> — Дать права root (только root)
addgc <amount> [login] — Начислить GC любому игроку
refund <order_id> — Отменить и вернуть платёж Т‑Банка
create <code> -a|-p — Создать админ/промо коды
rights — Проверить свои права

Плюс три кнопки очистки:

  • Удалить лишних юнитов — Удаляет юнитов, не привязанных к командам/пулам
  • Сбросить эволюцию — Очищает поколения и бои
  • Очистить старые бои — Удаляет бои старше 30 дней

🔧 Технические исправления

  • Исправлено отображение инвентаря Лаборатории (проблема middleware)
  • Исправлена логика отката и бустеров банки Random
  • Исправлен пайплайн деплоя (конфликты git, сохранение venv, сборка torch под CPU)
  • Конфигурация Nginx обновлена для новых маршрутов Lab и Shop
  • Лимиты памяти сервера увеличены для PyTorch (800M soft, 1G hard)
  • Полностью устранена утечка юнитов рогалика в пул Лаборатории

Заходите, экспериментируйте с банками, открывайте ящики и собирайте идеальную команду!

Скриншоты и концепт-арты

Метки записи:

dev lab shop