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:  

Saqirmdev

Members
  • Content count

    135
  • Joined

  • Last visited

  • Days Won

    5

Posts posted by Saqirmdev


  1. kazdy ma jine vyhody a je lepci na neco jineho ? i kdyz na co je dobrej ascent ? tongue.gif (no flame smile.gif)

    a nebo treba na testovaci realm... je vicero duvodu proc tohle delat

     

    k ty realizaci - slo by asi o spravny nastaveni portu a v ip adrese realmu by se musel pridat i port, opravte me pokud to tak neni, jen teoretizuju smile.gif

     

    Žiaden emu neni nanič dobrý, funguje tak ako si ho opraviš a (+) ako ho opravuju offic. developeri (napr github..), žiaden nieje dokonalý.


  2. Zdravím. Učím sa fixovať veci pomocou custom scriptov, ale hneď som narazil na problém. Robím len menší pokus s warlockovým petom, Impom. Chcel som script, ktorý mu hneď po summone dá 100k hp. Napísal som niečo také:

    #include "ScriptMgr.h"
    #include "ScriptedCreature.h"
    #include "ScriptedGossip.h"
    #include "Player.h"
    #include "PetAI.h"
    #include "Pet.h"
    class pet_imp : public CreatureScript
    {
    public:
    	pet_imp() : CreatureScript("pet_imp") {}
    	struct pet_impAI : public PetAI
    	{
    		pet_impAI(Creature* creature) : PetAI(creature) {}
    		void Reset() OVERRIDE
    		{
    			   me->SetMaxHealth(uint32(100000));
    			   me->UpdateMaxHealth();
    		}
    
    	};
    	CreatureAI* GetAI(Creature* creature) const OVERRIDE
    	{
    		return new pet_impAI(creature);
    	}
    };
    void AddSC_warlock_pet_scripts()
    {
    new pet_imp();
    }
    

    Pridal som všetko správne do Cmake aj do ScriptLoader a nastavil som v DB pri creature_template 416 ScriptName. Ďalej som zakázal nastavovanie statov pomocov StatSystem.cpp. Problém je v tom, že ak sumonnem Impa, objaví sa s 0/1140HP, takže v podstate je dead, ale chodí za mnou. Avšak ak zmením PetAI na ScriptedAI a Impa pridám pomocou .npc add 416, Imp sa objaví so 100k HP, ale ten ktorého vyčarujem má len 1k hp. Viete mi poradiť kde som urobil chybu? Vďaka.

     

    Cez custom scripty všetko nespravíš a budeš mať vtom strašný bordel... naviac Grant Hackfix

    		 void Reset() OVERRIDE
    		 {
    			  me->SetMaxHealth(uint32(100000));
    			  me->UpdateMaxHealth();
    		 }
    

    Reset() v PetAI je evade mode

     

    skús cez funkciu: Player::SummonPet

    switch (petType)
       {
    	case SUMMON_PET:
    		pet->SetMaxHealth(uint32(1000000));
    		pet->UpdateMaxHealth();
    		break;
    	default:
    		break;
    }
    


  3. Já to myslel jinak - bude jeden člověk, který by měl například sekci na fóru. Tam by psal svoje dotazy jako topicy a já bych na ně odpovídal. Tj. celá jeho cesta by byla rozdělena do logických částí (topiců) a mohl by jí následovat kdokoliv jiný.

    Myslím že nezáleží na tom, či to niekto copypastne z googlu sem alebo ľudia to nájdu tam, ak človek sa chce naučiť tak sa stará a nájde si tutoriali a bude si to skúšať, a nie čakať že niekto ho to naučí a vleje mu to do hlavy ..

    • Upvote 1

    1. Konečný výsledek v konfigu by měl vypadat takto RBAC.DefaultGroups = "1,2,3,4"

    Hlúposť, RBAC je delenie accontov do skupín tzv. Administrator, GameMaster, Player, Moderator

    Commandy sú rozdelené a tato funkcia je vcelku dobrá, napr. môžeš si spraviť COMMAND ktorý bude rozdeľovať funkciu pre každú skupinu...

    Ak tam dáš 1,2,3,4 tak to môžem nazvať EPIC HACK FIX problému, v Databaze tabuľka rbac_account_groups by mal každý GM master / ADMIN mať pridanú správnu hodnotu, doporučujem RBAC.DefaultGroups = "1" (v Configu) tzv. každý hráč po založení ACCOUNTU bude mať svoju skupinu (1).

    Nedoporučujem použivať tuto variantu ktorú uviedol Andorhal.

     

    @Frytiks: Toto nakodil -spp ktorý je aktualné DEVELOPER na TRINITYCORE takže je to od TrinityCore...

     

    // Edit: @DBobx je to úplne jednoduché, na TrinityCore je napísane "A bit of brain" -> trocha rozumu, takže ak robí server parta blbcov čo nevie pomalí ako čo funguje tak napíše to čo ty, ja osobne RBAC využívam a nevidím vtom jedinú chybu

    • Downvote 1

  4. SMITE ! SO BEST FELL LIKE GOD!

     

    - Limbo (Logic Game )

    - Demigod (Škoda že to nieje online ale vcelku sranda)

    - Smite ( 3D MOBA GAME)

    - Warcraft 3 (Blizzard games sú proste blizzard games)

    - Star Wars - EAT (Stará strategia ale vcelku dobrá)

    - Command of Conquer - Generals (Všetký CoC sú dobré)

    - Asassin's creed

    - Hearthstone (Vcelku to človeka zabavi)

    - Starcraft II (Blizzard Game)

    - Diablo II - LOD (Blizzard Game Too)

    - WoW (Best of MMORPG & Blizzard Game)

    • Upvote 1

  5. Informačně

     

    Skusil sem TrinityCore, CMangos, Mangos

     

    TrinityCore je dobré když si člověk stáhne dobrou db. Spousta věcí není hotová a nefunguje a to i v případě repacku. Také jádro není ani s poloviny tak stabilní jako Cmangos nebo Mangos. PS holyster repack není tak dobrý jak uvádí.

     

     

    Cmangos je výborné jádro na upravování i když projekt nemá svoji DB a člověk musí stáhnout nějakou co najde na 3.3.5 s tím že si ji na Cataclysm dodělá nedoporučuji database s repacku. Dost lidí si to upravuje a pak to nesedí a dělá to problémy. Každopádně jádro není nijak extra. Cmangos se zaměřuje hlavně WOTLK takže pro catalysm dělá jádro okrajově. Spousta BUGU a chyb co tam je.

     

    Mangos není taky nijak extra, ale volil bych nejvíc asi mangos obyčejný protože i když updatujou jádro po delší době jejich jádro je nejstabilnější. Není potřeba ohledně toho nějak zasahovat. + je to že aktivně pracují na Catacysm a to i s tím že mají vlastní DB na 4.3.4 DB není nijak extra, ale není ani špatná i když musím říct že je docela problém tu DB rozchodit.

     

    Takže podle mě s těch emulátorů je nejlíp zkomulený Mangos i když jiné sem neskoušel

     

    :-D :-D Repack, Repack a TrinityCore nikdy neporovnávaj :-D? Cmangos a Mangos ma malo developerov čo sa o to starajú, takže idú pomaličky ale zase nerobia chyby, zato TrinityCore Denne ma 2-10 Commitov, ale vždy niečo re-workuju napr. Vehicle system a potom to aj tak dopadne, TrinityCore je funkčnejšie ak by som to mal takto zobrať, ja už pracujem s TrinityCore cca 1 rok a doporučujem TrinityCore, ale tak isto musíš mať nejaké základy v DB & Core (C++). Jak mangos tak aj TrinityCore ma ešte dostatok chýb, aj keď wotlk už je +- 6 rokov tak tých chyb je tam ešte fakt dosť ....


  6. Hľadám nejakého schopného a inteligentného Učiteľa ktorý programuje v jazykoch : HTML , php , Css , Jaca , C , C++ , Sql , Mysql

    viem som si toho vedomí že nieje to ľahké a nieje to na pár týžňov či mesiacov očakávam základy a postupne. Samozrejme som ochotný

    zaplatiť . Na cene sa dá dohodnúť. =)

     

    Prajem príjemný zvyšok dňa Walenthein =)

     

    No ako prvé by si sa mohol naučiť písať, Jaca? chcel si povedať Java, SQL (je Dotovaci Jazyk) MYSQL je len program ktorý ti vytvorí network k databaze.

    Takéto veci sa nedajú učiť, musíš si to testovať sám a prísť nato, inak to je strata času..

    • Downvote 1

  7. me sa používa v Creature Scriptoch, tzv. This -> Vykonavateľ tohto scriptu ktorý sa zisťuje v Creature Script_name, napr u Bossa, ak máš script_name napr. boss_lich_king tak v Scripte pod class boss_lich_king : public CreatureScript ... tak me myslí Lich Kinga... (me == this) v Creature scriptoch. ..

     

    V tvojom prípade , ak me sa myslí target

    if (Unit* me = player->GetVictim())
      player->GroupEventHappens(QUEST_STINKYS_ESCAPE_A, me);
    
    Alebo]
    
    player->GroupEventHappens(QUEST_STINKYS_ESCAPE_A, player->GetVictim());
    
    

     

    ak me ma Smerovať na vykonávateľa / Hráča / Na seba, tak je to zbytočné lebo miesto ME tam je PLAYER, ak to chceš mať pre seba player -> me tak stačí toto:

    Player* me = player;
    

    Ale je to zbytočné

    • Downvote 1

  8. Armor Penetration na poslednej Verzii TrinityCore funguje ako má

     

    1) Buď nevieš pullovať core cez git a nemáš šajnu ako sa updatuje

    2) Alebo nevieš ako vôbec Armor Penetration Funguje

     

    uint32 Unit::CalcArmorReducedDamage(Unit* victim, const uint32 damage, SpellInfo const* spellInfo, WeaponAttackType /*attackType*/)
    {
    float armor = float(victim->GetArmor());
    
    // Ignore enemy armor by SPELL_AURA_MOD_TARGET_RESISTANCE aura
    armor += GetTotalAuraModifierByMiscMask(SPELL_AURA_MOD_TARGET_RESISTANCE, SPELL_SCHOOL_MASK_NORMAL);
    
    if (spellInfo)
    	if (Player* modOwner = GetSpellModOwner())
    		modOwner->ApplySpellMod(spellInfo->Id, SPELLMOD_IGNORE_ARMOR, armor);
    
    AuraEffectList const& resIgnoreAurasAb = GetAuraEffectsByType(SPELL_AURA_MOD_ABILITY_IGNORE_TARGET_RESIST);
    for (AuraEffectList::const_iterator j = resIgnoreAurasAb.begin(); j != resIgnoreAurasAb.end(); ++j)
    {
    	if ((*j)->GetMiscValue() & SPELL_SCHOOL_MASK_NORMAL
    		&& (*j)->IsAffectedOnSpell(spellInfo))
    		armor = floor(AddPct(armor, -(*j)->GetAmount()));
    }
    
    AuraEffectList const& resIgnoreAuras = GetAuraEffectsByType(SPELL_AURA_MOD_IGNORE_TARGET_RESIST);
    for (AuraEffectList::const_iterator j = resIgnoreAuras.begin(); j != resIgnoreAuras.end(); ++j)
    {
    	if ((*j)->GetMiscValue() & SPELL_SCHOOL_MASK_NORMAL)
    		armor = floor(AddPct(armor, -(*j)->GetAmount()));
    }
    
    // Apply Player CR_ARMOR_PENETRATION rating and buffs from stances\specializations etc.
    if (GetTypeId() == TYPEID_PLAYER)
    {
    	float bonusPct = 0;
    	AuraEffectList const& armorPenAuras = GetAuraEffectsByType(SPELL_AURA_MOD_ARMOR_PENETRATION_PCT);
    	for (AuraEffectList::const_iterator itr = armorPenAuras.begin(); itr != armorPenAuras.end(); ++itr)
    	{
    		if ((*itr)->GetSpellInfo()->EquippedItemClass == -1)
    		{
    			if (!spellInfo || (*itr)->IsAffectedOnSpell(spellInfo) || (*itr)->GetMiscValue() & spellInfo->GetSchoolMask())
    				bonusPct += (*itr)->GetAmount();
    			else if (!(*itr)->GetMiscValue() && !(*itr)->HasSpellClassMask())
    				bonusPct += (*itr)->GetAmount();
    		}
    		else
    		{
    			if (ToPlayer()->HasItemFitToSpellRequirements((*itr)->GetSpellInfo()))
    				bonusPct += (*itr)->GetAmount();
    		}
    	}
    
    	float maxArmorPen = 0;
    	if (victim->getLevel() < 60)
    		maxArmorPen = float(400 + 85 * victim->getLevel());
    	else
    		maxArmorPen = 400 + 85 * victim->getLevel() + 4.5f * 85 * (victim->getLevel() - 59);
    
    	// Cap armor penetration to this number
    	maxArmorPen = std::min((armor + maxArmorPen) / 3, armor);
    	// Figure out how much armor do we ignore
    	float armorPen = CalculatePct(maxArmorPen, bonusPct + ToPlayer()->GetRatingBonusValue(CR_ARMOR_PENETRATION));
    	// Got the value, apply it
    	armor -= std::min(armorPen, maxArmorPen);
    }
    
    if (armor < 0.0f)
    	armor = 0.0f;
    
    float levelModifier = getLevel();
    if (levelModifier > 59)
    	levelModifier = levelModifier + 4.5f * (levelModifier - 59);
    
    float tmpvalue = 0.1f * armor / (8.5f * levelModifier + 40);
    tmpvalue = tmpvalue / (1.0f + tmpvalue);
    
    if (tmpvalue < 0.0f)
    	tmpvalue = 0.0f;
    if (tmpvalue > 0.75f)
    	tmpvalue = 0.75f;
    
    return std::max<uint32>(damage * (1.0f - tmpvalue), 1);
    }
    
    

     

    Vzorec na CAP:

     if (victim->getLevel() < 60)
    		maxArmorPen = float(400 + 85 * victim->getLevel());
    	else
    		maxArmorPen = 400 + 85 * victim->getLevel() + 4.5f * 85 * (victim->getLevel() - 59);
    

    MaxArmorPenetration na Level 80 => 15252 Takže ak to testuješ na 30 000 armor tak je to zbytočne lebo tam je ten rozdiel minimálny

    takže 30 000 - (15252 * 0.%) ak % => 100 tak je to (15252 * 1 = 15252) 30 000 - 15252 = 14784 zostatok armoru pri 1OO% ARP


  9. Nie, tie updaty čo dávaš ak si ich nejak mergol cez CUT alebo podobné tak myslím že TrinityCore tam ma chybu a vytvorí ti to dva krat to iste takže más 4000 Riadkov SQL updatov *2 => 8000 riadkov

     

    Aspoň tento problém som mal ja pri updatovani databáze keď sa nemýlim, ale radšej si to over..

     

    Riešenie: Ak tvoja DB je čistá, tak ju smaž, znova si nahoď TDB, a potom si skus upraviť ten merge tych SQL v updates a pôjde ti to bez erroru, ak sa nemýlim tak v 55-60% ti to hodí error ako DUPLICATE a s Equipment Template

     

    @Tomáš Kolinger: World Databáza sa s updatmi Character a Auth databáze nijak nespája, data sa používajú v core zo všetkých 3 db, to ale z updatmi nemá nič spoločne ohľadom Erroru a spojení


  10. Môžeme Ponúknuť:

    - Prácu v dobrom kolektíve

    - Skúseného a Férového Administrátora

    - Možnosť priučiť sa v každej oblasti

    - Kvalitné zázemie servera

    - Možnosť podielať sa na novom projekte

     

     

    Až na to ,,Možnosť priučiť sa v každej oblast" (ale i to je pochybný) prakticky nenabízíte nic.

    Nevím jestli takhle někoho získáte

     

    V každej oblasti takže C++, SQL to je všetko ohľadom WoW, si si istý že máš dostatočné skúsenosti aby si dokázal niekoho priučiť..

    Tvrdíš o sebe že si skúsený Admin odkiaľ berieš tie skúsenosti, sorry ale poznám adminov z veľkých serverov a tvoje meno som nikde nevidel iba že by si sa inak volal (nejaký malaco)?

     

    Ale inak veľa šťastia, beztak ďalší 3.3.5a fun server ako ďalších 1500, zaujíma ma čo chceš ponúknuť aby si vynikol

×