Увеличение максимального уровня в Interlude - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Пользователи Календарь Все разделы прочитаны
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II > Обучающие статьи

Обучающие статьи Собрание статей, мануалов и гайдов помогающих в создании и администрировании сервера Lineage 2.
Описание темы:Максимальный уровень 85 и выше с полной поддержкой клиента!

Ответ
Опции темы
Непрочитано 08.07.2013, 00:08   #1
Пользователь

Автор темы (Топик Стартер) Увеличение максимального уровня в Interlude

Ход мыслей смотрите в теме «Таблица опыта в клиенте» (http://forum.zone-game.info/showthread.php?t=29982)

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



Дело в том, что в клиенте Interlude уже заложены значения опыта для уровней выше 80, но они совершенно не совпадают со значениями опыта в базах знаний (например, http://l2wiki.com/Character_Level).

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

В сервере на Java (я правил исходный код Silentium, основанный на Acis) таблица опыта хранится в файле Experience.java (\gameserver\model\base\Experience.java).

Таблица опыта — список значений опыта, при достижении которых персонаж получает новый уровень. В оригинальном коде она заканчивается так:
4200000000L, // level 80
6299994999L
Code: Java
Из комментария понятно, что предпоследняя строка — уровень 80, следующая, по всей видимости, предел Interlude — 80 и 99.99%.

Добавим в игру 85 уровней.

Сперва заменим вышеприведенные строки в таблице опыта на следующие:
4200000000L, // level 80
6300000000L, // level 81
10500000000L, // level 82
16800000000L, // level 83
27300000000L, // level 84
44100000000L, // level 85
71400000000L // level 86
Code: Java
Любопытно, что значения опыта после 81 уровня — не что иное, как сумма опыта двух предыдущих уровней: 10500000000 (уровень 81) + 6300000000 (уровень 82) = 16800000000, что соответствует уровню 83. Видимо NC Soft не стали задумываться и заполнили неиспользуемые уровни нехитрым способом.

Что это нам дает? Это значит, что мы можем таким же способом (суммой двух предыдущих уровней) рассчитать опыт хоть до 99 уровня (внимание: я не проверял поведение выше 86 уровня).

Итак, когда мы знаем, как рассчитать опыт и обновили таблицу, изменим максимально доступный уровень. Сделать это просто: чуть ниже в коде есть строка задающая первый недоступный уровень (для 80 это 81, для 85 будет 86):
public final static byte MAX_LEVEL = 81;
Code: Java
Заменим значение на 86:
public final static byte MAX_LEVEL = 86;
Code: Java
На этом все. Компилируем сервер, запускаем и тестируем. Возможно, вам удастся подобрать значения поточнее: эти, на мой взгляд, слишком «круглые» для корейских значений (:.

Напоследок скажу, что значения опыта очень большие — докачаться до 85 уровня в Interlude будет тяжело, поэтому мой совет такой: если вы хотите добавить новые уровни на Interlude, позаботьтесь о новых местах прокачки или сделайте перерасчет рейтов на опыт после 80 уровня (можно добавить в функции добавления и вычитания опыта специальный множитель, увеличивающий число: так процент в клиенте будет тикать веселее, а числа в чате не будут в километр длиной).

Благодаря товарищу MrShyr у нас есть достоверные данные до 100 уровня!
//level 80
4200000000,
6300000000,
10500000000,
16800000000,
27300000000,
44100000000,
71400000000,
115500000000,
186900000000,
302400000000,
//level 90
489300000000,
791700000000,
1281000000000,
2072700000000,
3353700000000,
5426400000000,
8780100000000,
14206500000000,
22986600000000,
37193100000000,
100000000000000
Code: Java

Последний раз редактировалось Ashe; 01.03.2014 в 03:15. Причина: Добавлена таблица до сотого уровня от MrShyr
freelu вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 08.07.2013, 02:40   #2
Пользователь

По умолчанию Re: Увеличение максимального уровня в Interlude

подобное на уг порталах давно уже описано было.
KillMozg вне форума Отправить сообщение для KillMozg с помощью Skype™ Ответить с цитированием
Непрочитано 08.07.2013, 04:59   #3
Пользователь

Автор темы (Топик Стартер) Re: Увеличение максимального уровня в Interlude

Если бы эти цифры лежали на виду, я бы не стал их подбирать. Даже если где-то и было — это не важно: теперь есть здесь и в хорошем виде (на этом форуме я встретил как минимум 7 тем с этим вопросом).
freelu вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 16.08.2013, 08:01   #4
Аватар для MrShyr
Супергерой

По умолчанию Re: Увеличение максимального уровня в Interlude

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

Добавлено через 5 минут
З.Ы. Если собрались тюнить уровни, позаботьтесь о скилах, а именно о Magiclvl, который как правило на IT не качается после 74 или 76 (точно не помню) и зависит как правило от уровня проточки скила (до 85 качится если память не изменяет - хотя в случае 99 лвл это уже пофиг), что влечет за собой полное *непрохождение* магических скилов на персонажей высокого уровня.

Последний раз редактировалось MrShyr; 16.08.2013 в 08:07. Причина: Добавлено сообщение
MrShyr вне форума Отправить сообщение для MrShyr с помощью ICQ Ответить с цитированием
Ответ

Метки
interlude, максимальный уровень, таблица опыта, уровень


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Изменить IpAdress C5 Oath Of Blood за денюжку Krasavella Рынок / Marketplace 21 20.02.2013 08:48
Сборка сервера High Five Elizabet Курилка / Yak floor 48 26.04.2011 09:57
Создание сета Virgina Серверная часть 3 28.02.2011 08:05
itamename-e.dat UFODriverr Lineage II 4 25.04.2010 09:37
Изменение максимального уровня Bumerok Серверная часть 17 20.04.2010 11:47


© 2007–2019 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 02:08. Часовой пояс GMT +3.

Вверх