-
Announcements
-
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. -
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 -
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. -
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
-
Content count
135 -
Joined
-
Last visited
-
Days Won
5
Posts posted by Saqirmdev
-
-
- žiadny script ktory spawnuje gbojecty po zabití som nenašiel ak maš na mysli konkretny script sem s nim -.-
- flags su na 0 ako u daneho npc tak u gobjectu v tom by som asi problem nehladal ?
Neni to v Scripte (C++) ale v SQL si fixni ten gameobject: http://collab.kpsn.org/display/tc/Gameobject+template+tc2
Pozri si flagu a type
-
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; }
-
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 ..
- 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
- 1
- Konečný výsledek v konfigu by měl vypadat takto RBAC.DefaultGroups = "1,2,3,4"
-
Snaha o CZ/SK MoP ktorý dopadne ako každý jeden..
-
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)
- 1
-
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ť ....
-
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..
- 1
-
Ja tento problém nemám :-/ hmm, skus si nahrať znová TDB (world) Tabuľku Creature, Gameobjects, AreaTrigger, btw crashuje to aj Clienta (WoW Error)
-
Akú máš rev. ? Možno je tam nejaký object ktorý si nechtiac spawnul a zhadzuje ti server alebo nejaký AreaTrigger, Boss etc.. Nemáš náhodou repack?
-
Toto fixoval TrinityCore, ale skus sa pozrieť na RBAC či to maš povolené
- 1
-
Tento error je myslím na TrinityCore lebo asi smazali tuto úpravu z updates.. ak si dobré pamätám tak som mal ten istý problem
Tu máš to SQL, zahrňa to zopar mojích fixov, takže by si mal mať správne fixle SpellTargetSpell asi u všetkých bossov včetne Harvest Soul (LK)
- 2
-
v Spell_target_spell myslím si pridaj stlpec effindex
-
Doporučujem ti použiť SQL developera, aspoň pre teba ak si newbie...
-
Stiahni si (doporučujem HEIDISQL) otvor WORLD tabuľku -> QUERY a nahoď tam tie .SQL
-
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é
- 1
-
Alebo zober si Oregon Core a fixuj si ho sám ... na 2.4.3 už nieje toľko práce, a za týždeň to spravíš pohode (CC Delay, Grounding Totem System, Spell Reflection System, Vanisihing System, BInary Resisty) a dôležite veci máš fixle
-
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
-
-
Nemáš náhodou 32bitový system a 64 bitové TrinityCore na linux? alebo niečo take?
-
Funguje to tak Že ak niekto smaže Equip tak sa to smaže s Equipment Cache a s Item_instance ak sa nemýlim.. V tom prípade GUID toho itemu neexistuje a je nenahraditeľný, iba že by si to nahral zo zálohy.
-
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í
-
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
-
Je to iný item, ak myslíš tie normálne (myslím že existuje vo WoW) ..
Alebo si môžeš zistiť Item ModelId z MPQ a vytvoriť si vlastný item kde bude custom skin (Je milion modelov vo MPQ čo niesu definované v SQL (item_template))
2 servery na 1 pc
in MaNGOS
Posted · Edited by Saqirmdev · Report reply
Žiaden emu neni nanič dobrý, funguje tak ako si ho opraviš a (+) ako ho opravuju offic. developeri (napr github..), žiaden nieje dokonalý.