Foundry VTT - Реліз 12 версії
Якраз до нашої четвертої річниці! Ми надзвичайно пишаємося тим, що випустили перший стабільний реліз 12-ї версії, який надає користувачам цілу низку нових можливостей у віртуальній стільниці Foundry Virtual Tabletop. Версія 12 містить тисячі годин роботи над розробкою і є значною ітерацією майже кожного аспекту Foundry VTT. У V12 ми зосередилися на: комплексних змінах бекенда ключових елементів полотна, впровадженні Application V2 для майбутніх покращень інтерфейсу, звуку та освітлення навколишнього середовища, а також на елементі, який був обраний нашими меценатами як пріоритетна функція: Регіони.
Розробка нових функцій завершилася у V12, ми дуже задоволені змінами, які вона принесла, і сподіваємося, що вам сподобається безліч покращень, які ми зробили. Наші наступні кілька випусків будуть спрямовані на виправлення першочергових помилок для подальшого завершення стабільної збірки V12, оскільки ми готуємося до етапу планування версії 13!
Основні моменти V12
За традицією, розділ “Основні моменти” для першого стабільного випуску нової версії демонструє деякі з найбільших змін, внесених у V12, і ми сподіваємося, що нашим користувачам буде так само цікаво читати їх, як і нам їх писати. Хоча ми намагаємося бути якомога ретельнішими, такий короткий огляд може лише поверхнево відобразити надзвичайно довгий список змін, які з’явилися за майже рік розробки, тому ми наполегливо рекомендуємо нашим користувачам, які хочуть отримати більш детальну інформацію про можливості V12, ознайомитися з примітками до кожного оновлення, яке ми випустили протягом циклу розробки V12:
- Version 12 Prototype 1
- Version 12 Prototype 2
- Version 12 API Development 1
- Version 12 API Development 2
- Version 12 Testing 1
- Version 12 Testing 2
- Version 12 Testing 3
- Version 12 Testing 4
Загальне полотно добра (General Canvas Goodness)
Тіньові сітки (Shady Grids)
Одна з найпомітніших змін, що стосується користувача, - це безліч нових налаштувань для вигляду сіток на сценах. Сітки тепер зображуються за допомогою шейдерів, а не текстур, що дозволяє користувачам змінювати стиль і товщину сіток. Крім того, покращення способу візуалізації сіток дозволило нам виправити деякі давні проблеми з навігацією на гексагональних сценах та сценах без сітки. Ми також додали візуальну прив’язку до операцій переміщення для більшості об’єктів розміщення на сітчастих сценах, щоб полегшити попередній перегляд місця розташування об’єкта без необхідності вгадувати, до якої точки підсітки об’єкт буде прив’язаний.
Динамічний візуалізатор токенів (Dynamic Token Rendering)
Вперше представлений в системі D&D, V12 представляє новий, додатковий фреймворк для візуалізації токенів, який дозволяє творцям контенту створювати токени, що можуть динамічно взаємодіяти з Foundry. Цей новий метод відображення токенів рендерить окремий кільцевий шар, шар ефектів і шар ресурсів як композитний, що дозволяє системам і модулям надавати спеціальні ефекти, які застосовуються лише до одного з цих рендерингових шарів. Хоча Phandelver & Below є єдиним модулем, який наразі використовує переваги цього фреймворку, ми з нетерпінням чекаємо на те, що він потрапить до рук багатьох інших творців і розробників, щоб подивитися, як він працюватиме!
Підняті тайли і не тільки (Elevated Tiles and More)
Якщо у V11 було представлено концепцію призначення висоти тайлам, то у V12 вона вдосконалена, щоб забезпечити більш природне відчуття взаємодії з тайлами, перемістивши їх від двійкової ідеї “Над головою чи під ногами” до ідеї масштабування висоти. В результаті, ідея тайлів “Дах” змінилася, натомість перетворившись на пару перемикачів, які визначають, чи обмежує тайл світло, чи обмежує погодні умови. Крім того, тайли тепер зникають, коли ГМ наводить на них курсор, що робить їх більш зручними для роботи з об’єктами, які вони сховали під ними. Для швидкого доступу, натискання кнопки “Над головою” на шарі тайлів автоматично встановить тайли на висоту 20. Ми також додали підтримку висоти для багатьох об’єктів полотна, зокрема: малюнків, шаблонів, нотаток, навколишнього освітлення і звуків… але поки що не для стін.
Інформаційні малюнки (Informational Drawings)
Щоб надати ГМам можливість розрізняти малюнки, які приховані туманом війни, і малюнки, які з’являються над туманом війни, малюнки тепер мають дві ролі: Об’єкт та Інформація. За замовчуванням усі малюнки є об’єктними і на них впливають світло і туман, як це було у V11 і попередніх версіях. Інформаційні малюнки, однак, відображаються вище рівня освітлення і туману, що робить їх видимими для користувачів у будь-який час.
Швидкодія та згладжування (Performance and Anti-aliasing)
Ми внесли значні зміни в роботу Foundry VTT під час рендерингу, і навіть ваші найбільші сцени будуть працювати краще з точки зору кількості кадрів в секунду. Це покращення швидкодії має бути корисним для запуску великих сцен на старому чи новому обладнанні. Крім того, ми замінили швидке наближене згладжування (FXAA) на субпіксельне морфологічне згладжування (SMAA) для рендерингу багатьох аспектів об’єктів полотна, що забезпечує чистіший вигляд і водночас покращує продуктивність рендерингу об’єктів на полотні.
Регіональні смаколики (Regional Delicacies)
Мабуть, найпотужніший набір функцій, включений у V12, - це Регіони сцен, які дозволяють ГМам налаштовувати певні області сцени з чітко визначеною поведінкою, що активується певними подіями. Регіони сцен додають надзвичайно настроюваний набір інструментів з майже безмежною функціональністю, і ми не можемо дочекатися, щоб побачити, яку унікальну та цікаву автоматизацію реалізує наша спільнота, використовуючи їх.
Важливо розуміти, що Регіон - це не просто одна Фігура, але кожен регіон - це скоріше “група” Фігур, які мають однакову поведінку. Кожен Регіон може мати кілька Поведінок, кожна з яких викликається однією або кількома Подіями.
Доступні вбудовані моделі поведінки можуть бути використані для досягнення того, що ми часто чули від користувачів:
Налаштування рівня темряви (Adjust Darkness Level)
Ви коли-небудь хотіли виключити частину сцени з глобального освітлення, щоб рівень світла ззовні відрізнявся від рівня світла всередині? Ця поведінка надає таку можливість і навіть більше.
Виконати макрос (Execute Macro)
Для тих ГМів, які зберігають макроси і вже мають безліч заздалегідь написаних скриптів, готових до певних дій, і хочуть, щоб вони запускалися автоматично, поведінка “Виконати макрос” робить те, що написано на ярлику: коли ви призначаєте їй UUID певного макросу (який можна отримати, клацнувши правою кнопкою миші на кнопці ID у заголовку макросу), вона запускає цей макрос за умов події, яку ви призначили для його запуску.
Виконати скрипт (Execute Script)
Якщо вам потрібен скрипт, який буде застосовуватися лише до цього конкретного регіону, ви можете створити невеликий фрагмент JavaScript, який буде запущено за потрібних умов. Ті, хто бажає отримати доступ до даних, наданих подією запуску, можуть легко це зробити, звернувшись до event.data зсередини сценарію.
Ставити гру на паузу (Pause Game)
Набридло, що ваші гравці розбігаються, проскакуючи повз ваші ретельно сплановані пастки, і вам доводиться відводити їх назад і розвіювати туман війни? Просто намалюйте область сцени, яка буде ставити гру на паузу щоразу, коли жетон потрапляє в цю область. Для зручності ви також можете увімкнути опцію “Один раз”, щоб не робити це щоразу, коли жетон проходить повз.
Ігнорувати погоду (Suppress Weather)
Хочете, щоб у вашому арктичному мисливському будиночку не йшов сніг, але у вас немає зручного тайла для даху? Ця поведінка припинить рендеринг погодних ефектів всередині регіону, незалежно від того, чи є там дах, чи ні.
Токен телепорту (Teleport Token)
Мабуть, одна з найбажаніших можливостей, поведінка Teleport Token дозволяє вам миттєво переміщати токен, який потрапляє в регіон, з одного регіону в інший. Подібно до Execute Macro, ця поведінка вимагає UUID іншого регіону сцени, який слугуватиме місцем призначення. Регіон призначення може навіть знаходитися у іншій сцені!
Перемикання поведінки (Toggle Behavior)
Ви хочете активувати певну поведінку лише після виконання певної умови, наприклад, пастку, яка спрацьовує лише після того, як токен наступить на її притискну пластину? Поведінка перемикання дозволяє вам зв’язати UUID з іншою поведінкою, вмикаючи або вимикаючи пов’язану поведінку при настанні певної тригерної події.
В руках навіть зовсім недосвідченого кодера регіони сцен можуть бути використані для створення дійсно потужних автоматизацій.
Якщо ви хочете побачити деякі з них у дії, ви знайдете приклади у статті про регіони сцен, і ми вже поспішаємо додати підтримку регіонів сцен до деяких наших преміум-розширень від сторонніх розробників. Ми з нетерпінням чекаємо на додавання додаткової функціональності до Регіонів сцен у майбутньому, але сподіваємося, що наданий нами набір інструментів буде більш ніж достатнім для задоволення всіх ваших потреб в автоматизації сцен!
Application V2
В рамках наших зусиль з модернізації користувацького інтерфейсу Foundry VTT ми скористалися можливістю закласти певну основу для майбутніх змін, впровадивши Application V2. Деякі елементи інтерфейсу, такі як діалогове вікно конфігурації користувача, вже оновлені для використання у версії 2.
Хоча це здебільшого те, що одразу ж зацікавило обмежену кількість розробників спільноти, це важливе оновлення, оскільки майже кожне “вікно”, яке ви відкриваєте у Foundry VTT, є Application. Користувачі можуть з нетерпінням чекати на багато майбутніх покращень інтерфейсу, які будуть використовувати Application V2 в майбутньому!
Додаткова інформація: Ключовою особливістю Application V2 є те, що вона покращує багатокористувацьке редагування одного вікна. В якості серйозного спрощення, нове вікно програми може бути розділене на окремі частини, що дозволяє оновлювати дані в одній частині аркуша, не втрачаючи стан інших частин даних. Існує багато різних фреймворків (Svelte, Vue, React та багато інших), які можна використовувати для досягнення подібної мети, тому ми надали можливість досвідченим програмістам визначити, який рендер буде використовувати їхня програма Application V2.
Поліпшення оточення (Environmental Enhancements)
Частина наших оновлень полотна принесла значні зміни у зовнішній вигляд сцен, ввівши нові опції для Lighting Environment, завдяки чому творці контенту та ГМи тепер можуть налаштовувати зовнішній вигляд сцен більше, ніж будь-коли раніше. До рушія зору також додано потужну підтримку механічної темряви!
Атмосфера сцени (Scene Ambience)
Метою змін в освітленні навколишнього середовища/атмосфери є надання користувачам можливості змінювати кольорові компоненти сцени, дозволяючи майстру гри створювати власну атмосферу з ефектом занурення.
Наприклад, користувачі можуть імітувати атмосферу певної планети з різними кольорами сонця, наприклад, червоне сонце створює тепле, моторошне сяйво над ландшафтом або блакитне сонце, що випромінює холодне, чужорідне світло. Інші приклади включають створення атмосфери будинку з привидами, яскраве і веселе освітлення сонячної галявини або суворе, холодне освітлення футуристичного космічного корабля. Така гнучкість дозволяє створити більш динамічне та захопливе середовище для розповіді, пристосоване до наративних потреб кожної сесії.
Покращені джерела темряви (Improved Darkness Sources)
Відтворення темряви в сценах значно змінилося з часів ранніх версій Foundry VTT. Спочатку це була дещо секретна функція, яку можна було досягти, надавши джерелу світла від’ємний радіус. Потім його можна було представити з від’ємним значенням яскравості.
Однак до цього моменту джерела “темряви” не могли робити нічого іншого, окрім як створювати візуальну “тьмяність” на ділянці. Механічно область залишалася повністю “освітленою”. Тобто, токени все ще могли “бачити” в межах свого радіусу, точно так само, як вони могли бачити будь-яке інше джерело світла.
Вперше у V12 з’явився новий перемикач “Darkness Source”, який робить джерело світла не тільки візуально “тьмяним”, але й механічно темним. Ці джерела темряви також впливають на зір токенів, роблячи неможливим для токенів бачити крізь них на інший бік без спеціального режиму зору. Якщо токен буде настільки безглуздим, що ступить у джерело темряви, відстань його зору різко зменшиться, що не дозволить йому бачити зсередини темряву ззовні.
Метод створення “справжньої” темряви, що блокує зір - це те, про що спільнота часто просила, тож ми дуже пишаємося тим, що змогли задовольнити це прохання!
Регіональна темрява (Regional Darkness)
Потужною функцією Foundry VTT є можливість легко використовувати одну і ту ж сцену для відвідування вночі та вдень. Це досягається шляхом автоматичного вимкнення глобального освітлення (тобто денного світла), коли рівень темряви сцени перевищує певне значення (так званий поріг глобального освітлення). Наприклад, якщо ви встановили поріг і натиснули кнопку “Перехід у темряву” в інструментах освітлення, глобальне освітлення автоматично вимкнеться для сцени і вона стане механічно “неосвітленою”. Це означає, що токени повинні будуть принести своє власне джерело світла або режим зору, якщо вони хочуть бачити.
Але що, якщо ваша сцена містить як темні “внутрішні” зони, так і яскраві “зовнішні” зони одночасно? Цю проблему тепер можна вирішити за допомогою однієї з нових потужних функцій V12 для регіонів сцени: Налаштування рівня темряви (Adjust Darkness Level). Якщо ви використовуєте цю опцію, щоб зробити частину мапи темнішою за порогове значення, ця область стає не лише візуально темною, але й механічно неосвітленою. Гравцям без надприродних відчуттів доведеться взяти з собою факел, щоб дослідити цю печеру!
Roll and Go
Виберіть свій власний метод випадковості (Choose Your Own Method of Randomness)
З випуском декількох конкуруючих Bluetooth-кісток ми почули бажання спільноти мати можливість використовувати ці кістки з офіційною інтеграцією Foundry VTT.
У V12 з’явився новий розділ “Налаштування кісток” у налаштуваннях гри, який дозволяє користувачам визначати свій метод випадковості.
- Цифровий кидок Foundry VTT - цей новий метод надає пріоритет будь-якому модулю, який змінює метод кидання кубиків (наприклад, для певного набору Bluetooth-кісток).
- Цифровий кидок (Mersenne Twister) - це стандартний метод, який завжди використовувався у Foundry для створення ваших кидків.
- Ручне кидання - Foundry пропонує користувачеві ввести число, яке буде результатом його кидка. Зазвичай це число, яке було отримано на фізичному кубику. Ручний метод в першу чергу орієнтований на ГМів, які хочуть керувати своїми столами особисто, але при цьому бажають скористатися можливостями автоматизації Foundry VTT. За замовчуванням метод кидання кубиків не змінюється: використовується опція Digital Roll (Mersenne Twister).
Розбір кидків і Peggy (Roll Parsing and Peggy)
Ми також вдосконалили розбір формул кидків, представивши нову бібліотеку під назвою Peggy. Хоча більшість користувачів можуть навіть не помітити різниці, перехід на використання Peggy в якості синтаксичного аналізатора дозволяє нам нарешті виправити деякі дуже незрозумілі випадки, які могли іноді давати неточні або неочікувані результати для дуже складних формул кидків. В результаті цієї зміни, наше кидання кісток стало більш надійним, ніж будь-коли раніше.
Покращення звуку (Audio Improvements)
Під час розробки V12 ми додали кілька важливих покращень до аудіосистеми Foundry.
Динамічні звуки навколишнього середовища (Dynamic Ambient Sounds)
Розміщувані звуки мають нові опції для додавання потужних фільтрів ефектів. Наприклад, це дозволяє стінам приглушувати звуки, що проходять крізь них! Ці нові опції з’явилися у вигляді нового розділу Special Effects, який можна знайти у вікні конфігурації розміщених Ambient Sounds.
Наразі Ambient Sounds підтримують наступні ефекти:
- Low Pass - часто використовується для емуляції щільної поверхні, що пом’якшує високочастотні звуки, фільтри Low Pass роблять звук більш “насиченим”, “теплим” і, що найважливіше, “приглушеним”. Якщо ви хочете, щоб звук звучав так, ніби він приглушений за дверима або стіною, вам слід застосувати фільтр низьких частот.
- High Pass - часто у зовнішньому середовищі низькі частоти звуку падають, тоді як високі частоти залишаються чистими. Ви можете використовувати фільтр високих частот для імітації звуку, що перетинає великий відкритий простір, наприклад, трав’янисте поле.
- Reverb - в основному використовується у випадках, коли ви хочете зробити оточення звуку трохи більш “відлунюючим”, щоб звук імітував середовище, наприклад, тверді кам’яні стіни, які відбивають звук назад до слухача. Існує два різних способи застосування цього ефекту:
- Base Effects - застосовуються до звуку незалежно від того, чи є стіна між слухачем і джерелом звуку
- Muffled Effects - застосовуються лише у випадках, коли стіна між джерелом і слухачем змінює звук. Важливо, що якщо для звуку не встановлено опцію “Обмежений стінами” на хибне значення (що дозволяє чути його крізь стіни), цей ефект ніколи не буде застосовано.
Музичні дозволи (Musical Permissions)
Гравцям тепер можна призначати права власності на списки відтворення. Це дозволяє їм контролювати, які звуки грають, вносити зміни в будь-яку частину плейлиста і запускати звуки на вимогу точно так само, як це може робити ГМ. ГМ все ще має контроль, хоча… ці дозволи функціонують так само, як і дозволи для інших типів Документів. Однак, якщо гравець хоче грати діджея, це дозволяє ГМу зняти з себе частину тягаря з підтримання атмосфери гри.
Канали мікшування звуку (Audio Mixing Channels)
Гравці та користувачі вже давно мають змогу керувати гучністю музики, ефектів оточення та звуків інтерфейсу окремо. У V12 кожен фрагмент звуку, що відтворюється в екосистемі Foundry VTT, може визначати, до якого каналу він належить. Це дозволяє всім 3 каналам мати окремий контроль гучності та синхронізацію.