Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Новый эмулятор Lineage II
linliss, вы имеете в ввиду байт код, или исходный код в java формате?
Ответ
Camelion Написал:linliss, вы имеете в ввиду байт код, или исходный код в java формате?
ну в зависимости от того что вы парсите - декомпил или компил...
Ответ
Открыть спойлер

Не декомпил, насколько понимаю, и не скомпилированные файлы. На самом деле что "компилировать", ai.obj или ai.nasc - вопрос вторичный. У меня была идея сделать компилятор ai-freya.nasc в ai.obj, но размер получаемого в этом случае файла просто ужасен, и по сути он представляет собой инструкции для птс сервера, эмулировать которые в своем java сервере нет желания. Гораздо удобнее было бы загружать классы "на лету", либо делать их промежуточное представление в C++, и оттуда дергать явой через native. Что будет лучше(практичнее) - я не знаю, поэтому задал вопрос.
Ответ
Camelion Написал:У меня была идея сделать компилятор ai-freya.nasc в ai.obj, но размер получаемого в этом случае файла просто ужасен, и по сути он представляет собой инструкции для птс сервера, эмулировать которые в своем java сервере нет желания.
насколько большой? скомпиленое аи фреи весит 428мб... даже если ваш вариант будет весить пару гигов, по мне так это фигня, профит все равно будет, даже если сервер от этого буден на 5 минут дольше загружатся...
Ответ
Вот, компилируя ai.nasc в ai.obj я получу эти 428 мегабайт, чтоб затем их снова прочитать, и снова столкнуться с проблемой, как обрабатывать полученные классы, байт код или native.
Ответ
Цитата:не практичными (конвертация в java классы)
как раз таки это самый практичный способ...
Толи код будет работать уже на прямую как ява приложение, толе он будет превращаться в какой-то изжоп с которым будет работать ваша ява программа...

Ваша "обработка" в течении 2-3 секунд это тупой прогон всего в ОЗУ, когда вы заставите код работать то эти 2-3с превратятся в минуты...


Цитата:Не декомпил, насколько понимаю, и не скомпилированные файлы.
Как раз таки вы парсите декомпил)

Цитата: У меня была идея сделать компилятор ai-freya.nasc в ai.obj, но размер получаемого в этом случае файла просто ужасен,
А вы попробуйте кодировку ставить человеческую...АИ.obj весит всего 219мб...

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

Я к примеру не мучал себе яйца и сразу в Java перегнал ai.obj.
Весь компилированый код у меня весит не много.
Сервер грузится мгновенно можно сказать...
open-team.ru - Freya, HighFive...
Ответ
DiagoD, идеология вашего и моего сервера отличаются. Ваши перегнанные java классы не позволят писать
if(i0 == @my_skill_name), как минимум if (i0.equals("@my_skill_name")), либо, самое оптимальное - замена на константу, к пример if(i0 == 655350001). Но это то, как для себя константу видит сервер. Какой же разработчик аи поймет, что 655350001 эквивалентно @my_skill_name?

Открыть спойлер
Ответ
Camelion Написал:DiagoD, идеология вашего и моего сервера отличаются. Ваши перегнанные java классы не позволят писать
if(i0 == @my_skill_name), как минимум if (i0.equals("@my_skill_name")), либо, самое оптимальное - замена на константу, к пример if(i0 == 655350001). Но это то, как для себя константу видит сервер. Какой же разработчик аи поймет, что 655350001 эквивалентно @my_skill_name?

Открыть спойлер

Начнем с того, что я делаю не для кого-то, а для себя и мне не важно, что там и как, кому удобно, главное, что бы было мне это удобно...
Но если на то уж пошло, то можно написать плагин для своей IDE, который будет понимать if(i0 == @my_skill_name), но оно того не стоит просто...
Та и к тому же, i0 - это ИНТЕЖЕР и equals в нем нету)

Меня к примеру вполне устраивает вид 65536*id+lvl, к тому же какая разница как оно там будет, если всеравно ты ничего с ним делать не будешь, я к примеру для того и прикуриваю ПТС скрипты, что бы все работало как должно, а не как мне вздумается.

Цитата:Время на полную "компиляцию" (загруженные классы готовы к использованию)
я вам еще раз повторяю, это всеголиш время загрузки в ОЗУ, не более...
Почему не более?
Потому, что кроме всего этого, код(спаун мейкеры) при загрузке выполняет свои действия + при загрузке в этом вашем коде, нужно задавать значения переменным + еще куча-куча разных вещей, которые вашу загрузку буду замедлять.

У меня сервер апается примерно за минуту, но при этом он грузит ПТС датку, обрабатывает ее, спаунит(ПТС АИ мейкеров это делают) мобов.

Поверьте, вам будет глубоко какой вид имеет код, если он плохо(в нашем случае медленно + грузово) работает, к тому же мне приятней глазу видеть java, чем nasc...
open-team.ru - Freya, HighFive...
Ответ
Кто-то любит Аллу Анналовну хД

Нет бы написать действительно АИ,чтобы монстры реагировали как-то там, в драке допустим хилера пи..дить пошли вместо тупого агра,думали.

При загрузке AI PTS формирует конечный автомат с каждого класса и получается не АИ, а схема поведения на реакции внешнего мира. Вам придется в любом случае писать препроцессор.

@my_skill_name такие заменяются на константы на стадии подготовки
Ответ
Gattsu Написал:Кто-то любит Аллу Анналовну хД

Нет бы написать действительно АИ,чтобы монстры реагировали как-то там, в драке допустим хилера пи..дить пошли вместо тупого агра,думали.

При загрузке AI PTS формирует конечный автомат с каждого класса и получается не АИ, а схема поведения на реакции внешнего мира. Вам придется в любом случае писать препроцессор.

@my_skill_name такие заменяются на константы на стадии подготовки

Ну так АИ по сути это и есть автомат реагирования на внешние раздражителиBig Grin

А так то если делать мобов чересчур умными, то поверьте игрокам это не понравится и будут плеваться, что у вас оно сильно криво работает, не по оффу)

В нашем трагичном случае, нужно делать все как по гуфу(оффу), что бы эти недотепы меньше ныли.
open-team.ru - Freya, HighFive...
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Lineage][ C3 Сборки серверов + Клиент Verket 23 10,901 07-17-2024, 04:54 PM
Последний пост: AlexBayev
  новый взгляд на L2 Halifers 6 2,648 06-27-2023, 10:06 PM
Последний пост: Kampina
  Lineage 2 PTS 287 Protocol Проблема PSIFAK 1 1,374 01-25-2023, 04:08 AM
Последний пост: Phantom-Dev
  Помогите с Сервером L2Dream версии 439 для Lineage 2 Gracia Part 2 CAHTEX 4 3,371 10-01-2021, 02:40 PM
Последний пост: tenor
  Cборки серверов Lineage 2 под ключ xevilx 4 2,511 08-24-2021, 12:47 PM
Последний пост: xevilx
  Продам готовую сборку Lineage 2 HF l2starts 0 1,268 08-07-2021, 06:19 AM
Последний пост: l2starts
  Cборки серверов Lineage 2 под ключ Clyde 3 1,796 07-03-2021, 08:22 PM
Последний пост: Clyde
  Актуальная сборка Lineage 2 Esferol 7 2,666 02-03-2021, 06:39 PM
Последний пост: MorjeKor
  Вопросы по серверу Lineage 2 Shady 5 2,287 05-09-2020, 06:46 PM
Последний пост: freelu
  Набираю команду на новый проект l2-online.ru warjoker 11 3,016 04-27-2020, 03:37 AM
Последний пост: Magican

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)