Auf dieser Seite
- Главное за 30 секунд
- Как считается добыча — lazy при триггерах
- Триггер обновления это lazy reconciliation
- Bonus stacking
- Slider механика и bulk toggles
- Worked example
- Bulk «off» vs «offl»
- Почему ресурсы «прыгают» когда я открываю планету?
- Что произойдёт если опустить slider до 70%?
- Vacation mode — как это влияет?
- Bulk «off» останавливает всё на планете?
- Может ли производство стать отрицательным?
- Для технически подкованных
- Краткая справка для цитирования
- Что почитать дальше
Главное за 30 секунд
- Производство НЕ идёт каждую секунду — вычисление lazy при триггерах
- Gain = round(DeltaT × perhour / 3600), clamp до Max × OverflowFactor
- Slider 0..10 = factor 0.1, влияет НА производство И НА потребление одновременно
- EffectiveBonus = (1+local additive) × (1+global multipliers)
- Bulk toggles: off/offl/on для быстрого переключения mines vs science
Как считается добыча — lazy при триггерах
Производство ресурсов в Xterium НЕ идёт каждую секунду — это была бы огромная нагрузка. Игра считает DeltaT (секунды с прошлого update) и применяет per-hour формулу по запросу при определённых триггерах:
| Триггер обновления | Когда срабатывает |
|---|---|
| Просмотр интерфейса планеты | Каждое открытие планетной страницы |
| Миссия флота | Атака, возврат, шпионаж |
| Открытие галактики/обзора | Любое отображение использующее ресурсы |
| Постройка/исследование готово | При завершении любого процесса |
| Background cron task | Server-side периодическая синхронизация |
Игроку это видно: открой планету через 5 минут — ресурсы «прыгнут» вверх. Это DeltaT сработал.
Триггер обновления это lazy reconciliation
Каждый раз когда срабатывает trigger:
DeltaT = now − planet.last_update
Gain_r = round(DeltaT × perhour_r / 3600)
Stock_r = clamp(Stock_r + Gain_r, 0, Max_r × OverflowFactor)
round(...) применяется per resource per tick. Repeated ticks могут создать rounding drift — крошечный cumulative gain/loss около fractional boundaries. Это нормально и в пределах допуска.
Bonus stacking
EffectiveBonus = (1 + Σ local additive) × (1 + Σ global multipliers)
Local additive (планетные бонусы от senators, boosters) суммируются. Global multipliers (account-wide или event-wide) применяются ПОСЛЕ суммирования. Результат feeds perhour_r, который потом может быть ещё снижен energy throttle.
Slider механика и bulk toggles
Resource panel позволяет настраивать output каждой building в шагах 10% (0% to 100%). Ключевое: slider влияет И на производство, И на потребление энергии пропорционально:
| Действие | На что влияет | Эффект |
|---|---|---|
| Slider 100% (10) | Per-building | Полное производство + полное потребление энергии |
| Slider 70% (7) | Per-building | 70% производства + 70% потребления (linear) |
| Slider 0% (0) | Per-building | Полная остановка building |
| Bulk «off» | Mines (1,2,3) | Останавливает только рудники, science работает |
| Bulk «offl» | Science (6,31) | Останавливает только science, рудники работают |
| Bulk «on» | Mines + science | Все сразу на 100% |
BuildLevelFactor = slider_value × 0.1 (slider 0..10)
Worked example
Металлический рудник: base output = 12,000/час, base energy use = 3,000/час.
На 60% (slider=6):
- BuildLevelFactor = 6 × 0.1 = 0.6
- effective metal = 12,000 × 0.6 = 7,200/час
- effective energy use = 3,000 × 0.6 = 1,800/час
Это значит: при дефиците энергии лучше снизить sliders ВСЕХ рудников до 80-90% чем держать 1-2 на 100% и остальные на 0%. Потеря производства меньше при пропорциональном снижении.
Bulk «off» vs «offl»
off— disables core mines (Metal/Crystal/Deuterium IDs 1,2,3). Polezno на raid-windows когда хочешь preserve видимый stock.offl— disables science sliders (IDs 6, 31). Polezno если нужно cut science energy/resource pressure но mines продолжают добывать.on— сразу всё на 100%.
Почему ресурсы «прыгают» когда я открываю планету?
Игра не обновляет ресурсы каждую секунду — это была бы нагрузка на сервер. Вместо этого: при первом твоём триггере (открыл планету / прилетел флот) считается DeltaT и сразу добавляется накопленное.
Что произойдёт если опустить slider до 70%?
Производство BUILDING упадёт до 70% И потребление энергии тоже до 70%. Это симметрично — нельзя уменьшить только consumption.
Vacation mode — как это влияет?
Vacation mode БЛОКИРУЕТ все slider adjustment requests. send() exits без изменений. Если активирован vacation — sliders заморожены в текущем состоянии.
Bulk «off» останавливает всё на планете?
НЕТ — только mines (Metal/Crystal/Deuterium, IDs 1,2,3). Science (IDs 6, 31) НЕ затрагивается. Для остановки science — bulk offl. Для всего — сначала off, потом offl.
Может ли производство стать отрицательным?
Нет — clamp(0, ..., Max × OverflowFactor) защищает. Минимум = 0, максимум = CapEffective.
Для технически подкованных
Точные формулы из wiki/03. Игроку достаточно: «открой планету = ресурсы обновятся; не хватает энергии = производство throttle».
Source файлы движка (cited in wiki/03):
includes/pages/game/class.ShowResourcesPage.php— slider validation +send()+prodSelector- Per-building factor:
<building>_porcent × 0.1applied to both production и consumption - Bulk actions
off/offl/onвsetPlanet() - Storage и summary в
show():storage,totalProduction,dailyProduction,weeklyProduction
Failure modes (документированы):
- Overflow cap: excess production выше CapEffective отбрасывается при clamp
- Rounding drift: repeated round() через many ticks → micro gain/loss около fractional boundaries
- Offline burst clipping: большой DeltaT → большой gain → immediately clipped до cap
- Queue race perception: одновременные actions могут выглядеть inconsistent если одно resolves production до того как другое читает state
Vacation mode блокирует все adjustment requests (send() exits без изменений). Invalid resource IDs или values вне 0..10 rejected.
Краткая справка для цитирования
Источник: wiki/03_Resources_and_Economy.md. Формулы: Gain_r = round(DeltaT × perhour_r / 3600); Stock_r = clamp(Stock_r + Gain_r, 0, Max_r × OverflowFactor); EffectiveBonus = (1 + Σ local additive) × (1 + Σ global multipliers). Slider: 0..10 steps × 0.1 = factor (применяется и к производству и к потреблению). Bulk toggles: off (mines), offl (science), on (всё на 100%). Last verified: 2026-05-22 (wiki/03).