Jump to content
  • Announcements

    • Xmat

      Pravidlo pro postování v TTT

      Do sekce Tipy, triky, tutoriály nepatří žádné dotazy.   Postujte sem vaše návody, tipy a různé další věci jež uznáte za vhodné sdělit zdejšímu osazenstvu, ale veškeré dotazy směřujte do sekce Všeobecná diskuse.
    • Replik

      Seznam návodů a důležitých témat v této sekci

      Pro lepší přehlednost jsem vytvořil tento seznam, který vás, méně zkušené, lépe provede touto sekcí. Věřím, že zde najdete, co hledáte. Vypsané jsou návody, které jsou oficiálně uznané jako návody. Běžné diskuze, které neposkytují postupy a rady zvěřejněny nejsou.   Instalace vlastního MaNGOS Serveru Díky těmto návodům budete (měli by jste být) schopni vytvořit a následně spustit váš vlastní server. Nastavení je pro verze s i bez datadisku.   Instalace MaNGOS Serveru (bez datadisku TBC) - Autor Benny Instalace MaNGOS Serveru (s datadiskem TBC) - Autor Malfik Instalace MaNGOS Serveru v prostředí Linux - Autor charlie Instalace MaNGOS Serveru v prostředí Linux - Autor kupkoid   Chyby a jejich řešení při přihlašování k serveru - Autor Cybe   Zálohování uživatelských dat   Dávkový soubor (BAT soubor) pro vytvoření SQL záloh - Autor Replik   Kompilování - tvoření vlastních release (revizí)   Tvorba kompilací pro Win32 (MangoScript) - Autor bLuma   Ostatní - těžko zařaditelné, ale neznamená to, že nejsou dobré   VIP Systém - Autor charlie Tvorba Webových stránek pro MaNGOS - Autor zahuba Tvorba teleportačních NPC (MangoScript) - Autor Replik Registrační web (původně předělaná SPORA) Funkční pro Antrix i MaNGOS - Autor Replik Nastavení a spuštění Minimanager pro MaNGOS - Autor BlackMartin Nastavení MaNGOS Website - Autor Artorius   Samozřejmě jsou zde i jiné návody, ale tyto jsou nejvíce používané, proto věřím, že vám budou nápomocné. Tuto sekci budeme upravovat podle potřeby. Pokud by jste něco nenašli nebo si nevěděli rady, hledejte na fóru a teprve potom založte vlastní topik. Pokud nějaký autor vytvoří kvalitní návod a chtěl by ho zveřejnit i v tomto seznamu, doporučuji, aby mi napsal zprávu skrze PM.   Díky a přeji hezký den na WoWResource   Replik
    • Aristo

      Příspěvky tam, kde nemají co dělat

      Dodržujte zákaz přispívání do topiků s repaky pokud si to zakladatelé nepřejí!! Opakované psaní příspěvků bude trestáno warnem.
    • Aristo

      Používání spoilerů

      Poslední dobou má většina uživatelů fora zvláštní nutkání postovat extrémně dlouhé texty nebo kódy, které zabírají v nejedenom případu i 80% obsahu celé stránky a hodně tak zvedají nepřehlednost v topiku. Chtěl bych všechny uživatele požádat, aby při postování citací, jakýchkoliv kódů, errorů, atp... delších než 30 řádků používali funkci spoileru.   Funkci vyvoláte příkazem [spoiler] text [/spoiler]   Ukázka:  
pendialek

script na snizeni dmg npc na urcite mape

Recommended Posts

uz nekdo badal nad tim, jak scriptem snizit damage vsech npc co jsou na nejake urcite mape?

 

konkretne se me jedna o outland, to je tusim mapa 530. chci se pokusit vytvorit script co by projel tabulku creature, vybral poze creatury na konkretni mape a seskupil podle id tim dostanu vsechny id npc co se vyskytuji v pozadovanem teritoriu a potom id hledat v creature_template a napr. o 15% snizovat min a max dmg nebo atackrage (odhaduju)

 

pokud ma nekdo neco podobneho, prosim podelte se, ja nad tim ztravim asi tyden a mozna to stejne potom udelam rucne :)

Edited by pendialek

Share this post


Link to post
Share on other sites

Proč dělat věci složitě, když jdou vyřešit elegantněji. Outland je zóna pro 60-70 lvl, tzn budou na ni 60+ mobové:

create table ol select * from creature_template where minlevel >= 60;

Ještě lépe, rovnou pro globální snížení dmg:

update creature_template set maxhealth=floor(maxhealth * (x/y)), minhealth=floor(minhealth * (x/y)) where minlevel >= 60;

Edited by kupkoid
typo

Share this post


Link to post
Share on other sites
Globálně to můžeš nastavit v comfigu.

Config jsem už pěkně dlouho neviděl, ale tam lze nastavit dmg multiplier pro různé levely??

Edited by kupkoid

Share this post


Link to post
Share on other sites

dik, nestacil jsem to pobrat, ale asi si vyberu

 

config me jeste ani na jedne revizi nejel jak mel. je tam nastaveni hp ratu u rare, elit, world boss, .... taky vzdalenost utoku, a dmg npc atd. ale me to nikdy nejelo

Share this post


Link to post
Share on other sites

Mobové 60+ jsou i elity a bosové v Azerothu, nápad je to hezký, ale ovlivní i další moby

 

Ad config: je to jen globálně pro úplně všechny moby a v posledních revizích je funkčnost opravena

Edited by bLuma

Share this post


Link to post
Share on other sites

taky me to uz docvaklo ze to ovlivni i dungy atd.

 

jedu revizi 4227 a config nepracuje, chtel jsem totiz oslabit world bossy aby meli hraci sanci, ale bez uspechu

 

kdyz to napisu takhle

update creature_template set maxhealth=floor(maxhealth * (x/y)), minhealth=floor(minhealth * (x/y)) where minlevel >= 60 AND rank=0;

 

tak to upravi jen zakladni moby, jenom vychytat syntaxi :whistling:

Edited by pendialek

Share this post


Link to post
Share on other sites

create table ol select creature_template.* from creature_template, creature where creature.map = 530 and creature_template.entry = creature.id;

Zkus tohle, když tak to prostě nepůjde :)

Edited by kupkoid

Share this post


Link to post
Share on other sites
ty ses dabel!!! neco takovyho jde? ale hlasi:

 

Unknown column 'creature_template.id' in 'where clause'

Jo, ptže creature_template ID jaksi nemá - je místo něj entry. A fakt netuším jestli to jde, musíš vyzkoušet ;)

Share this post


Link to post
Share on other sites

mas pravdu

 

vytvorilo me to tedka novou tabulku s 27416 zaznamama, ale neni to od kazdyho id jenom jeden, jsou to nejspis nakopirovany vsecky definice mobu v outu, ale ve stejnym poctu jako se tam vyskytujou

 

nevim jestli me chapes :)

Edited by pendialek

Share this post


Link to post
Share on other sites

Pokud jde ještě furt o úpravu pouze outlands tak také lze použít: (MUJKOEF = násobek (změna) damage)

UPDATE `creature_template`, `creature` SET mindmg = FLOOR(mindmg * MUJKOEF), maxdmg = FLOOR(maxdmg * MUJKOEF) WHERE `creature_template`.`entry` = `creature`.`id` and `creature`.`map` = 530

Share this post


Link to post
Share on other sites
mas pravdu

 

upravilo 27461 zaznamu, ale vubec nevim jakych kde na na co :)

 

co jsem s tim tedka provedl?? nastesti to byly testovaci tabulky

Co jsi provedl? Vytvořil tabulku "ol". Původních záznamů se to ani nedotklo.

Share this post


Link to post
Share on other sites

dik moc uz to asik mam!

 

asi zacnu studovat poradne sql, vubec jsem netusil, ze jdou takhle kombinovat dotazy atd.

 

puvodne sem chtel vytvorit nejakou "pr***rnu" v php

Share this post


Link to post
Share on other sites
mas pravdu

 

vytvorilo me to tedka novou tabulku s 27416 zaznamama, ale neni to od kazdyho id jenom jeden, jsou to nejspis nakopirovany vsecky definice mobu v outu, ale ve stejnym poctu jako se tam vyskytujou

 

nevim jestli me chapes :)

V tom případě je lepší bLumovo řešení... Dumpni a uploadni mě někde prosím tu tabulku ol, díky.

Share this post


Link to post
Share on other sites

create table ol select distinct creature_template.* from creature_template, creature where creature.map = 530 and creature_template.entry = creature.id;

Čistě teoreticky to řeší chybu s několikanásobnými stejnými ID.

Share this post


Link to post
Share on other sites
V tom případě je lepší bLumovo řešení... Dumpni a uploadni mě někde prosím tu tabulku ol, díky.

 

ol.zip

 

je to ta verze s vicenasobnyma id jednoho druhu, protoze me nejak stavkuje net a nejsem schopen ten upravenej dotaz poslat

 

nechci radit, ale mozna, ze by to tu mohl nejakej moderator promazat, ale hlavne nemazat ten funkcni dotaz

 

UPDATE `creature_template`, `creature` SET mindmg = FLOOR(mindmg * MUJKOEF), maxdmg = FLOOR(maxdmg * MUJKOEF) WHERE `creature_template`.`entry` = `creature`.`id` and `creature`.`map` = 530

Edited by pendialek

Share this post


Link to post
Share on other sites

Promazávat se to nebude. Jinak mě jde o to, jestli se distinct řídí pouze primary key fieldy, nebo všemi.

 

Odpovím si sám, row není field :)

Edited by kupkoid

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

×