Сообщений: 2,455
Тем: 53
Зарегистрирован: Apr 2010
Репутация:
19,728
yar1k0v Написал:Я задал простой вопрос, и хочу получить ответ.
Объяснять преимущества .NET я не буду, да и смысла нет.
Спасибо.
Преимущества? Это маленькая стандартная библиотека? Или может быть блокирующая сеть вплоть до 4х дотнетов? Или может синтаксический сахар в виде делегатов, ваитов, аваитов? Офигительно крутые коллекции для работы с конкурентной средой, где нельзя даже очистить очередь без костылей? Ну-ну. Я могу вспомнить и больше.
Пожалуйста.
yar1k0v Написал:Если кто может нарисовать диаграмку или скинуть .zip l2j, я буду очень счастлив. Код: svn co http://svn.l2jserver.com/trunk/L2J_Server/ .
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
Сообщений: 437
Тем: 7
Зарегистрирован: May 2011
Репутация:
2,580
Автор, я не понял что именно тебе надо, но если хочешь узнать как сервер и клиент взаимодействуют друг с другом, то вот отличная ссылка. А насчет архитектуры - это забей смотреть в л2ж, классов по 10к строк как грибов. Лучше придумай свой красивенький костыль. Просто потому что ХУЖЕ чем в л2ж уже по любому не будет. Это просто невозможно физически даже.
Сообщений: 37
Тем: 9
Зарегистрирован: Jul 2013
Репутация:
339
Еще можно посмотреть кое-какие подходы в вики L2J Server. Еще была классная вики, в которой практически полностью был описан реверс-инжиниринг, но я ее давно потерял (найдешь - скажи).
Вообще, сначала смотри ресурсы клиента, потом, как уже показали, пакеты. Можешь структуру официального сервера посмотреть (хотя он тоже убогий). А дальше придется в голове соединять все и постоянно запускать Lineage на более-менее официальном сервере, чтобы посмотреть как работают скиллы и квесты.
Сперва будет куча хардкода (или схем на бумаге), потом сгруппируешь все, позаботишься о DRY и будешь бесконечно править какие-то мелкие детальки. Затем выложишь все в свободный доступ, школьники сделают кучу форков и будут спрашивать как добавить чемпионов и крылья. Собственно, так и создавался L2J.
P.S.: Сам хотел сделать реализацию на Python, только вот запуск его даже на той же самой JVM, боюсь, съест всю память в мире (шутка, останется немного, как раз под один веб-сервер). Хотя EVE как-то работает же...
Сообщений: 70
Тем: 0
Зарегистрирован: Dec 2013
GabberBaby Написал:Автор, я не понял что именно тебе надо, но если хочешь узнать как сервер и клиент взаимодействуют друг с другом, то вот отличная ссылка. А насчет архитектуры - это забей смотреть в л2ж, классов по 10к строк как грибов. Лучше придумай свой красивенький костыль. Просто потому что ХУЖЕ чем в л2ж уже по любому не будет. Это просто невозможно физически даже.
Отличная статья, такой вопрос - к примеру
Цитата:RequestSocialAction
Назначение: вызывает анимацию социальных действий вроде смеха и т.п.
Формат:
1B
XX XX XX XX // Номер экшина
// 0x02 - Greeting
// 0x03 - Victory
// 0x04 - Advance
// 0x05 - No
// 0x06 - Yes
// 0x07 - Bow
// 0x08 - Unaware
// 0x09 - Social Waiting
// 0x0A - Laugh
// 0x0B - Applaud
// 0x0C - Dance
// 0x0D - Sorrow
// 0x0F - Анимация как при lvl-up
// 0x10 - Анимация героев
Обращение Social Action идет на Engine.dll, возможно ли изменить это на другую библиотеку, с дополнительными Soc Action,
И я так понимаю Weapon Type - это чисто на стороне клиента Engine + script.u, опять же - возможно ли связать Engine.dll с другой библиотекой где описано большее количество Weapon type, Всего их помоему 11 или 13.
Сообщений: 309
Тем: 7
Зарегистрирован: Jul 2013
Репутация:
1,233
Автор, возьми за основу исходники на C# от Rabbit'a и дорабатывай их:
http://dfiles.ru/files/75hxipsdj
Я правда не знаю какие там хроники, но думаю для разработки этого не нужно.
А всю реализацию бери у L2jserver как советуют многие.
Си шарп/ява/скала ... для проекта "два боба на ниточке" подойдет что угодно.
Сообщений: 4,694
Тем: 85
Зарегистрирован: Mar 2009
Репутация:
23,364
Erwin Написал:Отличная статья, такой вопрос - к примеру
Обращение Social Action идет на Engine.dll, возможно ли изменить это на другую библиотеку, с дополнительными Soc Action,
И я так понимаю Weapon Type - это чисто на стороне клиента Engine + script.u, опять же - возможно ли связать Engine.dll с другой библиотекой где описано большее количество Weapon type, Всего их помоему 11 или 13.
Пишите свою либу в которой хукаете необходимые функции, добавляете свою либу в секцию импорта, профит.
Fortuna - non penis, in manus non recipe.
Сообщений: 2,102
Тем: 40
Зарегистрирован: Apr 2008
Репутация:
12,296
Ashe;348405 Написал:Пишите свою либу в которой хукаете необходимые функции, добавляете свою либу в секцию импорта, профит. И идешь нахер вместе с хуками, детектясь дефолт функциями темиды xD
Сообщений: 70
Тем: 0
Зарегистрирован: Dec 2013
KilRoy Написал:И идешь нахер вместе с хуками, детектясь дефолт функциями темиды xD
Есть еще какие то варианты ?,да и вообще Engine будет без темиды, но функционал нужен чисто в плане геймплэя - новые Social action WeapType.
Сообщений: 2,102
Тем: 40
Зарегистрирован: Apr 2008
Репутация:
12,296
Есть. Разбирать функционал клиента, переписывая все функции из "енджина" таким образом, что-бы хукнутые хендлеры не палились никому. И так же их защищая из вне, чтобы гении выше овнера - не брэкнули ваши хуки и не убили весь новый "функционал".
Ну и супер вариант!!! ваще супер пупер. Писать свою ладву
Сообщений: 70
Тем: 0
Зарегистрирован: Dec 2013
KilRoy Написал:Есть. Разбирать функционал клиента, переписывая все функции из "енджина" таким образом, что-бы хукнутые хендлеры не палились никому. И так же их защищая из вне, чтобы гении выше овнера - не брэкнули ваши хуки и не убили весь новый "функционал".
Ну и супер вариант!!! ваще супер пупер. Писать свою ладву
Цена сего чуда - в PM
|