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:  

filipoliko

Members
  • Content count

    343
  • Joined

  • Last visited

  • Days Won

    12

Posts posted by filipoliko


  1. Problém nebude v databázi, ale nejspíš v core. Jestli tě to limituje na maximální level 100, tak to je výchozí hodnota maximální možné úrovně v OregonCore. Jestli to chceš upravit, musíš upravit soubory DBCEnums.h a DBCStructure.h a to následovně.

    DBCEnums.h

    Najdi

    #define MAX_LEVEL	100
    

    a uprav na

    #define MAX_LEVEL	200
    

    DBCStructure.h

    Najdi

    #define GT_MAX_LEVEL	100
    

    a uprav na

    #define GT_MAX_LEVEL	200
    

     

    Úprava DBCStructure.h možná nebude nutná, ale přišla mi nějak logická.

    Jinak je tu na to i na fóru návod, když s člověk dobře rozhlédne (viz. http://www.wowresour...showtopic=17260)


  2. Spawnují se vůbec všechny ty zombie NPC?

                SummonedZombies = me->SummonCreature(16360,ADD_1X,ADD_1Y,ADD_1Z,0,TEMPSUMMON_TIMED_OR_DEAD_DESPAWN,80000);
               SummonedZombies = me->SummonCreature(16360,ADD_2X,ADD_2Y,ADD_2Z,0,TEMPSUMMON_TIMED_OR_DEAD_DESPAWN,80000);
               SummonedZombies = me->SummonCreature(16360,ADD_3X,ADD_3Y,ADD_3Z,0,TEMPSUMMON_TIMED_OR_DEAD_DESPAWN,80000);
               SummonedZombies = me->SummonCreature(16360,ADD_4X,ADD_4Y,ADD_4Z,0,TEMPSUMMON_TIMED_OR_DEAD_DESPAWN,80000);
               SummonedZombies = me->SummonCreature(16360,ADD_5X,ADD_5Y,ADD_5Z,0,TEMPSUMMON_TIMED_OR_DEAD_DESPAWN,80000);
               SummonedZombies = me->SummonCreature(16360,ADD_6X,ADD_6Y,ADD_6Z,0,TEMPSUMMON_TIMED_OR_DEAD_DESPAWN,80000);
               SummonedZombies = me->SummonCreature(16360,ADD_7X,ADD_7Y,ADD_7Z,0,TEMPSUMMON_TIMED_OR_DEAD_DESPAWN,80000);
               SummonedZombies = me->SummonCreature(16360,ADD_8X,ADD_8Y,ADD_8Z,0,TEMPSUMMON_TIMED_OR_DEAD_DESPAWN,80000);
               SummonedZombies = me->SummonCreature(16360,ADD_9X,ADD_9Y,ADD_9Z,0,TEMPSUMMON_TIMED_OR_DEAD_DESPAWN,80000);
    
               if (SummonedZombies)
               {
                   pTarget = SelectUnit(SELECT_TARGET_RANDOM,0);
                   if (pTarget)
                       SummonedZombies->AddThreat(pTarget,1.0f);
               }

     

    Jestli to dobře chápu, tak se do proměnné SummonedZombies ukládají a následně přepisují různá data, ale nakonec tam zůstanou jen ty poslední, funke se pak zavolá v podmínce a spawne se jeden zombie? Možná to ale špatně chápu, nezkoušel jsem to, takže netuším.

     

    Co se týče toho útočení, zkus použít funkci AttackStart, namísto AddThreat, asi takhle:

                if (SummonedZombies)
               {
                   pTarget = SelectUnit(SELECT_TARGET_RANDOM,0);
                   if (pTarget)
                       SummonedZombies->AI()->AttackStart(pTarget);
               }

    • Upvote 1

  3. Z jakého důvodu server skončil(web, forum vyplé, nikde žádné pořádné vyjádření.. mám pocit, že to nebylo zas tak malá změna v gm teamu...)? Musel by server jet na stejných systémech, jaké byli zavedeny minulým adminem(shop, raty, nevím co ještě..)? Byl by možný i přechod i na jiné emu? A tím pádem by bylo nejlepší, kdyby se server rozjel znovu a smazali se staré acc, ikdyž to by možná bylo lepší v obou případech (jak server odstartuje, to je dle mě to nejdůležitější, pro jeho budoucnost). Měli jste pěkný web.. ten máte pořád u sebe, nebo by musel admin zaobstarat i tyto věci a tím pádem s velkou pravděpodobností do serveru investovat finance? Stejně tak web/server hosting? Děkuji za odpovědi :-)

     

    btw. nejsi náhodou Nechy? (100ka)


  4. Zkus ve Spell.cpp ve fci Spell:cast najít tyto řádky

    // CAST SPELL
    SendSpellCooldown();
    //SendCastResult(castResult);
    SendSpellGo();										  // we must send smsg_spell_go packet before m_castItem delete in TakeCastItem()...
    if (m_customAttr & SPELL_ATTR_CU_DIRECT_DAMAGE)
    	CalculateDamageDoneForAllTargets();
    

    a přidej před ně tuto podmínku, nějak takhle

    if (m_spellInfo->Id != 8690)
    // CAST SPELL
    SendSpellCooldown();
    //SendCastResult(castResult);
    SendSpellGo();										  // we must send smsg_spell_go packet before m_castItem delete in TakeCastItem()...
    if (m_customAttr & SPELL_ATTR_CU_DIRECT_DAMAGE)
    	CalculateDamageDoneForAllTargets();
    

    a teoreticky by to mělo zrušit cooldown pro hearstone..

     

    Nebo by to taky šlo upravit až ve fci Spell:SendSpellCooldown, kde hned na začátek přihodit ještě podmínku

    if (m_spellInfo->Id == 8690)
    	return;
    

     

    Nezkoušel jsem, ale mohlo by fungovat.

    • Upvote 1
    • Downvote 1

  5. Fakt doporučuju si přečíst ty posty od destenyho.. Pokud chcete vybudovat kvalitní TBC server, berte jedině MangosOne, sice vývoj není nijak extra rychlý, ale o to kvalitnější.

     

    oregoncore has performance problems, and problems to hold a medium amount of players, even on top hardware specs. (and no way to hold high amounts of player), and there are some really wired problems, leaks, missing functionality, not testes parts and so on.

     

    this was the result of a sort or merge of mangos one and tc1 / tc2 parts, the problems are not solvable by fixing it up, we needed to rebase on tc1 (or mangos one) and port features and fixes from OC, to fix this up.

     

    but nevermind, for this job we need much more human resources, but we dont have it, (in fact)

    for this it makes no more sense for me.

     

    mangos one is back alive, and makes a realy good job, nice work in progress and fun to develop with the system, for this reason my direction is quite clear, ...

     

    if anyone wants a suggestion from me, if you are a serious dev, and not only one who wants a server out of the box, go using mangos one. Of course you have more initial work to do but later you will have much less problems!

     

    but you didn't realize on what price some fixes where made.

    on price or stability performance and last but not least wired problems caused by fixes (a fix for a problem is the cause for 2 other problems)

     

    in fact oregoncore CAN NOT be used on medium / large publics (thats a fact) i wish it would be not this way, but its as it is.

     

    Mangos had problems in the past, (stopped developing, unfinished backports and more) but actual they have a roadmap, and keep working, and its the best core arround for serious devs (not only small servers or repack guys)!!

     

    TC1 maybe a option but its outdated, really.


  6. a co tato podminka? v oregoncore se nevyznam ale nasel sem ji na jejich repu ve scriptech bossu.

    if (HPPCT(me) < 90)

    #define HPPCT(unit)           unit->GetHealth()*100 / unit->GetMaxHealth()

    Majou to v tom kódu u illidana předdefinovaný, tak jeslti to chce použít, tak musí přidat i tento řádek, je to nejspíš lepší a hezčí řešení, zvlášť pokud se fce využije několikrát :-)


  7. btw. GetMaxHealth() ti vyjede maximální počet životů, nevyjede ti to kolik máš momentálně životů a už vůbec né procenta (na ty tuším defaultně není ani žádná fce udělaná, nebo jo?)

    if (me->GetHealth() / me->GetMaxHealth() < 0.1) // 0.1 = 10%
    me->SetDisplayId(...);

    • Upvote 2

  8. Poslední dobou trochu pátrám po zahraničních webech po všelijakých akcích a možná by tě zaujalo tohle http://www.ebay.co.u...1141117446#shId i s poštovným (je tam dovoz aj do česka) by tě to vyšlo levněji než to co tu chceš sestavovat sám, pokud umím počítat :D A příjde mi to ještě nadupanější :)

    // + dost rychlej dovoz


  9. Nikdy sem nevěděl jak se to "back-quote" dělá a tak sem používal dycky apostrofy, nikdy sem s tím neměl problém :D A dával sem to tam jenom na začátku, protože sem si nebyl jistej jestli to mysql pobírá při násobení/dělení/sčítání/odčítání aj bez toho, já už s tím fakt dost dlouho nedělal :D Ale beru si to teda k srdci, jestli mi ještě poradíš jak se ty back-quotes dělají :-)

     

    A když už sme teda v tom, tak by to šlo možná ještě hezčeji (Nebo aspoň myslim, že je to hezčí? Jedna proměná navíc X 10x opakovat /100? Ikdyž tohle je už asi hodně bokem, hlavní je ta funkčnost, což by mělo asi všecko fungovat :D)

    SET @percentage = '200'; // Zvíšení o 100%
    SET @multiplier = (@percentage / '100');
    UPDATE `item_template` SET `stat_value1`  = (`stat_value1`  * @multiplier) WHERE `stat_type1`  = '7';
    UPDATE `item_template` SET `stat_value2`  = (`stat_value2`  * @multiplier) WHERE `stat_type2`  = '7';
    UPDATE `item_template` SET `stat_value3`  = (`stat_value3`  * @multiplier) WHERE `stat_type3`  = '7';
    UPDATE `item_template` SET `stat_value4`  = (`stat_value4`  * @multiplier) WHERE `stat_type4`  = '7';
    UPDATE `item_template` SET `stat_value5`  = (`stat_value5`  * @multiplier) WHERE `stat_type5`  = '7';
    UPDATE `item_template` SET `stat_value6`  = (`stat_value6`  * @multiplier) WHERE `stat_type6`  = '7';
    UPDATE `item_template` SET `stat_value7`  = (`stat_value7`  * @multiplier) WHERE `stat_type7`  = '7';
    UPDATE `item_template` SET `stat_value8`  = (`stat_value8`  * @multiplier) WHERE `stat_type8`  = '7';
    UPDATE `item_template` SET `stat_value9`  = (`stat_value9`  * @multiplier) WHERE `stat_type9`  = '7';
    UPDATE `item_template` SET `stat_value10` = (`stat_value10` * @multiplier) WHERE `stat_type10` = '7';


  10. Určitě, akorát to nejde řešit jedním SQL dotazem (ikdyž možná jo, ale osobně nevím jak, btw. jdou v sql dotazu dělat podmínky? Tuším že v novějším jo, ale v těch starších ještě ne? Nevím, někdo by mohl napsat :) )

    Jelikož sloupců stat_type je 10, tak se to musí vyhledávat v každém z nich a dle toho se musí upravit příslušný stat_value

    UPDATE item_template SET 'stat_value1' = 'stat_value1' * 2 WHERE stat_type1=7;
    UPDATE item_template SET 'stat_value2' = 'stat_value2' * 2 WHERE stat_type2=7;
    UPDATE item_template SET 'stat_value3' = 'stat_value3' * 2 WHERE stat_type3=7;
    UPDATE item_template SET 'stat_value4' = 'stat_value4' * 2 WHERE stat_type4=7;
    UPDATE item_template SET 'stat_value5' = 'stat_value5' * 2 WHERE stat_type5=7;
    UPDATE item_template SET 'stat_value6' = 'stat_value6' * 2 WHERE stat_type6=7;
    UPDATE item_template SET 'stat_value7' = 'stat_value7' * 2 WHERE stat_type7=7;
    UPDATE item_template SET 'stat_value8' = 'stat_value8' * 2 WHERE stat_type8=7;
    UPDATE item_template SET 'stat_value9' = 'stat_value9' * 2 WHERE stat_type9=7;
    UPDATE item_template SET 'stat_value10' = 'stat_value10' * 2 WHERE stat_type10=7;
    

    • Upvote 1
    • Downvote 1

  11. Jméno serveru: Feenix Server

    Realm: Archangel 2.4.3

    Web serveru: https://www.wow-one.com/

    Realmlist: vanillafeenix.servegame.org

    Registrace accountů: https://www.wow-one....ccount/creation

    Emulátor: MaNGOS-One (nejspíš, nikde nepíšou)

    Databáze: Mangos-One Database

    Požadovaná verze klienta: 2.4.3

    Místo: Zahraničí

    Jazyk: Angličtina

    Uptime: nonstop

    Rate: 14x (Blizzlike raiding)

    Linka: Neznámá

    Hamachi: ne

     

    Najdete zde:

    • T5/S2 sezóna
    • pathfinding
    • blizzlike instance
    • rychle vyexpíte a šup raidovat
    • populace ve špičce přes 1500 online!
    • na serveru je u aliance i česká guilda
    • časté updaty (http://www.wow-one.c...243-changelogs/)
    • skvěle fungující všechny class
    • server neobsahuje žádné custom vymoženosti (teleporter, či shop)!
    • a mnoho dalšího, hraju tu ani né týden, tak nemám ještě moc přehled :-)

    Server má TBC realm a 2 vanilla realmy, prezentuju tady hlavně TBCčko, protože to bych vám chtěl hlavně doporučit, doufám že se tam s co nejvíc lidma potkáme :-)

     

     

    Naoplátku udělejte to, že na váš web umístíte banner odkazující na naší stránku v případě, že jste majitel/provozovatel serveru. Bude-li zjištěno, že jste tak neučinil téma bude smazáno.

    Nejsem majitelem/provozovatelem serveru a tak tak nemohu učinit, prakticky toto pravidlo tím pádem server neporušuje, ale vím že na to se tu zrovna ohled nebere :-) Jde mi spíš o to, že v česku slušný TBC high-rate servery moc nevidím a tento má skvělou populaci a jsou častý update a hraju tam a hodně se mi líbí a chtěl bych tam víc čechů, takže budu rád, když tu tento server i přes to necháte. Jestli ikonku i tak vyžadujete, nezbývá nic, než tento topic smazat.

     

     

    Děkuji za přečtení!

    • Upvote 4

  12. Pro oregoncore zkus takto

    <?php
    function DalsiArenaPrepocet()
    {
    $host = "localhost";
    $uzivatel = "root";
    $heslo = "";
    $db = "characters";
    $format = false;  //true = vypíše datum ve formátu formátu den.měsíc.rok hodina:minuta:sekunda
                   //false = vypíše datum ve formátu jak je uložen v databázi (například: 1269861807)
    define("CHYBA", "Nepřipojeno k databázi !");
    define("CHYBA2", "Špatně vybraná tabulka ?!");
    $con = mysql_connect($host, $uzivatel, $heslo);
    if (mysql_select_db($db, $con))
     {
     $query = mysql_query("SELECT * FROM saved_variables",$con);
     if ($query)
       {
       $serazeno = mysql_fetch_array($query);
       $cas = $serazeno["NextArenaPointDistributionTime"];
       if($format == false)
         {
         return $cas;
         mysql_close($con);
         }
       else
         {
         $var = date('d.m.Y H:i:s', $cas); //vypíše čas ve formátu den.měsíc.rok hodina:minuta:sekunda
         return $var;
         mysql_close($con);
         } 
       }
     else
       {
       return CHYBA2;
       mysql_close($con);
       }  
     }
    else
     {
     return CHYBA;
     mysql_close($con);
     }
    }
    
    echo DalsiArenaPrepocet();
    ?>

     

    OC to má v tabulce saved_variables kde je jenom jeden jedinej sloupec, alespoň podle wiki :-)

    • Upvote 2
×