Информационный выпуск 5 / Lineage 2 :: большие гифки (большая гифка) :: Lineage :: JoyReactor Games :: CornShard :: гиф анимация (гифки - ПРИКОЛЬНЫЕ gif анимашки) :: Игры

JoyReactor Games Игры CornShard Lineage 2 Lineage большие гифки гифки 

Информационный выпуск 5

Доброго вечера, пидоры.

  Немного информации:

- Для тех, кто видит этот пост первым и не видел прошлые. Я занят созданием сервера Lineage 2 для реакторчан. Работы ведутся на своей версии эмулятора, написание которой велось в течении последних лет. Сервер будет ориентирован на аудиторию реактора, без внешней рекламы. Быть в курсе можно, подписавшись на тег CornShard

Если вы не хотите видеть эти посты в дальнейшем, просто заблокируйте тег. Если наоборот хотите получать все новости, то подпишитесь на него.

- Для тех кто в "теме". Хочу поделиться некоторыми новостями проекта.

Короче работы идут полным ходом. Я просыпаюсь примерно в 18-19 часов, и кодю примерно до 12-13 следующего дня. Немного провалился в дебри гео движка. Его полная переработка отняла довольно большой кусок времени. Явно больший, чем я хотел бы. 

Новости собственно:

[Технические]:

1) Код обновлен до синтаксиса Java 16 и оптимизирован для работы с Eclipse OpenJ9.

2) Пересмотрена логика хранения геоданных в памяти. Ушел от объектов-блоков, в сырые байт-массивы. Из примерно 13.000.000 геоблоков(byte[]), только около 3.500.000 уникальны, остальные 9.500.000 их тем или иным образом дублируют. Поэтому, после загрузки геоданных в память, можно оптимизировать хранение данных в памяти весьма эффективно. Вместе с переходом на массивы, оптимизация уникальных геоблоков дала сокращение потребления оперативной памяти, примерно на 600 мб. + теперь GC OpenJ9 не сходит с ума). Со всеми описанными выше оптимизациями, сборка стабильна на на холостом ходу(в мире 1 игрок), потребляя около 1.85-1.9 гб ОЗУ.

3) Сетевой движок переведен на полностью асинхронную модель работы. Теперь игровые клиенты синхронизируются только с сервером, но не между собой. В теории, это должно помочь в критических ситуациях, при большом онлайне(Ахахахахахах) в одном месте.

[Геймплейные]:

1) Я наконец-то разобрал и реализовал итемы. Их работа на 90% корректна. Вкупе с небольшим реверсом формул, заработали такие прикольные вещи(которые между прочим, почти нигде на явах не работают xD), как "процентное распределение урона между мечами-дуалами", корректные углы атаки для пик, условия срабатывания встроенных скиллов и т.п. Итемы теперь также имееют дохерища параметров, каждый из которых задействован в формулах тем или иным образом.

2) Я полностью переписал логику работы всех петов, суммонов, витаминных петов, ездовых для корректной офлайк работы. Написано куча ИИ(зеленые на скрине). Все работает полностью корректно. 

О ¿я e_prem¡um_manager.java im e_premium_npc.java im musicbox_npc.java
□	im pailaka_pet_ai.java im parade_npc.java
□	im pet_active_grow.java
□	im pet_cute_baby_use_2skill.java im pet_manager.java
□	im pet_passive_grow.java
□	im pet_physicalattack.java
□	im pet_premium_attacker.java
□	im

3) Наконец-то я закончил реализацию ВСЕХ низкоуровневых ИИ для мобов.

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

Что это значит для конечного игрока? Мобы стали значительно умнее и ведут себя намного интереснее. Они убегают к за помощью к сокланам, выкрикивают правильные фразы, даже спойлят игроков)





И таких примеров очень много...
Список низкоуровневых ИИ, которые были успешно реализованы:

https://pastebin.com/U540Gr2a

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

В ближайших планах: 

- Переписать полностью систему скилов. Это пиздец как много работы и я боюсь, что могу там завязнуть, но результат того стоит, это точно...

Всех целую в десны. Ваша КУКУРУЗА.


Подробнее


О ¿я e_prem¡um_manager.java im e_premium_npc.java im musicbox_npc.java □ im pailaka_pet_ai.java im parade_npc.java □ im pet_active_grow.java □ im pet_cute_baby_use_2skill.java im pet_manager.java □ im pet_passive_grow.java □ im pet_physicalattack.java □ im pet_premium_attacker.java □ im pet_premium_buffer.java □ im pet_premium_criminal.java □ im pet_premium_hybrid.java im pet_use_one_skill.java □ im pet_warrior_use_2skill.java □ im pet_wizard_use_2skill.java □ im summon_bomb.java □ im summon_criminal.java □ im summon_heal.java □ im summon_magical_buffer_use_3skMl.java □ im summon_magical_tanker_use_3skNl.java □ im summon_magicalattack.java □ im summon_magicalattack2.java □ im summon_mutM_skNI_use.java □ n summon_physical_attacker_use_3skill.java □ im summon_physical_buffer_use_3skill.java □ im summon_physicalattack.java □ im summon_siege_cannon.java □ im summon_siege_golem.java □ im summon_siege_tank.java □ im summon_use_skills.java □ im warrior_pet_for_pc.java




О ¿я e_prem¡um_manager.java im e_premium_npc.java im musicbox_npc.java □ im pailaka_pet_ai.java im parade_npc.java □ im pet_active_grow.java □ im pet_cute_baby_use_2skill.java im pet_manager.java □ im pet_passive_grow.java □ im pet_physicalattack.java □ im pet_premium_attacker.java □ im pet_premium_buffer.java □ im pet_premium_criminal.java □ im pet_premium_hybrid.java im pet_use_one_skill.java □ im pet_warrior_use_2skill.java □ im pet_wizard_use_2skill.java □ im summon_bomb.java □ im summon_criminal.java □ im summon_heal.java □ im summon_magical_buffer_use_3skMl.java □ im summon_magical_tanker_use_3skNl.java □ im summon_magicalattack.java □ im summon_magicalattack2.java □ im summon_mutM_skNI_use.java □ n summon_physical_attacker_use_3skill.java □ im summon_physical_buffer_use_3skill.java □ im summon_physicalattack.java □ im summon_siege_cannon.java □ im summon_siege_golem.java □ im summon_siege_tank.java □ im summon_use_skills.java □ im warrior_pet_for_pc.java


JoyReactor Games,Игры,CornShard,Lineage 2,Lineage,большие гифки,большая гифка,гиф анимация,гифки - ПРИКОЛЬНЫЕ gif анимашки
Еще на тему
Развернуть
Короче гифки к посту не захотели прикрепляться, прикреплю сюда.
Пет Витамин Черепаха, который успешно бафает, хилит, юзает скилы и прочее.
Моб-Спойлер, обитающий около Шутгарда
А моб свипер свипает с тебя пуху?
Не, он просто делает вид, что спойлит. Свипать он не умеет)
Пример изменения алгоритма использования скилов, в зависимости от расстояния до цели, каким-то простым импом-магом, в Ruins of Dispair
И еще я забыл опрос... Поэтому, если не трудно, будет круто пройти в предыдущий пост и проголосовать, если не делали этого раньше.

Ссылка: http://joyreactor.cc/post/4881021
Ждёмс
За Е бись
BaTToN BaTToN 18.09.202109:09 ответить ссылка 6.3
"убегают к за помощью к сокланам" Вроде на некоторых локациях после 40 го мобы так и делали. Но я хз я играл только на рейде до с5 может там их прогер тоже шалил.
Да, именно так. Я же сейчас делаю не реализацию каких-то своих очередных безумных идей, а подгоняю логику работы эмуля к логике работы оригинального сервера.

На оригинальном сервере очень разветвленный механизм наследования ИИ.
Если на типичной "яве" образца 2018-2020 года, около пятидесяти узкоспециализированных ИИ, которые описывают логику работы популярных мобов в популярных локациях(ДВ, ЛОА, МОС, ЙОП, СОД, СОА и т.п), то для описания логики поведения подавляющего большинства менее популярных мобов используются в лучшем случае с пяток типовых ИИ(Fighter, Wizard, Archer, Priest), которые отличаются между собой некоторыми тонкостями и алгоритмами выборки скилов.

На оригинальном сервере, только базовых ИИ более 600 штук, а еще примерно около 1500 наследников, которые их расширяют тем или иным образом. Также, в отличии от большинства эмуляторов, информация по поведению мобов закладывается не только в ИИ, но и частично в спавн.
Т.е например есть локации, где два моба, с одинаковыми ИД и даже ИИ, будут вести себя по разному.
Все эти тонкости практически не достижимы на типовом эмуляторе.
Ого, получается все неофициальные сервера работают далеко не так как на офе? И как вообще их делают?(Реверс инж. или там где то исходник берут и пилят его как надо?)
Оригинальный официальный сервер подразумевает непрерывное развитие вне контекста хроник.
Т.е Prelude->Настоящее время.
Все что есть в оф, появилось там благодаря непрерывной работе по развитию мира, которая достигает ТАКОГО АХУЕННО ОГРОМНОГО объема, за 15+ лет существования(7+ лет, в случае с ХФ), что не имея исходного кода самого сервера(именно L2Server.exe) и всех его библиотек, реализации оф сервера не достичь никаким образом. Все равно будут оставаться неочевидные моменты, которые блять неочевидны.

Ява же, тоже имеет очень много плюсов. Первый и самый главный - наличие исходного кода. Т.е проект не устареет и будет развиваться хотя бы за счет таких энтузиастов, как я или мои друзья.
Остальные плюсы заключатся в том, что за почти столь же долгое, как и сам оф сервер, существование эмуля, в него напихали также значительное количество всяких плюшек, которых нет и никогда(скорее всего, корейцы любят пиздить идеи у ФШ в последее время) не будет. Все любимые комьюнити борды с кучей начинки, баферы, эвенты, всякие ПВП сервера и прочее, также развивается параллельно официальному серваку. Чем ниже рейты игры, тем больше причин выбирать официальную платформу. Соответственно, чем выше, то тем более весомы плюсы явы.

А по поводу разработки, где как. Кто-то через интеграцию дополнительных модулей расширяет функционал спиженных у NCSoft ПТС серверов, кто-то пилит самобытные проекты, кто-то пилит движок на яве, а использует в качестве датапака полный набор скриптов ПТСа, часть бибиотек и переодически дописывая и реализовывая все больше функций из L2Server.exe, реверся его используя IDA и wireshark, но т.к это нихуя незаконно и в отличии от чистого эмуля L2jServer, который делает почти тоже самое, но под GNU GPLv3, и типа дохуя легальный(пидоры), то мы это не будем обсуждать. Я так не делаю, это уж точно)
Почему ява?
1. уже были готовые части реализованы на яве?
2. или у автора это основная технология?
Почему лично для меня? Мне ява привычнее и удобнее.
Почему вообще ява? Основа-эмулятор был написан на яве. После этого, десятка полтора лет назад утек в сеть билд оригинального корейского сервера, который оказался написан на C++, который морфологически схожи, что значительно упрощает реверс.
Ну и плюс у явы довольно низкий порог вхождения, что позволило быстро нарастить комьюнити и добиться внушительного уровня оптимизации.
на рейде? А на котором из?
Honda Honda 18.09.202123:10 ответить ссылка 0.0
Есть на гитхабе или битбакете? Если добавишь чутка документации, и тикеты что нужно сделать я бы присоединился.
tsdaemon tsdaemon 18.09.202109:37 ответить ссылка 0.0
На гитхаб не помещается, увы. Объем гита около 8гб, там коммиты с 2011 года, около 12000 ревизий.
Проект приватный, я пока не планировал сурсы делать общедоступными. В перспективе возможно, если меня заколебает его ковырять в соло, то я могу отдать сурсы комьюнити, но пока это маловероятно...
Приватно можна на битбакет.
Надумаешь - пиши.
Окей, взял на заметку предложение.
8Гб кода? Там явно есть ресурсы или бинари. Попробуй git lfs. Его поддерживают и гитлаб, и гитхаб и gitea. А ненужные файлы из все ревизий можно удалить из репы через bfg, только все хэши будут другими
aidath aidath 18.09.202111:12 ответить ссылка 0.4
Да, безусловно там дохера мусора, в виде старых ревизий геодаты, кучи мусора в датапаке и прочее.
Не задумывался про чистку мусора из репозитория. bfg это https://rtyley.github.io/bfg-repo-cleaner/ ?
Покурю сегодня. В последних ревизиях я упаковал все что можно в зип и сделал чтение прям от туда, т.к 1.5гб геодаты ужимаются до 200мб, 50000+ html упаковываются в один зип файл и загружаются за 600мс, вместо 8 секунд и т.п. Но вот за идею с чисткой git спасибо
Кажется, работа на благо реактора положительно сказывается на Кукурузе.
Хех.
Судя по описанию работа просто колоссальная, тем более для одного человека.
Это очень круто.
Ого круто. Было бы реально прикольно вечерком зайти часик другой побегать с соклановцами пидорами. То ли я в глаза долблюсь, то ли. Крч а какие хроники будут?
High-Five часть 5.
Мне уже пеняли, что не ИЛ, но я физически не потяну в ебало сделать нормальный даунгрейд до ИЛ... Ну и + к ХФ у меня невероятно дохуя уже всего сделано и вырезать это все у меня рука не поднимется...
Чувак ты лучший, жду твоё творение с нетерпением! Чувствую, что после твоих переработка ощущения от игры будут, будто в первый раз играю) есть смысл жить)
Поиграть бы не в яву =(
Почему?
Не я сказал, но отвечу:
1. Оф сборка чистит кеш сама по себе, потому на фришардах с птс сборкой можно не перезагружать л2 хоть до рестарта. На яве если 2 часа постоишь и погриндишь мобов, а потом сделаешь тп - игра виснет намертво даже на ссд и черный экран будет по 10 минут.

2. Реализация скиллов и некоторых механик. К примеру, вампирик на офе идет 100% от 1 моба, 50% от 2, 25% от 3 и т.д., что не дает дестрам без буста фармить локи в соло. На яве он идет всегда максимум со всех. Минимальный шанс дебаффа на оф сборке = 10%, что позволяет использовать даже скиллы, у которых нет заточки. На яве на все воля Эйнхасад. Механика летального удара (Дагер 1 одноручным ножом при использовании скиллов с "Возможен летальный удар" на оф сборке имеет 6% (8% при заточке скиллов) оставить 1 хп противнику. На яве это не работает вообще.

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

1) Насчет очистки кеша сборкой ПТС. Там немного сложнее механизм.
Клиент л2 максимально ориентирован на повторное использование объектов. Сборка в процессе очистки его кеша никак не участвует. Суть проблемы в другом. У каждого объекта в мире л2 есть свой ObjectID номер, который уникален. Т.е например, у всех мобов на локации может быть одинаковый NpcID, но ObjectID всегда будет разный.
Логика клиента какая:
- Получил пакет от клиента, что в мир добавлен объект. Закешировал его параметры вместе по ключу ObjectID.
- Дальнейшие действия, вроде пакетов движения и атаки, имеют ключ-индетификатор ObjectID, по которому клиент понимает, какой из загруженных объектов этот пакет должен на себя применить.
- А ВОТ ТУТ НАЧИНАЮТСЯ ОТЛИЧИЯ.
- Убиваешь ты моба на ПТС. Он дохнет, исчезает, но висит в кеше клиента сохраненный по ObjectID, до тех пор, пока ты из региона не выйдешь(тут тоже есть отличия в логике работы, но о них ниже). Через какое-то время, сборка, которая уже обработала информацию о смерти моба, решает, что пора бы его зареспавнить. и ФОКУС. На ПТС, моб спавнится с тем же самым ObjectID, что и его предшественник. После этого, клиенту остается просто загрузить данные моба из кеша и продолжить работу. На типичной Яве(ВНЕЗАПНО), каждый последующий моб будет иметь НОВЫЙ ObjectID, который каждый раз будет заново сохраняться в кеш клиента, а вот потом, уже когда ты попробуешь покинуть регион, клиент ахуеет от количества инфы в кеше и позволит тебе насладиться 10 минутным таймаутом, пока он его очищает. При грамотной реализации этой части, ява сборка с успехом избегает таких проблем.

2) Тут сложнее. Эта инфа максимально заныкана в сервере и ее можно вытащить в большинстве случаев только реверинжинирингом самого сервера ПТС(если он есть), либо эмпирически, ставя эксперименты на работающем ПТС сервере. Ну тут тоже зависит от подхода админа. Где-то уровень реализации формул 30%, где-то 70%. Разумеется, там где 70% реализация, разница с официальным сервером будет, но не настолько большая, как на том, где реализация 30%. Если разницу видит игрок, то ее скорее всего видит и админ. Въедливый админ добьется того, чтобы показания формул +- бились с офом.

3) Опять же, зависит от реализации ИИ. Смотри приложенную гифу) Это моя ява.
Ничего не понимаю из того что ты делаешь, но выглядит интересно. Поскорее бы попробовать залипнуть на гноме :3
Zanzes Zanzes 18.09.202111:07 ответить ссылка 0.1
Привет, как с тобой связаться? Тоже хочу поучавствовать
fnac fnac 18.09.202111:39 ответить ссылка 0.0
Извини пожалуйста, но я пока работаю один. В будущем, возможно, будет собранна команда для работы над проектом, но это перспектива даже не ближайших нескольких месяцев.
В любом случае, был бы рад иметь связь вне джоя, а то могу пропустить. Есть телеграмм канал для л2 разработчиков, там сегодня чуваки пилят сервер на джсе и не только: https://t.me/lineage2_js
fnac fnac 18.09.202111:47 ответить ссылка 0.2
Твой энтузиазм вдохновляет, удачи в дальнейшей разработке!
Какие рейты будут?
Пока висит вопрос в воздухе.
Х4 считаю самым оптимальным
я за два сервера, х10 и х10000.
Чтоб основа и пофанится.
Согласен, дайте выбор.
Запили опрос. А то реально такой плавающий вопрос, ведь реально с хардкорными рейтами вряд ли у людей будет время, а прогресс то ощущать охото.
Предыдущие посты не видел(хотя я год-два почти ежедневно всю глагну обсасываю до уже прочитанных постов), увидел этот - буду рад попробовать.
Идея заточки предметов путем из использования понравилась, а что-то подобное со скиллами провернуть вариант?
Basilisk Basilisk 18.09.202113:09 ответить ссылка 0.0
Да, вполне. Нужно только сформулировать идею, а реализацию я на себя возьму без проблем
Только щас вспомнил что в Л2 у скиллов есть и обычная поуровневая прогрессия ..
Возможно тогда не заточку, а левел-ап скиллов переделать как в RF Online - хочешь прокачать скилл - пользуйся им.
Это не сложно реализовать. Я думаю, что в принципе, как дополнение концепции с прогрессией оружия при его использовании, будет неплохо. Нужно продумать как качать пассивные скиллы и как выбирать ветку прокачки? Ветку в принципе можно наверное выбирать просто первую и давать бесплатную возможность ее сменить до определенного уровня заточки.
Последний раз в глаза Л2 видел хз сколько лет назад, ХФ еще дольше, поэтому понятия не имею даже насчет примерного ассортимента скиллов, к сожалению. С ветвями наверное да, пока не стоит выйобываться ибо не в приоритете.
Ты подключил офф.скрипты итемов к своей яве или просто решил спарсить те параметры, для которых реализовал работу?

Касательно геймплея то самое сложное и важное это правильная работа всех связанных со скиллами механик, расчеты КД луков/арбалетов, а не эти вот углы атаки и процентные распределения урона. Вот есть на оффе фишка у дуал-ножей с разным разбросом урона при атаке и при использовании скиллов с них (хотя технически все должно быть привязано к random_damage), только это знают единицы и мало кому нужно.
Подключены скрипты офа полностью, без промежуточной конверсии. Ну давай на примере итемов.
Я тебе покажу пару скринов с кодом загрузки и расчета формул.
И это все не пустые классы
Покеж i_p_attack
Нетронутую яву (в плане формул) вижу я) Ну да ладно, это всё поправимо.

Касательно ИИ: у нас перестали адекватно работать мобы на кругу в ХФ и мобы под пещерой гигантов в адене (silent valley), проверь ведут ли себя они оффлайк или нет.

Кстати забыл еще такую штуку, я так понимаю ты парсишь статы НПЦ тоже из офф.скриптов? Не пропусти тот момент, что на большинстве ява-серверов эти статы вбиты напрямую, в готовом виде, иногда максимум еще пассивки прикручены, а на оффе там вбиты базовые статы + они должны рассчитываться с модификатором от уровня и по таблицам STR\CON\INT и т.д., плюс еще должны ложиться пассивки, которые тоже должны работать. Иначе начнется кавардак с супер-слабыми боссами на которых ложатся все дебаффы и так далее.
"перестали адекватно работать" имею ввиду после реализации для них официальных ИИ со всеми наследниками и прочим.
Ну вот сам ИИ моба
0 a 0 a O a O a O a O a O a O a O a O a O a O a O a O a O a O a O a O a O a O a O a O a O a © a 0 a 0 a O a O a O a O a O a O a O a O a O a O a O a O a O a O a O a O a O a O a O a O a O a O a 0 a
party_vltallty_herb	7
priestjelna	8
purple_block	9
queen_shyld	10
rald_baranka	11
И моб. Ты про них?
ta] м 4 41 1	4 > Я :
Lineag«
ро] КУКУРУЗА j> Г		4		¥
32 p'	VAWVMQ HP 415/415				' ►
= 0.00%				
Changed Creati
Параметры ИИ	X
Active: true intention: AI_INTENTION_ACTIVE	Ф
i i
Ы a ck_sh a d ow. a i_si I entba si n_wa rri or. wa rri or_u se_ *—< ski 11. wa rri or_beh a vi or. m on ster_beh
Статы ПТС ХФ оригинальный
All___h +Traden »Party ,, ©Clan M $Alliance.
♦ Welcome to the World of Lineage II.
Seven Signs: Preparations have begun for the next quest event.
You are starting to feel the effects of Nevifs Advent Blessing.
You are no longer protected from aggressive monsters.
♦ SYS: //debug [name | .]
Статы с моей сборки
Xii Lineage II
Max.HP:
Cur.HP:
Max.MP:
Cur.MP:
Invisible
КУКУРУЗА
ques	л ever
rem	um a<
nno	uncerr
По-р	«усеки
evit	s Adv
can	almos
							
				р/Г% >			
							
							
			frSj				jmmM Жш
Chimera Piece
? Nevit's Blessings x
<Rec Bonus> Bonus Exp : Bonus Time :
<Hunting Bonus>
да, и не только про них, про всю локацию, агро не работало как на оффе у меня после переноса на офф.ии
По какому принципу агр рассчитывается у вас? Сам тип Агр-неАгр идёт из базовых Ии, вроде как в monster_behavior в методах SEE_CREATURE. А вот с радиусом че? 1000 который в npcdata.txt, это радиус поиска neighbor внутри региона. Как я понял какая-то зависимость есть от clan_help_range и он радиус Агра никогда не превышает clan_range. Нужно будет попробовать поиграться с параметрами на птс.
У нас на агр моба слишком много мобов вокруг бежало, при этом все ренжи были спаршены как надо и monster_behavior реализован. Это года 4 назад было, я ужо и не помню всего, мы в первую очередь принесли ИИ, мейкеры и всякие там события, инсты, форты правильные и наполовину скиллы. Все мгновенные эффекты сделали, а вот с системой баффов и продолжительных эффектов были проблемы, они легко с существующей системой не вязались. Там ещё в ИИ ошибки обнаружились и при большом онлайне были утечки памяти, короче много всего было и на данный момент дело заброшено.
-> У нас на агр моба слишком много мобов вокруг бежало, при этом все ренжи были спаршены как надо и monster_behavior реализован

Ну судя по твоему описанию, вы как раз допустили ошибку в том, что соотнесли параметр agro_range из npcdata.txt с параметром радиуса агра на яве. Это внезапно разные параметры.

Что сейчас у меня(FULL полностью из скриптов ПТСа, PART Используется частичный распарс, NONE не используется.)

ArmorEnchantBonusData FULL
CategoryData FULL
ConvertData FULL
ExpData FULL
ItemData FULL
AuctionData FULL
DoorData FULL
DyeData FULL
EnchantOption FULL
FieldCycle FULL
Multisell FULL
PetData FULL
Recipe FULL
UserBasicAction FULL
SkillData PART
CubicData FULL
VariationData FULL.
Superpoint FULL
FreewayInfo FULL
NpcData FULL
NpcPos PART(Используются не все мейкеры, примерно 60%)
PCParameter PART
Setting PART
Transform NONE
SkillAcquire PART
optiondata NONE
CursedWeaponData NONE
InstantZoneData NONE
AreaData NONE
CastleData NONE
FormationInfo NONE
Airship FULL
AnnounceSphere NONE
DecoData NONE
FishingData PART
ManorData PART
Minigame NONE
Monrace NONE

Скилы меня пугают пиздец. Чем больше я на них смотрю, тем мне страшнее)
Можно сверить статы какого-либо моба и проверить основные моменты.
Давай возьмем как раз моба из круга.
22848 Drake Leader

Общие статы
Dri tDra Ke^M а’ф
Drake Leader
Invisible
КУКУРУЗА
Статы где-то могут быть +-1 единица должны быть погрешности, т.к в базовой сборке везде был ((int)double), вместо Math.round. Поздно спохватился) Щяс потихоньку вычищаю, но не все.
Бля, моё увожение, мужик. Мало на каких явах с этим вообще парились, даже среди популярных, а ты всё как надо сделал. hit_time_factor тоже реализовал?)
У меня это (1000 * hit_time_factor) миллисекунд - длительность HitTask, который запускается при ударе и отвечает грубо за длительность самого удара.
Возможно, я не совсем прав)
Не понял почему он ровно 1000, оно ведь должно от скорости атаки зависеть. Ну сам параметр является модификатором времени до нанесения урона с момента начала атаки. На дефолтной яве урон прилетает по завершению полной анимации атаки у всех мобов, визуально это весьма нелепая задержка. Скорее всего ты прав, просто описал так что я не вкурил.
1000 это база 1 секунда = 1000 мс.
hit_time_factor это double значение, коэфициент на эту величину.
Он в статах для того и введен, как константа, чтобы не дрочить сервак расчетами скорости атаки всех мобов, а юзать precalculated значение.

Т.е формально, на яве значение считается по дефолу как 500000 / скорость атаки. Т.е например у тебя скорость атаки загнана под лимит 2500, то между ударами пауза будет 200(500000 / 2500).
У мобов эта величина заранее просчитана и введена как модификатор на время 1000мс., т.е если например hit_time_factor = 0.34, это значит, что между ударами моба пауза не более 340 мс, что по старой формуле равно примерно 1470 атаки. А т.к такой атки у мобов нет, то и визуально удары дольше, т.к по факту например у моба у которого 800 скорость атаки, пауза будет 625мс, вместо 340, что по факту дольше почти вдвое.
как-то так.
hit_time_factor=3.0
Если на первых двух гифках разницы нет, т.к все значения укладываются в стандартные формулы, то вот тут уже модификатор включается и при условии что во всех трех случаях скорость атаки 278, получается вот такая хуйня)
А ты точно уверен в том что описал? Мобы, по-моему, все так же зависят от всех бонусов скорости атаки как и сам плеер и они считаются для них на основе статов и баффоа. На моей памяти хит_фактор просто отвечает за момент нанесения урона, чтобы он совпадал с анимацией атаки. Допустим если при 333 а.спида анимация длится секунду, то при хит_факторе 0.5 - удар тебе должен быть нанесён на середине анимации, т.е. спустя 500мс с ее начала. Если мобу накидать дебаффов и срезать время анимации до 1500мс, то урон будет наноситься через 750мс при этом же хит_факторе.

У тебя к сожалению не видно систем чат, но при факторе 1.0 урон должен приходить в конце анимации, при факторе 0.01 - в самом начале, как он только замахивается, а при хит_факторе 3.0 - моб просто ждёт время, равное трем анимациям, чтобы нанести тебе урон и не может начать новую атаку до этого момента.
И на явах это никогда не было реализовано, там всегда урон приходил после полной анимации атаки, что прям в глаза бросается игроку оффа, будто мобы лагают.
Ну тут я точно могу сказать, что с этой темой я заморачивался, я добился нужного эффекта, просто запуская таск атаки на половине времени анимации.
attack_animation_time / 2

Сейчас сделал вот так. Буду тестить)

(long)(attack_animation_time * getTemplate().hit_time_factor())
До твоего объяснения был уверен) Сейчас пойду тестить и переписывать)) Спасибо)
Ну т.е буквально формула.
// ЛИМИТ в 0.2 секунды это примерно 2500 скорость атаки. Ниже не нужно, т.к начинает сильно лагат1? клиент, да и у нас не хард пвп.
int sAtk = (this instanceof Npclnstance || this instanceof Summon) ? (int)(getTemplate().hit_time_factor() * 1000) : Math.max(calculateAttackSpeed(), 200) - 50;
Общие параметры
Chat
'	Aggro	•	■	Effects	'	'	Skills
■	DropList	•	■	Resists	'	'	Tasks
Drake Leader Дрейк Главарь
ID. 22848 drake jn c|an at 30Q ran
Level: 85	----- a
drake_leader qiran05_2421_sp01ml
Type:	M on sterln stance
Respawn: 3m(lm) Ref: 0
Object ID: 268473970
Stored ID: 5019416878159474
p_state:
Пассивные скилы стр1
Chat
Race[id=4416/lvl=10/index=28940698
6]
HP
Increase[id=4408,lvl=l,index=288882
689]
Earth
Attacks[id=5465/lvl=l/index=3581542 41]
MP
Increase[id=4409,lvl=l,index=288948
225]
P. Atk.
Type[id=4410/lvl=13/index=28901377
3]
M. Atk.
nV4
Type[id=4411/lvl=ll/index=28907930
7]
P. Def.
Пассивные скиллы стр2
МР
Increase[id=4409/lvl=l/index=288948
225]
Р. Atk.
Type[id=4410,lvl=13,index=28901377
3]
M. Atk.
Type[id=4411/lvl=ll/index=28907930
7]
P. Def.
Type[id=4412,lvl=15,index=28914484
7]
M. Def.
Type[id=4413/lvl=4/index=289210372
]
Armor
Type[id=4414/lvl=2/index=289275906
]
Weapon
Активные скиллы
Параметры ИИ
f
i
[isaggressivej = i
[:;*ib_bMLL_weignt_Pointj = iuuuu.u [SkillOlJD] = Dragon Earth Strike 6763:1 [ Ski 1101_Proba Ы ity] = 1000 [ Speci a I Ski 1101_I D] = Powerful Rage 6818:1 [ Sped a I Ski 1102_I D] = P. Def. Enhance 6820:1 [mobile_type] = 1
[SuperPointDesire] = 50
Цепочка ИИ
Параметры ИИ	X
Active: true intention: AI_INTENTION_ATTACK Ф
i—i
drake_leader.aLdrake_leader.warrior_use_skill.w —1 a rri or_beh a vi or. m on ster_beh a vi or. m on ster_a i. d ef ault_npc
Timers:
[1001] delay 76.862 s. AI Params:
[state]=0
[i_ai0]=l
[i_ail]=0
[i_ai2]=0
[i_ai3]=0
Мейкер стр1
g ira n 05_242 l_sp03 m 1 [ d efa u lt_m a ker]

1	Респавн НПЦ	' 1 Пометить НПЦ
1	Территория	1 1	Переменные
NPC мейкера[10/12]:
L: drake Ieaderf228481	TeleTo
M: drake warriorf228491	TeleTo
M: drake warriorf228491	TeleTo
M: drake scoutr228501	TeleTo
M: drake maqer228511	TeleTo
T: drake
Мейкер стр2
g ira n 05_242 l_sp03 m 1 [ d efa u lt_m a kerl
[active] = true [maximum_npc] = 12 [name] = giran05_2421_sp03ml 1 [on_start_spawn] = 1 [enabled] = 0 [debug] = 0 [debug_mode] = 0 [hunting JeveIJndex] = -1 [roomjndex] = -1 [npc_count] = 10 [defO] = null [i_aiO] = 0 [i_ail] = 0 [i_ai2] = 0 [i_ai3] =
Я наверное, все таки соберу сегодня билд под тестовый сервер as is.

Доделаю основное, то что начал сейчас, сделаю настройки и залью для простых тестов, побегать, посмотреть. Отпишу позже.
Педики из хентзера заморозили мой аккаунт, за проебанный инвойс в 1 еврокопейку…
Ждём когда отдуплится саппорт…
HETZnER Cloud Console
DDO
□	□□ V
□	□□
o

PROJECTS
SUPPORT
Access denied
Your access to the Cloud Console is being denied. Please contact our support:
SUPPORT ■ LOGOUT
■ Insufficient permissions for th...
access denied
АХАХА НАЖЫ ДАЛЖНЫ СТОДАТЬ!111)))
Отличия будут от сборок шока например? ну там со всякими новыми скиллами или усилениями боссов?
Какой кстати клиет на за основу взят? Ил, грация или год?
Legazy Legazy 18.09.202113:41 ответить ссылка 0.0
ХФ п5
если будет х1 то я с удовольствием позадротю, учитывая что это хроники ХФ то х1 это с виталити и прочими плюшками и так будет как х4 и более, я бы в ИЛ х1 с удовольствием поиграл, только что бы мир живой был, с онлайном и рынком, осадами, а так все такие сервы это боты и мёртвые миры
Сейчас сколько не начинай через месяц-два сервер будет полупустым. Сколько за последние пару лет не играю всегда по одному сценарию. Топ кланы наигрались за месяц и ушли на старт кетраварс какой нить)
Legazy Legazy 18.09.202113:44 ответить ссылка 0.2
Тема интересная, хотя и не ИЛ.
Но насколько сервак реально будет актуален в 2021 году, учитывая, что классическая Л2 сводилась к гринду, фарму, мободрочу, причем в жесточайшем прайме. Мало верится, что найдется много людей, кто будет в три окна сидеть на каком-нибудь х4 и долбиться до 80 лвл по-старинке.
Многие поколения ПВП-серверов пытались решить эту проблему, но упирались в новую - люди быстро апали 80, а дальше шел тот же гринд адены на заточки, в ожидании эпиков (1я неделя) , осад (2я неделя), олипм (4 неделя) - все, сервак тухнет.

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

Какие альтернативы? Без прайма - сидеть в 4 окна на фулл бафе, ну теперь-то и с нетбука можно 10 окон завести. НПС-бафер - убивает всю соль подбора бафов. В любом случае, Л2 все любили именно за работу в команде. Просто гринд - это чушь. Да и изначально рассчитана Л2 именно под большое кол-во людей, механики типа бафа на всю пати от БД/СВС/варка, да и вообще на весь клан/альянс от овера и т.д.

Словом, мало верояно, что люди, которые тратили часы (иногда дни) на Л2 лет 10-15 назад, смогут сделать то же самое сегодня. Есть работа / семья / ипотека, и еще куча альтернатив, современные ММО, Скаримы всякие и т.д.

Тема с адекватным сервом, да и вообще с возрождением Л2 это очень круто, все же Л2 это один из столпов ММОРПГ, наряду с ВОВ. Вопрос в том - какая будет начинка?

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

В первую очередь это касается темпа игры и прайма. Сужу по себе и своим знакомым, с кем мы залипали в Л2 - на сегодняшний день они готовы были бы выделять часа 3-4 в неделю. Может и больше - зависит от деятельности в игре.

Второе - та самая деятельность игрока в игре. Чем он будет заниматься эти 3-4 часа? Фармить мобов? Наращивать дежурные 2 лвл?

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

И в этом есть логика. Вот когда Л2 станет такой интересной отдушиной, где можно не только молодость вспомнить, но и реально получить фан, который не дают другие современные игры и это будет комфортно, тогда на сервер будет очередь. А это очень важно, т.к. в ММО чем больше народу - тем веселее.

В любом случае, желаю тебе творческих успехов и крепкой воли, чтобы довести дело до конца.
LePiton LePiton 18.09.202113:47 ответить ссылка 0.1
Четко все расписал.
Действительно все пвп сервы скатываются в олимп и очередь на нубл квест.

Сидеть и гриндить даже на х10 уже нет ни времени, ни желания.
Chilly Chilly 18.09.202113:55 ответить ссылка 1.1
Да... Замесы на нубл квестах - это было одним из самых веселых занятий (если у тебя есть клан с 3+ боевыми пати). Чего стоит только десантирование заюзаных дестров под алли УД через дырку в куполе, над залом с нубл РБ
Я поднимал этот вопрос и выносил на обсуждение пару идей в одном из прошлых постов.
http://joyreactor.cc/post/4864881
Я как раз и вынашиваю идеи переосмысления каких-то игровых моментов, в сторону упрощения. Сократить время сессии до приемлемых 1-2 часов в день, без ущерба для конкурентоспособности чара.

Суть моей работы сейчас - актуализировать и модернизировать ядро сервера до современного уровня, чтобы заложить прочный фундамент, который позволит потом в краткие сроки развернуть проект с произвольной концепцией.
Я имею опыт создания большого количества серверов самой разной степени фриковости. Я делал сервера с полностью измененным лором, где основная идея строилась вокруг вторжения потусторонних сущностей в мир, через открывающиеся в произвольных местах разломы. Я делал сервер, где вместо мобов игрокам противостояли кланы и пачки ботов, которые технично отжимали споты, эпиков, замки, суммонились на замесы, сами их иницииировали и делали всякое другое непотребство. Я делал сервак полностью построенный на концепции крафта, на концепции ПВП, на концепции эвентов и прочего. Короче я люблю креативить)
Я тоже имею некоторый опыт в администрировании серверов, но не по технической части, а по инвентовой.
И скажу так - реально крутое переосмысление Л2 для ее вписывания в современный мир видеоигр это супер-мега-архисложная задача. Упрощение - не панацея, это не делает игру интереснее. х10000 с авто-нублом и фуллбафом на 40 слотов это упрощение. Но интереснее игра не стала.

Переосмысление, это нечто иное. Оценить все, что есть в Л2 и понять, как это по-новому выразить, в условиях современных реалий. А в Л2 уже есть ОЧЕНЬ МНОГО ЧЕГО, уже готового, но не все могут это осознать, понять, использовать. Приведу пример из практики. Когда я админил на Ла2ворлде, одно время у нас был паренек, прогер, приглашенный в команду. Так вот у него была супер-мега охуенная идея камнями душ, которые можно было получать с помощью мобов и потом менять на какие-то плюхи у НПСа. Деталей уже не вспомню, но суть в том, что эта механика была спизжена из ТЕС (см. захват душ). Но весь пиздос ситуации был в том, что эта механика И ТАК УЖЕ ЕСТЬ В Л2! СоулКристалы, которые и так апаются с мобов и так дают плюхи на оружие. Но этот челик мыслил слишком узко, и видимо, не мог понять, что он изобрел велосипед, и вместо переосмысления соул кристаллов, интегрирования их в новые механики он просто лепит поверх еще одну мободрочную приблуду, которая сводится все к тому же - фарм.

Так что в Л2 реально есть почти все, что нужно для счастья, но многое из этого не актуального в старой форме. Поэтому и нужно именно переосмысление.
И дело тут не в сюжетно-лорной части, а в социальном аспекте, т.к. именно из-за него люди и будут играть (или не играть) на сервере. Основа такой мотивации - комфорт и интересность.

Вопрос конечно в том, какого рода сервер ты хочешь. Интересный, но с вайпами каждый месяц, или такой, чтобы по два года стоят, а онлайн только рос и рос.
Тут согласен. Я подумываю, сразу после доделывания базовых механик, вынесу на обсуждение концепцию сервера.
а на сервак будет пускать с линукса через вайн или опять какие-то очередные хитровыебанные античит системы будут, которые не заводятся на вайне?
Я взял чистый клиент. Вырезал через hex GameGuard. Под вайном работает. Для комьюнити реактора сервер будет запущен без защиты от пакетов. Буду обкатывать сервер-сайд защиту)
акк регать где?
Kegeke Kegeke 18.09.202114:21 ответить ссылка 0.1
https://t.me/CornShard
Пока только на потестить. Доступ к серверу закрыт. Файлов пока нет. Созданные аккаунты 100% будут удалены еще не раз, т.к база в процессе доработки.
окай )
Kegeke Kegeke 18.09.202114:33 ответить ссылка 0.0
А будут именные неписи (Вождя бы в замок Гирана посадить) ? Именная броня и оружие (качай и эвольви с B хоть до SS+) По типу БДСМ шлем Сплита , телогрейка вождя , Трусы мастера Хуёв , Перчатки кармадрочера , ботинки Пошел нахуева , и прочее?
Какая-то тематическая составляющая обязательно должна быть, иначе смысла особо нет) Получится обычный сервер для рандомного люда)
Я тоже об этом пока думаю.
как жеж долго блядь
Lirrian Lirrian 18.09.202118:37 ответить ссылка 0.4
Сорян. Крепись. Я ебашу как могу быстро.
Ну за то со временем как видишь начинает расти интерес к проекту, да и помощников вон сколько собралось. В этот раз кстати забыл голосование прикрутить.
Да, я пока мудохался с гифками, забыл добавить опрос)
Давай Кукуруза, пили. Хочется холодными осенне-зимними вечерами позалипать в ламповой компании реакторских пидоров)
Только зарегистрированные и активированные пользователи могут добавлять комментарии.
Похожие темы

Похожие посты
□
□
□
□
□
□
Базовые
параметры
существ
$3
Модификаторы
СКИЛЛОВ
(пассивные и предметы)
□
□
Базовые
параметры
скиллов
33
Модификаторы от эффектов
Базовые
параметры
спавна
О
ИИ
Скрипт ИИ
*
Особенные
параметры
спавна
*
		
	Активные	
	скиллы	
		
Базовые
параметры
пред
подробнее»

JoyReactor Games Игры Lineage Lineage 2 CornShard гиф анимация,гифки - ПРИКОЛЬНЫЕ gif анимашки

□ □ □ □ □ □ Базовые параметры существ $3 Модификаторы СКИЛЛОВ (пассивные и предметы) □ □ Базовые параметры скиллов 33 Модификаторы от эффектов Базовые параметры спавна О ИИ Скрипт ИИ * Особенные параметры спавна * Активные скиллы Базовые параметры пред