IPB

Здравствуйте Гость ( Вход | Регистрация )

Reply to this topicStart new topicStart Poll

Каскадный · [ Стандартный ] · Линейный

> Распаковка базы Database(lmp).res, Форматы *.?db

CAHEK7
post Четверг, 11 Марта 2004, 22:56
Отправлено #1


Conjurer
Group Icon

Группа: Members
Сообщений: 214
Регистрация: 20-Мар-03
Из: Domodedovo
Пользователь №: 619



Формат idb

Предисловие smile.gif
Разбирая очередной раздел наткнулся на такую вещь. Некоторые неиспользуемые запакованные поля(строка нулей) используются в других предметах (например в Armors поле 0х19 пустое, а в QuickItems закл прописан). Вот я и думаю что ниваловцы выложили не полную базу (некоторые поля вообще не прописали в TXT). Возможно они их просто и не использовали.
Я вот что думаю, что некоторые странные поля могут быть параметрами не прописанными в их исходных текстовиках, но работающие (как тоже поле 0х19, я думаю что в некоторых разделах там должно быть заклинание. или поле 0х02 возможно это код предмета, т.к. в Material он используется явно, а в остальных принимает какие-то странные значения)
Посмотрев сингловские исходники я заметил ту же проблему с Unknow. Возможно это часть параметров не объявленных в релизе DataBaselmp, которые выложили ниваловцы.
Так же я нашел одно поле в Armors (Stats Modifiers)которое 0x1A. (похожее поле есть в Weapons 0х1С, но это только догадки) Оно длинной в 8 байт и 7 из них не используются, а один отвечает за stealth. И запаковывается оно сюдя по всему по ключевому слову(в данном случае stealth), поэтому я думаю что там еще есть 7 необъявленных параметров...
Что это запараметр Crippled. За что он вобще отвечает в игре?

Введение smile.gif smile.gif
QUOTE
в *.?db всё имеет схожий формат
{
byte: идентификатор или просто значение-разделитель  -  не используется
long: размер всего файла
byte: идентификатор или просто значение-разделитель  -  не используется
Далее идут блоки. Каждый блок состоит из
   long: размер блока. Блок - текстовый запакованный файл(Materials, Weapons, Armors).
   И записей (строк в текстовом файле). Которые имеют такую структуру
      byte: идентификатор или просто значение-разделитель  -  не используется
      short или long: размер записи  -  чтоб получит реальный размер надо сделать так: если short размер = short / 2, если long то размер = (long-1) / 2 ; Сначала надо читать 2 байта и если там будет значение больше 255 то значит там long
         Далее параметры в записи идут так-  byte: ID параметра, byte: размер параметра, long(float, string) параметр.
}

Комментарии:     
Все реальные размеры следует получать делением значения размера на 2


Описывать параметры я буду так: ID, тип, комментарий.

Использовал типы:
{
Long- целые 4 байта со знаком

Float- число с плавающей точкой

Array- идет подрят несколько значений Float, после ID поля указан размер всей записи. Количество параметров Float получаем делением размера на 4. 

8 байт- просто следуют 8 байтовых значений со знаком

String- Строка, заканчивающаяся двоичным нулем
}


ITEMS.IDB
QUOTE
Для всех записей в файле
0x00 String, имя

Это для материалов
0x01 String, тип предмета
0x02 String, Code Name
0x03 Long иди Float, Не определен
0x04 Float, Price
0x05 Float, Weight
0x06 Float, Mana
0x07 Long, Slots
0x08 Float, Durability
0x09 Long, Skill
0x0A Float, Damage
0x0B Array, Absorbition
0x0C Float или Long, Не определен
0x0D Byte, Shop - это запакованный параметр. Там доступность в магазинах определяется положением битов.

Это общее для всех предметов (не материалов)
0x01 String, тип предмета
0x02 Float, кодовое имя или кодовый тип предмета
0x03 String, материал
0x04 Long или Float, возможно Figure Names
0x05 Long, Texture Type Index
0x06 Long,  Texture Type Index 2
0x07 Float, Price
0x08 Float, Weight
0x09 Float, Size
0x0A Float, Mana
0x0B Long, Slots
0x0C Float, Durability
0x0D Long, Components
0x0E Byte, Shop - это запакованный параметр. Там доступность в магазинах определяется положением битов.
0x0F Byte, Deconstructable

Из вышесказанного следует, что в некоторых предметах в исходных текстах не указаны все эти поля, но они реально существуют у всех предметов, хоть квестовые, хоть жезлы, хоть трофеи.

затем идут параметры индивидульные для разных типов предметов ID начинатеся с 0x15 и могут ити хоть до 0x1F и далее (зависит от количества индивидуальных полей)

Специальные поля для Weapons
0x15 Long, Actions
0x16 8 байт чего-то, возможно характеристик как в Armors 0x1A
0x17 Float, Range
0x18 Float, DamageMin для получения необходимо умножить на 10
0x19 Float, Additional Damage  этого параметра я не видел но для получения DamageMax надо сложить DamageMin и этот параметр (тоже умножается на 10)
0x1A Array, DamageProportions
0x1B String, Возможно Spells
0x1С 8 байт, см 0х16
0x1D Float, Attack \
0x1E Float, Defence\ эти два параметра распаковываются в один StatsModifers

Специальные поля для Armors
0x15 Array, Main (Absorbitions)
0x16 Array, Additional (Absorbitions)
0x17 Long, ApplyWounds
0x18 Long, Wear Order
0x19 String, Возможно Spells
0x1A 8 байт, Stats Modifers. Каждый байт отвечает за один параметр (8-й за Stealth)

Специальные поля для QuickItems
0x15 Long, Не определен
0x16 Long, Skilll
0x17 Float, Damage
0x18 Long, DamageType (0-piercing, 1-slashing, 2-bludgeoning, 3-termal, 4-chemic, 5-electric, 6-general)
0x19 String, Spells
0x1A String, Не определен
0x1B 8 байт чего-то, возможно характеристик как в Armors 0x1A

Специальные поля для QuestItems
0x15 Long, ScriptID
0x16 String, Zones. Там разделитель 0x01 вместо запятой в исходниках.

Специальные поля для LootItems
0x15 Long, Не определен
0x16 Long, Не определен
0x17 Long, Не определен

Надеюсь я описал хоть немного понятно...

Сообщение отредактировал CAHEK7 - Четверг, 11 Марта 2004, 23:12


--------------------
Что есть то есть, того что было не вернуть, не изменить ни дня.
Черный Обелиск "Дом желтого сна (часть 2)"
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
sun
post Пятница, 12 Марта 2004, 10:25
Отправлено #2


Advocatus Diaboli
Group Icon

Группа: Add-on Developers
Сообщений: 1,563
Регистрация: 22-Дек-01
Пользователь №: 10



CAHEK7
Для всех таблиц предметов, кроме материалов, ядро игры использует один общий базовый класс предметов.
Структура таблиц в базах данных одиночной игры и сетевой, одинакова. В базе данных, что выложил Нивал, отсутствуют некоторые поля в таблицах, которые не используются игрой, но есть в базовых классах и в расширенных параметрах предметов, а также есть поля, которые присутствуют, но все равно не используются игрой. В распакованной базе данных для одиночной игры, что мы выложили, мы, так же как и в сетевой базе решили не включать ненужные поля.

Я приветствую такую работу! Спасибо, продолжай, интересно будет почитать. Я постараюсь включить твои изыскания в нашу Энциклопедию.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
CAHEK7
post Пятница, 12 Марта 2004, 22:32
Отправлено #3


Conjurer
Group Icon

Группа: Members
Сообщений: 214
Регистрация: 20-Мар-03
Из: Domodedovo
Пользователь №: 619



Вот пример программы, которая это всё делает.
Надеюсь тут глюков поменьше будет...
Для работы необходим файл msvbvm60.dll. Если у вас не WinXP, то придется его скачать тут.
Исправил глюк. Программа не показывалась в панели задач.
И еще глюк с путем распаковки и с записью Material.txt(там был лишний перевод строки)...

Сообщение отредактировал CAHEK7 - Воскресенье, 14 Марта 2004, 22:11

Присоединённые файлы
Присоединённый файл  IdbUnpacker.rar ( 24кб ) Кол-во скачиваний: 627


--------------------
Что есть то есть, того что было не вернуть, не изменить ни дня.
Черный Обелиск "Дом желтого сна (часть 2)"
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Jet
post Суббота, 13 Марта 2004, 01:48
Отправлено #4


Honor Guard
Group Icon

Группа: Add-on Developers
Сообщений: 1,063
Регистрация: 23-Фев-02
Из: gipat.ru
Пользователь №: 116



QUOTE(CAHEK7 @ 12 Марта 2004, 22:32)
Вот пример программы, которая это всё делает.
Надеюсь тут глюков поменьше будет...
Для работы необходим файл msvbvm60.dll. Если у вас не WinXP, то придется его скачать тут.

VBRUN Лучше уж качать отсюда: Microsoft


--------------------
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
CAHEK7
post Вторник, 16 Марта 2004, 17:49
Отправлено #5


Conjurer
Group Icon

Группа: Members
Сообщений: 214
Регистрация: 20-Мар-03
Из: Domodedovo
Пользователь №: 619



PRINTS.DB
QUOTE
Файл имеет стандартный формат, который описан в первом сообщении темы.
А теперь разбор полей:
ID 0x01 String, TerrainType

Далее идут массивы параметров они имеют следующую структуру:

ID : Byte идентификатор массива параметров
Size : Byte размер массива параметров

     ID : Byte идентификатор параметра 1
     Size : Byte размер параметра 1
     Parametr : Long (Float, String) значение параметра 1

     ID : Byte идентификатор параметра 2
     Size : Byte размер параметра 2
     Parametr : Long (Float, String) значение параметра 2

     ID : Byte идентификатор параметра 3
     Size : Byte размер параметра 3
     Parametr : Long (Float, String) значение параметра 3
  ......................................................................................
     ID : Byte идентификатор параметра n
     Size : Byte размер параметра n
     Parametr : Long (Float, String) значение параметра n


Вот эти параметры:

ID 0x02 - Массив параметров Clear Weather
         0x01 Float, Opacity (*100)
         0x02 Long, Lifetime (\15)
         0x03 Long, Fadeout (\15)

ID 0x03 - Массив параметров Weather Precipitation
         0x01 Float, Opacity (*100)
         0x02 Long, Lifetime (\15)
         0x03 Long, Fadeout (\15)

Этот параметр только для FootPrints:

ID 0x0A - Массив параметров Bloody
         0x01 Float, Opacity (*100)
         0x02 Long, Lifetime (\15)
         0x03 Long, Fadeout (\15)
Я еще заметил ошибку связанную с ним. У меня он неверно запаковывался, там все параметры были 60.


Также у меня почемуто запаковывался пустой элемент, у которого нет названия и все параметры = "0". Его не было в исходных текстах

Вот вроде все... Разбираю дальше, а теперь вторая утилита из пакета. Распаковывает описанный выше формат smile.gif
Все комментарии по всем утилитам можете оставлять тут: "Распаковщик *.idb"

Сообщение отредактировал CAHEK7 - Суббота, 20 Марта 2004, 23:02

Присоединённые файлы
Присоединённый файл  dbUnpacker.rar ( 17.68кб ) Кол-во скачиваний: 452


--------------------
Что есть то есть, того что было не вернуть, не изменить ни дня.
Черный Обелиск "Дом желтого сна (часть 2)"
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Jet
post Суббота, 20 Марта 2004, 17:09
Отправлено #6


Honor Guard
Group Icon

Группа: Add-on Developers
Сообщений: 1,063
Регистрация: 23-Фев-02
Из: gipat.ru
Пользователь №: 116



-


--------------------
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
CAHEK7
post Суббота, 20 Марта 2004, 19:17
Отправлено #7


Conjurer
Group Icon

Группа: Members
Сообщений: 214
Регистрация: 20-Мар-03
Из: Domodedovo
Пользователь №: 619



PERKS.PDB
QUOTE
Файл имеет стандартный формат, который описан в первом сообщении темы.
А теперь разбор полей:

Perks

ID 0x00 String, Name
ID 0x01 String, Code
ID 0x02 Long, Texture Type Index
ID 0x0A String, Perk
ID 0x0B String, Skill
ID 0x0C Не определен
ID 0x0D Не определен
ID 0x0E Long, SL
ID 0x0F Float, Str
ID 0x10 Float, Dex
ID 0x11 Float, Int
ID 0x12 Long, Cost
ID 0x13 Long, Modifier
ID 0x14 Long, Mult
ID 0x15 Long, Add
ID 0x16 Не определен
ID 0x17 Long, Perk Exclusive


Skills
ID 0x00 String, Name
ID 0x01 String, Code
ID 0x02 Long, Texture Type Index

ID 0x0A Массив параметров(описан в пердыдущем сообщении) Base Attributes
       ID 0x01 String

А вот и прога:

Сообщение отредактировал CAHEK7 - Суббота, 20 Марта 2004, 20:38

Присоединённые файлы
Присоединённый файл  pdbUnpacker.rar ( 18.13кб ) Кол-во скачиваний: 429


--------------------
Что есть то есть, того что было не вернуть, не изменить ни дня.
Черный Обелиск "Дом желтого сна (часть 2)"
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Jet
post Воскресенье, 28 Марта 2004, 21:19
Отправлено #8


Honor Guard
Group Icon

Группа: Add-on Developers
Сообщений: 1,063
Регистрация: 23-Фев-02
Из: gipat.ru
Пользователь №: 116



-


--------------------
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ALtair
post Понедельник, 10 Мая 2004, 14:43
Отправлено #9


Wizard
Group Icon

Группа: Members
Сообщений: 473
Регистрация: 10-Сен-02
Из: Москва, черт ее дери.
Пользователь №: 554



В догонку распаковщики квестовой и спелловой БДей.

Если найдете глюки, скажите wink.gif

Присоединённые файлы
Присоединённый файл  qs_parsers.rar ( 45.54кб ) Кол-во скачиваний: 440


--------------------
Duty is everything, the greatest of joys, the deepest of sorrows.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ELF
post Понедельник, 31 Мая 2004, 22:11
Отправлено #10


Wizard
Group Icon

Группа: Members
Сообщений: 859
Регистрация: 14-Авг-03
Из: Краснодар
Пользователь №: 878



Я копался в форматах ?DB и нашёл некоторые моменты, которые не говорил САНЕК7. В частности это касается того, что в конце каждой БДи есть "хвостик", который у них всех одинаковый и размер строчек рассчитывать надо немного иначе. smile.gif

Вот ещё раз формат ?DB:
CODE
X+0000 - ID файла [1Байт];
X+0001 - Размер файла [4Байта];
 Y+0000 - ID-номерок блока [1Байт];
 Y+0001 - Размер блока [4Байта];
   Z+0000 - ID строки [1Байт];
   Z+0001 - Размер строки [*];
     T+0000 - ID-номерок параметра [1Байт];
     T+0001 - Размер параметра [1Байт];
     T+0002 - Сам параметр;
...
E+0000 - 00,00,02,0C,02,08,01,00,00,00.

Далее слово "Пред" обозначает "Предыдущий"...

X - Адрес начала файла:
Всегда равен 0000 smile.gif ;

Y - Адрес очередного блока:
Если блок первый, то равен 0005 smile.gif , а если не первый, то вычислается так:
(РазмерПредБлока/2)+АдресПредБлока+РазмерЗаголокаПредБлока,
РазмерЗаголовкаПредБлока=5;

Z - Адрес очередной строки:
Если строка первая, то равен "АдресБлока+РазмерЗаголовкаБлока", иначе:
(РазмерПредСтроки/2)+АдресПредСтроки+РазмерЗаголовкаПредСтроки;

T - Адрес очередного параметра:
Если параметр первый, то равен "АдресСтроки+РазмерЗаголовкаСтроки", иначе:
(РазмерПредПараметра/2)+АдресПредПараметра+РазмерЗаголовкаПараметра
РазмерЗаголовкаПараметра=2;

E - Адрес после блока файла.
Равен (РазмерФайла/2)+РазмерЗаголовкаФайла,
РазмерЗаголовкаФайла=5, РазмерХвостаФайла=10.

И ещё один нюанс:
[*] - самый каверзный параметр. Расчитывается так:
Считываем аж 4 байта!!! ohmy.gif Если второй байт больше 0, третий байт не равен 2, а четвёртый байт равен 0, то размер длины строки long, иначе размер длины строки byte.

Естесственно, как писал Санёк7, Размеры типа long надо отнимать на 1 и делить на 2, а размеры типа byte надо просто делить на 2. Хотя в обоих случаях можно просто обойтись целочисленным делением на 2. wink.gif

=============================
М-да, зделал DBMerger.exe и уже его 2 раза успели скачать, а за день даже никто не сказал, что он не работал! ohmy.gif blush.gif (Хотя бы в PM написали бы).
Прошу прощения, за нерабочую программу. Теперь сделал вторую версию. На этот раз точно проверил её работоспособность. Работает вроде.

DBMerger2 может объединить IDB, LDB, PDB, DB, SDB, UDB - остальные ещё не проверял. С его помощью станет гораздо легче объединять MOD'ы. wink.gif Уже смог с её помощью объединить Evil-MOD с EI-MOD'ом.

Параметры DBMerger2 на примере:
DBMerger2.exe EI-MOD\items.idb Evil-MOD\items.idb New\items.idb -info
В итоге получим объединённую БДю. Если в EI-MOD'е и Evil-MOD'е будут одинаковые вещи (а они будут), то в объединённую БДю попадут вещи из Evil-MOD'а, т.к. он написан вторым. smile.gif Параметры -info заставляет программу очень подробно описывать свои действия.

Размер проги большой, т.к. она работает только в DEBUG конфигурации. В RELEASE конфигурации она уже работает неверно, непонятно почему. unsure.gif А никто не знает, почему такое может быть в Visual C++? huh.gif (Если нет возможности ответить, то, pls, напишите в PM)

Сообщение отредактировал ELF - Суббота, 05 Июня 2004, 21:05

Присоединённые файлы
Присоединённый файл  DBmerger2.zip ( 31.63кб ) Кол-во скачиваний: 384
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ALtair
post Среда, 09 Июня 2004, 01:10
Отправлено #11


Wizard
Group Icon

Группа: Members
Сообщений: 473
Регистрация: 10-Сен-02
Из: Москва, черт ее дери.
Пользователь №: 554



Выдался у меня свободный вечер, написал парсер Леверов. smile.gif Ловите прилепленный файл.

QUOTE(ELF)
[*] - самый каверзный параметр. Расчитывается так:
Считываем аж 4 байта!!!  ohmy.gif  Если второй байт больше 0, третий байт не равен 2, а четвёртый байт равен 0, то размер длины строки long, иначе размер длины строки byte.

Что-то гемор какой-то. Можно намного проще. Считать один байт. Проверить, четное ли число в нем записано или нечетное. Если четное, делим на два и работаем дальше. Если нечетное, возвращаемся на байт назад и считываем уже 4 байта. вычитаем из них 1-цу и делим опять на два, работаем опять дальше.
Элементарная проверка первого байта на четность намного легче предложенного тобой варианта.
Кстати такой же алгоритм подходит и для всех других "длин" в файле. Т.е. должен использоваться и при подсчете размеров блоков, подблоков, строк таблицы и ячеек таблицы.

Присоединённые файлы
Присоединённый файл  lparser.rar ( 22.39кб ) Кол-во скачиваний: 382


--------------------
Duty is everything, the greatest of joys, the deepest of sorrows.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ELF
post Среда, 09 Июня 2004, 18:37
Отправлено #12


Wizard
Group Icon

Группа: Members
Сообщений: 859
Регистрация: 14-Авг-03
Из: Краснодар
Пользователь №: 878



QUOTE(ALtair)
Что-то гемор какой-то. Можно намного проще. Считать один байт. Проверить, четное ли число в нем записано или нечетное.

Да... а я об этом и не подумал. blush.gif
Ктстаи, ALtair, ты не думал создать что-нить общее для всех ДатаБаз и с GUIнтерфейсом?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ALtair
post Среда, 09 Июня 2004, 21:54
Отправлено #13


Wizard
Group Icon

Группа: Members
Сообщений: 473
Регистрация: 10-Сен-02
Из: Москва, черт ее дери.
Пользователь №: 554



Думать думал, но пока времени на него нет.. Сессия. unsure.gif


--------------------
Duty is everything, the greatest of joys, the deepest of sorrows.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
PZIGOR
post Понедельник, 05 Июля 2004, 10:16
Отправлено #14


Conjurer
Group Icon

Группа: Members
Сообщений: 159
Регистрация: 14-Апр-04
Из: курган
Пользователь №: 1,734



Вопрос к SUNу какие форматы файлов ещё не разобраны кроме *.?db. Хотелось бы паработать над не разобранными файлами. Сейчас изучаю adb формат.!!!!!!!


--------------------
Поклонник Baldurs gate, Neverwinter Nights, Проклятые земли.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Jet
post Среда, 07 Июля 2004, 21:11
Отправлено #15


Honor Guard
Group Icon

Группа: Add-on Developers
Сообщений: 1,063
Регистрация: 23-Фев-02
Из: gipat.ru
Пользователь №: 116



QUOTE(PZIGOR @ 05 Июля 2004, 10:16)
Вопрос к SUNу какие форматы файлов ещё не разобраны кроме *.?db. Хотелось бы паработать над не разобранными файлами. Сейчас изучаю adb формат.!!!!!!!

ADB, уже разобрали, сейчас ELF делает утилитку.


--------------------
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ELF
post Четверг, 16 Февраля 2012, 07:38
Отправлено #16


Wizard
Group Icon

Группа: Members
Сообщений: 859
Регистрация: 14-Авг-03
Из: Краснодар
Пользователь №: 878



Выдалось немного времени, захотелось написать утилитку для редактирования баз данных в ПЗ.
Так как полей всех не знаю, то сделал так, чтобы можно быть по ходу работы типы и названия полей поправлять (в текстовых файлах).
Ну и пока что нормально описанных полей забито мало.

Тестировал немного совсем, но вроде бы что-то редактирует. smile.gif

В проге используются текстовые файлы (db*.txt) для описания типов полей баз данных и их названий. Также в текстовых файлах задаются описания самих баз данных (файлов) и их блоков.

В данный момент ещё не все типы и названия полей забиты в текстовые файлы. Но вы можете это сделать и самостоятельно. (изучая структуру файлов баз данных и сопоставляя значения между открытыми в этом редакторе данными и исходными данными в Toolkit-текстовиках).

Если кто будет поправлять описания и типы полей в текстовых файлах, то выкладивайте здесь. Чтобы другим не делать тоже самое. smile.gif Также я буду это делать сам, но только когда будет время. smile.gif Так что вы можете успеть вперёд.

Вот ссылка на прогу:
EIDB Editor на SourceForge

Сообщение отредактировал ELF - Среда, 22 Февраля 2012, 11:44
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Demoth
post Четверг, 16 Февраля 2012, 09:16
Отправлено #17


Conjurer
Group Icon

Группа: Add-on Developers
Сообщений: 207
Регистрация: 14-Мар-11
Пользователь №: 5,879



Хм.. Походу порядок имен полей вообще никак не связан с ниваловской txt'шной запаковывалкой, а методом тыка заполнять - одно веселье. Кстати, возможности копи-пасты при работе с базой по хорошему надо бы расширить, сейчас же даже новую запись не добавить. А вообще выглядит не плохо. Побольше бы функционала и было бы вообще потрясно. Кстати, добавь в ini'шник путь к последней датабазе.

Сообщение отредактировал Demoth - Четверг, 16 Февраля 2012, 09:35
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Guest
post Четверг, 16 Февраля 2012, 13:39
Отправлено #18


Unregistered









Угу, нужно будет добавить функционала. smile.gif
И да, поля там нужно описать. smile.gif Это как раз повеселиться чтобы =))
А как опишем, так можно и экспорт в тхтшники сделать. smile.gif
Go to the top of the page
+Quote Post
ELF
post Среда, 22 Февраля 2012, 11:46
Отправлено #19


Wizard
Group Icon

Группа: Members
Сообщений: 859
Регистрация: 14-Авг-03
Из: Краснодар
Пользователь №: 878



Обновил чуточку версию.
Немного расписал полей (для Spell Prototypes, Spell Modifiers, Items Materials и частично для Items Weapons).
Сделал в settings.ini запоминание путей папок и положения окна.
Выложил прогу на соурсфорж.

До клипбоарда и вставки/удаления строк руки пока не дошли. smile.gif

Сообщение отредактировал ELF - Среда, 22 Февраля 2012, 11:47
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ELF
post Среда, 07 Марта 2012, 14:43
Отправлено #20


Wizard
Group Icon

Группа: Members
Сообщений: 859
Регистрация: 14-Авг-03
Из: Краснодар
Пользователь №: 878



Добавил вставку/удаление и клипборд.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

Reply to this topicTopic OptionsStart new topic
1 чел. читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
 

Упрощённая версия Сейчас: 20 Июня 2019 - 16:37