понедельник, 30 января 2017 г.

Arcanum Library

(картинка для привлечения внимания)

Выкладываю свои разработки на тему Арканума. На данный момент реализованы следующие фичи:
  • Парсинг файлов игровых объектов : MOB, PRO, inSEC.
  • Парсинг (SEC) файлов : полностью кроме блока крыш (см. ниже)
  • Парсинг файлов JMP, PRP, FACWALK, MES, DLG, ART
ссылка на github под катом

воскресенье, 11 декабря 2016 г.

[unity3d] UE2 VertMesh Importers

Давненько я ничего не писал!

По многочисленным просьбам выкладываю ссылку на конвертер и импортер VertMesh файлов из Unreal Engine 2. В данном формате содержится большая часть анимации умений для игры Lineage2.



Ссылка на GitHub под катом:

понедельник, 1 августа 2016 г.

Arcanum файлы : SEC (часть вторая)

Стены. Сегодня я нашел время продолжить работу над sec файлами. Рассмотрим OBJECT TYPE 0 (WALL).
Если бы стены могли сдерживать наш рост, все крестьяне были бы карликами, а короли — великанами.

Создадим пару зданий.





На данной картинке 48 обьектов (0х30). Считаются внутренние и внешние стены. 

Если предыдущий OBJECT TYPE SCENERY имел следующую структуру,

04BYTE HEADER
24BYTE PRO_GUID -> 4BYTE PRO_ID
24BYTE OBJ_GUID -> 4BYTE GLOBAL_CHANGE_FLAG
04BYTE PRO_TYPE
11BYTE SYS_FLAG
04BYTE LOCATION FLAG
04BYTE OFFSET_X (OPTIONAL)
04BYTE OFFSET_Y (OPTIONAL)
04BYTE DELTA_X
04BYTE DELTA_Y
04BYTE FLAGS
ХХ + PROPERTY (OPTIONAL)

= 83 BYTE OR 91 /w offset

То сейчас всё гораздо проще.


04BYTE HEADER
24BYTE PRO_GUID -> 4BYTE PRO_ID
24BYTE OBJ_GUID -> 4BYTE GLOBAL_CHANGE_FLAG
04BYTE PRO_TYPE
14BYTE SYS_FLAGS
01BYTE DIRECTION FLAG
04BYTE FLAGS 0
04BYTE OFFSET_X (OPTIONAL)
04BYTE OFFSET_Y (OPTIONAL)
04BYTE FLAGS 1

Рассмотрим внимательнее:


77 00 00 00 01 00 00 00 72 F3 5D 01 FD 03 00 00
02 00 00 00 6A F3 5D 01 E2 9D E9 FE 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 03 00 03 00 04 00 00 00  | 00 - WALL
00 00 00 00 00 00 00 88 C1 12 01 06 00 00 00 02
00 00 00 00 40 00 00

77 00 00 00 01 00 00 00 8A F3 5D 01 00 04 00 00  | 00 04 00 00
02 00 00 00 82 F3 5D 01 52 15 61 2F 00 00 00 00
00 00 00 00 D4 58 5D 8E A1 AF 5B 47 A4 9E 7A 1F
B9 D6 61 26 00 00 00 00 03 00 03 00 04 00 00 00  | 00 - WALL
00 00 00 00 00 00 00 88 01 10 01 02 00 00 00 02

00 00 00 00 40 00 00

Координаты тайлов стен выделены зеленым и ведут отсчет от LOC 0,0.