Mastodon
← Усі дописи
автор: Casey Jones Labs · 8 хв читання

Створюючи SkyChart. Дев-блог #2: п'ятнадцять версій, одна дуже жвава смуга

devlogskychartbehind-the-scenes
Цю публікацію перекладено з англійської автоматично. Читати оригінал
Зміст

Коли ми опублікували Дев-блог #1, SkyChart був на v0.2.17, працюючий авіасимулятор з 150 містами, 33 літаками і двигуном, що переважно встигав. Ми сказали, що повернемося з новим. Ми не очікували, що повернемося з настільки більшим.

П’ятнадцять версій потому гра потроїла кількість міст, подвоїла флот, отримала повну підтримку контролерів, капремонт доступності, системи економічної війни, що змусили б нервувати ОПЕК, і рендерний двигун, що більше не благає про пощаду на 1 600 маршрутах. Ми були в ангарі деякий час. Дозвольте провести вас по тому, що змінилося.

Студійний ара Кейсі наполягає, що ми згадаємо: він особисто керував кожним оновленням. Він не керував. Він їв волоські горіхи і засуджував нас.


Капремонт двигуна, якого ніхто не побачив (але всі відчули)

Почнімо з негламурних речей, що роблять усе інше можливим.

На v0.2.17 віддалення від великої мережі маршрутів було… кінематографічним у найгіршому сенсі. 9 кадрів на секунду з 1 600 маршрутами. Карта перемальовувала кожен маршрут, кожен кадр. 19 000 окремих вузлів ліній давали найкраще враження про слайдшоу PowerPoint.

Ми перебудували весь рендерний двигун маршрутів з нуля. Один пакетний прохід малювання замінив тисячі окремих вузлів. Панорамування карти тепер коштує нуль draw-викликів, відрендерене зображення просто ковзає. Маршрути перемальовуються лише тоді, коли мережа справді змінюється. Після перебудови: зафіксовані 60 FPS, навіть з тисячами маршрутів, що перетинають земну кулю.

Ми також заземлили 56 000 невидимих спрайтів літаків, які досі палили CPU кожен кадр, як примарні пілоти, що отримують надурочні. Приховані літаки тепер повністю позбавляються ліцензій на обробку.

Потім ми побудували автонастроювальний бенчмарк продуктивності. Натисніть “Run Benchmark” у Settings, і гра тестує ваш GPU, CPU і текстурний конвеєр приблизно 8 секунд, а потім автоматично налаштовує 11 обмежень продуктивності під ваше обладнання. Пороги відображення маршрутів, розміри кешу тайлів, щільність погоди, кількість потоків рекомендатора, усе калібрується автоматично. Протягніть повзунок за рекомендовану зону і ви отримаєте жовте попередження. Ми бачили, як капітани ігнорували показники Кейсі. Це ніколи добре не закінчується.

Панель бенчмарка продуктивності, що показує рівень обладнання і налаштовані параметри У вашої авіакомпанії тепер є IT-відділ. Бенчмарк налаштовує 11 параметрів, щоб вам не довелося.


496 міст. 66 літаків. Endless Mode.

Світ став значно більшим.

496 міст тепер на карті, з 150, охоплюючи від Тімбукту до Петропавловська-Камчатського (нам знадобилося три спроби його вимовити). Кожне нове місто має досліджене населення 1930 року, темпи зростання, економічні значення, коди IATA та реальні координати аеропорту. 4-рівнева система видимості тримає карту читабельною: Global Hubs завжди видимі, Minor cities з’являються лише коли ви близько наближаєте.

Флот теж подвоївся. 66 літаків тепер заповнюють каталог, історично точні моделі від біплана Cortez Condor (1933) до сучасної ери, плюс спекулятивні майбутні конструкції на кшталт суборбітального транспорту Bering Orbital 1 (2085), екстрапольованого з реальних концепцій і новітніх авіаційних технологій. Від пропелерів до гіперзвукових плазмових двигунів. Файли збережень зі старіших версій мігрують автоматично безшовно, жодного літака не втрачено, жодного паперу не розкидано.

Завершіть усі чотири ери, і ви розблоковуєте Endless Mode, летіть за 2020 рік без обмеження часу і без цілей. Водневі реактивні двигуни, літаки зі злитим крилом та орбітальні хопери чекають у майбутніх десятиліттях. Небо більше не є межею.

А оскільки не всі хочуть грати на одній швидкості, ми додали чотири варіанти темпу гри: Arcade (45 секунд на місяць, для нетерплячих), Standard, Extended і Realtime (30 хвилин на місяць, для капітанів, що смакують кожен удар турбулентності). Анімації літаків відповідають обраному темпу. Аркадні літаки проносяться по карті як Кейсі після виявлення незахищеної миски з волоськими горіхами.

Strategic Advisor з блогу #1 раніше обробляв 11 175 пар міст. Тепер він обробляє 122 000+. На фоновому пулі потоків. Без зусиль. Ми справді цим пишаємося.

Карта світу, що показує драматично розширену мережу з 496 міст 496 міст. 122 000+ можливих маршрутів. Strategic Advisor обробляє це, щоб вам не довелося.


Ласкаво просимо до Воєнної кімнати

SkyChart завжди був стратегічною грою. Але тепер у нього є інструменти, що відповідають.

Дванадцять нових аналітичних дашбордів приземлилися в executive suite. Fleet Risk Report виявляє старіючі літаки до того, як вони перетворяться на прес-пап’є. Cash Flow Forecast проєктує ваш банківський баланс на 12 місяців уперед з повзунками сценаріїв. City Pair Saturation Finder ранжує всі 122 000+ пар міст за оцінкою можливості, щоб ви перестали влізати у ножові бої. Competitor Threat Assessment профілює стратегію розширення кожного суперника і перетин з вашою мережею.

Потім ми вас озброїли.

Повна економічна війна прибула у v0.2.28 і повністю змінила відчуття від гри. Регіональні економіки тепер бумлять і падають щомісяця. Міста входять у багатоквартальні золоті лихоманки (+40% попиту) або кризи перенасичення (-30%). Динамічні ринкові шоки б’ють щоквартально: паливні кризи, крахи хабів, глобальні рецесії, мега-злиття авіакомпаній.

Спеціалізація хаба дозволяє вам оголосити хаби як Cargo, Tourist або Business для +20% відповідного попиту. Цінові війни спрацьовують автоматично, коли ви підрізаєте суперника на спірному маршруті. Витрати x1,5, попит +20%, чистий адреналін. Домінуйте на 40%+ регіону, і AI-суперники запускають 6-місячні хижацькі ринкові війни, підрізаючи все і переманюючи ваші найкращі міста.

Аукціони слотів із запечатаними заявками замінили принцип “хто перший прийшов”. Code-share-альянси зі справжнім розподілом доходу. Корпоративне шпигунство: наймайте інформаторів для трьох рівнів розвідки, від даних по маршрутах до повної фінансової звітності до відвертої корпоративної крадіжки. Суперники шпигують у відповідь. Кодове ім’я Кейсі “Tropical Thunder” і він відмовляється його змінювати.

Квартальний дзвінок про прибутки щойно став брифінгом поля бою.

Дашборди стратегічної розвідки, що показують ризик флоту й аналіз ринку Дванадцять нових дашбордів. Енергія Bloomberg-термінала для вашої авіаційної імперії.


Кабіна, що підходить кожному

Блог #1 згадував підтримку контролерів як пізнє доповнення. Тепер це флагманська функція.

Повна інтеграція Steam Input API означає, що кожен контролер Xbox, PlayStation, Switch і Steam Deck автоматично підтримується з правильними гліфами кнопок. Не загальні заповнювачі, а точні іконки для вашого контролера. Три контекстно-чутливі набори дій безшовно перемикаються, коли ви навігуєте. Екранна клавіатура QWERTY автоматично з’являється для користувачів контролера, коли ви фокусуєтеся на будь-якому текстовому полі. Кожна окрема панель реагує на ввід геймпада.

98 досягнень Steam повністю підключені, від First Flight до Every Seat, Every City. 15 статистик Steam синхронізуються з вашим профілем. Закладки Steam Timeline позначають ваші найкращі моменти для Steam Replay. Глобальні та локальні таблиці лідерів дозволяють порівняти вашу імперію зі світом.

Але оновлення, яким ми пишаємося найбільше, це доступність.

П’ять режимів відображення для дальтоніків: Normal, Deuteranopia, Protanopia, Tritanopia і Achromatopsia. Три рівні контрасту. Повзунок розміру тексту від 80% до 150%. Підтримка читача з екрану через синтез мовлення. Перемикач Reduce Motion, що заморожує рядок новин і пропускає плаваючі анімації.

А ось число: 866 жорстко закодованих викликів Color() замінено. Кожна UI-панель у всій грі (управління флотом, продуктивність маршрутів, стратегічна розвідка, поглинання, альянси, налаштування, вибір складності, вибір епохи, умова перемоги, музичний плеєр, таблиця лідерів, усе) тепер проводить свої кольори через централізовану AccessibilityPalette. Режими дальтоніків і налаштування контрасту працюють усюди, на кожній панелі, в реальному часі. Перезапуск не потрібен.

Кейсі протестував усі п’ять режимів для дальтоніків і виявив, що читав покажчик пального неправильно роками.

Налаштування доступності, що показують опції режиму для дальтоніків і контрасту П’ять режимів для дальтоніків, три рівні контрасту і 866 переписаних викликів кольору. Кабіна тепер для всіх.


Володіти або орендувати

На v0.2.17 ми випустили систему, що тихо змінила те, як грається гра: лізинг літаків.

Бракує готівки, але треба відкрити маршрут? Орендуйте літак. 1-річні, 3-річні або 5-річні терміни. Коротші терміни коштують дорожче за місяць, але дають гнучкість. Ліз добігає кінця й автоматично призупиняє маршрут, поки ви не поновите, не викупите або не відійдете. AI-суперники теж лізингують, як і справжні бюджетні перевізники.

Поряд із лізингом прибув справжній авіаційний ангар. Власні літаки тепер зберігаються, коли знімаються з маршрутів, а не зникають у повітрі. Зберігайте їх, використовуйте повторно або продавайте за амортизованою ринковою вартістю. Рефурбішинг літаків дозволяє продовжити термін експлуатації прибуткового літака на 10 років за 30% його ціни.

Ми також випустили прогресію ер: вищі ери заблоковані, поки ви не завершите попередню. Опануйте Dawn of Flight, перш ніж братися за Jet Age. Перемагайте у будь-якій ері в режимі Passengers і ви розблоковуєте Cargo. Перемагайте у Cargo, розблоковуєте Combined. Завершіть вашу першу еру і відкриється Sandbox Mode. Без банкрутства, без тиску часу, тільки будівництво.


Чорна скринька, Spotify та інше

Швидка серія всього іншого, що робить гру кращою:

Підтримка Epic Games Store. Нова абстракція PlatformManager направляє досягнення, статистики, таблиці лідерів і хмарні збереження до того магазину, з якого ви вилітаєте. Одна кодова база, декілька терміналів.

Black Box Recorder. Менеджер міграції тепер працює до підключення Steam, реконструюючи значення компанії з ваших файлів збережень і очищаючи погані дані таблиці лідерів. Кожне збереження маркується версією гри. Career stats постійно логують кожне завершення ери. Лічильники за весь час відстежують побудовані хаби, зроблені інвестиції, закриті поглинання, укладені альянси і пережиті торгові війни.

Spotify автопідключається при запуску. Якщо ви вже автентифіковані, Music Player продовжує з того місця, де ви зупинилися. Більше не потрібно щосесії проводити посадковим талоном.

Слоти збереження розширені з 5 до 10 з кольорово-кодованими тегами (складність, ігровий режим, sandbox) і реальними часовими мітками. HUD реорганізовано: Routes & Fleet, Company і новий випадаючий список Rivals із позначеними заголовками секцій. Toast-сповіщення тепер каскадуються вертикально замість того, щоб невидимо стосуватися одне на одному. А 14 нових сполучень клавіш охоплюють кожну стратегічну панель.

Навіть дрібні деталі отримали увагу: інвестиції Carbon Offset тепер заблоковані за епохою до 2005 року (ніхто не компенсував вуглець у пропелерну епоху), режим cargo показує тонни і ставки замість “passengers”, а діалог виходу тепер пропонує автозберегти перед вашим виходом.


Дозвіл на захід

Ми зараз на v0.2.32.10. Гра, що була “завершена і дуже грабельна” на v0.2.17, стала чимось значно більшим: симулятором авіаційної імперії з 496 містами, 66 літаками, нативним контролерним керуванням, з пріоритетом доступності, з економічною війною, корпоративним шпигунством і двигуном продуктивності, що обробляє все це на 60 FPS.

Ось що на смузі:

  • Звуковий дизайн: UI-ефекти, атмосферний саундскейп аеропорту, приємний клік кожної кнопки
  • Туторіал: керований досвід першого польоту, щоб новим гравцям не довелося вчитися через банкрутство
  • Сторінка магазину Steam: досягнення, хмарні збереження і фінальний поштовх до релізу

Ми досі будуємо SkyChart з тією самою філософією: симулятори управління заслуговують тієї самої поліровки, що й екшн-ігри. Кожна підказка, кожна анімація, кожна опція доступності існує тому, що ми запитали себе, що змусило б нас не хотіти альт-табнути.

Дякуємо, що слідуєте за подорожжю. Тримайте столики піднятими і мережі маршрутів прибутковими.

Команда Casey Jones Labs

Кейсі каже, що хоче підвищення і кутовий офіс. Він уже отримав своє ім’я на заставці і не дасть нам забути. Він отримає більше волоських горіхів.

Головне меню SkyChart з анімованими літаками, що перетинають фонову карту SkyChart: Airline Executive, виходить у Steam для Windows, macOS і Linux. Побудовано на Godot 4.