Как сделать кусочек тени в террарии

Добавил пользователь Валентин П.
Обновлено: 29.08.2024

Fade
> Уже в который раз встает вопрос по поводу реализации идентичного освещения, как
> во всеми известной игре - Terraria.
а в чем проблема? там не сложное освещение же

Fade
> Так вот, нужно хорошее, производительное решение реализации.
> Пишу на Java
No. А вообще флудфилл чем не устраивает?

> а в чем проблема? там не сложное освещение же
> No. А вообще флудфилл чем не устраивает?
Да тормозит оно. Делаю так:
прохожу циклом по блокам в видимой области;
если текущий блок == воздух
присвоить ему свет 100
иначе
если текущий блок != воздух и он граничит с блоком воздуха, то
вызвать функцию освещения в радиусе (Flood Fill)

Тормозит и все равно не получается так, как в Террарии. Хотя в ней плавное, цветное освещение не тормозит. Я не знаю, каким образом еще реализовать.

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

Fade
> прохожу циклом по блокам в видимой области;
как часто?

Fade
> если текущий блок == воздух
> присвоить ему свет 100
> иначе
> если текущий блок != воздух и он граничит с блоком воздуха, то
> вызвать функцию освещения в радиусе (Flood Fill)
покажи код, я думаю ты както не так заимплементил алгоритм или не так его применяеш

Обновляется каждый игровой тик. Вот код из метода tick класса World:

Вот сам рендер освещения:

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

Способ который я описывала тебе в лс вполне справляется с "входы в пещеру затемнены постепенно" и "не тормозит при огромном кол-ве источников света". В Explorisles вообще можно хоть все 3600 видимых блоков факелами заставить - фпс не упадет ни на единицу.

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

Fade
> Обновляется каждый игровой тик.
Жесть, ты с ума сошел?) Обновлять только при каждом обновлении мира, типа блок воткнули или убрали. А если немного заморочиться, то обновлять можно вообще очень малый кусочек мира, который будет обновляться вообще мгновенно.

Fade
> Обновляется каждый игровой тик. Вот код из метода tick класса World:
Жестковато конечно:)

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


и обновляй ее при изменении мира и движении игрока

Это-то понятно, но мне важна правильная реализация. Я и сам знаю, что нужно создать карту освещенности, вырезать участки и так далее. Вопрос стоит в самой реализации.

ArchiDevil, можешь подробнее рассказать?
Rinrin, честно говоря, не понял твой способ.

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



" data-tooltip-class="reaction_award_hover"> 1



" data-tooltip-class="reaction_award_hover"> 1



" data-tooltip-class="reaction_award_hover"> 1


17,097 уникальных посетителей
1,085 добавили в избранное











Не надо таскать c собой много вёдер с водой/лавой/мёдом (особенно мёд, ведь за ним надо бегать довольно далеко). Все это упрощается одной несложной конструкцией, а далее делать всё как на гифке.

После перехода в хардмод Тусовщица продаёт Пузырные блоки , игровой персонаж проходит сквозь эти блоки, но при этом они держат житкости. Закупаемся блоками, строим арену для нужного босса, а потом просто один разок наливаем туда мёда с помощью способа Одно ведро, который мы уже знаем :)

Для более лучшего результата хитрости надо приложить чуть больше усилий, а именно - Зелье пловца

Если вам нужны эссенции, значит вы уже убили Стену плоти, да? Следовательно у вас есть та самая длинная платформа через пол ада, которую вы так долго и мучительно строили не надевая экспертный акс короля слизней и уклоняясь от бесячих лавовых слаймов, ибо только тру пацаны не носят этот акс, но сейчас не об этом, золото/платина, у вас должен быть постоянный запас того или иного (то же самое c железом/свинцом), а так же рубины. В чем суть? Все очень сложно, крафтим короны, много корон.

Результат: Золотая/Платиновая корона
Далее бежим в кримзон/искажение, на алтаре крафтим призывалки короля слаймов.

Результат: Корона слизня
Допустим вам нужны эссенции света, спускаемся в ад и в аду идём прямо под святые земли, а далее призываем слаймов и мудохаем их там, . PROFIT!

С 5 Королей слаймов я собрал 67 Эссенций света , но 5 призывалок это же не предел для такого сильного игрока как ты.

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

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

1. Кладки
Кладки нужны непосредственно для выращиваня цветков, покупаются они у Дриады при определенных условиях (таблица ниже).

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

3. Алхимический стол
Не менее важный айтем, на нём и надо варить все зелья, потому что Алхимический стол имеет 33% шанс сэкономить ингридиент при крафте зелья. Эту полезную штуковину можно найти в данже, дерзайте!

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

Зелье шипов для крафта требует Зуб червя, который падает только в мире с Искажением, Кримзонской альтернативы этому зелью нет, то есть это преимущество миру с Искажением?
Еще один пример: Зелье ярости крафтится с рыбы, которую надо выловить в Кримзоне, увеличивает шанс критического удара на 10%, альтернатива Искажения - Зелье гнева крафтится с рыбы, которую надо выловить в Искажении, увеличивает наносимый урон на 10%.
Как по мне, увеличение постоянного наносимого урона лучше, чем криты, так как это стабильность, и вообще я больше сторонник урона, а не рандомных выбросов двойного дамага, поэтому считаю, что опять таки Искажение тут побеждает.

Для затмения нужна Солнечная плита , которая крафтится с 8 фрагментов солнечной плиты , они выбиваются с Ящщеров и Летающих змей, а чтоб они спавнились вне храма - надо расчистить стены храма джунглей примерно как на скрине.
Поставим Водяную свечу где нибудь поблизости, выпиваем бутылку Зелья битвы за здоровье Голема, и на этом все, фармим.

P.S. Конечно в своём храме на скрине я уже побывал, тем не менее способ работает отлично.

Строим комнатку с некоторыми бафами высоко над землей (чтоб босс не смог достать до вас).
У Пирата покупаем Пушку и несколько сотен Пушечных ядер
Направляем Пушку вверх, немного под углом (ПКМ), делаем дырку в комнате так, чтоб ядра смогли пролетать (3 блока).
Появляется проблема - Зонды, которые вылетают с него при уроне, хоть и от ядер их будет не так много, будет намного легче, если до этого времени вы получите Жезл тучи , в таком случае просто поставьте два облака жезлом как можно выше над дыркой, в которую пролетают ядра и встаньте под сам дождик, таким образом Зонды будут получать довольно хороший дамаг, а то и умирать вообще.

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

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

В Террарии нет обязательного порядка действий для игроков. Однако в некоторые локации имеет смысл идти только когда у вас есть экипировка соответствующего уровня.

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

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

Наземный мир

Биом: Лес

Terraria - Прохождение Террарии

Прохождение Террарии

Terraria - Прохождение Террарии

Прохождение Террарии

Terraria - Прохождение Террарии

Прохождение Террарии

Terraria - Прохождение Террарии

Прохождение Террарии

Terraria - Прохождение Террарии

Прохождение Террарии

Terraria - Прохождение Террарии

Прохождение Террарии

Terraria - Прохождение Террарии

Прохождение Террарии

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

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

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

Биом: Ночь

Terraria - Прохождение Террарии

Прохождение Террарии

Terraria - Прохождение Террарии

Прохождение Террарии

Злой кролик (только в ночь кровавой луны)

Жених (только в ночь кровавой луны)

Terraria - Прохождение Террарии

Прохождение Террарии

Кроличий капюшон (только в ночь кровавой луны)

Цилиндр (только в ночь кровавой луны)

Terraria - Прохождение Террарии

Прохождение Террарии

Terraria - Прохождение Террарии

Прохождение Террарии

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

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

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

Постройка базы

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

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

Иследование наземного мира

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

Иногда у входа в пещеру близко к поверхности можно найти сундук, а в нем - вещи, полезные для начинающего персонажа. Сундуки встречаются во всех наземных биомах, но сокровища в них генерятся по одной таблице, и все их варианты описаны в этом руководстве в разделе "Биом: Лес".

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

Подземный мир

Построив дом, пора переходить к раскопкам. Есть много техник копания, каждая со своими преимуществами и недостатками. Так, прямая уходящая вглубь шахта ускорит процесс спуска в более глубокие слои.

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

Многие игроки комбинируют два описанных метода.

Биом: Подземелье

Terraria - Прохождение Террарии

Прохождение Террарии

Некоторые аксессуары можно объединить в более продвинутые с повышенными характеристиками. Для этого понадобится Мастерская изобретателя, которую можно приобрести у NPC Гоблина-инженера, находящегося в темнице.

Обсидиановый щит

Дает невосприимчивость к отбрасыванию

Дает невосприимчивость к огненным блокам



Кобальтовый щит х1

Обсидиановый череп х1

Медузный водолазный костюм

Дает способность плавать и значительно увеличивает время дыхания под водой

Дает свет под водой



Снаряжение для дайвинга х1

Ожерелье медузы х1

Крепление для брони

Иммунитет к ослаблению и сломанной броне



Амулет анха

Дает иммунитет к большинству ослаблений






Крепление для брони х1

Лечебный пластырь х1

Антисглазная мантра х1

Повязка на глаза х1

Ящик рыбака

Леска не порвется, уменьшает вероятность использования гнили, увеличивает навык рыбной ловли




Прочная леска х1

Ящик рыбацких снастей х1

Серьга рыбака х1

Мобильный телефон

Позволяет в любой момент вернуться домой



Ледяное зеркало х1

Обсидиановая подкова

Нейтрализует урон от падения

Дает невосприимчивость к огненным блокам



Счастливая подкова х1

Обсидиановый череп х1

Обсидиановые ботинки хождения по воде

Дает возможность ходить по воде

Дает невосприимчивость к огненным блокам



Ботинки хождения по воде х1

Обсидиановый череп х1

Ботинки хождения по лаве

Дает возможность ходить по воде и лаве

Дает иммунитет к огненным блокам и 7 секунд иммунитета к лаве



Обсидиановые ботинки хождения по воде х1

Браслет восстановления манны

Увеличивает максимум манны на 20

Ускоряет восстановления манны



Браслет звездной силы х1

Браслет регенерации х1

Огненная рукавица

Увеличивает отбрасывание в ближнем бою и накладывает урон от лавы при атаке

Увеличивает урон и скорость ближнего боя на 10%



Камень магмы х1

Механическая перчатка х1

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

Читайте также: