Пишем DM, не привлекая внимания санитаров | ходы игроков |

 
DungeonMaster derasoft
20.01.2026 05:37
  =  
Что там вообще есть
Пока что не так много - пока за неделю я успел исключительно нафигачить свой стек, за несколько минут накидать черновую версию страницы и реализовать механизм авторизации, без реализации которого едва ли можно было бы что-то ещё писать.
На данный момент пишу реализацию модулей. Так выглядят таблицы проекта. Надеюсь, что это нормальная схема, и мне не придётся её переписывать.
Отредактировано 01.02.2026 в 13:40
1

DungeonMaster derasoft
21.01.2026 04:06
  =  
Минимально Рабочий Элемент
Это - модуль.

В нём нет возможности писать посты
В нём нет комнат
В нём нет редактора, который позволил бы поменять его поля
В нём нет возможности присоединиться как игрок
В нём нет даже блокнота
Что же в нём тогда есть?
Потенциал ☆*:.。.o(≧▽≦)o.。.:*☆
Отредактировано 01.02.2026 в 13:40
2

DungeonMaster derasoft
21.01.2026 21:36
  =  
За сегодня я добавил к потенциальным модулям потенциальные комнаты. Интересно, когда я упрусь в какую-то стену, которая не позволит мне делать что-то новое каждый день?
Ах да, я пока не добавил всему этому делу навигацию. А ещё мне интересно, зачем в ссылке на комнату на ДМ параметр модуля? У меня вроде всё получается и без него.
Отредактировано 01.02.2026 в 13:39
3

DungeonMaster derasoft
22.01.2026 08:26
  =  
Ночью не спалось, но я был слишком сонный для постов, так что теперь навигация в левой панели рабочая
Отредактировано 01.02.2026 в 13:39
4

DungeonMaster derasoft
22.01.2026 11:30
  =  
Хорошая новость - я написал посты. Плохая - не своим игрокам.
Отредактировано 01.02.2026 в 13:38
5

DungeonMaster derasoft
23.01.2026 18:10
  =  
Таблица игорьков сделана, теперь можно и поспать. Надеюсь можно. Мой организм не всегда разделяет мои желания.
Отредактировано 01.02.2026 в 13:38
6

DungeonMaster derasoft
26.01.2026 00:59
  =  
Когда ты два дня не брался за код, и запускаешь его в попытках понять что ты там ещё не доделал (это окно создания персонажа)
Отредактировано 01.02.2026 в 13:38
7

DungeonMaster derasoft
26.01.2026 01:29
  =  
Собственно, теперь в игры можно присоединяться. Шутки шутками, но ещё немного, и в принципе самый базовый функционал ДМ будет запилен. В принципе, осталось чисто дописать механизм отправки постов, а всё остальное это уже всякие дополнительные слои безопасности, стабильности, дизайна и прочих фентифлюшек.
P. S. А ещё экраны изменения настроек модуля, настройки комнат, редактирования персонажа, постов... В целом, всё равно ничего неподъёмного или даже шибко сложного.
Отредактировано 01.02.2026 в 13:37
8

DungeonMaster derasoft
01.02.2026 13:37
  =  
Неделька выдалась адовая, конечно. И, тем не менее, день прошёл, а я всё жив, а значит можно и подать признаки жизни. Например, в прошлом посте на третьем скрине можно заметить, что когда я завёл второго персонажа, модуль появился в списке второй раз. Дело в том, что в базе данных твоё участие в игре определяется таблицей формата
[номер модуля] [номер юзера] [json анкеты]
, в то время как код просто брал все строчки из таблицы, и подставлял названия модулей и его номер в ссылку. Теперь я добавил в процесс создания списка модуля механизм, который выкидывает дубликаты модулей из списка.
9

DungeonMaster derasoft
03.02.2026 14:32
  =  
Сегодня я занимался рефакторингом - переписывал HBS-хэлперы на партиалы.
Окей, а теперь всё то же самое, но по-русски.
Когда ты собираешь страницу с использованием библиотеки HBS, вместо того, чтобы писать страницу одним монолитным HTML документом, ты можешь писать отдельные куски этого документа, а потом склеивать это вместе. Например, возьмём ДМ. Шапка не меняется никогда и одинаковая для всех страниц сайта, в левую панель иногда добавляется панель конкретного модуля, когда ты находишься внутри него, а правая в этот момент пропадает. Немного перескочим пару звеньев в логической цепочке, и мы придём к тому, что все страницы можно условно разделить на три части:
1) Одна "рамка" с "шапкой", "подвалом" и прочими вещами, которые меняются не так часто, а когда меняются они должны поменяться сразу на всех страницах.
2) Основное содержимое страницы: Если ты смотришь комнату, то в ней должны отображаться посты, если главную страницу ДМ, то блок с цитатами, новостями, лучшим постом и т. д.
3) Отдельные типовые эллементы страницы, которые нам нужно разтиражировать в большом количестве: ссылки на комнаты в левой панели, посты в комнате и т. д.
В HBS первое называется Лэйаутом, второе - телом страницы, третье - партиалом. Однако, партиал это просто готовая заготовка страницы на HTML, и максимум что в ней можно сделать - "прорези" для нужных кусков текста. Если тебе необходимо самому лепить форму страницы, работая с ней как с текстовой строкой, тебе необходимо использовать хэлпер. Использовать хэлперы это достаточно гибкое решение для генерации кусков HTML на основе данных, однако читать отдельный алгоритм может быть сложнее, чем читать готовый HTML-код. Для сравнения, вот таблица игроков модуля, которую я создаю хэлпером и партиалами.

Зачем я это делал, если результат всё равно будет одинаковым? С партиалами работать проще, чем с хэлперами. Если партиал сохраняет контекст страницы относительно используемых переменных и умеет экранировать каждую из них при вставке, то хэлпер является отдельной JS-функцией, в которую необходимо отдельно передавать все данныее, а затем вернуть их в виде неэкранируемой HTML-страницы (то есть, экранированием всех данных внутри необходимо заниматсья вручную).
Короче, теперь мне удобнее писать новые страницы для сайта.
Отредактировано 03.02.2026 в 14:34
10

DungeonMaster derasoft
10.02.2026 01:09
  =  
И, теперь оно отправляет посты. Вот нужно же мне было накаркать в третьем посте...
11

DungeonMaster derasoft
15.02.2026 00:16
  =  
А сегодня у нас день заглушек, потому что сегодня я разбирался с тем, как отправлять статусные коды и немного переделывал маршрутизацию на роутерах.
12

DungeonMaster derasoft
15.02.2026 11:01
  =  
Вывел чарники. Убого, но поскольку чарник это партиал, то его можно будет легко настроить тогда, когда я буду облагораживать внешность сайта
13

DungeonMaster derasoft
16.02.2026 02:37
  =  
Проблема, к которой я оказался не готов: чтобы составить список модулей слева страницы, я искал все вхождения по таблице "Игроки-к-Играм", как-то не подумав, что мастер это не игрок. Этой ночью, к сожалению, не успею поправить, но забавно спотыкаться на подобном месте.
P. S. При этом они создаются, но из-за этой проблемы их не видно в списке слева. Да, чуть не забыл - теперь модули можно создавать на сайте, а не руками прописывать их в БД.
Отредактировано 16.02.2026 в 02:45
14

DungeonMaster derasoft
18.02.2026 09:04
  =  
Знаете, иногда кажется, что делать нормальный дизайн очень просто - сразу же понятно, что будет выглядеть хреново, а что - классно.
...
Вам кажется.
15

DungeonMaster derasoft
01.03.2026 23:09
  =  
Уф. Из-за некоторых ИРЛ траблов одновременоо со здоровьем и на работе пришлось на некоторое время отойти от дел, но теперь я вновь могу начать кодить код. И, вернуться я решил с небольшого дельца. Раньше, если ты значился в модуле и игроком, и мастером, модуль отображался в списке модулей два раза. Теперь я поправил этот косяк, но вообще, по добру, надо бы делать так, чтобы ты не мог подаваться в собственную игру.
16

Партия: 

Добавить сообщение

Для добавления сообщения Вы должны участвовать в этой игре.