Gamedev

Ответить в тред Ответить в тред
Говорят рогалики можно кирилить десятилетиями. #2 Поехали! https://arhivach.ng/thread/441819/ #1 Аноним # OP 19/05/20 Втр 11:10:52 6710181
image.png 46Кб, 1115x1003
1115x1003
Аноним 19/05/20 Втр 11:37:28 6710222
19/05/20 Втр 13:50:52 6710773
Аноним 19/05/20 Втр 14:03:03 6710844
>>671077
Нихуя ты вспыхнул
16pixel 24/05/20 Вск 21:15:17 6724745
progress3.gif 620Кб, 1113x631
1113x631
progress2.gif 1080Кб, 1113x630
1113x630
progress.gif 404Кб, 1113x630
1113x630
Такс, что тут у нас за неделю:

Сделал отрисовку инвентаря. Переделал сам инвентарь, вынеся его в отдельный класс, потому что начал охреневать от количества функций класса creature.

Прошел все круги ада с адекватной реализацией функций "подними/выброси/используй/экипируй предмет" - и это я еще функцию "метни предмет" сознательно проигнорировал. Под это дело пришлось также перерабатывать обработку ввода команд.

Сделал нормально переход с этажа на этаж. Нормально = через лестницы и с сохранением персонажа.

Переделал генерацию мобов. Каждая комната теперь при создании имеет шанс сгенерить моба, еще один шанс сгенерить второго моба и совсем маленький шанс сгенерить третьего.

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

Вывел полоску ХП и ее расчет на экран, сделал лечилки. А, и заодно сделал возможность умереть и ньюгейм после этого. Теперь формально это действительно рогалик. Делать в игре по-прежнему почти нефиг, но зато появилось ощущение некоего интереса ну или я просто упоролся уже.

А ваши дела как?
Аноним 25/05/20 Пнд 05:57:27 6725456
>>672474
>А ваши дела как?
хуже твоих
16pixel 30/05/20 Суб 19:27:25 6736527
progress4.gif 2218Кб, 1113x630
1113x630
Вопрос бывалым - чем вообще занять себя в данже? У меня какой-то блок наступил, после того, как я ловушки сделал. Есть какие-то интересные механики кроме "пизди монстров - собирай голду"? inb4 можно трупы жрать
Аноним 30/05/20 Суб 21:03:55 6736608
>>673652
Качаться же. У тебя какая система ролевая (есть ли вообще)?
Сделай стрельбу, смену оружия, разных монстров.
Вообще, хорошо делаешь, надо разгребать работу и тебя догонять.
>>669124 →-кун
Аноним 30/05/20 Суб 21:09:48 6736619
>>673652
> Вопрос бывалым - чем вообще занять себя в данже?
Секретные комнаты

Предметы которые игроку не помогут, но могут ввести в игру некий "лор" (какие-нибудь свитки с текстами)

Какая-нибудь скрытая последовательность которая приведёт к некоему эвенту
Например потушить все факелы (или зажечь) в подземелье откроет куда-то проход
Аноним 30/05/20 Суб 21:13:21 67366410
>>673652
сделай чтоб можно было монстров насиловать
16pixel 31/05/20 Вск 01:04:15 67371111
progress5.gif 19272Кб, 1113x630
1113x630
>>673664
Лол, как только я написал прошлый пост, я подумал что вот это самое мне и насоветуют в первую очередь. Если объяснишь как это геймплейно оправдать, попробую ебануть

>>673661
Секретные комнаты - уже сделал. Открытие их по событию тоже сделал - пока выбор из двух вариантов, может рычаг сгенериться где-нибудь, а может скрытая плита в полу.

Про лор пока вообще не думал, хотел сначала механики реализовать пока они внезапно в голове не закончились.
А с факелами зачет идея, спасибо. Возьму в работу Это что, освещение лепить? И сами факелы нужно рисовать, а чтобы норм было надо анимацию делать нормальной а не через жопу, бляяяяя в целом наверное в brogue че-нить можно подсмотреть как будто я недостаточно пиздил из pixel dungeon

>>673660
Точно, качаться! Пока никакую не использую, все больше велосипедю. Все налеплено от балды - от хп монстров до дамага оружия. Есть чего посоветовать почитать на тему?
Смена оружия есть (даже на гифке к прошлому посту), стрельбу - да, найс идея, даже прикинул, как можно сделать - попробую.

Спасибо котаны, добавил в бэклог, лол.

>Вообще, хорошо делаешь, надо разгребать работу и тебя догонять.

Давай конечно! А то я себя чувствую Семеном в треде. Нужно больше рогаликов.
Аноним 31/05/20 Вск 01:29:32 67372512
.png 254Кб, 642x600
642x600
Аноним 31/05/20 Вск 01:31:51 67372713
>>673725
Или просто спрайт круга рисовать который чуть мерцает
Аноним 31/05/20 Вск 09:39:18 67374814
Аноним 31/05/20 Вск 13:07:57 67377815
>>673711
>Если объяснишь как это геймплейно оправдать, попробую ебануть
Это и есть геймплей. Подкрадываешься к монстрам и ебёшь их.
16pixel 31/05/20 Вск 16:07:55 67383116
was-is.png 32Кб, 669x760
669x760
>>673748
Познавательно, почитал. Переделал расчет урона. Хотя я не сильно испытывал неудобство с предыдущим, нормальное распределение выглядит получше.
Но когда ты говорил про прокачку, я думал ты про левелинг какой-нибудь - на каком уровне как происходит прирост хп и статов, и т.д.

Аноним 01/06/20 Пнд 23:45:51 67413717
>>673778
Или они тебя, как в старой, доброй и классичееской «Watch out you behind hunter!» Вообще можно было бы развить идею той игры. А лор, что это силы тьмы масоны педофилы и тебе надо как воину альянса спасти детей от педофилов - рептилоидов из подземелий. Уф бля! Адренохрома ебануть надо.
Аноним 02/06/20 Втр 14:58:33 67422018
>>674137
>>673778
Если ОП не хочет делать такую игру, я сам сделаю. Или нет
16pixel 03/06/20 Срд 21:53:07 67458419
progress.gif 255Кб, 1113x631
1113x631
Такс ну короче сделал возможность иметь разные тайлсеты на разных уровнях и возможность бросать предметы. Та же механика будет использоваться для стрельбы, спеллкастинга и хз чего еще, потенциально даже ходить можно через нее.

Давайте может поговорим за реализацию? Может посоветуете, как лучше сделать можно.

Короче, как сделано на текущий момент:
У меня есть действия, которые тратят ход и есть действия, которые не тратят. Например, move тратит ход, а открытие инвентаря - нет.

Я ввел для игрока стейты (states, состояния): "обычное", "копаюсь_в_инвентаре", "выбираю_цель_для_броска". Сделано это для того, чтобы можно было одни и те же кнопки действий использовать по-разному и не конфликтовать.
Еще сделал новый класс pointer, который создается, когда игрок входит в стейт "выбираю_цель_для_броска" и удаляется, когда игрок из него выходит. Для pointer сделал отдельный move, который позволяет перемещать его по тайлам только в поле зрения (fov) игрока. Этот move не тратит ход.

Итак:
Игрок находится в состоянии "обычное".
Открываешь инвентарь - игрок переходит в состояние "копаюсь в инвентаре". В этом стейте кнопки которые обычно отвечают за перемещение, отвечают за скроллинг инвентаря.
Жмешь кнопку "метнуть предмет". игрок переходит в стейт "выбираю_цель_для_броска". Инвентарь закрывается. Создается новый pointer, положение по умолчанию - тайл, на котором стоит игрок.
Двигаешь поинтер кнопками, жмешь кнопку броска - происходит действие броска и переход в стейт по умолчанию, поинтер удаляется. Отмена - также реализована, но без броска.

Как такие вещи по нормальному делать?
Аноним 04/06/20 Чтв 11:47:18 67463920
>>674584
А щас-то чё на по нормальному? Работает - значит норма.
>Еще сделал новый класс pointer, который создается, когда игрок входит в стейт "выбираю_цель_для_броска" и удаляется, когда игрок из него выходит. Для pointer сделал отдельный move, который позволяет перемещать его
Делал также. Только перемещение не ограничивал.
А ты зачем? У тебя же FOV и FOW. Всё равно чего не надо не увидит. У кидать предметы/стрелять в пустоту иногда нужно или весело. Помнишь как в UFO было?
Аноним 04/06/20 Чтв 11:48:33 67464021
>>674584
Алсо, посмотри Doom Roguelike. Там идеальная стрельба и вообще боёвка. Но, насколько я помню, там +- так же как у тебя механика стрельбы реализована.
16pixel 04/06/20 Чтв 17:48:49 67470322
>>674639
Ну, на самом деле перемещение по fov это костыль, потому что по сути происходит не бросок предмета а удаление его из инвентаря и добавление на выбранный тайл. Если не ограничивать, то легко можно, например, в соседнюю комнату телепортнуть предмет.

Чтобы нормально сделать бросок, надо наверное кастить прямой луч с позиции игрока до выбранного тайла, и где он прерывается по пути к тайлу(стена там или моб), там и спавнить предмет. Кстати, это довольно неплохая идея...

>>674640
Не знал что Doom RL с открытыми исходниками лежит, кстати. Ознакомлюсь обязательно.
16pixel 05/06/20 Птн 22:13:40 67497723
progress.gif 1146Кб, 1113x630
1113x630
line drawing.png 31Кб, 750x882
750x882
Такс, во-первых, отлично задрочил DoomRL. Нраица.

Во-вторых - про
>кастить прямой луч с позиции игрока до выбранного тайла
я сделяль. Подход использовал с https://www.redblobgames.com/grids/line-drawing.html. Код на питоне и гифон процесса - на скринах. Как будто змею выпускает, лол, збс


Аноним 05/06/20 Птн 22:40:58 67498724
>>674137
Ещё можно сделать, чтоб можно было перейти на сторону педофилов.
16pixel 07/06/20 Вск 03:26:54 67515925
progress.gif 644Кб, 1113x630
1113x630
progress2.gif 1798Кб, 1113x630
1113x630
Пофиксил броски и управление прицелом. Теперь бросок остановится перед закрытой дверью или стеной, а прицел можно перемещать как угодно вокруг, в рамках +-8 тайлов.
Еще сделал запоминание последней цели, если бросок был не просто в тайл, а в монстра - также в DoomRL происходит при стрельбе. Собственно, похоже у меня готова стрельба. Осталось пушку добавить.
Аноним 07/06/20 Вск 11:39:45 67518426
>>675159
Красавчик, что тут ещё можно сказать?
16pixel 08/06/20 Пнд 15:27:28 67543827
progress.gif 1381Кб, 1047x637
1047x637
>>675184
Спасибо!
Буду пореже постить, а то весь тред засрал.

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

Кстати, 16 числа на r/roguelikedev будет очередной tutorial series - https://www.reddit.com/r/roguelikedev/comments/grccvt/roguelikedev_does_the_complete_roguelike_tutorial/
Аноним 08/06/20 Пнд 21:41:24 67549228
Допустим, хочу написать рогалик, кодить не умею. Начинаю гуглить и нахожу миллион туториалов по написанию рогалика на питоне. Но анон о питоне отзывается с насмешкой. Тогда встает вопрос, на чем же писать, какой язык учить. Мне важен сам процесс создания чего-то типа своей dwarf fortress. Чтобы она быстро работала, мало весила, легко расширялась. Ни для чего другого кодить не собираюсь, только вот такую игру, типа рогалик, но с глобальной симуляцией. Чего анон посоветует?
Аноним 08/06/20 Пнд 22:22:47 67550729
>>675492
> какой язык учить
> Мне важен сам процесс создания чего-то типа своей dwarf fortress
Тогда учи язык, а не игру делай
Аноним 08/06/20 Пнд 23:52:05 67552930
>>675492
>анон о питоне отзывается с насмешкой
О БОЖЕ, КАКОЙ УЖОС!!!
>быстро работала, мало весила
C++, asm
Аноним 08/06/20 Пнд 23:52:59 67553031
>>675438
>Буду пореже постить, а то весь тред засрал.
Нет. Это называется "годный контент".
16pixel 09/06/20 Втр 00:10:10 67553232
progress.gif 4251Кб, 1046x637
1046x637
>>675492
Ты это я в январе этого года.
Когда я только начал, я очень плохо знал язык и ничего не кодил ни разу толком. И рогаль начал пилить исключительно с целью научиться. А теперь хуярю тонны говнокода как не в себя, ссука, как это выключить

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

1. Поставил цель - держись ее. Не слушай анонов которые говорят тебе выучить другой язык, применить другую парадигму, говна пожрать и так далее. Хочешь кодить - начинай. Хочешь на питоне - возьми питон. Мой рогаль - на питоне. В r/roguelikedev в основном советуют начинать на питоне. Ничего плохого не вижу пока. Хотя если ты хочешь рогаль писать только для того, чтобы тебя аноны уважали, то конечно начинай сразу на расте, телки течь будут, шишка встанет и уйдет, забьешь на программирование нахуй, успех короче.
2. Подучи язык. >>675507-анон в чем-то прав. Мне охуенно помог курс на repl.it (вот этот - https://repl.it/student/classrooms/17929). Без ебанины, сидишь, решаешь задачки, от мегапростых (допиши принт) до довольно головоломных - и заодно учишь основные структуры и термины, и руку набиваешь. И нет резких скачков типа "нарисуй два овала - нарисуй остальную сову".
3. Уменьшай цель. Чтобы сделать ДФ, нужно сделать 10 обычных рогаликов. Тарн до ДФ дохера игр наговнокодил (пруф - https://www.youtube.com/watch?v=ZMRsScwdPcE). Kyzrati убил 10000 часов на игру которую даже не выпустил, до того как сделал cogmind (https://www.youtube.com/watch?v=9yJflbg0V38), а теперь он с него живет. Поставь для начала цель сделать простую игру - рандомный лабиринт, игрок, перемещение. Хотя бы с этого начни.
4. Задавай себе вопросы, ставь маленькие цели. Я ни один туториал не прошел до конца - либо моего мозга хватало только на половину того, что в них показывают, либо другая крайность, вида "возьми библиотеку типа tcod, напиши "import roguelike" и у тебя готов охуенный рогалик." Это не научит тебя ничему. Есть другой вариант: спрашивай себя "а как я могу реализовать вот это или вон то? Как сделать карту? Как сгенерить рандомные комнаты на карте? Как их соединить коридорами? Как сделать, чтобы они не пересекались?" И т.д. и т.п.
Думай, гугли, смотри видосы, читай статьи, спрашивай анонов. Здесь дают охуенные советы Ну или залупу на воротник накидывают, тоже бывает, это психотронная тюрьма, что ты хотел . И не пойми меня неверно, туториалы тоже смотри. Впитывай инфу.
5. Ну и старайся делать то, что тебе интересно. Я реально в эту тему влез, потому что всего лишь интересно было сделать лабиринт из квадратных комнат рандомно сгенеренный, и на экран его вывести. А потом было интересно, как походить по нему. А потом сделать комнаты не квадратные. А потом я посмотрел https://youtu.be/Uo9-IcHhq_w... Ну ты понял.

И в тред пиши. Особенно про прогресс. Будешь семеном, как я.
Аноним 09/06/20 Втр 02:23:12 67555333
Аноним 09/06/20 Втр 08:57:01 67561534
>>675529
>>675532
Ок. Вы одно не поняли: мне неважно, какой язык анон считает самым лучшим - важно только то, на каком, по его прикидкам, оптимально делать такой рогалик. И не как первый блин, а вообще, потому что для меня не стоит никакого дедлайна и я не стремлюсь зарабатывать 300кк в наносекунду кодигом никогда. Вот буду сидеть и ковырять плюсы, например, несколько лет, пока простейшую генерацию пещер сделаю - меня это устраивает, если в итоге это пойдет на пользу игре.
>>675507
>учи язык
>какой не знаю
Аноним 09/06/20 Втр 09:11:15 67562035
Аноним 09/06/20 Втр 10:02:17 67562236
>>675620
Скобку с точкой убери
Аноним 09/06/20 Втр 10:54:37 67562837
>>675622
Пчел, специально без скобочки с точкой зацитировал же.
Аноним 09/06/20 Втр 11:20:57 67563738
>>675628
У меня открылось. Попробуй зарегаться.
Или зайти на https://repl.it/student и поискать Auto-Graded Course with Solutions (python)
Аноним 09/06/20 Втр 11:33:52 67563939
87654876549764.gif 263Кб, 512x288
512x288
Аноним 11/06/20 Чтв 14:52:37 67608140
>>675615
Предлагаю тебе язык Rust. Сам горю такой же идеей как и у тебя. Но покатолько много накириллил
16pixel 12/06/20 Птн 01:21:58 67616241
progress.gif 4470Кб, 1047x636
1047x636
Сделал освещение и факелы. Анон, который это предложил - респект тебе, отличная идея была, да и получилось даже лучше, чем я ожидал. Правда фреймрейт падает чем больше карты отрисовано, так что надо оптимизировать, да.

Реализовано так: добавил всем сущностям переменную lightlevel. Факелы кастят лучи во все стороны, и всему, что в радиус попадает, изменяют этот lightlevel. При рендеринге спрайт соответствующим образом темнится. Чуть сложнее, но не суть

Еще переделал анимацию - сделал отдельную функцию, которая по тику в игровом цикле сменяет кадры каждому энтити. Следовательно, начал потихоньку вкуривать в системы, которые S в ECS. Отслеживание уровня освещения тут же засунул во вторую систему.
Аноним 14/06/20 Вск 03:06:45 67651542
.png 38Кб, 552x486
552x486
>>676162
У тебя как-то странно факелы освещают через стенку?
Аноним 14/06/20 Вск 11:28:49 67654343
>>676515
Вангую, что это отражённые лучи через дверь. ВАУ, РТХ!!!
Аноним 14/06/20 Вск 11:39:03 67654744
>>676543
Просто в той комнате тоже могут быть факелы.
16pixel 15/06/20 Пнд 00:28:32 67668345
progress.gif 2847Кб, 1046x637
1046x637
Просто лучи света проходят сквозь стены и двери. Согласен, так себе решение, но если их останавливать стенами - выглядит это еще хуже.

Может можно накостылить кастинг лучей света только в одну комнату, но комнаты часто генерятся как на пикрил - когда разделение одной стеной - так что хз что с этим делать
Аноним 18/06/20 Чтв 06:05:24 67742146
>>676683

Какие пакеты-фреймворки?
Тоже хочу на питоне рогалик писать, ты меня замотивировал.
Аноним 18/06/20 Чтв 09:18:59 67742647
>>677421
Он же вроде писал, что PyGame.
16pixel 19/06/20 Птн 00:28:36 67760148
Все так, без пакетов и фреймворков, чистый питон + pygame
Аноним 22/06/20 Пнд 07:51:20 67816449
16pixel 23/06/20 Втр 01:22:09 67833250
>>678164
Вообще без проблем, а цель какая? Там такая содомия, что хоть санитаров вызывай мало что понятно, если ты не я.

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

Ссылку на код кину, как с компа зайду и залью в гит какой-нибудь
Аноним 24/06/20 Срд 05:18:59 67846751
>>678332
>цель какая?
Интересны некоторые способы реализации, которые сам не вдупляю немного.
Например, движение камеры или героя неужто нет ничего лучше чем все остальные объекты сдвигать в противоположную сторону (если герой всегда по центру) и как оно всё влияет на поиск пути и прочую парашу.
>Надо?
Давай.
Аноним 20/07/20 Пнд 18:30:50 68376252
почему тред умер?
неужели рогалики больше никому не интересны?
16pixel 24/08/20 Пнд 02:33:52 69391053
progress.gif 1773Кб, 1047x637
1047x637
Я немного сгорел.

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

Вчера пришла в голову мысль, что можно просто на каждый тайл натягивать отдельным слоем черный квадрат, делая этот квадрат прозрачным, в зависимости от уровня освещения тайла.
Аноним 24/08/20 Пнд 08:16:46 69393454
>>693910
А в чём проблема? в производительности или в том что ты не можешь нормально алгоритм придумати?
Аноним 24/08/20 Пнд 18:23:53 69417155
>>693910
> Вчера пришла в голову мысль, что можно просто на каждый тайл натягивать отдельным слоем черный квадрат, делая этот квадрат прозрачным, в зависимости от уровня освещения тайла.

Это же почти как лайтмапа
16pixel 25/08/20 Втр 01:01:18 69444656
progress.gif 2722Кб, 1046x637
1046x637
>>693934
Наверное и то и другое.

Я пробовал сделать для каждого объекта расчет уровня освещенности; в зависимости от него пиксели на объекте должны затемняться. Было много разных провалов - например, по дефолту у меня загрузка всей графики для спрайтов в память происходит один раз. И скажем, если у тебя на экране 2 одинаковых спрайта по разному освещенных, то это означало, что чтобы их отрисовать ты исходник этого спрайта дважды копируешь и меняешь каждому освещение попиксельно - и не один раз, а раз в игровой тик, а их больше 60 в секунду. Фпс просаживался, плюс попиксельное затемнение не очень работает, если у тебя 1 цвет на спрайте задан как прозрачность - эта прозрачность тоже затемняется, причем очень заметно.

В моем рогале 4 уровня сущностей, не помню, пояснял ли раньше: тайлы, объекты (типа сундуков), предметы и живность (игрок, монстрятина); То что я сделал в итоге по освещению использует только освещенность тайлов, т. е. на свойство освещения всего остального можно забить.

>>694171
Похоже, что все хорошее уже придумано)
Аноним 25/08/20 Втр 09:31:24 69449757
>>694446
>Фпс просаживался
Так а хули ты хотел-то, тебе сколько раз говорили что питон ОЧЕНЬ БЛЯДЬ медленный, потому что вообще не сделан для производительных приложений совершенно. У него дичайший оверхед во всём. А любая игра, даже такая простая с виду может требовать некоторых ресурсов. Я советую тебе поискать готовую либоу для работы с 2д графикой на каком нибудь С++ или иже с ними, которую можно будет заюзать в питоне, хоть какая-то отдушина.

Аноним 25/08/20 Втр 10:39:39 69450958
>>694497
>оверхед
Двачую. Лучше брать какой-нибудь шарп для этих целей, ибо даже по сравнению с питоном он более мощный.
16pixel 25/08/20 Втр 20:28:51 69473959
progress.gif 1292Кб, 1046x637
1046x637
Конечно более мощный.

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

Ну и после того, как один парень написал на пигейме клон террарии (https://www.reddit.com/r/pygame/comments/gogfav/a_terraria_clone_i_made_using_pygame_a_few_years/), я чето думаю про медленность питона все-таки преувеличены слова. Он конечно медленнее всего остального вообще, тут даже не поспоришь но в целом - для моих целей потянет.

Алсо, я сделал газы.
Аноним 26/08/20 Срд 09:14:15 69483660
>>694509
Хуйню несёшь, томозной питон менять на тормозную сирешётку - это шило на мыло.
Аноним 26/08/20 Срд 11:22:28 69484461
Аноним 26/08/20 Срд 13:13:24 69489062
>>694844
Нет.
Честно говоря, удивлён, что мочератор ещё не забанил меня за критику сирешётки.
16pixel 01/09/20 Втр 02:48:18 69670363
progress.gif 1677Кб, 1046x637
1046x637
Бамп. Относительно продуктивная выдалась неделька.

Во-первых, узнал, что существует pyglet. Он очень круто задокументирован и вроде как быстрее pygame. Так что кто захочет как я кириллить на питоне - берите его, а не pygame.
Мне конечно лень.

Во-вторых, не знаю что за прикол у пигейма с функцией blit, но она работает оче плохо, если пытаешься блиттить много спрайтов, неважно, на экране они или нет.
Мужики посоветовали реализовать функционал чанков (chunks).

Как это сделал я: группирую спрайты тайлов карты (пол там, стены) в пачки 5х5. Сохраняю. Рендерю только те спрайты, которые входят в чанк, где у меня в данный момент находится player, + прилегающие.

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

итого 2500 спрайтов тайлов на первой карте превращаются в 100 чанков. Рендерится в любой момент времени 250 спрайтов. ФПС легко и приятно держится на 60.

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

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


Надо уже финализироваться как-то.
Аноним 01/09/20 Втр 05:36:01 69670764
132874290667944.jpg 125Кб, 500x667
500x667
145423011018983[...].png 2596Кб, 811x3402
811x3402
14825082983530.jpg 165Кб, 1280x960
1280x960
14836976608850.jpg 37Кб, 576x429
576x429
>>696703
>Почему рендеринг стал быстрее: чанк это отдельный класс, которому я приделал атрибуты
Вот это ты маладца. хорошо зделал. Алогритмы оптимзиации нужно понимать туда сюда. Понимать когда где и что можно оптимизировать тама. Допустим я сейчас пилирую мод на кубаче, там система труб есть. по сути в каждом сегменте трубы есть количество какой-то жидкости или предметы. постоянно перемещать это говно, особенно если труб очень много смысла вообще не имеется, поэтому я придумал вот такую хуйню -> Для оптимизации любые коммуникации будут трансформироваться в snakeChunks. У каждого snakeChunks есть длина и скорость прохождения единиц. Если участки пути различаются по скорости, например разные конвйеры, они собираются в разные снейки. Пока snaked инфраструктура загружена в игру, существующие предметы имеют в ней параметр пройденного пути. Он позволяет рендерить внешнее изменение снейка. В случае если снейк был изменён, все предметы внутри него пересчитывают свое местоположения на кусках снейка для того чтобы дропнуться с него если сегмент отсутствует или переместиться в новый снейк, созданный из предыдущего.

Тоесть надо научиться видеть в общем сам процесс работы алгоритма, чтобы находить моменты которые можно аппроксимизировать, упростить с минимальными потерями внешего качества или вообще без, ну и конечно же наблюдать за теми участками которые выполняют лишнюю для текущего масштаба работу.
Позде можно попробовать соединить эти снейки с machines (любыми блоками которые что то делают и существуют в системе по отдельности), и создавать по ним своего рода карты прогноизруемых вычислений, чтобы только по количеству пройденых при выгрузке из чанка тиков можно было одним махом исполнить всю работу. Сим образом допустим фабрики по производству какой-то хуйни будут "работать" и в выгруженых чанках. Хотя сам процесс создания карт вычислений это опиздейшняя залупа крайне сложная в исполнении. Но я верю что смогу этот момент разрулить.
Аноним 02/09/20 Срд 02:25:48 69680965
progress.gif 2295Кб, 1047x637
1047x637
>>696707
Неожиданно для себя, понял вообще все, что ты написал. Согласен полностью.

Алсо:
Поебался с идентификацией предметов. Сделал идентификацию для бутылок после броска/использования. Ни хера не тривиально оказалось - бутылки работают по принципу "одну опознал, остальные тоже опознались", а например с ножами такой трюк не провернешь, все уникальные.

Потом отпишу как сделал, а то чето устал
Аноним 02/09/20 Срд 19:14:56 69692066
>>696809
Так а эволюционруешь хули!
нудзфл76 03/09/20 Чтв 12:17:40 69700967
ytltk. неделю курю пайгейм - ждите
Аноним 03/09/20 Чтв 17:08:14 69706968
15870364653500.png 91Кб, 250x250
250x250
>>697009
Смотри насмерть не накурись долбоёб
16pixel 04/09/20 Птн 12:46:17 69722569
16pixel 10/09/20 Чтв 02:17:25 69795070
progress.gif 1366Кб, 1286x637
1286x637
Сделал статусы (отравлен, горишь, оглушен и т. д.).

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

На гифке - самовоспламенение и опаление слишком близко подошедшего скелета.

Попозже еще напишу.
Аноним 10/09/20 Чтв 11:27:34 69799171
>>697950
Ну делаешь и то хорошо
Аноним 10/09/20 Чтв 15:53:59 69804172
>>697950
>самовоспламенение и опаление
туши пукан пока не поздно
Аноним 11/09/20 Птн 14:19:01 69819673
Аноним 11/09/20 Птн 18:06:50 69824074
>>698196
И шо это такое с вашего позволеня
Аноним 12/09/20 Суб 09:32:38 69834575
>>694446
>Было много разных провалов - например, по дефолту у меня загрузка всей графики для спрайтов в память происходит один раз. И скажем, если у тебя на экране 2 одинаковых спрайта по разному освещенных, то это означало, что чтобы их отрисовать ты исходник этого спрайта дважды копируешь и меняешь каждому освещение попиксельно - и не один раз, а раз в игровой тик, а их больше 60 в секунду.
Погоди - в питоне нельзя менять графику на лету? Серьёзно? Даже в гамаке этот вопрос решался одним из первых. Тайлы там точно могли менять цвет, свет и прочее-прочее. Неужели с буфером графики такие проблемы?
Аноним 13/09/20 Вск 13:05:14 69849976
>>698345
Да все там можно, если ты не жопорук как я
Аноним 13/09/20 Вск 22:50:02 69863077
>>698240
yx ya i molodec, nu i vce takoe
ya, tipa, tozhe, kirillu vashy "rogalike"
Аноним 14/09/20 Пнд 05:11:24 69868078
>>698630
Ну тогда маладца, кирилль
Аноним 15/09/20 Втр 00:41:38 69883379
Уважаемые господа ECS-ники, как вы карту делаете? Если каждый тайл делать entity, это же дичь получается
Аноним 15/09/20 Втр 09:39:39 69884280
>>698833
Делю карты на фрагменты по NxM тайлов, каждый фрагмент - entity. Потом генерю всю карту рандомно из фрагментов. Это в теории, я пока ещё с перемещением перса разбираюсь
Аноним 15/09/20 Втр 23:01:16 69894281
>>698833
Делал бы карту статичным мешем (ну или чанками какими), а в тех местах должен срабатывать триггер или заспавниться противник, делал невидимую сущность. К примеру входишь в комнату и должна появиться надпись какая-то. Делается это просто пересечением невидимого прямоугольника и bbox игрока.
Аноним 02/10/20 Птн 18:07:34 70187782
image.png 3Кб, 295x288
295x288
Только недавно открыл для себя мир рогаликов. Вдохновился на свой. Начал выполнять туториал по python 3, но потом переобулся на юнити. Что в питоне, что в сишарпе я нубас, но со вторым я работал хотя бы немного, с юнити тоже, плюс возможности отрисовки выше. Все правильно делаю, посоны?
Аноним 03/10/20 Суб 11:59:44 70195983
Аноним 04/10/20 Вск 21:33:20 70209484
Возник вопрос по генерации уровней/карт
Понятно что сейчас самый популярный способ даже не в васянских играх, а в $60 васянском говне это
>генерить комнату
>генерить нное колличество коридоров из нее
>генерить комнаты в конце коридора(или иногда один тупик если хочешь выделиться)
>повторить шаг два пока не закончится "н"
Метод простой, верный и рабочий, даже в сеговской fatal labyrinth использовали

Но вопрос в том, а есть ли рабочие методологии, или игры, где сначала генериться большая комната, и в ней уже генерятся стены и прочая мишура для коридоров и прочей радочти? Интересует из-за того что таким способом можно наверное получить не совсем квадратные/прямоугольные комнаты
Есть игры где использовалось что-то подобное чтобы посмотреть как делалось?
Аноним 05/10/20 Пнд 18:25:55 70232185
Аноним 06/10/20 Втр 00:19:01 70235786
FLOOR1.png 0Кб, 32x32
32x32
WALL1.png 0Кб, 32x32
32x32
А я пока только тайлы стены и пола нарисовал, несколько раз пересмотрел видеотутор по рогалику на юнити, чтобы когда начну его выполнять не тупо строчки копировать а хоть одуплять что и почему делаю. Завтра начну, может даже немного модифицирую под себя алгоритм генерации мапы. Чтобы не забить обещаю анонам скрин результата выложить.
Аноним 06/10/20 Втр 19:17:23 70249487
image.png 163Кб, 1440x900
1440x900
>>702357

Обещал - сделал. Генерация из примера для юнити была совсем скучная, одна комната 8х8, поэтому я запилил свою, нетхак-стайл. Правда одна проблема, я не знаю, как внутри цикла построения комнаты проверить, совпадают ли координаты тайла с массивом, в котором у меня хранятся коридоры. По идее должно быть что то в роде
if (!DungeonHalls.contains(x,y,0f))
Но это не работает.
Поэтому пока все комнаты замуровнаы.
Аноним 06/10/20 Втр 19:23:57 70249588
image.png 165Кб, 1440x900
1440x900
>>702494

Хотфикс. Размуровали, демоны!
Аноним 07/10/20 Срд 05:34:52 70255189
15917845094200.jpg 178Кб, 699x1080
699x1080
15777118098620.jpg 8Кб, 179x281
179x281
>>702494
>>702495

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

Хорошо конечно что хоть что-то делаешь, но блять, бросай хуйню делать богом молю и придумай что-то реально новое хотя бы на уровне своём знаний. Поверь, даже на самых базовых знаниях типо if else, массивы и прочее можно пилить охуительные идеи. Но всегда ставь новые проблемы которые ты с наскока не можешь решить, и вгрызайся в них как тваррръъ, гугл пока не отключили, так что не бухти что сложно. Да, сложно, нихуя не понятно, но именно в таком труде и усилии рожается чистый сука опыт, эссенция экспы блятиь.
Аноним 07/10/20 Срд 09:21:24 70255390
>>702551

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

Идея как сделать совсем случайное подземелье у меня уже есть, реализуется небольшим переписыванием текущего кода. Но сначала я хотел бы научиться реализовывать другие базовые вещи. Когда у меня будет два случайных этажа подземелья, между которыми будет перемещаться персонаж с инвентарем и статами, имеющий ограниченную видимость и способный драться с мобами тогда и начну развиваться. Идей то у меня куча.
Аноним 07/10/20 Срд 11:31:14 70257291
Clipboard02.png 0Кб, 147x138
147x138
Сегодня без кода, только скелет на будущее.
Аноним 07/10/20 Срд 11:32:46 70257492
>>702553
Чем меньше ты превозмогаешь, тем более мутроным процесс будет и быстрее ты дропнешь без видимого результата. делай как знаешь кароче, похуй.
Аноним 07/10/20 Срд 11:35:58 70257593
>>702574

Окей, в твоих словах есть смысл. Попробую сделать более интересную генерацию, как сделаю - выложу результат.
Аноним 07/10/20 Срд 11:42:48 70257694
>>702575
https://habr.com/ru/post/461323/
Бери вот это, придумай как в неё записать собственные правила генерации, научись генерировать этажи больших храмов (частично симмтеричные комнаты.) Создай абстракцию над процессом генерации вообще (хуй знает просто как сейчас у тебя рабботает). Используй какой-нибудь шум Перлина для генерации пещер.

https://habr.com/ru/post/475764/
https://habr.com/ru/post/321874/
https://habr.com/ru/post/440286/
https://habr.com/ru/post/354826/
Аноним 07/10/20 Срд 12:03:34 70257995
>>702553
Да не слушай никого, делай как хочешь. Или слушай и делай как хочешь. Главное делай, а то пиздоболов развелось, на анонимных имиджбордах пишут а рогалики - нет
Аноним 07/10/20 Срд 12:04:38 70258096
>>702579
просто занят модом на кубоч, потому и не пилю
Аноним 07/10/20 Срд 12:54:14 70258697
>>702579

Я пока в тетрадочке набросал план для альтернативного генератора данжа, там суть в том что у меня не три вертикальных и три горизонтальных коридора, как я сделал, а N горизонтальных и Z вертикальных, со случайными X и Y соответственно. А на их пересечениях делаются комнаты. Единственное что надо одуплить как сделать их длину рандомной, думаю придется впервые создавать новый класс переменной, включающий в себя и начальную координату коридора и его длину.

Но перед этим всем я все таки хочу побегать персонажем по уже имеющемуся.
Аноним 07/10/20 Срд 14:58:44 70260198
>>702551
>придумай что-то реально новое
Самое дебильное что ты только мог сказать
Зачем изобретать велосипед? Если в итоге выйдет в разы хуже чем от проверенных дедовских методов?
Аноним 07/10/20 Срд 15:03:35 70260299
>>702601
Ебать, долбоёб ты сука за что нахуй, у меня слёзы от тебя на глазах выступили. С таким подходом иди нахуй шестой клон ADOM делать, всё сука, весь игрострой засрали однотипным говном бездари ебаные нахуй. Так мало того что вы срёте сука, вы в своём говне посредственном топите реально интересные идеи, про которые не могут узнать люди, потому что блять тонут в говне блять посредственности блять.

Не разговаривай со мной больше пожалуйста.
Аноним 07/10/20 Срд 15:06:07 702603100
1.png 88Кб, 1440x900
1440x900
2.png 78Кб, 1440x900
1440x900
3.png 81Кб, 1440x900
1440x900
Надеюсь теперь Анон скажет "маладца".
Аноним 07/10/20 Срд 15:07:42 702604101
>>702603
ну маладца конечно, хоть что-то делаешь, но умоляю тебя, не останавливайся на таких тривиальных способах. Всегда есть более интересное, и лучшее решение. В тред кстати информации достаточно я выложил
Аноним 07/10/20 Срд 15:10:35 702605102
>>702604

У меня по плану сегодня было ходить начать, а из за тебя, демон, я вышел за свои пределы полного нуля в геймдеве и кодинге и перепилил генератор данжа спасибо за мотивирующий пинок, анонче. Что то менее тривиальное буду пробовать позже, сейчас нужно базовый функционал научиться делать.
Аноним 07/10/20 Срд 15:14:38 702606103
image.png 258Кб, 512x288
512x288
>>702605
ГЛАВА ДОЛБОЁБОВ, ИЗВЕСТНОЙ БАНДЫ ИМИДЖБОРДЫ ДВОЩ! СИМВОЛ БИТАРДСКОГО НАЧАЛА! ДЕМОН СОРСЦОВОГО МИРА И ОКРЕСТНОСТЕЙ! ИЛИ ПРОСТО АНОНЧИК, СОБСТВЕННОЙ ПЕРСОНОЙ!
Аноним 07/10/20 Срд 15:33:01 702609104
>>702602
Таблетки прими
На интересные идеи всем похуй если ты не можешь их по человечески реализовать, поскольку лично у тебя все твои "интересные идеи" заканчивались не играбальным говном, а вот у чэдов вроде меня всегда получались годные игры которые нравятся людям, поскольку знаем как делать
Аноним 07/10/20 Срд 17:25:18 702626105
>>671018 (OP)
Тут конечно шизик завёлся, но вообще он правильно сказал - чем необычнее задумка, тем круче костыли, и тем больше универсальной экспы. Я вот неожиданно для себя начал делать мод про необычную (японскую) армию для одной игори, и за год от нуля в тридэ играх дошёл до того, что начал импортировать простенькие модельки военной техники, которую сам слепил на коленке.
Хотя против рогаликов ничего не имею - спеланки и айзек жутко доставили - но нужно признать что без интересных и необычных идей он нахуй не нужен.
24 года-с нyльчика-кун
Аноним 07/10/20 Срд 17:26:37 702627106
>>702626
Почему я шизик? Может просто шибко эмоционально выражаюсь.
Аноним 07/10/20 Срд 17:57:26 702628107
>>702626
Прежде чем делать необычные задумки надо знать как делают взрослые дяди. А уже потом добовлять что-то свое
Это как кино, сначала нормальные режисеры хуярили рекламу и говно по шаблону, а уже потом ивил дедов
А арт хаусники которые хотели выебнуться и снять не так как все, как правило снимают говно которое никому не нужно. И в итоге ничего стоящего так и не снимают
Аноним 07/10/20 Срд 18:03:47 702629108
>>702626
>24 года-с нyльчика-кун
А это правда, что фокусник с ньюсача - это ты?
Аноним 07/10/20 Срд 18:32:01 702632109
>>702628
99% "нормальных" нихуя не сняли толкового. От жанра мало зависит. Линч и Джексон снимали артхаус и не померли.
>>702629
Понятия не имею, о чём ты. На ньюсаче вообще не сижу, там ольгинцы и крымодебилы спамят хуйнёй про украину.
Аноним 07/10/20 Срд 18:37:09 702633110
>>702632
>Линч снимали артхаус и не померли.
Ну да, во время учебы он нихуя не узнал о том как снимать фильмы, и сразу начал с артхауса
То что игнорируешь то что его первые короткометражки на артхаус никак не тянули комментировать даже не стоит
>>702632
>На ньюсаче вообще не сижу, там ольгинцы и крымодебилы спамят хуйнёй про украину.
Еще и хохлина, ясно почему такой долбанутый и орешь что похуй на готовые методики наджо эксперимниторавть, у вас вся страна такая ебанутая
Аноним 07/10/20 Срд 18:38:51 702634111
>>702633
>готовые методики наджо эксперимниторавть
Ты с кем общаешься? это вообще другой человек.
Проснись, ты в психотронной тюрьме серишь.
Аноним 07/10/20 Срд 18:58:34 702637112
1.png 88Кб, 1440x900
1440x900
2.jpg 11Кб, 299x337
299x337
3.png 81Кб, 1440x900
1440x900
4.jpg 10Кб, 244x346
244x346
Я уже всех заколебал наверное, но еще немного пошлифовал свой алгоритм чтобы получше выглядели результаты.
Анон, топящий за нестандарт: я тебя понимаю и согласен с тобой. Но для меня надеюсь пока что это и есть нестандарт и выход за пределы, потому что я вообще в туторах не встречал такого подхода к генерации, обычно все наоборот, делаются комнаты, а потом вырезаются проходы. То, что я слепил может криво-косо, но мое, ни у кого не подсмотренное и это вдохновляет.
Аноним 07/10/20 Срд 19:02:48 702640113
>>702634
Если ты другой человек, нахуй ты в разговор влез? Я нульчика спрашивал. "Фокусник" это шизик который фото своего хуя постоянно постит, есть мнение, что это нульчик.
Аноним 07/10/20 Срд 19:09:19 702641114
>>702637
> обычно все наоборот, делаются комнаты, а потом вырезаются проходы
Может блядь из-за того что это самый лучший способ который только можно придумать?
Делаешь комнату, потом из неё рандомное число коридоров(не больше чем остаточное число комнат которые ты хочешь еще добавить) в рандомных местах. Если совсем не хочешь паритсья то не больше коридора на сторону комнаты, так даже не надо страховатсья чтобы комнаты не пересекались
Аноним 07/10/20 Срд 19:17:58 702643115
>>702637
Данжоны не оче реалистичные. Такие кишки-коридоры в бункерах есть, но не в данжонах. Тебе нужно сделать одну большую комнату, которую пересекают вертикальные и горизонтальные стены, в которых случайно сделаны прорези - двери. Ну или сделать один большую квадратную-комнату, в котором внутри случайно будет вырезаться квадрат поменьше
Аноним 07/10/20 Срд 19:23:25 702644116
>>702637
Пожалуйста, если хочешь чтобы твоя игра работала, не слушай его >>702643
Всё у тебя нормально для рогалика
Я сам спрашивал что-то подобное поскольку тема интересная>>702094
Но то что тебе написал анон полная хуйня и ничего годного из этого не выйдет
Аноним 09/10/20 Птн 22:19:15 702958117
Clipboard03.png 22Кб, 666x664
666x664
Тот-самый ньюфаг репортинг ин.
Теперь персонаж умеет двигаться и биться в стенки, а еще к нему привязалась камера, ура. Правда, мой метод проверки на возможность пройти не подразумевает что нельзя ходить там, где ничего нет, ведь вселенная не любит пустоты. Поэтому немного перепилю генератор данжа. Будет огромная комната Х на Y тайлов, в которой будут выбираться рандомные точки как корни областей. Для каждого корня будет рандомно выбираться какой тип области вокруг нее вырастет: для начала думаю это будут просто прямоугольные комнаты огражденные стенами со случайным количеством входов или залы, просто пустые пространства. Потом в список областей на выбор можно будет добавить пропасти, озера, грибные поля, библиотеки и прочее, с разной вероятностью возникновения. А пока вот скриншотец, чтобы пост не был без картинки.
Аноним 11/10/20 Вск 00:25:57 703087118
>>702958
>Будет огромная комната Х на Y тайлов, в которой будут выбираться рандомные точки как корни областей.
Нормас. Всё лучше чем кубы соединённые длинными корридорами.
Аноним 14/10/20 Срд 21:51:04 704132119
1.png 44Кб, 966x719
966x719
2.png 19Кб, 562x428
562x428
image.png 2Кб, 140x96
140x96
Маленькая, но победа. Реализовал свой алгоритм, пока генерируются только комнаты, но потом пропишу функции для других видов областей, конфигурация кода позволяет легко это сделать и даже регулировать вероятность возникновения области (пока что для простой комнаты стоит 100% вероятность появления). Камера следует за игроком, игрок не проходит сквозь стены, вроде бы все работает корректно.

Пора наверное добавить врагов.

P.S. Дико вдохновился визуальным стилем Infra Arcana, думаю переезжать на однобитовую графику. Намалевал на досуге спрайтец, пикрил 3.

Аноним 15/10/20 Чтв 20:00:37 704344120
image.png 38Кб, 558x446
558x446
image.png 83Кб, 694x330
694x330
image.png 25Кб, 397x421
397x421
Я посидел на работе, подумал, и понял, что старый алгоритм хуйня, кубы в кубе. И написал сначала в блокноте ручкой, а потом дома в монодевелопе новый. Все, обещаю на этом остановиться с задрачиванием генератора данжа и начать работать над боевкой.
Аноним 15/10/20 Чтв 20:03:47 704346121
>>704344
>Я посидел на работе, подумал, и понял, что старый алгоритм хуйня, кубы в кубе.
тебе это с самого начала говорили
Вот новый да, так и надо. Все так делают по хорошей причине
Аноним 15/10/20 Чтв 20:05:09 704347122
>>704346

В самом начале я бы такой алгоритм не написал, пришлось много почитать/посмотреть.
Аноним 16/10/20 Птн 11:32:59 704429123
>>704344
ну весьма НЭПЛОХА.
Аноним 16/10/20 Птн 12:05:34 704434124
>>672474
Забавно, энтерпрайзерский разраб сразу бы вынес в отдельный класс.
А на чем пишешь?
Аноним 22/10/20 Чтв 21:41:25 705913125
>>704344
Аноны, а что, никто разве не слышал про wave function collapse. С помощью этой штуки можно же что угодно сгенерировать.
Аноним 22/10/20 Чтв 22:44:58 705916126
>>705913
Там, вроде бы, ограничения, что может не сойтись и придется генерироваться заново, не?
Аноним 22/10/20 Чтв 23:33:51 705918127
>>705916
Да, у этого алгоритма есть недостатки, но они фиксятся. Можно ещё клеточные автоматы попробовать, там вообще никаких проблем нет.
Аноним 23/10/20 Птн 00:44:23 705921128
>>705918
Ну а у клеточных надо подбирать правила чтобы выглядело естественно.
Аноним 23/10/20 Птн 16:00:59 705979129
>>705921
Точно! Все алгоритмы, оказывается, говнище и не работают.
Аноним 24/10/20 Суб 03:07:54 706052130
>>705913

Я запилил свой алгоритм на основе drunkard's walk, результат меня устраивает. Клеточные автоматы создают пещеры, а мне нужен был данж.
Аноним 24/10/20 Суб 09:55:06 706078131
>>706052
Разве drunkard's walk не создаёт пещеры?
Аноним 24/10/20 Суб 10:21:26 706080132
FOV.gif 1511Кб, 800x600
800x600
Кодил на этой неделе один день. Остальное время с блокнотом и ручкой изучал всех этих Брезенхемов, алгоритмы FOV, кэширование и инкапсуляцию в юнити и т.п. Но FOV таки запилил.
Аноним 24/10/20 Суб 11:42:01 706086133
>>706078

Может и пещеры. А может коридоры, в ключевых точках которых я ставлю комнаты.
Аноним 27/10/20 Втр 11:07:35 706585134
progress.gif 1078Кб, 884x631
884x631
Бамп треду, привет вкатившимся.

Я наконец разобрался с плавной отрисовкой кадров в pygame, такая-то красота теперь. Вот не шучу, 4 недели ебался
Аноним 27/10/20 Втр 11:26:22 706586135
>>706585
Прикольно, будет 1я игра на питоне и при этом не ВН-ка!
Аноним 27/10/20 Втр 12:36:59 706592136
>>706585
Надеюсь добавишь скин тяночки на гг.
Настройки X
Ответить в тред X
15000
Макс объем: 40Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
Стикеры X
Избранное / Топ тредов