Перед початком хочу попередити, що я перекладав не оригінал, що французькою (я цю мову не знаю), а з англомовного зведення-перекладу, опублікованого на Reddit. Цілком можливо, що певні сенси були втрачені на якомусь етапі. Та й саме зведення виглядає як прямий переклад усного мовлення, тому часом приходилось адаптувати текст так, щоб його було зручніше читати.
Дякую та приємного читання 🙂
Питання 1
Чи допоможе підвищення продуктивності, яке пропонує Об'єднання серверів (статичне і динамічне), прискорити розробку функцій і дати нам стабільність, якої ми прагнемо (переміщення NPC/рекрутинг NPC/збільшення кількості NPC)?
Відповідь
Так, звичайно, допоможе. Ключовим моментом в Об'єднанні серверів є те, що кожен сервер буде симулювати меншу кількість об'єктів. Ми вже знаємо, що коли симулюється менше об'єктів, продуктивність сервера набагато вища. Звичайно, це прискорить розробку, і це також скоротить терміни випуску пату, так. Зараз, коли ми готуємо 3.24, 3.24.2 або 3.24.1, випустити патч у світ вимагає багато зусиль. Саме тоді відкриваються вам нові речі...!
Коли на сервері з'являються гравці, вони завжди роблять щось нестандартне, ха-ха. Так, у розробників є спосіб тестування, але він є більш діагональним, чи не так? Проте гравці занурюються глибше. Тож це допоможе нам, дасть більший буфер продуктивності, що дозволить нам працювати трохи швидше. А завдяки більшому розподілу [серверів], це також дає нам певний ступінь контролю, якого ми не мали раніше.
Питання 2
Чи легше реалізувати динамічний Server meshing з точки зору витраченого часу, порівняно зі статичною технологією? У вас є впевненість, що це станеться швидко?
Відповідь
Звичайно, статичний Server meshing включає в себе ВЕСЬ технологічний розвиток. Отже, низькорівневий код, який має справу з мережею (передача надійних пакетів vs. ненадійних) — вся ця технологія була переписана для Server Meshing. Ще концепція повноважень, де ми в процесі виправлення всіх багів, пов'язаних з передачею повноважень: коли ви змінюєте сервери, всі ігрові компоненти повинні реагувати на цю зміну повноважень.
Є багато елементів, які в свій час були зроблені погано, або зроблені без необхідності, і з цим потрібно розібратися. Ми зараз саме це й робимо.
Продовжуючи тему Server Meshing, ми говоримо про масштабні передачі повноважень. Давайте візьмемо велику мережу Майкротек у повному складі і вирішимо додати сервер, який буде відповідати лише за Нью-Бебедж. Отже, ми здійснюємо масову передачу повноважень, у результаті якої всі запити будуть передані новому серверу (що є частиною розвитку динамічного SM); + цикл узгодження, який визначає, де знаходяться гравці, де є потреба в серверах, і розподілить серверні потужності так, щоб найкращим чином обслуговувати гравців.
І мова не лише про згрупування [серверів] разом, бо тут є ще й фінансовий аспект. Звичайно, якби ми могли дати кожному гравцеві по серверу, ми б це зробили, ха-ха!
Підсумовуючи, можна сказати, що роботи над Динамічним менше, ніж над Статичним Обʼєднанням серверів. Сподіваюся, ми зможемо впоратися з ним швидко; зрештою, вже в 4.0 є певні елементи Динамічного Об'єднання серверів, які реалізовані в коді. Це означає можливість вмикати та вимикати сервери залежно від того, є гравці чи ні у відповідній області.
Ми намагаємося зробити так, щоб у нас була така гнучкість і в 4.0 (в команді ми називаємо цю технологію «майже динамічною» за браком кращих слів, хех). І от ми тут, намагаємося принести вам як можна більше динамічного світу в PU. Але я не хвилююся, ми на правильному шляху.
Питання 3
Яку технологію в грі ви найбільше чекаєте, окрім Динамічного Об'єднання серверів?
Відповідь
Ох. Будівництво баз, це дуже важливо. Все, що робиться на тлі будівництва баз, все, що пов'язано з виробництвом; чимало роботи з новими базами даних, новими сервісами; нова "передача схем" тощо. Бо ми хочемо переконатися, що якщо ви претендуєте на територію і будуєте на ній базу, то вона буде присутня на всіх шардах.
Це досить серйозний виклик, але він дійсно цікавий: це сильно змінить гру, разом з крафтингом. Це створить всесвіт, в якому гравці самі формують економіку, і я вважаю, що гра повинна рухатися саме в цьому напрямку — і ми на правильному шляху до цього, це мене найбільше радує.
Питання 4
Чи будуть планетарні системи розміщені на одній мегамапі, або ж вони будуть на окремих ігрових мапах, кожна з яких матиме власний скайбокс?
Відповідь
Насправді, кожна система є частиною мапи. У нас все ще є концепт мегамапи, принцип гілок, де кожна сонячна система має свою власну гілку. Те, що ми називаємо «корінням всесвіту» — там насправді неможливо розмістити гравців, вони завжди залишаються в зоряних системах (я так розумію, мова про простір між зоряними системами/гілками, куди гравцям неможливо потрапити — пр. пер.). Власне, це не зовсім мапи як такі, але концепція та сама, просто йдеться про великий масив даних.
Тож, зі збільшенням кількості систем, у гру вступає все одно лише система потокової передачі даних.
Питання 5
Коли ви стрибаєте у червоточину, технічно ви рухаєтеся фізично за координатами, чи це більше схоже на систему телепортації?
Відповідь
Справді, це дуже цікаво. Те, як виконуються стрибки, коли ви входите в тунель — уявіть собі, що там є зона, що як великий корабель або потяг.
Коли відкривається прохід, всі гравці, які входять у червоточину, стають частиною цього “поїзда”, і коли гравці рухаються через тунель, зона рухається разом з вами. І в той момент, коли ви, тобто зона, потрапляє під юрисдикцію Пайро, в його гілку, тоді “потяг”/зона зникає. Як великий автобус, ха-ха. Тож це дійсно зміна координат: один спільний всесвіт.
Питання 6
Питання про обертання планет [навколо зорі] та про те, чи в якийсь момент у нас будуть еліптичні системи — чи є у вас якісь відповіді на ці питання?
Відповідь
Насправді, у нас вже є такі системи, але на даний момент вони вимкнені, тому що ми виявили багато побічних ефектів через них. Це те, що ми спробуємо повернути, але наразі воно не є нашим пріоритетом — ми зосереджені на тому, щоб додати в гру ігролад.
І навіть якби ми впровадили цей принцип, то це вплинуло б на систему зміни зон тощо.
Перш за все, спочатку нам потрібно мати щось стабільне і надійне, перш ніж ми перейдемо до впровадження нових правил системи, таких як це.
Питання 7
Вам вдалося випустити 4.0 для Evocati ще до CitizenCon, тож вітаю вас з цим, але чи не розчаровані ви тим, що це відбувається лише зараз, тоді як у 2023 році ви планували реліз оновлення на літо 2024 року?
Відповідь
Так. Звичайно, ми не дуже задоволені термінами, бо для нас 3.24 став дійсно складним патчем. Він приніс багато можливостей (постійні персональні ангари, системи вантажних ліфтів...), які стосувалися багатьох вже існуючих частин системи, що були проблемними.
Я згадував про це на минулому Star Citizen Live: у грі насправді є 3 системи, які є проблематичними: система управління трафіком, система терміналів ASOP і транзитна система (ми всі знаємо про ті проблеми). Оскільки вони трохи застарілі, ми намагаємося їх оновлювати, але вони ніколи не входили в пріоритет.
А ще складності додає Об'єднання серверів, тому 3.24 дуже нас гальмувала. До того, у березні, під час тестування продуктивності, ми зрозуміли, що нам потрібно відійти від запланованого маршруту і впровадити систему RMQ, яка забезпечує кращу мережеву продуктивність.
Тож ми не зовсім задоволені нашими темпами, але ми раді результатом в тому сенсі, що ми бачимо, що технологія функціонує, і це насправді лише перший крок. Як я вже говорив у своїх останніх повідомленнях, ми не женемося за цифрами, ми прагнемо до справжньої якості ігрового досвіду. Ми обираємо те, що є найбільш стабільним і функціональним.
Питання 8
Більш особисте питання: чи регулярно Бенуа Босежур грає в гру? Коли ви востаннє грали в Star Citizen?
Відповідь
Ну, я граю кожен день або близько того, хех. Так, так, так, я затятий гравець! Мені подобається, я зробив Сімпіт в CIG, тому вдома у мене є джойстики, педалі — повний набір; я взагалі фанат симуляторів.
Питання 9
Це було складне питання для Джона Кру, тому що всі його кораблі - це його діти, але чи є у вас улюблений корабель, і якщо так, то який?
Відповідь
Так, це Hornet. Я завжди хотів грати на «Шершні». Hornet MKII - моя робоча конячка — це якщо питати про одномісні винищувачі. З середніх винищувачів це буде Hurricane — я обожнюю цей корабель. З хорошим навідником Hurricane просто непереможний. А серед великих... Для досліджень найкращим є Carrack, стовідсотково. Коли я почув про Каррака, я був у захваті від нього, як справжній фанбой, хаха! А що стосується вантажних суден, то у мене є дещо від Drake - це однозначно Caterpillar.
Питання 10:
На панелях CitizenCon ми дізналися про систему Кастр, також ми бачили Нікс. З наближенням будівництва баз, з усіх систем, в якій би ви хотіли оселитися?
Відповідь:
У Нікс. Моє місце у позазаконному просторі, тому що я люблю екшн. Так, позазаконному і... це буде гаряче :D.
Питання 11:
Ще одне питання про Об'єднання серверів (яке є потенційно динамічним), із серверами, які керують невеликими зонами, як правило, на планетах: Як щодо більш глобальних явищ - як здійснюється управління ними, чи працює воно на стороні серверів?
Я маю на увазі, зокрема, рух хмар або те, про що давно не згадували: рух зірок?
Бо мені здається, що це може бути досить складно.
Відповідь:
Так. Загалом, на технічному рівні, у нас є ігрові сервери. Вони є частиною Server Meshing. У нас також є реплікатори, які відповідають за мережу. Отже, на даний момент у версії 4.0 у нас є реплікатор, а за ним кілька ігрових серверів, які ділять зони між собою. Таким чином, система може призначити сервер для зони.
Так ми можемо переконатися, що скрізь, де є гравці, є хороша продуктивність, справедливо? Чим далі ми просунемося в реалізації динамічного обʼєднання, тим більш гнучкою вона буде. Отже, друзі, якщо всі гравці будуть на 890 Jump, що ж, ми дамо сервер для 890 Jump. Так, це трохи по-дурному, але це так. В цьому вся фішка, розумієте.
Є й інші рівні системи. Існує те, що ми називаємо Star Services, тобто ігрові сервери, які не прив'язані до шарду, але відповідають за загальний всесвіт. Вони керують ігровим сервером — це те саме фундаментальне ядро програмного забезпечення — але вони існують лише для того, щоб відповідати на запити віддалених процедур, які координують роботу кількох шардів. Тож такі речі, як, наприклад, динамічна погода - це те, що може бути винесено в цей сервіс і далі використовувати дані з нього кожним шардом.
(Інший хлопець щось пробурмотів французькою, щоб перепитати, чи правильно він зрозумів слова Бенуа)
Саме так. Все що стосується VOIP — на сервері голосу, все соціальне — на менеджері груп і так далі. Отже, існують подібні сервіси. Граф сутностей, який обробляє всю постійність гри, також є сервісом, який частково лежить на ігровому сервері, але розгорнутий як сервіс, який обслуговує все.
Одним з важливих елементів, над яким ми зараз працюємо для 4.0, і який є «гарячою» функцією, є система місій. Так, наприклад, система місій в 3.23 або навіть 3.24, коли ви приймаєте місію або контракт — вона створює сутність місії на сервері. Фактично, вона знаходиться у точці 0.0 всесвіту! Очевидно, що це невидима сутність, яка продовжує існувати і слідує за вами, але вона є. Відсьогодні, цього вже не буде! Тому що тепер "0,0" - це інший сервер!
Тож зараз ми перебуваємо в процесі переміщення всіх систем місій в сервіси, які зможуть обслуговувати всі шарди. Ми говоримо про, наприклад, Contract Broker, який відповідає за всі ваші контракти, доступні у вашому MobiGlass. Існує також Mission Factory, який відповідає за формування місій у грі та координує ігрові сервери, наприклад: якщо у мене є місія з доставки, ми створимо сутність на першій локації, а іншу сутність — на локації вивантаження, і це дасть змогу відстежувати подальші дії.
Також була створена модель міток. Наприклад, щось таке просте, як мітка учасника групи в іншій зоряній системі... У старій моделі це дуже важко зробити. Раніше ми просто ставили мітку, а тепер, з новою архітектурою, у нас для цього є спеціальний сервіс.
Отже, йдеться про те, щоб витягти все з поточного ігрового сервера (PU) у сервіси, які дадуть нам змогу керувати цим більш гнучко.
Інтерв'юер: Тож тепер нам зрозуміло, чому 4.0 забирає так багато часу... хех. Дякую за ваш час, Бенуа!
Переклав Mr_Foxer для @starcitizen_news
Якщо маєте бажання підтримати переклад новин і отримати невеликий стартовий бонус у вигляді 5,000 UEC, можете зареєструватися за моїм реферальним кодом STAR-Z5BG-SFF2 на сайті гри Star Citizen.