Пытаюсь решить две связанные проблемы на сервере основанном на L2J Mobius 520( Classic Mode) но все попытки неудачны.
## Описание проблем
### 1. Отображение времени баффов как 0 секунд
На сервере активируются баффы (например, Acumen ID:1085, Wind Walk ID:1204), но в клиенте вместо реального времени действия они всегда показывают **0 секунд**. При этом баффы работают корректно (действуют нужное количество времени и снимаются автоматически) — только визуальное отображение времени сломано.
### 2. Только одна иконка баффа вместо нескольких
Когда активируется несколько разных баффов (например, Acumen + Wind Walk, или два баффа Acumen с разной длительностью), в клиенте отображается **только одна иконка** (чаще всего последнего активированного баффа). Остальные баффы работают на сервере (логи подтверждают), но не отображаются в интерфейсе.
## Технические детали сервера и клиента
- **Сервер**: L2J Mobius (Classic Mode), ServerConfig.SERVER_LIST_TYPE = 0x400 (классический режим включён)
- **Клиент**: Lineage 2 Classic (Тайваньская версия), конфиг L2.INI настроен на отображение времени
- **Проверенные баффы**: Acumen (1085), Wind Walk (1204), а также комбинации разных баффов и дублированные баффы с разной длительностью
## Что уже сделано для решения
### 1. Адаптация серверных пакетов (все ключевые файлы исправлены)
- **AbnormalStatusUpdate.java**:
- Включено преобразование времени в секунды (без перевода в миллисекунды)
- Убраны флаги маркера времени (직접 writeInt, без дополнительных байтов)
- Фильтрация баффов исправлена для классического режима (все активные баффы добавляются в список)
- **PartySpelled.java**:
- Синхронизировано время с AbnormalStatusUpdate (секунды, writeInt)
- Исправлена коллекция баффов для групповых игроков
- **ExAbnormalStatusUpdateFromTarget.java**:
- Адаптировано время для пакета наблюдателя (цель игрока)
- Фиксирована отправка пакета самому игроку (при таргете на себя)
### 2. Настройка клиента
- В L2.INI добавлены все необходимые ключи:
```ini
[BuffTimeConfig]
ShowBuffTime=1
ShowDebuffTime=1
ShowClassicBuffTime=1
UseClassicBuffTimeFormat=1
BuffTimeDisplay=1
### 3. Логи сервера (подтверждают корректную отправку данных)
Все логи показывают, что сервер отправляет **все активные баффы** с правильным временем в секундах:
[Classic Mode Status Debug] Classic Mode: true, Total Active Statuses: 4
[Classic Mode Status Debug] Status ID: 1085, Skill Name: Acumen, In Use: true, Visible: true, Remaining Time: 799 seconds
[Classic Mode Status Debug] Status ID: 1204, Skill Name: Wind Walk, In Use: true, Visible: true, Remaining Time: 804 seconds
[Classic Mode Status Debug] Status ID: 1085, Skill Name: Acumen, In Use: true, Visible: true, Remaining Time: 1199 seconds
[Classic Mode Status Debug] Status ID: 1204, Skill Name: Wind Walk, In Use: true, Visible: true, Remaining Time: 1200 seconds
[Classic Mode Time Debug] Final Sent Statuses: 4
[Classic Mode Time Debug] Status ID: 1085, Sent Time: 799 (Unit: seconds, integer value)
[Classic Mode Time Debug] Status ID: 1204, Sent Time: 804 (Unit: seconds, integer value)
[Classic Mode Time Debug] Status ID: 1085, Sent Time: 1199 (Unit: seconds, integer value)
[Classic Mode Time Debug] Status ID: 1204, Sent Time: 1200 (Unit: seconds, integer value)
```
- Количество отправленных баффов совпадает с активными (4 в примере выше)
- Время передаётся без маркеров (соответствует протоколу Classic)
- Пакеты отправляются игроку, его призыву и группе
## Что ещё проверял
- Замена异常类型ID на универсальное значение 1 (чтобы клиент точно распознал баффы)
- Тестирование баффов разной длительности (30 секунд, 5 минут, 20 минут)
- Смена протокола классического режима (0x200, 0x400, 0x800)
- Проверка на дублирование ID баффов (все баффы имеют уникальные ID)
- Отключение фильтрации иконок в клиенте (если такие настройки есть)
## Проблемы остаются
1. Время всех баффов отображается как 0 секунд (независимо от длительности)
2. При активации нескольких баффов — в клиенте показывается только одна иконка (остальные работают, но не отображаются)
Возможно, я вообще выбрал неверное направление решения!!!
Спасибо