Рогалики как контркультура нулевых

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

В начале 2001 подключился я к местной только-только зарождающейся локальной сети. Ну и там чатик, знакомства, расшаривание файлов и так далее. Но была у меня проблема - комп совсем допотопный был, я даже фильмы смотреть не мог, что тогда было писком моды. В играх сетевых тоже участвовать мог с трудом - Q2 несколько раз сагитировал сыграть, массовый UT кое как запускал в софтваре с разрешением меньше 640х480, вездесущие Герои3 популярностью там не пользовались, в новинки рубились, которыми я был обделён. Тогда же я впервые познакомился с эмулями и исполнилась моя места сыграть в то, что я в 90х видел только у друзей или в Великом Драконе, но это я отвлёкся немного. Один человек в чате поделился со мной игрой Nethack, немного прорекламив её. По его словам получалось, что это превосходная игра, полная разных загадок и увлекательных приключений, а то что там символами всё показано, так даже и лучше - есть же воображение, да и в отличие от прочих игр наоборот всё нагляднее: вот идёт на тебя буква n, сразу понимаешь, что это тритон (newt). Так как больше особо в чатике об этой игре не разговаривали потом, а сам тот человек потом проявил себя как довольно скверная личность, делаю предположение что предложение мне Нетхака было таким стёбом, что у меня комп говно, но я в силу малости лет этого тогда не понял. Но в итоге он познакомил меня с хорошей игрой.

И начал я в этот Нетхак поигрывать. Сначала шло неважно. Помню, первым моим препятствием была дверь и список команд. Команды "открыть" я там не нашёл, зато нашёл команду "пнуть" и долгое время все двери выпинывал, благо играл в основном варваром. Естественно, дох на первых уровнях, дохождение даже до гномьих шахт было откровением. А уж когда вылезший из фонтана водяной демон внезапно оказался дружелюбным и предложил загадать желание - восторгу моему не было предела! Само желание я, впрочем, потратил на свитки снятия проклятия, потому что о большем тогда не мог даже и мечтать, а проклятые предметы были настоящим бичом.

Nethack
Nethack

Потом я на время забросил игру, комп мне за это время чуток обновили на уже не совсем хреновый, хотя бы фильмы смотреть мог и в Проклятые земли играть. Но однажды у меня что-то случилось с сетью и я надолго застрял без связи. И от скуки кроме эмуляторов окунулся в Нетхак подробнее. Уже безо всякого зазрения совести сейвскамил по полной, хотел посмотреть игру. Кажется даже здоровье себе бесконечным сделал. И начал удивляться ещё больше, потому что игра раскрывалась всё с новых и новых сторон. Несмотря на бессмертие по хп, игра всё равно меня часто убивала - настолько она была лютой. Можно было отравиться трупным ядом, но для этого в целом достаточно было не есть протухшие трупы (игра строится на том, что долгосрочной еды не хватает и надо стараться жить буквально на подножном корму из убитых врагов). Но, даже съев свежак, можно было отъехать от разных вещей, например превратиться в камень, съев кого-то, названием напомнившего мне тогда таракана (речь о cockatrice). Можно напороться на медузу, к которой без завязанных глаз заходить нельзя. А уж ниже, когда я добрался до Геенны, водятся и привидения всякие, увеличивающие возраст при ударе и высасывающие уровни, с соответствующей смертью от старости по итогу. Или mind flayer мозги сосать начнёт, а они у варвара и так никакие, и надпись died of brainlessness в кладбище рекордов возникает. Да и кроме смерти проблем было хоть отбавляй - то дракон огненным дыханием сожжёт свитки, то верный vorpal blade, иногда мгновенно обезглавливающий врагов, заржавеет от чего-нибудь.

Параллельно, примерно в это время натыкаюсь на харде на непойми каким образом взятый FAQ по некоей игре ADOM. И там вижу кучу интересного, какая-то ковка, ещё какое-то хитро взаимодействие с предметами, да ещё и было объяснено, что ржавчину с предметов можно убирать маслом! Это я проверил в Нетхаке, и о чудо, сработало! И тут я понял, что во-первых, надо внимательно поискать в инете информацию о Нетхаке, а во-вторых, надо посмотреть что это за ADOM такой.

С возвращением сети я к первому и приступил. И угодил прямо в кроличью нору поистине невиданных чудес. Обилие возможностей просто поражало. Была недокументированная возможность "дрессировать" начальную кошку/собачку на воровство вещей из магазинов. Была возможность пролезать через запертую дверь, превратившись в комок слизи. Была возможность получить защиту от огня, съев труп дракона. Главное не есть пресловутых кокатрисов, а наоборот, предварительно надев перчатки, брать его труп в руку и бить врагов - большинство сразу превращаются в камень, особенно прикольно так магазины грабить. Да даже просто загадывание желания это офигенный даже по сегодняшним меркам функционал. Про Нетхак вообще ходило выражение "Devs think about everything!", потому что буквально на каждую ситуацию в игре была какая-то реакция, например особый текст если монстр pit fiend упадёт в яму. Была возможность найти места смерти своих предыдуших персонажей, и, убив привидение, забрать их вещи, пускай и проклятые. И не всегда это было привидение, всё повторяло события смерти самого персонажа, например могла быть статуя при окаменении, вампир или мумия.

Потом я начал пробовать другие рогалики. ADOM, Dungeon Crawl (тогда ещё не Stone Soup), вариант Нетхака SLASH'EM, ангбанды всякие. Были в них свои/плюсы минусы, но во всех было огромное количество непознанного и восхитительного, всякие там жертвования монстров на алтарях, мутации и прочее. Действительно получалось, что за буковками скрывалось гораздо больше, чем могли дать тогдашние графические игры. Сюжета как такого тоже не было, зато каким был геймплей! Фича с нахождением призраков умерших персонажей в некоторых играх также получила продолжение в виде игры по SSH на сторонних серваках либо специальной утилиты, которая позволяла меняться "файлами трупов" между игроками, поэтому эта штука появилась задолго до соулсов.

Тогда же я учился в лицее информационных технологий с углублённым изучением программирования, и, естественно, у меня начали появляться мысли "А не сделать ли что-то своё?". К тому же в 11 классе у нас курсач намечался, можно совместить приятное с полезным. И не у меня одного. Уже тогда, в 2003-2004, в интернете присутствовали наши мелкие рогалики. Владелец ныне мёртвого форума по АДОМу например сделал Lanceran, ещё припоминаю какой-то рогалик по древней Руси, название пришлось гуглить - "Из глубины веков". А уж когда я защитил свой рогалик как курсач и потом неспешно допиливал тайловую версию на первом курсе, параллельно попёрли и другие, и это выросло в целый полноценный сайт-форум по рогаликам, который сохранился по сей день, хоть и пребывает уже в коматозном состоянии. А начинали вообще с сайтиков на народ.ру, и ходили друг к другу болтать в гостевые книги, хехе. Но это я отвлёкся, и сам текст я пишу не о том, как были круты рогалики до этого (хотя это тоже важно), и даже не про то, как они стали круты в то время, а про, как их круто было ДЕЛАТЬ в то время. Игрокам-то наверное пофиг, для большинства из них вообще было достаточно дрочева на АДОМ, как у сегутят на сижку в 90х.

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

Доработанный позже курсач за 11 класс
Доработанный позже курсач за 11 класс

Итак, рогалики это программерсткое творчество, потому что можно пойти против системы и полностью забить на графику. Но ради чего? И тут открывается второй плюс рогаликов как творчества - безграничность наполнения, причем с лёгким входом - плюсы с обеих сторон! Для школьника это отличный способ научиться программированию, ведь в базе своей рогалик очень прост - это пошаговое хождение по клеточкам, без необходимости париться с раскадровкой анимаций в реальном времени, физики и прочих запар. Зато хорошее изучение представления карты в памяти, алгоритмов поиска пути по клеточкам, поля зрения героя, чтобы сквозь стены не видел, базового искусственного интеллекта - сначала просто "увидел героя - иди к нему и бей", потом постепенное обрастание всякими фишками типа стрельбы, заклинаний и манёвров. И вот - игра уже готова! Маленькая, но уже игра, такой быстрый результат обнадёживает и вдохновляет дальше добавлять мясца на готовый костяк. А там уже разработка ролевой системы, продвинутых алгоритмов генерации подземелий, да ИИ можно сделать ещё чуточку умнее...

А если ты уже кодер поопытнее, то можно начинать мечтать... Мечтать-то, конечно, можно и будучи школьником, но тут у мечт уже был хоть какой-то шанс претворить в жизнь. Я не зря тут простыню текста писал про то, каким функционалом поражали Нетхак и прочие рогалики - тогда это реально яркой звездой освещало путь "назло системе". Типа, вот мы не собираемся делать графонистое кинцо и корпеть над движками, зато делаем сразу геймплей и какой! Сколько наворотов можно сделать! Была, например, отдельная идеология "монстры как игроки": детализировать их так же подробно, вплоть до задавания собственных задач и смысла нахождения в подземелье, зато какой простор открывается для превращений в них, вселения и управления ими, командной работы. В ту же степь можно отнести и желание сгенерировать не просто отдельные уровни, а целые миры с городами, странами и прочим. Тогда никаких детализированных симуляций типа GTA5 не было, "живой" мир обычно был просто большой кучей болванчиков, изображающих фоновую деятельность. Были Космические Рейнджеры, но по духу они наоборот стояли на стороне рогаликов - жертвовали графикой ради наполнения. Так что тогда такие идеи имели смысл, там конечно возникали вопросы целесообразности и геймплейной пользе, о том, что даже самая навороченная процедурная генерация всё равно приедается и начинает просвечивать швами, но рогаликописательство оно в том числе о бессмысленном моделировании процесса ради. Но по факту это было скорее просто крайность и мечтание о несбыточных волшебных мирах, в нашем сегменте вообще дальше разговоров не уходило, да и в зарубежном скорее набор мемов про Vaporware мегаигры, таки прошедший через жернова лютейшего задротства Dwarf Fortress, да Ultima Ratio Regum, так похоже и оставшийся набором бессмысленной генерации всего и вся без фактического геймплея.

Была крайность и в обратную сторону - когда рогалик рассматривался исключительно как средство обучения программированию. Либо сразу такая задача была, наклепать по-быстрому и забросить, либо по наивности думали, что наполнить рогалик это как пару раз плюнуть, естественно они застревали потом в качестве каркаса. Было всё это конечно смешно и печально одновременно, потому что души в этом не было, только лулзы с обсуждений, выглядевших как наглядная иллюстрация поговорки "заставь дурака богу молиться - он себе лоб расшибёт". Бегает такой доморощенный литкодер, гордо держа свою Священную Книгу типа Code Complete Макконнелла, и норовит по ней написать Идеальную Программу, ни на миллиметр не отступая от священного писания (отдельный прикол что в той же Code Complete было написано строго противоположное, "писать с использованием языка, а не на нём", адаптироваться и прочее, но как всегда фанатики в священных книжках видят только то, что хотят увидеть). Обычно дрочили на ООП, поэтому обсуждения изобиловали мантрами на повышение столпов её, их величеству Абстракции, Инкапсуляции, и Полиморфизма. И крут был не тот рогалик, в который было интересно играть, а тот, в котором первым делом в коде всё правильно абстрагировалось и сразу делилось на кучу классов, чтобы вот каждом предмету своё кастовое наследование, а то не дай бог вызов не по табелю о рангах будет. Не код для игры, а игра для кода, не важно что получается максимально хромая вещь. А ещё обязательно скриптовый язык приделывать, ведь сказано было, что компиляция - это плохо. Короче обычное кододрочерство, не приводившее ни к чему толковому, только к простыням срачей "какой язык круче". И знали бы вы, КАК у этих кулхацкеров термоядерно детонировали пуканы при одном только виде моего рогалика, потому что написан тот был на Visual Basic'е и был к тому времени уже играбельным. Кто в теме языков, тот должен знать.

Самое интересное, как всегда, находилось посередине: когда рогалик пусть и мог начинаться со стандартного вдохновения популярной классикой и герой первым делом заходил в некую деревушку, но дальнейшая разработка переходила в более самостоятельное русло. Или сразу всё начиналось с придумывания какой-то оригинальной находки. Да блин, иногда даже сам рогалик был не нужен, потому что само обсуждение фич было интересным. Я сейчас говорю о таких вещах, как проектирование ролевой системы, изобретение замысловатых алгоритмов генерации узоров в подземельях, разных материалов для предметов, навороченной системе магии/религии, балансировке и прочему, что начинает делать рогалик уникальным. Это тот момент, когда ты сделал что-то уже играбельное и интересное, но хочешь большего и начинаешь понимать, что кидать кубик d20, как ты раньше думал - это нихрена не хорошая затея, когда тебе вдруг хочется наворотить дичи с обработкой попаданий по отдельным частям тела, стойками и стилями боя. Вот эту золотую середину я и вспоминаю с наибольшей теплотой, разговоры о том, круто было бы или нет создать систему магии по слогам, нужны ли повреждения отдельных частей тела, сколько в игре должно быть реализма, надо ли делить режущий и рубящий урон, или вообще сопромат туда засунуть, а то это ж модно, я его сдал и могу теперь жениться, и прочее, и прочее, и прочее... Делать это, конечно, было очень сложно, мало кто вообще переходил через этот кризис. Там же уже всё сложнее получается, голых навыков программирования недостаточно, надо шарить в тервере, матане, обладать достаточной "начитанностью" и пониманием других систем, чтобы было с чем сравнивать. Я сам этот этап так и не прошёл, застряв на моменте, когда понял, что старые формулы на самом деле никуда не годятся, надо бы всё поменять, а для этого надо и движок менять, но главное ещё понять как именно проектировать... В итоге, ушёл в многолетний застой медленной разработки ролевой системы, с налёту ничего не продвигалось, только всплесками спонтанных идей время от времени, а когда уже что-то интересное начало вырисовываться - были проблемы с поиском времени и мотивации для создания всего этого, потому что жизнь пошла дальше и времена были другие. Но воспоминания о том времени у меня остались очень тёплые.

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

Таблица рекордов. Всё когда-нибудь умирает.
Таблица рекордов. Всё когда-нибудь умирает.

Нынче же, всё очень грустно. Понабежали ничего не понимающие моднявые хипстеры, как сороки, насобирали блестяшек и испоганили гордое название рогалика, потому что теперь это с какого-то перепугу зельда-говноклон Исаак. Процедурную генерацию лепят как заглушку собственного лентяйства, да и сама процедурность нынче под большим вопросом, потому что много ли ума надо соединять заранее созданные вручную кусочки уровней в один "случайный", что зрительно приедается уже на третий запуск, а именно так это теперь и делается. Перма-смерть, отлично работающая для пошаговых игр с кучей переменных, где в критической ситуации можно пойти заварить чайку и внимательно думать над каждым ходом, превратилась в "дошёл наконец до последнего босса, а он в жопу ужаленный, только начал понимать что он вообще творит, как сдох, всё по новой". Хотя казалось бы, ну раз возвращаешься ты к хардкору старых игр, ну посмотри что в соседних жанрах-то творится, вот тебе устоявшиеся за десятилетия платформеры, где отлично всё балансируется НЕСКОЛЬКИМИ жизнями с возможностью найти новые в секретках, отлично всё работает, нет, хипстеры с раскрытыми ртами тащат первую попавшеюся фигню и носятся с ней, как с писаной торбой, не пытаясь для начала разобраться, как это ещё было решено в других играх. Рогалики сейчас это примерно такое же говнарство, как соулс-лайки. Это был, конечно, старческий пердёж местами, среди роглайтов дофига очень крутых вещей, да и Исаак меня задолбал прежде всего своей фекальной стилистикой, но факт бездумного перенимания фич остаётся.

Мало что из тогдашнего бурлящего котла действительно дошло до ума. Есть толковые ToME4 и Caves of Qud, есть скатившийся в басню "лебедь, рак и щука" каменный суп, бесконечно мутирующий с ног на голову, есть несокрушимый монумент мечтам о целых мирах Dwarf Fortress. Настоящие рогалики как были крайне нишевыми, так ими и остались, как творческое созидательство уже тоже не актуальны, т.к. с пришедшими готовыми движками и наборами ассетом стало легко делать другие игры. Но это уже на самом деле хорошо, больше вариантов для творчества, а жертвование графикой в угоду геймплею осталось в нулевых. Теперь на горизонте новая надежда - генерация нейросетями, интересно что она нам готовит.

1717
33
16 комментариев

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

2
Ответить

Angband (классический) я в своё время разок прошёл всё же.
До победы :)

1
Ответить

Фига, крутой! Я не осиливал :)

Ответить

Люблю читать такое. Слушай, а осталось ещё желание делать рогалики (или хотя бы песочницы)? Я сам сейчас занимаюсь таким и ищу людей которым интересно создавать или хотя бы обсуждать свои игровые роглайт миры, с их механиками и т.д.

Ответить

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

Но роглайты и рогалики на самом деле очень сильно отличаются. Ты что конкретно хочешь делать?

Ответить

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

Ответить

Кто в кого играет. Ты о какой игре сейчас?

Ответить