Показать сообщение отдельно
Непрочитано 02.07.2013, 11:02   #8
Аватар для Bacek

По умолчанию Re: Тот самый DStuff! Теперь на русском!

Цитата:
Сообщение от acmi Посмотреть сообщение
Воу воу палехче.
В общем я к этому сайту пока никакого отношения не имею.

Через несколько дней освобожусь, напишу новый l2asm-diasm. Часть даток уже разобрал(Lindvior: 72/78, Episodion: 76/82).

Кстати, хотел с вами посоветоваться, в какой формат их перегонять.
Например SetItemGrp-k.dat из Episodion:
Код:
[INT]{
	INT			//ид сета
	[INT]{			//кол-во сетовых предметов 
		[INT]{		//возможные варианты 
			INT	//ид предметов слота(норм/сков/благ/..)
		}
	}
	[INT]{			//описание бонусов от
		ASCF		//каждой части
	}
	[INT]{			//аналогично
		[INT]{		//варианты
			INT	//щитов
		}
	}
	[INT]{			//и описание
		ASCF		//их бонусов
	}
	INT			//0
	INT			//0
	[INT]{			//бонусы от заточки
		INT		//уровень заточки
		ASCF		//описание бонуса
	}
}
Как видите, тут массивы тройной вложенности, и простой строкой уже не обойтись.
Я пока склоняюсь к xml, но возможно вы предложите что-то более подходящее.
Что то типо этого.
PHP код:
<file pattern="SetItemGrp-[\w]+\.dat" isSafePackage="true">
    <
node name="data" reader="UINT" hidden="true" />
    <for 
name="data" size="#data">
        <
write data="setitem_group_begin" />
        <
node name="num" reader="UINT" />
        <
node name="essential_setitem_id" reader="UINT" />
        <for 
name="essential_setitem_id" size="#essential_setitem_id">
            <
node name="size2" reader="UINT" />
            <for 
name="essential_setitem_id0" size="#size2">
                <
node name="id" reader="UINT" />
            </for>    
        </for>            
        <
node name="essential_setitem_desc" reader="UINT" />
        <for 
name="essential_setitem_desc" size="#essential_setitem_desc">
            <
node name="id" reader="ASCF" />
        </for>    
        <
node name="additional_setitem_id" reader="UINT" />
        <for 
name="additional_setitem_id" size="#additional_setitem_id">
            <
node name="additional_setitem_id0" reader="UINT" />
            <for 
name="additional_setitem_id0" size="#additional_setitem_id0">
                <
node name="id" reader="UINT" />
            </for>    
        </for>    
        <
node name="additional_setitem_desc" reader="UINT" />
        <for 
name="additional_setitem_desc" size="#additional_setitem_desc">
            <
node name="id" reader="ASCF" />
        </for>    
        <
node name="unk1" reader="UINT" />
        <
node name="unk2" reader="UINT" />
        <
node name="enchant_setitem_condition" reader="UINT" />
        <for 
name="enchant_setitem_condition" size="#enchant_setitem_condition">
            <
node name="enchant_setitem_condition0" reader="UINT" />
            <
node name="enchant_setitem_desc" reader="ASCF" />
        </for>    
        <
write data="\tsetitem_group_End" />
    </for>
</
file
PHP код:
setitem_group_begin    num=274    essential_setitem_id={{33422;33439};{33423;33440};{33421;33438};{33425;33442};{33426;33443}}    essential_setitem_desc={[u,&#47932;뢬방쒴력 5.57% 좝가,  \0];[u,최대HP 531 좝가,\0];[u,물뢬꯵ꮩ력 5.57% 좝가,\0];[u,STR 2 좝가, DEX 2 감삌,수면/홀돜꯵ꮩ꾴성 70% 좝가.\0]}    additional_setitem_id={{33424;33441}}    additional_setitem_desc={[u,첔가로 방패방쒴율이 좝가된 뿁쿜.\0]}    unk1=0    unk2=0    enchant_setitem_condition={6;[u,세톸 아이템 6이뿁 강화 쇜 방쒴력꯼ MP햌믵력이 좝가.\0]}    setitem_group_end 
__________________
Человек просто обязан ошибаться, раз другие учатся на его ошибках .......
Bacek вне форума Отправить сообщение для Bacek с помощью ICQ Ответить с цитированием
Сказали спасибо: