Перейти к содержимому
La2Base
Главная
ЗагрузкиВикиФорумFAQ
Поиск
ruen
Регистрация Войти
ГлавнаяФайлыВикиВойти
  • Главная
  • Загрузки
  • Вики
  • FAQ
  • Обратная связь
  • О проекте
  • Правила
  • Конфиденциальность
  • Условия использования

© 2026 la2base.com · Все права защищены

ruen
Форум/Скрипты/Создание Npc
Поиск

Создание Npc

13 ответов2,921 просмотровСейчас просматривают: 1
Black
Black

Пользователь

Участник

Постов: 63

На форуме с: 02.08.2007

Репутация: +23

Рейтинг: 0

· 02.08.2007, 11:52

Пожалуйсто напишите ктото такую полезную вещ::: как создать NPC чтоб он продовал точнее менял медальки на всякие итемы, допустим я подхожу к NPC даю ему 10 Festival_adena а он мне 1 банку HP.

я примерно знаю.. пробовал но неполучается, напишите поподробнее:: что делать с npcpos,npcdata,multisell и.т.д.
БУДУ ООЧЕНЬ БЛАГОДАРЕН КАК И МНОГО ДРУГИХ НАЧИНАЮЩИХ АДМИНОВ!!!

0
G
guest000000
· 02.08.2007, 13:15

Для этого создавать НПСа не обязательно.

для начала необходимо определится с тем НПСом - которого ты будешь использовать (в моем примере это будет "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 согласно нашему ИД в мультиселе)

0
R
RusPPK
· 18.12.2007, 23:01

guest000000: Для этого создавать НПСа не обязательно.

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


Вот у меня проблемка. У меня в ГМшопе не хочет заходить на страничку списка луков... Как моно исправить?
MultiSell_begin [gm_shop_weapon_bow] 605
is_dutyfree = 1
selllist={
{{{[carnium_bow];1}};{{[coin_of_luck];30}}};
{{{[soul_bow];1}};{{[coin_of_luck];50}}};
{{{[shining_bow];1}};{{[coin_of_luck];80}}};
{{{[draconic_bow];1}};{{[coin_of_luck];90}}};
{{{[the_infinity_bow];1}};{{[coin_of_luck];140}}};
{{{[carnium_bow_light];1}};{{[coin_of_luck];40}}};
{{{[carnium_bow_crt.bleed];1}};{{[coin_of_luck];40}}};
{{{[carnium_bow_manaup];1}};{{[coin_of_luck];40}}};
{{{[soul_bow_cheapshot];1}};{{[coin_of_luck];60}}}
{{{[soul_bow_quickrecovery];1}};{{[coin_of_luck];60}}}
{{{[soul_bow_crt.poison];1}};{{[coin_of_luck];60}}}
{{{[shining_bow_cheapshot];1}};{{[coin_of_luck];100}}}
{{{[shining_bow_focus];1}};{{[coin_of_luck];100}}}
{{{[shining_bow_crt.slow];1}};{{[coin_of_luck];100}}}
{{{[draconic_bow_cheapshot];1}};{{[coin_of_luck];120}}}
{{{[draconic_bow_focus];1}};{{[coin_of_luck];120}}}
{{{[draconic_bow_crt.slow];1}};{{[coin_of_luck];120}}}
}
MultiSell_end

До того как я вбил сюда луки, тут были другие вещи и с ними работало все норм.

0
Олег
Олег

Пользователь

Бывалый

Постов: 146

На форуме с: 18.06.2007

Репутация: +129

Рейтинг: 0

· 19.12.2007, 12:38

{{{[soul_bow_cheapshot];1}};{{[coin_of_luck];60}}}
{{{[soul_bow_quickrecovery];1}};{{[coin_of_luck];60}}}
{{{[soul_bow_crt.poison];1}};{{[coin_of_luck];60}}}
{{{[shining_bow_cheapshot];1}};{{[coin_of_luck];100}}}
{{{[shining_bow_focus];1}};{{[coin_of_luck];100}}}
{{{[shining_bow_crt.slow];1}};{{[coin_of_luck];100}}}
{{{[draconic_bow_cheapshot];1}};{{[coin_of_luck];120}}}
{{{[draconic_bow_focus];1}};{{[coin_of_luck];120}}}
{{{[draconic_bow_crt.slow];1}};{{[coin_of_luck];120}}}
}
точек сзапятой нету..)))

— Php+Mysql+JS

0
greg
greg

Автор

Участник

Постов: 30

На форуме с: 12.10.2007

Репутация: +64

Рейтинг: 0

· 05.03.2008, 16:55

v0vCh1k: Хорошо, а как тогда настроить дроп конкретной вещи с конкретного моба, это реально? и что тогда в нпцдате нужно менять? или это уже надо в АИ лазать?


реально в npsdata

npc_begin warrior 3 [goblin] level=5 acquire_exp_rate=7.12656 acquire_sp=5 unsowing=0 clan={@goblin_clan} ignore_clan_list={} clan_help_range=300 slot_chest=[] slot_rhand=[club] slot_lhand=[] shield_defense_rate=0 shield_defense=0 skill_list={@s_race_humanoid} npc_ai={[goblin];{[MoveAroundSocial]=42};{[MoveAroundSocial1]=42};{[MoveAroundSo
cial2]=42}} category={} race=humanoid sex=male undying=0 can_be_attacked=1 corpse_time=7 no_sleep_mode=0 agro_range=1000 ground_high={110;0;0} ground_low={40;0;0} exp=2885 org_hp=80.17319 org_hp_regen=2 org_mp=69.6 org_mp_regen=0.9 collision_radius={10;10} collision_height={16.5;16.5} str=40 int=21 dex=30 wit=20 con=43 men=10 base_attack_type=blunt base_attack_range=40 base_damage_range={0;0;80;120} base_rand_dam=50 base_physical_attack=12.34006 base_critical=1 physical_hit_modify=9 base_attack_speed=253 base_reuse_delay=0 base_magic_attack=8.42666 base_defend=51.60553 base_magic_defend=37.76269 physical_avoid_modify=0 soulshot_count=0 spiritshot_count=0 hit_time_factor=0.32 item_make_list={} corpse_make_list={{[charcoal];1;1;5.6617};{[magic_ring];1;1;34.3131};{[rp_broad_
sword];1;1;4.5293}} additional_make_list={} additional_make_multi_list={{{{[adena];30;42;100}};100};{{{[apprentice's_earing];1;1;30.9859};{[necklace_of_magic];1;1;23.0047};{[magic_ring];1;1;46.0094}};25.7009};{{{[stem];1;1;29.1262};{[varnish];1;1;14.5631};{[suede]
;1;1;9.7087};{[silver_nugget];1;1;5.8252};{[thread];1;1;29.1262};{[rp_bow];1;1;1
1
.6506}};6.6988}} hp_increase=0 mp_increase=0 safe_height=100 npc_end

0
V
v0vCh1k

Пользователь

Участник

Постов: 43

На форуме с: 29.07.2007

Репутация: +1

Рейтинг: 0

· 06.03.2008, 19:38

};{[necklace_of_magic];1;1;23.0047};{[magic_ring];1;1;46.0094}};25.7009};{{{[stem];1;1;29.1262};{[varnish];1;1;14.
5631};{[suede]
;1;1;9.7087};{[silver_nugget];1;1;5.8252};{[thread];1;1;29.1262};{[rp_bow];1;1;1
1
.6506}};6.6988}


за что эти значения отвечают (мои предположения (последнее дропрейты?)

0
O
OffLine
· 27.03.2008, 20:12

Всем привет =)

У меня вот есть несколько вопросов по написанию NPCа, может кто разъяснить плиз...

1.

Как написать чтобы при нажатии на строку делался рэндом и давалась какая-либо вещь в зависимости от результатов рэндома???

Приведите плз пример.


2.

вот есть такие строки в npcpos
типа где стоит NPC...... (??)

Код
territory_begin    [gmshop_giran]     {{114877;-178482;-900;-680};{115277;-178482;-900;-680};{115277;-178082;-900;-680};{114877;-178082;-900;-680}}    territory_end
npcmaker_begin    [gmshop_giran]    initial_spawn = all    maximum_npc=1
npc_begin    [SHOP]    pos = {115077;-178282;-880;0}    total=1    respawn=1min    npc_end
npcmaker_end



почему 4 кординаты?? - {114877;-178482;-900;-680}
Объясните плиз откуда берётся и о чём это вобще??


3.

а как сделать чтобы вещь продавалась не за 1 вид чего-то?? ну например как в люксоре за крисы - 2 вида, что-то типа:

{{{[Item_namr];1}};{{[Cristal_C];450}}{{[Cristal_D];100}}}; ??? как правельно?

[Добавленно после]
отвечу сам себе на вопрос =)
пример покупки предметов за буквы:

Код
MultiSell_begin    [bukwi]    666
is_dutyfree = 1
selllist={
{{{[hyeed_s_bow_cheapshot];1}};{{[alphabet_n];1};{[alphabet_c];1};{[alphabet_s];1};{[alphabet_o];1};{[alphabet_f];1};{[alphabet_t];1}}};
{{{[draconic_leather_armor];1}};{{[alphabet_l];1};{[alphabet_i];1};{[alphabet_n];1};{[alphabet_e];1};{[alphabet_a];1};{[alphabet_g];1};{[alphabet_e];1};{[alphabet_ii];1}}};
}
MultiSell_end


т.е. покупка 1 за несколько =)

[Добавленно после]

спасибо заранее за помощь =)

0
Solovey
Solovey

Пользователь

Участник

Постов: 52

На форуме с: 29.05.2007

Репутация: +10

Рейтинг: 0

· 27.03.2008, 20:21

v0vCh1k: };{[necklace_of_magic];1;1;23.0047};{[magic_ring];1;1;46.0094}};25.7009};{{{[stem];1;1;29.1262};{[varnish];1;1;14.
5631};{[suede]
;1;1;9.7087};{[silver_nugget];1;1;5.8252};{[thread];1;1;29.1262};{[rp_bow];1;1;1
1
.6506}};6.6988}


за что эти значения отвечают (мои предположения (последнее дропрейты?)

да, причём в % минимум 1, максимум 1 шанс 23.0047%

0
Женя
Женя

Пользователь

Бывалый

Постов: 174

На форуме с: 16.11.2007

Репутация: +33

Рейтинг: 0

· 27.03.2008, 23:34

OffLine: 2.

вот есть такие строки в npcpos
типа где стоит NPC...... (??)

Код
territory_begin    [gmshop_giran]     {{114877;-178482;-900;-680};{115277;-178482;-900;-680};{115277;-178082;-900;-680};{114877;-178082;-900;-680}}    territory_end
npcmaker_begin    [gmshop_giran]    initial_spawn = all    maximum_npc=1
npc_begin    [SHOP]    pos = {115077;-178282;-880;0}    total=1    respawn=1min    npc_end
npcmaker_end



почему 4 кординаты?? - {114877;-178482;-900;-680}
Объясните плиз откуда берётся и о чём это вобще??

Если неошибаюсь это сторона куда нпс смотрит! //show_loc

0
L
Litosha

Автор

Новичок

Постов: 4

На форуме с: 27.11.2007

Репутация: +6

Рейтинг: 0

· 28.08.2008, 19:03

вопрос по теме, значит есть multisell i html с определенным id , где устанавливается привязка multisell / html и Npc?

0
A
aorychkov

Пользователь

Участник

Постов: 57

На форуме с: 22.01.2008

Репутация: +41

Рейтинг: 0

· 28.08.2008, 19:30

Litosha: я понял , что есть :) я спросил где по теме вроди сам разобрался

npc_pch, npcdata, npcpos / ai


если Вы хотите использовать multisell, то для этого можно использовать стандартные классы аи.
в частности все классы, которые наследуют класс citizen могут использовать multisell.
для этого в htm файлах нужно прописать конструкции вида:
<button action="bypass -h menu_select?ask=-303&reply=N" value="Здесь пишем то, что будут видеть игроки" width=220 height=21 back="sek.cbui36" fore="sek.cbui168">
где N номер записи в multisell.txt

P.S. этя запись для кнопки, можно сделать проще.

0
L
Litosha

Автор

Новичок

Постов: 4

На форуме с: 27.11.2007

Репутация: +6

Рейтинг: 0

· 28.08.2008, 19:54

<html><head><body><center>

<center><font color="ff0000">-= shop test =-</font></center><br>
<br>
<a action="bypass -h menu_select?ask=-303&reply=984">armor</a><br>
<br>
</center>
</body>
</html>


для примера :) , но ты непонял , как привязывть multisell и htm я знаю , я пока недопонимаю, откуда какойнибудь нпц привязывется к multisely i htm ;)

0
A
aorychkov

Пользователь

Участник

Постов: 57

На форуме с: 22.01.2008

Репутация: +41

Рейтинг: 0

· 28.08.2008, 21:57

Litosha: <html><head><body><center>

<center><font color="ff0000">-= shop test =-</font></center><br>
<br>
<a action="bypass -h menu_select?ask=-303&reply=984">armor</a><br>
<br>
</center>
</body>
</html>


для примера :) , но ты непонял , как привязывть multisell и htm я знаю , я пока недопонимаю, откуда какойнибудь нпц привязывется к multisely i htm ;)

нет, это ты не понял.
читай внимательно.
любой нпц, который наследует класс....
т.е., берем гейткипера, смотрим нпцдату, находим параметр fnHi и в этом htm файле добавляем строку.
теперь гейткипер бедет продавать твой армор.
если ты хочешь создать нового нпц, читай тему сначала.

0
Тема закрыта для ответов