Не
слишком обременяя себя мыслительной деятельностью, но обладая
усидчивостью и трудолюбием, вы можете сделать глобал ГК всего за
несколько часов.
2) Далее мануал по созданию ГМ-шопа. Ну тут все проще простого. Открываем свой мультиселл (scripts), там видим следующее: MultiSell_begin [blackmerchant_weapon] 1 is_dutyfree = 1 selllist={ {{{[flamberge];1}};{{[crystal_c];573};{[crystal_d];2865}}}; {{{[stormbringer];1}};{{[crystal_c];573};{[crystal_d];2865}}}; {{{[sword_of_delusion];1}};{{[crystal_c];1075};{[crystal_d];5375}}}; {{{[war_pick];1}};{{[crystal_c];573};{[crystal_d];2865}}}; {{{[war_axe];1}};{{[crystal_c];1075};{[crystal_d];5375}}}; {{{[crystal_staff];1}};{{[crystal_c];573};{[crystal_d];2865}}}; {{{[sage's_staff];1}};{{[crystal_c];1075};{[crystal_d];5375}}}; {{{[cursed_dagger];1}};{{[crystal_c];573};{[crystal_d];2865}}}; {{{[dark_screamer];1}};{{[crystal_c];1075};{[crystal_d];5375}}}; {{{[chakram];1}};{{[crystal_c];573};{[crystal_d];2865}}}; {{{[fist_blade];1}};{{[crystal_c];1075};{[crystal_d];5375}}}; {{{[crystallized_ice_bow];1}};{{[crystal_c];573};{[crystal_d];2865}}}; {{{[akat_long_bow];1}};{{[crystal_c];1075};{[crystal_d];5375}}}; {{{[orcish_glaive];1}};{{[crystal_c];573};{[crystal_d];2865}}}; {{{[poleaxe];1}};{{[crystal_c];1075};{[crystal_d];5375}}} } MultiSell_end Что это можеть быть? Люксор, конечно. (обмен кристаллов на веапон). По
такому же принципу сделаем наш гм шоп. Только вместо кри у нас буду
адены. Открываем самый конец мультиселла, Пропускаем 2 строчки, и пишем
следующее MultiSell_begin [Пишем тут любое не использованное
название] 575 (любое чило, главное, что бы второго такого не было в
мультиселле. is_dutyfree = 1 is_show_all = 1 selllist={ {{{[ring_of_aurakyria];1}};{{[coin_of_luck];5325000}}}; {{{[ring_of_baium];1}};{{[coin_of_luck];6450000}}}; {{{[sanddragon's_earing];1}};{{[coin_of_luck];5950000}}}; {{{[earring_of_antaras];1}};{{[coin_of_luck];8200000}}}; {{{[earring_of_zaken];1}};{{[coin_of_luck];7520000}}}; {{{[dragon_necklace];1}};{{[coin_of_luck];8150000}}}; {{{[necklace_of_valakas];1}};{{[coin_of_luck];12600000}}} } MultiSell_end Где
вместо ring_of_aurakyria любой предмет, прописанный в itemdata.txt,
после названия итема идет количесво,затем мы видим coin_of_luck. Вместо
коинов могут быть опять же любые предметы из itemdata.txt, adena,
например. Потом идет количесво вещей, на которые обменивается наш итем.
Хочу предостеречь от распостранненой ошибки: после самой последней
строчки не должно быть;. То есть, все строчки у нас выглядят вот так:
{{{[dragon_necklace];1}};{{[coin_of_luck];8150000}}}; Последняя должна быть такой: {{{[dragon_necklace];1}};{{[coin_of_luck];8150000}}}
Наш
мультиселл готов. Теперь остается только привязать НПС к этому
мультиселлу. Для этого подходим к желаемому нпс в игре на правах гма и
разговариваем с ним. В чате пашишут имя его хтмлки. Например,
galladuchi0001. Лезем в папку хтмл, ищем искомую хтмл-ку, открываем ее
блокнотом. Там видим следующую срочку:
Buy weapon
Где 1 - это номер мультиселла, который мы указали рядом с именем мультиселла.
Вот и все, при должном рвении хороший гм шоп (или любой другой обменник) самому. Или скачать готовый, и поправить в нем цены.
_http://dump.ru/files/0/0084470174/ (allcheats - пароль как сделать собственного бафера. class 1 buffer_npc : default_npc parameter_define_begin string fnHi "buffer_npc001.htm" string fnYouAreChaotic "buffer_npc002.htm" string fnNotEnoughAdena "buffer_npc003.htm" string fnWait "buffer_npc004.htm" int ItemBuff 57 int Amount 1000 int Delay 500 parameter_define_end
Por solo 1000 adenas te podemos dar auras! Elije aquellas que prefieras!
[Might]
[Shield]
[Focus]
[Windwalk]
[Guidance]
[Agility]
[Magic Barrier] [Acumen]
[Empower]
[Bless the Soul]
[Berserker Spirit]
[Holy Weapon]
[Mental Shield]
[Concrentrarion] [Regeneration]
[Freezing Skin]
[Bless the Body]
[Bless the Shield]
[Haste]
[Death Wisper]
[Kiss Of Eva]
Вот и все. Вам остается написать только хтмлки для функций string fnYouAreChaotic "buffer_npc002.htm" string fnNotEnoughAdena "buffer_npc003.htm", это не сложно, ну и добавить нпц в клиент.
Как почистить весь мусор, после того, как чар был удален. Запрос в скуль. Перед выполнением рекомендую сделать бэкап БД. begin tran delete from bookmark where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from nobless_achievements where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from olympiad_match where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from olympiad_result where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from Quest where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from shortcut_data where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from ssq_user_data where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from user_ActiveSkill where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from user_ban where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from user_blocklist where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from user_comment where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from user_deleted where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from user_friend where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from user_henna where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from user_history where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from user_item where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from user_log where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1));
delete
from user_macroinfo where macro_id in (SELECT macro_id FROM user_macro
WHERE char_id in (SELECT char_id FROM user_data WHERE (account_id = -
1))); delete from user_macro where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1));
delete
from user_mail where id in (SELECT mail_id FROM user_mail_receiver
WHERE receiver_id in (select char_id from user_data where (account_id =
- 1))); delete from user_mail where id in (SELECT mail_id FROM
user_mail_sender WHERE sender_id in (select char_id from user_data
where (account_id = - 1))); delete from user_mail_receiver where receiver_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from user_mail_sender where sender_id in (SELECT char_id FROM user_data WHERE (account_id = - 1));
delete from user_newbie where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from user_nobless where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from user_punish where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from user_recipe where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from user_skill where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from user_sociality where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from user_subjob where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete from user_surrender where char_id in (SELECT char_id FROM user_data WHERE (account_id = - 1)); delete FROM user_data WHERE (account_id = - 1); commit(с)srh
Защищаем гм - аккаунт от брута и тп. вещей. Качаем amped [Builder] UseIPFilter=true ; list of allowed IPs or host names, delimited by ";" ; i.e.: 127.0.0.1;11.22.33.*;11.44.*.*;foo.no-ip.com IP=**.**.**;****.**.** (ИП гмов, разделенные точками с запятой.) И закройте все порты, кроме 2106 и 7777. Ну и 1433 для реги.