Portál AbcLinuxu, 30. dubna 2025 12:44
lama vs. MaNGOS [ game daemon ]
26.11.2007 21:46
| Přečteno: 3140×
| open source
Jak šílené může být rozběhnout game daemona pro člověka, který hry nehraje? Docela dost šílené
a tak si povězmě pohádku, jak se krotí takový MaNGOS
Ze začátku chci říct, že tento zápisek nejspíše moc zajímavý nebude, ale budiž GNU/Linux..
každý, kdo se kdy potkal s mangosem, ze strany instalace na linuxu zajíste ví, že není sranda rozjet správnou revizi a to ještě s patchema, které vytvářejí úplně jiní lidé. Několikrát jsem už i nadával do vzdálených míst, ale nakonec díky pomoci jednoho člověka co nám poradil, které revize použít, jsem to konečně řádně rozběhal. Zde napíši popis, jak docílit dobrého běhu daemona, třeba to někomu pomůže..
určitě shlédněte oficiální web projektu, případné problémy, jsou zde už většinou vyřešené.
==> 1. stažení
prvním krokem je stažení potřebných věcí ( revize mangosu, revize scriptdev2, UDB databaze, DBC souboru, maps, vmaps )
revizi MaNGOSu stahneme ze svn:
svn checkout -r 4752 https://mangos.svn.sourceforge.net/svnroot/mangos/trunk/
revizi ScriptDev2 take ze svn:
svn checkout -r 166 https://scriptdev2.svn.sourceforge.net/svnroot/scriptdev2
UDB databaze - stahnete zde
DBC, maps a vmaps si můžete vygooglovat nebo jsem ochoten nabídnout z mého serveru. Ovšem data mají přes 1,3GB , takže s tím počítejte. Kdyžtak mi napište a domluvíme se.
==> 2. příprava, patch, konfigurace, kompilace, instalace
ted když máme vše staženo, přesuňte všechna data nacházející se ve scriptdev2 do složek mangosu:
mv * ../trunk/src/bindings/ScriptDev2/
přesuňme se do adresáře MaNGOSu:
cd ../trunk
nyní je nutné zavést patch ScriptDev2:
patch -p0 < src/bindings/ScriptDev2/patches/MaNGOS-r4241-ScriptDev2.patch
autoconf přípraví vše pro kompilaci:
autoreconf --install --force
konfigurace MaNGOSu:
./configure --prefix=/***/mangos --sysconfdir=/***/mangos/etc --with-python --enable-cli --enable-ra --datadir=/***/mangos
kompilace:
make
instalace:
make install
==> 3. příprava databáze
přípravte se, že klidně si můžete při kompilaci odejít na kafe, schrupnout si, případně zasouložit. Na stroji 1,8GHz a 1792 MB RAM se MaNGOS kompiloval téměř dvě hodiny. Na řadě je příprava mysql pro mangos. Čili, příhlásíme se do MySQL a vytvoříme nového uživatele:
create user 'mangos' identified by 'heslo';
grant all privileges on *.* to 'mangos' identified by 'heslo';
heslo doporucuji zmenit..
vytvoříme 3 db:
create database mangos;
create database realmd;
create database characters;
hezky pryč z databáze "\q" a přesuňme se do složky SQL, kde jsme instalovali mangos:
cd /***/mangos/mangos/sql/
nyni nahrajeme veškeré potřebné sql tabulky do mysql:
mysql --user=mangos --password=heslo realmd < realmd.sql
mysql --user=mangos --password=heslo mangos < mangos.sql
mysql --user=mangos --password=heslo characters < characters.sql
mysql --user=mangos --password=heslo mangos < UDB_0.8.2_Core_4752_SD2_166.sql
( UDB_** nahrajte ze složky, kde to máte uložené )
ještě jednou se přihlašte do MySQL a provedte poslední nastavení s databazí souvisejicí:
update realmlist set address='VASE_VEREJNA_IP',name='jmeno_realmu';
==> 4. kopírování souborů maps, vmaps a dbc
tímto máme mysql připravenou, zbývá už jen nakopírovat mapy, nakonfigurovat mangos a spustit. maps, vmaps a dbc soubory nakopírujte nejlépe do složky, kde jste instalovali mangos:
cp -R maps/ vmaps/ dbc/ /***/mangos/ (takto jsem to udělal já)
chvíli to trvat bude.. nebo to můžete rovnou přesunout
==> 5. konfigurace MaNGOSu
kde a co konfigurovat:
cd /***/mangos/etc/ ( zde jsou mangosd.conf a realmd.conf )
pomoci Vašeho oblíbeného editoru, tedy otevřete a nakonfigurujte. V "mangosd.conf" nastavte hlavně tohle, zbytek dle uvážení:
DataDir = "/***/mangos" ( cca 18 radek )
LoginDatabaseInfo = "127.0.0.1;3306;mangos;heslo;realmd" ( cca 31 radek )
WorldDatabaseInfo = "127.0.0.1;3306;mangos;heslo;mangos"
CharacterDatabaseInfo = "127.0.0.1;3306;mangos;heslo;characters"
v "realmd.conf" toto a zbytek dle uvážení:
LoginDatabaseInfo = "127.0.0.1;3306;mangos;heslo;realmd" ( cca 10 radek )
==> 6. vytvoření spuštěče
Nyní máme již vše připraveno už jen spustit hru. Abyste nemuseli nechat bežet terminál či vyset na ssh, vytvořme malý script, který se o spoustění postará:
#! /bin/bash
while true
do
PID1=$(pidof mangos-worldd)
if (( PID1 < 1 ))
then
screen -A -m -d -S mangos_world ./mangos-worldd -c ../etc/mangosd.conf
fi
PID2=$(pidof mangos-realmd)
if (( PID2 < 1 ))
then
screen -A -m -d -S mangos_realm ./mangos-realmd -c ../etc/realmd.conf
fi
sleep 20
done
uložte ho pod nějakým jménem, např. "starter-bin" a přidělte práva ke spouštění:
chmod +x starter-bin
tradadaaaaaaa a mame to hotovo, nyní už stačí jen spustit:
./starter-bin
Nejspíš vám to přijde jednoduché, teď už i mě po 7 dnech pročítání fór. Když to někomu pomůže nebo pobaví, splní to účel
už jen doufám, že jsem nic neopomenul..
Tiskni
Sdílej:
Komentáře
Vložit další komentář
26.11.2007 22:21
Alík
| Iglau
Re: lama vs. MaNGOS [ game daemon ]
27.11.2007 11:43
Orcen
Re: lama vs. MaNGOS [ game daemon ]
29.11.2007 10:40
PLS
Re: lama vs. MaNGOS [ game daemon ]
29.11.2007 20:32
PLS
Re: lama vs. MaNGOS [ game daemon ]
30.1.2008 10:50
Dan
Re: lama vs. MaNGOS [ game daemon ]
4.2.2008 22:41
plazer
Re: lama vs. MaNGOS [ game daemon ]
Založit nové vlákno •
Nahoru
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.