Install Guide: Make a Linux decicated server for CS 1.6 Non-Steam

Thảo luận trong 'Hộp lưu trữ' bắt đầu bởi Satthutraidudu, 18/10/04.

Trạng thái chủ đề:
Không mở trả lời sau này.
  1. Satthutraidudu

    Satthutraidudu Mr & Ms Pac-Man

    Tham gia ngày:
    11/7/04
    Bài viết:
    172
    Install Guide

    Giới thiệu

    Nếu bạn đang sở hữu một website hoặc có một host trên mạng dung lượng khác lớn, tại sao bạn lại không tạo một server game cho các member của mình thậm chí mọi người trên internet vào chơi và giao lưu với nhau. Bài viết dưới đây phục vụ cho mục đính đó và cũng là một cơ hội cho những bạn yêu thích Linux có thể thực hành command shell luôn :D

    Yêu cầu:



    1/ Một server linux mà bạn có thể telnet hoặc thực thi ssh, hoặc nếu không thỉ sử dụng chính máy bạn để làm server(máy bạn phải cài một Linux distro nào đó: Fedora hoặc Mandrake,...)

    2/ Máy linux server phải có kết nối internet.

    3/ Một thư mục $home mà bạn có thể ghi tập tin lên (server thuê trên mạng)

    4/ Ít nhất 600 MB dung lượng đĩa cứng

    5/ Hỗ trợ wget và ftp.

    6/ Hỗ trợ trình giải nến gzip



    Hướng dẫn setup server:

    Hãy vào server của bạn bằng ssh hoặc telnet.

    Tạo một thư mục cho server game của bạn.



    mkdir hlds_l



    Chuyển đến thư mục game vừa tạo



    cd hlds_l



    Bây giờ bạn cần download file "steam"(file chính để install) từ server của Steam. Ở đây tôi hướng dẫn cách lấy file steam bằng lệnh wget, nếu server linux của bạn không hỗ trợ wget, bạn hãy download trực tiếp file steam ở link dưới đây(phần dedicated server for LINUX):

    http://www.steampowered.com/index.php?area=getsteamnow



    Hoặc download trực tiếp bằng trình FTP client của bạn:



    Server: ftp.valvesoftware.com
    User:
    hlserver
    Pass: hlserver
    Remote dir: /Linux
    File: hldsupdatetool.bin




    Rồi upload trực tiếp lên thư mục game của bạn đã tạo lúc này bằng trình FTP client nào đó chẳng hạn Total Commander, CuteFTP, LeapFTP,….
    ---


    Nếu server của bạn có hỗ trợ wget thì lấy file đó bằng lệnh trực tiếp sau đây:



    wget ftp://hlserver:[email protected]/Linux/hldsupdatetool.bin



    Nên nhớ là lúc này bạn đang ở thư mục hlds_l






    Bây giờ bạn đã có file hldsupdatetool.bin trong thư mục hlds_l.

    Bạn hãy chmod +x và run nó:



    chmod +x hldsupdatetool.bin
    ./hldsupdatetool.bin




    Sau khi chạy xong bạn sẽ có file steam trong thư mục hlds_l



    Tiếp tục chmod +x cho file steam



    chmod +x steam




    Bây giờ bạn đã sẵn sàng để tạo một steam account và bắt đầu download files cho server game của bạn:

    Câu lệnh để tạo một account steam như sau:



    ./steam -create <username> <password> <question> <answer>

    Ví dụ



    ./steam -create [email protected] 123456789 “What is your pet name?" “Lucky”



    Sau khi đánh lệnh trên steam sẽ tự động download những file cần thiết mới nhất cho server của bạn:



    Getting version X of Steam Linux Client
    Downloading. . . . . . . . . . .
    Linux Client updated, please retry the command




    Nếu bạn làm đúng sẽ hiện ra câu thông báo sau:

    Account Created successfully



    Bây giờ bạn phải update steam server:

    Câu lệnh chuẩn như sau:

    ./steam -update <game> <installdir> <username> [<password> [Y]]



    Ví dụ



    ./steam -update cstrike /home/hlds_l [email protected] 123456789 Y



    Câu lệnh ở đây chỉ đúng khi bạn có quyền access vào thư mục /home của server linux.

    Còn nếu host thuê trên mạng thư mục home của bạn sẽ là ~/ thì câu lệnh trên sẽ là:



    ./steam -update cstrike ~/hlds_l [email protected] 123456789 Y



    Bạn sẽ thấy dòng chữ sau



    No installation record found at /home/csserver/hlds_l



    Và steam sẽ tự động download những file cần thiết vào thư mục game bạn tạo lúc nãy (hlds_l)





    Sau khi download xong hết, bạn đã có thể start 1 game cho người khác vào chơi:



    Bạn thử đánh lệnh sau để start thử 1 game:



    ./hlds_run -game cstrike +map de_dust –autoupdate



    Nếu thấy được những dòng đại lọai như



    Auto-restarting the server on crash
    Host_Init
    Added packfile /usr/local/games/hlds_l/valve/pak0.pak (985 files)
    Protocol version 46
    Exe version 3.1.1.0
    Exe build: 14:46:34 Jun 11 2002 (2056)
    WON Auth Server
    Server IP address 64.132.156.11:27015
    Downloading Security Module from Speakeasy.net ...
    Completed downloading Security Module from Speakeasy.net
    Server is in Secure Mode.



    ……

    thì server của bạn đã có thể vào chơi được rồi IP và Port như trên là

    64.132.156.11:27015



    Bạn có thể đánh lệnh exit hoặc Ctrl C để thoát server!






    Khi bạn close SSH hay close Telnet thì xem như bạn đã đóng luôn server game đang chạy (trừ khi bạn cứ để Konsol nếu máy server là máy riêng của bạn). Vì vậy bạn phải làm cho server game của bạn chạy ngầm bên dưới.



    Đầu tiên bạn đánh lệnh



    Screen <enter>



    Sau đó Start 1 server:

    ./hlds_run -game cstrike +exec server.cfg +port 27015 +maxplayers 16 +map de_dust



    Giải thích câu lệnh trên:

    server.cfg :File chứa các lệnh cấu hình ban đầu của bạn (sẽ nói thêm vào phần sau), bạn có thể tạo một file như admin.cfg để chứa những lệnh bạn luôn muốn khởi tạo lúc bắt đầu chạy 1 server game.

    Các tham số còn lại khỏi nói, nhìn là biết tại sao nó vậy.



    Sau khi thấy server của bạn chạy rồi, bạn bấm CTRL A rồi D.

    Tổ hợp phím này giúp bạn thoát khỏi screen bạn tạo lúc nãy.

    Sau khi bấm tổ hợp phím trên, bạn đã có 1 server chạy ngầm bên dưới.



    Bây giờ bạn có thể làm lại thao tác tương tự để create thêm 1 server game khác



    Screen <enter>

    ./hlds_run -game cstrike +exec server.cfg +port 27016 +maxplayers 16 +map de_dust2

    CTRL A rồi D



    (Nhớ đổi port khác)


    Screen <enter>
    ./hlds_run -game cstrike +exec server.cfg +port 27017 +maxplayers 16 +map de_aztec

    CTRL A rồi D


    Vậy bạn đã có 3 server game chạy ngầm bên dưới hệ thống trên 3 port khác nhau.


    Bạn có thể xem các screen bạn tạo và đang chạy ngầm bằng lệnh


    Screen –r



    Bạn sẽ thấy:

    login@server:/var/home/login$screen -r
    There are several suitable screens on:
    102.pts-9.server (Detached)
    103.pts-9.server (Detached)
    104.pts-9.server (Detached)
    Type "screen [-d] -r [pid.]tty.host" to resume one of them



    Đó là thông tin về ba ứng dụng đang chạy ngầm, bạn có thể trở lại từng screen để sửa server, hoặc thoát luôn game server đó bằng lệnh:

    Screen –r 102 ( cái đầu tiên chẳng hạn)

    Bạn sẽ thấy màn hình trở về màn hình của server thứ 1 lúc nãy:

    Bạn muốn tắt luôn server này? Hãy đánh lệnh exit để thóat game và exit lần nữa để tắt cái screen hiện tại.



    Chúc thành công!



    Mốt số config cần thiết (Có thể áp dụng cho cả Dedicated server for Windows)



    · Sau khi tạo server, Những người có CS none steam vẫn không vào được và luôn bị lỗi Class C.

    Khắc phục:

    - Thêm lệnh sv_lan 1 vào file server.cfg hoặc bạn phải gõ trực tiếp trong console.

    - Patch Engine của Steam. Bạn có thể download các engine(for linux) hoặc file swds.dll(for Windows) đã patch từ nhiều nguồn trên mạng hoặc download trình nowon bên dưới về để tự patch.



    · Config các file cần thiết cho server:

    Các file cần config:



    server.cfg,

    liblist.gam,

    motd.txt,

    mapcycle.txt,

    autoexec.cfg



    Nếu không đọc được tiếng anh :D thì cứ để mặc định nhưng nhớ để dòng sv_lan 1 vào server.cfg nhá, còn không thì tui nghĩ những file đó chỉ là lệnh bình thường của cs thôi, có khi bạn còn rành hơn newbie như tôi.

    · Thêm AMX hoặc AMXX và META MOD cho server của bạn. Đây là các plugin giúp cho server của bạn thêm phong phú, chẳng hạn hiện thông báo thông tin về kẻ vửa cho 1 bi vào đầu bạn :D …..



    Mọi thông tin đều có ở :

    METAMOD : http://www.metamod.org

    AMX : http://www.amxmod.net

    AMXMODX : http://www.amxmodx.org



    Bạn download về và chép vào thư mục cần thiết và đổi dòng lệnh

    "game_dll mm.dll"

    bằng dòng

    gamedll "addons\metamod\dlls\metamod.dll"

    trong file liblist.gam


    (Những thông tin này đều có nói trong document của các mod mà bạn download)

    · Một số lỗi báo không tìm thầy file .gfx : bạn hãy tìm nó ở đâu đó( trên mạng, trong thư mục khác của server, trong thư mục game cs none steam ở nhà của bạn, …) và chép nó vào thư mục hlds_l/cstrike, hlds_l/valve, hlds_l/cstrike/valve

    · Nếu server của bạn nằm sau 1 router( trường hợp server của 1stvn và server của tui hoặc của bất cứ ai xài DSL ở VN, phải dùng router của ISP, thì bạn phải forward port trong router của bạn)

    Bạn vào chỗ nào có NAT config và forward port mà bạn dùng làm server game vào IP LAN của máy bạn

    · Làm sao để biết IP của máy bạn để người khác có thể vào?

    Có nhìu cách

    - Một là bạn vào trang DYNDNS.org để đăng kí một domain động, chỉ cần đăng kí và rất đơn giản để có một domain động.

    Chẳng hạn như tui đã đăng kí cái th01.game-host.org:27017
    1st vn đã đăng kí cái 1stvn.game-host.org:27016

    - Ngòai ra có thể vào gametiger.com để tìm ip WAN của server của bạn bằng cách tạo một game với 1 màn ít người dùng và search server với map nó chịu khó refress 2 3 phút sẽ thấy server của bạn

    - Ping cái DYNAMIC DNS mà bạn đăng kí sẽ ra IP.

    - Vào router phần IP WAN để xem IP.

    Hết.
     

    Các file đính kèm:

    • nowon.zip
      Kích thước:
      6.2 KB
      Đọc:
      134
  2. Satthutraidudu

    Satthutraidudu Mr & Ms Pac-Man

    Tham gia ngày:
    11/7/04
    Bài viết:
    172
    Uhm trước khi ai định lấy host linux của mình (thuê, mua chùa, .... he eh) thì nên:
    Vào cmd của windows và ping thử cái host của mình trước, thấy latency thấp thấp thì hãy làm còn không thì làm xong chỉ cho bọn nước ngoài nó vào là lẹ thôi còn dân VN thì bó chi :D . Tui đã làm một cái server trên host của tui nhưng ping khoảng 350 nên ngậm ngùi xóa luôn.
    Bài này chỉ để tham khảo thôi, nếu ai có hứng thì làm. Vài ngày nữa nếu vẫn không có ai post bài về làm server trên Win thì tui sẽ post.
    Ai chịu khó đọc tiếng Anh có thể download steam server for win về mà tự làm(phần Install tương tự LINUX)
    Download hlds for win:
    http://www.steampowered.com/index.php?area=getsteamnow
     
Trạng thái chủ đề:
Không mở trả lời sau này.

Chia sẻ trang này