[мануал]Добавление новых предметов на сервер. - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Пользователи Календарь Все разделы прочитаны
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II > Обучающие статьи

Обучающие статьи Собрание статей, мануалов и гайдов помогающих в создании и администрировании сервера Lineage 2.
Описание темы:некоторые правила клиентской части

Ответ
Опции темы
Непрочитано 23.08.2011, 12:22   #1
Пользователь

Автор темы (Топик Стартер) [мануал]Добавление новых предметов на сервер.

Не большой гайд по добавлению дополнений для клиента freya.(Данный гайд был написан для фениксо-подобных сборок, l2j любителям не совсем подойдёт)

Перечислю несколько основных правил,без соблюдения которых дополнение работать не будет:

- Скачайте чистый желательно руофф клиент фреи.

- Скачайте чистый патч с пропатченными файлами.

- Скачайте l2FileEditor . Я вам порекомендую вот такой - L2_File_Edit__Freya_High_Five_by_Zelan

Некоторые правила по использованию l2FileEditor:

- Запустите программу.

- Выбирите хроники,вверху вы увидите список.

- Выбирите кодировку.Для любых .dat файлов используется одна единая кодировка - 413

приложение:Для .ini файлов используется 111 кодировка.

- Откройте нужный вам .dat файл и начинайте редактировать его.

* При редактировании обязательно соблюдайте табуляцию.В этом вам очень сильно поможет Notepad++ или же Excel(я же рекомендую Excel и сам же его и использую).Перед добавлением какой-либой прописи,добавьте её для начала в ваш текстовый редактор и проверьте знаки табуляции,после чего можете вставлять и в FileEditor-е.

* Предположим мы открыли itemname-ru.dat . Рекомендуется найти максимальный id последнего предмета и вписывать ваши дополнения начальный id которых будет этот самый максимальный id(не включительно),далее все новые id лучше заносить по порядку и по возрастанию.

* Соблюдайте такой же порядок и при добавлении итема в серверную часть.
Например нам нужно добавить предмет относящийся к типу etcitem.К примеру наш максимальный id (из тех вещей которые уже есть в клиенте) 22333(предмет с этим id находится в \data\stats\items\etcitem\22300-22399.xml)
Зайдите в этот фаил и просто допишите ваш новый предмет id которого будет 22334.(далее id всех новых предметов будут идти по порядку и по возрастанию).

Не забудьте,если файл называется 22300-22399.xml значит и Id вашего предмета в этом файле должен быть из данного диапазона чисел.

Не забывайте,что оружия\щиты относятся к типу weapon,броня\плащи относятся к типу armor,все остальные итэмы\квест итэмы\медальки\агатионы и им подобные относятся к типу etcitem.
Слишком подробно расписывать про серверную часть не буду,есть массы статей по этому делу,всё же вернёмся к клиентской части.

- При сохранении обязательно выбирайте кодировку UTF-8 и желательно нажимать к какому типу относится файл,если это .dat то при сохранении выбирите "тип файла" - DAT Files.В имени файла желательно дописывать .dat (полное имя должно выглядеть так - itemname-ru.dat).

- Сохраняйте в туже папку system от куда вы собственно и брали этот файл,на просьбу заменить отвечайте да!

- Откройте файл localization.ini (естественно программой l2fileeditor).Если у вас рускоязычный клиент и файлы заканчиваются префиком -ru,измените вашу локализацию на 8.

Код:
[LanguageSet]
Language=8
0=Korea
1=English
2=Japan
3=Taiwan
4=China
5=Thailand
6=Philippine
7=Indonesia
8=Russia
EnableEngSelection=false
Очень тщательно проверьте вашу локализацию,всё должно быть под файлы с префиксом -ru.
Если клиент евроофф,значит все должно сводиться к -e файлам.


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

1) Я выбрал плащи из Goddes of destruction.Разорхивировал архив в удобное для меня место и начал с реализации серверной части.Пользуюсь high five сборкой,соответсвтенно мой клиент настроен на хроники high five.

2) В клиенте я нашёл максимальный id предметов - он равен 22333.

3) Зашёл в папку \data\stats\items\armor и в наглую создал xml файл с именем 22300-22399.xml (если это ваше первое дополнение,лучше делайте так,как делаю сейчас я,не сбивайтесь и повторяйте в точности как делаю я)
По скольку этот плащ,содержание моего файла следующее(предупреждаю,описывать буду на примере одного плаща):

Код:
<?xml version="1.0" encoding="UTF-8"?>
<list>
<armor id="22334" name="Knight Cloak" type="NONE">
<set name="bodypart" val="BACK"/>
<set name="icon" val="vesper_cloack_i00"/>
<set name="weight" val="220"/>
<set name="crystal_type" val="S80"/>
<set name="p_def" val="20"/>
<set name="tradeable" val="false"/>
<set name="dropable" val="false"/>
<for>
<add order="0x40" stat="pDef" val="40"/>
</for>
</armor>
</list>
4) Кодировка данного файла должна быть UTF-8.

И по скольку это плащ обязательная пропись для него должна быть и в файле data\stats\items\cloak.xml

Я решил,что мой плащ должен быть "такого" содержания,но вы всегда сможете это дело изменить под ваш лад,прочитав лишь немножко статью по изменению статов в xml для l2 серверов.

Код:
	</item>
<item id="22334" name="Knight Cloak">
<add order="0x40" stat="maxHp" val="1150"/>
<add order="0x40" stat="maxMp" val="639"/>
<add order="0x40" stat="maxCp" val="1150"/>
<sub order="0x40" stat="unholyRcpt" val="30" />
<sub order="0x40" stat="sacredRcpt" val="30" />
<sub order="0x40" stat="fireRcpt" val="30" />
<sub order="0x40" stat="waterRcpt" val="30" />
<sub order="0x40" stat="windRcpt" val="30" />
<sub order="0x40" stat="earthRcpt" val="30" />
</item>
Со стороны сервера мой плащ уже функционирует,осталось реализовать его визуальную структуру.Переходим к клиентской части.

5) Для начала давайте отредактируем наш armorgrp.dat .

Для моего плащика дописывается строка с вот таким вот содержанием:
(к данному плащу прилогаются файлы с разширением .utx,это файлы текстуры и должны они в обязательном порядке находится в папке SysTextures, иначе вместо плаща вы увидите нечто непонятное).

Код:
1	22334	0	3	2	5	0	dropitems.drop_MFighter_m014_Hrm_ad11	 MFighter.MFighter_m014_Hrm_ad11_t00 MFighter.MFighter_m014_Hsm_ad11_t00	 0	0	0	0	0	2	0	0	icon.vesper_cloack_i00	 -1	220	17	0	0	0	 1	 24	1	 1	 6	Fighter.MFighter_m014_Hrm_ad11 109	114	MFighterSimulation.MFighter_m014_Hsm_ad11	109	115	Fighter.MFighter_m015_Lrm_ad11	109	114 MFighterSimulation.MFighter_m015_Lsm_ad11	109	115	Fighter.MFighter_m015_Lrm_ad11	109	114 MFighterSimulation.MFighter_m015_Lsm_ad11	109	115	6	Mantelli.knight_t00	Mantelli.knight_t01	Mantelli.knight_t00	Mantelli.knight_t01 Mantelli.knight_t00	Mantelli.knight_t01	 1	 1	 6	Fighter.FFighter_m014_Hrm_ad11	109	114	FFighterSimulation.FFighter_m014_Hsm_ad11	109	115 Fighter.FFighter_m015_Lrm_ad11	109	114	FFighterSimulation.FFighter_m015_Lsm_ad11	109	115	Fighter.FFighter_m015_Lrm_ad11	109	114 FFighterSimulation.FFighter_m015_Lsm_ad11	109	115	6	Mantelli.knight_t00	Mantelli.knight_t01	Mantelli.knight_t00	Mantelli.knight_t01 Mantelli.knight_t00	Mantelli.knight_t01	 1	 1	 6	DarkElf.MDarkElf_m012_Hrm_ad11	109	114	MDarkElfSimulation.MDarkElf_m012_Hsm_ad11	109	115 DarkElf.MDarkElf_m003_Lrm_ad11	109	114	MDarkElfSimulation.MDarkElf_m003_Lsm_ad11	109	115	DarkElf.MDarkElf_m013_Rrm_ad11	109	114 MDarkElfSimulation.MDarkElf_m013_Rsm_ad11	109	115	6	Mantelli.knight_t00	Mantelli.knight_t01	Mantelli.knight_t00	Mantelli.knight_t01 mdarkelf.MDarkElf_m013_Rrm_ad11_t00	Mantelli.knight_t01	 1	 1	 6	DarkElf.FDarkElf_m012_Hrm_ad11	109	114 FDarkElfSimulation.FDarkElf_m012_Hsm_ad11	109	115	DarkElf.FDarkElf_m013_Lrm_ad11	109	114	FDarkElfSimulation.FDarkElf_m013_Lsm_ad11 109	115	DarkElf.FDarkElf_m001_Rrm_ad11	109	114	FDarkElfSimulation.FDarkElf_m008_Rsm_ad11	109	115	6	Mantelli.knight_t00 Mantelli.knight_t01	Mantelli.knight_t00	Mantelli.knight_t01	mdarkelf.MDarkElf_m013_Rrm_ad11_t00	Mantelli.knight_t01	 1	 1	 6 Dwarf.MDwarf_m010_Hrm_ad11	109	114	MDwarfSimulation.MDwarf_m010_Hsm_ad11	109	115	Dwarf.MDwarf_m010_Hrm_ad11	109	114 MDwarfSimulation.MDwarf_m010_Hsm_ad11	109	115	Dwarf.MDwarf_m010_Hrm_ad11	109	114	MDwarfSimulation.MDwarf_m010_Hsm_ad11 109	115	6	Mantelli.knight_t00	Mantelli.knight_t01	Mantelli.knight_t00	Mantelli.knight_t01	Mantelli.knight_t00	Mantelli.knight_t01	 1	 1	 6 Dwarf.FDwarf_m010_Hrm_ad11	109	114	FDwarfSimulation.FDwarf_m010_Hsm_ad11	109	115	Dwarf.FDwarf_m010_Hrm_ad11	109	114 FDwarfSimulation.FDwarf_m010_Hsm_ad11	109	115	Dwarf.FDwarf_m010_Hrm_ad11	109	114	FDwarfSimulation.FDwarf_m010_Hsm_ad11	109 115	6	Mantelli.knight_t00	Mantelli.knight_t01	Mantelli.knight_t00	Mantelli.knight_t01	Mantelli.knight_t00	Mantelli.knight_t01	 1	 1	 6 Elf.MElf_m013_Hrm_ad11	109	114	MElfSimulation.MElf_m013_Hsm_ad11	109	115	Elf.MElf_m014_Lrm_ad11	109	114 MElfSimulation.MElf_m014_Lsm_ad11	109	115	Elf.MElf_m009_Rrm_ad11	109	114	MElfSimulation.MElf_m009_Rsm_ad11	109	115	6 Mantelli.knight_t00	Mantelli.knight_t01	Mantelli.knight_t00	Mantelli.knight_t01	mdarkelf.MDarkElf_m013_Rrm_ad11_t00	Mantelli.knight_t01	 1	 1	 6 Elf.FElf_m013_Hrm_ad11	109	114	FElfSimulation.FElf_m013_Hsm_ad11	109	115	Elf.FElf_m014_Lrm_ad11	109	114 FElfSimulation.FElf_m014_Lsm_ad11	109	115	Elf.FElf_m006_Rrm_ad11	109	114	FElfSimulation.FElf_m006_Rsm_ad11	109	115	6 Mantelli.knight_t00	Mantelli.knight_t01	Mantelli.knight_t00	Mantelli.knight_t01	mdarkelf.MDarkElf_m013_Rrm_ad11_t00	Mantelli.knight_t01	 1	 1	 6 Magic.MMagic_m015_Rrm_ad11	109	114	MMagicSimulation.MMagic_m015_Rsm_ad11	109	115	Magic.MMagic_m015_Rrm_ad11	109	114 MMagicSimulation.MMagic_m015_Rsm_ad11	109	115	Magic.MMagic_m015_Rrm_ad11	109	114	MMagicSimulation.MMagic_m015_Rsm_ad11	109 115	6	mdarkelf.MDarkElf_m013_Rrm_ad11_t00	Mantelli.knight_t01	mdarkelf.MDarkElf_m013_Rrm_ad11_t00	Mantelli.knight_t01 mdarkelf.MDarkElf_m013_Rrm_ad11_t00	Mantelli.knight_t01	 1	 1	 6	Magic.FMagic_m015_Rrm_ad11	109	114 FMagicSimulation.FMagic_m015_Rsm_ad11	109	115	Magic.FMagic_m015_Rrm_ad11	109	114	FMagicSimulation.FMagic_m015_Rsm_ad11	109	115 Magic.FMagic_m015_Rrm_ad11	109	114	FMagicSimulation.FMagic_m015_Rsm_ad11	109	115	6	mdarkelf.MDarkElf_m013_Rrm_ad11_t00 Mantelli.knight_t01	mdarkelf.MDarkElf_m013_Rrm_ad11_t00	Mantelli.knight_t01	mdarkelf.MDarkElf_m013_Rrm_ad11_t00	Mantelli.knight_t01	 1	 1 6	Orc.MOrc_m009_Hrm_ad11	109	114	MOrcSimulation.MOrc_m009_Hsm_ad11	109	115	Orc.MOrc_m010_Lrm_ad11	109	114 MOrcSimulation.MOrc_m010_Lsm_ad11	109	115	Orc.MOrc_m010_Lrm_ad11	109	114	MOrcSimulation.MOrc_m010_Lsm_ad11	109	115	6 Mantelli.knight_t00	Mantelli.knight_t01	Mantelli.knight_t00	Mantelli.knight_t01	Mantelli.knight_t00	Mantelli.knight_t01	 1	 1	 6 Orc.FOrc_m009_Hrm_ad11	109	114	FOrcSimulation.FOrc_m009_Hsm_ad11	109	115	Orc.FOrc_m010_Lrm_ad11	109	114 FOrcSimulation.FOrc_m010_Lsm_ad11	109	115	Orc.FOrc_m010_Lrm_ad11	109	114	FOrcSimulation.FOrc_m010_Lsm_ad11	109	115	6 Mantelli.knight_t00	Mantelli.knight_t01	Mantelli.knight_t00	Mantelli.knight_t01	Mantelli.knight_t00	Mantelli.knight_t01	 1	 1	 6 Shaman.MShaman_m006_Rrm_ad11	109	114	MShamanSimulation.MShaman_m006_Rsm_ad11	109	115	Shaman.MShaman_m006_Rrm_ad11 109	114	MShamanSimulation.MShaman_m006_Rsm_ad11	109	115	Shaman.MShaman_m006_Rrm_ad11	109	114 MShamanSimulation.MShaman_m006_Rsm_ad11	109	115	6	mdarkelf.MDarkElf_m013_Rrm_ad11_t00	Mantelli.knight_t01 mdarkelf.MDarkElf_m013_Rrm_ad11_t00	Mantelli.knight_t01	mdarkelf.MDarkElf_m013_Rrm_ad11_t00	Mantelli.knight_t01	 1	 1	 6 Shaman.FShaman_m006_Rrm_ad11	109	114	FShamanSimulation.FShaman_m006_Rsm_ad11	109	115	Shaman.FShaman_m006_Rrm_ad11	109 114	FShamanSimulation.FShaman_m006_Rsm_ad11	109	115	Shaman.FShaman_m006_Rrm_ad11	109	114 FShamanSimulation.FShaman_m006_Rsm_ad11	109	115	6	mdarkelf.MDarkElf_m013_Rrm_ad11_t00	Mantelli.knight_t01 mdarkelf.MDarkElf_m013_Rrm_ad11_t00	Mantelli.knight_t01	mdarkelf.MDarkElf_m013_Rrm_ad11_t00	Mantelli.knight_t01	 1	 1	 6 Kamael.MKamael_m008_Lrm_ad11	109	114	MKamaelSimulation.MKamael_m008_Lsm_ad11	109	115	Kamael.MKamael_m008_Lrm_ad11	109	114 MKamaelSimulation.MKamael_m008_Lsm_ad11	109	115	Kamael.MKamael_m008_Lrm_ad11	109	114 MKamaelSimulation.MKamael_m008_Lsm_ad11	109	115	6	Mantelli.kknight_t00	Mantelli.kknight_t01	Mantelli.kknight_t00	Mantelli.kknight_t01 Mantelli.kknight_t00	Mantelli.kknight_t01	 1	 1	 6	Kamael.FKamael_m008_Lrm_ad11	109	114	FKamaelSimulation.FKamael_m008_Lsm_ad11	109 115	Kamael.FKamael_m008_Lrm_ad11	109	114	FKamaelSimulation.FKamael_m008_Lsm_ad11	109	115	Kamael.FKamael_m008_Lrm_ad11	109 114	FKamaelSimulation.FKamael_m008_Lsm_ad11	109	115	6	Mantelli.kknight_t00	Mantelli.kknight_t01	Mantelli.kknight_t00	Mantelli.kknight_t01 Mantelli.kknight_t00	Mantelli.kknight_t01	 1	LineageWeapons.cotton_cloak_m00_mt	1	LineageWeaponsTex.cotton_cloak_t00_mt	 0	 0 LineageEffect.p_u002_a	1	 ItemSound.itemdrop_armor_cloak	ItemSound.itemequip_armor_cloak	1	0	0	6	0	25	0	0	0
(Очень важно знать,что все новые и последующие предметы добавляются в самый конец).

Запомните,что последней во всех .dat файлах должна быть пустая строка,так что после ваших прописей не забывайте её оставлять.

6) Ну собственно добавил и сохранил,придерживаясь правилам которые я уже описывал выше.

7) Идём дальше.Для того,что бы отображалось имя нашего плаща,мы открываем itemname-ru.dat и так же добавляем нужную пропись в самый низ(напомню,что для каждой вещи всегда используется один единый id,для каждой последующей вещи соответсвенно другой id).

Код:
22334	Knight's Cloak	 u,Рыцарский плащ.\0	-1	0	0	 a,	0	0	 a,	0	0	0	0	0	0	0	0	0	0	a,	1
8) Сохранил и закрыл программу...

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

Если всё же у вас не отображается имя предмета или моделька,настоятельно рекомендую поменять "клиент и патч",так как все проблемы возникают из-за них.

Мануал был написан мной лично (c)ГлючноГлаз , специально для Revolt-team.com .

п.с:Первый мой мануал,до этого ничего подобного не писал,поэтому строго не судите,но из личного опыта я заметил,что люди не соблюдают элементарых правил и порядков,поэтому в данном мануале я распишу лишь те правила,которыми пользуюсь я,соблюдая их,проблем у меня не возникает.Я надеюсь это поможет и вам!

Мануал составлялся из полученных ранее данных,за некоторые из них хочу поблагодарить l2CCCP и такие источники как Zone-Game.info(не реклама), их раздел с мануалами мне очень сильно помог.

Добавлено через 2 минуты
я являюсь автором мануала,поэтому дал себе право скопировать его на ваш портал=) я надеюсь вы не против=)

Последний раз редактировалось PROGRAMMATOR; 01.03.2014 в 12:45.
leva290791 вне форума Ответить с цитированием
Сказали спасибо:
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Добавление на сервер шмот, пух StyleroK Lineage II 10 08.02.2012 00:11
Добавление на сервер дополнений: НПЦ, оружие и т.д. Kyza Архив 6 22.04.2010 15:48
Добавление новых предметов volkan Lineage II 2 12.12.2008 19:32
Создание новых предметов. Rus. Lineage II 2 10.12.2008 20:48
Создание своих НОВЫХ предметов pomoshnik Тех-документация 0 26.11.2008 22:52


© 2007–2024 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 15:21. Часовой пояс GMT +3.

Вверх