TrinityCore na Linuxu: Porovnání verzí
(Instalace ACE na Fedoře.) |
(oprava odkazu) |
||
(Není zobrazeno 18 mezilehlých verzí od 2 dalších uživatelů.) | |||
Řádek 1: | Řádek 1: | ||
− | =Kompilace TrinityCore | + | =Kompilace TrinityCore na Linuxu= |
− | + | V tomto návodu je pro jednoduchost použit pracovní adresář /opt/trinitycore. | |
+ | <pre>mkdir /opt/trinitycore | ||
+ | cd /opt/trinitycore</pre> | ||
− | |||
− | + | Vykonávání příkazů pod systémovým účtem: | |
− | |||
− | |||
− | '''Pro | + | '''Pro Debian/Ubuntu:''' |
− | + | Vkládejte před příkazy povel sudo nebo se přihlašte jako root pomocí sudo bash. | |
− | |||
− | |||
− | + | '''Pro Fedoru/Centos:''' | |
+ | Na začátku se v terminálu se přihlašte jako root pomocí příkazu su. | ||
− | |||
+ | ''Rada: Pokud máte vícejádrový procesor, použijte při vykonávání příkazu '''make''' pro rychlejší dokončení parameter -j se zadaným počtem souběžných úloh. Pro dvoujádro zadávejte ''make -j 2'' a pro více jader analogicky vyšší číslo. Výkon procesoru bude tak lépe využit a překlad se dokončí rychleji. více souběžných úloh překládání však bude znamenat vyšší nároky na operační paměť.'' | ||
− | |||
− | |||
− | == | + | ==Instalace balíčků== |
− | + | Pro správnou a bezproblémovou instalaci je nutno mít nainstalované tyto programy: | |
− | <pre> | + | '''Pro Debian/Ubuntu:''' |
+ | <pre>sudo apt-get install g++ gcc make cmake libmysql++-dev subversion mercurial openssl libssl-dev \ | ||
+ | zlib1g-dev libtool libmysqlclient15-dev patch build-essential mysql-client libreadline5-dev</pre> | ||
+ | '''Pro Fedoru/Centos:''' | ||
+ | <pre>yum install cpp gcc gcc-c++ make cmake subversion mercurial openssl openssl-devel patch mysql-devel \ | ||
+ | mysql-server mysql mysql-libs readline readline-devel compat-readline5-devel compat-readline5 zlib-devel bzip2-devel</pre> | ||
− | + | ''Poznámka: Repozitář Fedory obsahuje i balík pojmenovaný ace. Ten má však jiné využití (Appliance Configuration Engine)'' | |
− | + | ==Sestavení libSSL== | |
− | + | Toto je velmi důležitý krok, protože bez této knihovny se vám Trinity sice zkompiluje ale nepůjde. | |
− | + | <pre>cd /opt/trinitycore | |
+ | mkdir -p .sys/sources | ||
+ | cd .sys/sources</pre> | ||
− | |||
− | + | Tímto příkazem jsme připravili složku pro zdrojové soubory této knihovny. | |
+ | Nyní je stáhneme, rozbalíme a přesuneme se do jejich složky: | ||
− | + | <pre>wget http://www.openssl.org/source/openssl-0.9.8k.tar.gz | |
+ | tar -xvf openssl-0.9.8k.tar.gz | ||
+ | cd openssl-0.9.8k</pre> | ||
− | |||
− | + | A opět známá konfigurace: | |
− | <pre> | + | <pre>./config --prefix=/opt/trinitycore/.sys shared</pre> |
− | |||
− | + | A nyní už jen knihovnu zkompilovat a nainstalovat: | |
− | + | <pre>make | |
+ | make install</pre> | ||
− | + | Tímto je knihovna připravena k použití. | |
− | |||
− | |||
− | |||
− | |||
− | |||
+ | ==Sestavení ACE== | ||
− | + | Domovské stránky projektu '''ACE(The ADAPTIVE Communication Environment)''' [http://www.cs.wustl.edu/~schmidt/ACE.html] | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | Nejnovější verze můžete získat odsud: [http://download.dre.vanderbilt.edu/] | |
− | + | ''Doporučení: Stahujte nejnovější dostupnou verzi. Kompatibilita nejnovějších Trinity revizí nemusí být se staršími ACE.'' | |
− | |||
− | + | Konkrétní příklad stažení: | |
+ | <pre>cd /opt/trinitycore | ||
+ | wget http://download.dre.vanderbilt.edu/previous_versions/ACE-5.7.6.tar.gz</pre> | ||
− | + | Rozbalíme obsah archívu | |
− | |||
− | <pre> | + | <pre>tar xvzf ACE-5.7.6.tar.gz</pre> |
− | |||
− | |||
+ | Přejmenujeme adresář na jednoduší jméno a přesuneme se dovnitř | ||
− | + | <pre>mv ACE_wrappers ACE | |
+ | cd ACE</pre> | ||
− | + | Sestavení programu provedem | |
+ | <pre>mkdir build | ||
+ | cd build | ||
+ | ../configure --prefix=/opt/trinitycore/.sys/ --with-openssl=/opt/trinitycore/.sys/ --disable-ace-examples | ||
+ | make | ||
+ | make install</pre> | ||
− | + | Tímto se ACE zkompiluje a nainstaluje a je připraven pro použití. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | ==Kompilace TrinityCore | + | ==Kompilace TrinityCore== |
− | + | Přejdeme do hlavního adresáře | |
+ | <pre>cd /opt/trinitycore</pre> | ||
− | |||
− | |||
− | + | Pomocí nástroje pro práci s verzovacím systémem Mercurial stáhneme kopii repozitáře zdrojových kódů: | |
− | + | <pre>hg clone https://trinitycore.googlecode.com/hg trinitycore</pre> | |
− | + | Také je možno zadat přímo číslo konkrétní revize: | |
+ | <pre>hg clone --rev 1234 https://trinitycore.googlecode.com/hg trinitycore</pre> | ||
− | + | Kódy lze stáhnout také přímo z webu [http://code.google.com/p/trinitycore/downloads/list] | |
===Aplikace patche=== | ===Aplikace patche=== | ||
− | + | Můžete volitelně aplikovat patche pro TrinityCore, které najdete někde na Internetu. | |
− | Přesunete se do složky, kam jste právě stáhli trinity | + | Přesunete se do složky, kam jste právě stáhli trinity pomocí |
− | |||
− | |||
+ | <pre>cd trinitycore</pre> | ||
Aplikace patche: | Aplikace patche: | ||
− | Vlastní | + | Vlastní aktualizace: |
<pre>patch -p0 < soubor.patch</pre> | <pre>patch -p0 < soubor.patch</pre> | ||
− | + | GIP patch: | |
− | |||
<pre>git apply soubor.patch</pre> | <pre>git apply soubor.patch</pre> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
===Samotné sestavení=== | ===Samotné sestavení=== | ||
Řádek 143: | Řádek 131: | ||
Trinity už máme staženou, nyní se přesuneme do její složky příkazem (pokud jsme to už neudělali spolu s aplikací patche): | Trinity už máme staženou, nyní se přesuneme do její složky příkazem (pokud jsme to už neudělali spolu s aplikací patche): | ||
− | <pre>cd | + | <pre>cd /opt/trinitycore/trinitycore</pre> |
A můžeme začít vesele kompilovat: | A můžeme začít vesele kompilovat: | ||
− | <pre>cmake -DPREFIX=/ | + | <pre>cmake -DPREFIX=/opt/trinitycore/build -DACE_LIBRARY=/opt/trinitycore/.sys/lib/libACE.so \ |
+ | -DACE_INCLUDE_DIR=/opt/trinitycore/.sys/include/ -DSSLLIB=/opt/trinitycore/.sys/lib/libssl.so</pre> | ||
− | + | '''Vysvětlení některých parametrů:''' | |
− | + | * -DACE_LIBRARY=/opt/trinitycore/.sys/lib/libACE.so -- cesta k vaší knihovně libACE.so | |
+ | * -DSSLLIB=/opt/trinitycore/.sys/lib/libssl.so -- cesta k vaší knihovně libssl.so | ||
+ | * -DACE_INCLUDE_DIR=/opt/trinitycore/.sys/include/ -- cesta k adresáři include libACE | ||
+ | * -DDO_MYSQL=1 -- sestavit s podporou mysql | ||
+ | * -DDO_SCRIPTS=1 -- sestavit s podporou skriptování | ||
+ | * -DDO_RA=1 -- sestavit s podporou vzdáleného přístupu | ||
+ | * -DDO_CLI=1 -- sestavit s podporou pro příkazový řádek | ||
+ | * -DPREFIX=/opt/trinitycore/build/ -- cesta, kde bude uloženo sestavené jádro | ||
+ | * -DCONF_DIR=/opt/trinitycore/build/etc -- cesta, kde budou uloženy vaše konfigurační soubory (volitelné) | ||
<pre>make | <pre>make | ||
sudo make install</pre> | sudo make install</pre> | ||
+ | |||
+ | Pokud máte vícejádrový procesor, tak můžete použít také | ||
+ | <pre>make -j <počet jader></pre> | ||
A Trinity máme zkompilovanou. Nyní je ve vašem domovském adresáři ve složce build Trinity! | A Trinity máme zkompilovanou. Nyní je ve vašem domovském adresáři ve složce build Trinity! | ||
+ | |||
+ | ===Řešení problémů=== | ||
+ | |||
+ | * Pokud používáte Fedoru 13 a vypíše vám make při sestavování chybu | ||
+ | <pre>/usr/bin/ld: ../shared/libshared.a(BigNumber.cpp.o): undefined reference to symbol 'BN_new' | ||
+ | /usr/bin/ld: note: 'BN_new' is defined in DSO /lib/libcrypto.so.10 so try adding it to the linker command line | ||
+ | /lib/libcrypto.so.10: could not read symbols: Invalid operation</pre> | ||
+ | |||
+ | zkuste postupovat dle návodu [http://www.wowresource.eu/index.php?showtopic=19738] | ||
==Konfigurace serveru== | ==Konfigurace serveru== | ||
− | Ve složce build/etc máte | + | Ve složce build/etc máte šablony konfiguračních souborů: |
* trinitycore.conf.dist | * trinitycore.conf.dist | ||
* trinityrealm.conf.dist | * trinityrealm.conf.dist | ||
+ | Vytvořete si kopie těchto souborů pomocí, které budou použity při spouštění emulátoru | ||
+ | <pre>cp trinitycore.conf.dist trinitycore.conf | ||
+ | cp trinityrealm.conf.dist trinityrealm.conf</pre> | ||
− | + | Upravte obsah nově vzniklých souborů a nastavte přístupové údaje pro připojení k databázi. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | <pre>LoginDatabaseInfo = "127.0.0.1;3306;jméno;heslo;realmd" | ||
+ | WorldDatabaseInfo = "127.0.0.1;3306;jméno;heslo;world" | ||
+ | CharacterDatabaseInfo = "127.0.0.1;3306;jméno;heslo;characters"</pre> | ||
− | + | V souboru trinityrealm.conf pak | |
− | + | <pre>LoginDatabaseInfo = "127.0.0.1;3306;jméno;heslo;realmd"</pre> | |
==Extrahování DBC souborů a map z klienta== | ==Extrahování DBC souborů a map z klienta== | ||
− | Když teď | + | Když teď zkusíte zapnout Trinity (binární soubory jsou ve složce build/bin), samozřejmě nebude fungovat. Chybí vám totiž vyextrahované soubory z WoW klienta. |
Ve složce se zdrojovými soubory Trinity je složka contrib a v ní složka extractor. Program v této složce, jmenuje se ad.exe, teď využijeme. | Ve složce se zdrojovými soubory Trinity je složka contrib a v ní složka extractor. Program v této složce, jmenuje se ad.exe, teď využijeme. | ||
− | + | Zkopírujeme ad do složky s WoW a spustíme jej zde | |
− | |||
− | Zkopírujeme ad do složky s WoW | ||
<pre>./ad</pre> | <pre>./ad</pre> | ||
− | V případě že | + | V případě, že vám linuxový ad nefunguje, můžete použít Windows variantu ad.exe. K jejímu spuštění potřebujete nainstalovat emulátor Wine |
− | Pro Debian/Ubuntu: <pre>sudo apt-get install wine</pre> | + | '''Pro Debian/Ubuntu:''' <pre>sudo apt-get install wine</pre> |
− | Pro Fedoru/Centos: <pre>yum install wine</pre> | + | '''Pro Fedoru/Centos:''' <pre>yum install wine</pre> |
− | |||
+ | Pak lze program spustit přímo | ||
+ | <pre>./ad.exe</pre> | ||
+ | nebo | ||
<pre>wine ad.exe</pre> | <pre>wine ad.exe</pre> | ||
Až program ad skončí (řád desítek minut), budete mít ve složce s WoW 2 nové složky: maps a dbc. | Až program ad skončí (řád desítek minut), budete mít ve složce s WoW 2 nové složky: maps a dbc. | ||
− | Obě tyto složky zkopírujeme do složky bin - build/bin. | + | Obě tyto složky zkopírujeme do složky bin - build/bin. |
− | |||
==Nahrání databáze TDB== | ==Nahrání databáze TDB== | ||
− | Trinity Core využívá vlastní databázi, podobnou | + | Trinity Core využívá vlastní databázi, velmi podobnou databázi [[UDB]]. |
Co uděláme nejdřív: Vytvoříme v naší MySQL databázi 3 databáze: realmd, world, characters. | Co uděláme nejdřív: Vytvoříme v naší MySQL databázi 3 databáze: realmd, world, characters. | ||
Nyní musíme tyto databáze naplnit daty: | Nyní musíme tyto databáze naplnit daty: | ||
Do databáze realmd vložíme SQL soubor z Trinity složky build/share/trinity/sql/realmd.sql | Do databáze realmd vložíme SQL soubor z Trinity složky build/share/trinity/sql/realmd.sql | ||
− | + | <pre>mysql --user root --password realmd < build/share/trinity/sql/realmd.sql</pre> | |
Do databáze characters vložíme soubor ze stejné složky jako realmd, ale SQL se jménem (překvapivě) characters. | Do databáze characters vložíme soubor ze stejné složky jako realmd, ale SQL se jménem (překvapivě) characters. | ||
+ | <pre>mysql --user root --password characters < build/share/trinity/sql/characters.sql</pre> | ||
To samé provedeme s databází world. | To samé provedeme s databází world. | ||
+ | <pre>mysql --user root --password world < build/share/trinity/sql/world.sql</pre> | ||
+ | |||
+ | Ještě nám chybí data do databáze world (to co jsme nahráli je jen struktura). | ||
− | |||
− | |||
Teď si poctivě stáhneme celou databázi world: | Teď si poctivě stáhneme celou databázi world: | ||
Řádek 227: | Řádek 231: | ||
− | Stahujeme vždy databázi s nejvyšším číslem | + | Stahujeme vždy databázi s nejvyšším číslem. V době psaní tohoto návodu byla nejvyšší databáze 0.0.5 - pro revize Trinity 5254. |
− | Až celý velký soubor stáhneme, rozbalíme ho. Poté celý soubor vložíme do databáze world ( | + | Až celý velký soubor stáhneme, rozbalíme ho. Poté celý soubor vložíme do databáze world (to může chvíli trvat). |
− | Nyní už máme databázi konečně připravenou k použití | + | Nyní už máme databázi konečně připravenou k použití. Ještě však chybí aktualizace a skripty. |
− | Ve složce se SQL soubory (build/share/trinity/sql | + | Ve složce se SQL soubory (build/share/trinity/sql) je i složka updates. Z ní musíme nahrát všechny aktualizace od revize databáze (v tomto případě 5254) do té nejnovější - aby byla databáze aktuální. |
− | V této složce je ještě jedna složka - FULL. V ní jsou opravdu FULL | + | V této složce je ještě jedna složka - FULL. V ní jsou opravdu FULL skripty do world databáze. |
− | + | Všechny je postupně vložíme do databáze world. | |
Tak jestli jste se dostali až sem, máte zkompilovanou Trinity, a můžete jí pustit souborem build/bin/trinity-core a trinity-realm. | Tak jestli jste se dostali až sem, máte zkompilovanou Trinity, a můžete jí pustit souborem build/bin/trinity-core a trinity-realm. | ||
− | Jestli chcete mít server přístupný veřejnosti, jděte ještě do databáze realmd, a v tabulce realmlist | + | Jestli chcete mít server přístupný veřejnosti, jděte ještě do databáze realmd, a v tabulce realmlist změňte hodnotu localhost na vaši veřejnou IP adresu, kterou zjistíte např. na adrese [http://www.mojeip.cz]. Nyní je váš server připraven k použití a je přístupný. |
− | == | + | ==Použití příkazů== |
− | + | Jak zapnete program trinity-core, načte se celá databáze a server je zapnut. Příkazy pak píšete do konzole - čili do okna trinity-core - čili do toho, co vám vyskočilo, když jste zapli trinity-core. | |
− | Dostupné příkazy v konzoli vám | + | Dostupné příkazy v konzoli vám ukážvypíšee příkaz |
<pre>help</pre> | <pre>help</pre> | ||
− | + | Příkazy jsou téměř podobné jako u MaNGOSu. | |
Až si vytvoříte v konzoli účet, přidejte mu ještě GM oprávnění příkazem account set gmlevel 3 a account set addon 2 (pokud máte WotLK). | Až si vytvoříte v konzoli účet, přidejte mu ještě GM oprávnění příkazem account set gmlevel 3 a account set addon 2 (pokud máte WotLK). | ||
Řádek 254: | Řádek 258: | ||
<pre>.help</pre> | <pre>.help</pre> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=Související= | =Související= | ||
− | * [ | + | * [[Restarter]] - automatické cyklické spouštění emulátoru při jeho selhání |
=Externí odkazy= | =Externí odkazy= | ||
− | * [http://www.trinitycore.info/ | + | * [http://www.trinitycore.info/How-to:Linux Oficiální Trinity How-to:Linux] |
+ | * [http://www.wowresource.eu/index.php?showtopic=15793&st=0 Diskuse k tomuto návodu ve fóru] | ||
+ | * [http://www.wowresource.eu/index.php?showtopic=19738&st=0&p=177560&#entry177560 Řešení problému s kompilací na Fedoře 13] | ||
[[Kategorie:TrinityCore]] | [[Kategorie:TrinityCore]] |
Aktuální verze z 28. 7. 2011, 20:41
Kompilace TrinityCore na Linuxu
V tomto návodu je pro jednoduchost použit pracovní adresář /opt/trinitycore.
mkdir /opt/trinitycore cd /opt/trinitycore
Vykonávání příkazů pod systémovým účtem:
Pro Debian/Ubuntu: Vkládejte před příkazy povel sudo nebo se přihlašte jako root pomocí sudo bash.
Pro Fedoru/Centos: Na začátku se v terminálu se přihlašte jako root pomocí příkazu su.
Rada: Pokud máte vícejádrový procesor, použijte při vykonávání příkazu make pro rychlejší dokončení parameter -j se zadaným počtem souběžných úloh. Pro dvoujádro zadávejte make -j 2 a pro více jader analogicky vyšší číslo. Výkon procesoru bude tak lépe využit a překlad se dokončí rychleji. více souběžných úloh překládání však bude znamenat vyšší nároky na operační paměť.
Instalace balíčků
Pro správnou a bezproblémovou instalaci je nutno mít nainstalované tyto programy:
Pro Debian/Ubuntu:
sudo apt-get install g++ gcc make cmake libmysql++-dev subversion mercurial openssl libssl-dev \ zlib1g-dev libtool libmysqlclient15-dev patch build-essential mysql-client libreadline5-dev
Pro Fedoru/Centos:
yum install cpp gcc gcc-c++ make cmake subversion mercurial openssl openssl-devel patch mysql-devel \ mysql-server mysql mysql-libs readline readline-devel compat-readline5-devel compat-readline5 zlib-devel bzip2-devel
Poznámka: Repozitář Fedory obsahuje i balík pojmenovaný ace. Ten má však jiné využití (Appliance Configuration Engine)
Sestavení libSSL
Toto je velmi důležitý krok, protože bez této knihovny se vám Trinity sice zkompiluje ale nepůjde.
cd /opt/trinitycore mkdir -p .sys/sources cd .sys/sources
Tímto příkazem jsme připravili složku pro zdrojové soubory této knihovny.
Nyní je stáhneme, rozbalíme a přesuneme se do jejich složky:
wget http://www.openssl.org/source/openssl-0.9.8k.tar.gz tar -xvf openssl-0.9.8k.tar.gz cd openssl-0.9.8k
A opět známá konfigurace:
./config --prefix=/opt/trinitycore/.sys shared
A nyní už jen knihovnu zkompilovat a nainstalovat:
make make install
Tímto je knihovna připravena k použití.
Sestavení ACE
Domovské stránky projektu ACE(The ADAPTIVE Communication Environment) [1]
Nejnovější verze můžete získat odsud: [2]
Doporučení: Stahujte nejnovější dostupnou verzi. Kompatibilita nejnovějších Trinity revizí nemusí být se staršími ACE.
Konkrétní příklad stažení:
cd /opt/trinitycore wget http://download.dre.vanderbilt.edu/previous_versions/ACE-5.7.6.tar.gz
Rozbalíme obsah archívu
tar xvzf ACE-5.7.6.tar.gz
Přejmenujeme adresář na jednoduší jméno a přesuneme se dovnitř
mv ACE_wrappers ACE cd ACE
Sestavení programu provedem
mkdir build cd build ../configure --prefix=/opt/trinitycore/.sys/ --with-openssl=/opt/trinitycore/.sys/ --disable-ace-examples make make install
Tímto se ACE zkompiluje a nainstaluje a je připraven pro použití.
Kompilace TrinityCore
Přejdeme do hlavního adresáře
cd /opt/trinitycore
Pomocí nástroje pro práci s verzovacím systémem Mercurial stáhneme kopii repozitáře zdrojových kódů:
hg clone https://trinitycore.googlecode.com/hg trinitycore
Také je možno zadat přímo číslo konkrétní revize:
hg clone --rev 1234 https://trinitycore.googlecode.com/hg trinitycore
Kódy lze stáhnout také přímo z webu [3]
Aplikace patche
Můžete volitelně aplikovat patche pro TrinityCore, které najdete někde na Internetu. Přesunete se do složky, kam jste právě stáhli trinity pomocí
cd trinitycore
Aplikace patche:
Vlastní aktualizace:
patch -p0 < soubor.patch
GIP patch:
git apply soubor.patch
Samotné sestavení
Trinity už máme staženou, nyní se přesuneme do její složky příkazem (pokud jsme to už neudělali spolu s aplikací patche):
cd /opt/trinitycore/trinitycore
A můžeme začít vesele kompilovat:
cmake -DPREFIX=/opt/trinitycore/build -DACE_LIBRARY=/opt/trinitycore/.sys/lib/libACE.so \ -DACE_INCLUDE_DIR=/opt/trinitycore/.sys/include/ -DSSLLIB=/opt/trinitycore/.sys/lib/libssl.so
Vysvětlení některých parametrů:
- -DACE_LIBRARY=/opt/trinitycore/.sys/lib/libACE.so -- cesta k vaší knihovně libACE.so
- -DSSLLIB=/opt/trinitycore/.sys/lib/libssl.so -- cesta k vaší knihovně libssl.so
- -DACE_INCLUDE_DIR=/opt/trinitycore/.sys/include/ -- cesta k adresáři include libACE
- -DDO_MYSQL=1 -- sestavit s podporou mysql
- -DDO_SCRIPTS=1 -- sestavit s podporou skriptování
- -DDO_RA=1 -- sestavit s podporou vzdáleného přístupu
- -DDO_CLI=1 -- sestavit s podporou pro příkazový řádek
- -DPREFIX=/opt/trinitycore/build/ -- cesta, kde bude uloženo sestavené jádro
- -DCONF_DIR=/opt/trinitycore/build/etc -- cesta, kde budou uloženy vaše konfigurační soubory (volitelné)
make sudo make install
Pokud máte vícejádrový procesor, tak můžete použít také
make -j <počet jader>
A Trinity máme zkompilovanou. Nyní je ve vašem domovském adresáři ve složce build Trinity!
Řešení problémů
- Pokud používáte Fedoru 13 a vypíše vám make při sestavování chybu
/usr/bin/ld: ../shared/libshared.a(BigNumber.cpp.o): undefined reference to symbol 'BN_new' /usr/bin/ld: note: 'BN_new' is defined in DSO /lib/libcrypto.so.10 so try adding it to the linker command line /lib/libcrypto.so.10: could not read symbols: Invalid operation
zkuste postupovat dle návodu [4]
Konfigurace serveru
Ve složce build/etc máte šablony konfiguračních souborů:
- trinitycore.conf.dist
- trinityrealm.conf.dist
Vytvořete si kopie těchto souborů pomocí, které budou použity při spouštění emulátoru
cp trinitycore.conf.dist trinitycore.conf cp trinityrealm.conf.dist trinityrealm.conf
Upravte obsah nově vzniklých souborů a nastavte přístupové údaje pro připojení k databázi.
LoginDatabaseInfo = "127.0.0.1;3306;jméno;heslo;realmd" WorldDatabaseInfo = "127.0.0.1;3306;jméno;heslo;world" CharacterDatabaseInfo = "127.0.0.1;3306;jméno;heslo;characters"
V souboru trinityrealm.conf pak
LoginDatabaseInfo = "127.0.0.1;3306;jméno;heslo;realmd"
Extrahování DBC souborů a map z klienta
Když teď zkusíte zapnout Trinity (binární soubory jsou ve složce build/bin), samozřejmě nebude fungovat. Chybí vám totiž vyextrahované soubory z WoW klienta. Ve složce se zdrojovými soubory Trinity je složka contrib a v ní složka extractor. Program v této složce, jmenuje se ad.exe, teď využijeme.
Zkopírujeme ad do složky s WoW a spustíme jej zde
./ad
V případě, že vám linuxový ad nefunguje, můžete použít Windows variantu ad.exe. K jejímu spuštění potřebujete nainstalovat emulátor Wine
sudo apt-get install winePro Fedoru/Centos:
yum install wine
Pak lze program spustit přímo
./ad.exe
nebo
wine ad.exe
Až program ad skončí (řád desítek minut), budete mít ve složce s WoW 2 nové složky: maps a dbc. Obě tyto složky zkopírujeme do složky bin - build/bin.
Nahrání databáze TDB
Trinity Core využívá vlastní databázi, velmi podobnou databázi UDB. Co uděláme nejdřív: Vytvoříme v naší MySQL databázi 3 databáze: realmd, world, characters. Nyní musíme tyto databáze naplnit daty:
Do databáze realmd vložíme SQL soubor z Trinity složky build/share/trinity/sql/realmd.sql
mysql --user root --password realmd < build/share/trinity/sql/realmd.sql
Do databáze characters vložíme soubor ze stejné složky jako realmd, ale SQL se jménem (překvapivě) characters.
mysql --user root --password characters < build/share/trinity/sql/characters.sql
To samé provedeme s databází world.
mysql --user root --password world < build/share/trinity/sql/world.sql
Ještě nám chybí data do databáze world (to co jsme nahráli je jen struktura).
Teď si poctivě stáhneme celou databázi world:
http://svn.assembla.com/svn/trinitydatabase/trunk/full_db/
Stahujeme vždy databázi s nejvyšším číslem. V době psaní tohoto návodu byla nejvyšší databáze 0.0.5 - pro revize Trinity 5254.
Až celý velký soubor stáhneme, rozbalíme ho. Poté celý soubor vložíme do databáze world (to může chvíli trvat).
Nyní už máme databázi konečně připravenou k použití. Ještě však chybí aktualizace a skripty. Ve složce se SQL soubory (build/share/trinity/sql) je i složka updates. Z ní musíme nahrát všechny aktualizace od revize databáze (v tomto případě 5254) do té nejnovější - aby byla databáze aktuální.
V této složce je ještě jedna složka - FULL. V ní jsou opravdu FULL skripty do world databáze. Všechny je postupně vložíme do databáze world.
Tak jestli jste se dostali až sem, máte zkompilovanou Trinity, a můžete jí pustit souborem build/bin/trinity-core a trinity-realm.
Jestli chcete mít server přístupný veřejnosti, jděte ještě do databáze realmd, a v tabulce realmlist změňte hodnotu localhost na vaši veřejnou IP adresu, kterou zjistíte např. na adrese [5]. Nyní je váš server připraven k použití a je přístupný.
Použití příkazů
Jak zapnete program trinity-core, načte se celá databáze a server je zapnut. Příkazy pak píšete do konzole - čili do okna trinity-core - čili do toho, co vám vyskočilo, když jste zapli trinity-core. Dostupné příkazy v konzoli vám ukážvypíšee příkaz
help
Příkazy jsou téměř podobné jako u MaNGOSu.
Až si vytvoříte v konzoli účet, přidejte mu ještě GM oprávnění příkazem account set gmlevel 3 a account set addon 2 (pokud máte WotLK). Pak si změňte realmlist a můžete vesele hrát. Příkazy dostupné ve hře si buď najděte tady na fóru v sekci MaNGOS nebo ve hře příkazem
.help
Související
- Restarter - automatické cyklické spouštění emulátoru při jeho selhání