26

TerraPath #17

Кратко о содержании сегодняшнего поста:

Объекты больше одного тайла.
Глина и её генерация.
Анимация костра и kiln'а.
Улучшение описание предметов.

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

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

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

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

Глина

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

Добавляем новый шум с значениями:

octaves = 4;

persistence = 0.95;

И если результат шума ниже < 0.45f и тайл был горой, то тайл становится глиной.

Применяем это к основной карте:

Как по мне получилось очень классно :з

Анимация костра и kiln'а:

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

Улучшение описание предметов
1) Вывод статов у инструментов и описание к кирке как ломать пол:

2) Вывод шанса поджога у поджигателя:

3) Является ли данный предмет материалом:


А на этом всё, спасибо, что дочитали.

Также не пропустите прошлые посты:

https://pikabu.ru/profile/GooDCrafter


Ссылка на группу в вк(есть играбельная демка):

https://vk.com/terrapath


А также:

1) Исправил баг с мерцанием глобального освещения, когда весь мир становился на секунду фиолетовым, ошибка была в погрешностях float'а в расчётах времени.

2) Комнады в чате.
Пока в виде возможности менять время в игре.

3) Исправил баг с крашем из-за получения здоровья у несуществующего блока при отрисовке повреждения.
4) Статистика уничтоженных блоков.
5) Инвентарь у объектов (ящики, сундуки и тд).

6) Передача инвентаря объектов по сети.

и многое других мелких исправлений и фиксов.


Я вот думаю стоит ли публиковать какой контент я добавил?

Или же лучше оставить его на исследование вам?

А писать только больше про технические стороны?

PS: Простой домик из первых строительных блоков (ветки + палочки) :з

Правила сообщества

ОБЩИЕ ПРАВИЛА:

- Уважайте чужой труд и используйте конструктивную критику

- Не занимайтесь саморекламой, пишите качественные и интересные посты

- Никакой политики


СТОИТ ПУБЛИКОВАТЬ:

- Посты о Вашей игре с историей её разработки и описанием полученного опыта

- Обучающие материалы, туториалы

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

- Анонсы бесплатных мероприятий для разработчиков и истории их посещения;
- Ваши работы, если Вы художник/композитор и хотите поделиться ими на безвозмездной основе

НЕ СТОИТ ПУБЛИКОВАТЬ:

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

- Посты, единственная цель которых - набор команды для разработки игры

- Посты, не относящиеся к тематике сообщества

Подобные посты по решению администрации могут быть перемещены из сообщества в общую ленту.

ЗАПРЕЩЕНО:

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

- Выдавать чужой труд за свой

Подобные посты будут перемещены из сообщества в общую ленту, а их авторы по решению администрации могут быть внесены в игнор-лист сообщества.


О РАЗМЕЩЕНИИ ССЫЛОК:

Ссылка на сторонний ресурс, связанный с игрой, допускается только при следующих условиях:

- Пост должен быть содержательным и интересным для пользователей, нести пользу для сообщества

- Ссылка должна размещаться непосредственно в начале или конце поста и только один раз

- Cсылка размещается в формате: "Страница игры в Steam: URL"

2
Автор поста оценил этот комментарий

Так а чего бы её и не использовать?

Иллюстрация к комментарию
Иллюстрация к комментарию
Иллюстрация к комментарию
Иллюстрация к комментарию
Иллюстрация к комментарию
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Ну юзать текстуры из чужих игр. Такая себе затея.
Даже если они под CC.

показать ответы
1
Автор поста оценил этот комментарий

Как всегда: просто, красиво, интересно!

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Спасибо :з

0
Автор поста оценил этот комментарий
А можно название ремейка?
В свое время очень залипал в сс13
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

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

1
Автор поста оценил этот комментарий

Да не знаю. СС типо опенсорсный.

Так что по идее можно.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Тектуры конечно годные, но я попробую всё же свои нарисовать.
Ибо хоть как-то рисовать умею.
А вот с музыкой и звуками беда. Возможно придется брать СС.

1
Автор поста оценил этот комментарий

Посмотри ещё вариант травы из Secret of Mana (она сделана тайлами!)

Иллюстрация к комментарию
Иллюстрация к комментарию
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Ох годнота.
Мне до такой травы далеко.
Видел её уже давно, эту игру приводили в одном из туториалов по пиксельарту.

показать ответы
0
Автор поста оценил этот комментарий

Успехов!

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Спасибо!

2
Автор поста оценил этот комментарий

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

А так конечно не надо.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Добавил в TODO.
Не факт что это будет добавлено.
Есть также вероятность что мне не понравится как это будет выглядеть, поэтому в финальный билд это не войдет.

показать ответы
1
Автор поста оценил этот комментарий

Какими играми вдохновлялся? Когда встречаю твои посты - сразу вспоминаю Terraria )

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Ну первое это конечно же RimWorld.
А еще:

Minecraft(мод TFC), Terraria, Factorio, Civilization 3, HnH.

показать ответы
2
Автор поста оценил этот комментарий

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

Вот примерчик красивый:

Иллюстрация к комментарию
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Ооо, стены из ремейка сс13.
Добавил в TODO, попробую сделать более плавный переход к двери.

показать ответы
0
Автор поста оценил этот комментарий

А Вы не думали о добавлении рук персонажу?

Иллюстрация к комментарию
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Думал. Мне кажется они не очень будут смотреться.
Хотя вопрос конечно исключительно в графике.

показать ответы
0
Автор поста оценил этот комментарий

Одиночная разработку или в команде ?

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Делаю один.

1
Автор поста оценил этот комментарий

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

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

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

2
Автор поста оценил этот комментарий

Ответственно заявляю. Горы - единственное место - где глины нет.

Под землей почти везде, где нет камней есть глина.

Возле рек копать надо меньше до нахождения глины.

Иллюстрация к комментарию
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

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

1
Автор поста оценил этот комментарий

Сколько времени уже идет разработка ?

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Практически 3 месяца.

показать ответы
0
Автор поста оценил этот комментарий

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

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Про глину:
#comment_98091932

Дверь попробую повернуть.
Декали тоже добавлю.

4
Автор поста оценил этот комментарий

Не логичнее было бы добавить глину возле воды?

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

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

показать ответы

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества