«Что-то давненько ничего не писали о моём протеже» — подумал я и, в очередной раз бросив взгляд на новостную ленту, решил сделать это самостоятельно. Последние месяцы были сосредоточены на WoW:Classic, и, честно говоря, я немного соскучился по неторопливости и спокойствию, которые обычно сопровождают геймплей Eco.
Разработчики, несмотря на некоторое затишье, периодически сопровождаемое всплесками недовольства отдельных товарищей, судя по каналу с коммитами, продолжают медленно, но верно пилить следующую мажорную версию. Мне же в данной заметке хотелось бы оседлать горячо любимого широкими массами конька под названием «вот бы ещё добавить N...» или, иначе говоря «критиканство и предложения из оврага».
Напомню вам, уважаемые читатели, что ранее уже публиковал материалы с рассуждениями на тему неравномерной проработанности механик и багов в целом. Поскольку «координальным» образом там ничего не изменилось, то и возвращаться к уже обсужденному не будем. Не следящим плотно за тем, что нас ждёт следующем обновлении тоже есть, чего почитать.
Никаких пространных и отвлечённых размышлений относительно будущего игры я писать не планирую — только конкретика с максимально сжатым пояснением. Поехали!
Начну с админско-технического — генератор мира и документация. Сейчас, фактически, процесс создания мира выглядит так — перед вами огромная приборная панель с кучей рычажков и кнопок. Часть из них подписана, вторая — подписана по-китайски, какие-то не работают, некоторые трогать вообще запрещено. Чудом подобрав рабочее сочетание и добившись, чтобы количество континентов, рек и озёр было тем самым, которое предполагается, вы жмёте Главную Кнопку и генерация начинается. Машина жужжит и выдаёт на экране солидные надписи о ходе процесса. Это продолжается довольно долго, в прямой зависимости от размера мира. Наконец, вы возвращаетесь с обеда к рабочему месту, видите надпись «100%», запускаете сервер… и получаете какашку. Ну, то есть буквально — континенты выглядят как Оно, биомы размазаны по ним способом, вполне достойным Композиции VII Кандинского, одна река свернулась в спираль, вторая — прямая как палка и течёт параллельно морскому берегу, образуя некое подобие Куршской косы. Вы вздыхаете, выкидываете получившееся в урну, меняете положение одного из рычажков и снова жмёте Главную Кнопку. Машина начинает жужжать…
Хранилище данных мира — тут всё просто. Это, фактически, обычный файл с несколькими таблицами внутри. Ни индексов, как в нормальных БД, ни быстрого кэша в оперативной памяти. Поэтому на любых хоть немного сложных условиях оно тормозит. Ну, некоторые вспомнят прекрасный закон о начислении денег за сбор веток… Разработчики уже неофициально подтвердили, что планируют добавить поддержку нормальных СУБД, но когда это произойдёт — вопрос открытый.
Переходя от глобального к более локальному — биомы. Сейчас они статичны и незыблемы. Ирригируй, терраформируй — никакой разницы, биом гвоздями приколочен к координатам, заданным раз и навсегда. Это, как по мне, неправильно. В игре про наглядное влияние наших действий на природу должно быть заболачивание, опустынивание и т. д. То же самое с полезными ископаемыми — рудой и нефтью. Сейчас их размещение подчиняется совершенно тривиальному закону, это неинтересно.
Растения и животные. По поводу последних, насколько я знаю, работы ведутся и нас ждут кусающиеся хищники и прочие радости, но я не про это, а, скорее, про их взаимодействие между собой. Сейчас популяция животных зависит ровно от двух факторов — насколько на карте много места, по климатическим параметрам подходящего для данного вида и от активности охотников. Ни наличие корма, ни загрязнение роли фактически не играет. У растений всё ещё хуже — там просто через пару недель культивируемые виды могут остаться только на грядках, а остальное зарастает сорняками, поверх которых не пробьётся уже ничто. В результате имеет бескрайние травяные луга, непроходимые заросли салала в тундре и кактусовые пустоши там, где пожарче. Цветы, кусты черники, овощи — конкуренции не выдерживают. Некоторые виды разводить невозможно в принципе — даже на максимальном уровне собирательства семян выпадает меньше, чем нужно для поддержания популяции, не говоря уж о её увеличении.
Фурнитура и материалы строений. Это уже сто раз обсуждено и ответ очевиден — постепенное устаревание спасёт ткачей, плотников и прочих прекрасных людей, которые сейчас, фактически, обречены на прозябание после того, как накрафтят всем по паре комплектов своей продукции. Инженеры, которые могли бы реалистично заделывать колеи и ямы в дорогах, чинить технику — туда же. Бумажное дело. Каменотёсы. Тысячи их.
Загрязнение. Над этим тоже работают, знаю — нас ждут несколько видов отходов, жидкие, твёрдые… Но посудите сами — в игре, которая должна именно воздействие загрязнения на мир показывать, всем, по большому счёту, на это загрязнение плевать с высокой колокольни — хотя бы потому, что оно не влияет практически ни на что, достаточно производство расположить в сторонке от полей.
Кулинария. Все мы знаем, как это происходит — мы, скрепя сердце, покупаем пару стейков, салатов и тортилью у повара в магазине, разворачиваемся — и набиваем желудок какой-нибудь копчёной на костре рыбой или буряком, потому что предстоит тяжёленькая работа в забое/лесоповале/etc, а кто же работает на качественной еде? Время тортов и мраморной говядины приходит только, когда калории не тратятся. Ужасно кривая система, надо менять.
Интерфейс создания законов. Сейчас он находится в веб-морде и это, насколько я знаю, изменят в 0.9, но речь не о его жуткой тормознутости, хотя она существует. Речь о недостатке вариативности этих самых законов, возможно, кстати — проистекающая в том числе из-за низкой производительности «базы данных». В самом деле, зачем вводить возможность считать какую-нибудь дневную прибыть игрока или, там, количество клаймов у него, если система тормозит даже на таких простейших вещах, как количество срубленных за день деревьев?
Настройки доступа к собственности. Сейчас они реализованы квадратно-гнездовым методом, крайне негибким. Лично мне очень подходящей видится схема, используемая в Линуксе — rwx. R — чтение, W — запись, X — выполнение. «Чтение» в нашем случае может, в зависимости от предмета, означать возможность класть материалы в хранилище или станок, «запись» — соответственно, забирать из хранилища или очереди станка получившееся, а «выполнение» — менять его настройки или даже сносить с помощью кувалды. Сочетание этих параметров с индивидуализацией прав доступа даст нам крайне гибкую и удобную систему. Не то, что сейчас.
И когда уже добавят тени игроков?! Эти парящие в воздухе топоры и бензопилы — вполне достойны какого-нибудь ужастика.
Можно продолжать и дальше — замечаний много, но я решил остановиться на наиболее значимых, на мой взгляд, в плане воздействия на игровой опыт. Наверняка у вас, уважаемые читатели, есть свой список претензий к Eco в чёрном блокноте — буду рад о них услышать в комментариях.
Разработчики, несмотря на некоторое затишье, периодически сопровождаемое всплесками недовольства отдельных товарищей, судя по каналу с коммитами, продолжают медленно, но верно пилить следующую мажорную версию. Мне же в данной заметке хотелось бы оседлать горячо любимого широкими массами конька под названием «вот бы ещё добавить N...» или, иначе говоря «критиканство и предложения из оврага».
Напомню вам, уважаемые читатели, что ранее уже публиковал материалы с рассуждениями на тему неравномерной проработанности механик и багов в целом. Поскольку «координальным» образом там ничего не изменилось, то и возвращаться к уже обсужденному не будем. Не следящим плотно за тем, что нас ждёт следующем обновлении тоже есть, чего почитать.
Никаких пространных и отвлечённых размышлений относительно будущего игры я писать не планирую — только конкретика с максимально сжатым пояснением. Поехали!
Начну с админско-технического — генератор мира и документация. Сейчас, фактически, процесс создания мира выглядит так — перед вами огромная приборная панель с кучей рычажков и кнопок. Часть из них подписана, вторая — подписана по-китайски, какие-то не работают, некоторые трогать вообще запрещено. Чудом подобрав рабочее сочетание и добившись, чтобы количество континентов, рек и озёр было тем самым, которое предполагается, вы жмёте Главную Кнопку и генерация начинается. Машина жужжит и выдаёт на экране солидные надписи о ходе процесса. Это продолжается довольно долго, в прямой зависимости от размера мира. Наконец, вы возвращаетесь с обеда к рабочему месту, видите надпись «100%», запускаете сервер… и получаете какашку. Ну, то есть буквально — континенты выглядят как Оно, биомы размазаны по ним способом, вполне достойным Композиции VII Кандинского, одна река свернулась в спираль, вторая — прямая как палка и течёт параллельно морскому берегу, образуя некое подобие Куршской косы. Вы вздыхаете, выкидываете получившееся в урну, меняете положение одного из рычажков и снова жмёте Главную Кнопку. Машина начинает жужжать…
Хранилище данных мира — тут всё просто. Это, фактически, обычный файл с несколькими таблицами внутри. Ни индексов, как в нормальных БД, ни быстрого кэша в оперативной памяти. Поэтому на любых хоть немного сложных условиях оно тормозит. Ну, некоторые вспомнят прекрасный закон о начислении денег за сбор веток… Разработчики уже неофициально подтвердили, что планируют добавить поддержку нормальных СУБД, но когда это произойдёт — вопрос открытый.
Переходя от глобального к более локальному — биомы. Сейчас они статичны и незыблемы. Ирригируй, терраформируй — никакой разницы, биом гвоздями приколочен к координатам, заданным раз и навсегда. Это, как по мне, неправильно. В игре про наглядное влияние наших действий на природу должно быть заболачивание, опустынивание и т. д. То же самое с полезными ископаемыми — рудой и нефтью. Сейчас их размещение подчиняется совершенно тривиальному закону, это неинтересно.
Растения и животные. По поводу последних, насколько я знаю, работы ведутся и нас ждут кусающиеся хищники и прочие радости, но я не про это, а, скорее, про их взаимодействие между собой. Сейчас популяция животных зависит ровно от двух факторов — насколько на карте много места, по климатическим параметрам подходящего для данного вида и от активности охотников. Ни наличие корма, ни загрязнение роли фактически не играет. У растений всё ещё хуже — там просто через пару недель культивируемые виды могут остаться только на грядках, а остальное зарастает сорняками, поверх которых не пробьётся уже ничто. В результате имеет бескрайние травяные луга, непроходимые заросли салала в тундре и кактусовые пустоши там, где пожарче. Цветы, кусты черники, овощи — конкуренции не выдерживают. Некоторые виды разводить невозможно в принципе — даже на максимальном уровне собирательства семян выпадает меньше, чем нужно для поддержания популяции, не говоря уж о её увеличении.
Фурнитура и материалы строений. Это уже сто раз обсуждено и ответ очевиден — постепенное устаревание спасёт ткачей, плотников и прочих прекрасных людей, которые сейчас, фактически, обречены на прозябание после того, как накрафтят всем по паре комплектов своей продукции. Инженеры, которые могли бы реалистично заделывать колеи и ямы в дорогах, чинить технику — туда же. Бумажное дело. Каменотёсы. Тысячи их.
Загрязнение. Над этим тоже работают, знаю — нас ждут несколько видов отходов, жидкие, твёрдые… Но посудите сами — в игре, которая должна именно воздействие загрязнения на мир показывать, всем, по большому счёту, на это загрязнение плевать с высокой колокольни — хотя бы потому, что оно не влияет практически ни на что, достаточно производство расположить в сторонке от полей.
Кулинария. Все мы знаем, как это происходит — мы, скрепя сердце, покупаем пару стейков, салатов и тортилью у повара в магазине, разворачиваемся — и набиваем желудок какой-нибудь копчёной на костре рыбой или буряком, потому что предстоит тяжёленькая работа в забое/лесоповале/etc, а кто же работает на качественной еде? Время тортов и мраморной говядины приходит только, когда калории не тратятся. Ужасно кривая система, надо менять.
Интерфейс создания законов. Сейчас он находится в веб-морде и это, насколько я знаю, изменят в 0.9, но речь не о его жуткой тормознутости, хотя она существует. Речь о недостатке вариативности этих самых законов, возможно, кстати — проистекающая в том числе из-за низкой производительности «базы данных». В самом деле, зачем вводить возможность считать какую-нибудь дневную прибыть игрока или, там, количество клаймов у него, если система тормозит даже на таких простейших вещах, как количество срубленных за день деревьев?
Настройки доступа к собственности. Сейчас они реализованы квадратно-гнездовым методом, крайне негибким. Лично мне очень подходящей видится схема, используемая в Линуксе — rwx. R — чтение, W — запись, X — выполнение. «Чтение» в нашем случае может, в зависимости от предмета, означать возможность класть материалы в хранилище или станок, «запись» — соответственно, забирать из хранилища или очереди станка получившееся, а «выполнение» — менять его настройки или даже сносить с помощью кувалды. Сочетание этих параметров с индивидуализацией прав доступа даст нам крайне гибкую и удобную систему. Не то, что сейчас.
И когда уже добавят тени игроков?! Эти парящие в воздухе топоры и бензопилы — вполне достойны какого-нибудь ужастика.
Можно продолжать и дальше — замечаний много, но я решил остановиться на наиболее значимых, на мой взгляд, в плане воздействия на игровой опыт. Наверняка у вас, уважаемые читатели, есть свой список претензий к Eco в чёрном блокноте — буду рад о них услышать в комментариях.
26 комментариев
А во-вторых — какой толк от этого (и многих других) комментария, расскажешь?
Старый генератор был уродлив, но работал как ожидалось.
Вот тут я и здесь выражусь. В том виде в котором они сейчас в сорцах — нахрен. Укусы сквозь объекты и блоки, игнор вертикальной координаты, прибегание на базу игрока, тотальный игнор активности (рубишь камень? валишь деревья? — хищнику пофиг).
Всё упирается в а) балансировку, которую нет особого смысла проводить пока не добавлено большинство запланированного контента, б) производительность БД (ты уверен что смог бы играть обсчитывай Эко бОльше параметров чем сейчас?).
В 0.7 пара ленивых плавильщиков могла неиллюзорно утопить весь мир.
В 0.8 это сломали, переделав код рассчитывающий поглощение деревьями углекислоты, в результате это стало невозможно.
Из хороших новостей — в 0.9 это пофикшено.
Я заранее извиняюсь за граничащий с троллингом сарказм, но…
А если поставить х500 рейты то и вообще ничего готовить не надо, помидорок хватит!
Опять таки, вопрос баланса. НА каких нибудь х0.1 рейтах, каждая единица SP\day ценна как никогда.
И никто не будет жрать плохую еду если хочет прокачать профессию.
Просто потому что SP\day от пищи, рассчитывается по хитрой формуле учитывающей средне-арифметическое от суммы нутриентов в каждой потреблённой пище на общую пищу в желудке.
А что чернорабочие плохо питаются… Ну так это и ирл так, не?
Более того, <0.9 многие берут перерабатывающую профу первой и идут добывать, потому что особого штрафа на добычу нет. Скажем добыть гранит каменной киркой — это 2 удара по 20 калорий и в >=60% случаев доп удар что бы расколоть средний обломок. Итого будем считать что 50 калорий за 4 куска камня\руды — 12.5 калорий\кусок.
А теперь взглянем на 0.9… Это ещё конечно крутится, но удар по камню без профы стоит уже ~400 калорий. Более того, когда камень раскалывается, с игрока спишут ещё 200 калорий.
Итого 400+200+200=~800калорий за 4 куска, 200 калорий за кусок камня.
Поварство и фермерство сразу выглядит более востребованным, м?
И внезапно, в Эко есть
Владелец — полные права и разрешение снимать\менять приват.
RWX — права доступа к земле. Дают полные права кроме разрешения снять приват.
RX — Пользователь обьекта. Позволяет запускать задания, забирать\класть ингридиенты.
Если у пользователя есть доступ к станку, он может пополнить чужое задание, если у пользователя есть доступ к хранилищу подключенному к чужому заданию в чужом станке, он может пополнить ингридиенты и\или забрать результат.
Единственное чего не хватает, разделения ввод\вывод и настройки разных инвентарей на разные очереди крафта, что впрочем решается увеличением количества станков.
Я возможно тебя удивлю, но это вполне себе типовая и использующаяся во множестве игр оптимизация, скрывать аватар игрока при виде от первого лица.
Ну и уж «проблема» точно не тянет на что то серьёзнее «минор, не забыть бы полирнуть перед релизом».
Я вот не скажу что я всем доволен, но блин — я вижу что работа делается а баги правятся.
Недоволен? Есть _конкретные_ предложения?
(Не «у вас всё плохо, выкидывайте!» или «Просто смените интерфейс БД!» А именно конкретные предложения?)
Пишите разработчикам, они слышат и делают многие вещи если их грамотно обосновать.
Чего тот же майнкрафт стоит на яве.
Я и не говорю что мне нравится, но в процессе разработки нужны ещё и денюжки, а если сесть за переделку прям всего ядрас сразу, можно и без них остаться.
А «производительность» в майнкрафте… Ну такое.
Будь эко на яве были бы 2 фпс, зато стабильные.
Да и аргумент вроде «критикуешь — предлагай решение» в данном контексте в принципе не уместен.
Между
«Выпечка — гугно!»
и
«Выпечка в нынешнем виде ненужна, т.к. стоит дорого не принося выгод. Предлагаю изменить баланс, изменив рецепты в пользу превосходства по углеводам именно в выпечке и добавить больше полезных для эндгейма и набора очков навыков продуктов.»
Огромная разница.
Я вспоминаю дворцы, настроенные в предыдущих играх. Теперь будут трущобы, минимально обеспечивающие функционал. Вернёмся в «пещеры» с такой себестоимостью построек.
а) нужны (а не как сейчас, «бесполезная трата звезды»)
б) полезны на протяжении всей игры (а не как сейчас кусочек между началом и серединой, т.к. позже уже фермерство и техника)
Так что вариантов много)
Кстати, мне кажется, что это потрясающая тема для исследования и написания крутых гайдов, которую как раз могли бы потянуть игроки. Интересно же. И явная польза для других. :)
А давай порассуждаем, как могло бы. Потому что мне как-то сходу ничего в голову не приходит. Прогресс у кулинара должен изменяться калориями от новых уровней рецептов, по идее. Прогресс у того же кузнеца — эффективностью инструмента, в том числе и в плане расхода калорий. Как быть? То есть, мне кажется, что оба направления верные. И оба по-своему увеличивают эффективность игрока, но вот для больших проектов у игроков желание не доходит. А это мы обсуждали много раз.
Можно упрекнуть игру, да. Но кто-то на подкасте правильно сказал — того, чем гордится Майнкрафт, делает 0.005% от общего количества игроков. Вот эти все амбициозные проекты, Новиграды и Вестеросы, создал ничтожно малый процент от всей аудитории. Высокоуровневая кулинария даёт возможность создавать крутые проекты. То, что аудитория нашего сервера такими проектами не увлечена, а вот перезапусками вполне, не совсем проблема кулинарии, по-моему. :)
Но я просто оставлю формулу расчёта SP от пищи здесь.
Я не знаю как всё это делалось (не буду писать про дипломированных архитекторов), но в этих двух роликах есть два важных момента:
— генплан (карты Вестероса);
— проект производства работ (служебный чат-канал для согласований по проекту).
То есть: нужен отдельный интернет-ресурс, посвящённый конкретной стройке.
Не нравится, чтобы было просто — пусть будет сложно.
Типа вызов.
HeightmapModule.SaveTerrainImage = true
Генерирует предпросмотр карты сразу после завершения генерации, которая происходит у меня в пределах минуты. Если не нравится, то сервер тушится и перезапускается со сбросом параметра seed. В среднем 1.5 минуты на 1 генерацию мира.
Вот такой получается предпросмотр:
Игра как игра; даже в предварительной версии вполне себе играбельна, атмосферна и красива.
То есть: лично я готов «закрыть глаза» на её техническую реализацию и принять «как есть». Даже если игра не использует СУБД. Даже если она впоследствии станет использовать не профильную, а общепромышленную.
Но – на мой взгляд – проблема таки-есть: в применении (в процессе игры).
Концептуально (идеологически, архитектурно) сессионная игра не предполагает серьёзных отношений между игроками, так как сессия априори конечна (так задумано).
Серьёзные отношения – скорее всего – будут развиваться там, где изначально предполагается не «длинный» (растянутый во времени) прогресс, а «длинный» мир: статический (бессмертный) и бесконечный (с возобновляемым ресурсом). Даже если в таком мире есть естественная убыль предметов (старение материала, распад вещества), то психологически он всё равно воспринимается именно как «дом», а не как «гостиница», так как есть «база» (гарантированный приход или нерасход).
А тут метеорит.
Вот, что я должен думать о мире, где изначально предполагается (предлагается) возможность начать всё снова (ещё до начала)?