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:  

minig

Members
  • Content count

    447
  • Joined

  • Last visited

  • Days Won

    10

Everything posted by minig

  1. Po dlouhé době zdravím všechny uživatele Wowresource Mým cílem je znovu rozjet TBC server. Vytvořil jsem proto projekt s názvem "Stormrage" - mou vizí je mezinárodní server s blizz raty a drobnými server-side úpravami světa. Co je už na serveru uděláno? funkční, i když nedokončený web, doména stormrage.cz pronajato VPS, spuštěno nijak neupravené oregoncore Koho sháním a co od něj požaduji? Developery Časová flexibilita, schopnost pracovat v týmu, zodpovědnost podmínkou C++, SQL a předchozí znalosti z oboru výhodou - možnost zaučit se Náplň práce - opravy herního obsahu a tvoření obsahu nového Game Mastery Opět, důležitý je čas, týmová spolupráce, zodpovědnost a znalost WoW a angličtiny Předchozí zkušenosti výhodou Náplň práce - zpočátku především betatesting, později komunikace s hráči, organizace eventů apod. Co za to nabízím? Server v žádném případě není výdělečný, proto nemohu nabídnout finanční ohodnocení. Co ale mohu nabídnout je: Práci v přátelském týmu (postarám se, aby takový byl) Zaučení a vysvětlení základů emulace WoW serveru Možnost zdokonalit se v programování a práci s databázemi a Linuxem Radost z pohledu na rozrůstající se server Na závěr ještě připojuji kontakt: Skype: Enigmo of Stormrage Případně PM zde na WoWresource. Děkuji všem, co dočetli až sem a pevně doufám, že najdu schopné a přátelské kolegy.
  2. Zdravím všechny Rozhodl jsem se do zdejší sbírky návodů přidat jeden další. Je to návod k práci s gossipy v TC2 na úrovni emulátoru. Ano, v databázi se taky dají vytvářet, ale s velmi omezenými možnostmi. Vzhledem k tomu, že v jádře si můžete lecos dopsat sami, tak jste omezeni pouze svými schopnostmi a představivostí. To není tak hrozné, pokud umíte alespoň základy C++... Pro začátek bych uvedl reference na pár návodů, abych úplné základy nemusel vysvětlovat. Kompilace: http://www.trinitycore.info/How-to:Win http://www.trinitycore.info/How-to:Linux Přidání scriptu do zdrojových kódů: http://www.trinitycore.info/How-to:CustomScript Jako příklad jsem zvolil teleportera – přijde mi jednoduchý a názorný Takže přejděme k samotnému scriptu: Začneme tím, že připojíme hlavičku -> #include "ScriptPCH.h" Tímto jsme připojili soubory, ve kterých jsou deklarované třídy a jejich metody, které zde budeme používat. Nyní si vytvoříme vlastní třídu, která bude dědit CreatureScript: class teleporter : public CreatureScript { public: teleporter() : CreatureScript("teleporter_npc") {} Toto je začátek naší třídy. Vytvořili jsme si zatím jen konstruktor. Řetězec “teleporter_npc“ , který předáváme konstruktoru CreatureScript, je jméno scriptu, které přiřadíme npc v databázi, aby emulátor věděl, že má náš script použít. Dále si vytvoříme metody, které se budou volat při událostech(eventech), při kterých budeme chtít, aby se něco dělo. Tedy když hráč začne mluvit s gossipem, a nebo když si vybere jednu z možností v gossip menu. bool OnGossipHello(Player * player, Creature * npc); bool OnGossipSelect(Player * player , Creature* npc, uint32 sender, uint32 action); }; Metodě OnGossipHello se předává hráč, který kliknul na gossipa a gossip. Metodě OnGossipSelec se předává hráč, který klinul na gossipa, gossip, a dvě 32bitové celočíselné proměnné, podle kterých určíme, na kterou položku menu hráč klikl. Tím máme navrženou třídu. Ovšem takhle zatím gossip nic nedělá. Potřebujeme tedy napsat, co má dělat. Začneme metodou OnGossipHello -> co se má udělat, když hráč klikne na gossipa(pozdraví ho) if(player->isInCombat()) //zjistíme, zda je hráč v combatu { npc->MonsterWhisper("Jsi v combatu!!!", player->GetGUID()); return false; } switch(player->getTeam()) //zjistíme si frakci hráče { case HORDE: player->ADD_GOSSIP_ITEM(2, "Teleport to Orgrimmar", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1); //přidáme položku do menu, podrobněji vysvětlím níže player->ADD_GOSSIP_ITEM(2, "Teleport to Thunder Bluff", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2); player->ADD_GOSSIP_ITEM(2, "Teleport to Silvermoon City", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 3); player->ADD_GOSSIP_ITEM(2, "Teleport to Undercity", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 4); break; case ALLIANCE: player->ADD_GOSSIP_ITEM(2, "Stormwind City", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 5); player->ADD_GOSSIP_ITEM(2, "Ironforge", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 6); player->ADD_GOSSIP_ITEM(2, "The Exodar", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 7); player->ADD_GOSSIP_ITEM(2, "Darnassus", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 8); break; default: break; } if(player->getLevel() >= 58) //podle levelu hráče se rozhodneme, zda mu zobrazíme další města player->ADD_GOSSIP_ITEM(2, "Shattrath City", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 9); if(player->getLevel() >= 68) player->ADD_GOSSIP_ITEM(2, "Dalaran", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 10); player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, npc->GetGUID()); //odešleme menu return true; } Nyní si podrobněji rozebereme makro player->ADD_GOSSIP_ITEM(a, b, c, d); (je to vlastně metoda player->PlayerTalkClass->GetGossipMenu().AddMenuItem(-1, a, b, c, d, "", 0); ) a... id ikonky, která bude u možnosti v menu. (celá čísla v rozmezí 1-10 včetně) b... text, který bude popisovat možnost v menu c... sender – většinou se používá/používám hodnota GOSSIP_SENDER_MAIN, ovšem tato proměnná by se dala využít třeba i pro rozeznávání úrovní menu, ze kterých byla položka odeslána.... netrapme se s tím. d... action – celočíselný klíč, podle kterého poznáte, na kterou položku hráč klikl Budeme pokračovat metodou OnGosipSelect(Player *, Creature *, uint32, uint32) Jak jsem již říkal, v jednodušších případech není třeba používat proměnnou sender, stačí nám action, takže pro našeho teleportera bude vypadat takto: bool teleporter::OnGossipSelect(Player * player , Creature* npc, uint32 sender, uint32 action) { player->PlayerTalkClass->ClearMenus(); //pročistíme menu – smažeme položky //Zde bychom ještě mohli/měli prověřovat sender pomocí if(sender == GOSSIP_SENDER_MAIN) , ovšem zde to není nutné. switch(action) //podle hodnoty action zjistíme, na kterou položku hráč klikl(viz. výše) { case GOSSIP_ACTION_INFO_DEF + 1: //Orgrimmar player->CLOSE_GOSSIP_MENU(); //metoda pro teleport hráče – vysvětlím níže player->TeleportTo(1, 1483.25f, -4416.525f, 25.003f, 0); break; case GOSSIP_ACTION_INFO_DEF + 2: //Thunder Bluff player->CLOSE_GOSSIP_MENU(); player->TeleportTo(1, -1197.3f, 30 , 177, 1.589f); break; case GOSSIP_ACTION_INFO_DEF + 3: //Silvermoon City player->CLOSE_GOSSIP_MENU(); player->TeleportTo(530, 9530.775f, -7300.459f, 15.24f, 3.139f); break; case GOSSIP_ACTION_INFO_DEF + 4: //Undercity player->CLOSE_GOSSIP_MENU(); player->TeleportTo(0, 1560.7f, 240.45f, -43.1045f, 0.01f); break; case GOSSIP_ACTION_INFO_DEF + 5: //Stormwind City player->CLOSE_GOSSIP_MENU(); player->TeleportTo(0, -8800.41f, 622.355f, 96.8f, 2.255f); break; case GOSSIP_ACTION_INFO_DEF + 6: //Ironforge player->CLOSE_GOSSIP_MENU(); player->TeleportTo(0, -4918.880f, -940.406f, 501.57f, 5.42f); break; case GOSSIP_ACTION_INFO_DEF + 7: //The Exodar player->CLOSE_GOSSIP_MENU(); player->TeleportTo(530 , -4016.944f, -11675.455f, -134.932f , 0); break; case GOSSIP_ACTION_INFO_DEF + 8: //Darnassus player->CLOSE_GOSSIP_MENU(); player->TeleportTo(1, 9951.804f, 2280.401f, 1341.394f, 1.425f); break; case GOSSIP_ACTION_INFO_DEF + 9: //Shattrath City player->CLOSE_GOSSIP_MENU(); player->TeleportTo(530, -1837.538f, 5378.270f, -12.427f, 1.941f); break; case GOSSIP_ACTION_INFO_DEF + 10: //Dalaran player->CLOSE_GOSSIP_MENU(); player->TeleportTo(571, 5848.875f, 602.287f, 651.142f, 2.448f); break; } return true; } Myslím, že většina kódu je jasná, ovšem vrátím se k metodě TeleportTo(map, x, y, z, o). Tato metoda teleportuje hráči na vámi zvolené místo. Map je mapa, na kterou chcete teleportovat, x y z o jsou souřadnice. Možná jste si všimli, že za každým desetinným číslem mám f. Je to proto, že Visual Studio, které používám, volí implicitně datový typ double pro všechna desetinná čísla, která mu napíšu konstantně do kódu. Jenže fukce TeleportTo() má bere souřadnice ve float, pto dávám symbolem f najevo, že toto číslo má být ve float (ono by to vlastně nevadilo, jenže při kompilaci si na to visualko postěžuje... takže aby to tam nepřekáželo...) Tím máme hotovou tu nejtěžší část scriptu, tím ale práce nekončí. Ještě musíme na konec souboru připojit jednu funkci, kterou budeme dále volat ve Scriptloader.cpp (tam se zapisují všechny scripty) Vypadá takto: void AddSCTeleporter() { new teleporter(); } Nyní funkci AddScTeleporter() zapíšeme do ScriptLoader.cpp Je potřeba ji zapsat na dvě různá místa dvěma různými způsoby: nejdříve ji deklarovat, poté zavolat. Deklarace: #include "ScriptLoader.h" //custom void AddSCTeleporter(); //examples void AddSC_example_creature(); void AddSC_example_escort(); void AddSC_example_gossip_codebox(); void AddSC_example_misc(); void AddSC_example_commandscript(); (jen si pomocí ctrl+f najděte jednu z funkcí, která je okolo naší funkce – schválně jsem napsal i další...) Zavolání funkce: void AddCustomScripts() { #ifdef SCRIPTS /* This is where custom scripts should be added. */ AddSCTeleporter(); #endif } Stejě jako u deklarace zkopírováno i pár dalších funkcí okolo pro zorientování. Úplně posledním krokem bude přiřadit script nějakému npc – změníme hodnotu sloupce‘ ScriptName‘ na “teleporter_npc“ a zajistíme, aby ‘npcflag‘ bylo nastaveno na gossip – tedy 1 Celý script zde: Tím je to hotové. Doufám, že návod byl srozumitelný, a že se bude někomu hodit. EDIT: děkuji wolfovi za připomínky, snad už je to v pořádku (i to entry/GUID )...
  3. Hledáme Administrátora a Developera

    v pohodě, jen se ptám No nic, hodně štěstí v hledání, třeba někoho najdeš a opravdu se to rozjede
  4. Hledáme Administrátora a Developera

    Ta 'leš' celkem bije do očí, oprav si to prosimtě Kromě toho, proč tu máš dva topicy? V jednom stavíš tým na gaming portál a tady na cata server? To to nejde dát do jednoho? Nebo na portál už kašleš?
  5. Recompiling Errory

    1> Cannot find source file: 1> Custom/enchantment.cpp Chyba spíš mezi židlí a klávesnicí, nemyslíš?
  6. Recompiling Errory

    a nechceš sem poslat ten script? takhle na blind můžu jen tipovat
  7. Recompiling Errory

    fatal error C1083: Cannot open include file: 'ScriptedPch.h': No such file or directory ScriptedPch.h je blbost... dej místo toho ScriptPCH.h
  8. stáhni jinou verzi mysql, taky mi to dělalo(na winXP, na 7 to bylo OK, takže možná nekompatibilita nejnovější verze mysql? Kdo ví...)
  9. Windows 7 Home Premium x64, a v něm Chrome, Skype, Visual Studio, Dropbox, Avast, KMplayer, utorrent, Daemon tools, winrar
  10. [NÁVOD] Jak se stát Database Developerem

    No nevím hele... Jako název by se asi víc hodilo "Jak vypadá wow databáze", sice jsi popsal k čemu slouží jednotlivé databáze, popsal pár sloupců z quest_template, ale neuvedl jsi žádný názorný příklad, jak taková oprava vypadá. Z toho to pochopí někdo, kdo už má s databázemi nějakou tu zkušenost, ne někdo kdo je vidí poprvé. Ten opravdu potřebuje ten příklad(třeba ukázat opravu questu, na který je potřeba zabít creaturu, sebrat item apod.) Nechci být zlej, to co píšeš je pravda, ale opravdu bych to z toho nepochopil(možná je to mnou, ale to už je na jiné povídání ).Dále, když napíšeš nadpis "Příklad opravy questu", a pod ním vypíšeš pár sloupců s popisem, k čemu slouží tak to není úplně ideální, že? PS: píše se v databázi, ne v databázy, máš to tam víckrát, kdyby to bylo jednou, přejdu to, ale takhle to opravdu působí zvláštně
  11. SFML [Visual Studio 2010]

    VC2010 nepodporuje C, pouze C++ takže takový návod asi nenajdeš... (ale jsou částečně kompatibilní, pouze některé C prasárny fungovat nemusí, jinak je to OK). Podle toho návodu, co ukazuješ, by to jít mělo... skus to znovu, třeba jsi někde udělal chybu...
  12. extrahace vmap

    vmap4extractor.exe ti vytvoří složku buildings. Ty pak musíš pustit vmap4assembler.exe s dvěma parametry - složka, kam se mají vmapy extrahovat + buildings. Tedy třeba vytvoř složku vmaps, a poté dej do příkazového řádku "vmap4assembler.exe vmaps Buildings"
  13. Zdravím vás, Opět jsem jednou doplatil na vlastní hloupost. Tentokrát jsem si omylem objednal hru na PS3 místo na Xbox No, aspoň se to pokouším prodat pod cenou. Mou nabídku můžete najít zde: http://aukro.cz/show_item.php?item=2388947060 Jak je napsáno i tam, při osobním převzetí v Praze možno i hru vyměnit za nějakou na Xbox(nejlépe nějakou podobného žánru). V případě zájmu buď kupte hru přes aukro, nebo pokud chcete vyměnit za jinou hru, kontaktuje mě prosím PM zde na fóru. Děkuji za přečtení, minig
  14. [prodám] PS3 - GTA Episodes from Liberty City

    No, můžu to zkusit, uvidím
  15. Mininotebook

    ntdrt: dualcore atom na 1.5GHz ho nepustí, vlastní zkušenost Ono to možná bude hardwarovou akcelerací... Nex: Ultrabook je cenově trošku jinde než mininotebooky
  16. Mininotebook

    Lenovo S205, jiný netbook bych nebral... (resp jen netbooky se zacatem, Ontario a Atom ani nepustí 720p film)
  17. Massive-gaming.eu Hledá developera

    Pane bože... to je zase topic. Mr. Adeer, 4 posty za sebou snad nejsou nutný, ne? Známe čudlík EDIT?
  18. StrawberryCore 5.0.1 BETA !

    Nexi, podívej se pořádně na soubory v repozitáři.... Žádné cmake soubory tam nejsou, naopak je tam složka win se sln pro Visual studio 10/11. Takže cmake se asi nepoužívá
  19. [C++] Custom BOSS Help

    zkus prostudovat example script (https://github.com/T...le_creature.cpp)... + máš návod tady na WS http://www.wowresour...pic=20396&st=20
  20. Web Developer na 3serveru

    Mezi víkendovými projekty, co se tu v poslední době množí, tenhle server vypadá velmi dobře Přeji hodně štěstí při hledání...
  21. Linuxák OregonCore

    Takhle se ti nikdo neozve... skus se trochu rozepsat o serveru, který chceš spustit. Navíc jsem si nevšiml, co developerovi nabízíš za jeho práci.
  22. Notebook - Je tento dobrý na....?

    Nekrm trolla
  23. Uprava DBC spell

    http://www.oregoncore.com/wiki/index.php?title=Spell.dbc
  24. [C++] Vendor

    Pokud to tam nezvládneš přenést, tak se vykašli na posílání mailem, a jen si tam hoď ověření, zda má hráč místo v inventáři. Pokud ne, vynadej mu
  25. (Trinity Core 2) Guild info

    Možná by se hodilo nějaký demo či screen... pro ty co by to chtěli vidět http://minig.8u.cz/ (btw je to Oregon DB, takže na tom to jede) PS: Co ještě přidělat výpis členů guildy při zobrazení podrobného infa?
×