Очень интересная информация, можно проследить некоторую зависимость от баз из DB Toolkit:
Номер - порядковый номер строки, начиная с 0.
(в распакованной нами базе, это последнее поле - Unknown)
thin
thick
tanned thin
....
gipat low prototype
gipat low shirt
gipat low pants
gipat low boots
gipat low gloves
gipat low helm
gipat low plate
gipat low leggins
gipat medium prototype
....
stone axe
stone battle axe
....
Fire Arrow
Lightning Arc
....
Cut Range
Extra Range
Ultra Range
....
Всё это - классы предметов, они наследуют базовый класс предмета CItem и обладают его свойствами (это общие поля в таблицах базы items.idb), вот списко этих классов
CItemWeapon
CItemArmor
CItemQuick
CItemLoot
CItemSpell
CItemQuest
А плавают адреса потому, что игра написана на C++ с использованием классов MFC.
И при создании экземпляра класса:
Память для этого объекта выделяется из кучи, т.е. нет привязки к адресам.
А вот указатели, которые указывают на этот участок, конечно же, можно найти , но это очень трудоемкий процесс.
p.s. Мда... тема плавно перетекает в программисткую. :unsure:
Цитата:4) Модель:Файл Materials.txt.
Для материала:
00 - Тонкая кожа
Номер - порядковый номер строки, начиная с 0.
(в распакованной нами базе, это последнее поле - Unknown)
thin
thick
tanned thin
....
Цитата:Для доспеха: (Тут показаны только значения, кратные числу 8, т.к. меж ними идут сами вещи, причём вразброс, а значения, кратные числу 8 показывают их классовую принадлежность) - английские названия не придуманы - оно так и написано...Файл Armors.txt:
000 - Gipat_Low_Prototype
gipat low prototype
gipat low shirt
gipat low pants
gipat low boots
gipat low gloves
gipat low helm
gipat low plate
gipat low leggins
gipat medium prototype
....
Цитата:Для оружия:Файл: Weapons.txt
00 - Каменный топор
01 - Каменный боевой топор
stone axe
stone battle axe
....
Цитата:Для заклинаний:SpellPrototypes.txt
00 - Огненная стрела
01 - Молния
Fire Arrow
Lightning Arc
....
Цитата:Для рун:SpellModifiers.txt
00 - <?> Подобие дальнего действия
01 - Дальнее действие
Cut Range
Extra Range
Ultra Range
....
Всё это - классы предметов, они наследуют базовый класс предмета CItem и обладают его свойствами (это общие поля в таблицах базы items.idb), вот списко этих классов
CItemWeapon
CItemArmor
CItemQuick
CItemLoot
CItemSpell
CItemQuest
А плавают адреса потому, что игра написана на C++ с использованием классов MFC.
И при создании экземпляра класса:
Код:
CObject* pObject = new CObject();
А вот указатели, которые указывают на этот участок, конечно же, можно найти , но это очень трудоемкий процесс.
p.s. Мда... тема плавно перетекает в программисткую. :unsure: