Derpy minor my little pony фэндомы Rarity mane 6 mlp art mlp язычок 

Развернуть

Factorio Игры Factorio Dev Diary 

Factorio Dev Diary #419 - Display Panel & Inserter pickup fixes

Factorio,Игры,Factorio Dev Diary

Здравствуйте!

Добро пожаловать в раздел «Факты недели».

Указатели или доски объявлений — обычное явление в видеоиграх, вероятно, не намного уступающее вездесущим деревянным ящикам или взрывчатым бочкам. Это хороший, чистый и понятный способ общения с игроком, и это было то, что мы давно хотели увидеть в Factorio...

Display Panel - Дизайн (Эарендель)

Полная функциональность новой сущности "Display Panel" отображения будет полностью объяснена ниже. Для дизайна нам нужно знать только то, что это сущность, которая может отображать любую иконку по вашему выбору (предмет, рецепт, виртуальный сигнал).

Первая версия, которую я увидел, была указателем, добавленным Klonan. Это был хороший плейсхолдер, и общая концепция отображаемой сущности как указателя была чем-то, что стоило рассмотреть. Теоретически указатель мог бы работать, но есть несколько отвлекающих факторов:

Указательный столб — это в первую очередь 2D-структура, и под этим я подразумеваю, что он высокий и плоский, но не имеет большой глубины. Если опорный столб указателя находится в середине плитки, то как более высокая сущность, это выталкивает область отображения вверх и наружу плитки, которую занимает сущность.

- Если указатель переместить вперед, чтобы дисплей поместил больше информации в пределах плитки сущности, то, поскольку это в основном двухмерная структура, будет казаться, что большая часть плитки позади него пустует, и он будет выглядеть странно, если его выстроить в ряд с другими объектами.

- Поверхность дисплея в итоге становится вертикальным прямоугольником, но значки, которые появляются на дисплее, — это значки, которые предназначены для просмотра в графическом интерфейсе или горизонтальной плоскости, например, на земле или транспортной ленте. Это заставило бы все значки выглядеть более неуместными и бороться с кажущейся проекцией камеры Factorio.

HBQ — , *
	• ^1 - ^ 1	-V	r-J—f	-
		: - л £ '	T 1 > -V 1—«—,Factorio,Игры,Factorio Dev Diary

Если бы какая-либо версия указателя работала, то она, вероятно, должна была бы быть больше похожа на один из тех временных дорожных знаков, которые стоят на земле и опираются на какие-то треугольные опорные стойки. Большая проблема в том, что ни один из этих вариантов не имеет нужной эстетики.

Первый дизайн - Демонстрационная пластина

Мой первый дизайн был быстрым макетом чего-то, что исправило бы многие из этих проблем. Это была бы широкая, блочная, в основном горизонтальная поверхность дисплея, которая бы работала более естественно с имеющимися у нас значками. Это больше похоже на металлическую табличку дисплея, которую вы можете увидеть в старом промышленном музее или военном мемориале. Следующая проблема заключается в том, что если бы значок был нарисован на поверхности, то на самом деле он должен был бы быть немного сжат по вертикальной оси из-за направления камеры. Чтобы избежать этого, я слегка наклонил поверхность вперед, чтобы она была обращена к камере. Многие панели дисплея наклонены к ожидаемому положению головы стоящего читателя, поэтому это выглядело разумно.

Последнее, что было, это то, что значки, как правило, лучше всего смотрелись и были четкими на темно-сером фоне, поэтому это тоже было добавлено. Изображение ниже примерно то к чему я пришел тогда. Это не было задумано как полноценный дизайн и не было сделано в обычном разрешении 4x концепт-арта. Тем не менее, это работало лучше, чем указатель, поэтому его добавили в игру на несколько месяцев. Ему даже удалось пробраться в несколько FFF.

Factorio,Игры,Factorio Dev Diary

Второй дизайн - Больше логики

Когда пришло время сделать правильный дизайн, некоторые требования изменились. Это был уже не просто статический дисплей, он имел логическое соединение для изменения значка и многого другого. Он также был имплементирован позже как часть системы логической сети, вместе со всеми комбинаторами, выключателем питания и программируемым динамиком. Таким образом, новый дисплей должен был выглядеть как часть этого пласта технологий.

Новый дизайн основан на базе в стиле комбинатора. Все комбинаторы разные, поэтому база дисплея также «такая же, но другая» в некотором роде.

Factorio,Игры,Factorio Dev Diary

Для самой лицевой стороны дисплея я выбрал ЭЛТ (электронно-лучевую трубку). Такая изогнутая поверхность дисплея идеально подходит для эстетики этой части технологического дерева. Экран такого типа обычно наклонен вперед, но если вы посмотрите на множество старых дисплеев NASA, многие из них были наклонены довольно сильно вверх. Вероятно, это сделано для того, чтобы их было хорошо видно из положения сидя или стоя. По причинам, упомянутым ранее, для наших иконок лучше всего, если поверхность дисплея находится ближе к камере, что составляет угол 45 градусов. Экран ЭЛТ наклонен примерно на 40 градусов, так что он почти обращен к экрану, но вы все равно можете видеть некоторые интересные детали сверху.

Factorio,Игры,Factorio Dev Diary

Первая итерация нового дизайна была основана на вращении всей структуры без изменения ее формы в каждом направлении. Это заставило экран двигаться в зависимости от ориентации сущности, что более соответствует форме объекта, но было не очень здорово, когда значок и текст смещались влево или вправо, поэтому это пришлось изменить.

Вторая итерация сохраняет экран устойчивым на протяжении всех вращений. Это означает, что форма структуры отличается для каждого вращения. Было немного трудно удержать точки соединения цепей в разумных местах, но это сработало.

Factorio,Игры,Factorio Dev Diary

Мы могли бы сделать эту сущность всего в одном возможном расположении но наличие вращающихся логических соединений цепей довольно важно, потому что это одна из немногих сущностей в игре, ориентированных на отображение, и наличие проводов что пересекали бы экран, — это не то, что вам нужно. Вращение сущности для изменения положений соединений логических  цепей помогает сохранить экран чистым. Даже если вы вращаете их как часть более крупного массива комбинаторов, они все вращаются вместе и предотвращают запутывание проводов. (Кроме того, даже постоянный комбинатор имеет 4 вращения, поэтому было бы странно, если бы на панели отображения было бы только 1).

Этот дизайн довольно новый, поэтому нам нужно будет его еще протестировать, прежде чем называть его окончательным. Пока нет 3D-модели, она будет сделана, если мы решим, что эта версия нас устраивает.

Display Panel - Функциональность (Клонан)

Дисплейная панель по своей сути и простейшему назначению — это всего лишь способ отображения сообщений игрокам, поэтому она стала естественной первой функцией.

Показ сообщений

В графическом интерфейсе дисплейной панели игроки могут ввести сообщение, которое позже будет показано. По умолчанию сообщение отображается только при наведении курсора на дисплейную панель игроком.

Factorio,Игры,Factorio Dev Diary
Factorio,Игры,Factorio Dev Diary
Однако иногда нам нужно, чтобы информация была видна постоянно, поэтому мы добавили опцию, позволяющую сделать текст видимым всегда (в альтернативном режиме).

1-VVVVVVVy. VVVW*VVV^VVWA5pV^VWVV.
	rrF'1
•агав;	1.
	■*:<^«а1г€Ц|
	
U-J и и .	"• ï,Factorio,Игры,Factorio Dev Diary

Для коротких сообщений это нормально, но мы не можем просто спамить целыми абзацами на экране игрока все время. Поэтому мы сделали так, что будет отображаться только первая строка текста, а полное сообщение будет появляться только при наведении.

jîî jîî jî'Jîî /îfjfjfjfjrjî'jfjf'j:
mm

fT-- yr -	*
rvd	pCjjagg
- «V«a.
Su
A-O
15 Modules - don't touch
if
IfcJS
£2
r , | * « »1
JS?>,Factorio,Игры,Factorio Dev Diary
Modules - don't touch
i ; t.;	'
-— ---------— | t
Every time I come ba'ckto base, all
the modules are gone.
b:j	?nJ * ,j tr,j
Seriously, stop stealing them! It's beyond frustrating. I put them in the^chest for a reason.
ton,Factorio,Игры,Factorio Dev Diary

Показ значков

Затем нам показалось само собой разумеющимся, что мы можем задать какой ни будь значок для показа. Это не требует никаких объяснений, вы выбираете значок, и он рисуется на сущности.

Однако, мы пошли еще дальше, добавив опцию «Показать на карте», которая выводит использование экранных панелей на новый уровень.

Factorio,Игры,Factorio Dev Diary
Factorio,Игры,Factorio Dev Diary

Нажатие на значок на карте открывает указатель для легкого редактирования.

Это очень похоже на систему пользовательских тегов, но не требует ручного управления при добавлении или удалении части вашего завода. И, конечно, Коварекс заставил это работать с новыми параметризованными чертежами, так что штамповка стандартного дизайна будет иметь панель отображения с правильным значком и с идеальным выравниванием.

Factorio,Игры,Factorio Dev Diary

Подключение к коммутационной сети

Подключение дисплейной панели к логической сети открывает целый ящик пандоры. Изначально мы не знали, как это сделать - ввод текста с помощью логики? Логическая сеть не так работает.

Поэтому мы остановились на простой системе:

Вы указываете список сообщений, каждое из которых имеет свое собственное условие.

- Список оценивается сверху вниз (их можно перетаскивать, чтобы изменить порядок).

- Отображается первое сообщение, которое соответствует условию.

Add new message
Display panel
Connected to: 430©
M Always show © M Show in chart©
Copper low!
^ Plastic low! D
>/ Everything is okay
1.0k	X
	
1.0k	X
	
1.0k	X,Factorio,Игры,Factorio Dev Diary

Мы также добавили функцию использования «Любого сигнала» в качестве подстановочного знака для установки значка, чтобы вы могли создавать динамические дисплеи комбинаторов.

Connect
Add new message,Factorio,Игры,Factorio Dev Diary

Масив комбинаторов выбирает рецепт для всех дробилок, а на панели дисплея отображается текущий выходной сигнал.

Мы довольно часто использовали дисплейные панели в наших офисных LAN-вечеринках, они отлично подходят для многопользовательской игры, где общение является ключевым фактором. Display panels будут доступны бесплатно как часть обновления базовой игры 2.0.

Исправления захвата инсертера (Твинсен)

Играя с новыми быстрыми транспортными лентами, я заметил проблему. В некоторых ситуациях даже самые быстрые манипуляторы не могли забрать предметы с лент. Они почти дотягивались до них, но промахивались. Похожая проблема, которая всегда присутствовала в игре, — это твёрдотопливные манипуляторы, которые не успевали забрать топливо для себя с экспресс-транспортных лент. И лично я находил эту проблему крайне раздражающей и не имеющей никакой игровой пользы.

Быстрые манипуляторы не могут справится с зеленым конвейером. Видео на скорости 0,5x.

Твердотопливные манипуляторы не могут ухватить топливо с экспресс-транспортной ленты.
Видео на скорости 0,5x.

Если посмотреть на них в замедленном темпе, особенно в примере с твердотопливным, то кажется, что рука прекрасно дотягивается до предметов, поэтому она должна просто поднять их, если они достаточно близко. Реализация простого захвата должна исправить обе проблемы. Но.. как обычно, все было не так просто.

Манипуляторы имеют 2 независимые скорости движения:

Скорость вращения — насколько быстро вращается рука вокруг своей оси.

- Скорость вытягивания — насколько быстро вытягивается и втягивается рука.

После некоторой отладки выяснилось, что скорость выдвижения была слишком медленной: рука поворачивалась на правильный угол, но кисти требовалось много времени, чтобы достичь нужной длины. Поэтому нам пришлось отладить эту скорость. Я также улучшил логику привязки, так что манипуляторы будут лучше реагировать на предмет, когда он достаточно близко.

С изменениями обе проблемы исправлены. Вставки теперь более последовательны, менее склонны к досадным сбоям, а также дают им небольшой бафф при снятии с транспортных лент.

Развернуть

Princess Celestia royal my little pony фэндомы mlp упоротость mlp скетч mlp art 

Welp. i tried my hand at the new honse meme. Not as good as some others out there lol.

Princess Celestia,Принцесса Селестия,royal,my little pony,Мой маленький пони,фэндомы,mlp упоротость,mlp скетч,mlp art,Princess Celestia,mlp royal,my little pony,fandoms,,mlp art

Your Highness? by thelunarmoon

Развернуть

Factorio Игры Factorio Dev Diary 

Factorio Dev Diary #418 - Space Age release date

ч $ 1 tí 1 i à 4 1 m £ M JÊ ч ïA -'r • & ▼ *u¡,Factorio,Игры,Factorio Dev Diary

Здравствуйте!
Сегодня мы хотим поделиться с вами интересными новостями!

Factorio: Space Age - Дата выхода

Мы планируем выпустить дополнение Factorio: Space Age 21 октября 2024 года . Причина выбора этой даты в том, что после летних каникул у нас будет достаточно времени для доработки релиза, а также останется достаточно времени после него, если нам понадобится выпустить исправления ошибок до рождественских праздников.

Цена дополнения «Космическая эра» составит 35 долларов США, столько же, сколько и текущая базовая игра.

Вы можете добавить игру в список желаний в Steam .

Factorio: Космическая эра - Содержание

Factorio: Space Age продолжает путешествие игрока после запуска ракет в космос. Открывайте новые миры с уникальными испытаниями, используйте их новые ресурсы для получения передовых технологических достижений и управляйте своим флотом межпланетных космических платформ.

Космические платформы - FFF-381

Основа планетарной логистики и первый выход в космос. Космические платформы — это летающие фабрики, которые служат средством передвижения между планетами.

- Постройте оборону, чтобы сбивать приближающиеся астероиды, которые грозят разбить вашу платформу.

- Собирайте обломки астероидов, дробите их и перерабатывайте в топливо для двигателей и боеприпасы для турелей.

- Используйте центральный узел платформы и грузовые отсеки для перевозки грузов между планетами.

 • - -Л to? JH ^шж,Factorio,Игры,Factorio Dev Diary

Вулканус - FFF-386 , FFF-387

Пылающие вулканические горы, величественные геологические формы рельефа, равнины, покрытые пеплом, и густой желтый серный туман, который обжигает легкие и выедает глаза.

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

Извлекайте лаву из ям, чтобы получить в изобилии расплавленное железо и медь.

Исследуйте передовые металлургические технологии, чтобы построить промышленный мир-кузницу.

Factorio,Игры,Factorio Dev Diary

Фулгора - FFF-398 , FFF-399

Безжизненное и пустынное место. Разреженный воздух леденяще холоден и сух как кость. Далекое солнце мерцает в тусклом пурпуре неба. Мимо проносятся тонкие облака, а штормовой ветер взметает песок, который царапает вашу броню.

- Защитите себя от ночных гроз, используйте их безжалостную силу для собственных нужд в электроэнергии.

- Соберите высокотехнологичные отходы и руины давно забытой цивилизации и переработайте их в пригодные к использованию продукты.

- Откройте для себя передовые электромагнитные и сверхпроводящие возможности гольмия.

Factorio,Игры,Factorio Dev Diary

Глеба - FFF-413 , FFF-414

Яркий многоцветный болотистый ландшафт, окутанный легкой дымкой. Воздух густой и влажный, доносящий издалека приглушенные крики невидимых животных.

Открывайте для себя экзотические растения, выращивайте их и собирайте плоды с помощью сельскохозяйственных башен.

Готовьте, измельчайте и обрабатывайте продукты, прежде чем они сгниют и испортятся.

Откройте для себя новую сферу биохимической инженерии.

V. ffffffff » ? Í <4 Кг fcj№ Ай’* /ЯКП£> V. ^ ] 9 Л;* » ш i 4^' Л »Ä А> ■.» />• "л- Ла < /Çr> **■ 1 ^ м- ч /»Г ъ >« , _ H1 ¿J V / vV* /1 ../i . „/У~ __ .-^l ^ír- —>Y —-T -Л —A -^1 —A —>1 «VWR! r». —л —->r ^>- ИЗЙ * ■ KP ЙГ * ^ ' ¿Ж L • .Vtí^v

Повышенные рельсы - FFF-378

Выведите свои поезда на новый уровень! Надземные рельсы привносят совершенно новое измерение вызовов и возможностей в ваши железнодорожные сети.

- Прочные рельсовые пандусы и опоры для подъема рельсов.

- Преодолейте любые препятствия, постройте опоры на воде, чтобы пересечь океаны.

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

i » т^^'\ -A~¿L~~*i w- i (Чг/ fT ’^'^^-Я^^^Иу'ДГуацИоД^^Идм Ук-ч^, ‘^Лш|>г^. i - 'кФъЗгг .•‘•у»>с.ТжлЯвОЯл- '\ .j ^,Factorio,Игры,Factorio Dev Diary

Качество - FFF-375

Обеспечьте высокий уровень качества всех ваших предметов, машин и оборудования.

- Каждый предмет, сущность и снаряжение имеют 5 возможных качеств: от обычного до легендарного!

- Исследуйте новые модули качества, используйте их для создания более качественных предметов и промежуточных продуктов.

- Каждый уровень качества дает больший бонус: машины работают быстрее, оборудование мощнее, турели имеют большую дальность и т. д.

 Щ " ш lfeí?v* Л ! О,Factorio,Игры,Factorio Dev Diary

И дальше...

На этом путешествие не заканчивается, в Factorio: Space Age вас ждет еще много интересного, и еще многое предстоит раскрыть:

- Музыка космической эры - каждая новая планета сопровождается уникальным саундтреком чешского композитора Петра Вайсара - FFF-406

- Новые враги и средства защиты. Некоторые новые планеты населены уникальными и опасными существами, от которых вам придется защищаться.

- Загадочная 5-я планета — обещает самый уникальный геймплей, но она остается окутанной тайной. Это самая дальняя планета от солнца, поэтому она темная и холодная.

Факторио 2.0

Но это еще не все. Factorio: Space Age также совпадет с выпуском Factorio версии 2.0, которая будет бесплатным обновлением для всех пользователей.

Версия 2.0 имеет широкий спектр игровых изменений и улучшений:

- Более умные рабочие роботы - FFF-374

- Новые рельсы - FFF-377

- Удаленный просмотр - FFF-380

- Улучшения комбинаторной и схемной сети - FFF-384 , FFF-405

- Улучшения управления поездом - FFF-389 , FFF-395

- Новая жидкостная система - FFF-416

- Переработанная генерация ландшафта Nauvis - FFF-401

И еще больше, каждую новую неделю!

Получайте последние обновления

Если вы хотите быть в курсе последних новостей, обязательно посетите наш еженедельный блог о разработке или подпишитесь на нашу рассылку .

Вы также можете добавить дополнение Factorio: Space Age в список желаний в Steam , чтобы получить уведомление о его выходе.

Развернуть

derpy hooves minor my little pony фэндомы mlp art that1persn biblically accurate angels mlp crossover 

Развернуть

Facto Factorio Dev Diary 

Factorio Dev Diary #417 - Space Age development

Facto,Factorio Dev Diary

Привет,
Мы обычно показываем готовые вещи в пятничных фактах, но лично мне всегда нравилось заглянуть за кулисы и увидеть там (временный) беспорядок. Это побудило меня сделать небольшой обзор того, как с моей точки зрения ощущается общая разработка дополнения. Если вы похожи на меня, возможно, вы это оцените.

Наша история началась в феврале 2021 года с FFF-365, когда мы объявили о планах по созданию пакета расширения.

Первый год - 2021 - Создание скелета

Во-первых, мы сосредоточились на подборе персонала, и команда увеличилась вдвое почти до 30 человек, при этом заметно расширился отдел GFX с 2 до 8 человек.

Создание плана – вертикальный срез

Первым и очевидным шагом было множество долгих обсуждений плана всего расширения на высоком уровне. Поскольку мы хотели повторить стиль игры, мы очень часто использовали выражение «вертикальный срез». Вертикальный срез должен был стать самым простым способом прохождения расширения, чтобы мы могли начать улучшать его на основе отзывов. Ретроспективно это была очень хорошая идея.

Мы наняли Эренделя, и он был рад помочь с частью дизайна игры. Благодаря своему огромному опыту в моддинге и беспрецедентной производительности он всегда мог очень быстро предоставить полностью рабочий проект планеты и ее механики. Если это было возможно, он часто писал часть проекта механики с помощью скриптов Lua, чтобы иметь тестируемую версию до того, как она будет принята и должным образом интегрирована в движок на C++.

Черновики Эарендела всегда были чрезмерными, когда дело касалось сложности игрового процесса, поэтому мы обычно начинали с упрощения его до половины исходного размера, а затем снова наполовину... но гораздо проще отказаться от прототипа, оставив лучшие моменты, а не создавать что-то с нуля.

Планеты

Следующим делом были планеты, поскольку большинство других вещей так или иначе связаны с ними. Класс "Planet" был создан 2021-01-26, так что это было за несколько дней до анонса первого пакета расширения. Мы всегда знали, что хотим иметь расширение, основанное на посещении разных планет, поэтому поддержка независимых поверхностей уже много лет была в коде игры. Поскольку моды часто использовали несколько поверхностей, она уже была достаточно протестирована. Это избавило нас от многих проблем, но все еще оставалось много вещей, которые нужно было настроить, чтобы независимые поверхности и планеты работали достаточно хорошо в соответствии с нашими стандартами.

В это время мы приняли решение, что планеты будут основаны на прототипах и тесно связаны с прогрессом, а не исследованием псевдо-бесконечных случайно сгенерированных карт.

Итак, мы просто определились с основной темой каждой из планет и начали закладывать необходимую для этого основу, например, возможность указать определенные условия создания определенных рецептов, различные свойства планет, влияющие на такие вещи, как мощность солнечных батарей, и также поддержка пользовательского интерфейса, позволяющая комфортно переключаться между местами.

Космические платформы

Космические платформы были второй по важности частью конструкции, поскольку они соединяли планеты и были связаны с другими игровыми подсистемами.

Надземные рельсы ( FFF-378 )

Мы знали, что надземные рельсы просто должны быть частью расширения с самого начала.
Поскольку это была одна из самых больших проблем расширения, было бы неплохо начать его как можно скорее.

Спойлеры ( FFF-414 )

Мы не знали точных рецептов и контента, которые нам понадобятся на Gleba, но мы уже знали, что понадобятся испорченные продукты, поэтому поддержка была реализована в первый год.

Второй год – 2022 – Первый играбельный прототип

Спустя год (!), у нас появилось еще одно обновление FFF-367 , краткая версия звучит так: "Большие части игры играбельны, и мы приближаемся к состоянию, когда можно провести тестирование от начала до конца", с оговоркой "в самом минималистичном виде".

Первое прохождение

Эта ставка было верным, так как именно в это время я начал первую смелую попытку пройти все расширение от начала до конца.

Прохождение заняло 7 месяцев, и в начале этого пути не было возможности на самом деле играть от начала до конца. Но идея заключалась в том, чтобы пытаться продвигаться вперед, заполняя все пробелы между отдельными функциональными частями контента по мере продвижения в игре.

Когда я начал, часть с планетарной логистикой еще не работала, поэтому мне пришлось расширять фабрику и тестировать другие вещи (например, возвышенные рельсы и качество), прежде чем отправиться в космос.

Поскольку я построил более крупные объекты на Нависе и хотел больше тестировать возвышенные рельсы и систему поездов, я был более мотивирован улучшить её. В это время я разработал прерывания поездов, а Клонан создал группы поездов ( FFF-389 ).

Космическая логистика

Первая версия космической логистики была абсолютно ужасной в использовании, так как на космической платформе было несколько несвязанных зданий, называемых катапультами космической платформы.

Каждый эжектор представлял собой отдельное здание с самостоятельным инвентарем и полунезависимыми запросами.

к 'Ä Ы Щ 1Й А га Г leí А L &J 'fLai А /7?,А,;»»> л,Facto,Factorio Dev Diary

Работать с этим было мучительно, подобно тому, как происходила доставка вещей в космос, что описано позже в FFF-381. Это было коряво, но, тем не менее, от этого уже можно было отталкиваться.

Смотри, теперь у двигателей есть «пламя»!

»>>/>>>>»/* ¿v > ****************** ¡~ * '*. ■ '■••■■,'; 3>с.ч #л71у. fie. ) ф\ W. ■ •* Bl;. B< . -< VJpi JvAi Hf fr' Ry> IK. -, 1 H ■* fTfí^ vje ■ щ’иц *—« fe 1 Вь _.-j V. ■• B. ' B- ¿jfmífczáяшШ&ф ^¿Щл В\>* p Г mS Br J 1 Щ fe B> . •< 1£Л ) R B\- В- ■ K i.

Продвижение по планетам

Вулканус была первой планетой для тестирования, так как у неё не было очень специфических технических требований по сравнению с другими планетами (Глеба с её сельским хозяйством и Фулгора с молниями ещё не были готовы).

Базовый Vulcanus с временной графикой приподнятых рельсов.

Facto,Factorio Dev Diary

Глеба была второй. Что касается посадочных площадок, то можно увидеть одну из проблем оригинальной конструкции, где каждая посадочная площадка индивидуально принимала какой-то груз из космоса. Это имело 3 основные проблемы:

1) Было очень неприятно обрабатывать каждый запрос по отдельности.

2) Поскольку посадочные площадки еще не были поставщиками логистических услуг, мы, как правило, повсюду использовали повторяющуюся схему «посадочная площадка → пассивный сундук поставщика».

3) Поскольку посадочные площадки можно было построить где угодно, было слишком банально иметь возможность сбрасывать предметы из космоса куда угодно. Это одна из причин, почему теперь у нас есть только одна расширяемая посадочная площадка на планету.

Простая Глеба с ранними посадочными площадками и слишком большим количеством пригодных для сбора урожая видов растений.

 NNNlHV vRXXÍSm* . -1 -í ■*. л ' f> m ^0ПМ\\: •£ j¡Wwirt$ «i -Up '*’' »^*¿.-1*. .¿»li'Vv V>vM’ • •«■«•«■ jtyA ■w» ! < ►•' áT" ¿k' |\T i? 6» I\ Y \ ¡» \ J,Facto,Factorio Dev Diary

Фулгора была третьей планетой, которую я посетил, с ее оригинальным дизайном, похожим на дизайн базовой игры, и именно с этого места я начал относиться к ней скептически...(подробнее позже).

Простая Fulgora с графикой временных приподнятых рельсов и ванильной добычей руды.

Facto,Factorio Dev Diary

Короче говоря, 7 месяцев спустя, проведя в сохранении 370 часов (!), я наконец смог добраться до конечного экрана.

Вскоре после этого у нас была вечеринка в офисе по локальной сети, где мы попытались провести многопользовательское прохождение, чтобы получить больше отзывов и также протестировать многопользовательский режим. Мы играли с понедельника по пятницу, и мы едва добрались до последней планеты, совершенно измотанные в последний день, так и не сумев закончить игру до конца.

Первая итерация и вывод

Прохождение дополнения в первый раз было одновременно и хорошо, и плохо.

Хорошо, потому что теперь у нас была база, и с этого момента ситуация могла стать только лучше. Графика, звук и музыка будут обновлены. Пользовательский интерфейс новых систем будет улучшен, а игра в целом станет сбалансированной.

Плохо, потому что у меня были серьезные сомнения относительно концепции пакета расширения, в основном изложенной в FFF-399 .
Было огромное количество проблем, и хотя подавляющее большинство имело четкое решение, некоторые из них были другими:

- Это было слишком долго (370 часов — это слишком много, даже с учетом первоначальных трудностей).

- Это было слишком однообразно (и речь идет даже не о Фульгоре).

- Некоторые механики оказались слишком непроработанными/раздражающими для использования при масштабировании (логистика космической платформы, поезда и т. д.).

- Масштаб всех дел, которые нужно было сделать, был слишком велик, и зачастую это казалось слишком монотонным.

В заключение был сформулирован очень конкретный набор рекомендаций для остальной команды разработчиков:

- Прогресс игры должен быть быстрее. В основном за счет снижения стоимости вещей, сокращения ненужных этапов рецептов и повышения качества геймплея.

- Геймплей, ориентированный на конкретную планету, должен быть более отчетливым.

Именно тогда были внесены изменения в планеты. Вулканус был изменен так, чтобы получать основные ресурсы из лавы, чтобы избежать добычи меди, железа и камня, а количество растений, собираемых на Глебе, было уменьшено с 12(!) до 2. Мы также разрешили использование специфичных для планет производящих строений для экспорта в другие места, что значительно увеличило мотивацию к расширению, а также сделало прогресс быстрее и более вознаграждающим, так как эти машины очень мощные.

Третий год - 2023 - Усердие

Я снова прошел игру от начала до конца, это заняло 240 часов, что все еще слишком много. Но нужно учитывать, что я сильно увеличил размер фабрики, пытаясь получить почти все в легендарном качестве, с целью 1 миллиона науки в минуту (SPM).
Я еще не достиг 1 миллиона SPM, но, возможно, достигну этого до релиза :).

В целом игра получилась короче оригинальных 370 часов и, что самое главное, она оказалась более увлекательной.

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

Объяснение новых вещей

Мы поняли, что нам нужен лучший способ понять новые части игры, поэтому была создана Факториопедия ( FFF-397 ).
Поскольку механика стабилизировалась, мы начали добавлять в нее улучшения и всякие мелочи, улучшая одновременно с этим общие возможности.
Теперь мы можем показывать взаимодействия с графическим интерфейсом в симуляциях (мне кажется классным, что у нас на самом деле есть два полностью независимых активных состояния пользовательского интерфейса в игре: одно в симуляции и одно, управляемое игроком). Мы также создали гораздо более мощную систему триггеров пропуска и пересмотрели практически все триггеры подсказок, чтобы быть более точными.

Геймплей и интерфейс

Мы закончили первую итерацию врага Глебы (будет показано позже). Мы внесли дальнейшие улучшения в удаленный вид, поскольку он все больше стал используется в расширении.
Логистические группы были сделаны и должным образом интегрированы в переработанную версию космической логистики, поэтому обновление того, что необходимо в системе импорта планеты → платформы → экспорт планет, можно было выполнить одним действием пользователя.

Ловец астероидов

Завершение работы над ловцом астероидов ( FFF-385 ) было большим делом, главным образом потому, что мы очень осторожно относились к его принципу работы, поскольку его работа была чрезвычайно слабой с точки зрения производительности.
Увидеть это в игре стало одной из важнейших вех в восприятии платформы.

Графика

Внешний вид планет приобретал более официальную форму.
Космическая платформа больше не представляла собой просто серые квадраты ( FFF-381 ).

Были переработаны звуки многих новых эффектов, а также много старых вещей.
Большинство машин стали полностью анимированными окончательными версиями того, чем они должны были быть.

Это также время, когда мы возобновили еженедельный FFF, так как чувствовали, что у нас есть достаточно, чтобы делится этим еженедельно до релиза.
Это помогало нас мотивировать и закончить работу.

Год четвёртый – 2024 – Всё складывается

На четвёртом году разработки мы завершили вторую итерацию игрового дизайна.
Все больше и больше членов команды также продвигались вперед и завершали свои прохождения, которые становились все более и более гладкими.

После этого мы сделали еще больше сокращений, в результате чего второе прохождение LAN-группы, которое мы планировали неделю назад, было завершено на четвертый день, даже не слишком стараясь ускорить прохождение.
Это был явный признак того, что следование рекомендациям, которые мы разработали 2 года назад, принесло результаты. И игру можно было закончить не только быстрее, но и сам геймплей стал интересней.

Основная проблема заключалась в том, что в последний день мы не могли продолжать многопользовательскую игру со всеми подключенными, имея 60 ИБП, нам пришлось замедлить скорость игры до 85%, чтобы компьютеры всех могли успевать.

Текущее состояние

Изменения жидкости ( FFF-416 ) в сочетании с литейным цехом ( FFF-387 ) и тот факт, что поезда с расплавленным металлом имеют гораздо более высокую плотность предметов по сравнению с железными/медными пластинами, позволяют сделать сетап финальной игры сильно отличающимися от лейтгейма базовой игры.

Мне нравится, что литейная сама по себе очень сильна и может изменить подход к планировке, но она работает хорошо только до тех пор, пока у вас есть постоянный поток кальцита, поступающий с Вулкануса, поскольку это единственная планета, где вы можете добывать его.
Это пример того, как решение проблем типа «почему нет железа» может привести вас на другую планету. И я люблю это!

Благодаря использованию кальцита, высокой производительности горнодобывающей промышленности и литейным заводам становится очень эффективно превратить горнодобывающие аванпосты напрямую в экспортеров расплавленного металла.

’ У7С Æ P rf ГЛ »4- :#r ? >-’ î* #c s^v, л'Л'., l-> V*** • J> .’i A f“J¿, EfB га II I f и sVV • ^ • r: Í» «Й,Facto,Factorio Dev Diary

Литейные и электромагнитные заводы — хорошие друзья в эндшпиле.
Обратите внимание, что каждый из выходов — это 8 ( 
FFF-393 ) зеленых стак-конвейеров, так что это эквивалентно 85,3 полностью загруженным синим конвейерам производства.
Это сила легендарного качества.

Facto,Factorio Dev Diary

Есть еще одно здание, обычно совмещаемое с литейным и электромагнитным заводами, о котором будет рассказано позже.

Повышенные темпы производства могут свести с ума ваши проекты железнодорожных перекрёстков.

íiáffiíg in i f м м ïï i и я in > J-? j j. : u¿£míu ,^^-—-т7ТТТ111Т!?ТТГТ1Т11ТГГГГГГТТТТТ:Г!! ülizm Т1ТМТ-”-ТТЦТТТГТТ1 rrwr^-ттг’’ИТТГГЛ 7Т ЛТТ ттг'тт^^тгттттттттггтг'тттттттттттттткг 4ШШ1 ' it J? '* .it **Г •Mit s,Facto,Factorio Dev Diary

Малый размер стака угля и камня в сочетании с невозможностью их плавления делает их переработку в некотором роде особенной.

vrmrrmmrrmmrmifwrrrmmmrrm ttttttinfmnffrfffifftrmtnnï éi > ■pn Ш?' ■ ' .1,Facto,Factorio Dev Diary

Поскольку вы не можете использовать громоздкие стандартные чертежи развязок на ранней стадии игры на Вулканусе, в сочетании со сложной местностью, выходят уникальные аванпосты.

bû tû *û Л *4 *r(¿ >• >• >■(/ *4,Facto,Factorio Dev Diary

Последняя картинка может дать вам представление о возможном масштабе игры в самом конце.
Эти стековые манипуляторы(которые раньше были пакетными манипуляторами) массово транспортируются на другую планету в качестве ингредиента для создания легендарных стековых манипуляторов( 
FFF-393 ).

Facto,Factorio Dev Diary

Третья итерация

Третья итерация происходит прямо сейчас. Основное внимание уделяется огромному количеству отзывов, которые мы получили с последней LAN-вечеринки.
Она будет сосредоточена на 2 основных категориях:

- Ошибки, улучшения геймплея и балансировка.

- Оптимизации. В космическую эру завод становится все больше, и нам нужно применить программистскую магию, чтобы все работало гладко.

Поскольку дела стабилизируются и я начинаю быть вполне доволен состоянием игры, мы готовы назвать конкретную дату выхода Space Age...
О которой мы сообщим вам на следующей неделе :)

Развернуть

Factorio Игры Factorio Dev Diary 

Factorio Dev Diary #416 - Fluids 2.0

Factorio,Игры,Factorio Dev Diary

Привет!
Берите с собой лучшую смазку, потому что пришло время поговорить о жидкостях!

Переломный момент

Ни для кого не секрет, что гибкая система Factorio непредсказуема, не интуитивна и порой разочаровывает. Пропускная способность трубы уменьшается с расстоянием с непостоянной скоростью, поэтому единственный способ достоверно узнать, сколько жидкости вы можете протолкнуть через трубу, — это обратиться к таблице на вики . Кроме того, пропускная способность может варьироваться в зависимости от порядка построения труб. Играть с этой системой крайне неудобно.

Было много попыток переписать жидкостную систему, но все они по той или иной причине закончились неудачей. Существующий алгоритм довольно быстр и достаточно хорошо работает для стандартного ванильного игрового процесса, и мы постарались его не трогать, насколько это возможно. Однако во время тестирования Space Age стало ясно, что существующая система больше не справляется со своей задачей. Масштабирование производства, обеспечиваемое новыми машинами и качеством, поставило алгоритм потока на колени.

Почему это не работает!?

Пытаясь избежать полной перезаписи, мы сначала попробовали увеличить пропускную способность за счет увеличения объема канала. Это «решило» основную проблему низкой пропускной способности за счет значительного увеличения размеров буфера. Резервуары для хранения стали практически бесполезными, а оборонительные стены с огнеметными турелями вбирали десятки тысяч единиц жидкости, высасывая базы досуха. В конечном итоге мы не смогли прийти к соглашению о том, как действовать; переписывание было сочтено слишком сложным, но ни у кого не было идей получше. Вопрос был вновь отложен на потом.

Я был крайне недоволен этим выводом. Трюк с увеличенной емкостью был скорее костылем, позволяющим скрыть проблему, чем четко сформулированным решением. Поскольку проще попросить прощения, чем разрешения, я рискнул и начал переписывать систему жидкости сам.

Новый алгоритм

Во время одного из обсуждений жидкостей Рсединг предложил алгоритм, очень близкий к тому, с которым он играл несколько раз, — алгоритм из мода Minecraft Thermal Expansion от команды CoFH:

Трубы(в том числе и подземные) и резервуары для хранения объединены в жидкостные «сегменты».

- Каждый сегмент наследует свой объем от составляющих его ячеек для жидкости и может содержать одну жидкость.

- Машины могут подавать жидкость в сегмент с неограниченной скоростью и могут забирать жидкость из сегмента со скоростью, пропорциональной тому, насколько заполнен сегмент. Другими словами, если сегмент заполнен наполовину, то скорость вытягивания равна половине максимальной.

- В частном случае насосы могут работать с большей скоростью, если они подключены непосредственно к резервуару для хранения.

Больше нет реалистичного «течения» жидкости по трубам; жидкость, подаваемая в сегмент, будет немедленно доступна в любой точке сегмента. Это «решение типа ядерной электрической сети», которое обсуждалось в предыдущих FFF. В результате каналы «просто работают», и вам практически не придется беспокоиться о пропускной способности.

It just works™

Демонстрации

Обратите внимание на визуализации отладки:

Зеленый цвет представляет количество жидкости в объекте.

Синий представляет объем потока, проходящего через объект на этом тике.

Анимации потока жидкости не являются окончательными.

Длинные трубопроводы

В старой системе пропускная способность ухудшалась по мере увеличения длины труб. Проблема заключалась не обязательно в том, что такое поведение существовало, а в том, что оно было непредсказуемым.

В новой системе сегменты представляют собой единое целое, поэтому жидкость больше не распространяется по трубопроводу. Более длинные трубопроводы имеют более высокую пропускную способность, но для полного опорожнения требуется больше времени. Точные цифры пропускной способности могут быть изменены в зависимости от дальнейшего тестирования.

Развязки

Старая система функционировала относительно нормально с прямыми трубопроводами, но как только появлялись перекрёстки, все ломалось. Количество жидкости, текущей к каждой стороне соединения, будет разным в зависимости от порядка построения объектов.

В новой системе перекрёстки совершенно не важны; сегмент заботится только о подключенных к нему машинах. Когда машина обновляется, ее максимальная скорость вытягивания ограничивается в зависимости от степени заполнения подключенного сегмента. Это приводит к гораздо более равномерному расщеплению, которое, хотя и не идеально, но чертовски близко.

Входное голодание

В старой системе соединения становились особенно плохими, когда в машинах не хватало входной жидкости. Например здесь топливный завод получает гораздо большую долю воды, чем завод окислителя.

В новой системе обе установки получают гораздо более равную долю жидкости.

Насосы

В старой системе для поддержания более высокой производительности требовались насосы. Однако это почти никогда не работало так, как можно было ожидать:

В новой системе больше нет необходимости использовать для этой цели насосы. Насосы по-прежнему полезны для создания направленного потока, действуют как условные клапаны в контурной сети и для загрузки/разгрузки поездов, но вы больше не обязаны размещать их в таком большом количестве, как раньше.

Расстановки для эндшпиля

Наконец, мы возвращаемся к нашему любимому химическому заводу. Эта установка не работает, потому что нефть застревает в выпускной трубе.

В новой системе производственный сегмент имеет достаточную мощность, так что все химические заводы имеют возможность пропихивать свою нефть.

Веселье важнее реализма

Новая система представляет собой довольно большой шаг назад с точки зрения «реализма» моделирования жидкости в Factorio. Но как гейм-дизайнеру вам всегда приходится искать компромисс между тем, что имеет смысл в реальном мире, и тем, что интересно для игры. Сборка машин отвлекает от огромного объема работы, которая уходит на реальную автоматизацию, и помещает ее в аккуратную маленькую коробочку. Аналогичным образом, новая система жидкости обеспечивает поведение, которое вы ожидаете от трубопровода, абстрагируя при этом все детали реального потока жидкости.

Это очень интересная система для игры. Эта система открывает много интересных возможностей, которые мы не предсказывали, и некоторыми из наших историй мы поделимся в будущих FFF. Я также могу подробно рассказать об архитектуре этой новой системы и о том, как я подошел к рефакторингу, в другой раз.

Есть несколько деталей, над которыми еще предстоит работать, но в целом новая система работает очень хорошо. Мы не можем дождаться, когда вы это протестируете!

Развернуть

my little pony фэндомы mlp art Derpy minor muffin fealcity 

Развернуть

my little pony фэндомы mlp art Derpy minor MirtaSH artist 

Развернуть

Factorio Dev Diary Factorio Игры 

Factorio Dev Diary #415 - Fix, Improve, Optimize

Factorio Dev Diary,Factorio,Игры
Здравствуйте!
Несмотря на то, что при разработке версии 2.0 много времени было потрачено на новые функции и качество жизни, мы по-прежнему заботимся о мелких деталях и технических улучшениях.

Детерминированная многопоточность — это сложно

Недавно нам сообщили об ошибке рассинхронизации, связанной с API моддинга и несколькими компьютерами под управлением Windows и Linux, которые использовал игрок. Моим первым инстинктом было обвинить разработчика мода в том, что он сделал что-то не так, но за эти годы я видел достаточно отчетов об ошибках, чтобы знать, что отклонять один из них без предварительного расследования — плохая идея и отличный способ сесть в лужу.

Воспроизвести рассинхронизацию мне не удалось, но плеер смог с легкостью. Сначала я подумал, что это проблема Windows и Linux (у нас было много таких), но потом плеер смог воспроизвести ее с Linux на обоих компьютерах. Затем я подумал, что это аппаратная проблема: мы видели немало неисправных компьютеров, которые просто не делают того, что должны. Убедить кого-то, что его оборудование сломано, сложно и в лучшем случае отнимает много времени.

После нескольких неудачных попыток воспроизвести проблему на моем одном компьютере Боскид, используя несколько своих компьютеров, смог это сделать. Я думаю, что возможность воспроизводить ошибки локально занимает около 90-95% времени, потраченного на исправление обнаруженных ошибок. Воспроизведя проблему по требованию, Боскид смог сузить ее до того факта, что компьютеры имели разное количество ядер ЦП. Благодаря этим новообретенным знаниям он смог провести тест, который можно было запустить на моем единственном компьютере, чтобы воспроизвести рассинхронизацию, искусственно притворившись, что у меня меньше ядер процессора, чем на самом деле.

В конечном итоге проблема заключалась в том, что нужно было собрать вместе 4 разных движущихся части, чтобы выявить проблему детерминизма потоков, которая присутствовала в игре с тех пор, как я добавил ее туда 22 июля 2017 года.

1) Моду необходимо было прослушивать событие, генерируемое чанком, и менять тайлы на чанке, когда оно происходило.

2) Моду необходимо было запросить создание нескольких фрагментов.

3) Моду необходимо было принудительно сгенерировать все запрошенные фрагменты прямо сейчас .

4) Игру необходимо было запустить на двух компьютерах с разным количеством ядер процессора.

Логика генерации фрагментов «прямо сейчас» будет пытаться использовать все доступные ядра ЦП, но это было сделано таким образом, что количество ядер - в сочетании с другими движущимися частями - слегка меняло результаты генерации фрагментов.

Исправление оказалось не таким уж сложным в реализации, и оно появится в версии 2.0, но оно просто показывает, что многопоточность — это сложная задача, а детерминированная многопоточность тем более.

Многопользовательская игра с автопаузой

У нас есть особенность выделенных серверов: когда последний игрок отключается, сервер автоматически приостанавливается. Это прекрасно работает и означает, что вы можете оставить выделенный сервер включенным, не беспокоясь о том, что кусаки съедят вашу базу, когда вы уйдете. За исключением некоторых крайних случаев, с которыми нам так и не удалось справиться (до сих пор).

Случай 1: Когда вы присоединяетесь к автоматически приостановленному серверу, он мгновенно возобновляет работу, даже если вы не полностью загрузились в игру. Оказывается, решить эту проблему было невероятно просто, но по какой-то причине с годами она не ушла в прошлое. В версии 2.0 автоматически приостановленные серверы будут оставаться приостановленными до тех пор, пока хотя бы один игрок полностью не загрузится в игру.

Случай 2: Присоединяющимся игрокам необходимо не отставать от текущей игры. Это отлично работает для «обычных» игр и позволяет существующим игрокам продолжать игру, не дожидаясь присоединения игроков. Но игроки сталкиваются с проблемами, связанными с гораздо большими картами или медленным подключением к Интернету. Для присоединения кого-либо может потребоваться 1, 2 или несколько минут, чтобы загрузиться и полностью подключиться к серверу. В версии 2.0 мы добавили опцию «автоматическая пауза, когда игрок присоединяется», которая работает именно так, как указано.

Более быстрые задачи строительных роботов

Такое ощущение, что каждую неделю кто-то спрашивает: «Почему мои строительные роботы не работают?» и на скриншоте, который они предоставляют, есть небольшое предупреждение, показывающее «600 рабочих мест, не хватает материалов/роботов». Эта проблема существовала с самого начала появления роботов, и до сих пор у нас нет хорошего решения для нее.

Проблема в том, что, учитывая задачу, которую должны выполнить роботы-конструкторы, игре необходимо найти лучшего робота из логистической сети, который находится в пределах досягаемости, чтобы выполнить эту задачу. Проверка того, находится ли эта логистическая сеть в радиусе действия объекта, равна O(Roboport-Count). Мы не контролируем, насколько медленным это будет, потому что игрок может построить 1 Робопорт, или 100 000, или столько, сколько сможет вместить его компьютер. Поэтому нам нужно убедиться, что эта операция не приводит к остановке игры во время ее работы. Мы делаем это, обрабатывая всего несколько задач строительных роботов за каждый такт.

В версии 1.1 игра будет проверять строительные работы 3 раза за каждое обновление. Если ему не удастся найти робота, он остановится для текущего обновления. Оповещения о неудачных попытках длятся 10 секунд. Таким образом, при 60 обновлениях в секунду и 10 секундах на каждое оповещение это означает, что будет создано 600 оповещений до истечения срока действия первого. Вот откуда берется волшебное количество предупреждений «600 рабочих мест, не хватает материалов/роботов».

Так работало с тех пор, как я работал над Factorio, и, скорее всего, так будет продолжаться на каком-то базовом уровне. Мы не можем просто увеличивать количество задач, проверяемых при каждом обновлении, потому что знаем, что работа потенциально замедлится тем больше, чем больше робопортов строит игрок.

Ранее в этом году кто-то ( сообщение на форуме ) снова столкнулся с этой проблемой, но решил «решить» ее самостоятельно, сделав то, что, как мы сказали, мы не можем сделать: «запустить проверенные задачи для каждого обновления», за исключением того, что они перешли с 1 на каждое обновление. до 374. Также построено 36 815 роботопортов. Как и предполагалось, это было медленно.

TÍT-T т-г у:хг:х:т ГХЛГ':Г !Г :Т !Г. Г. :Г * ' О и.. " . . • • 4 *• ■ • í; ■ V г*,Factorio Dev Diary,Factorio,Игры

Но это заставило меня задуматься: а что, если бы я мог сделать медленную часть намного быстрее ? Хотите быстрее изменить алгоритм? Вдохновение пришло ко мне, когда я вспомнил, что в игре уже есть набор логики, позволяющей взять зоны логистики и строительства роботопорта и вычислить полученное объединение прямоугольников. Проще говоря, он создает красивый набор дедуплицированных прямоугольников, которые покрывают общую площадь всех роботопортов. Мы используем это для рендеринга, чтобы избежать перерисовки, когда роботопорты находятся рядом друг с другом.

Это, в сочетании с сортировкой полученных прямоугольников, означало, что я мог выполнить простой двоичный поиск, чтобы проверить, находится ли данная задача в пределах сети. В конце концов проверка изменилась с O(N) на 36 815 роботопортах до O(N) на 900~ прямоугольных объединенных областях и до O(logN) на 900~ прямоугольных объединенных областях.

Время проверки «есть ли оно в этой сети» из дорогого превратилось в практически незаметное. Благодаря этому ускорению я смог увеличить скорость проверки задач для версии 2.0 и, надеюсь, решить эту проблему.

Как всегда, сообщайте свои мысли в привычных местах.
Форум Редит
Развернуть