Debian 7 x64でCall of Duty 4サーバーをセットアップする

概観

このガイドでは、画面を使用したCall of Duty 4(COD4)サーバーのインストールと操作について説明します。このチュートリアルでは、Debian 7にCOD4をインストールします。

必要条件

  • Call of Duty 4ゲームクライアントインストーラーCDまたはイメージ。
  • 安定版リリースを実行しているDebianサーバー(Wheezy、Jessie)
  • Vultr VPS(1 CPU、1 GBのメモリ、20 GBのストレージ)以上。この構成は、大規模なサーバーには適さない場合があります。

取り付け

このインストールに使用するサーバーにrootとしてログインします。

以下のコマンドを実行して、リポジトリからサーバーの利用可能なパッケージのリストを更新し、既存のパッケージをアップグレードします。

apt-get update && apt-get upgrade

多くの場合、画面はデフォルトでOSイメージに含まれていますが、自分でインストールする必要がある場合があります。

apt-get install screen

Call of Duty 4サーバーはi386マシンでのみ実行されるため、Debianで「multilib」機能を有効にする必要があります。

dpkg --add-architecture i386
apt-get update

セキュリティ上の理由から、rootアカウントを使用してサーバーを実行することは望ましくありません。標準のユーザーアカウントを使用する必要があります。

ゲームサーバー用のディレクトリを作成します。

cd ~
mkdir cod4

Call of Duty 4専用サーバーをダウンロードします。

cd cod4
wget http://treefort.icculus.org/cod/cod4-linux-server-06282008.tar.bz2

ダウンロードサイズは約280 MBです。ダウンロードが完了したら、パッケージを解凍します。

tar -xvjf cod4-linux-server-06282008.tar.bz2

COD4ゲームクライアントをコンピューターにインストールします。お気に入りのSCPクライアントを使用して、ゲームクライアントのmainおよびzoneフォルダーをサーバーのCOD4ディレクトリにコピーします。

アップロードが完了したら、実行可能にしたIceOpsをダウンロードします。さまざまなバグ修正と改善が含まれています。

wget https://iceops.in/cod4x17a_dedrun

サーバーを「実行可能」にします。

chmod +x cod4x17a_dedrun

専用サーバーの構成ファイルを作成します。

nano general.cfg

単純な「Team Deathmatch」または「Search&Destroy」サーバーを実行する場合は、このサンプル構成を使用します。

//************************************************** ****************************
// Call of Duty 4
//************************************************** ****************************
//************************************************** ****************************
// Public Information
//************************************************** ****************************
sets sv_hostname "CoD4 Server" // Change this field, what is the server name
sets _Admin "Admin" // Change this
sets _Email "[email protected]" // Change this
sets _Website "www.website.com" // Change this
sets _Location "Location" // Change this
sets _Irc ""
sets _Mod ""
sets _ModVer ""
sets _ModUpdate ""
sets _Maps "COD4 Stock"
set scr_motd "Message of the Day when the gamer joined the server" // Change it

//************************************************** ****************************
// Common Server Settings
//************************************************** ****************************
// Log Settings
set g_logsync "2" // 0=no log, 1=buffered, 2=continuous, 3=append
set logfile "1" // 0 = NO log, 1 = log file enabled
set g_log "games_mp.log" // Name of log file, default is games_mp.log
set sv_log_damage "1"

// Network options
set net_ip "192.168.1.1" // Set your servers IP address
set net_port "28960" // Set your port number
set com_hunkMegs "512"
set net_noipx "1" // Allow ONLY tcp/ip protocol, player/server communications

// Server Network Mode
set dedicated "2" // 0 = Listen, 1 = LAN, 2 = Internet

// Password Settings
set rcon_password "yourpass" // RCON must be set.
set sv_privatePassword "" // Private slots, non-public slots

// The following can be used to lock out the server so that only those
// players that have been provide the password can connect. Good for
// matches, practices, etc.
set g_password ""

// Player slots setup
set sv_maxclients "32" // MAX server player slots, this is TOTAL player slots
set sv_privateclients "" // Number of private player slots, maxclients - privateclients = public slots

// Ping
set sv_minPing "0" // MIN player ping on CONNECT, any lower and player isnt allowed to connect
set sv_maxping "250" // MAX player ping on CONNECT, any higher and player isnt allowed to connect

// Client Download Settings. (0=off/1=on) Used for MODs and custom maps
// You have to got a working httpd server if fast downloading enabled.
set sv_allowdownload "0"
seta sv_wwwDownload "0"
seta sv_wwwBaseURL ""
seta sv_wwwDlDisconnected "1"

// Rate
set sv_maxRate "25000"


// Drop inactive players
set sv_timeout "300"
set sv_zombietime "1"
set g_inactivity "0"
set g_inactivityspectator "0"

// AntiFlooding Settings
set sv_floodProtect "1"
set sv_reconnectlimit "3"

// Anti Cheat Settings
// In IceOps Dedicated server have their own cheat protection, so Punkbuster not needed
set sv_punkbuster "0"
set sv_disableClientConsole "0"
set cl_autocmd "0"
set sv_cheats "0"
set sv_pure "1"
set g_banIPs ""
set g_no_script_spam "1"

// Temporary Ban duration, in seconds
set sv_kickBanTime "3600"

// In-game voice communication system
set sv_voice "0"
set sv_voiceQuality "4"
set voice_deadChat "0"
set voice_global "0"
set voice_localEcho "0"
set winvoice_mic_mute "1"

//************************************************** ****************************
// Misc
//************************************************** ****************************
set sv_allowAnonymous "0"
set g_antilag "0"
set g_compassShowEnemies "0"
set scr_hardcore "1"
set g_allowvote "0"
set scr_allow_vote "0"
set scr_teambalance "1"
set ui_hud_hardcore "1"
set scr_game_allowkillcam "0"
set scr_game_onlyheadshots "0"
set scr_game_deathpointloss "0"
set scr_game_suicidepointloss "0"
set scr_team_teamkillpointloss "1"
set scr_game_spectatetype "1" // [0-2] 0=none, 1= team only, 2=spectate all
set scr_team_fftype "1" // 0=off 1=on 2=reflect damage 3=shared


//================================================== ===============================
// Gametype Settings
//================================================== ===============================

// First gametype to load
// "dm" - free for all deathmatch
// "dom" - domination
// "koth" - headquarters
// "sab" - sabotage
// "sd" - search & destroy
// "war" - team deathmatch

// Deathmatch
set scr_dm_scorelimit   150
set scr_dm_timelimit    10
set scr_dm_roundlimit   1
set scr_dm_numlives 0
set scr_dm_playerrespawndelay -1
set scr_dm_waverespawndelay 0


// Domination
set scr_dom_scorelimit  200
set scr_dom_timelimit   0
set scr_dom_roundlimit  1
set scr_dom_numlives 0
set scr_dom_playerrespawndelay -1
set scr_dom_waverespawndelay 0


// Teamdeath Match
set scr_war_scorelimit  750
set scr_war_timelimit   10
set scr_war_roundlimit  1
set scr_war_numlives 0
set scr_war_playerrespawndelay -1
set scr_war_waverespawndelay 0

// Sabotoge
set scr_sab_scorelimit  3
set scr_sab_timelimit   10
set scr_sab_roundlimit  3
set scr_sab_roundswitch 1
set scr_sab_numlives 0
set scr_sab_bombtimer   30
set scr_sab_planttime   3
set scr_sab_defusetime  3
set scr_sab_hotpotato   0
set scr_sab_playerrespawndelay -1
set scr_sab_waverespawndelay -1

// King of the Hill
set scr_koth_scorelimit 250
set scr_koth_timelimit  15
set scr_koth_roundlimit 1
set scr_koth_roundswitch    1
set scr_koth_numlives   0
set scr_koth_playerrespawndelay -1
set scr_koth_waverespawndelay 0
set koth_autodestroytime    60
set koth_spawntime  0
set koth_kothmode   0
set koth_capturetime    20
set koth_destroytime    10
set koth_delayPlayer    0
set koth_spawnDelay 60

// Search and Destroy
set scr_sd_scorelimit   6
set scr_sd_timelimit    3
set scr_sd_roundlimit   0
set scr_sd_roundswitch  3 // rounds between switching teams
set scr_sd_numlives 1 // elimination
set scr_sd_bombtimer    60
set scr_sd_planttime    7
set scr_sd_defusetime   7
set scr_sd_multibomb    0
set scr_sd_playerrespawndelay -1
set scr_sd_waverespawndelay 0

// Team-Balance and Voting
set scr_teambalance "1"
set g_allowvote "0"

set sv_mapRotation "gametype sd map mp_bloc gametype sd map mp_backlot gametype sd map mp_crash gametype sd map     mp_convoy gametype sd map mp_vacant gametype sd map mp_bog gametype sd map mp_pipeline gametype sd map mp_farm gametype sd map mp_crossfire gametype sd map mp_overgrown gametype sd map mp_citystreets gametype sd map mp_showdown gametype sd  map mp_strike gametype sd map mp_cargoship gametype sd map mp_countdown"

変更を構成ファイルに保存します。

次に、専用のサーバー(画面付き)を起動し、マップの回転を有効にする起動スクリプトを作成します。

nano cod4.sh

次の内容をスクリプトファイルに貼り付けます。

#!/bin/bash
screen -dmS cod4 ./cod4x17a_dedrun +set sv_authorizemode "-1" +exex general.cfg +map_rotate

変更をスクリプトファイルに保存し、「実行可能」にします。

chmod +x cod4.sh

iptablesファイアウォールを使用している場合は、次のルールを追加します。サーバー構成ファイルでポートを変更した場合は、ポートを更新します。

-A INPUT -p udp --dport 28960 -j ACCEPT
-A INPUT -p udp --sport 28960 -j ACCEPT
-A INPUT -p tcp --dport 28960 -j ACCEPT
-A INPUT -p tcp --sport 28960 -j ACCEPT
-A INPUT -p udp --dport 20800 -j ACCEPT
-A INPUT -p udp --sport 20800 -j ACCEPT
-A INPUT -p tcp --dport 20800 -j ACCEPT
-A INPUT -p tcp --sport 20800 -j ACCEPT
-A INPUT -p udp --dport 20810 -j ACCEPT
-A INPUT -p udp --sport 20810 -j ACCEPT
-A INPUT -p tcp --dport 20810 -j ACCEPT
-A INPUT -p tcp --sport 20810 -j ACCEPT

最後に、サーバーを起動します。

./cod4.sh


Leave a Comment

CentOS 7にApacheをインストールする方法

CentOS 7にApacheをインストールする方法

CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

サーバーマネージャーを使用して、Windows Serverの管理が向上します。セキュリティリスクを軽減し、効率的な管理を実現します。

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。

DebianでSnortを設定する方法

DebianでSnortを設定する方法

Snortは無料のネットワーク侵入検知システムです。最新の方法で、SnortをDebianにインストールし、設定する手順を紹介します。ネットワークのセキュリティを強化しましょう。

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsサーバーでWebサイトを実行している場合、電子メールも受信できるようにするためにhMailServerを使用する方法を解説します。

Ubuntu 19.04にFiveMサーバーをインストールする方法

Ubuntu 19.04にFiveMサーバーをインストールする方法

FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。

ヘルスケア2021における人工知能の影響

ヘルスケア2021における人工知能の影響

ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。