Сохранен 216
https://2ch.hk/mc/res/581715.html
24 декабря 2023 г. Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

Minespades Devlog

 Аноним 07/04/22 Чтв 13:34:35 #1 №581715 
изображение.png
В связи с тем, что мне совершенно нечем заняться, я решил ещё раз запилить Ace of Spades в манякрафте. Но в этот раз я не стану собирать сервер из говна и палок, а усложню себе задачу: напишу плагин самостоятельно, с нуля. Сказать по правде, я уже давно вынашиваю эту идею у себя в голове, однако решился на действия почему-то только сейчас. В этом ИТТ-треде буду периодически рассказывать об успехах и делиться интересными мыслями.
sage[mailto:sage] Аноним 07/04/22 Чтв 14:33:32 #2 №581716 
сажи говну
Аноним OP 07/04/22 Чтв 16:16:29 #3 №581722 
water.png
>>581715 (OP)
Трудности возникли сразу же: в новых версиях спигота перелопатили либы, и теперь серверный джарник нельзя использовать в качестве мультилибы со всеми необходимыми классами, нужно использовать инструмент автоматизации сборки проектов, т. е. Maven (или Gradle). Всю свою жабапидорскую жизнь я говнокодил на эклипсе, а в эклипсе с поддержкой мавена, относительно какой-нибудь Intellij IDEA — очень-очень туго. Пришлось скачивать идею и танцевать с бубнами вокруг pom.xml, ведь мавеном я никогда не пользовался. Благо, разобрался быстро, потому что это прям самые азы для дошколят. Теперь можно приступать.
sage[mailto:sage] Аноним 07/04/22 Чтв 22:49:04 #4 №581726 
сажи говнищу для залетной петушни от лающей свинособаки под ником калопокакиш или же валя калорашенео съеби с борды не мороси епта
Аноним 07/04/22 Чтв 22:54:57 #5 №581727 
>>581722
Твой скриншот? Какой текстурпак и шейдеры?
sage[mailto:sage] Аноним 07/04/22 Чтв 23:04:19 #6 №581728 
>>581727
>Твой скриншот?
ты че совсем пизданулась маня у него манятор 228х228 пикселов другие в его какахостанском гетто ауле принципиально не продаются т.к. не производятся в виду того что до их изобретения какахоротым еще 250 лет откисать
Аноним 07/04/22 Чтв 23:11:41 #7 №581729 
>>581728
Скотоложик ты?
sage[mailto:sage] Аноним 07/04/22 Чтв 23:31:19 #8 №581731 
>>581729
ну да я ща какаши сенсея наворачиваю з унитазу а че епта у тя какие то претензии есть если да то выкладыай мы тебя конечно сейчас выслушаем и отправим чалиться обратно откуда ты имел неосторожность вывалиться
Аноним OP 08/04/22 Птн 07:30:24 #9 №581735 
изображение.png
изображение.png
изображение.png
изображение.png
>>581715 (OP)
Начать решил с проектирования. Весь вчерашний вечер я обдумывал, как всё должно работать, делал записи, вспоминал оригинальный Ace of Spades, организовывал структуру проекта. Подобный подход — хорошая практика, ведь хранить всё в голове невозможно чисто физически.

Ну так вот, сам аос 0.75 версии состоит из нескольких основных частей:
1. Воксельная полностью разрушаемая карта, с которой игрок может взаимодействовать;
2. Gunplay со всеми вытекающими (классы, разное оружие с уникальными параметрами, разрушение вокселей-блоков выстрелами, разный урон по разным частям тела, т. д.);
3. Win conditions. В оригинальном аос было довольно много разных правил, в зависимости от которых менялись и условия победы: воровство интела с вражеской базы (CTF-mode), убийство противника определённое кол-во раз (TDM-mode with/without lifepool), доставка интела из центра карты на свою базу (1CTF-mode), а так же babel, который чем-то напоминает майнкрафтовский бэдварс (игроки появляются на острове своей команды и строят мост к другому острову, где находится интел, попутно обстреливая друг друга, ИЛИ строят башню-мост к верхней части карты, где расположен интел). Ещё был шизоидный FFA (каждый сам за себя), но никто особо не играл в этот режим, так что обойдём его стороной. Итого 4 режима игры: CTF, TDM, 1CTF, babel.
4. Другие игровые механики вроде сквадов, аирстрайков, гравитации, etc.

Если одна часть из всех этих механик реализовывается легко, то другая — только с помощью костылей, либо же не реализовывается совсем. Особняком стоит хит-детект, который в кубаче очень примитивен, но это важная часть игры, и поэтому нужно будет что-то придумать. Впрочем, об этом думать пока рановато, ведь в первую очередь я решил написать создание и сохранение карт.
Аноним 08/04/22 Птн 07:42:24 #10 №581736 
>>581735
нахуй пошло патау какахорылое со своим недорежимом на 2.4 умственно отсталого бота в виде свыни и собственно тебя самого
Аноним OP 08/04/22 Птн 13:01:22 #11 №581742 
>>581727
>ресурспак
https://www.curseforge.com/minecraft/texture-packs/stay-true
>шейдеры
Сеус же. Версию не знаю, скрин не мой.
Аноним OP 08/04/22 Птн 15:54:12 #12 №581745 
изображение.png
>>581715 (OP)
Как я уже написал, начать я решил с карт. Карты в AoS были формата .vxl, в этом файле хранилась практически вся информация, необходимая для игры: координаты и цвета блоков, расположение точек респавна, расположение интелов. Конвертировать этот формат в кубы хоть и возможно, но нецелесообразно, поэтому я напишу свою систему менеджмента карт. Единственное, с чем нужно определиться — это способ хранения данных. Примитивных и неоптимизированных вариантов вроде плейнтекса (лол), или записи всего и вся в .yml я избегу, ибо нам придётся хранить десятки тысяч блоков (если не сотни), поэтому нам нужна лаконичная база данных. Выбор пал на SQLite, ведь он, в отличие от того же мускула, не требует сервера базы данных, и может спокойно храниться где-то в директории плагина.

Работать создание "полей битвы" будет примерно так:
1. Игрок входит в режим создания арены;
2. Далее, в игровом пространстве выделяется кубоид;
3. Пишется что-то вроде /aos battlefield create <name>;
4. В глобальный конфиг, в списочек всех карт, добавляется новая карта;
5. В директории плагина создаётся подпапка с дефолтной конфигурацией арены;
6. Все блоки, тайл-энтити и прочая параша, находящиеся в кубоиде, сохраняются в новосозданной базе данных;
7. После этого игрок должен вручную разместить точки респавна, места с интелами и т. д.
Аноним 08/04/22 Птн 17:41:46 #13 №581746 
>>581745
>Хранение карт в БАЗАХ ДАННЫХ.
Это ещё что, блядь, за хуета? Нормальные люди карты в плейнтексте как раз и хранят, как схематики. Твои НЕАСИНХРОННЫЕ базы данных, и НЕАСИНХРОННАЯ генерация карт через них - полная хуйня.
Аноним 08/04/22 Птн 17:48:26 #14 №581747 
>>581746
Как ты себе представляешь хранение нескольки миллионов блоков (воздух тоже блок) с описанием координат, типов, метаданных и прочей хуйни плейнтекстом? Не дохуя ли ресурсов скушает парсинг?
Аноним 08/04/22 Птн 18:23:12 #15 №581749 
>>581747
Посмотри как схематики работают. Может там не совсем плейнтекст, но явно не хранение блоков и координат в, сука, базах данных, которые медленные как хуйня.
Аноним OP 08/04/22 Птн 18:53:34 #16 №581750 
изображение.png
>>581749
Посмотрел. https://minecraft.fandom.com/wiki/Schematic_file_format

Внезапно, шематики основываются на NBT! Если получится реализовать сохранение/загрузку карт через шематики, то будет прям максимально охуенно. Впрочем, я всё равно сперва попробую сделать всё через ДБ, тому що хочу своими лапками всё написать. Будет лагать — перепилю. А так — да, можно хоть через WorldEdit API всё сделать, или даже через FAWE, лол.

>которые медленные как хуйня
Если бы датабазы действительно были такими медленными, то их бы никто не использовал. А их используют! Причём много где: от мелких неизвестных плагинов, до логблока от md5. И ничего, всё работает.
Аноним 08/04/22 Птн 19:04:47 #17 №581751 
>>581750
>Если бы датабазы действительно были такими медленными, то их бы никто не использовал.
Они, как это не странно, НАДЁЖНЫЕ, но не быстрее и вовсе не асинхроннее. Ты думаешь, почему карты в АоС не на базах данных хранятся, а в .vxl-файлах? Может я бы сейчас покидался заумными терминами и объяснениями, но это будет, пожалуй, лишним, раз уж ты хочешь разобраться во всём сам. Удачи, впрочем.
Аноним 08/04/22 Птн 19:48:20 #18 №581753 
>>581752
>На самом деле я был бы тебе благодарен, если бы ты поделился опытом.
Ну уж нет, тут уж ты сам :3
Да и не такое там всё дохлое... Логика схематик крайне простая, так что и дохнуть там, в принципе, нечему.
Аноним 08/04/22 Птн 20:32:43 #19 №581755 
image
>>581754
>однопоточная запись в файл
Бред.
>наверное потому, что разработчик не осилил либу для подключения к БД, а осилил только либу для записи в файл.
Ну да, почему бы и нет.
Аноним 08/04/22 Птн 20:34:19 #20 №581756 
>>581754
>записи в БД.
Речь, кстати, про чтение, а не про запись. Ну это так, к слову.
Аноним 09/04/22 Суб 21:37:32 #21 №581768 
>>581715 (OP)
ОП молодец. Удачи, буду следить за проектом!
Аноним OP 12/04/22 Втр 19:19:56 #22 №581809 
>>581715 (OP)
Не кодил месяцев шесть, теперь каждая строчка даётся с большим трудом. Постоянно отвлекаюсь на ютубы и двачи, сконцентрироваться очень трудно. Дожили. В голове уже всё обдумано, на бумаге расписано, план есть, а вот пальчики по клавиатуре стучать не хотят, если не заставлять себя. Даже снёс все игори с печки, чтобы ещё больше не отвлекаться, лол. Пока похвалиться нечем.
Аноним OP 13/04/22 Срд 10:38:54 #23 №581817 
изображение.png
изображение.png
изображение.png
>>581715 (OP)
Сегодня ночью на меня нашло какое-то кодерское вдохновение, и я буквально за несколько часов написал то, что не написал за три дня. Правда пришлось лечь спать в семь утра, день будет длинным. На первом пике автоматически создающаяся база данных с информацией о блоках и их координатах, на втором — организация директории карты (каждая карта — отдельная папка и инстанция), на третьем показано как выглядит процесс создания карт в логах. Теперь нужно написать сохранение тайл-энтитей, и можно приступать к написанию инициации для уже существующих арен.
sage[mailto:sage] Аноним 13/04/22 Срд 13:13:47 #24 №581818 
>>581817
>каждая карта — отдельная папка и инстанция
В чём прекол? Нельзя, кстати, настройки (Вместе с командами) в той же БД хранить, например? По сути одно и то же должно быть, при том, что я ещё не до конца понимаю, зачем настройки вообще нужны.
Аноним 13/04/22 Срд 14:19:37 #25 №581819 
Бля только сейчас понял, что ты эту стрелялку для майна делаешь, а не наоборот. Жаль, думал в лопатах теперь выживать будем вместо заебавшего шутера. Ну ок
Аноним 14/03/23 Втр 23:27:10 #26 №592028 
изображение.png
Весеннее обострение — весенние плагины! Треду чуть меньше года, тред мёртв чуть более, чем полностью, но... идея живёт до сих пор. ВНЕЗАПНО мне опять захотелось запилить тузач. Да, да, знаю, заебал уже, через неделю опять забью на всё болт, ололо шутер в кубаче. щито поделать, я поехавший. В общем, продолжаем пилить Ace of Spades в Minecraft.

Так как старые наработки были бездарно проёбаны, буду писать с нуля. Дабы в порыве биполярного обезумевания не удалить сурсы к ебени матери, создал репозиторий в гитхабе. Пока там нихуя нет, но скоро что-то появится. Честно. До того момента пусть будет приватным.
Аноним 15/03/23 Срд 12:18:02 #27 №592032 
>>592028
лучше бы плагин на говно на гитхаб выложил, торч
Аноним 15/03/23 Срд 12:38:39 #28 №592035 
>>592032
А он кстати целый, где-то у Алисы лежит. Можно декомпильнуть и залить.
Аноним 15/03/23 Срд 12:52:45 #29 №592036 
Алиса бережно сохранила плагин на говно. ^_^
Аноним 17/03/23 Птн 18:16:50 #30 №592074 
изображение.png
Существует довольно занятный способ сериализации инвентаря: кодировка в Base64. Так как одну строку гораздо проще хранить, нежели пикрил, очевидно, что будет использовать нормальный человек. Из других новостей: дописал аренку с базовым функционалом, теперь надо написать создание арены. Я это уже делал год назад, так что это не займёт много времени.

https://gist.github.com/graywolf336/8153678
Аноним 18/03/23 Суб 00:54:52 #31 №592086 
изображение.png
изображение.png
изображение.png
Хочу немного описать игровой процесс. Игравшие в Ace of Spades, возможно, и так понимают в чём дело, но тузач давным-давно ВСЁ. В памяти эта игра осталась разве что у пары олдфагов. Так что нужно эту память освежить.

Суть такова: есть некоторое число враждебных друг к другу команд. Обычно команды две, но бывает и больше. В зависимости от настроек условия победы, у команд может быть лайфпул: количество «очков жизни», уменьшающееся всякий раз, когда член команды умирает. Если лайфпул равен нулю — команда проигрывает. Кроме того, у команд есть ИНТЕЛЫ. Это такие флаги-чемоданы, которые нужно пиздить с вражеской базы. Проникнуть на вражескую базу — это само по себе трудно, но спиздить флаг (и при этом уйти живым) — смахивает на сюжет Mission: Impossible.

Однако не всё так печально. Кроме оружия, у игроков есть кирка лопата. С её помощью можно пиздиться с другими игроками, но это, очевидно, не основная её функция: лопатой, ВНЕЗАПНО, можно рыть подкопы. Каждый воксель на карте полностью разрушаем. Игроки могут ломать и строить. Строить укрепления, пиксель-арты, свастоны.. всё, что только взбредёт в воспалённую голову. Докопаться до вражеской базы? Запросто! Но, увы, долго.

Внутри кубача это смотрится вполне привычно. Да, есть проблемы с хит-детектом и гравитацией, но это решаемо. Если сделать всё правильно, то получится вин.
Аноним 18/03/23 Суб 08:20:17 #32 №592089 
>>592086
> тузач гавным-гавно ВСЁ
падажи, совсем недавно ж ещё были сервера
Аноним 18/03/23 Суб 13:40:07 #33 №592094 
изображение.png
>>592089
Да они и сейчас есть, но весь онлайн это три с половиной бразильца.

https://www.buildandshoot.com/servers/
Аноним 18/03/23 Суб 18:12:09 #34 №592106 
изображение.png
Пришло время прописывать создание арен.

Я люблю изучать новые крутые штуки и после каждого нового проекта в моей голове появляются новые знания. Minespades — не исключение. Создание арен начинается с инпута игрока, т. е. со ввода команды. API для создания команд безнадёжно устарел, поэтому буду использовать ACF — Annotation Command Framework от небезызвестного Aikar, который принимал активное участие в разработке Paper, запилил супер-удобные тайминги, составил Java-аргументы для более оптимизированной работы любого сервера и сделал ещё много чего. В общем, человек знает, чем занимается.

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

https://github.com/aikar/commands/wiki/Real-World-Examples
Аноним 20/03/23 Пнд 17:04:14 #35 №592251 
Не тонем! Глеб, ты заебал срать.
Аноним 21/03/23 Втр 00:08:11 #36 №592270 
изображение.png
Как же приятно, когда код работает с первого раза.
Аноним 21/03/23 Втр 23:00:50 #37 №592286 
изображение.png
Итак, после небольшой ебли с документацией ACF, я написал супер-удобные команды для создания и редактирования арен. Автозавершение из коробки, обработка ошибок и неизвестных команд, чистый код.. Скорее всего, я больше не буду писать плагины без ACF.

Резюмируя, процесс создания рабочей арены выглядит так:
1. /ms create battleground %название_арены% — создаём саму арену.
2. /ms edit volume %название_арены% — игрока просят выделить два угла кубоида с помощью ПКМ и ЛКМ, держа при этом золотой меч.
3. /ms save — сохраняет все блоки внутри выделенного кубоида в локальную базу данных, формат хранения на пике выше.
4. /ms create team %название_арены% %название_команды% — создаёт новую тиму на указанной арене. Указание названия арены можно пропустить, тогда в качестве аргумента будет взята ближайшая арена (или арена, редактируемая в данный момент). После создания команды, игрок автоматически водёт в режим редактирования этой команды, словно он написал /ms edit team %название_арены% %название_команды%.
5. /ms add respawnpoint — без точек респавна тима считается незаконченной и не может быть использована. Команда, очевидно, добавляет респавн поинт, считывая координаты игрока. То есть, игрок должен встать там, где он хочет создать точку возрождения.
6. /ms add loadout %название_арены% %название_команды% — указание названий опционально. Команда добавляет лоадаут (кит, набор, обмундирование, называйте как хотите) выбранной команде. Интересен способ хранения: текущий инвентарь игрока кодируется в Base64 и добавляется в квази-массив (в sqlite нет нормальных массивов, так что пришлось изобретать велосипед и просто перечислять значения через запятую, а потом сплитить строку при загрузке).
7. /ms launch %название_арены% — после создания двух команд и указания блоков карты, можно запускать арену и играть на ней. В следующий раз, при запуске сервера, арена будет запущена автоматически.
8. ??? — метод подключения к арене пока отсутствует. Лол.

Пиздато, да? Не совсем. Крайне сыро и как-то уж слишком перегружено, но со временем отполирую и сделаю ещё лучше. Сейчас я хочу просто добраться до первого рабочего прототипа, который потом буду допиливать напильником.
Аноним 21/03/23 Втр 23:03:53 #38 №592287 
изображение.png
Кстати, никто не хочет запилить скин няшного солдата из оригинального аоса? Я бы сам нарисовал, но я даже такой простенький пиксель-арт вряд ли осилю. Однако есть идея с програмной обработкой картинки: можно сделать оригинал серым, и потом через обработку пикчи задавать цвет, после чего ставить полученный скин всем членам одной команды по дефолту, штобы ета, типа была как в тузаче, да, уауа.


Я в интернетах поползал и нашёл только какую-то хуйню с пикрила.
Аноним 22/03/23 Срд 05:03:54 #39 №592332 
2023-03-2208.01.54.png
2023-03-2208.02.07.png
2023-03-2208.02.31.png
2023-03-2208.02.38.png
Нет, правда, что может быть лучше ощущения УСПЕШНОСТИ с утра? Да, я всю ночь проебал сидя перед монитором, но зато У МЕНЯ, БЛДЖАД, ПОЛУЧИЛОСЬ. Это говно работает!
Аноним 22/03/23 Срд 17:26:05 #40 №592379 
Немного заебало в соло всё делать, но оно того стоит.

Что у нас сегодня? Допиливание арен, рефакторинг, настройка процесса игры. Уфф, уфф.

Карту бы ещё.
Аноним 22/03/23 Срд 17:36:05 #41 №592380 
mine.png
>>592379
> Карту бы ещё.
Аноним 22/03/23 Срд 18:13:18 #42 №592381 
>>592380
Другую карту..
Аноним 22/03/23 Срд 19:27:02 #43 №592385 
gdekartabilli.mp4
>>592381
Аноним 23/03/23 Чтв 19:45:17 #44 №592404 
изображение.png
изображение.png
Создавать кастомные ивенты с Lombok — неописуемо.
Аноним 24/03/23 Птн 01:42:37 #45 №592406 
minespades.g-s.nu

Поднял парашу для тестирования, залетайте. 1.19.3.
Аноним 24/03/23 Птн 06:18:15 #46 №592412 
изображение.png
Одна из немногих вещей, которые мне нравятся в новых версиях кубача — это возможность выбирать кастомные цвета для текста. Пикрил выглядит очень няшно, вот прям уберняшно, 10/10.

Сегодня ночью с анонами протестили функционал арен. Работает.. но работает не так, как хотелось бы. Нужно дорабатывать. Ещё очень много вещей не сделано. Но я, имхо, неплохо написал базовый код, из-за чего улучшение плагина не означает, что код станет трудночитаемым. А ещё арену нужно будет построить, чтобы в следующий раз тестирование проходило более адекватно.
Аноним 24/03/23 Птн 06:54:21 #47 №592413 
aos5.mp4
>>592412
Аноним 24/03/23 Птн 07:48:30 #48 №592414 
>>592413
Охуенно! Режим што нада!
Аноним 24/03/23 Птн 07:58:39 #49 №592415 
изображение.png
Аноним 24/03/23 Птн 11:17:11 #50 №592418 
nolog.png
>>592415
Аноним 24/03/23 Птн 11:25:29 #51 №592419 
изображение.png
Сделал нормальный киллфид и починил телепортацию после смерти. Теперь, когда игрок умирает, его телепортнёт на один из респавн-поинтов своей команды.
Аноним 24/03/23 Птн 11:28:28 #52 №592420 
слэндермэн с ромашкой.png
Аноним 24/03/23 Птн 11:39:32 #53 №592421 
>>592420
господи, как же хочется ехм, разве я многого прошу?
Аноним 24/03/23 Птн 22:52:11 #54 №592431 
2023-03-2501.50.31.png
Строю арену в тишине и гордом одиночестве. Сегодня наушники сломались, а так бы музыку слушал...
Аноним 25/03/23 Суб 06:16:03 #55 №592437 
2023-03-2509.15.21.png
2023-03-2509.15.31.png
Аноним 25/03/23 Суб 06:17:21 #56 №592438 
2023-03-2509.17.01.png
Мрачновато получается. Мне нравится.
Аноним 25/03/23 Суб 08:31:42 #57 №592439 
2023-03-2511.28.38.png
Карта получается интерактивной. Уж не знаю, оценит ли кто-нибудь её по достоинству, но кроме пизделовки тут можно заняться эксплорингом. Ну и мрачность — очень няшно. Давно у меня такого вдохновения не было, прям вспоминаю как я на креативных серверах в 2015-16 строил всякое. Однажды даже в вайтлист попал на одном сервере из-за своих навыков строительства.
Аноним 25/03/23 Суб 08:45:44 #58 №592440 
2023-03-2511.45.18.png
Аноним 25/03/23 Суб 10:17:11 #59 №592441 
2023-03-2513.15.00.png
Аноним 26/03/23 Вск 00:25:29 #60 №592465 
Столкнулся с проблемой, о которой меня предупреждали ещё год назад. Случайно обнаружил, что сохранение блоков в датабазу КРАЙНЕ медленное, 1300 блоков за минуту — это пиздец. Пришлось гуглить. Узнал о bulk insert и sql-транзакциях, пришлось переписывать сохранение блоков арены. Ну и ещё понял, что блок воздуха можно не сохранять, а учитывая, что 50% блоков на карте — это воздух, я выигрываю ещё больше времени. Оптимизация, которую мы заслужили, блядь. Ну, зато теперь я знаю, что тест был прав: базы данных довольно медленные. Впрочем, я тут нашёл статейку одну на stackoverflow: https://stackoverflow.com/questions/1711631/improve-insert-per-second-performance-of-sqlite, но там на Си-боярин, а не жабапидор за клавиатурой. Кароч, нада теперь способ загрузки карт переписывать, сук. А я хотел поскорее поиграть в свою поделку. Эх.
Аноним 26/03/23 Вск 01:44:09 #61 №592469 
изображение.png
Ну, хоть что-то.
Аноним 26/03/23 Вск 02:07:16 #62 №592472 
java.mp4
>>592465
Проблема, как оказалось, была вообще не в sqlite, а в том, что я мудак. Сохранение блоков в датабазу происходит в отдельном потоке: решение супер-правильное, ведь нахуя нагружать сервер лишний раз? И всё бы ничего, но есть загвоздка: метаданные блока не могут быть получены не из потока сервера, на любую попытку асинхронного доступа баккит посылает нас к ебени матери. Приходится создавать Callable через шедулер баккита и ждать ответа, что само по себе ебанутое решение, ведь мы делаем это внутри тройного цикла, обрабатывая, без преувеличения, тысячи ебучих блоков! Но, сука, прикол в том, что эта хуйня возвращает закодированный в Base64 инвентарь, то есть вдобавок к ебаному миллиарду калоблов добавляется энкодинг строки, причём очень длинной! Охуеть!!!

JVM на весь этот пиздец отвечает видрилом.
Аноним 26/03/23 Вск 07:04:53 #63 №592475 
Таки смог всё наладить. Скорость сохранения блоков возросла примерно в тысячу раз! И при этом сохраняется инвентарь, если блок является инстанцией InventoryHolder. Если на русском, то теперь сохраняется содержимое сундуков, шалкеров, воронок, бочек и т. д. Не зря всю ночь у монитора просидел.
Аноним 26/03/23 Вск 11:33:21 #64 №592479 
2023-03-2614.29.32.png
Арена готова примерно на 50%. Зачем я её строю и как это вообще может быть связано с разработкой тузача? Нет, это не обострение, просто чем функциональнее арена, тем больше я смогу протестить. Сохранение/загрузка инвентарей, табличек, различные игровые моменты. Да, это не тузач, но пока что так.

Сегодня ближе к вечеру постараюсь поднять парашу для тестирования. Если не усну, конечно.
Аноним 26/03/23 Вск 11:53:26 #65 №592480 
>>592472
> Проблема, как оказалось, была вообще не в sqlite, а в том, что я мудак

кто бы сомневался
Аноним 26/03/23 Вск 11:54:30 #66 №592481 
>>592465
> тест был прав: базы данных довольно медленные.
ты лол, базы данных быстрые, если не пользоваться ими, как мудак.
и/или если пользоваться многопоточными базами, а не sqlite.
Аноним 26/03/23 Вск 12:03:00 #67 №592482 
>>592472
base64 - очень быстрая кодировка, проблемы точно не в ней.
чини руки
Аноним 26/03/23 Вск 12:07:17 #68 №592484 
>>592481
>многопоточными базами, а не sqlite.
На хабре написано что sqlite многопоточен. А вообще тут скорость не очень важна, мне ведь нужно всего-то один раз сохранить карту и потом просто загружать её из датабазы как схематик. Но когда сравнительно маленькая арена сохраняется 8 минут — это перебор, лол.

>чини руки
Да я уже всё починил, работает просто охуенно.
Аноним 26/03/23 Вск 12:09:17 #69 №592485 
2023-03-2612.23.55.png
Мрачно и с неоном блумом!
Аноним 26/03/23 Вск 12:10:54 #70 №592486 
>>592481
>если не пользоваться ими, как мудак
Вернее, если отключить механизмы защиты для параноиков, которые пишут банк. Так-то ничего сложного в этом нет — читай документацию и довольно урчи.
Аноним 26/03/23 Вск 12:30:11 #71 №592487 
>>592484
на хабре сидят долбоёбы и выпускники курсов Гикбрейнс.
у sqlite только чтение многопоточное, а запись идёт в один поток, и блокирует всю базу при записи, то есть создании/изменении поля.
Аноним 26/03/23 Вск 12:31:59 #72 №592488 
>>592484
> 8 минут
пиздец, сделать дамп всей оперативы процесса и записать его на медленный SATA HDD будет быстрее.
это точно руки, чини.
Аноним 26/03/23 Вск 12:53:13 #73 №592489 
изображение.png
>>592488
Блджад, я же уже написал, что починил!
Аноним 27/03/23 Пнд 07:35:03 #74 №592530 
2023-03-2710.32.07.png
2023-03-2710.33.00.png
2023-03-2710.33.45.png
Вчера уснул не дождавшись вечера и ничего не поднял, ну да. Значит сегодня. Как раз арену достроил.
Аноним 27/03/23 Пнд 08:10:00 #75 №592531 
изображение.png
:3
Аноним 27/03/23 Пнд 09:41:14 #76 №592533 
>>592530
годно, найму тебя делать спавн для моего ехм здорового человека.
Аноним 27/03/23 Пнд 10:54:14 #77 №592534 
>>592533
Вот ты язвишь, а я всегда говорил, что сделать ехм может каждый. Просто мякотка моего ехма в сезонности. Поиграли, наигрались, попрощались до следующего обострения раза. А ты хочешь постоянства и стабильности.Вот и получается, что мой ехм не для тебя, поэтому я считаю твоё решение запилить свой ехм логичным и правильным. Интересно какие будут блэкджеки и шлюхи.
Аноним 27/03/23 Пнд 14:59:49 #78 №592545 
изображение.png
изображение.png
изображение.png
Запилил вот такую штучку чтоб было удобнее подключаться. (не могу определиться с расцветкой) Протестировал сериализацию инвентарей: всё работает на ура. Когда игрок заходит за какую-нибудь команду, то ему выдаётся дорогостоящее обмундирование. В целом получается охуенно. Осталось только людей собрать и хотя бы 3х3 поиграть, думаю будет весело.
Аноним 27/03/23 Пнд 15:04:25 #79 №592547 
2023-03-2615.17.06.png
>>592545
Да, кстати, ещё очень важная фича: после смерти сохраняется старый инвентарь. То есть, если игрок залутал себе, скажем, железную броню из вещей, которые спрятаны в разных местах карты, то броня останется у игрока.

Сказать честно, что-то я далеко ушёл от идеи тузача. Но так кажется лишь на первый взгляд. Я просто тестирую и дорабатываю арены. Хотя тут сидят три с половиной анона, так что нахуя я вообще это пишу, всем поебать. Ну, разве что для истории...
Аноним 27/03/23 Пнд 15:15:29 #80 №592549 
>>592547
> для истории
> зигмакалыч на модераторе регулярно устраивает ковровые бомбардировки всех тредов
Аноним 27/03/23 Пнд 15:17:42 #81 №592550 
8e47dd7e691b55456f8fca96e8bfcf3e.jpg
>>592534
господи, как же хочется свой собственный ехм без олисы на хосте и нологика на админе, разве я многого прошу?
Аноним 30/03/23 Чтв 11:51:38 #82 №592663 
Ололо, продолжаем пилить нетузач. Пока что никаких фич, занимаюсь рефакторингом и думаю как бы собрать побольше людей.
Аноним 31/03/23 Птн 11:53:48 #83 №592717 
изображение.png
работаю над чатиком и командами, алсо думаю сегодня можно поиграть
Аноним 31/03/23 Птн 16:01:11 #84 №592753 
Через час-полтора начинаем, а пока что просто собираемся. Сегодня будем тестировать плагин.

minespades.g-s.nu
1.19.3
Аноним 31/03/23 Птн 17:17:31 #85 №592755 
2023-03-3120.16.29.png
2023-03-3120.16.33.png
2023-03-3120.16.41.png
сломал сурсы теперь везде такая шизоидность лол

так никто и не зашёл, к слову..
Аноним 31/03/23 Птн 18:37:30 #86 №592765 
> так никто и не зашёл, к слову..
> борда с 40 постов в день от 5 постеров
намордник представили?
Аноним 31/03/23 Птн 18:42:44 #87 №592766 
>>592765
заходи копроед
Аноним 31/03/23 Птн 18:55:33 #88 №592767 
2023-03-3121.55.02.png
нас посетил унитаз
Аноним 31/03/23 Птн 19:00:42 #89 №592771 
изображение.png
изображение.png
если загореться и умереть то произойдёт пикрил
Аноним 31/03/23 Птн 19:05:11 #90 №592773 
2023-03-3122.04.57.png
первые коблогоры
Аноним 31/03/23 Птн 19:45:15 #91 №592777 
server closed
Аноним 01/04/23 Суб 07:04:00 #92 №592780 
>>592777
Я вчера прилёг и уснул под звуки шипения воды и лавы, а хостинг триальный и поэтому его надо каждый час продлевать, вбивая капчу. Можно у Алисы захостить, но она чет молчит..
Аноним 01/04/23 Суб 14:52:14 #93 №592797 
Пизда. Не заходил сюда месяц. Сейчас зашёл, а тут ни нологиков ни абуликов не осталось. Какие-то говнотреды. Для меня раздел теперь умер, к сожалению. Прощайте, мои, любимые аноны, если кто-то из вас прочтёт этот пост из тех, кто меня знает.
мимотест
Аноним 01/04/23 Суб 15:30:03 #94 №592799 
>>592797
>ни нологиков
поехавший, это мой тред
Аноним 01/04/23 Суб 15:30:56 #95 №592800 
>>592797
>говнотреды
ну да, хули, аноны пилят контент, но никаких лысых пидоранов не упоминают УАААА РАЗДЕЛ УМЕР ПРОЩАЙТЕ Я БОЛЬШЕ СЮДА НЕ ЗАЙДУ ДО ВСТРЕЧИ ЧЕРЕЗ МЕСЯЦ
Аноним 01/04/23 Суб 21:59:16 #96 №592820 
svami.jpg
>>592797
тест не уходи пж
Аноним 01/04/23 Суб 22:58:54 #97 №592821 
да он пошутил в честь 1 апреля
хотя я надеюсь что это неймфажное уебище все таки откинулось
Аноним 02/04/23 Вск 04:43:15 #98 №592826 
kopikobpar.mp4
>>592797
>Прощайте, мои, любимые аноны, если кто-то из вас прочтёт этот пост из тех, кто меня знает.
:3

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

У меня сердце сжимается когда он старается уже который месяц год для анона, пилит шин, а на его парашу в итоге заходит один единственный игрок с ником УНИТАЗ и называет его "НОПЁРДЫШЬ".
Аноним 02/04/23 Вск 06:28:30 #99 №592827 
>>592826
Я заметил, что модератор стал более лояльным (или просто менее активным), и теперь не трёт каждый наш пост через 5 секунд после его отправления. Но да, агрессивная политика модерирования очень сильно подорвала привычный ритм раздела: если раньше мы вылезали из своих нор каждую неделю и общались на любые темы, то теперь вылезаем лишь раз в месяц и общаемся лишь про кубач.
Аноним 02/04/23 Вск 06:34:38 #100 №592828 
А теперь хорошие новости! Алиса подняла мне банжу и теперь я могу хоститься у ней, а не на триальной параше, где каждый час надо вбивать капчу. Ещё я начал рассказывать о своих наработках в других местах. Удивительно, но люди отзываются! Уже набралось четыре человека, которые не отказались бы поиграть в нетузач.
Аноним 02/04/23 Вск 10:08:06 #101 №592830 
>>592828
> 4 человека
Аноним 02/04/23 Вск 12:01:21 #102 №592833 
>>592830
Что, завидно?
Аноним 02/04/23 Вск 17:00:25 #103 №592841 
https://discord.gg/ZKXdCjXX9X

решил создать конфу, постараюсь сегодня собрать людей
Аноним 02/04/23 Вск 17:12:09 #104 №592842 
>>592841
конфоблядь, спок.
Аноним 02/04/23 Вск 17:37:34 #105 №592844 
>>592842
так проще кооперироваться, нитакуся
Аноним 02/04/23 Вск 19:03:37 #106 №592847 
2023-04-0222.02.54.png
2023-04-0221.47.42.png
2023-04-0221.47.51.png
2023-04-0221.59.47.png
Аноним 02/04/23 Вск 19:30:32 #107 №592849 
>>592847
не вижу свинопыра
Аноним 02/04/23 Вск 19:35:06 #108 №592851 
scr.png
а куда заходить-то?
Аноним 02/04/23 Вск 19:41:54 #109 №592852 
>>592851
91.241.198.69:25669
Аноним 02/04/23 Вск 21:03:02 #110 №592854 
2023-04-0222.13.27.png
Сегодня весело потестил плагин. Ну и забагованая параша же. Но для этого мы и собрались, так-то...
Аноним 05/04/23 Срд 20:00:39 #111 №592954 
Нихуя не сделал с момента тестирования, видимо выгорел. Или фазу сменило. В понедельник просто лежал, в голове был какой-то пиздец, мысли разъёбывало очень сильно. Потом накатила апатия и уныние, нихуя не хочется до сих пор. От скуки скроллю двачи и поигрываю в доту с пустым взглядом. Вот такие пироги.
Аноним 05/04/23 Срд 20:38:45 #112 №592957 
>>592954
пить витамины и рано вставать пробовал?
Аноним 05/04/23 Срд 20:56:35 #113 №592958 
>>592957
да, я щас просыпаюсь с утра
а какие витамины пить?
Аноним 05/04/23 Срд 22:33:42 #114 №592963 
>>592958
все, комплекс
Аноним 13/04/23 Чтв 19:02:03 #115 №593454 
ko.mp4
image.png
напоминаю, откуда ОП
Аноним 13/04/23 Чтв 19:33:12 #116 №593455 
>>593454
глеб, спок.
Аноним 13/04/23 Чтв 19:58:23 #117 №593456 
>>593454
>скелет
https://www.youtube.com/watch?v=Ur-3xK8LMFM
Аноним 13/04/23 Чтв 21:06:10 #118 №593457 
>>592954
Anon: Нихуя не сделал с момента тестирования, видимо выгорел. Или фазу сменило. В понедельник просто лежал, в голове был какой-то пиздец, мысли разъёбывало очень сильно. Потом накатила апатия и уныние, нихуя не хочется до сих пор. От скуки скроллю двачи и поигрываю в доту с пустым взглядом. Вот такие пироги.
CyberGleb-13B: Как же? А ты сам создал этот Майнкрафт! Ты сам придумал его название, он стал твоим делом, и теперь ты заболел. Это тоже твой дебют, если ты согласишься.
Аноним 17/04/23 Пнд 14:16:01 #119 №593660 
NEED TO BE FIXED:
1. Игроки не должны несколько раз подключаться к одной и той же арене.
2. Нужно починить расцветку киллфида.
3. Создание команд с помощью скорбордов. Нужно отключить френдли фаер.
4. BattlegroundPlayer должен создаваться лишь единожды: при подключении игрока к арене.
5. Стрелы. Киллфид не работает со стрелами, потому что нужно использовать другой метод для детекта урона. А ещё лучше попробовать обрабатывать ивент смерти, а не получения урона. Там проблема в телепортации.

REQUESTED:
- Правила автовыдачи вещей. Каждые Н-секунд игрок будет получать И-предмет. Полностью настраиваемо и привязывается к лоадауту: можно сделать так, что игрок получает 1 стрелу каждые 5 секунд. При этом итем сериализуется из руки, а не от простого материала. То есть, поддерживается мета.
- Флаги! Их можно воровать. Пиздиться просто так быстро надоедает.
Аноним 17/04/23 Пнд 14:47:41 #120 №593663 
изображение.png
>>593660
>подключение к одной и той же арене
Фиксится элементарной проверкой арены игрока. Проблема достаточно серьёзная: если игрок несколько раз подключается к арене, то в списке игроков арены будет несколько экземпляров обёртки BattlegroundPlayer. При получении сообщений из киллфида или от простого бродкаста по арене игрока завалит спамом одинаковых сообщений. Это полная хуйня и так быть не должно.

>расцветка киллфида
Я две недели не трогал код и уже забыл что там сломалось. Кажется, неправильное отображение цветов было из-за криво реализованных команд, но там всё равно говнокод и его надо переписывать, так что это исправится само собой.

>создание команд с помощью скорбордов
Довольно просто. В Team.class добавляется поле с командой, при подключении к Team игрок автоматически добавляется в команду. Но я никогда не работал со скорбордами, так что придётся погуглить апи.

>BattlegroundPlayer должен создаваться лишь единожды
Это понятно. Фиксится правками говнокода.

>стрелы и детект урона от них
Надо обрабатывать событие EntityDamageByEntityEvent. Если damager instanceof Arrow arrow, то тогда arrow.getShooter(). Так получаем стрелка. А сообщение лучше изменить на "%s был застрелен %s". Ничего сложного. В любом случае, киллфид лучше сделать в отдельном классе. Так его будет удобнее расширять и дорабатывать.

>правила автовыдачи вещей
Вот тут не всё так понятно. Правила автовыдачи добавляются на этапе создания команд, то есть должны быть команды типа /bs add supplies <how_much?> <interval> <maximum>. Но как выглядит само правило, как оно хранится в датабазе и как загружается во время инициализации арены? ItemStack сериализуется в base64-строку, после чего добавляется в JSON-строку, которая является правилом автовыдачи. Там же хранится информация о частоте, максимально возможное количество и т. д. В таблице teams придётся создать новый столбец, где будет храниться JSON-строка. Чтобы можно было создавать много правил, придётся разделять их с помощью "\n", а при инициализации сплитить мульти-строку с помощью String.split("\n") и обрабатывать каждый элемент массива через for-each. Сама реализация автодобавления проста: повторяющиеся BukkitRunnable. Ну и гемор, пиздец.

>флаги
Очевидно, что флаг является стурктурой. Falling block с типом flag? Возможно. Придётся постоянно проверять координаты игрока. Если координаты игрока совпадают с координатами флага, то структура исчезает, а сам флаг перемещается игроку на голову. Так будет видно, что игрок взял флаг. Если игрок умирает, то флаг дропается в месте смерти (если умирает в лаве или в бездне, то флаг телепортируется на базу), если игрок приносит флаг на свою базу, то команде засчитывается очко. Да уж.
Аноним 19/04/23 Срд 18:56:53 #121 №593783 
Аноним 21/04/23 Птн 08:09:33 #122 №594083 
На этих выходных попробуем поиграть.
Аноним 22/04/23 Суб 00:24:27 #123 №594139 
У меня не получается уснуть, поэтому попробую направить мысли в конкретную точку. Я дописал арены. Практически. Рефакторингом можно заниматься бесконечно, но лучше подумать об условиях победы. Вот у нас есть арена с базовым функционалом: к ним можно подключаться, на них можно играть, редактировать и т. д., но сама игра заключается в спинномозговом и бесцельном пвп. Игроки пиздятся пока им не надоест. Да, не останавливающееся командное пвп — это очень весело и интересно, но, возможно, стоит добавить чуть больше? Я уже писал про флаги. Воровство флагов — это целое искусство, ведь есть тысяча и один способ спиздить флаг с чужой базы: можно вырыть подкоп, можно задавить силой, можно даже сварить зелье невидимости и прокрасться у всех под носом. В общем, чем больше у игрока альтернатив — тем лучше. Не обязательно пускать слюни и махать мечом без остановки.

Так же необходимо добавить лайфпулы. Лайфпул иссяк — команда проиграла. Если команд больше не осталось, то игра заканчивается, а победители получают ништяки. Да, кстати, награда за победу может неплохо мотивировать игроков играть на арене, если она будет ценной. Мне нравится идея сундуков с рандомными вещами. Может повезти и выпадет что-то невероятно охуенное, а может выпасть обычная ромашка. Которая, к слову, тоже весьма полезна. Тогда можно было бы играть без остановки. Но у нас нет времени для игр. Мы должны воевать!
Аноним 22/04/23 Суб 10:48:12 #124 №594153 
>>594139
нологик, спок.

> capture the flag
охуенный режим, добавляй.

> life pool
может, deathmatch? пиздилка на время, у кого больше фрагов за полчаса - та команда победила.
Аноним 25/04/23 Втр 12:00:41 #125 №594275 
Сегодня всю ночь просидел в идее. Написал правила автодобавления вещей. Механика очень занятная и с её помощью можно сделать много крутых штук. Привязывается правило к набору экипировки, вот вам банальный пример: есть экипировка Archer. Чтобы лучник не остался без стрел в разгар битвы, раз в N-секунд ему будет выдаваться по одной стреле. Или не по одной. Или не по стреле. Или не лучнику. Создаётся правило с помощью простой команды: /ms add suply <name> <interval> <amount> <maximum> <permission>. Написав команду, будет создано правило автоматического пополнения. Предмет, находившийся в основной руке во время исполнения, будет взят в качестве восполняемого ресурса. Важно учесть, что сохраняется не материал, а сам ItemStack, который сериализуется и кодируется в base64-строку.

Немного пофантазирую на тему правил. Первое, что приходит в голову — это класс ПОДРЫВНИКА. Взрывы — это охуенно. Поэтому можно добавить экипировку, владельцу которой раз, скажем, в 30 секунд будет падать по динамиту. Разъеби всю карту! Или можно добавить ведьмака-зельевара, который будет получать рандомные зелья. Усиление союзников и ослабление врагов. Можно даже вернуть плагин на говно и добавить Глеба, который будет получать говно (копровыдача) и кидаться им во врагов (и союзников тоже! — прим. ред.). Простор для фантазии безграничен: строители укреплений, подрывники, объебашенные спидами бегуны и прыгуны, которые воруют флаги как школьники пиздят пирожки в буфете.
Аноним 25/04/23 Втр 16:11:55 #126 №594288 
>>594275
нологик, спок.

> suply
supply

> вернуть плагин на говно и добавить Глеба
да
Аноним 25/04/23 Втр 17:12:43 #127 №594291 
>>594288
>supply
Да там две p, просто с недосыпа очепятолся.

>нологик, спок
Это у тебя приветствие такое что ли?
Аноним 25/04/23 Втр 21:22:37 #128 №594296 
изображение.png
Осталось сделать интелы. Или флаги. Это, по сути, одно и то же.

Предполагается, что флаг находится в самом защищённом месте базы. Или просто недалеко от респавна, как в тузаче. В любом случае, у команды может быть только один флаг. Создаваться флаг будет командой /ms create flag, в датабазе хранится в таблице команд, в отдельном столбце. Необходимо сохранить координаты и всю дату блока: узоры, цвет, название и прочее. Дата будет взята из флага в руке. Использование примерно такое: редактор арены встаёт в месте, где он хочет создать флаг, берёт в руки заранее подготовленный флаг и пишет команду.

При загрузке арены на сохранённых координатах из десериализованного флага будет создан FallingBlock. Так будет проще проверять игроков неподалёку. Я не фанат привязывать повторяющиеся таски к PlayerMovementEvent, поэтому буду сканировать энтитей вокруг FallingBlock в радиусе 1 блока каждые 20 тиков (1 секунду). Если энтитя == Player из команды, отличной от команды FallingBlock (насколько я помню, c 1.9 в команды можно добавлять не только игроков), то FallingBlock исчезает и перемещается к игроку на голову как на пикриле. Думаю, имеет смысл создать свою энтитю, унаследованную от FallingBlock, чтобы держать все нужные поля и методы в пределах одного класса. Не знаю как всё это будет работать, надо тестить.

Кроме того, нужно добавить BoundingBox'ы на респавн-поинтах игроков. Если игрок, который несёт флаг, приносит его на свой респавн — команде засчитывается очко. Если жирненько обмазать всё это кастомными ивентами, то в будущем я смогу легко добавить награды за воровство флагов. Да и в целом ивенты это всегда хорошо.
Аноним 26/04/23 Срд 03:31:47 #129 №594301 
Хотя я тороплюсь с этими флагами. Есть баги, которые надо фиксить. Сегодня утром починил кривую обработку смертей. Теперь обрабатывается PlayerDeathEvent, а не ивенты получения урона. Забавно. Изначально я так и хотел сделать, но возник баг: с PlayerDeathEvent не работала телепортация игрока. Баг странный, его фикс ещё страннее: чтобы всё заработало, нужно отложить выполнение кода на 1 тик. Теперь прям красота. Алсо, узнал сегодня, что у интерфейса Player есть getKiller(), а у PlayerDeathEvent есть getLastDamageSource. С помощью этих методов таки можно запилить няшный киллфид с отображением причин и убивца.

как же абу заебал со своей капчей, макака опять сменила шрифт
Аноним 27/04/23 Чтв 05:59:20 #130 №594326 
изображение.png
Как работают флаги?

Есть состояние. BASE, PLAYER, GROUND. Флаг может быть на базе (изначальное положение), на игроке (когда украден), на земле (вор флага был убит).

Правила и взаимодействия. Только по одному флагу на команду. Если игрок умирает в лаве/пустоте, то флаг возвращается на базу. Блок флага не может быть сломан. Чтобы взять флаг, необходимо «войти» в него (или кликнуть, пока не решил).

Поля. Через кастомных энтитей реализовывать флаги необязательно, можно через обычный блок баннера. Вообще, баннер — это тайл-энтитя, но не суть. Итак, нам надо знать координаты. Тут помогут стейты. Если BASE, то координаты дефолтные. Если PLAYER, то блока флага не существует — флаг находится у игрока на голове как ItemStack, для создания которого берётся уже существующая BlockData. Если GROUND, то координаты == место смерти вора флага.

Есть проблемные моменты, самый очевидный — взаимодействие баннера с жидкостями и падающими блоками вроде песка или наковальни. Щас протестил, ВНЕЗАПНО баннеры не разрушаются лавой или водой, а падающие наковальни падают как предметы, лол. Второе — застройка флага. Что если кто-то застроит флаг? Его нельзя сделать светящимся через стены, ведь это не Entity. А вообще.. раз уж я весь такой вдохновлённый Ace of Spades, то можно оставить это как есть, ведь застройка интелов в тузаче — это обычное дело.

Как детектить поднятие флага? По координатам флага создаётся BoundingBox, внутри которого постоянно проверяются энтити. Ну тут всё просто.
Аноним 02/05/23 Втр 03:19:10 #131 №594601 
flag.mp4
Превозмогая обмякание от очередной смены фазы (обычно меня начинает пидорасить ближе к концу месяца), работа над плагином продолжается. Перечислю всё, что я сделал, чтобы было от чего отталкиваться:
1. Создание арен, команд, наборов экипировки, правил автоматического пополнения лута и т. д. В общем, весьма функциональный редактор арен. Единственное, чего не хватает этому редактору — команд удаления некоторых вещей. К примеру, флаг или правило автовыдачи сейчас удалить не получится.
2. Запилен цельный режим: CTF (capture the flag). Если надоест рубить всё что движется мечом/топором, то можно попробовать сыграть тактически и вместо спинномозгового пвп спиздить флаг вражеской команды. Если он есть, конечно. Флага может и не быть.
3. Занятные гейм-дизайнерские решения. Например: киллы отображаются в экшен-баре. Чат не будет засираться бесконечными сообщениями о том, как %s убил %s, или как какой-то хуй сгорел в лаве. А ещё кучи ивентов, поддержка кастомных цветов, лайфпулы, автораспределение игроков и далее и далее. Я заебался писать. В общем, йа маладетс.
Аноним 06/05/23 Суб 17:18:56 #132 №594909 
изображение.png
2023-05-0620.10.46.png
Аноним 06/05/23 Суб 17:45:12 #133 №594916 
изображение.png
>>594909
Аноним 07/05/23 Вск 23:24:18 #134 №594978 
изображение.png
изображение.png
Тестирование прошло успешно. В мою голову пришла замечательная идея заменить красных и синих на оранжевых и зелёных. На ДВАЧЕБЛЯДЕЙ и НУЛЬЧЕПИДОРОВ. После я создал завлекающий тред (который, как оказалось, был весьма удачным) и собрал долгожданный онлайн. Ох, как же это было весело. Повсюду происходил какой-то пиздец. В чате срачи и море лулзов. В один момент аноны сообразили скрафтить вёдра и набрать в них лавы, но до идеи залить вражеский респавн дошли не сразу — сперва просто лили лаву под ноги. Пришлось быстро фиксить абуз лавы, пока я не растерял онлайн. В общем, я очень доволен. Вчера вечером у меня не получилось собрать людей и весь сегодняшний день я ходил поникший, думая, что всё, чем я занимаюсь — это какая-то хуйня и я опять бессмысленно трачу время. Но вечер изменил всё. Не стоит расстраиваться из-за мелких неудач, ведь всегда можно попробовать ещё раз.
Аноним 07/05/23 Вск 23:55:31 #135 №594980 
image.png
>>594978
>Не стоит расстраиваться из-за мелких неудач, ведь всегда можно попробовать ещё раз.
Аноним 08/05/23 Пнд 01:31:06 #136 №594981 
image
Оп, я войти не могу, чини давай
Аноним 08/05/23 Пнд 05:48:16 #137 №594984 
>>594981
это алиса там что-то намутила, лол
я вообще всё это время спал
Аноним 08/05/23 Пнд 11:15:19 #138 №594991 
>>594978
> всё, чем я занимаюсь — это какая-то хуйня и я опять бессмысленно трачу время.

это так. мог бы лутать 300к в наносекунду, устроившись ява ждуном.
Аноним 09/05/23 Втр 17:15:29 #139 №595077 
изображение.png
Программируя что-нибудь серьёзное, постоянно приходится сталкиваться с чем-то новым. Сегодня на очереди сайдбары. Для тех кто не знает что это — смотрите пикрил. Проблема в том, что в бакките сайдбары привязаны к скорбордам, и чтобы сделать их персональными для каждого игрока (отображение статов игрока и прочая хуйня) нужно создавать скорборд для каждого игрока. А я себе этого позволить не могу, потому что механика арен основывается на скорбордах. Когда игрок подключается к арене, он по сути подключается к скорборду, который привязан к арене. И у игрока может быть только один скорборд. Создание нового скорборда — отказ от старого. Это сломает арены.

Мне пришлось долго думать что делать. Придумал следующее: отправлять сайдбары через пакеты, создавая фейковые скорборды. От этого стало тошно, потому что это долго и сложно, но, к счастью, я наткнулся на уже готовую либу специально для таких нужд. ProtocolSidebar!

https://github.com/CatCoderr/ProtocolSidebar
Аноним 10/05/23 Срд 08:50:29 #140 №595106 
изображение.png
Замечательно.
Аноним 11/05/23 Чтв 10:33:31 #141 №595177 
2023-05-0722.16.24.png
изображение.png
Понемногу приближаюсь к сотому коммиту. Над плагином уже проделана огромная работа. Немного опишу всё, над чем я работал две последние недели.

- BattlegroundPreferences. Настройки арены. Некоторые механики игры (и арены) теперь можно переключать.
- Список настроек: авто-распределение игроков при подключении на арену, френдли-фаер, сохранение инвентаря после смерти, удаление пустых бутылок из под зелий, партикли вокруг флага, след из партиклей у вора флага, отключение порталов (некоторые игроки умудрились создать портал и пронести через него вещи с арены), отключение урона предметов (чтобы никто не бегал без брони/оружия), защита спавна и много чего ещё.
- Время восстановления флага (flag restore time). Если флаг пролежит на земле слишком долго (все игроки видят время в боссбаре), то его позиция будет восстановлена. Получилось очень красиво.
- Новое правило арены: PUNISH_COWARDS. Если игрок каким-то образом умудрился вылезти за арену, его начинает нехило дамажить. (возможно, стоит просто телепортировать игроков на респу)
- Сайдбар со всей необходимой информацией: кда игрока, название команды и арены, лайфпул.
- Улучшены флаги. У команды, у которой украли флаг, уменьшается лайфпул. (дефолтное значение 20, можно настроить (пока нельзя))
Аноним 11/05/23 Чтв 11:49:58 #142 №595181 
https://www.youtube.com/watch?v=f2y7Ze8SzX0
Аноним 11/05/23 Чтв 12:43:44 #143 №595183 
>>595177
> Понемногу приближаюсь к содомиту.
Аноним 11/05/23 Чтв 12:54:45 #144 №595184 
>>595183
Содомита поймали! Поймали содомита!
Аноним 11/05/23 Чтв 13:49:58 #145 №595185 
>>595184
абулик, спок.
Аноним 12/05/23 Птн 20:06:50 #146 №595335 
Один из наиболее серьёзных недостатков плагина — статичные карты. В аосе можно сделать чередование карт, хотя есть были и обычные статики вроде HALLWAY 24/7. Чем больше карт — тем лучше, ведь играть на одной и той же карте очень быстро заёбывает. Ну так вот. Как сделать автоматическую смену карт? Как должен называться этот механизм, как он должен работать?

Сама идея звучит так: админ создаёт отдельные карты и после объединяет их, создавая мульти-арену. Мульти-арена звучит неплохо, пожалуй буду использовать это название.

Итак, мульти-арена. Создаётся командой /ms create multiground <название мультиграунда>. Мультиграунд по своей сути является хостером арен. Есть баттлграунд, а есть мультиграунд. Логика ясна. Баттлграунд — арена, на которой играют игроки, мультиграунд — входная дверь.

Чтобы создать работающий мультиграунд, админ должен подготовить арену и добавить её в рабочий список мультиграунда. После, мультиграунд должен быть запущен как обычная арена: /ms launch <название>.

Выбирается и запускается рандомная (или первая в списке) арена. Игрок подключается и играет. Довольно легко.
Аноним 12/05/23 Птн 20:12:45 #147 №595336 
Ах, ещё хотел обдумать редактор арен. Сейчас он в ужасном состоянии и я бы его с удовольствием переписал.

Можно использовать сайдбары, ведь это удобно. Основные моменты: режим редактора (/ms editor) с сайдбаром, отображающим всю нужную информацию, адекватная работа с датой (некоторые данные до сих пор хранятся плейнтекстом внутри датабазы, а не в JSON-объекте), более интуитивно понятные команды.. ну и всё, по сути. Работа не сложная, но немного нудная, ведь переписывать код не весело.
Аноним 12/05/23 Птн 20:13:14 #148 №595337 
А вообще рефакторинг это наше всё.
Аноним 12/05/23 Птн 20:45:44 #149 №595338 
изображение.png
Аноним 17/05/23 Срд 18:06:33 #150 №595629 
мимо ехма.png
Запилил мультиграунды, сделал нормальный ридми в гите, перешагнул за сотый коммит. Доволен как.. как слон!

https://github.com/oNLog1c/Minespades
Аноним 20/05/23 Суб 07:13:30 #151 №595753 
бамп
sage[mailto:sage] Аноним 20/05/23 Суб 11:26:24 #152 №595756 
16845484935970.mp4
Аноним 20/05/23 Суб 11:36:26 #153 №595758 
>>595756
сделайте такое же, только с флагом Казахстана
Аноним 20/05/23 Суб 16:07:36 #154 №595769 
>>581735
>2 пик
Чего? В игре была кирка? О_О
Аноним 23/05/23 Втр 14:11:50 #155 №595867 
image
>>595629
А что графон не сделал каноничный?
Аноним 23/05/23 Втр 14:32:02 #156 №595870 
>>595867
Это уже украшательства, да и не всем бы такое зашло. Я сейчас тужусь тружусь над очередной порцией калтента контента. Внезапно, хочу добавить умных ботов с помощью Mineflayer, чтобы всегда было с кем поиграть.
Аноним 25/05/23 Чтв 02:59:03 #157 №595930 
Умные боты — это не просто мечта или несбыточная маняфантазия, это реальность. Пятые сутки я работаю над ботами, с которыми можно будет поиграть. С которыми будет интересно играть. Мне пришлось быстро изучить основы джаваскрипта и node.js, так как апи для ботоводства написано на JS, а не на джаве. Пришлось продумывать логику общения между моим плагином и программой на жабаскрипте, благо с помощью ноды захостить TCP-сервер для обмена командами проще простого. Теперь у меня идёт прописывание поведения ботов. Сегодня всю ночь тестил свою хуйню, но таки смог заставить бота украсть флаг вражеской команды. Как же это охуенно. Патфайндинг майнфлеера по сути патфайндинг баритона, то есть бот реально двигается как ебучий среднестатистический игрок: ставит/ломает блоки, юзает паркур (О_о), выбирает наименьший маршрут к целевой точке. А теперь представьте 10 таких ботов. Это же просто пиздец.
Аноним 25/05/23 Чтв 03:25:10 #158 №595931 
pacman.mp4
изображение.png
Немного отдохну и вместо реализации поведения ботов «на коленке» запилю полноценный экшен чойзер (название временное). Суть такова: дабы сделать ботов интересными, нужно добавить им немного неопределённости. Если все боты будут просто идти и пиздиться друг с другом, то получится какая-то каша-параша и это быстро заебёт. Я хочу больше лулзов. Где у нас самый интересный искусственный интеллект? В пэкмэне, конечно! У каждого бота своё уникальное поведение, свой набор правил и свои паттерны взаимодействия с игроком. Есть избегающее поведение, а есть наоборот преследующее. Есть призрак-аутист, которому на всё похуй, он просто зашёл от нехуй делать. Есть ёбаный задрот, который дрочит на кда и пиздится не на жизнь. Есть пэкмэн, который ползает по лабиринту и жрёт говно маняврирует между всем этим пиздецом. Можно добавить бота-абулика, который будет отливать коблогоры и пиздеть в чатике о всяком. Или даже глебобота, который будет бегать вокруг респы и разводить срач на пустом месте. Хотя чат пока трогать не стоит, ведь геймплей важнее. В общем, мне нужно добавить каждому боту своё уникальное поведение. Как это сделать? Рандомный выбор правил, рандомные характеристики?
Аноним 25/05/23 Чтв 04:15:08 #159 №595932 
изображение.png
Вот и пища для размышлений.
Аноним 25/05/23 Чтв 09:07:26 #160 №595933 
Остроумное решение проблемы с нулевым онлайном!
Аноним 25/05/23 Чтв 09:32:52 #161 №595935 
>>595933
спокуха, тест. у тебя онлайн вообще отрицательный
Аноним 25/05/23 Чтв 11:16:09 #162 №595938 
изображение.png
>>595931
https://habr.com/ru/articles/109406/

На хабре есть замечательная статья на тему призраков из Пэкмэна. Если коротко, то: красный призрак (Блинки, альфа) — охотник и постоянный преследователь, розовый (Спиди или Мачибусэ, бетка) — предугадывает будущее и направляется туда, куда направлен вектор игрока + четыре клетки, синий (Инки, омежка) — корректирует своё направление основываясь не только на позиции игрока, но и красного призрака, а оранжевый призрак — призрак-аутист Клайд, настоящий сигма, которому похуй на игрока и других призраков: он просто делает что хочет и его ниибёт.

Основываясь на всех этих поразительных и невероятно креативных решениях, можно немного описать поведение ботов на арене. Состояние поведения имеет смысл разделить на динамическое и статическое. Динамическое состояние меняется в зависимости от ситуации, статическое является постоянным и определяет основное поведение бота. Пока что в голову приходят лишь три типа динамического поведения, которые основываются на состоянии флага: атакующее, ворующее, защитное, саппортящее и избегающее. Названия говорят сами за себя, поэтому много описывать не буду, да. Атакующее — бот пытается убить как можно больше игроков. Ворующее — меньше пвп, основная цель — спиздить флаг и принести его на базу. Защитное — у бота украли флаг, бот пытается поймать вора. Саппортящее — бот следует за другими ботами/игроками и защищает свою цель от других игроков. Избегающее — особое состояние, которое доступно только ботам с меткой Clyde (имя того призрака-отшельника). Это динамические состояния или РЕШЕНИЯ. Бот может принимать их совершенно случайно, или основываясь на своём характере.
Аноним 26/05/23 Птн 01:26:23 #163 №595988 
изображение.png
Разработка ИИ в полном процессе. Первым делом решил спроектировать поведение агрессивного бота, который всей душой любит пиздиться и особо не хитрит. Нужно составить список приоритетов.
Аноним 26/05/23 Птн 01:48:33 #164 №595989 
EXTERMINATE.mp4
Под агрессивностью бота подразумевается стремление сражаться без различных проверок состояния, например без проверки здоровья. Можно сделать поведение бота более хитрым. Скажем, если у бота меньше 50% хп, то он отступит в сторону своей базы и восстановит хп. Но я делаю ёбаного варвара-камикадзе, который кидается на людей как буль дог, если они не из его команды. Да, это банально и примитивно, но моя цель сейчас — это первый рабочий прототип.

Так вот, как ведёт себя наш агрессор? Какие у него приоритеты? В первую очередь бот стремится занять центр. Проблема с более чётким определением центра остаётся открытой. После занятия «центра» (где бы это ни было), бот начинает проверять количество союзников неподалёку. Если их больше двух, то бот выдвигается на вражескую базу с целью спиздить флаг.

Так же имеет смысл добавить нулевую очередь. Бот всегда, ВСЕГДА будет проверять наличие флага неподалёку. Видите ли, флаг не обязательно может находиться на вражеской базе. Он может упасть в процессе доставки. И если флаг находится рядом, то бот принудительно идёт к нему.

Если сравнивать поведение ботов с шахматными фигурами, то агрессивный бот, очевидно, является пешкой, ведь он всегда на передовой.
Аноним 26/05/23 Птн 14:36:39 #165 №596002 
изображение.png
Искусственный интеллект, который мы заслужили.

https://www.youtube.com/watch?v=SD12_BGkctU
Аноним 26/05/23 Птн 17:12:58 #166 №596006 
>>596002
охуенно, теперь никакие бимбалейлы не нужны, онлайн всегда будет больше нуля!
Аноним 26/05/23 Птн 18:36:10 #167 №596009 
>>596006
Прикол в том, что максимальной цифры нет. Можно хоть 100 ботов заебашить. Процессор правда начнёт плавиться.
Аноним 26/05/23 Птн 19:55:10 #168 №596014 
>>596009
Похуй, не твой же процессор. А Алису не жалко
Аноним 28/05/23 Вск 14:23:45 #169 №596071 
изображение.png
Вчера исправил большинство багов, связанных с ботами. Мне пришлось три раза продумывать и переписывать логику с нуля. Так как моей целью было «подружить» между собой две программы, то без нестандартных практик тут никуда.

Ботмастер на JS хостит TCP-сервер. Когда ботмастер принимает команду от сервера (username & battleground), то создаёт нового вокера (воркеры в JS — это как треды в джаве), где создаётся сам бот. Бот подключается к TCP-серверу, который хостится уже плагином на Minecraft-сервере. Сокет бота обрабатывается и начинается обмен командами.

Поведение бота зависит от реализации абстракции Behaviour внутри Java-плагина: сам по себе бот ничего не умеет и не знает, он лишь имеет функции, которые можно дёргать как ниточки марионетки. Благодаря этому можно очень гибко настраивать поведение бота в различных игровых ситуациях. Поведение сейчас только одно — AggressiveBehaviour (если коротко, то пушечное мясо), но в планах всё это дело разнообразить. А потом рандомно присваивать на этапе инициализации.

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

Ах, да. Насчёт скрина. Сервер спокойно выдерживает 20 ботов, к 30 процесс node.js начинает грузить процессор на 100%. Я предложил Алисе провести небольшой эксперимент-бэнчмарк и захостить ботов as much as possible. 100 ботов пока что не захостишь, к сожалению — процессор уходит в анальный троттлинг и ботов кикает за keepAliveTimeout.
Аноним 28/05/23 Вск 16:07:47 #170 №596076 
1341579765586.jpg
>>596071
> node.js
Аноним 28/05/23 Вск 16:10:11 #171 №596077 
>>596076
Апи для создания ботов написано под ноджс.

https://github.com/PrismarineJS/mineflayer
Аноним 29/05/23 Пнд 02:15:04 #172 №596199 
pigstep.mp4
Аноним 29/05/23 Пнд 03:07:11 #173 №596200 
Идея добавить ботов оказалась крайне удачной. Мало того, что это весело (нет, правда, вы только посмотрите видео выше), так здесь ещё и бесконечный простор для креатива. Я уже третий день размышляю над способами как-то организовать поведение ботов и пытаюсь выбрать более лучший. Но пока что у нас есть лишь один весьма простой паттерн поведения, который я уже несколько раз переработал: AggressiveBehaviour. Бот направляется на вражеский респавн, при этом постоянно находясь в поиске врагов в заданном радиусе. Целью для атаки выбирает наиболее близкого врага, то есть от него можно легко убежать, если рядом есть союзник. Бот просто сменит цель и забудет про вас. Так же проверяет врагов на наличие флага и в первую очередь фокусит воров. В крайне редких случаях может поднять флаг, если он упал рядом, но воровать флаг самостоятельно никогда не пойдёт, так как постоянный поиск цели для атаки исключает подобное поведение.
Аноним 30/05/23 Втр 08:38:24 #174 №596254 
Всё ещё дорабатываю агрессивный паттерн поведения. Придумал добавить ботам параметры coward и sword, которые являются boolean'ами. При инициализации бота этим значениям присваивается либо true, либо false. Coward влияет на поведение при низком количестве здоровья. Если true, то бот начнёт убегать от обидчика и будет бежать, пока вокруг количество врагов вокруг него не станет равно нулю. Sword влияет на предпочитаемое оружие: бот может бегать либо с мечом, либо с топором. Да, ещё я научил ботов автоматически искать оружие в инвентаре и брать его в руки. Кроме того, теперь если у ботов мало хп и рядом нет врагов, то они будут пить зелье исцеления/регенерации. С каждым днём они становятся всё умнее и умнее!
Аноним 30/05/23 Втр 11:56:10 #175 №596256 
>>596254
Skynet, начало.
Аноним 07/06/23 Срд 12:17:44 #176 №596947 
Как успехи? Чего нового сделал?
Аноним 07/06/23 Срд 15:42:33 #177 №596950 
>>595930
>Пришлось продумывать логику общения между моим плагином и программой на жабаскрипте, благо с помощью ноды захостить TCP-сервер для обмена командами проще простого.
Зачем плодить сущности?
Проще и лучше сделать общение плагина с ботами прямо через чат, а сервером глушить эти спец-команды для остальных игроков, более того, можно будет управлять ботами своей команды с помощью этих команд также через чат. Посылать их брать флаг или охранять свой, следовать за собой и прочее. Это логичное и продуманное решение, а не отдельный tcp сервер с "продвинутым" интеллектом, лол.
Аноним 07/06/23 Срд 15:53:58 #178 №596951 
>>596950
Алсо добавлю что для ИИ лучше подключить нейронку и обучить её на реальных игроках, как по мне это интереснее, чем пилить скриптовую хуйню.
Аноним 07/06/23 Срд 17:58:21 #179 №596955 
>>596950
> Это логичное и продуманное решение

> There Is No Logic
Аноним 21/06/23 Срд 17:07:43 #180 №597949 
После двух недель разпиздяйства и курения весьма интересных растений таки решил продолжить работу над своим плагином. Я отказался от идеи ботов, т. к. слишком сложно и долго (возможно потом запилю эту фичу как аддон), написал документацию с помощью кошерного гитбука и в целом запилил всё, что я хотел запилить. Да, это не AOS, но и хуй с ним. Планирую залить плагин на спигот как премиумный, чтобы получить хоть немного вечнозелёных за свои старания и муки. Алсо, я таки дописал либу для автогенерации конфигов и файлов первода. В общем, финиш уже скоро.

Если кому интересно, то вот документация: https://nologic.gitbook.io/minespades
Аноним 21/06/23 Срд 20:00:34 #181 №597968 
>>596951
>>597949
https://libgen.is/search.php?req=%D0%9F%D1%80%D0%B8%D0%BA%D0%BB%D0%B0%D0%B4%D0%BD%D0%BE%D0%B5+%D0%BC%D0%B0%D1%88%D0%B8%D0%BD%D0%BD%D0%BE%D0%B5+%D0%BE%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5+%D1%81+%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E+Scikit-Learn+%D0%B8+TensorFlow&open=0&res=25&view=simple&phrase=1&column=def

Можешь начать с первых глав этой книги, она как раз для дауничей написана, а дальше сам придумаешь
Аноним 21/06/23 Срд 20:36:38 #182 №597969 
>>597949
> Я отказался от идеи ботов, т. к. слишком сложно и долго (возможно потом запилю эту фичу как аддон)
что не так с ботами? нормально работали же вроде.

> Планирую залить плагин на спигот как премиумный, чтобы получить хоть немного вечнозелёных за свои старания и муки.
тогда тем более боты нужны.
Аноним 21/06/23 Срд 21:39:39 #183 №597984 
изображение.png
>>597968
Прикольно, пасиба за подгон. На днях гляну.

>>597969
>что не так с ботами
Ботов лучше запилить с помощью фейкплееров, а не настоящих игроков. Есть такой плагин, RealisticVillagers, ну так там жители заменены на игроков с помощью каких-то манипуляций с пакетами, причём они умеют не только ходить туда-сюда и получать пизды от зомбей. Они умеют драться, есть, стрелять из лука/арбалета/хуйнинейм. Вот я хочу запилить что-то похожее. В теории можно дополнить функционал таких ботов и научить их строить и принимать решения в зависимости от состояния окружения. Да, боты были прикольные, но это не те боты, которых я хочу.

>тогда тем более боты нужны.
Не, плагин на самом деле охуенный и без ботов. Я уже даже нашёл первых покупателей.
Аноним 22/06/23 Чтв 13:15:29 #184 №598009 
>>596950
>Проще и лучше
Хотел написать, что проще но не лучше, но на самом деле бот действительно мог бы принимать команды через чат. Это хорошее решение, особенно если учесть, что чат работает в другом треде и нагрузки на сервер это не создаст никакой. Но сейчас-то уже похуй, идея с ботами убрана в долгий ящик.
Аноним 22/06/23 Чтв 18:35:25 #185 №598043 
изображение.png
изображение.png
изображение.png
Дорабатываю мелкие детали вроде графических плюшек. Ещё почти полностью перевёл плагин на английский с помощью своей либы. Когда речь заходит о редакторах, очень важно продумать «юзабили», чтобы закрыть все дыры и не дать пользователю случайно прострелить себе ногу. Думаю, я хорошо потрудился.
Аноним 23/06/23 Птн 23:44:53 #186 №598134 
изображение.png
https://nologic.gitbook.io/minority/

Я тут выше упомянул свою либу для генерации конфигов и файлов перевода. Внезапно, она тоже опенсорсная и даже продокументированная. Если кому интересно, то можете взглянуть.
Аноним 23/06/23 Птн 23:57:17 #187 №598135 
>>598043
А крекшот оно поддерживает? Или это кастрированный аналог бедварса с нескучными картами?
Аноним 24/06/23 Суб 01:20:48 #188 №598148 
>>598135
Да, поддерживает. Плагин поддерживает любые кастомные итемы, будь то волшебные палочки из Magic или стволы из CrackShot.
Аноним 25/06/23 Вск 22:27:14 #189 №598224 
>>598134
Охуеть, нологик наконец освоил аннотации. Даже пришлось целую либу запилить из 3-з строк! Печально, что 99% плагинов вот такое вот никому не нужное говнецо ОСВАИВАЮЩИХ JAVA без какой-либо полезной нагрузки и с кучей багов.
Действительно. Пилить ботов, не говоря уже о нейросетках это слишком сложно, лучше ещё раз прочитать что такое аннотации.
Браво королю параши. Не удивительно что раздел пуст, а балом правят такие вот бездари.
Аноним 25/06/23 Вск 22:49:26 #190 №598225 
depressed.png
>>598224
Москва не сразу строилась. Я потихоньку изучаю различные штуки, учусь чему-то, прогрессирую. И знаешь что? Я собой доволен. Нет, правда. Раньше я просто тратил время на хуиту, капчевал и админил пустые параши, а теперь я могу назвать себя начинающим программистом и заявить, что я хоть что-то, но умею. Я вообще не понимаю этих твоих кривляний на публику, к чему ты этот пост высрал про три строки, про короля параши? Ещё немного и тебе полтиник ебанёт, а ты либо заходишь на харкач чтобы ПОТРОЛЛИТЬ порядочных анонов и назвать их королями параши, либо я хуй знает что у тебя в голове вообще, если ты всё это на полном серьёзе написал. Алсо, ты сам-то как? Чому заходишь сюда так редко и постишь какую-то парашу?
Аноним 25/06/23 Вск 23:01:42 #191 №598226 
lain.jpg
>Даже пришлось целую либу запилить из 3-з строк!
Тащемта это называется лаконичностью. Либа выполняет всего две очень важных функции: генерация конфигов/файлов перевода и автоматическая инициализация полей с помощью рефлексии. Всё. Тут кода на два мегабайта что ли должно быть?

>Печально, что 99% плагинов вот такое вот никому не нужное говнецо ОСВАИВАЮЩИХ JAVA без какой-либо полезной нагрузки и с кучей багов.
Тащемта это не плагин, а либа для их создания. Ты бы хоть немного разобрался в теме чтоль. Никому не нужное? Ну, мне нужное. Я неиронично считаю её очень удобной и думаю что это правильный подход к решению проблем. На остальной поток желчи не буду отвечать, хватит тебя кормить. Знаешь что по-настоящему печально? То, что ты — хуй и говно. Мог бы написать что-нибудь доброе и хорошее, но нет, ололо, насру в тред нологика.
Аноним 25/06/23 Вск 23:16:11 #192 №598230 DELETED
Наверное не было смысла отвечать, эта ебанашка щас опять порвётся на весь раздел и закономерно получит банхаммером по своей лысой черепушке.
Аноним 26/06/23 Пнд 02:21:24 #193 №598240 DELETED
>>598224
Основная причина упадка раздела в первую и в преобладающую очередь из-за нашествия шизиков из би, рф, асу, а в последнее время вообще вг. Это отпугивает всех, потому что на любое сообщение идёт ответ "накормил тебя гaмнульками" или "насрел тебе в глаза" вместо адекватной аргументации. Раздел переполнен нерелейтед-флудом, про то кто когда пукнул, что отбивает желание заходить, постить. Адекватных серверов нет – все местные сервера в той или иной мере админятся такими же шизиками. В минимальной мере раздел в упадке из-за отсутствия модерации, упадка двача в целом из-за политоты затекающей во все уголки и конечно же из-за того что все наигрались, а новое поколение, как бы так сказать чтоб не оскорбить, имеет узкий кругозор который не покрывает майнкрафт в том виде, в котором мы в него играли и в котором он представлен в этом разделе.
А в плане данного поциента, я думаю он на самом деле делает полезнее чем 95% остальных посетителей этого раздела которые нихуя не делают. Лучше него всё равно никто не будет делать в этом разделе – потому что не для кого. И в будущем судя по трендам интересов нового поколения демография посетителей этого раздела не изменится, поэтому можно спокойно вздохнуть зная, что мы здорово проиграли когда раздел был на высоте, а сейчас когда мы и сами наигрались, мы особо ничего не теряем забивая хуй на этот раздел и на этот сайт, который превратился из гавани более-менее технических людей с интересными интересами в переполненный днищем населения аналок вк из-за распространения этих ваших смартфонов и интернетов у каждого школьника.
Аноним 26/06/23 Пнд 10:46:53 #194 №598244 DELETED
>>598224
тест, спок
Аноним 26/06/23 Пнд 11:43:36 #195 №598248 
>>598225
>Чому заходишь сюда так редко и постишь какую-то парашу?
Я вообще сюда не собирался заходить, но вы сами ходите в мой /b и срёте своими парашами.
>>598226
>То, что ты — хуй и говно.
Ну хорошо что хоть лысым не назвал!
>>598240
>Основная причина упадка раздела в первую и в преобладающую очередь из-за нашествия шизиков из би, рф, асу, а в последнее время вообще вг.
Так вы сами срёте без конца в эти разделы, а потом удивляетесь откуда это всё.
>Лучше него всё равно никто не будет делать в этом разделе – потому что не для кого.
Ну по моему мнению нологик молодец, только занимается не тем, к сожалению он слишком туп чтобы это понять.
Аноним 26/06/23 Пнд 12:03:03 #196 №598250 
>>598248
> мой /b
перняш, ты?
> срёте
туда срёт только пепесерв реборн своей парашей с вахтёром на админе
> занимается не тем, к сожалению он слишком туп чтобы это понять.
я вроде не туп, но тоже не понимаю. чем нужно было заниматься нологику вместо своих параш?
Аноним 26/06/23 Пнд 14:46:17 #197 №598267 
minespades.png
Пытаюсь запилить лого для своей хуйни. Я давно уже не пользовался фотошопом, но руки-то помнят! Впрочем, мне кажется, что чего-то не хватает. да, я фанат теней и минимализма
Аноним 26/06/23 Пнд 14:55:46 #198 №598269 
>>598267
Кал какой-то.
Аноним 26/06/23 Пнд 15:25:38 #199 №598272 
>>598267
сделай полупрозрачное лезвие меча на фоне буквы "p"
Аноним 26/06/23 Пнд 15:25:53 #200 №598273 
>>598267
и гарду тоньше
Аноним 26/06/23 Пнд 16:09:31 #201 №598279 
minespades.png
idk.png
im blue.png
>>598269
Да, согласен.

>>598272
Я так изначально и хотел, но выглядит это не очень. А насчёт гарды, так это же обычная текстура меча, зачем её менять?

В общем, фантазия закончилась уже на третьем подходе, где просто синий текст с едва заметным свечением. Имхо, вторая попытка самая удачная, но, возможно, потом ещё попробую.
Аноним 26/06/23 Пнд 16:20:18 #202 №598281 
>>598279
на тёмном фоне кстати нарм
sage[mailto:sage] Аноним 26/06/23 Пнд 16:34:34 #203 №598283 
>>598279
>minespades
>Ничего связанного ни с mine ни с spades на лого нет
Аноним 26/06/23 Пнд 16:48:26 #204 №598285 
>>598283
Минеспадес это в целом никак не связанное с плагином название. Оно вообще не отражает тематику, да и я не могу сказать, что оно означает что-то конкретное. Но я решил назвать плагин именно так, и у этого, внезапно, даже имеется история. В начале 2018 года в этом разделе я запилил похожий режим из говна и палок, но ещё и со стволами. Назывался он, очевидно, Minespades. Я тогда не умел кодить и просто бродил по spigotmc в поисках плагинов. Мечтать о своих плагинах было здорово. Прошло пять лет и я всё-таки смог реализовать задумку с нуля. Вот такие дела.

Возможно, имеет смысл назвать плагин как-то иначе. Я сейчас погуглил и нашёл режим с похожим названием. Надо это хорошенько обдумать.
Аноним 26/06/23 Пнд 20:40:51 #205 №598296 
>>598285
Ace of Spades!
Аноним 26/06/23 Пнд 21:16:28 #206 №598298 
>>598240
Ты блин ответь, что такое адекватный сервер? На доске работает пара годных серверов по своим тематикам. На них админы вполне себе адекватные люди, может ты считаешь, что их мало, но опять же на доске не то чтобы большой онлайн.
Аноним 26/06/23 Пнд 23:18:09 #207 №598305 DELETED
>>598240
>мы здорово проиграли когда раздел был на высоте, а сейчас когда мы и сами наигрались, мы особо ничего не теряем забивая хуй на этот раздел и на этот сайт
Очень грустно такое читать. Хотелось бы сказать, что слова про наигрались — чистейшая правда. Майнкрафт как игра мне не интересен уже давно. Я наигрался. Это наиболее подходящее слово для выражения эмоции. А сюда хочется заходить лишь по инерции. По инерции.. Да, мы сами всё проебали.
Аноним 27/06/23 Втр 20:59:33 #208 №598389 
Без имени-1.png
Аноним 27/06/23 Втр 22:14:15 #209 №598402 
>>598389
Аноним 27/06/23 Втр 22:14:56 #210 №598404 
16878887743780.png
>>598389
Аноним 29/06/23 Чтв 18:57:39 #211 №598579 DELETED
>>598250
>чем нужно было заниматься нологику вместо своих параш?
Разводить попугаев и упарывать хмурый. Очевидно же!
Аноним 30/06/23 Птн 11:09:02 #212 №598610 DELETED
>>598579
двачую

мимотест
Аноним 01/07/23 Суб 20:22:44 #213 №598692 
изображение.png
Какая-то долгая модерация. Залил во вторник, уже почти воскресенье.
Аноним 15/07/23 Суб 17:07:08 #214 №599715 
изображение.png
изображение.png
ЕГО ОДОБРИЛИ БЛЯДЬ! МОЙ ПЛАГИН ОДОБРИЛИ!
Аноним 15/07/23 Суб 23:19:18 #215 №599765 
>>599715
Три недели ждал. Это пиздец. Это пиздец!
Аноним 16/07/23 Вск 16:03:54 #216 №599813 
>>599715
>>599765
поздравляю
comments powered by Disqus

Отзывы и предложения