Квант безделья

@q_of_idleness Yoqdi 0

Автор: @di_grigio
https://twitter.com/di_Grigio
Геймдев, java, еда, overtwitter
Kanal hududi va tili
Rossiya, Rus tili


Muallifga yozish
Kanalning hududi
Rossiya
Kanal tili
Rus tili
Kategoriya
Dastur va ilovalar
Indeksga qo‘shilgan
14.05.2018 14:26
reklama
Telegram Analytics
TGStat хизмати янгиликларидан бохабар бўлиш учун обуна бўл!
TGStat Bot
Telegram'дан чиқмай туриб каналлар статистикасини олиш
TGAlertsBot
Каналингиз репостлари ва эсловлари ҳақида хабар беради.
32
ta obunachilar
~0
1 ta e’lon qamrovi
~1
kunlik qamrov
N/A
bir kundagi e’lonlar
N/A
ERR %
0.03
iqtibos olish indeksi
So‘nggi e’lonlar
O‘chirilgan e’lonlar
Eslovlar bilan
Repostlar
Квант безделья 20 Oct 2019, 13:28
Отдельная благодарность Крису Грину из Valve образца 2007 года за вдохновение.

Техника шейдинга шрифтов, которую без труда можно использовать и под OpenGL. Из нюансов - нужно чуток замарочиться с генерацией distance field шрифтов.
Attached file
Квант безделья 20 Oct 2019, 13:25
Лучше без шакальства
Attached file
Квант безделья 20 Oct 2019, 13:24
Всё ещё не идеально, но уже ближе к делу)
Квант безделья 4 Oct 2019, 19:12
Квант безделья 12 Sep 2019, 21:24
Квант безделья 12 Sep 2019, 21:23
Хотя не скажу, что я ничего не делал. У меня тут монитор с "обычным" DPI отработал свой дофига часовой срок эксплуатации, поэтому пришлось экстренно реализовывать поддержку масштабирования интерфейса

Теперь можно работать в 4k без риска сломать глаза
Квант безделья 12 Sep 2019, 21:16
Да, извините, у меня тут куча дел завалилась (кажется это самая часто встречающаяся отмазка у соло-разрабов и их каналов), но ничего не могу с этим поделать : )
Квант безделья 12 Sep 2019, 21:15
Endless Space халявный раздают

https://www.humblebundle.com/store/endless-space-collection-free-game
Квант безделья 21 Jul 2019, 16:08
Человекочитаемая схема Сатурна-5 в нормальном качестве без смс и регистрации
Attached file
Квант безделья 21 Jun 2019, 01:52
Анимация из серии изображений, на которых напрямую наблюдают формирование экзопланет в звёздной системе HR 8799
Квант безделья 19 Jun 2019, 01:39
Квант безделья 19 Jun 2019, 01:39
Квант безделья 19 Jun 2019, 01:39
Квант безделья 19 Jun 2019, 01:39
1. Меню поверхности в Stellaris
2. Адок который происходит на большой сетке
3. Что есть сейчас
4. Что есть в RimWorld
Квант безделья 19 Jun 2019, 01:38
Запишу пару мыслей-соображений по тому как представлять поверхность планет.

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

Разделение на локации мне кажется вполне себе удачным уровнем абстракции. По замыслу их размещение относительно друг друга будет влиять на логистику, социологию, политику и экономику. Чем дальше одна локация от другой – тем сложнее им торговать, заниматься туризмом, воевать и иметь какое-то внятное мнение о населении. Кроме того, локация получает доступ к определённым ресурсам на выделенной территории.

Однако у такого подхода имеются некоторые ограничения в виде крайне фиговой масштабируемости в рамках небольшого интерфейса. 5х5 клеток ок, 25х50 – уже беда, появляются всякие скролл-бары, искать нужную ячейку становится проблематичным. А ведь пространства хочется дать для игры крайне много (только вот богатого ресурсами пространства поменьше), при этом не проигрывая в наглядности для игрока, да ещё и выделить как-то тот факт, что планеты различные по размерам.

Сегодня я пару часиков потратил, переверстал, забил на размеры планет, установил всё сеткой 11х5 и представил всё условными обозначениями «локация без построек», «есть постройки», «полностью застроена». Мне это просто немного упростит процесс разработки механик, связанных с непосредственно строительством.

Т.е., план такой:
1) Здания как сущность (готово)
2) Процесс строительства (прямо сейчас в работе)
3) Эксплуатация зданий
4) Жизнедеятельность населения в локации
5) Взаимодействие локаций (и вот тут нужно будет нормально так переработать планеты)

Но как переработать? Хочется повторить то, что сделал Тайнан Сильвестр в его божественной RimWorld. Сферическая планета, которую можно крутить и зумить как в Google Earth. Разве что без фанатизма с генерацией ландшафта, просто условные континенты, условные биомы, всё это составленное из полигонов, а не излишне детализированной сетки. Главное, что наглядно и просторно будут размещаться те самые локации и связи между ними.

Да, у нас тут игра в основном конечно про сам космос, но на планетах миллионы-миллиарды голодных ртов, в космосе жалкие тысячи-десятки тысяч, а значит всё происходящее в игре, так или иначе, но логически увязывается с жизнедеятельности на поверхностях. Поэтому я в разработке буду уделять довольно много внимания и сил этому игровому аспекту.
To‘liq o‘qish
Квант безделья 17 Jun 2019, 20:17
Что касается клиента, то добавились прогресс-бары и таймеры, которые можно планировать из Lua. Данные о зданиях, как и данные о предметах, локально кэшируются.

Следующий билд будет про управление строительными площадами. Т.е. сейчас я просто тыкаю «построй» и оно строится, а в будущем понадобится ресурсы завозить и строителей, да ещё и чертежи нужны будут на руках.
Квант безделья 17 Jun 2019, 20:17
Квант безделья 17 Jun 2019, 20:16
Build 33 done
Игроки и AI могут теперь возводить постройки на поверхности планет. Так уж вышло, что строительство процесс всё же по времени довольно растянутый, поэтому нужно было добавить планировщик игровых событий.

Общий подход следующий:
- Игрок отправляет заявку на строительство
- Сервер проверяет разрешено ли игроку это сделать (мало ли ресурсов нет или чертежа)
- Если всё ок, то делается запись в базу данных, что вот, такой-то игрок, такого-то числа-месяца-года решил возвести вот там-то постройку, а достроится она через сутки
- Добавляется игровое событие в очередь, отсортированную по времени. Наступление этого события соответственно обрабатывается как завершение строительства со всеми требующимися формальностями (банально игроков оповестить, что что-то построилось на планете).
- Удаляем заявку из базы данных

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

Кроме того, важность хранения всего связана с тем, что в некотором будущем появится отдельный сервис, отвечающий за работу AI и чем-то идейно напоминающий AI из S.T.A.L.K.E.R. Всё это будет крутиться на отдельных серверах и игрока своей нагрузкой смущать не станет. Его задачей будет генерировать различные события, задания, направляя куда-либо NPC, тем самым оживляя галактику. Однако, большая часть звёздных систем будет в оффлайне, а значит этому сервису придётся самостоятельно обрабатывать запланированные в них события, обновлять записи в БД и уже после этого принимать решения.
To‘liq o‘qish
Квант безделья 7 Jun 2019, 14:21
Квант безделья 28 May 2019, 03:09
Автор рисует клёвые комиксы описывающие человеческий быт с точки зрения вероятных инопланетян.

Рекомендую.

https://www.instagram.com/nathanwpylestrangeplanet/