Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Конвертор геодаты
#1
Данный конвертер был написан уже очень давно мной, но только сейчас дошли руки его выложить Smile
Умеет конвертить dat -> l2j и l2j -> dat.
Единственный минус - не создает заголовок при конвертации в дат (18 первых байт), поэтому геодата получается "не полной", хоть и отрабатывает свое. Кому надо - исправит это недоразумение Smile

Скачать исходник + компил: клац-клац
В исходнике есть описание двух форматов. Кому лень, можно прочитать тут.

Замечания по формату

Пример использования:
Код:
java -cp ./conv.jar conv.Starter -f ./geodata -o ./output
./geodata - папка, в которой лежит геодата, которую нужно переконвертировать
./output - папка, в которую будет сохранена переконверченая гео.

Have fun!
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
Ответ
#2
Кстати, если блок из Flat перевести в Complex в G3D Editor, то размер файла увеличивается. Обратное преобразование уменьшает конечный файл.

Очень жаль что вы тоже не знаете точного строения заголовка PTS гео. Я бы пофиксил свой G3D Editor.

Всё это спокойно умеет делать конвертер от Akumu который он продаёт по 100 рублей в руки, включая кривой заголовок у PTS геодаты. И как бы он не писал, что пофиксил это - возможно, но этот фикс теперь крашит приложение. Big Grin
Ответ
#3
Donatte Написал:Кстати, если блок из Flat перевести в Complex в G3D Editor, то размер файла увеличивается. Обратное преобразование уменьшает конечный файл.

Очень жаль что вы тоже не знаете точного строения заголовка PTS гео. Я бы пофиксил свой G3D Editor.

Всё это спокойно умеет делать конвертер от Akumu который он продаёт по 100 рублей в руки, включая кривой заголовок у PTS геодаты. И как бы он не писал, что пофиксил это - возможно, но этот фикс теперь крашит приложение. Big Grin

Что значит свой? Его автор дядька Forsaiken. Вы Форсейкен?
Ответ
#4
Donatte Написал:Кстати, если блок из Flat перевести в Complex в G3D Editor, то размер файла увеличивается. Обратное преобразование уменьшает конечный файл.
Увеличивается, потому-что добавляется еще 64 ячейки (64*2 = 128 байт в плюсе). Ну и перевод в из комплекса в флат минус 126 байт. Для ПТС минус 124 байта.

Donatte Написал:Очень жаль что вы тоже не знаете точного строения заголовка PTS гео. Я бы пофиксил свой G3D Editor.
По поводу хедера: есть некоторые мысли, некоторые элементы заголовка уже разобрал; когда закончу выложу в паблик, если надо.

Donatte Написал:Всё это спокойно умеет делать конвертер от Akumu который он продаёт по 100 рублей в руки, включая кривой заголовок у PTS геодаты. И как бы он не писал, что пофиксил это - возможно, но этот фикс теперь крашит приложение. Big Grin
Значит уже не будет продавать Smile Или точнее не будут покупать.

ANZO Написал:Что значит свой? Его автор дядька Forsaiken. Вы Форсейкен?
Исходник в открытом доступе, ничто не мешает сделать форк и считать этот форк своим Smile
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
Ответ
#5
ANZO Написал:Что значит свой? Его автор дядька Forsaiken. Вы Форсейкен?

Во-первых, я его частично исправил. Был ряд багов.
Во-вторых, вырезал всё ненужное, на мой взгляд.

И наконец, шарить я его под своими копирайтами не собираюсь в паблик. Да и вообще шарить не собираюсь. Поэтому, он исключительно "мой"!

Pointer*Rage Написал:По поводу хедера: есть некоторые мысли, некоторые элементы заголовка уже разобрал; когда закончу выложу в паблик, если надо.

Выложите в этой теме, если не затруднит.
Ответ
#6
Pointer*Rage Написал:Исходник в открытом доступе, ничто не мешает сделать форк и считать этот форк своим Smile

Ну с этой точки зрения я написал столько "своего" софта что у меня уже миллиарды должны были быть Big Grin
Ответ
#7
Donatte Написал:Выложите в этой теме, если не затруднит.

Пока, то что разобрал.
Структура заголовка у DAT:
byte -- сохраняется в массиве (регион по x)
byte -- сохраняется в массиве (регион по y)
short (word) -- не сохраняется (всегда 0x0080, возможно макс. число слоев)
short (word) -- не сохраняется (всегда 0x0010, дискретность клетки)
int (dword) -- сохраняется в массиве (общее количество ячеек для комплекса и слоев для мультилевела)
int (dword) -- не сохраняется (количество всех блоков, кроме multilevel)
int (dword) -- не сохраняется (количество flat блоков)

Первые два байта сохраняются в массив и после чекаются на ренж (результат чека сейвится в массив сдвиг от второго байта 7):
Код:
first <= 17 ||
first == 18 && second >= 23 ||
first == 19 && (second == 18 || second == 24) ||
first == 20 && second >= 23 ||
first == 21 && (second == 18 || second == 23) ||
first == 22 && (second == 22 || second == 23);
На следующий байт (сдвиг 8 от второго байта) в массиве кладем ноль.

ЗЫ: под массивом я имею ввиду мемори-хранилище в птске Smile
ЗЫЫ: разобранный листинг дизасма не буду выкладывать, т.к. не вижу смысла

Тестер ячеек:

Have fun!
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
Ответ
#8
Обновил структуру постом выше. Большое спасибо r00tk1d1 :)
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Формат геодаты, PTS GF kotelok 2 3,152 03-18-2019, 07:11 PM
Последний пост: kotelok
  Установка геодаты PainTr 14 6,736 07-13-2016, 02:11 PM
Последний пост: Soty
  Ищу квадрат геодаты Interlude singer 5 2,716 05-09-2015, 03:10 PM
Последний пост: singer
  Нужен билдер геодаты HF P5. Phantom-Dev 0 1,791 02-03-2015, 06:25 PM
Последний пост: Phantom-Dev
  Экономия геодаты в 150 мегабайт Rolfer 2 2,331 04-24-2014, 02:33 AM
Последний пост: n3k0nation
  После включения геодаты некоторые NPC пропадают otsegosnake 15 5,240 09-19-2013, 05:15 PM
Последний пост: otsegosnake
  Нужна помощь по генерации ГеоДаты Pythonic 20 6,593 05-18-2013, 07:25 PM
Последний пост: darkevil
  Квадрат Геодаты HighFive с РБ Freya invalid 13 4,858 11-21-2012, 08:39 AM
Последний пост: darkevil
  Установка геодаты. Elemberg 7 3,709 11-05-2012, 06:26 PM
Последний пост: Elemberg
  Генератор геодаты из клиента Respect 1 3,089 08-11-2012, 04:07 PM
Последний пост: darkevil

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


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