Форум администраторов игровых серверов

Форум администраторов игровых серверов (https://forum.zone-game.info/TT.php)
-   Lineage II (https://forum.zone-game.info/forumdisplay.php?f=34)
-   -   Данные для парсера НПС (https://forum.zone-game.info/showthread.php?t=14047)

vitlav 12.05.2011 18:49

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

Вот данные из файла ПТС для НПС:

PHP код:

npc_begin    warrior    20001    [gremlin]    category={}    level=1    exp=0    ex_crt_effect=0    unique=0    s_npc_prop_hp_rate=1
race
=fairy    sex=male    skill_list={}    slot_chest=[]    slot_rhand=[]    slot_lhand=[]    collision_radius={10;10}    
collision_height={15;15}    hit_time_factor=0.37    hit_time_factor_skill=-1    ground_high={50;0;0}    
ground_low={20;0;0}    str=40    int=21    dex=30    wit=20    con=43    men=20    org_hp=39.74519    org_hp_regen=2    org_mp=40    
org_mp_regen
=0.9    base_attack_type=sword    base_attack_range=40    base_damage_range={0;0;80;120}    base_rand_dam=30
base_physical_attack
=8.47458    base_critical=4    physical_hit_modify=4.75    base_attack_speed=253    base_reuse_delay=0
base_magic_attack
=5.78704    base_defend=44.44444    base_magic_defend=29.5916164000214    base_attribute_attack={none;0}
base_attribute_defend={20;20;53;20;20;20;0}    physical_avoid_modify=0    shield_defense_rate=0    shield_defense=0    
safe_height
=100    soulshot_count=0    spiritshot_count=0    clan={}    ignore_clan_list={}    clan_help_range=300    undying=0    
can_be_attacked
=1    corpse_time=7    no_sleep_mode=0    agro_range=1000    passable_door=0    can_move=1    flying=0    
has_summoner
=0    targetable=1    show_name_tag=1    npc_ai={[gremlin];{[MoveAroundSocial]=0};{[MoveAroundSocial1]=0};{[MoveAroundSocial2]=0}}    
event_flag={0}    unsowing=0    private_respawn_log=0    acquire_exp_rate=29.39    acquire_sp=2    acquire_rp=0    
corpse_make_list
={}    additional_make_list={}    additional_make_multi_list={}    ex_item_drop_list={}    
fake_class_id=-1    npc_end 

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

PHP код:

ordinal -> ???????????
id -> 20001
name 
-> npc_ai
title 
-> пустозначение null
class -> ???????????
collision_radius -> collision_radius
collision_height 
-> collision_height
level 
-> level
sex 
-> sex
type 
-> ???????????
ai_type -> npc_ai
attackrange 
-> base_attack_range
hp 
-> org_hp
base_hp_regen 
-> org_hp_regen
mp 
-> org_mp
base_mp_regen 
-> org_mp_regen
str 
-> str
con 
-> con
dex 
-> dex
int 
-> int
wit 
-> wit
men 
-> men
exp 
-> exp
sp 
-> acquire_sp
patk 
-> base_physical_attack
pdef 
-> base_defend
matk 
-> base_magic_attack
mdef 
-> base_magic_defend
atkspd 
-> base_attack_speed
aggro 
-> ???????????
matkspd -> ???????????
rhand -> slot_rhand
lhand 
-> slot_lhand
armor 
-> ???????????
walkspd -> ???????????
runspd -> ???????????
faction_id -> ???????????
faction_range -> ???????????
displayId -> ???????????
shield_defense_rate -> shield_defense_rate
shield_defense 
-> shield_defense
corpse_time 
-> corpse_time
base_rand_dam 
-> base_rand_dam
base_critical 
-> base_critical
physical_hit_modify 
-> physical_hit_modify
base_reuse_delay 
-> base_reuse_delay
physical_avoid_modify 
-> physical_avoid_modify
hit_time_factor 
-> hit_time_factor
isDropHerbs 
-> ???????????
shots -> (if (soulshot_count=1    spiritshot_count=0then shot=SOUL, if (soulshot_count=0    spiritshot_count=0then shot=SPIRIT, if (soulshot_count=1    spiritshot_count=1then shot=SOUL_SPIRIT else shot=NONE)
map_flag -> ???????????
boss_flag -> ??????????? 

Так же прошу проверить остальные соответствия, все ли верно

Array 12.05.2011 19:43

Re: Данные для парсера НПС
 
Код:

name -> [gremlin]
class -> \ type -> warrior (врятли)
aggro -> no_sleep_mode (возможно)

Остальное скорее всего дефолт\не отсюда.

Gaikotsu 12.05.2011 19:44

Re: Данные для парсера НПС
 
Цитата:

Сообщение от vitlav (Сообщение 121140)
PHP код:

hp -> org_hp
mp 
-> org_mp
patk 
-> base_physical_attack
pdef 
-> base_defend
matk 
-> base_magic_attack
mdef 
-> base_magic_defend 


как минимум это все не верно - ибо тупое копирование данных значений будет неправильным - чтобы получить корректные значения - надо будет высчитывать их по формулам, в которых кроме этих данных завязаны коэффициенты, значение которых зависит от уровня моба, а так же его базовых стат (str, con и т.д.)

формулы и модификаторы можно взять в prima guide c1 + файл pc_parameter.txt из оффскриптов или тут - http://l2p.l2wh.com/

RaRus 22.05.2011 13:06

Re: Данные для парсера НПС
 
Кто нибудь разобрался с agro_range?

В офф скриптах стоит agro_range=1000 почти на всех мобах. А вот где определяется - агрессивный моб или нет так и не нашёл.

bloodshed 22.05.2011 13:43

Re: Данные для парсера НПС
 
в аи или в параметрах в npcdata

ANZO 22.05.2011 17:11

Re: Данные для парсера НПС
 
Аггрорендж зависит от типа Аи. Так же как упомянул товарищ Gaikotsu, в npcdata используются базовые характеристики нпц (эксп\сп\хп и т.д.). Лыжа уже давно привела состояние формул расчета статов в близкое к официальным состояние, курите их движок - и все станет ясно.


Текущее время: 15:31. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot