Gamedev

Ответить в тред Ответить в тред
Check this out!
Говорят рогалики можно кирилить десятилетиями. #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
Надеюсь добавишь скин тяночки на гг.
Аноним 29/10/20 Чтв 19:20:18 706958137
Есть годные туториалы для юнити по рогулькам?
Аноним 30/10/20 Птн 07:17:28 707008138
>>706958

Увы, нет. Сам с этой проблемой столкнулся. Весь поиск засран scavengers парашей, где даже тайлмапы нк используются, тупо все из геймобжектов. Я из за этого петуча сначала тоже так делал. Именно из за отсутствия туторов у меня на генератор данжа и фов три недели ушло.
Аноним 30/10/20 Птн 10:07:01 707026139
>>706958
Рогалики принято писать на своих движках.
А для всех алгоритмов есть roguebasin.
Аноним 30/10/20 Птн 11:41:15 707032140
>>707026

Геймдев это творчество, в творчестве ничего не "принято". На юнити уже достаточно годных рогаликов, можешь на том же рогбазине чекнуть.
Аноним 30/10/20 Птн 12:41:41 707040141
>>707032
Не нашел ни одного.
Аноним 30/10/20 Птн 12:53:36 707045142
>>707040
Demon, Ganymede Gate, Axu, Rogue Empire, Emergence, Ruins of Marr
Аноним 30/10/20 Птн 12:57:12 707047143
>>707032
кстати да поддержу, в юнити и грид давно встроили и слои для фова
Охуенная вещь же для рогаликов
Аноним 30/10/20 Птн 13:10:12 707054144
>>707045
Не слышал о таких, но верю, что такие извращенцы существуют.
Аноним 30/10/20 Птн 13:18:41 707056145
>>707054
Когда ты играешь в игру, тебе все равно, какие инструменты использовались, все, что тебя волнует это интересно играть или нет. Настоящий извращенец тот, кто сознательно ограничивает себя в выборе инструментов. Я пикнул юнити потому, что заведомо лишаю себя всех проблем, связанных с визуализацией, а все что касается реализации алгоритмов было бы мне одинаково сложно вне зависимости от того, какой язык или движок я бы выбрал.
Аноним 30/10/20 Птн 13:23:59 707059146
>>707056
>Когда ты играешь в игру, тебе все равно, какие инструменты использовались
Нет. Давай на этом мы закончим.
Аноним 30/10/20 Птн 14:14:47 707073147
>>707059
Окей, закончим. Но мне было бы интересно почему тебе не все равно на чем написана игра.
Аноним 30/10/20 Птн 16:48:01 707087148
>>707040
Топовый рогалик на юнити - caves of qud, каждому любителю рогаликов советую ознакомиться, кто еще не играл, годный сеттинг, лор и по фичам довольно необычно.
Римворлд на юнити, не совсем рогалик, но как и df, обычно считается околорогаликовой темой.
А вскудахты "ряя принято свои движки писать" - это просто снобизм от того, что в голове насрано желанием ощущать превосходство над кем-то за счет того, что твои инструменты круче и илитнее.
Но на самом деле, важен только конечный результат, хорошую игру можно практически на чем угодно сделать.
Аноним 30/10/20 Птн 18:04:47 707095149
>>706958
>юнити
Иди нахуй.

>>707056
>Когда ты играешь в игру, тебе все равно, какие инструменты использовались
Неправда.

>>707087
>caves of qud
Именно из-за юнитипараши и не играю. Он кстати перепилил его на юнитипарашу ради кроссплатформенности. С одной стороны конечно похвально, что разработчик не мудак и думает о линуксоидах, но с другой - неужели нельзя было найти более приемлемый способ достижения той же цели?

>хорошую игру можно практически на чем угодно сделать
Еще один аргумент в пользу того, что юнитиговно ненужно.
Аноним 30/10/20 Птн 18:20:35 707098150
>>707095

Ебать ты сноб. Много игр написал уже?
Аноним 30/10/20 Птн 23:45:49 707152151
16pixel 31/10/20 Суб 14:13:26 707187152
progress.gif 3013Кб, 885x630
885x630
Развели срач. Рогалики где?

На правах бампа - на гифке мои успехи работы с A*-search.
Аноним 31/10/20 Суб 16:39:49 707202153
>>707187

Харош. Я на этой неделе хотел тоже вплотную А* заняться, в итоге во вторник оптимизировал фов из за внезапного озарения, потом работой загрузили, так что только сегодня почитал в первом приближении про этот алгоритм и приаинул, как буду его реализовывать.
16pixel 31/10/20 Суб 18:54:51 707221154
progress.gif 5140Кб, 627x602
627x602
>>707202
Я смотрел много разных видосов и читал статьи с исходниками, но по-настоящему понял только посмотрев вот этот - https://www.youtube.com/watch?v=-L-WgKMFuhE.

+Реализовал последовательность ходов через actionы, как описывал Bob Nystrom вот тут - https://www.youtube.com/watch?v=JxI3Eu5DPwE&t - очень удивлен, что этот подход у меня сработал.
Аноним 31/10/20 Суб 20:13:43 707234155
>>707221

Да я уже сохранил себе несколько ссылок, которые мне наиболее понятны были. На следующей неделе буду разбираться. Но твое гляну, спасибо.
Надо бы в качестве отвлечения подумать об итоговом концепте игры. Может диздок запилить.
Аноним 01/11/20 Вск 12:51:46 707293156
Аноним 01/11/20 Вск 14:04:48 707298157
>>707293

Судя по гифкам/скринам тут всего двое рогалики делают.
Аноним 01/11/20 Вск 19:08:43 707329158
>>707293
видео не про рогалики
cogmind вотт збс сделали, блог kyzrati хороший ресурс
Аноним 05/11/20 Чтв 20:54:33 707935159
>>707293
- видео не имеет никакого отношения к рогаликам, не упомянут ни один рогалик
- видео не имеет никакого отношения к итт разделу
- уноси свою хуиту на /vg

>>707329
Двачую. Надо кстати добавить его в подписки.
Аноним 05/11/20 Чтв 22:48:06 707951160
>>707293
Видос хороший, может быть и игра хорошая, и прием хороший (замечал что он и в настолках сейчас популярен) - вот еще о нем https://www.youtube.com/watch?v=dwI5b-wRLic
Но это какой то хакнслеш, не рогалик. И айзек упоминающийся тоже не рогалик.
Аноним 19/11/20 Чтв 21:14:54 710597161
pathfind.gif 132Кб, 800x600
800x600
На самом деле сам алгоритм поиска пути я реализовал две недели назад. Но у меня некорректно работала функция определения свободной клетки для него, что я пофиксил только сегодня.
Аноним 19/11/20 Чтв 23:35:52 710622162
Бамб
Аноним 20/11/20 Птн 00:34:21 710629163
>>710597
Молодец ваще)

Тоже бампану
Я тут недавно на r/pygame тред создавал - собирал советы, что можно улучшить в своем подходе к работе с пайгейм. Сляпал небольшой кусок прототипа, и ну, в общем, может кому интересно будет поковырять:
https://github.com/KeyboardGecko/pygame-sprite-rendering-tilegame-example

Основной код в файле playtesting.py.
16pixel 24/11/20 Втр 14:35:28 711286164
progress.gif 1089Кб, 849x693
849x693
Бамп лучшему тредику на двоще.
Играюсь с анимациями и генерацией ландшафта по шуму Перлина.

>>710629 это я, кому была интересна реализация камеры, pathfindingа, анимации - это всё там.
Аноним 25/11/20 Срд 08:08:29 711385165
Спасибо, почитал ваш тред и понял что писать свой движок не стоит а лучше пойти и юзать чужие костыли, пусть и с огромным просером по ФПС.
Аноним 25/11/20 Срд 09:50:15 711387166
>а лучше пойти и юзать чужие костыли, пусть и с огромным просером по ФПС.
А еще лучше юзать чужие костыли, но разобравшись фиксить там возникшие траблы. Профит в виде экономии времени.
Аноним 26/11/20 Чтв 09:38:35 711533167
>>711385
ФПС в рогалике же так важен.
16pixel 27/11/20 Птн 13:36:24 711716168
v1.gif 502Кб, 849x693
849x693
v2.gif 544Кб, 849x693
849x693
v3.gif 1465Кб, 849x693
849x693
Ебусь с освещением. Все как я люблю.
Кажется нащупал норм вариант, чтобы без рывков и не охреневать от проседания ФПС. Что скажете?
Аноним 27/11/20 Птн 14:02:45 711723169
.gif 37Кб, 449x445
449x445
>>711716
3 вариант хорош. Может быть стоит сделать туман войны как в варике?
Игроку будет понятно где он ещё не побывал
Аноним 27/11/20 Птн 18:55:23 711785170
>>711533
Я хуй знает, но если современный движок на современном железе не выдает 60 фпс исключая всякие там ретрейсинги и 4 кто это очень хуевый движок.
Аноним 27/11/20 Птн 19:31:57 711797171
>>711785
Любой популярный движок выдаст тебе стабильные 60 фпс на игре уровня 2д рогалика.
Аноним 27/11/20 Птн 20:19:14 711811172
Аноним 28/11/20 Суб 23:19:03 711953173
>>711811
Движкосрачя, ты тредом ошиблась. Пропукивайся обратно в свой загон одебилевших пуконюхов, пока цела.
Аноним 29/11/20 Вск 11:08:25 712016174
Я застрял на размышлениях о том, как реализовать то, что называется schedule или timesystem, одним словом пошаговость. Когда я реализовывал генерацию данжа, FOV, pathfinding то просто разбирался с алгоритмами с roguebasin'а и имплиментировал их в юнити. А тут прям что то много вариантов разной степени понятности.
При том что еще нужно разобраться с такой штукой как полиморфизм, чтобы все существа обладали одинаковым набором свойств и одинаково взаимодействовали со всем вокруг. Плюс нужен скрипт, управляющий мобами, причем определяющий что моб может: стрелять, колдовать, бить в ближнем бою, что из этого сейчас делать лучше. И все это нужно вводить примерно одновременно. Комплексная задачка в общем.
16pixel 29/11/20 Вск 14:06:58 712048175
turns.png 2Кб, 169x142
169x142
Могу рассказать, как я делал.
Для нормального понимания, лучше наверное представить, что ты не мышью ходишь, а с клавиатуры. Ну типа кнопку нажал - ход сделал.

Итак, шаг первый: мобы и игрок унаследованы от одного класса и имеют метод TakeTurn(). Собственно, ход.

Тогда базовый игровой цикл выглядит так -
def gameloop(player, mobs):
player.takeTurn()
for mob in mobs:
mob.takeTurn()

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

Ну и в принципе всё. Отсюда можно дальше развиваться куда хочешь, к примеру:

- в takeTurn мобам прописывать AI-логику (простой пример: начался ход - кастанул fov - если player в fov, то прокинуть A* до него, сформировать очередь ходов, сделать первый шаг из этой очереди - ход закончился)
- сделать для игрока очередь действий, где будет храниться очередь из ходов; игровой цикл должен вертеться, пока очередь не пустая, исполняя каждое действие в очереди и убирая исполненные. Когда очередь пустая, цикл ждет, опять же, ввода. Это к вопросу, как поиск пути по мыш-клику привязать к игре - просто формируешь по нему очередь из ходов для игрока.
- Можно сделать у мобов и игрока свойство "скорость" (очки действия, AP, как угодно). Когда оно выше определенного порога - моб может сделать действие. Каждый ход данный показатель увеличивается, при каждом сделанном действии - обнуляется/уменьшается. Таким образом ты реализуешь разную скорость действий для разных мобов - ну понятно, в общем.

Ну и так далее и так далее.

Как итог, мой игровой цикл выглядит как-то так:

def gameloop(player, mobs):
> #so, every creature has a stack of actions
#if it's not empty, we pop one from it and execute it
#for every creature in order (player + creatures)
#if player stack is empty, it waits for input.
if player.actionQueue != []:
player.gainAP()
player.takeTurn()
for mob in mobs:
mob.gainAP()
mob.takeTurn()

Аноним 29/11/20 Вск 16:00:10 712056176
>>712048

Примерно понял, спасибо. Не знаю, нужно ли чтобы в рамках юнити мобы и игрок были унаследованны от одного класса, по факту они уже геймобджекты. Попробую это на следующей неделе реализовать.
Аноним 29/11/20 Вск 17:29:49 712065177
>>712016
Так это тоже есть в бассейне рог.
Аноним 29/11/20 Вск 21:58:42 712106178
>>712016
> как реализовать то, что называется schedule или timesystem, одним словом пошаговость
В начале партии составляешь список игроков и раздаёшь номера участвующим в партии сущностям. Пошаговая система переключает по порядку (согласно правилам) переключает одну из записей в режим "current". Все игровые сущности, участвующие в партии могут становиться на паузу и могут получать current и сравнивать со своим уникальным номером. И собственно всё. Вот тебе и шедулинг.


> нужно разобраться с такой штукой как полиморфизм, чтобы все существа обладали одинаковым набором свойств и одинаково взаимодействовали со всем вокруг
Значит, смотри. В играх гораздо удобнее композиция, а не наследование. Через композицию полиморфизм выходит на новый уровень, недостижимый наследованию. Суть токова: У тебя есть простые классы с одним уровнем наследования. Больше уровней нет. Их класс-родитель даёт им только один функционал: хранить в себе список компонентов и обрабатывать их по списку (в простейшем случае) каждый фрейм. У компонентов тот же самый общий предок. То есть, сущности сами могут быть компонентами, состоять в списке компонентов у другой сущности, но при этом сами могут иметь список компонентов.
Аноним 29/11/20 Вск 22:03:39 712108179
>>712106
Не дописал:
У компонентов уже может быть сколь угодно сложная иерархия наследования, но всегда их функционал опирается на дерево компонентов:
1) можно работать с парентом, искать у него в компонентах требуемый тип и выкидывать исключение, если не найден.
2) можно работать с потомками, искать у себя в компонентах требуемый тип и выкидывать исключение, если не найден.
3) можно работать со своими колбэками, реализующими нужный функционал.
16pixel 01/12/20 Втр 02:01:01 712367180
lights4.gif 2184Кб, 915x727
915x727
Теперь оптимизировать это добро.
16pixel 03/12/20 Чтв 02:18:02 712711181
lights.gif 3544Кб, 915x725
915x725
lights2.gif 783Кб, 915x725
915x725
Такс, ну короче, мои успехи:
Пофиксил артефакты при освещении - мне кажется, на этом варианте остановлюсь. Нраица.
Переделал игровой цикл в формат "сначала все ходят - потом проигрываются анимации - потом по новой".
Этот подход вносит коррективы в FPS - см. гифы - но в целом норм. 100 спрайтов на карте 100х100 тайлов норм отрабатывают, и ладно.
Сделал проигрываемые анимации. Бросок - на гифках.
От нечего делать, сделал персу рандомно генерируемую прическу, а то чего он лысый бегает.
Аноним 03/12/20 Чтв 11:03:46 712755182
>>712711
Крутой, крутой.Уже год почти слежу за твоими поделками.Жаль, что я слишком ленивый, чтобы сделать свой рыгалик.
16pixel 03/12/20 Чтв 23:47:11 712956183
>>712755
А я уже год игру никак не сделаю. Нет игры! Есть какой-то дроч на тему "это хочу сделать, то хочу сделать".

Хотя может в этом суть разработки рогаликов, кто знает
Аноним 04/12/20 Птн 16:49:34 713068184
>>712956
Начни с малого. Придумай систему спелов, бафов, дебафов.
Аноним 09/12/20 Срд 01:31:42 713845185
1454215745742.png 105Кб, 756x796
756x796
Решил вкатываться в это говно. Planoff gromadieu
Аноним 09/12/20 Срд 01:47:42 713847186
Что на счёт сетевых рогаликов?
Аноним 09/12/20 Срд 15:15:51 713907187
>>713847
Думаю это очень сложно, не понмю чтобы у кого-то получилось.
(ну если только не считать Дьяблу и ко. рогаликами)
В первую очередь придется что-то делать с пошаговостью
Аноним 09/12/20 Срд 19:02:14 713946188
>>713847
io игры - это они и есть (только казуальные)
Аноним 09/12/20 Срд 19:20:28 713954189
>>713907
Ну а как тогда работают другие пошаговые игры? Те же герои, к примеру.
Аноним 09/12/20 Срд 19:25:49 713956190
>>713954
В них ходы долгие, при этом очередность ходов строго определена. В рогаликах же как правило ходы очень короткие, и логически действия всеми акторами выполняются одновременно.

Короче, уточни вопрос.

Если тебе нужны готовые примеры, в которые можно поиграть - хз, я тоже таковых не помню (но я и не интересовался). Думаю, это связано еще и с известной склонностью к аутизму у целевой аудитории.

Если ты спрашиваешь, можно ли сделать, - ну да, можно, просто механику нужно будет придумывать с учетом мельтиплеерности (КО).
Аноним 09/12/20 Срд 20:29:05 713968191
>>713954
Насколько я знаю, довольно криво. Там что то типа шахматных часов, скажем на 8 минут, и вы можете ходить одновременно, НО если один игрок нападет на другого, или они взаимодействуют с одним и тем же объектом на карте, то ход одного из них полностью отматывается и он должен его переиграть.
Рогалики (ну по крайней мере классические) отличаются тем, что у тебя есть фазы когда ты делаешь ходы очень быстро, мгновенно проходя от двери до двери, к примеру, а есть - когда очень долго думаешь над каждым шагом, ударом, копаешься в инвентаре. Вот тут и появляется самая большая загвоздка - что делать, если один игрок просто бежит, а второй в это время решит подумать 8 минут. Ну а если сделать лимит 30 секунд, то пригорит уже тот кто хотел подумать. Какой то блиц рогалик получается.
Аноним 11/12/20 Птн 14:55:22 714353192
>>713956
http://www.urbandead.com/
Наверное самое лучшее, что смогли с этим сделать. Но там конечно не пошаговость, а очки действий.
Аноним 11/12/20 Птн 19:17:46 714419193
>>714353
Хз, потыкал пару минут - вроде хуита какая-то.

Типа там очки действий восстанавливаются через фиксированные промежутки времени, но тратить их можно как угодно быстро? Или в чем суть, как относится к теме обсуждения?
Аноним 14/12/20 Пнд 08:47:25 714897194
>>713847
Как в играх 2000 годов. У каждого есть показатель скорости, который влияет на частоту ходов и очередность. На ход даётся 2 минуты . Поочередность только в боях, вне боя риалтайм.
Аноним 22/12/20 Втр 15:05:55 716225195
>>713845
Поясни зачем ты пишешь на ECS архитектуре? Типо потому что это модно ?
Аноним 23/12/20 Срд 12:15:01 716435196
>>716225
Да, хочу освоить модную архитектуру.
Аноним 23/12/20 Срд 19:30:19 716501197
>>716435
К рогаликам екс не очень подходит
Аноним 23/12/20 Срд 19:33:04 716502198
>>716501
Ну я почитал реддиты и пришел к выводу что подходит.
Аноним 23/12/20 Срд 23:30:11 716525199
Аноним 24/12/20 Чтв 02:03:12 716530200
>>716501
Ты о чем вообще? Все топовые рогалики на ecs работают, от cataclysm dda до caves of qud.
Аноним 24/12/20 Чтв 16:49:36 716605201
>>716501
>>716525
Съеби с треда в движкосрач-тред, или где там все школьники сидят.
Аноним 24/12/20 Чтв 21:04:54 716630202
>>716605
Причем тут движки даун. Это архитектура кода. паттерны программирования
Аноним 24/12/20 Чтв 22:50:01 716650203
>>716630
Школьник, что тебе неясно? Брысь.
Аноним 24/12/20 Чтв 22:51:25 716651204
>>716605
Он привел годный видос по теме, а ты засрал тред
Аноним 24/12/20 Чтв 23:01:05 716652205
>>716651
Видос уже вкидывали, а началось все с поста "а зачем, тИпА ПаТаМуШта эТа мОдНа?". Можете оба съебать в движкосрач (или любой аналогичный школотред), если тебе тоже нравятся неаргументированные и не несущие никакой познавательной ценности выпады в сторону других анонов.
Аноним 24/12/20 Чтв 23:03:19 716653206
>>716652
аноны обсуждают архитектуру рогаликов, а ты третий пост корчишь из себя модеоатора. иди нахуй лучше из этого треда
Аноним 24/12/20 Чтв 23:04:34 716655207
>>716653
>аноны обсуждают архитектуру рогаликов
Где?

>иди нахуй лучше из этого треда
Нет ты.
Аноним 24/12/20 Чтв 23:23:24 716660208
>>716652
Хорошо что не ты решаешь что несет познавательную ценность для других анонов а что нет.
Аноним 25/12/20 Птн 00:00:26 716665209
>>716660
"К рогаликам екс не очень подходит" и "Типо потому что это модно ?" - не несет, я решил. Можешь прекратить обсуждать меня и начать обсуждать рогалики.
Аноним 25/12/20 Птн 00:10:00 716666210
Аноним 25/12/20 Птн 00:11:01 716668211
>>716665
В любом случае мне интереснее обсудить с тем аноном, подходит ecs к рогаликам или нет, чем обсуждать твое душниловское вахтерское мнение что нам можно обсуждать а что нет. Сдрысни в загон и чтоб больше я тебя тут не видел.
Аноним 25/12/20 Птн 01:13:56 716674212
>>716666
Сочувствую.

>>716668
Я тоже не против обсудить, подходит ецс к рогаликам или нет, но такового обсуждения выше по треду нет: есть только неаргументированные и не несущие никакой познавательной ценности выпады в сторону других анонов от залетного школьника. В связи с чем я его и послал нахуй. Понял? А вы уже развели из этого вахтерский метасрач на полтреда, с чем я в частности лично тебя и поздравляю.
29/12/20 Втр 21:06:36 717387213
Привет ребята, решили мы с другом как-то сделать игру, знания в программировании имелись и мы незамедлительно приступили к исполнению нашей идеи. сперва решили начать с сюжета, так сказать основы всего мировоздания, скажем так сюжет а точнее идею что это будет и где происходить у нас удалось создать, но вчитываясь мы находили все больше и больше необъяснимых деталей которым нужно было это объяснение соответственно. Ладно ближе к сути, помогите развить сюжет что бы как хотелось бы в идеале небыло ничего что нельзя объяснить. Далее я приложу наш набросок. "???

​​Адвенчура, микро хорор, головоломка ​​
​ Сюжет

Группа учёных в 1980-90 годах была проглашена на остров какой-то корпорации по рекомендации из руководства, один из которых хороший друг ГГ(биохимик) .

(Так как предидущий исследователь был одним из начинателей этих исследований но представлял себе это как мирное исследование, но вышшие чины решили что это будет жестокая эксплуатция местного населения с последующими эксперементами над людьми из контенента. После 16 лет проведенных на острове он решает что это всё неправильно, и решает известить мир о незаконных действиях на територии города. Его убивают. (Подопытный крол из самары к которому подвязали разум 54 летнего стримера для потдержания мозга в норме так как тело уже не функциОнально. После пожара в кат сцене мимо игрока пробегает этот крол с биркой и инода в лесу можно услышать звуки гадзы и "дэб дэб"))

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

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

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

(Дед♂к 170+ лет Ратибор с поехавшей кукухой который верит в теории завогора и не питаеться едок из деревни, а жует ягоды из леса в тайке от охраны. но в силу своих лет не может ничего противопоставить этой системе.)

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

После 2-рой мировой в начале холодной войны русские искали чем они могут победить америку, этот остров имел аномальную флору и фауну для своей местности. Ресурсы(еда вода) поставляються деревна на лодке с основного комплекса по воде, что бы не привлекать лишнего внимания опираясь на что что они хотять исследовать природу и население деревне не уничтожало его. В замен на еду они просят работать для них собирая дерево руду. Все растенияф на острове ростут с большой скоростью (обычное дерево выростает за 10 лет до максимального размера) (население острова живет здесь уже более 700 лет иходя из проведённых анализов учёных местности и построек, захоронений) "победили голод, победим пендосов"
После начала экспидиции командующий из М♂сквы скончался и единственный глава стал ученый который возглавлял сам комплекс(35 лет), их целью было изучение растений для того что бы победить голод в России.

Через 5 лет от начала учёные начали поставлять продукты в замена на работую силу так как добыра руды в глубе острова невозможна со стороны других людей кроме как их обитателей, так как у них существует имунитет в этому. Они обучили их элементарным словам из рууского обихода для того что бы иметь возможность с ними контактировать. Ученые не могли понять почему при пробах добыть местные руди рабочие умирали по непонятным обстоятельствам и решили заручиться помошью местного населения.Но после 30-ти лет не особо успешных опытов глава понял что население деревни очень медленно стареет и ето подвигло его на попытки изучения генома этих людей и сути их долголетия, его перемнкуло он понял что 30 лет изучения растений были безсмысслены когда была возможноть открыть секрет долголентия а может и безсмертия. Он начал много времени проводить с одним из жителей (45лет) что бы понять в чём заключаеться секрет, плавно обучая его большему словарному запасу (это наш 170-ти летний дед Ратибор), Олег начал присыплять бдительность психотропами, но Ратибор начал что-то подозревать и когда понял что в еду начали что-то подмешивать и люди стали ходить как безсознанные тела решил перестать общаться с Олегом, нчав выстраивать теории заговора по поводу всех этих учёных и поехал кукухой."
Аноним 30/12/20 Срд 21:11:31 717709214
>>717387
>знания в программировании имелись
Судя по тексту, тебе не больше 12 лет. Иметь какие-то познания в программировании уже в таком возрасте очень похвально! Удачи в твоих начинаниях.
Аноним 30/12/20 Срд 22:17:59 717719215
Аноним 02/01/21 Суб 21:41:52 718049216
>>717719
О комплексе! Не видишь штоле?
Аноним 02/01/21 Суб 21:47:06 718050217
>>717719
>>717709
Это какой-то ньюфаг серит пастами с геймдевелоперских форумов во все треды, хотя у нас для сранья кириллопастами есть специальный тред (который, увы, кроме меня никто не ценит). >>605406 (OP)
Аноним 09/01/21 Суб 16:56:02 719550218
VXsjGC3TJs.jpg 8Кб, 294x107
294x107
>>671018 (OP)
Так, ну вот почитал я инфу по этой ссылке https://habr.com/ru/post/354826/ и... Что дальше то? Тут описываются разные алгоритмы, но нет никаких примеров работы с ними. То есть нет кода. Вот допустим хочу сделать пещеры на Drunkard's Walk. А код где? Как писать? С чего вообще начинать то блеать?
Аноним 09/01/21 Суб 18:34:50 719573219
Аноним 09/01/21 Суб 18:39:19 719574220
>>719550
Или вот, вторая ссылка из статьи:
http://www.roguebasin.com/index.php?title=Random_Walk_Cave_Generation
>Pseudocode representation
>This is a basic pseudocode representation of the algorithm, which abstracts away such issues as dealing with the walk trying to run off the edge.
>- initialize all map cells to walls.
>- pick a map cell as the starting point.
>- turn the selected map cell into floor.
>- while insufficient cells have been turned into floor,
>- - take one step in a random direction.
>- - if the new map cell is wall,
>- - - turn the new map cell into floor and increment the count of floor tiles.
Вот и весь алгоритм. Если не можешь перевести псевдокод в код своего ЯП - ну, земля тебе ASCII-символами...
Аноним 09/01/21 Суб 19:12:36 719579221
>>719550
Чел, я по одному называнию "пьяный ходит" понял метод. Ты вообще как выживаешь?
Аноним 14/01/21 Чтв 12:41:55 720661222
16059745702320.png 301Кб, 819x827
819x827
Аноним 17/01/21 Вск 00:06:57 721634223
preprototype.mp4 352Кб, 1920x1080, 00:00:22
1920x1080
После Нового Года тоже начал кириллить рогалик. Пилю на python с libtcod и esper для ECS.

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

Кор механика будет состоять в том, что после убийства моба можно будет собрать его "части тела" и прилепить себе. Например, убив собаку, можно будет у себя вырастить пасть с зубами, как у собаки, взять нос собаки, который даст соответствующее обоняние, уши, лапы, хуй и т.д. Вроде бы идею кор механики я спиздил из Cogmind, но я в него пока не играл, так что не уверен.
Аноним 17/01/21 Вск 01:33:19 721661224
image.png 9Кб, 651x485
651x485
Вкачусь в тред и со своим недоподелием.
Кароч взял ассеты от Kenney: https://www.kenney.nl/assets/micro-roguelike

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

Пилю на TypeScript и Phaser3, вестимо под браузер.

В геймдеве полный ноль
Аноним 17/01/21 Вск 12:13:42 721716225
>>721634
Прикольно. Только бы графон интерфейс запилить, чтобы отображать части тел, статы и т.д.
>>721661
А че не под мобилки? Вполне подошло бы
Аноним 17/01/21 Вск 22:52:31 721884226
>>721716
> А че не под мобилки?

Да пока задача «доделать» хоть что-нибудь. Пытался вкатиться в геймдев уже много лет, начал кодать именно для этого. И всё никак не дойду до изначальной цели. В 2к21 поставил себе new year resolution не только фронтендировать, но и запилить рогалик.

Алсо сделать по мобилку было бы круто, но я не понимаю какое сделать управление, чтобы это не выносило мозг. Типа «джойпад» слева? Или стрелки? Мало играю на мобильнике большие пальцы
Аноним 18/01/21 Пнд 11:37:49 721978227
>>721884
Если персонаж у тебя двигается по двум осям, то стрелок достаточно, а если еще и по диагоналям ходит, то пили джойпад, имхо
Аноним 18/01/21 Пнд 18:54:05 722101228
image 45Кб, 600x578
600x578
>>721634
>получать от них пизды
А на видео получаешь пенисы...
Аноним 18/01/21 Пнд 18:55:24 722103229
>>721884
Pixel dungeon посмотри. Просто без задней мысли кликаешь по целевой клетке и все.
Аноним 05/02/21 Птн 23:15:48 726093230
Загорелся идеей сделать рогалик бота для телеги. Кто-нибудь играл в подобные?
Аноним 06/02/21 Суб 10:21:46 726121231
Аноним 06/02/21 Суб 12:03:34 726131232
>>726093
Это будет не рогалик, а текстовая адвенчура\рпг.
Аноним 09/02/21 Втр 13:53:29 726909233
>>726131
Разве рогалик не может быть текстовой игрой?
Для рогалика ведь главное:
- подземелья, монстры, лут;
- все помещения, объекты и мобы случайно генерируются;
- смерть игрока уничтожает мир, заново играть в новом мире.
А будет ли это реализовано ASCII-/2D-/3D-графикой или текстом - имхо, не важно.
Аноним 09/02/21 Втр 20:25:29 727019234
>>726909
>Разве рогалик не может быть текстовой игрой?
Зависит от определения.
Аноним 09/02/21 Втр 21:06:50 727040235
>>726909
Оригинальный rogue вдохновлялся тогда текстовыми адвенчурами, но по причине сложной генерации осмысленного текста стал безтекстовым
Аноним 10/02/21 Срд 20:43:53 727186236
Как лучше реализовать такую штуку как донжонкравлин от первого лица (как это было в первой ультиме, мече и магии и гримроке)?

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

Как это адекватней всего интерпретировать в игре? Я честно не очень представляю как отрисовывать сгенерированную карту в 3д...
Аноним 11/02/21 Чтв 17:15:45 727369237
И сюда закину, чо уж

Джва года на самом деле овер10 лет хочу такую игру:
Простейшая графика. Тайлы, мб типа как пешки Римворлда, похер. Есть свой особняк/дворец у игрока. Он играет за чувака из некой расы, которая может путешествовать между мирами Мультивселенной. Набирает код на пульте, код является семенем рандомным, на основе которого хуярится данж, кусок некого мира. В данже рандом-персы, твари или НПС и рандомные предметы. Например, висит картина, на ней аки в Дворфах что-то нарисовано, что описано текстом, а может и сгенереная абстрактная картина. Ну и лежит некий меч, щит, пушка, стол, стул, этц, тоже на рандоме. А скорее даже с примесью существующих вселенных из поп-культуры, например лазерный меч, крест Иисуса, скелет Чужого, трон из Игры Престолов или костюм Спайдермена. Цель игрока - залутить и съебаться. Не получив пизды от местных.
Потом всю утварь он может красиво расставить в особняке.

При этом, НПС заебошены на библиотеках естественных языков, как в АИданжене. Можно болтать. Не выходя за рамки. Может и квесты какие-то сгенеренные.

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

Мне кажется, что взлетело бы.
Жаль я гуманитарий и время посвящаю философской и художественной хуите.
Но мб на кого-то повлияет. Тогда обязательно зовите посмотреть и дать ненужных советов. Я больше по механикам настолок, тем не менее.
Аноним 11/02/21 Чтв 20:21:07 727395238
>>727369
В дф в общем-то все это есть. Алсо, с механиками настолок у тебя все тоже хуево, потому как видно по твоему тексту, что игровые механики описывать не умеешь (для этого нужно как раз математическое мышление, мимо капитан очевидность).
Аноним 11/02/21 Чтв 21:24:42 727405239
Аноним 11/02/21 Чтв 22:27:51 727411240
>>727369
В графон и анимацию могешь?
Аноним 11/02/21 Чтв 22:49:24 727419241
>>727395
Я механики даже не пытался здесь какие-то собачить. Просто сказал в какую бы игру хотел поиграть.
Аноним 11/02/21 Чтв 22:51:02 727420242
Аноним 12/02/21 Птн 17:04:51 727499243
>>727419
Ну прост обычно гейдизайнеры, особенно которые занимаются настолками, видят игры через свою профедеформационную призму, поэтому их описания (допустим для презентации идеи кодерам\пмам) имеют немного другую структуру и форму+содержание изложения, что ли, более отличную от "суть токова...". Ну и это, ты как бы игровые механики в посте таки описывал.

В общем в любом случае, звучит очень сильно как дф+киперРЛ с немного иными текстовыми темплейтами и нескучными обоями в виде дополнительной генерации текста нейроночкой.

Если сильно упростить и сфокусироваться на мультиплеерной составляющей, то может взлететь, но по сути тогда ж это получится просто ферма\клаш-оф-кланс (с рогаликостелсом вместо набигания), а не то, что тебе видимо хочется.
Аноним 12/02/21 Птн 17:51:49 727505244
>>727499
Мой кириллопост вообще без механик, если с точки зрения настольщика, лол.
То есть если туда декбилдинг засунуть, например, суть такова не изменится.
Просто я не механики видеть хотел бы, а подход некий.
Вот я вчера поставил Крайинг Санс. Ибо очень описание интересовало, я фанат Дюны, Основания и всего такого просто. А там кроме камень-ножницы-бумага+поле механик и нет. Но подход интересный и сюжет. Отсылки.

А что у меня стиль письма ебанутый, так я знаю. И пофиксить моментально сложно.
Тем не менее, сталкивался я с идеями и темами для игр у местных - лютая тривиальщина.
Аноним 12/02/21 Птн 20:21:18 727544245
>>727505
>Мой кириллопост вообще без механик, если с точки зрения настольщика
Ну я по сути это и имел в виду, механики-то ж все равно описаны (случайная генерация уровня, текстоквестодиалоги как в аиданжене, залутить и съебаться и т.п.), прост немножко или множко в стиле "суть токова".

>Тем не менее, сталкивался я с идеями и темами для игр у местных - лютая тривиальщина.
Ну да, а "дф и шоб как в аиданже и левелы шарить как в кипер-рл и чтоб чоловик-павук был" - это другое дело. :3

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

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

Оффтоп: чистота письма, кстати, фиксится именно что регулярным чтением художественной\публицистической литературы в больших объемах, ну и практикой разумеется, практикой. Попробуй, например, писать концепты для понравившихся игр (да того же крайинг санс) и постить их куда-нибудь (в бэ), типа это ты придумал.Хотя чья бы корова мычала, лол, мне про чистоту изложения советы раздавать - ну такое.
Аноним 13/02/21 Суб 16:26:31 727651246
>>727544
Ну, во-первых, читаю я очень много. Это из-за того, что не пишу почти.
Во-вторых, я, наверное, плохо даже с кириллической точки зрения пояснил.

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


Спасибо, бро, за обстоятельный ответ.
Аноним 13/02/21 Суб 16:29:51 727653247
>>727544
И два концепта соединить легко.
Просто контент для замка юзеры могут брать с "сезонов", обновлений, которые там раз в какое-то время выходят.

Да и идея о мультиплеерном данжн кипере не основная.
Аноним 16/02/21 Втр 17:40:37 728080248
>>727651
>А если правда хочешь что-то спиздить, лол, дай контакты, буду хоть следить.
Да это местный мем. Употреблен мною в том смысле, что вот этот концепт можно было бы реализовать, нормальная игрушка бы получилась. Ищи андроид-дева, готов выступить директором проекта за долю от рекламы!

>Может потом смогу нормально объяснить.
Да тут и пиши, правда лучше отдельный тред создать имхо.
Аноним 18/02/21 Чтв 17:44:54 728443249
>>728080
Я и этого не сумею. Ну, кому-то впарить.
Аноним 20/02/21 Суб 16:33:00 728918250
>>727369
>Простейшая графика. Тайлы, мб типа как пешки
Это, а что если совсем без графики? Смысл в графике, если она всё равно примитивная? От тайла 32х32 пользы гораздо меньше, чем от описания "здесь лежит древняя броня воина, на ней видны вмятины, один фрагмент отсутствует". Конечно, есть малый процент людей с афантазией, которые не смогут мысленно представить себе описанную сцену, однако людям с афантазией и тайлы 32х32 ничем не помогут, они не смогут представить себе ту же броню по нескольким корявым пикселям.

>Потом всю утварь он может красиво расставить в особняке.
В текстовом виде это будет не так уж "красиво", но раскладывать кучу мусора по клеточкам тайловой карты - тоже ничего красивого. Глянь игру Elona Mobile - там у игрока есть хата-пещера, по факту как большой сундук на 1000 предметов - можно разложить всякое говно по фен-шую или просто кучей. И даже можно к другим игрокам наведываться! Только толку-то от такого, с тайловой графикой это скучно (хотя бы кубы майнкрафта были бы уже повеселее, но это уже другой уровень).

>>727544
>ммо про постройку лабиринта-подземелья-замка с ловушками, который будут лутать другие игроки
Есть/была такая ММО, не помню, как называется. Я играл ещё на альфе, потом забил и забыл. Вкратце суть такова: есть летающие острова-замки, можно набигать пешком и добираться до центрального сундука с лутом, по пути вынося монстров и уворачиваясь от ловушек, а облутавшись как следует - развивать свой собственный замок, планируя маршрут вторжения, расставляя монстров и ловушки, чтобы у тебя ничего не своровали. Проблема игры, на мой взгляд, была в адовом дисбалансе - пока у тебя пара гоблинов и капкан, у твоих соседей уже огромный замок, в котором ты понимаешь ещё в прихожей, лол. Потому и забил, слишком много страданий ради развития. Потом после альфы вроде как прогресс сбросили, но я уже не следил. Короче - всё придумано до нас, и раз эту идею не скопипастили 100500 раз, она совсем не так хороша, как кажется. На мобилках сейчас доминируют ММО про набигание, но там по сути макроконтроль, типа отсылаешь толпы войск на захват и ждёшь какое-то время до возвращения, а в той игре и описанной здесь идее в основном микроконтроль. Чувствую, мобилкодрочеры в большинстве не любят микроконтроль, т.к. играют от случая к случаю, игровые сессии очень маленькие, буквально в свободную минутку.

>>728443
Смысла впаривать эту идею как есть - нет. Нужно развивать, дорабатывать и упрощать, а пока у тебя только сырая хотелка "хочу набигать на случайные данжи и базарить с ботами". Кстати, я тоже хочу с ботами базарить и всякое разное генерировать, но пока ничего не получается - я депрессивный прокрастинатор.
Аноним 21/02/21 Вск 19:57:26 729138251
>>728918
>Есть/была такая ММО, не помню, как называется
Я кстати пока читал твой пост вспомнил, что была и еще одна инди-хуинди на эту тему, с пикселяч-графикой, там надо было строить свой дом - свою крепость и защищать кошачью деву и сына от вторжения выживальщиков (постапок типа). Правда не помню, ммо или нет (вроде ммо). И вроде она популярная была.
Аноним 21/02/21 Вск 22:24:33 729176252
88d3cc15673fc80[...].png 5Кб, 400x400
400x400
Аноним 22/02/21 Пнд 05:49:03 729214253
map1.png 8Кб, 1000x320
1000x320
>>729176
Норм, рас и карту сгенерил
Аноним 22/02/21 Пнд 09:03:44 729216254
>>729214
Осталось понять, как работает код, чтобы перенести на в свой движок
Аноним 22/02/21 Пнд 11:53:49 729232255
>>729216
Ну там перл, есть сырцы, если у тебя другой язык ищи по нему
Аноним 22/02/21 Пнд 13:54:32 729247256
>Осталось понять, как работает код
Ты рофлишь чтоли, генерируются квадраты, потом рисуются линии рандомной толщины от одного к другому.
Аноним 22/02/21 Пнд 15:05:01 729252257
>>729247
Он наоборот сначала прокладывает туннели
Настройки X
Ответить в тред X
15000
Макс объем: 40Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
Стикеры X
Избранное / Топ тредов