-
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:
-
Galatex
-
Content count
17 -
Joined
-
Last visited
Posts posted by Galatex
-
-
Do úvodního příspěvku přidán portér od Henzig,kterému děkuji za vytvoření TC portéra.
-
Promiň,s TC pracovat neumím jsem nováček,takže jsem rád že umím zatím základy mangosu.
-
Ahoj,mám problém s webovou registrací jsou to scripty :
<?php include('function.php'); ?> <head> <html> <title>Account Registration</title> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body style="background-image:url(<?php include ('configs.php'); echo $image ?>);font-family:arial;font-size:15px;color:<?php echo $textcolor ?>;"><?php if($_GET['do'] == "register") { Register(); }elseif($_GET['error']) { Error("" . $_GET['error'] . ""); }else{ ?> <div id="main"> <center><form action='?do=register' method='POST'> <br /> <h2 style="color:<?php echo $headercolor ?>;">Register Account!</h2> <b>Username:</b><br /> <input type="text" name="user" value="" onfocus="this.value='';"> <br /> <b>Password:</b><br /> <input type="password" name="password" value="" onfocus="this.value='';"> <br /> <div id="radio"> <input type="radio" name="flags" value="0"> Classic <br /> <input type="radio" name="flags" value="8"> Burning Crusade <br /> <input type="radio" name="flags" value="24"> Wotlk </div> <br /> <input type="submit" value="Register"></td></tr></table> </div> <br /> <br /> <div id="extra"> <br /> <?php echo $message; ?> <br /> </form> <div id="footer"> <h5>Copyright (C) <?php echo $message2 ?> All Rights Reserved</h5> </div> </center> <?php } ?> </span> </body> </html>
<?php function Error($Error) { echo "<center><b><span style='color:#00FFFF;'>" . $Error . "</span></b></center>"; } function ConnectMysql() { include("configs.php"); $link=mysql_connect("" . $mysql_host . "","" . $mysql_user . "","" . $mysql_pass . ""); if(!$link) { echo "Cannot connect to database!"; }else{ mysql_select_db("". $mysql_db . "",$link); } } function register() { include('configs.php'); if($core == 1) { if(isset($_POST['flags'])) { if($_POST['flags'] == "0") { $flags = "0"; }elseif($_POST['flags'] == "8") { $flags = "1"; }elseif($_POST['flags'] == "24") { $flags = "2"; } }else{ echo '<script type="text/javascript">window.location = "index.php?error=Please select an expansion.";</script>'; exit(); } ConnectMysql(); $user_chars = "#[^a-zA-Z0-9_\-]#"; if ((empty($_POST["user"]))||(empty($_POST["password"])) ) { echo '<script type="text/javascript">window.location = "index.php?error=You did not enter all the required information.";</script>'; } else { $username = strtoupper($_POST["user"]); $password = strtoupper($_POST["password"]); if (strlen($username) < 3) { echo '<script type="text/javascript">window.location = "index.php?error=Username too short.";</script>'; exit(); }; if (strlen($username) > 30) { echo '<script type="text/javascript">window.location = "index.php?error=Username too long.";</script>'; exit(); }; if (strlen($password) < 3) { echo '<script type="text/javascript">window.location = "index.php?error=Password too short.";</script>'; exit(); }; if (strlen($password) > 30) { echo '<script type="text/javascript">window.location = "index.php?error=Password too long.";</script>'; exit(); }; if (preg_match($user_chars,$username)) { echo '<script type="text/javascript">window.location = "index.php?error=Username contained illegal characters.";</script>'; exit(); }; if (preg_match($user_chars,$password)) { echo '<script type="text/javascript">window.location = "index.php?error=Password contained illegal characters.";</script>'; exit(); }; $username = mysql_real_escape_string($username); $password = mysql_real_escape_string($password); $qry = mysql_query("SELECT username FROM account WHERE username = '" . $username . "'"); if (!$qry) { echo '<script type="text/javascript">window.location = "index.php?error=Error querying database.";</script>'; exit(); }; if ($existing_username = mysql_fetch_assoc($qry)) { foreach ($existing_username as $key => $value) { $existing_username = $value; }; }; $existing_username = strtoupper($existing_username); if ($existing_username == strtoupper($_POST['user'])) { echo '<script type="text/javascript">window.location = "index.php?error=That username is already taken.";</script>'; exit(); }; unset($qry); $sha_pass_hash = sha1(strtoupper($username) . ":" . strtoupper($password)); $register_sql = "INSERT INTO account (username, sha_pass_hash, expansion) VALUES ('" . $username . "','" . $sha_pass_hash . "','" . $flags . "')"; $qry = mysql_query($register_sql); if (!$qry) { echo '<script type="text/javascript">window.location = "index.php?error=Error creating account.";</script>'; exit(); }; echo '<br /><br /><br /><br /><br /><br /><center><span style="color:#00FFFF;">Account successfully created.<br /></span></center>'; }; }elseif($core == 2) { if(isset($_POST['flags'])) { $flags = "" . $_POST['flags'] . ""; }else{ echo '<script type="text/javascript">window.location = "index.php?error=Please select an expansion.";</script>'; exit(); } ConnectMysql(); $user_chars = "#[^a-zA-Z0-9_\-]#"; if ((empty($_POST["user"]))||(empty($_POST["password"])) ) { echo '<script type="text/javascript">window.location = "index.php?error=You did not enter all the required information.";</script>'; } else { $username = strtoupper($_POST["user"]); $password = strtoupper($_POST["password"]); if (strlen($username) < 3) { echo '<script type="text/javascript">window.location = "index.php?error=Username too short.";</script>'; exit(); }; if (strlen($username) > 30) { echo '<script type="text/javascript">window.location = "index.php?error=Username too long.";</script>'; exit(); }; if (strlen($password) < 3) { echo '<script type="text/javascript">window.location = "index.php?error=Password too short.";</script>'; exit(); }; if (strlen($password) > 30) { echo '<script type="text/javascript">window.location = "index.php?error=Password too long.";</script>'; exit(); }; if (preg_match($user_chars,$username)) { echo '<script type="text/javascript">window.location = "index.php?error=Username contained illegal characters.";</script>'; exit(); }; if (preg_match($user_chars,$password)) { echo '<script type="text/javascript">window.location = "index.php?error=Password contained illegal characters.";</script>'; exit(); }; $username = mysql_real_escape_string($username); $password = mysql_real_escape_string($password); $qry = mysql_query("SELECT login FROM accounts WHERE login = '" . $username . "'"); if (!$qry) { echo '<script type="text/javascript">window.location = "index.php?error=Error querying database.";</script>'; exit(); }; if ($existing_username = mysql_fetch_assoc($qry)) { foreach ($existing_username as $key => $value) { $existing_username = $value; }; }; $existing_username = strtoupper($existing_username); if ($existing_username == strtoupper($_POST['user'])) { echo '<script type="text/javascript">window.location = "index.php?error=That username is already taken.";</script>'; exit(); }; unset($qry); $register_sql = "INSERT INTO accounts (login, password, flags) VALUES ('" . $username . "','" . $password . "','" . $flags . "')"; $qry = mysql_query($register_sql); if (!$qry) { echo '<script type="text/javascript">window.location = "index.php?error=Error creating account.";</script>'; exit(); }; echo '<br /><br /><br /><br /><br /><br /><center><span style="color:#00FFFF;">Account successfully created.<br /></span></center>'; }; } } ?>
+ samozřejmě config,který si myslím tady není potřeba...
Teď k samotnému jádru věci: registrace jede,ale jen do chvíle kdy zmáčknete registre a ono to vyhodí error: Error querying database.,najdete i v tom druhém kódu zadané... ale bohužel nevím co stím rady?
-
Nahrát do DB(mangos...),nevím co používáš jestli SQLyog nebo co...v SQLyog klikneš na mangos,restore from SQl dump,vybereš ty soubory(přečti si Readme!ať víš v jakém pořadí...)a dáš execute a tak pokračuj až to tam budeš mít all...
-
Ahoj,
Hledám šikovné lidi co by se ujal pozice DEVELOPER
Mám tu dvě volne pozice na post developera :
Developer
Znalosti :
Trinity Core 2
Linux Ubuntu 10.04
SQL
anglický jazyk
C/C++
Co nabízím?
Post GM In-GAME
kvalitní zázemí v projektu s potencionálem
Na dalších věcech se můžeme dohodnout
Kontakt :
- E-mail : [email protected] ( sleduji ho jednou týdně )
- ICQ : 638-184-608
- SKYPE : Dark_Masias
PS:Nepište prosím PM to Galatex,pouze zadal nabídku,jinak s tímto nemá nic společného.
-
Zdravím,dal jsem si práci a vytvořil SQL teleportéra.
Portuje:Aliance:
Stormwind
Ironforge
Darnassus
Exodar
Horda:
Orgrimmar
Thunderbluff
Undercity
Silvermoon City
Raidy:
Naxxramas
Ulduar
Obsidian Sanctum
The Eye of Ethernity
Onyxia's Lair
Vault of Archavon
Trial of the Crusader
Icecrown Citadel
Dungy:
Nexus
(brzo,přibudou další)
Stahujte TELEPORTÉR
SNAD NĚKDO VYUŽIJE
EDIT:nefunkční soubor Portér.sql(opraveno,nahrazen snad to teď pojede.)
EDIT: Přidán portér pro TC by Henzig(Není moje práce)
- 2
-
nevím možná by stačilo SQL ne?
:EDIT sry chyba,SQL to fakt nespraví...
- 1
- 1
-
No,odzkoušel jsem to,ale je tu chyba:
Error occured at:2011-02-18 17:28:32
Line no.:10
Error Code: 1054 - Unknown column 'SkillOrClass' in 'field list'
Query:
REPLACE INTO `quest_template` (`entry`, `Method`, `ZoneOrSort`, `SkillOrClass`, `MinLevel`, `QuestLevel`, `Type`, `RequiredRaces`, `RequiredSkillValue`, `RepObjectiveFaction`, `RepObjectiveValue`, `RequiredMinRepFaction`, `RequiredMinRepValue`, `RequiredMaxRepFaction`, `RequiredMaxRepValue`, `SuggestedPlayers`, `LimitTime`, `QuestFlags`, `SpecialFlags`, `CharTitleId`, `PlayersSlain`, `BonusTalents`, `PrevQuestId`, `NextQuestId`, `ExclusiveGroup`, `NextQuestInChain`, `SrcItemId`, `SrcItemCount`, `SrcSpell`, `Title`, `Details`, `Objectives`, `OfferRewardText`, `RequestItemsText`, `EndText`, `ObjectiveText1`, `ObjectiveText2`, `ObjectiveText3`, `ObjectiveText4`, `ReqItemId1`, `ReqItemId2`, `ReqItemId3`, `ReqItemId4`, `ReqItemCount1`, `ReqItemCount2`, `ReqItemCount3`, `ReqItemCount4`, `ReqSourceId1`, `ReqSourceId2`, `ReqSourceId3`, `ReqSourceId4`, `ReqSourceCount1`, `ReqSourceCount2`, `ReqSourceCount3`, `ReqSourceCount4`, `ReqCreatureOrGOId1`, `ReqCreatureOrGOId2`, `ReqCreatureOrGOId3`, `ReqCreatureOrGOId4`, `ReqCreatureOrGOCount1`, `ReqCreatureOrGOCount2`, `ReqCreatureOrGOCount3`, `ReqCreatureOrGOCount4`, `ReqSpellCast1`, `ReqSpellCast2`, `ReqSpellCast3`, `ReqSpellCast4`, `RewChoiceItemId1`, `RewChoiceItemId2`, `RewChoiceItemId3`, `RewChoiceItemId4`, `RewChoiceItemId5`, `RewChoiceItemId6`, `RewChoiceItemCount1`, `RewChoiceItemCount2`, `RewChoiceItemCount3`, `RewChoiceItemCount4`, `RewChoiceItemCount5`, `RewChoiceItemCount6`, `RewItemId1`, `RewItemId2`, `RewItemId3`, `RewItemId4`, `RewItemCount1`, `RewItemCount2`, `RewItemCount3`, `RewItemCount4`, `RewRepFaction1`, `RewRepFaction2`, `RewRepFaction3`, `RewRepFaction4`, `RewRepFaction5`, `RewRepValue1`, `RewRepValue2`, `RewRepValue3`, `RewRepValue4`, `RewRepValue5`, `RewOrReqMoney`, `RewMoneyMaxLevel`, `RewSpell`, `RewSpellCast`, `RewMailTemplateId`, `RewMailDelaySecs`, `PointMapId`, `PointX`, `PointY`, `PointOpt`, `DetailsEmote1`, `DetailsEmote2`, `DetailsEmote3`, `DetailsEmote4`, `DetailsEmoteDelay1`, `DetailsEmoteDelay2`, `DetailsEmoteDelay3`, `DetailsEmoteDelay4`, `IncompleteEmote`, `CompleteEmote`, `OfferRewardEmote1`, `OfferRewardEmote2`, `OfferRewardEmote3`, `OfferRewardEmote4`, `OfferRewardEmoteDelay1`, `OfferRewardEmoteDelay2`, `OfferRewardEmoteDelay3`, `OfferRewardEmoteDelay4`, `StartScript`, `CompleteScript`) VALUES (126584, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Chci Buffnout Divine Spirit...', 'Kdyz jsi vezmes tento Quest tak te Buffnu Kouzlem Divine Spirit', '', 'Prijd se na Buffovat zas!', '', '', '', '', '', '', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48073, 48073, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
Řešení? jednoduché: smazat v kódu tabulku SkillOrClass+ve VALUES čtvrté číslo(tohle musíme udělat ve všech napsaných tabulkách,tabulkách pro buffy,v npc_buffer není potřeba to jde)
Po smazání tohohle Buffer jede:D
Je možné že to je mou revizí,nevím jak je to na ostatních,ale jinak dobrý...
-
Ahoj myslíte že tenhle script bude fungovat? (jsou to dva scripty jeden na text
INSERT INTO `eventai_scripts` (`id`creature_id`event_type`event_param`event_param2`action1_type`action1_param1`action2_type`action2_param1`comment`) VALUES (888888`36597`6`0`0`2`89898`20`1`Speciální event s Lich Kingem...`)
INSERT INTO `localized_texts` (`id`text_yell`) VALUES (`78788`This competion begin now! You are champions? I tell You... I What ever I got,I never lose!!! You,worship in front of me and I give you fast death!`)
?? chci aby to fungovalo jako event,když lidi killnou toho lich kinga že vylootujou nějaký zvláštní item,který pro tento účel vytvořím...jde o to jestli ten Lick king udělá to co má(prostě vykřikne text a prostě bude útočit)
Jesli ne prosím můžete nějak upravit aby to šlo?
-
No nevím jak na trinity,ale mě na Mangosu to dělalo to samé.Chyba?? jo v uživateli sanžil jsem si vypnout vmapy(nechápu,ale nešlo to:(,ale to je jedno),tak jsem si trochu hrál s mangosd.conf,jestli to je podobné tak conf pro trinity (jak se tak koukám na rozdíly skoro jen v názvech:D)bude worldserver.conf ne? máš ho tam? Skoušel jsem to různě ale přestalo mě to bavit tak jsem celý mangos.conf smazal našel si na netu nový a obsah překopíroval,vyplnil,a od té doby to šlape.
Edit:nejsem si s tím stoprocentně jistej,ale pokazit se stím snad nic nedá doufám:D
- 1
-
jak lokální?jako jen v databázi změnit realm?
-
Lidi,přišel jsem na to v tom extractoru bylo napsáno:world of warcraft/world of warcraft/data...Ale já měl složky:
world of warcraft-wotlk/world of warcraft-wotlk/data...
už to jede:D
- 1
-
a co s tím můžu udělat?
-
MANGOS
Ahoj při tvorbě vlstního serveru jsme se zaseklna nefunkčních programech na vytvoření vmap,hází mi to error vytvoří mi to složky ale jsou prázdné opakoval jsem to několikrát.
,Revision 11095, databáze na 11058,Všechno šlape ale server bez vmap nejde spustit (nejdou v configu vypnout)a tam mi to při spuštění taky hodí error(ale to je jasný,nemám ty vmapy),pokud má někdo radu a nebo by někdo skusil stáhnout si tu revizi a vytvořit mi ty vmapy byl bych strašně rád.
Error:(náhled dole)
+ tohle mám napsané v server.log
2011-02-03 09:36:21 WORLD: VMap support included. LineOfSight:1, getHeight:1, indoorCheck:1
2011-02-03 09:36:21 WORLD: VMap data directory is: ./vmaps
2011-02-03 09:36:21 ERROR:VMap file './vmaps/000.vmtree' is missing or point to wrong version vmap file, redo vmaps with latest vmap_assembler.exe program
2011-02-03 09:36:21 ERROR:Correct *.map files not found in path './maps' or *.vmtree/*.vmtile files in './vmaps'. Please place *.map and vmap files in appropriate directories or correct the DataDir value in the mangosd.conf file.
-
Ahoj,nevíte prosím na jaký patch je revize 11095?díky za odpověď
EDIT:lidi,nevíte důvod jakto že server je spuštěný ale nelze se připojit?Unable to connect,Please try again later.
server.log:2011-02-03 16:45:55 ERROR:SD2: Script registering but ScriptName npc_barrett_ramsey is not assigned in database. Script will not be used.
2011-02-03 16:45:55 ERROR:SD2: Script registering but ScriptName mob_parasitic_shadowfiend is not assigned in database. Script will not be used.
2011-02-03 16:45:55 ERROR:SD2: Script registering but ScriptName mob_shadowy_construct is not assigned in database. Script will not be used.
jediný errory...
myslím že tyto errory nějak nevaděj když,se server spustí ...navíc je napsáno,že jen nejsou přiřazeny v databázi+že nebudou použity...ale pod tím server pokračuje bez chyb dál...
poslední řádky server.log.
2011-02-03 16:45:55 Deleting expired bans...
2011-02-03 16:45:55 Calculate next daily quest reset time...
2011-02-03 16:45:55 Calculate next weekly quest reset time...
2011-02-03 16:45:55 Calculate next monthly quest reset time...
2011-02-03 16:45:55 Starting objects Pooling system...
2011-02-03 16:45:55 Starting Game Event system...
2011-02-03 16:45:55 GameEvent 3 "Darkmoon Faire (Terokkar Forest)" started.
2011-02-03 16:45:55 GameEvent 7 "Lunar Festival" started.
2011-02-03 16:45:55 GameEvent 16 "Gurubashi Arena Booty Run" started.
2011-02-03 16:45:55 GameEvent 31 "Edge of Madness, Renataki" started.
2011-02-03 16:45:55 GameEvent 41 "Leader of Jin'Alai, Kutube'sa" started.
2011-02-03 16:45:55 GameEvent 46 "Brew of the Month, February" started.
2011-02-03 16:45:55 Player::DeleteOldChars: Deleting all characters which have been deleted 30 days before...
2011-02-03 16:45:55 WORLD: World initialized
2011-02-03 16:45:55 SERVER STARTUP TIME: 1 minutes 26 seconds
2011-02-03 16:45:55 mangosd process priority class set to HIGH
2011-02-03 16:45:55
2011-02-03 16:45:55
Nějaká rada? revisi mám 11095 patch 3.3.5a,opravdu nevím...
-
Zdravím,Chci si rozjet domácí server pro mě a pár mých kámošů...jediný problém je,že SD2 který tu máte ke stažení k DB
nejde stáhnout (stránka není dostupná),prosím mohli by jste mi poslat link na revizi která bude šlapat s Db kterou tu máte na stažení? Díky
edit:jinak podle good videa co tu máte(moc díky),jsem postupoval až do chíle než jsem se dostal na sd2,a zatím bez problémů)
Velmi dobrý článek,moc mi pomohl +1rep
Npc melee attacking
in Scripting
Posted · Edited by Galatex · Report reply
Ahoj,mám problém se sriptem.Mám script,který npccku nastavuje nahodnou sanci na pouziti spellu a nahodnou sanci na pouziti melee attacku.Ale problem je,ze kdyz padne cislo pro spell,tak npc spell použije,když padne číslo pro melee attack npc čeká dokud nepadne znovu číslo pro spell místo aby dalo ten melee attack...Ten script sem postnu(ne celý to by bylo zbytečný) a prosím jestli na to někdo mrkne nebo poradí jak to zaonačit aby to jelo:)
Případně tady je funkce generator:)
Jedná se o problém v if (generator()>=6)
{
DoMeleeAttackIfReady();
}
další následné DoMeleeAttackIfReady(); již v scriptu bylo,ale nemá žádný vliv se mi zdá...
Za radu děkuji.
Ti chytřejší možná zjistí o jakého bosse se jedná