Metin2 Hungarian Forum

Metin2 => Privát szerverek => Szerver készítés => A témát indította: masodikbela Dátum 2012-05-24, 16:20:26

Cím: [CH]Akárhány CH a szerverbe
Írta: masodikbela Dátum 2012-05-24, 16:20:26
Mivel volt egy ilyen kérdés, és engem is érdekelt, átgondoltam, hogy hogyan is lehetne betenni több cht a szerverbe.

Szükségünk lesz a következő sftp programra: WinScp (http://winscp.net/download/winscp507setup.exe) (filezilla NEM JÓ, mivel nem tudsz benne parancsikont(linket) készíteni!!!)

Franzi sf el a következő:


  • Menjünk be a következő mappába: /usr/home/game (kinek mi van a home helyett...) és csináljunk biztonsági másolatot a következőkről: start.sh, close.sh, clear.sh
  • Hozzunk létre egy channel3 nevű mappát, adjunk neki 777-es jogot.
  • Töltsük le a channel2 mappából a parancsikonokon(game, locale, log, data)  kívül mindent.
  • Keressük elő a CONFIG fájlt a letöltött fájlok közül, majd nyissuk meg.
  • A következőket írjuk át:
    HOSTNAME: channel3
    CHANNEL: 3
    PORT: 13002
    P2P_PORT: 14002
  • Mentsük el, és amiket letöltöttünk a channel2 mappából, másoljuk vissza a channel3 mappába.
  • Adjunk 777 es jogokat a következő fájloknak: shut.sh, CONFIG, .killscript, clear_logs.sh
  • Menjünk be a következő mappába: /usr/home/game/logs/ és hozzunk létre egy channel3 nevű mappát, adjunk neki 777 es jogot.
  • Ugyan itt van egy channel2 nevű mappa is, menjünk be és töltsük le a következő 3 fájlt: PTS, syserr, syslog
  • A már letöltött fájlokat töltsük föl a channel3 nevű mappába, majd adjunk nekik 777 es jogot. Ugyan ide készítsünk egy log nevű mappát 777 es joggal.
  • Most szükségünk lesz a fent említett WinScpre. Nyissuk meg, csatlakozzunk fel a szerverünkre (ugyan úgy, mint filezillánál), majd menjünk el ide:/usr/home/game/channel3
  • Jobb klikk egy üres helyre -> new -> link Link/shortcut file hez írjuk ezt: data  Point link/shortcut to: írjuk ezt: ../share/data Okézzuk le, az első meg is van.
    Csináljunk megint egy új linket, első részbe(link/shortcut file) írjuk ezt: locale második részhez(loint link/shortcut file): ../share/locale okézzuk le ismét.
    Újabb link, első részhez: log másodikhoz: ../logs/channel3 leokézzuk...
    Még egy link, első részhez: game másodikhoz: ../share/game Elmentjük, és készen is van.

  • A cht már sikeresen betettük, már csak el kéne tudni indítani.

    1. Töltsük le az /usr/home/game mappából a start.sh fájlt, nyissuk meg valamilyen szövegszerkesztővel(lehetőleg amelyik nem egy sorba írja a dolgokat pl: notepad, wordpad).

    Valahogy így néz ki:

    #!/bin/sh


    echo -e "\033[31m 
    Mennyi ch-t ind'itsak? \n
    1 - (1) Ch\n
    2 - (2) Mindd\033[0m"

    read chs

    case $chs in
    1*)
    echo -e "\033[31m Starting Database ..\033[0m"
    cd ./g1/db/
    ./db &
    sleep 2
    clear
    echo -e "\033[31m \n Starting Auth ..\033[0m"
    cd ../auth
    ./auth &
    sleep 2
    clear
    echo -e "\033[31m \n Starting CH 1 ..\033[0m"
    cd ../../channel1/
    ./game &
    sleep 2
    clear
    echo -e "\033[31m \n Starting CH 99 ..\033[0m"
    cd ../game99/
    ./game &
    sleep 2
    clear
    echo -e "\033[32m \n CH1 elindult\033[0m"
    ;;
    2*)
    echo -e "\033[31m Starting Database ..\033[0m"
    cd ./g1/db/
    ./db &
    sleep 2
    clear
    echo -e "\033[31m \n Starting Auth ..\033[0m"
    cd ../auth
    ./auth &
    sleep 2
    clear
    echo -e "\033[31m \n Starting CH 1 ..\033[0m"
    cd ../../channel1/
    ./game &
    sleep 2
    clear
    echo -e "\033[31m \n Starting CH 2 ..\033[0m"
    cd ../channel2/
    ./game &
    sleep 2
    clear
    echo -e "\033[31m \n Starting Game99 ..\033[0m"
    cd ../game99/
    ./game &
    sleep 2
    clear
    echo -e "\033[32m \n A szerver elindult!\033[0m"
    ;;
    esac


    Írjuk át a következő módon:

    #!/bin/sh


    echo -e "\033[31m 
    Mennyi ch-t ind'itsak? \n
    1 - (1) Ch\n
    2 - (2) Mindd\033[0m"

    read chs

    case $chs in
    1*)
    echo -e "\033[31m Starting Database ..\033[0m"
    cd ./g1/db/
    ./db &
    sleep 2
    clear
    echo -e "\033[31m \n Starting Auth ..\033[0m"
    cd ../auth
    ./auth &
    sleep 2
    clear
    echo -e "\033[31m \n Starting CH 1 ..\033[0m"
    cd ../../channel1/
    ./game &
    sleep 2
    clear
    echo -e "\033[31m \n Starting CH 99 ..\033[0m"
    cd ../game99/
    ./game &
    sleep 2
    clear
    echo -e "\033[32m \n CH1 elindult\033[0m"
    ;;
    2*)
    echo -e "\033[31m Starting Database ..\033[0m"
    cd ./g1/db/
    ./db &
    sleep 2
    clear
    echo -e "\033[31m \n Starting Auth ..\033[0m"
    cd ../auth
    ./auth &
    sleep 2
    clear
    echo -e "\033[31m \n Starting CH 1 ..\033[0m"
    cd ../../channel1/
    ./game &
    sleep 2
    clear
    echo -e "\033[31m \n Starting CH 2 ..\033[0m"
    cd ../channel2/
    ./game &
    sleep 2
    clear
    echo -e "\033[31m \n Starting CH 3 ..\033[0m"
    cd ../channel3/
    ./game &
    sleep 2
    clear
    echo -e "\033[31m \n Starting Game99 ..\033[0m"
    cd ../game99/
    ./game &
    sleep 2
    clear
    echo -e "\033[32m \n A szerver elindult!\033[0m"
    ;;
    esac


    2. Mentsük el, töltsük vissza a helyére (777 es jogot ne felejtsük el!)

    3. Töltsük le a close.sh-t. Nyissuk meg szövegszerkesztővel. Valahogy így néz ki:

    #!/bin/sh


    echo -e "\033[31m
    Mennyi ch-t 'all'itasz le? \n
    1 - (1) Channel 1 \n
    2 - (2) Channel 2 \n
    3 - (3) Mindd \033[0m"

    read chs

    case $chs in
    1*)

    echo -e "\033[31m \n Stopping CH 1 ..\033[0m"
    cd ./channel1/
    ./shut.sh &
    sleep 2
    clear
    cd ../
    ./g1.sh
    ;;
    2*)

    echo -e "\033[31m \n Stopping CH 2 ..\033[0m"
    cd ./channel2/
    ./shut.sh &
    sleep 2
    clear
    cd ../
    ./g1.sh
    ;;
    3*)
    echo -e "\033[31m Stopping Database ..\033[0m"
    cd ./g1/db/
    ./shut.sh &
    sleep 2
    echo -e "\033[31m \n Stopping Auth ..\033[0m"
    cd ../auth
    ./shut.sh &
    sleep 2
    clear
    echo -e "\033[31m \n Stopping CH 1 ..\033[0m"
    cd ../../channel1/
    ./shut.sh &
    sleep 2
    echo -e "\033[31m \n Stopping CH 2 ..\033[0m"
    cd ../channel2/
    ./shut.sh &
    sleep 2
    clear
    echo -e "\033[31m \n Stopping CH 99 ..\033[0m"
    cd ../game99/
    ./shut.sh &
    sleep 2
    clear
    echo -e "\033[32m \n A szerver le'allt!\033[0m"
    ;;
    esac


    Írjuk át a következő képpen:

    #!/bin/sh


    echo -e "\033[31m
    Mennyi ch-t 'all'itasz le? \n
    1 - (1) Channel 1 \n
    2 - (2) Channel 2 \n
    3 - (3) Channel 3 \n
    4 - (4) Mindd \033[0m"

    read chs

    case $chs in
    1*)

    echo -e "\033[31m \n Stopping CH 1 ..\033[0m"
    cd ./channel1/
    ./shut.sh &
    sleep 2
    clear
    cd ../
    ./g1.sh
    ;;
    2*)

    echo -e "\033[31m \n Stopping CH 2 ..\033[0m"
    cd ./channel2/
    ./shut.sh &
    sleep 2
    clear
    cd ../
    ./g1.sh
    ;;
    3*)

    echo -e "\033[31m \n Stopping CH 3 ..\033[0m"
    cd ./channel3/
    ./shut.sh &
    sleep 2
    clear
    cd ../
    ./g1.sh
    ;;
    4*)
    echo -e "\033[31m Stopping Database ..\033[0m"
    cd ./g1/db/
    ./shut.sh &
    sleep 2
    echo -e "\033[31m \n Stopping Auth ..\033[0m"
    cd ../auth
    ./shut.sh &
    sleep 2
    clear
    echo -e "\033[31m \n Stopping CH 1 ..\033[0m"
    cd ../../channel1/
    ./shut.sh &
    sleep 2
    echo -e "\033[31m \n Stopping CH 2 ..\033[0m"
    cd ../channel2/
    ./shut.sh &
    sleep 2
    echo -e "\033[31m \n Stopping CH 3 ..\033[0m"
    cd ../channel3/
    ./shut.sh &
    sleep 2
    clear
    echo -e "\033[31m \n Stopping CH 99 ..\033[0m"
    cd ../game99/
    ./shut.sh &
    sleep 2
    clear
    echo -e "\033[32m \n A szerver le'allt!\033[0m"
    ;;
    esac


    4. Mentsük el, töltsük vissza.

    5. Töltsük le a clear.sh-t majd nyissuk meg. Valahogy így néz ki:

    #!/bin/sh
    cd ./g1/auth
    ./clear_logs.sh
    cd ../db
    ./clear_logs.sh
    cd ../../channel1
    ./clear_logs.sh
    cd ../channel2
    ./clear_logs.sh
    cd ../game99
    ./clear_logs.sh
    sleep 1
    cd ..


    Írjuk át a következő képpen:

    #!/bin/sh
    cd ./g1/auth
    ./clear_logs.sh
    cd ../db
    ./clear_logs.sh
    cd ../../channel1
    ./clear_logs.sh
    cd ../channel2
    ./clear_logs.sh
    cd ../channel3
    ./clear_logs.sh
    cd ../game99
    ./clear_logs.sh
    sleep 1
    cd ..


    A szerver része teljesen készen van. Már csak annyi a dolgunk, hogy hozzáadjuk a portmappban/rooterben az 13002 es portot, és a serverinfo.py-t megcsináljuk. Azt hiszem utóbbit mindenki meg tudja csinálni, aki a szerverbe be tudta tenni a cht.

    A módszer saját, ki is próbáltam, nekem sikerült, ilyen módon egy kis logikával annyi cht rakhatunk a szerverbe, amennyit csak szeretnénk/elbír a szerver. Talán magától értetődő, de a CONFIG fájlban a porthoz és a p2p_porthoz olyat írjunk, amit nem használ más program, illetve a szerver. Pld ha ch4 et szeretnénk akkor: port: 13003, p2p_port: 14003.

    Ha valamit elrontottatok, nem megy, akármi, írjatok pmet, és ha tudok, segítek.

    UI: MINDEN szerverfájlban működik, csak más az elérési út, máshogy néznek ki az sh fájlok. Ha kicsit gondolkozol, meg tudod csinálni. (DE ha nem megy, pm, és megpróbálok segíteni.)
    EhPortal 1.39 © 2025, WebDev