Как я пиксель арт в Dwarf Fortress строил. Часть 1: резня в пещерах.
---
Больше года назад я выложил на Пикабу свой первый пост. С тех пор я настрочил ещё 31 пост, но ни один из них не приблизился по количеству плюсиков к тому мегапроекту… Что ж, настало время рассказать, как я его построил. Впереди долгая история, описывающая трудности, вставшие на пути: крупные осады, вторжение титанов, гражданский переворот и множество блюющих бородачей… Технические моменты я постараюсь максимально доступно разъяснить, а самые нетерпеливые как обычно могут почитать всю историю в группе ВК: здесь.
---
Итак, 2017 год. Я не играл в Дварф Фортресс около трёх лет. И тут в группе кто-то выложил картинку из гугла, вот эту:
И я тут же загорелся идеей сделать то же самое, но намного масштабнее. План нового мега-проекта созрел моментально. Я вспомнил видео на ютубе про пиксель-арт в майнкрафте, в котором парни сделали несколько секунд геймплея из марио, выкладывая каждый игровой пиксель из разноцветных блоков шерсти… А ведь нечто похожее вполне можно реализовать в дварф фортрессе. Я скачал 0.43.05, провёл пару тестов, и решил свершить задуманное.
Разрешение гейм-боя (Game Boy Color) 160х144 пикселей. В крепости при зоне эмбарка 4х4 квадрата - 192х192 тайла. Если принять 1 тайл пола за 1 пиксель – то вполне можно создать полноразмерный скриншот, типа такого:
Плюсы:
1. Оригинально и всем понятно
2. Не надо ничего придумывать самому
Минусы:
1. Нефиговый мегапроект. Раскопать и заложить блоками территорию в 23 тысячи блоков
2. Может выйти не очень красиво
3. Имеется ряд подводных камней, способных всё испортить
4. Огромные затраты времени
---
Но обо всём по порядку.
Я создал мир со 125 годами истории, высадился на равнине с рекой. По соседству гоблины, люди, эльфы и дварфы. Ничего экстремального. Без водоносного слоя. Зачем мне лишние трудности в крепости, задуманной под мегапроект? Стартовая экспедиция тоже простая: шахтёры, фермер, каменщик, плотник, кузнец, разнорабочий. Раскопавшись, я тут же офигел от богатства: на первых десяти этажах обнаружились бесконечные залежи доломита (флюс, можно делать чугун -> сталь), гематита (железо->чугун->сталь), жилы лигнита (уголь), немного платины и дофигища золота. Галена, тетраэдрит, касситерит также вскоре нашлись, так что никаких проблем в создании лучшего оружия и дорогих побрякушек не предвиделось.
Я сразу же подсчитал количество тайлов для своего эмбарка 4х4, получилось 192х192. Реализация скриншота 160х144 стала вполне реальной. Надо всего лишь раскопать целый уровень (лол) и выложить мозаику из разноцветных материалов. Но сперва надо было наладить стабильную инфраструктуру крепости, чтобы хотя бы провести ряд тестов…
Довольно долго и уныло я действовал по привычному скрипту:
1. Закопаться и разместить временную базу на -1 уровне
2. Провести минимальную георазведку
3. Устроить фермы, склады и мастерские
4. Создать немного поделок из самого дорого металла для торговли
5. Устроить спальни, столовую, кабинеты для бюрократов,
6. Создать укрепления: башню на главном входе + ловушки
7. Прокопать колодец
8. Создать отряд-другой арбалетчиков и амуницию для них
9. Запилить дополнительные элементы инфраструктуры: комнаты для каждого, госпиталь и пр.
10. Добавить роскоши: отгравировать стены, сделать статуи, мебель из золота и пр.
Я долго мучился, вспоминая элементы интерфейса, горячие клавиши и вообще, как в это играть. На развитие инфраструктуры ушло два дварфийских года и два моих вечера часа по 4.
В итоге я получил:
1. Фермы, склады, мастерские, общие спальни, столовую, храм, колодец
2. Простую и читерскую систему обороны: башня для лучников и длинный коридор с клетколовушками
3. Отряд из 8 арбалетчиков, полный комплект стальной экипировки для 10
4. Население достигло установленного лимита в 100 рыл.
5. Из знати: счетовод, менеджер, мэр. Последний караван дварфов (их прошло 3) назначил барона, но он пока не вступил в должность.
6. В избытке бухла, еды, драгметаллов, камней, угля
7. 3 артефакта. Богатство крепости почти миллион.
За это время случилось всего несколько инцидентов:
1. Два раза приходили гоблинские воры, пугались собак на входе и убегали
2. Ювелир впал в странное настроение, я забыл про него и не построил ювелирную мастерскую. Он сошёл с ума и устроил драку в храме. Был припечатан к стене болтами одного воина из отряда арбалетчиков, который всего лишь молился своим богам в свободное от службы время.
3. Нападение циклопа. Произошло, когда оборона ещё не была достроена, а арбалетчики только-только получали со склада оружие, болты так вообще были лишь у одного. Я не погнушался сейвскуммингом (сохранение и загрузка, не предусмотренные игрой). После трёх попыток, в которых арбалетчики шли в рукопашную и умирали, удалось безболезненно разобраться с гадом. Я просто перекрыл все двери и поставил арбалетчиков на недостроенную башню. Циклоп увернулся от пары болтов, спустился в крепость и сломал дверь. Внутри он побегал недолго: угодил в клетколовушку на проходе, единственную на тот момент. Спустя некоторое время пленный циклоп был отконвоирован в расстрельную комнату и уничтожен стальными болтами.
4. Досаждали птички Buzzard (канюки?). Вечно попадались в мои клетколовушки, заставляя дварфов их перезаряжать, пугали всех. Первая партия из штук 6 канюков была истреблена в расстрельной комнате, скопилось ещё столько же.
План строительства мегапроекта был такой:
1. Выбрать этаж для работ, прокопать 4 лестницы по краям карты, соорудить ногомойки
2. Раскопать площадь 160х144 тайла, унести камни
3. Разметить каналами на квадраты 10х10 тайлов
4. Приступить к долгому и нудному складыванию мозаики из разноцветных блоков. Каменные мастерские разместить поближе к лестницам, а далее временные мастерские и склады ставить прямо на готовых участках «полотна».
Предвидел следующие проблемы:
1. Загрязнение полотна кровью. Ногомойки на всех проходах должны решить эту проблему
2. Блевота. Пока строились наземные укрепления, дварфы прилично всё заблевали из-за cave-in adaptation (отвыкание от солнечного света). Могло случиться так, что какой-нибудь из строителей сходит по делам на поверхность, придёт устанавливать очередной блок и блеванёт прямо на «полотно»…
3. Брошенная одежда. Дварфы начали повсюду разбрасывать свои носки и трусы, которые никак не выкинуть и не сдвинуть с места, ибо это их собственность. А это портит внешний вид… Необходимо выделить каждому личную комнату с сундуками, чтобы складывали свой хлам. И развить текстильную промышленность. Вот только эльфы почему-то не привозили тканей, надо грабить людей.
4. По моим прикидкам сооружение должно было занять до десяти дварфийских лет, а за это время всякое может произойти… Страшные осады, массовая истерия, падение фпс.
Ради теста я соорудил картинку марио 12х16 тайлов, это было недолго:
Ощутил острую нехватку ярко-красного камня и полное отсутствие ярко-чёрного… Я подумал, что надо бы купить у торговцев обсидиан – может, он окажется почернее.
А нашёл я следующие цвета:
1. Белый (сероватый): доломит, мрамор, серебро, платина
2. Серый: гнеисс, филитт, диорит, цинк, олово
3. Чёрный (тёмно-серый): габбро, уголь, сталь, железо, хорнбленде, свинец
4. Жёлтый: ортоглаз, золото, салтпетер, брасс, электум
5. Зелёный: оливин, серпентин, малахит
6. Тёмно-красный: бауксит
7. Ярко-красный: петрифаед вуд. Нашёл всего камешков 10 в залежах бауксита.
8. Синий: кобальтит
9. Ярко-синий: кимберлит
10. Голубой: микроклайн
11. Коричневый: дерево, глина
Тогда я ещё не определился, какой скриншот изобразить. Лишь потом я отказался от идеи сделать один скриншот, и вместо этого запилил компиляцию из разных игр… Но об этом позже.
---
16 галена 128 года. Шёл четвёртый год крепости с момента её основания. Я всё ещё развивал инфраструктуру.
Было необходимо избавиться от раскиданных носков, и я стал развивать текстильную промышленность. Пришлось попотеть:
1. Создать комнаты для каждого дварфа, чтобы было куда складывать старое шмотьё
2. Построить госпиталь, чтобы загрузить туда все необходимые ткани и нити
3. Решить, где добыть дофигища тканей.
Много времени ушло на то, чтобы создать комнаты для всех дварфов: около 70 комнат, в каждой кровать, шкаф и сундук/сумка.
Параллельно я сделал госпиталь и кусков 15 мыла, чтобы дварфы мылись (кстати, пол из мыла – белый, такой же, как из доломита и мрамора). Расширил отряд арбалетчиков до 10 бород. Они без остановки тренировались на мишенях, рабочие не успевали клепать деревянные болты…
Раскопал большую площадь под текстильную промышленность.
Значимые происшествия за это время:
1. Мэр два раза переизбирался на ещё один срок. И это хорошо: не пришлось заселять нового мэра в хорошие комнаты
2. Самый бесполезный дварф был назначен бароном. Ему были выделены специальные комнаты с золотыми статуями и гробница с золотым саркофагом. Придя к власти, он тут же издал мандат на создание короны, получил золотую и остался доволен.
3. Осада! Напали 6 гоблинов. Просто угодили в клетки-ловушки, были раздеты и расстреляны…
4. Сменилось несколько сезонов, но караваны не приходили. Я уже испугался, что более торговцев не увижу и стал продумывать, как добывать много тканей из свинохвоста. Но тут пришёл людской дипломат, наговорил всякого (целая страница текста с какими-то новостями), а следом за ним – караван людей…
Вообще, с таким обилием золота я мог бы честно скупить все товары, но мне просто надоело лазить по спискам на экране торговли. Поэтому было решено ограбить караван, и всё население крепости в спешке рвануло сооружать конструкцию для утопления торговцев.
Да, я опять топил караваны. Заткнитесь.
Был прокопан туннель, установлена помпа с ветряной мельницей. Пара озёр поблизости заложена камнем, чтобы товары и тела не утонули. Дварфы, офигевшие от солнечного света, заблевали всю крепость. А ещё налетели канюки и стали всех пугать, пришлось поставить солдат подежурить и расстрелять мерзких птиц. Караванщики не понимали, что вообще происходит, а потом внезапно оказались заперты между мостами и утоплены.
Две лошади сбежали, но были убиты арбалетчиками. Наворовал я немало, пришлось расширять склады. Но на торговой площади остались валяться книги и ещё какая-то фигня. Некоторые бездельничающие дварфы не особо довольны жизнью в крепости – всё-таки, надо было построить таверну с библиотекой.
Дальнейшие планы:
1. Построить ткацкие мастерские, начать массовое производство одежды
2. Создать таверну и библиотеку
3. Украсить общественные зоны гравюрами и золотыми статуями
4. Начать, наконец, раскапывать этаж под мегапроект
---
Не прошло и пары недель с утопления каравана, как крепость вновь оказалась в осаде. На этот раз гоблинов было с десяток, и с собой они привели несколько beak dog (собак с клювами?) Я перекрыл входы и поставил арбалетчиков на башню. Половина нападающих была расстреляна на подходе, остальные угодили в клетки-ловушки.
Вскоре было сооружено 6 ткацких и 2 кожевенных мастерских, и пошив одежды пошёл полным ходом… Вот только материалы быстро закончились, а больше половины населения так и осталось не одето. Пришлось ждать ещё караваны.
Были созданы таверна и библиотека. У людского каравана удалось наворовать несколько книг и бумагу, и многие дварфы засели за чтение. Я наделал ещё бумаги и свитков из свинохвоста, а для таверны – 5 музыкальных инструментов и 10 золотых кубков.
В пещеры, находящиеся всего парой уровней ниже общественных зон, прибыла забытая тварь. Было решено открыть проход в пещеры и дать ей бой: мне необходимо разведать пещеры, чтобы найти этаж, который можно безопасно раскопать под мегапроект. Я долго создавал комнату с бойницами и ловушками на входе, а когда сохранился и открыл проход – начал получать пиздюлей… Хорошо, что есть сейвскумминг.
1. Первая попытка: открыл проход, поставил арбалетчиков на изготовку, но тварь не приходила. Тогда я понял, что мой проход находится на пару уровней выше пола пещеры (перепутал пол и open space), и пришлось прокопать лестницу. Твари всё не было, и я, решив, что она сдохла сама, отправил арбалетчиков на разведку… Тут-то она и объявилась. Воины смогли победить, но один из арбалетчиков оказался тяжело ранен, и погиб случайный мирный дварф. Потери недопустимы, загружаемся.
2. Вторая попытка: прокопав проход и лестницу, я закрыл двери и стал ждать тварь. И она пришла, загрызла собачку-приманку и пала под жёстким обстрелом арбалетчиков. Проход был открыт, чтобы утащили её тело, воины распущены, и тут вдруг целая толпа дварфов ломанулась в пещеры поднимать какие-то предметы… Как оказалось – трупы зверей и троглодитов. За то время, пока я сооружал проход, форготня успела устроить резню в пещерах и уничтожила немало существ. Повсюду трупы и кровь… Я послал арбалетчиков проследить за мирными дварфами, но было поздно. Носильщики нарвались на гигантскую летучую мышь, и пока воины спешили на помощь, двое бородачей погибли. Загружаемся.
3. Третья попытка: арбалетчики простояли на посту два дня и стали разбегаться то фляжку наполнить, то вздремнуть. Тварь всё не шла, зато в пещеры набежали лысые собаки. Видимо, они её и загрызли… Ну что ж, я загнал арбалетчиков в пещеру, закрыл дверь, чтобы гражданские не лезли, и отправился на разведку и зачистку. Лысые собаки разбегались при виде дварфов, парочка угодила в клетки ловушки, парочку застрелили и загрызли мои боевые собачки. И вот, когда отряд оказался на другом краю карты, явилась форготня. Она разминулась с воинами и ломанулась в комнату с собачкой-приманкой. Собачка была съедена, отряд оказался отрезан от собственной крепости. Я послал их сражаться с тварью, но пришёл только один дварф, в то время как другие отстали: на собак отвлеклись или что… Один на один арбалетчик с тварью не сдюжил и погиб. Загружаемся.
4. Четвёртая попытка: не успели все арбалетчики добежать до позиций, как тварь прибежала грызть собаку. Собака погибла, но тварь была успешно расстреляна. Успех!
С тварью я разобрался, но надо было ещё исследовать пещеры. Я послал арбалетчиков внутрь, но пришли лишь четверо из десяти: у остальных оказались неотложные дела. Они спали и молились в храме. Ну ладно, обойдёмся и четырьмя, подумал я… Ребята исследовали почти всю пещеру и успешно убили тролля, но тут набежало штук 10 троглодитов. В неравном бою двое солдат было ранено. Я приказал отступать и открыл двери. Один успешно добрался до госпиталя, а вот другой не мог стоять на ногах и остался лежать без сознания на полу пещеры… Нужно было запустить внутрь гражданских дварфов, чтобы дотащить его до больнички, но как? Повсюду рыскает ещё куча троглодитов. Удалось уговорить ещё пару солдат зайти внутрь, но они были слишком разрознены, и один дварф погиб.
Я загрузился. Нафиг пещеры, я решил пока не лезть внутрь. Гражданские будут периодически подбирать гадов, попавшихся в клетки-ловушки, а разведку осуществят позже.
Для мегапроекта я нашёл чудесный розовый камень рутил (rutile) на стенах пещеры, вот только реально лишь 1 камень: обширные залежи придётся ещё поискать. Также при раскопках под ткацкие мастерские был найден ярко-красный Cinnabar, как раз не хватало. Без толковой разведки можно было сделать вывод, что первый уровень пещер расположился с 21 по 27 этаж, а второй с 46 по 62. Значит, с 30 по 40 этаж должно быть безопасно вести раскопки… Для сооружения мегапроекта я выбрал 37 этаж, ибо это моё любимое число, и, наконец, начал копать.