L2-Community.com - Bce o Lineage II  
Главная Регистрация Справка Пользователи Поиск Сообщения за день Все разделы прочитаны
 
 

Вернуться   L2-Community.com - Bce o Lineage II > Форум Lineage II > Серверная часть > Настройка и украшение

Настройка и украшение В Этом разделе находятся различные паблик-доработки серверов. Гм-шопы, различные патчи и т.д...

Ответ
 
Опции темы Опции просмотра
Старый 19.01.2008, 15:12   #1
dw
Member of L2 Community
 
Аватар для dw
 
Регистрация: 16.01.2008
Сообщений: 105
Вы сказали Спасибо: 1
Поблагодарили: 104 раз(а) в 35 сообщениях
Лампочка Создание NPC, Настройка эвентов, Работа с клиентом и сервером.

= Создание NPC =

Для начала необходимо определится с тем НПСом - которого ты будешь использовать (например это будет "event_elf")

NPCDATA.txt
Код:
npc_begin    citizen    12261    [event_elf]    level=70    acquire_exp_rate=1    acquire_sp=120    unsowing=1    clan={}    ignore_clan_list={}    clan_help_range=300    slot_chest=[]    slot_rhand=[]    slot_lhand=[]    shield_defense_rate=0    shield_defense=0    skill_list={@s_race_undead;@s_full_magic_defence}    npc_ai={[alexandria];{[fnHi]=[Test.htm]};{[fnTradeSkill0]=[gamble_master_41.htm]};{[fnTradeSkill1]=[alexandria5001t.htm]};{[fnTradeSkill2]=[alexandria10001t.htm]};{[MoveAroundSocial]=0};{[MoveAroundSocial1]=90};{[MoveAroundSocial2]=90}}    category={}    race=elf    sex=female    undying=1    can_be_attacked=0    corpse_time=7    no_sleep_mode=0    agro_range=1000    ground_high={120;0;0}    ground_low={50;0;0}    exp=429634528    org_hp=2444.5    org_hp_regen=7.5    org_mp=1345.8    org_mp_regen=2.7    collision_radius={8;8}    collision_height={24;24}    str=40    int=21    dex=30    wit=20    con=43    men=10    base_attack_type=fist    base_attack_range=40    base_damage_range={0;0;80;120}    base_rand_dam=30    base_physical_attack=699.75    base_critical=4    physical_hit_modify=4.75    base_attack_speed=253    base_reuse_delay=0    base_magic_attack=470.4    base_defend=295.92    base_magic_defend=216.54    physical_avoid_modify=0    soulshot_count=0    spiritshot_count=0    hit_time_factor=0.6    item_make_list={}    corpse_make_list={}    additional_make_list={}    additional_make_multi_list={}    hp_increase=0    mp_increase=0    safe_height=100    npc_end
Ставим его к примеру в Гиране:

npcpos.txt
Код:
territory_begin    [Giran_NPC]    {{83533;147809;-3400;-708};{81599;147809;-3464;-708};{81599;149422;-2708;-708};{83611;149422;-3464;-708}}    territory_end        
npcmaker_begin    [Giran_NPC]    initial_spawn=all    maximum_npc=10            
npc_begin    [event_elf]    pos = {83688;148384;-3400;32768}    total = 1    respawn = 1min    npc_end
npcmaker_end

multisel.txt

Код:
MultiSell_begin    [SoulShot]    1000                    
is_dutyfree = 1                            
selllist={                        
{{{[soulshot_d];1000}};{{[adena];35000}}};                    
{{{[soulshot_c];1000}};{{[adena];62000}}};                
{{{[soulshot_b];1000}};{{[adena];100000}}};                        
{{{[blessed_spiritshot_d];1000}};{{[adena];145000}}};        
{{{[blessed_spiritshot_c];1000}};{{[adena];260000}}};
{{{[blessed_spiritshot_b];1000}};{{[adena];370000}}}                    
}
MultiSell_end
html (test.htm согласно нашей нпсдате)
Код:
<html>
<head>
<body>
<br>
Здравствуйте. Добро пожаловать в наш магазин.
<br>
<a action="bypass -h menu_select?ask=-303&reply=1000">Купить Заряды</a><br>
</body>
</html>
(ид 1000 согласно нашему ИД в мультиселе)

= Настройка эвентов =

В файле eventdata.ini должно быть прописано (это пример эвента «Christmas»):
------------------------------------------------------------------------------------------------------------------
[event]
eventname=christmas
eventnpcname=christmas
flagsettingtime=36000
event_doing=1
dropitem_count=4
dropitem0=fir_spring 5
dropitem1=deco_bead 2
dropitem2=deco_star 2
dropitem3=flowerpot 1
droptime_count=1
droptime0= 2007/12/1-01:00 ~ 2007/12/30-23:59
npctime_count=1
npctime0= 2007/12/1-01:00 ~ 2007/12/30-11:00
timevariable_count=0
---------------------------------------------------------------------------------------------------------------------
Теперь все по порядку…
eventname=Christmas //Наименование эвента
eventnpcname=Christmas //NPC, которые появятся в игре во время евента.
flagsettingtime=36000 //Период эвента в миллисекундах (Далее подробнее)
event_doing=1 //Идет ли эвент.
dropitem_count=4 //Количество предметов, которые дропаются из мобов во время эвента.
dropitem0=fir_spring 5 //Первый предмет (в нашем случае 1 из 4) который будет допаться с моба. Цифра 5 означает количество предметов, которые могут дропнуться. (Далее подробно.)
dropitem1… dropitem3 // тоже самое.
droptime_count=1 // количество интервалов времени, во время которых падают «эвентовые» предметы.
droptime0= 2007/12/1-01:00 ~ 2007/12/30-23:59 //Установка первого временного интервала.
npctime_count=1 //количество интервалов времени, во время которых в игре стоят «эвентовые» NPC.
npctime0= 2007/12/1-01:00 ~ 2007/12/30-11:00 //Первый временной интервал.

Многие сталкиваются с такой проблемой, типа «Я поставил все как у вас, а у меня дропается только первый (два первых) предмета. Вот почему так происходит…
Рассмотрим flagsettingtime более подробно. Значение 36000 соответствует 36 секундам проведения ОДНОГО ЦИКЛА эвента. За это время в мире может упасть
dropitem0= fir_spring 5
+
dropitem1=deco_bead 2
+
dropitem2=deco_star 2
+
dropitem3=flowerpot 1
=
10 эвентовых предметов.
Причем сначала должно дропнуться ПОДРЯД 5 fir_spring, затем ПОДРЯД 2 deco_bead и т.д…Если за 36 секунд выбили только 9 ПЕРВЫХ пердметов, то flowerpot в данном цикле не дропнется, а следующим дропом будет fir_spring.
Т.е. при разном онлайне будет разный дроп евентовых предметов. Т.е. помимо дропа предметов нужно, в зависимости от онлайна, оперировать flagsettingtime.
dw вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Sponsored Links
Старый 19.01.2008, 21:02   #2
dw
Member of L2 Community
 
Аватар для dw
 
Регистрация: 16.01.2008
Сообщений: 105
Вы сказали Спасибо: 1
Поблагодарили: 104 раз(а) в 35 сообщениях
По умолчанию Редактирование текстур

= Редактирование текстур =

Скачиваем:

Программа UT Package Tool - для просмотра и извлечения нужных текстур.

Программа L2Decrypt - для кодирования и декодирования файлов

Программа L2Tool - для замены отредактированных текстур в файлах .utx.

Плагин Photoshop DDS - для открытия и редактирования файлов DDS в Photoshop.
(Извлечь в ...\Photoshop\Plug-Ins\File Formats)

Используем:

Создаем папку с любым названием и помещаем в неё файл L2Font-e.utx и программу L2decrypt. Затем открываем эту папку
в стандартном Проводнике Windows(обязательно). Далее берем L2Font-e.utx и перетаскиваем его на файл программы
l2decrypt.exe. Открывается окно l2decrypt и ждём появления внизу этого окошечка надписи: All tasks have be finished,hit return
to exit. Дождавшись этой надписи, можно закрыть окошечко l2 decrypt.Теперь в этой самой папке после расшифровки
образовался файл "L2Font-e.clear.utx"

Теперь с помощью UTPT.exe вытаскиваем нужную текстуру, в нашем случае это-"loading02-e" и сохраняешь её в формате
DDS в нашу созданную папочку.
Дальше редактируем её в Фотошопе. Рекомендуемый размер картинки которой вы будете заменять экран Загрузки или
карту=1600х1200

Далее Сохраняем DDS в Фотошопе.
Файл>Сохранить как>Ставим расширение DDS и нажимаем сохранить>Откроется окошко "NVIDIA dds format" (если не
откроется, то скачать этот файлик из инета). В нем несколько настроек: Нажимаем кнопочку "MIP maps.." и ставим
параметр "Generate MIP maps" равное 1.
(это очень важно) ,если возник вопрос что такое MIP maps, то идем по ссылке <http://www.ixbt.com/video/mip-mapping.html>
Параметр Save Format должен быть DXT3 ARGB(Explicit Alpha) и 2D Texture.

Открываем L2tool (она на японском языке) и
--в первой строке указываем запакованный(исходный) архив L2Font-e.utx
--во второй строке указываем свой отредактированный в Фотошопе файл DDS с тем же названием,с которым вынимал из
UTPT.exe.
--в третьей строке указываем расшифрованный архив L2Font-e.clear.utx, который вы расшифровали с помощью l2 decrypt,
сразу же появляется окно в котором вы должены выбрать название текстуры, которую редактировали. После всего этого
нажимаем кнопку "set", и вуаля, все готово.

Ваша отредактированная текстура сохранилась в расшифрованном вами архиве L2Font-e.clear.utx.

Дальше переименовываем файл в L2Font-e.utx, копируем его в папку Systextures игры и заменяем им старый
оригинальный зашифрованный архив.
dw вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Старый 19.01.2008, 21:49   #3
dw
Member of L2 Community
 
Аватар для dw
 
Регистрация: 16.01.2008
Сообщений: 105
Вы сказали Спасибо: 1
Поблагодарили: 104 раз(а) в 35 сообщениях
По умолчанию Изменяем предметы в игре

Оружие, броня, параметры скиллов сохранены в XML файлах и в базе данных. В скором времени
использование базы данных для скиллов будет удалено. В XML файлах сохранено описание как вещи и скиллы должны
влиять на статы (которые используются для подсчета повреждений, шансов и т.д.).

Вот пример XML файла для оружия и брони:
Код:
<?xml version='1.0' encoding='utf-8'?> 
<item id='21' name="shirt"> 
<for> 
<cond><player race="Human"/></cond> 
<add stat='pDef' order='0x10' val='36'> 
<target kind="skeleton"> 
</add> 
</for> 
</item>
Первая строчка нужна только для самого языка XML, пропустите её.

Вторая строка указывает ID вещи и её название (они должны совпадать с такими же в БД).

Затем есть некоторые условия (condition) для принятия вещью изменений для статов (когда оружие одето или снято).
Таких условий может быть от ноль, один, два, или более. Условие заключено в тэг <for>.

Тэг условия состоит из самого условия которое следует проверить на игроке и эффекта на статы игрока. В
вышенаписанном примере условие добавление эффекта - это расса людей (если не хуман - эффект не включится). Условие
заключено в тэг <cond>, и оно не обязательно. Если условия не указаны - все игроки (которые одевают эту броню\оружие)
будут получать эффект от него.

Эффект - это добавление или умножение статов игрока на заданное количество. В примере стат 'pDef' (power defence) и его
значение 36. Это означает, что к power defence игрока будет добавлено значение 36. Я опишу 'order' ниже.

В конце, даже если функцию подключена к игроку, необходимо чтобы было условие когда оно будет работать. В нашем
примере условие таково: pDef будет увеличен только тогда, когда цель игрока - атака skeleton.

И снова: может быть множество условий <for>, они могут иметь условие присоединенное к игроку <cond>, и каждый из них
может влиять на один или несколько статов игрока ( <add>, <sub>, <mul>, <div> ), и каждый стат будет добавлен только в том
случае когда условие будет выполнено.

Конечно, всё это не обязательно. Для большинства предметов брони и оружия вы будете иметь что-то простое похожее на
это:

Код:
<?xml version='1.0' encoding='utf-8'?> 
<item id='21' name="shirt"> 
<for> 
<add stat='pDef' order='0x10' val='36'/> 
</for> 
</item>
которое всего лишь добавляет 36 пунктов к power defence для каждого игрока который оденет её, без каких-либо условий.

Скиллы описаны практически так же, но с одним дополнением - у скиллов есть уровни. По-этому значение для
увеличения\уменьшения стата будет зависеть от уровня скилла.

Для этих целей мы имеем таблицы:

Код:
<?xml version='1.0' encoding='utf-8'?> 
<skill id='113' levels='2' name="Long Shot"> 
<table name="#dist"> 200 400 </table> 
<for> 
<add stat='rAtk' order='0x10' val='#dist'> 
<using kind="Bow"/> 
</add> 
</for> 
</skill>
В строке <skill> вы выборочно указываете количество уровней. Затем вы провозглашаете таблицу (вы можете провозгласить
много *04 ), каждый из них будет иметь 'level' значения отделенные друг от друга пробелами. Название таблицы может быть
любым, но должно начинаться с символа #. В значениях вы указываете название вашей таблицы.

Сейчас я опишу "order" параметр. "Order" это порядок проведения расчетов. Давайте представим что мы имеем base power
defence игрока: basePDef
защита одетого доспеха: armourPDef
level modifier of the player: lvl
passive skill of power defence которое надо добавить: skillPDef1
buff of power defence которое надо умножить: skillPDef2

Получаем такую формулу:
((basePDef + armorPDef)*lvl + skillPDef1)*skillPDef2

Знаки умножение\суммы в этой формуле указаны 'order'ом расчета. Получается:
basePDef будеть иметь order 0x10
armorPDef будеть иметь order 0x10
lvl будеть иметь order 0x30
skillPDef1 будеть иметь order 0x40
skillPDef2 будеть иметь order 0x50

Значения с одинаковыми 'order'ами расчета будут рассчитаны в не предсказуемом порядке. По-этому, никогда не указывай
одинаковый order параметрам add/substiture и multiplay/divide.

Немного больше о условиях. Вы можете указывать логические операции <and>, <or>, <not>:
Код:
<and><player race="Human"/><player level="11"/></and> 
<or><player race="Human"/><player race="Orc"/></or> 
<not><player race="Human"/></not> 

<and> 
<not> 
<player race="Human"/> 
</not> 
<or> 
<player level="11"/> 
<not> 
<player level=40> 
</not> 
</or> 
</and>
Условиями являются:
Код:
<player race="..."/> <!-- проверяет рассу игрока --> 
<player level="..."/> <!-- проверяет является ли уровень игрока таким, или выше указанного здесь --> 
<player state="..."/> <!-- Делает проверку игрока на выполнение действий: sit, walk, run, swim, etc --> 
<target level="..."> <!-- проверяет является ли уровень цели таким, или выше указанного здесь --> 
<using kind="..."/> <!-- игроков одета броня указанного типа, или оружие указанного вида. 
Броня бывает Light, Heavy, Magic, 
оружие: Shield, Sword, Blunt, Dagger, Bow, Pole, Etc, Fist, Dual Sword, Dual Fist - 
список типа разделен запятыми -->
Операциями над значениями являются:
Код:
<add stat='...' val='...'/> <!-- add a value --> 
<sub stat='...' val='...'/> <!-- значение подстановки --> 
<mul stat='...' val='...'/> <!-- умножить на значение --> 
<div stat='...' val='...'/> <!-- разделить на значение -->
Операция для "случайных" чисел и корней и других математический функций возможно будут добавлены позже, в случае
необходимости.

Вы должны указать значение не как константу, а как выражение:
Код:
<?xml version='1.0' encoding='utf-8'?> 
<skill id='256' levels='1' name="Accuracy"> 
<table name="#acc"> 10 </table> 
<table name="#mana"> 0.2 </table> 
<for> 
<add val='#acc' order='0x10' stat='accCombat'/> 
<effect name="ManaDamOverTime" time="5" count="0x7fffffff"> 
<val> 
<add val="$player_level"/> 
<mul val="#mana"/> 
</val> 
</effect> 
</for> 
</skill>
Такое выражение начинает расчитывать со значение 0, и для примера вверху мы имеем уровень игрока умноженный на
значение с таблицы, и это значение будет использовано для для расчета повреждений манны для каждого периода эффекта.
Итого, в результате мы имеем - повышеную точность (accuracy) в бою плюс отнимание за это манны (МР).
Возможные значения для рассчетов:

Код:
$player_level 
$target_level 
$player_max_hp 
$player_max_mp
Продолжительными эффектами скиллов являются:
Код:
<effect name="Buff"> <!-- buff/debuff, для debuff исользуйте отрицательные значения --> 
<effect name="DamOverTime"> <!-- единоразовое отнятие HP --> 
<effect name="ManaDamOverTime"> <!-- единоразовое отнятие MP --> 
<effect name="HealOverTime"> <!-- единоразовое увеличение HP --> 
<effect name="Charge"> <!-- "заряжает" игрока, подготавливает его для использования другого скилла --> 
<effect name="Relaxing"> <!-- relaxing skill -->
Вот некоторые статы для редактирования:
Код:
'rEvas' 
'cAtk' 
'pAtkSpd' 
'mAtkSpd' 
'maxНp' 
'maxMp' 
'pAtk' 
'mAtk' 
'regMp' 
'mDef' 
'pDef' 
'runSpd' 
'reflectDam' 
'sleepRes' 
'rootRes' 
'stunRes' 
'poisonRes' 
'bleedRes'
Это не все, это всего лишь часть статов, которые мне пришли в голову, но могут вам быть полезными для редактирование
шмота и т.д.

Теперь рассмотрим как сделать какой-либо шмот уникальным.

И так, выбираем шмотик который хотим усовершенствовать: я для себя выбрал:
Код:
<item id='616' name="cloak_of_magic"> 
<for> 
<add val='11' order='0x10' stat='pDef' /> 
<enchant val='0' order='0x0C' stat='pDef' /> 
</for> 
</item>
Открываем data\stats\armor\0600-0699.xml, находим строчку с нашим "плащом магии".

Так как он плащ магии, неплoxо было бы сделать его для магов. А что надо магам? Правильно МР, реген МР, скорость
каста, сила каста. Но давать всё это сразу - слишком много, по-этому сделаем какие-нибудь три изменения, например
увеличим интеллект на +1, regMp, ну и скорость каста (mAtkSpd).

Хм, с бонусами вроде определились, теперь надо определится в количестве этого бонуса, будет ли оно просто добавлять
какое-то заданное число (константу) либо проценты от уже имеющегося стата (тобишь был mdef 100, добавили 10% - получили
110).

Для себя я выбираю так:
INTу добавляю 1.
Регенерацию МР - повышаю на 20%.
Скорость каста на 25%.

Теперь что касается соответсвующего кода:

Так как мы добавляем (знак +) INT, то используем тэг <add>:
Код:
<add val='1' order='0x10' stat='INT'/>
С интом разобрались, теперь что касающееся regMp (знак *, умножение):

Код:
 <mul val='1.20' order='0x20' stat='regMp'/>
Обратите внимание на order!
Теперь скорость каста на 25%:
Код:
<mul val='1.20' order='0x20' stat='mAtkSpd'/>
В итоге наш плащ будет иметь такой вид:

Код:
 <item id='616' name="cloak_of_magic"> 
<for> 
<add val='11' order='0x10' stat='pDef' /> 
<add val='1' order='0x10' stat='INT'/> 
<mul val='1.20' order='0x20' stat='regMp'/> 
<mul val='1.20' order='0x20' stat='mAtkSpd'/> 
<enchant val='0' order='0x0C' stat='pDef' /> 
</for> 
</item>
(c) l2j.ndvhost.com
dw вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Старый 19.01.2008, 21:59   #4
dw
Member of L2 Community
 
Аватар для dw
 
Регистрация: 16.01.2008
Сообщений: 105
Вы сказали Спасибо: 1
Поблагодарили: 104 раз(а) в 35 сообщениях
По умолчанию Шифрование и дешифрование *.ini

Для закодировки или раскодировки L2.ini вам понадобится L2encdec.

1. В папке l2encdec делаем два ярлыка для l2encdec.exe.
2. Нажимаем правой кнопкой мыши на 1-м ЯРЛЫКЕ, заходим в Свойства
3. В строке Объект (после того что там написано) ставим пробел и пишем -s l2.ini (после -s ставиться пробел !!! а вместо l2.ini
пишется название того файла который вам нужно расшифровать). Нажимаем ОК
4. Нажимаем правой кнопкой мыши на 2-м ЯРЛЫКЕ, заходим в Свойства
5. В строке Объект (после того что там написано) ставим пробел и пишем -h 413 dec-l2.ini (соблюдайте пробелы так же как у
меня !!! а вместо l2.ini пишется название того файла который вам нужно зашифровать). Нажимаем ОК.

Итак l2encdec готов к работе

Теперь помещаете файл который надо расшифровать/зашифровать в папку с l2encdec ( в данном случае это l2.ini , вы же
можете то что вам надо. Но не забудте прописать название этого файла в св-ах ярлыков!

Для расшифровки кликаем 2 раза на ПЕРВОМ ярлыке и у вас появиться dec-l2.ini (расшифрованный файл, вы можете
править его с помощью блокнота и правите в нем то что вам надо))
Для зашифровки кликаем 2 раза на ВТОРОМ ярлыке и у вас появиться enc-dec-l2.ini (зашифрованный файл,
переименовываем его в l2.ini и пихаем в папку system)
dw вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Старый 19.01.2008, 22:10   #5
dw
Member of L2 Community
 
Аватар для dw
 
Регистрация: 16.01.2008
Сообщений: 105
Вы сказали Спасибо: 1
Поблагодарили: 104 раз(а) в 35 сообщениях
По умолчанию Прописваем телепорт

Идем в то место, где хотим сделать тп.
Пишем в чате /loc и записываем на листочке 3 цифры.
Дальше идем в любой редактор базы данных
Делаем запрос:
Код:
 insert into teleport values ('название точки телепорта(обычно откуда куда)', 'ID точки телепорта (любое, главное, чтоб с 
прежними не совпадал)', 'x координата', 'y', 'z', 'цена');
Например,
Код:
insert into teleport values ('Elven Town & Dark Elven Town -> Village of Gludin','1','-80826','149775','-3043','6400');
ВСЕ знаки: запятые, кавычки и т.п. должны строго соблюдаться! Можно добавить сразу несколько точек таким образом:
Код:
insert into teleport values
('Elven Town & Dark Elven Town -> Village of Gludin','1','-80826','149775','-3043','6400'),
('Elven Town & Dark Elven Town -> Town of Gludio','2','-12672','122776','-3116','3700'),
('Town of gludio -> Elven village','3','46934','51467','-2977','3700');
в конце запроса всегда ставится ";", между другими строками ","
Выбираем, с какого гк хотим сделать туда телепорт, находим (можно в датабазе) его в игре, shift+ выделение нпц,
Смотрим его ID, идем в папку data, делаем поиск файлов в эскплорере с фильтрацией по ID гейткипера, открываем
найденный .html файл через блокнот, вписыаваем
Код:
 <a action="bypass -h npc_%objectId%_goto здесь айди телепорта" msg="здесь сообщение, которое появится, когда кликнем
на ссылку телепорта (если убрать, телепорт будет немедленный)">здесь название телепорта, который увидит игрок, кликнув 
на нпц</a><br1><br>

Пример
:
Код:
 <a action="bypass -h npc_%objectId%_goto 24" msg="the 1st floor">Вернуться на первый этаж.</a>
dw вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Старый 03.03.2008, 00:42   #6
v``_
Member of L2 Community
 
Аватар для v``_
 
Регистрация: 17.01.2008
Сообщений: 48
Вы сказали Спасибо: 0
Поблагодарили: 19 раз(а) в 9 сообщениях
По умолчанию Eventmatch [Гайд По евентам]

1.Переместитесь в то место, где вы хотите создать евент и введите такую команду:
//eventmatch create 1 team1 team2 1 1 1 100 100

2.Введите //eventmatch list ,должно отобразится что то вроде такого:
SYS:--Event Match List Begin--
SYS: 1: 'team1' vs 'team2'
SYS --Event match List End--
Здесь показано,что установлен 1 евент,который имеет ID:1 и называется "team1 vs team2",т.е. команда1 против команды 2.

3.Введите //eventmatch manage 1,это указывает на то что вам откроется панель управления евентом который имеет ID:1

4.В правом верхнем углу есть кнопка Remove a Race Track,что означает удалить гонки с треков,после чего нажмите Create a Race Track,вам откроется новое окном и в этом окне нажмите кнопку My Coordinates,появится ваши координаты по осям X, Y, Z,впишите данные координаты ниже в нужных полях X, Y, Z,ниже идут 2 поля длинна и ширина арены,длинна арены с севера на юг, и ширина с востока на запад.

5.Теперь когда вы вернулись в главное окно есть 2 важные вещи это Race Setup File(Установки гонки) и Command File(команды гонки),я предлагаю создать вам например на диске C:/,например такой файл C: \ arena_setup.ini,так вам будет легче вводить команды,и файл C: \ command.ini,для создания меню команд.Что вводить этих файлах показано ниже.

Race Setup File Format:
Установки гонки(файл:arena_setup.ini):
--Бафнуть всех тёмных эльфов с уровнем 70+
--Запрещено геройское оружее
--Не позволять применить таки скилы, как Cancel,Resurrections,Party recall.
Код:
[etc]
TeleportDelay=2

[Buff]
BuffCnt=10

//Mental shield lvl 4
BuffID0=1035
BuffLv0=4

//Shield lvl 3
BuffID1=1040
BuffLv1=3

//Greater Empower lvl 3
BuffID2=1059
BuffLv2=3

//Might lvl 3
BuffID3=1068
BuffLv3=3

//Focus lvl 3
BuffID4=1077
BuffLv4=3

//Concentration lvl 6
BuffID5=1078
BuffLv5=6

//Resist Wind lvl 3
BuffID6=1189
BuffLv6=3

//Wind Walk lvl 2
BuffID7=1204
BuffLv7=2

//Guidence lvl 3
BuffID8=1240
BuffLv8=3

//Death Whisper lvl 3
BuffID9=1242
BuffLv9=3

[Skill]
DefaultAllow=1
ExpSkillCnt=4

//Cancel
ExpSkillID0=1056

//Return
ExpSkillID1=1050

//Resurrection
ExpSkillID2=1016

//Mass Ressurection
ExpSkillID3=1054

[Item]
DefaultAllow=1
ExpItemCnt=11

//Infinity Blade
ExpItemID0=6611

//Infinity Cleaver
ExpItemID1=6612

//Infinity Axe
ExpItemID2=6613

//Infinity Rod
ExpItemID3=6614

//Infinity Crusher
ExpItemID4=6615

//Infinity Scepter
ExpItemID5=6616

//Infinity Stinger
ExpItemID6=6617

//Infinity Fang
ExpItemID7=6618

//Infinity Bow
ExpItemID8=6619

//Infinity Wings
ExpItemID9=6620

//Infinity Spear
ExpItemID10=6621
[1]Строчка BuffCnt=10,влияет на то сколько можно игроку бафнуть бафов себе во время начала боя,в данный момент 10 бафов.
Далее показаны какие бафы будут даны игрокам при старте боя.
После указаны скилы которые запрещены во время боя.
Далее указаны итемы которые запрещены для использования в бое.

[2]Строчка DefaultAllow=1,указывает на то что данный пункт будет читаться и использоваться в евенте,DefaultAllow=0,означает что настройки ниже будут игнорироваться для евентов

Command File format

Файл команд для евента(command.ini):
Вот пример моего файла:
Код:
[cmd]
CmdCnt=3
Cmd0="//announce Hello World"
Cmd1="//announce Finally figured it out :)"
Cmd2="//eventmatch dispelall 1"
Т.е. при старте эвента будут выданы данные строчки,объясню, что означают данные строчки:
1я строчка:"//announce Hello World"
Данная строчка выведет анонс в мир Hello World
2я строчка: "//announce Finally figured it out "
Данная строчка означает что будет выведен анонс в мире Finally figured it out
3я строчка: //eventmatch dispelall 1"

Означает, что даётся старт для евент матча под ID:1

Прочие команды примеры:
Массовый рес всех игроков в зоне видимости
//eventmatch useskill [match_Id] 1016 5

Массовое востановление СР
//eventmatch useskill [match_Id] 1306 6

В файле команд евента просто вводите Cmd,и рядом ID команды,т.е. пример:
Cmd1
Cmd2
Cmd3
И т.д.

Далее вводите = и в ковычках пишите команду пример:
Cmd3="//eventmatch useskill 1 1306 6"
Данная команда указывает что все кто записан на евент будут реснуты.

Вот готовые места подготовки арен:
Gludin Arena: -87908 142217 -3645 910x900
Гиран Arena: 72982 142759 -3772 920x900

Т.е. для того, чтобы создать закрытую арену на глудин арене вам нужно будет ввести такую команду:

Глудин Арена:

//eventmatch create 1 team1 team2 -87908 142217 -3645 910 900
Создаться закрытая арена и евент матч под ID:1.

6.После чего вы собираете партии(команды), после того, как команды была создана и набрана жмёте на главного в партии и в меню управления евентом жмёте кнопку Lockup a party,данная кнопка добавит всех из партии в команду 1,после чего набираете вторую партию(команду) и так же жмёте таргет на главного в партии и жмёте Lockup a party,это будет 2 команда.

7.После того как вы собрали команды жмёте Fence Up,это поднимет забор вокруг созданной вами ареной,жмёте ещё раз и это уберёт забор вокруг арены.

8.Команда: //eventmatch dispelall 1,означает старт евента 1,с установками из файлов .ini

9.После того как всё готов жмите кнопку Старт,и вперёд в бой.

10.После того как матч закончен можно ради забавы нажать одну из кнопок:
Team1 Fireworks or Team2 Fireworks
Какую из кнопок жать это зависит от того какая команда выиграла,т.е. это своеобразные аплодисменты(феерверки) для игроков.

11.После того как матч окончен вы можете нажать кнопку Fence Down(опустить забор),и после нажать Lift a lockup,расформировать команды,или же нажав на кнопку Start a Race,начать опять битку данных команд.
12.Перейдите на шаг 6 для вашей следующей битвы.

Примечания:
1.Что бы отправить сообщение игрокам во время матча(евента) введите его в поле и нажмите кнопку Forward,но помните что сообщение должно быть не большой длинны.
2.Вы после поражения той или иной команды можете нажать на кнопку Ending Message,это выведет сообщение на экране у игроков: GAME OVER
3.Что бы открыть файл с вашего диска нажмите внизу кнопку Command и введите путь к файлу и название файла пример:

Установки арены:
C:\arena_setup.ini
Установки команд:
C:\command.ini


Добавлю арена создаётся так:
//eventmatch create [номер_матча] [имя_1_команды] [имя_2_команды] [координаты х] [координаты у] [координаты z] [длинна Стены] [высота стены]
v``_ вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Старый 02.04.2008, 00:04   #7
IzzyDoctor
No Active
 
Регистрация: 01.04.2008
Сообщений: 2
Вы сказали Спасибо: 0
Поблагодарили: 2 раз(а) в 2 сообщениях
По умолчанию

При создании ГМ шопа, желательно добавить продавца в файлы клиента npcname-e.dat npcgrp.dat? и на сервере дописать его id в npc_pch.txt
IzzyDoctor вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Старый 09.12.2008, 16:52   #8
Ural
No Active
 
Регистрация: 09.12.2008
Сообщений: 11
Вы сказали Спасибо: 0
Поблагодарили: 1 раз в 1 сообщении
По умолчанию

для какого сервера это?
Ural вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Старый 27.12.2008, 08:16   #9
Gangreiv
No Active
 
Регистрация: 26.12.2008
Сообщений: 2
Вы сказали Спасибо: 0
Поблагодарили: 2 раз(а) в 2 сообщениях
По умолчанию

Возможно сделать так чтоб вещь от меняла использование определённых скилов.Если да то как?
Gangreiv вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Старый 27.12.2008, 18:55   #10
J-Fobos
Member of L2 Community
 
Аватар для J-Fobos
 
Регистрация: 30.05.2008
Адрес: город темных эльфов
Сообщений: 1,311
Вы сказали Спасибо: 82
Поблагодарили: 407 раз(а) в 243 сообщениях
По умолчанию

Цитата:
Сообщение от Gangreiv Посмотреть сообщение
Возможно сделать так чтоб вещь от меняла использование определённых скилов.Если да то как?
В принципе возможно, но сам способ как это сделать уже зависит от того что эта вещь должна делать. Лиш в некоторых случаях можно обойтись без создания новго класа, но в большенстве случаев прийдется его создавать и пересобирать сервер.
__________________

В любом из нас спит гений. И с каждым днем все крепче.

Переходим на протокол нового поколения jabber
J-Fobos вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Ответ

Опции темы
Опции просмотра

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход




Powered by vBulletin® Version 3.7.5
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd. Перевод: zCarot
Advertisement System V2.5 By   Branden
L2-Community ©2008-2015


Еще можно прочесть: