TutoS-GameServer.fr > Liste des Tutoriels > Créer, configurer et lancer son serveur Call of Duty 4 (Linux/Dédié) 
![]() |
Ce tutoriel a été rédigé par Soldat Ryan, et est sous contrat Creative Commons (voir bas de page). Vous pourrez le contacter via le forum. |
Voici un tutoriel pour COD4, j'ai essayé d'être le plus complet, en restant le plus simple possible.
Il peut bien sur être amélioré. J'attends vos suggestions (via le forum).
AVANT TOUTE CHOSE : IL N'EST PAS DEMANDE DE CLE CD POUR LANCER UN SERVEUR COD4.[
Préparer son serveur.
Pour pouvoir fonctionner, le serveur COD4 nécessite l'installation d'une librairie C++ utilisée par le programme : libstdc++.so.6.
Manip à faire pour les serveur 64bits. Sur les serveur 32bits, elles sont déjà installé.
Ne suivez cette procédure que si votre serveur Call of Duty 4 ne se lance pas. En effet, ces librairies peuvent être déjà installées (notamment sous Debian Lenny (5.00)).
On met à jour les paquets du serveur.
apt-get update
Puis le serveur en lui même.
apt-get upgrade
Si un message vous demande une confirmation, validez en tapant "Y" (pour Yes) ou "O" (pour Oui).
Maintenant installez les lib nécéssaires.
apt-get install ia32-libs
Vous pouvez maintenant installer un serveur Call of Duty 4 sur votre serveur dédié en 64bits ! ;-)
Si cette procédure n'a pas fonctionné (et seulement dans ce cas), alors tapez les commandes suivantes !
apt-get install apt-file
apt-file update
apt-file --architecture i386 search libstdc++.so.6
apt-get install lib32stdc++6
Chargez le jeu depuis son CD sur le serveur.
![]() | En effet, pour créer un serveur Call of Duty 4, vous devez posséder le jeu original (d'où vous allez récupérer les fichiers nécessaires au serveur). Vous pourrez trouver ces fichiers sur le net, mais leur téléchargement est illégal si vous ne possédez pas le CD original. Si vous possédez ce CD, mais n'avez pas le courage de passer par l'étape "on extrait le CD", faites un petit tour sur le forum ! |
Via FTP ou WinSCP, comme vous préférez (à moins de trouver une âme charitable qui vous permettra de charger le jeu depuis son serveur), copiez les fichiers suivants sur votre serveur dans un répertoire qu'on va appeler COD4 (pour faire simple :)).
Copiez tous les fichiers qui se trouvent sur votre CD à cet emplacement, sur votre serveur.
CD:/SETUP/DATA
(notez qu'il n'est pas nécessaire de charger le répertoire « Vidéo » qui se trouve dans le « main » ni les fichiers .exe, .dll ou .ico qui se trouvent dans « Data ». Cela permettra de gagner quelques centaines de Mo)
Au bout de 6 à 8 jours (suivant votre connexion internet), ^^ le jeu est sur votre serveur. SUPER !!!
Mais comme vous l'avez installé depuis votre CD vous devez installer le patch 1.7 (qui est le dernier sorti)
Pour cela :
wget http://www.tutos-gameserver.fr/files/tuto-31/cod4-linux-server-12152007.tar.bz2
Ensuite décompressez le fichier dans "COD4".
Vous devriez trouver, entre autre, les fichiers suivant dans la racine du jeu :
¤ cod4_lnxded
¤ cod4_lnxded-bin
¤ libgcc_s.so.1
¤ libstdc++.so.6
ainsi que les répertoires suivants :
¤ main
¤ miles
¤ Mods
¤ zone
Notez que vous devrez renommer le répertoire « Mods » en « mods ».
Maintenant que vous avez installé le jeu, il faut le lancer.
Pour cela créez un fichier « server.cfg » que vous placerez dans le répertoire « main ».
en voici un exemple :
//===============================================================
// Informations Serveur
//===================================================================
sets sv_hostname "Nom de votre server"
sets _Admin "Superman"
sets _Email "support@_NOSPAM_.net"
sets _Website "votre URL"
sets _Location "France"
sets _Irc ""
sets _Mod ""
sets _ModVer ""
sets _ModUpdate ""
sets _Maps ""
set scr_motd "Bienvenue sur le serveur !"
//===================================================================
// Configuration générale
//==================================================================
// Mots de passe
// Mot de passe du serveur
set g_password ""
// Mot de passe RCON
set rcon_password "motdepasse"
// Slots réservés
set sv_privatePassword ""
// Déscriptions des gametypes:
// dm - Mélée générale
// dom - Domination
// koth - Q.G. (King of the Hill)
// sab - Sabotage
// sd - Recherche et destruction
// war - Match à mort par équipe
set g_gametype "war"
// Nombre de joueurs
set sv_maxclients "32" //(nombre maxi de joueurs supporté par COD4)
//+set ui_maxclients "64" (commande à ajouter dans la ligne de commande pour un serveur ayant un nombre superieur à 32)
set sv_privateclients "0" // Slots réservés, seront déduis des slots publics
// Réglages du redirect
set sv_allowdownload "1"
seta sv_wwwDownload "0" // Active ou non le téléchargement depuis le redirect
seta sv_wwwBaseURL "" // Votre site avec vos maps, exemple : http://monclan.fr/cod4
seta sv_wwwDlDisconnected "1"
set sv_gamespy "1" // affichage dans la liste des serveurs
// Deconnexion des joueurs inactifs
set sv_timeout "300"
set sv_zombietime "1"
set g_inactivity "0"
set g_inactivityspectator "0"
// Réglages du ping
set sv_minPing "0"
set sv_maxping "350"
//===================================================================
// Map Rotations
//==================================================================
// WAR - Match à mort par équipe
set sv_mapRotation "gametype war map mp_backlot gametype war map mp_bloc gametype war map mp_bog gametype war map mp_cargoship gametype war map mp_citystreets gametype war map mp_convoy gametype war map mp_countdown gametype war map mp_crash gametype war map mp_crossfire gametype war map mp_farm gametype war map mp_overgrown gametype war map mp_pipeline gametype war map mp_shipment gametype war map mp_showdown gametype war map mp_strike gametype war map mp_vacant"
// DM - Mélée générale
//set sv_mapRotation gametype "dm map mp_backlot gametype dm map mp_bloc gametype dm map mp_bog gametype dm map mp_cargoship gametype dm map mp_citystreets gametype dm map mp_convoy gametype dm map mp_countdown gametype dm map mp_crash gametype dm map mp_crossfire gametype dm map mp_farm gametype dm map mp_overgrown gametype dm map mp_pipeline gametype dm map mp_shipment gametype dm map mp_showdown gametype dm map mp_strike gametype dm map mp_vacant"
// DOM - Domination
//set sv_mapRotation "gametype dom map mp_backlot gametype dom map mp_bloc gametype dom map mp_bog gametype dom map mp_cargoship gametype dom map mp_citystreets gametype dom map mp_convoy gametype dom map mp_countdown gametype dom map mp_crash gametype dom map mp_crossfire gametype dom map mp_farm gametype dom map mp_overgrown gametype dom map mp_pipeline gametype dom map mp_shipment gametype dom map mp_showdown gametype dom map mp_strike gametype dom map mp_vacant"
// KOTH - Q.G. (King of the Hill)
//set sv_mapRotation "gametype koth map mp_backlot gametype koth map mp_bloc gametype koth map mp_bog gametype koth map mp_cargoship gametype koth map mp_citystreets gametype koth map mp_convoy gametype koth map mp_countdown gametype koth map mp_crash gametype koth map mp_crossfire gametype koth map mp_farm gametype koth map mp_overgrown gametype koth map mp_pipeline gametype koth map mp_shipment gametype koth map mp_showdown gametype koth map mp_strike gametype koth map mp_vacant"
// SAB - Sabotoge
//set sv_mapRotation "gametype sab map mp_backlot gametype sab map mp_bloc gametype sab map mp_bog gametype sab map mp_cargoship gametype sab map mp_citystreets gametype sab map mp_convoy gametype sab map mp_countdown gametype sab map mp_crash gametype sab map mp_crossfire gametype sab map mp_farm gametype sab map mp_overgrown gametype sab map mp_pipeline gametype sab map mp_shipment gametype sab map mp_showdown gametype sab map mp_strike gametype sab map mp_vacant"
// SD - Recherche et destruction
//set sv_mapRotation "gametype sd map mp_backlot gametype sd map mp_bloc gametype sd map mp_bog gametype sd map mp_cargoship gametype sd map mp_citystreets gametype sd map mp_convoy gametype sd map mp_countdown gametype sd map mp_crash gametype sd map mp_crossfire gametype sd map mp_farm gametype sd map mp_overgrown gametype sd map mp_pipeline gametype sd map mp_shipment gametype sd map mp_showdown gametype sd map mp_strike gametype sd map mp_vacant"
//==================================================================
// Réglages du Gameplay
//=================================================================
// Equilibrage des équipes et vote
set scr_teambalance "1" // Equilibre automatiquement les équipes
set g_allowvote "1" // Active le vote ou non
// General
set scr_game_allowkillcam "1"
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"
set scr_game_forceuav "0"
set scr_game_hardpoints "1"
// Hardpoints
set scr_hardpoint_allowartillery "1"
set scr_hardpoint_allowuav "1"
set scr_hardpoint_allowhelicopter "1"
// Teams
set scr_team_fftype "0"
set scr_team_teamkillspawndelay "20"
set scr_team_kickteamkillers "0"
// Player
set scr_player_maxhealth "100"
set scr_player_suicidespawndelay "0"
set scr_player_healthregentime "5"
set scr_player_forcerespawn "1"
set scr_player_sprinttime "4"
// UI – Vous devez choisir soit Hardcore soit oldschool mais pas les deux en même temps !! Ici c'est le Hardcore qui est activé.
set scr_hardcore "1"
set scr_oldschool_mw "0"
set ui_hud_obituaries "1"
set ui_hud_showobjicons "1"
// Autres Réglages
set sv_allowAnonymous "0"
set g_antilag "0"
set g_compassShowEnemies "0"
//===================================================================
// Réglages du Gametype
//==================================================================
// 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 "0"
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 "0"
set scr_war_waverespawndelay "0"
// Sabotoge
set scr_sab_scorelimit "1"
set scr_sab_timelimit "20"
set scr_sab_roundlimit "0"
set scr_sab_roundswitch "1"
set scr_sab_numlives "0"
set scr_sab_bombtimer "30"
set scr_sab_planttime "2.5"
set scr_sab_defusetime "5"
set scr_sab_hotpotato "0"
set scr_sab_playerrespawndelay "7.5"
set scr_sab_waverespawndelay "0"
// 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 "0"
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 "4"
set scr_sd_timelimit "2.5"
set scr_sd_roundlimit "0"
set scr_sd_roundswitch "3" // rounds between switching teams
set scr_sd_numlives "1" // elimination
set scr_sd_bombtimer "45"
set scr_sd_planttime "5"
set scr_sd_defusetime "5"
set scr_sd_multibomb "0"
set scr_sd_playerrespawndelay "0"
set scr_sd_waverespawndelay "0"
//===================================================================
// Protection AntiFlood
//===================================================================
set sv_floodProtect "1"
set sv_reconnectlimit "3"
//===================================================================
// Protection anti triche
//==================================================================
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"
set sv_punkbuster "1"
PB_SV_Update
// Durée d'un ban temporaire en secondes
set sv_kickBanTime "3600"
//===================================================================
// Réglages des Classes / Perk
//==================================================================
// limite le nombre de joueurs par classes
set class_assault_limit "99"
set class_specops_limit "99"
set class_heavygunner_limit "99"
set class_demolitions_limit "99"
set class_sniper_limit "99"
// perks
set perk_allow_specialty_parabolic "1"
set perk_allow_specialty_gpsjammer "1"
set perk_allow_specialty_holdbreath "1"
set perk_allow_specialty_quieter "1"
set perk_allow_specialty_longersprint "1"
set perk_allow_specialty_detectexplosive "1"
set perk_allow_specialty_explosivedamage "1"
set perk_allow_specialty_pistoldeath "1"
set perk_allow_specialty_grenadepulldeath "1"
set perk_allow_specialty_bulletdamage "1"
set perk_allow_specialty_bulletpenetration "1"
set perk_allow_specialty_bulletaccuracy "1"
set perk_allow_specialty_rof "1"
set perk_allow_specialty_fastreload "1"
set perk_allow_specialty_extraammo "1"
set perk_allow_specialty_armorvest "1"
set perk_allow_specialty_fraggrenade "1"
set perk_allow_specialty_specialgrenade "1"
set perk_allow_c4_mp "1"
set perk_allow_claymore_mp "1"
set perk_allow_rpg_mp "1"
// assault class default loadout
set class_assault_primary "m16"
set class_assault_primary_attachment "gl"
set class_assault_secondary "beretta"
set class_assault_secondary_attachment "none"
set class_assault_perk1 "specialty_null"
set class_assault_perk2 "specialty_bulletdamage"
set class_assault_perk3 "specialty_longersprint"
set class_assault_grenade "concussion_grenade"
set class_assault_camo "camo_none"
set class_assault_frags "1"
set class_assault_special "1"
// specops class default loadout
set class_specops_primary "mp5"
set class_specops_primary_attachment "none"
set class_specops_secondary "usp"
set class_specops_secondary_attachment "silencer"
set class_specops_perk1 "c4_mp"
set class_specops_perk2 "specialty_explosivedamage"
set class_specops_perk3 "specialty_bulletaccuracy"
set class_specops_grenade "flash_grenade"
set class_specops_camo "camo_none"
set class_specops_frags "1"
set class_specops_special "1"
// heavygunner class default loadout
set class_heavygunner_primary "saw"
set class_heavygunner_primary_attachment "none"
set class_heavygunner_secondary "usp"
set class_heavygunner_secondary_attachment "none"
set class_heavygunner_perk1 "specialty_specialgrenade"
set class_heavygunner_perk2 "specialty_armorvest"
set class_heavygunner_perk3 "specialty_bulletpenetration"
set class_heavygunner_grenade "concussion_grenade"
set class_heavygunner_camo "camo_none"
set class_heavygunner_frags "1"
set class_heavygunner_special "1"
// demolitions class default loadout
set class_demolitions_primary "winchester1200"
set class_demolitions_primary_attachment "none"
set class_demolitions_secondary "beretta"
set class_demolitions_secondary_attachment "none"
set class_demolitions_perk1 "rpg_mp"
set class_demolitions_perk2 "specialty_explosivedamage"
set class_demolitions_perk3 "specialty_longersprint"
set class_demolitions_grenade "smoke_grenade"
set class_demolitions_camo "camo_none"
set class_demolitions_frags "1"
set class_demolitions_special "1"
// sniper class default loadout
set class_sniper_primary "m40a3"
set class_sniper_primary_attachment "none"
set class_sniper_secondary "beretta"
set class_sniper_secondary_attachment "silencer"
set class_sniper_perk1 "specialty_specialgrenade"
set class_sniper_perk2 "specialty_bulletdamage"
set class_sniper_perk3 "specialty_bulletpenetration"
set class_sniper_grenade "flash_grenade"
set class_sniper_camo "camo_none"
set class_sniper_frags "1"
set class_sniper_special "1"
set class_assault_movespeed "0.95"
set class_specops_movespeed "1.00"
set class_heavygunner_movespeed "0.875"
set class_demolitions_movespeed "1.00"
set class_sniper_movespeed "1.00"
set scr_enable_nightvision "1"
set scr_enable_music "1"
set scr_enable_hiticon "1"
//===================================================================
// Réglages annexes
//===================================================================
// Réglages des logs
set g_logsync "2"
set logfile "1" // 0 = Désactivé, 1 = Activé
set g_log "games_mp.log" // Nom du fichier de log
set sv_log_damage "1"
// Réglages VOIP
set sv_voice "0"
set sv_voiceQuality "0"
set voice_deadChat "0"
set voice_global "0"
set voice_localEcho "0"
//===================================================================
// Réglages réseau
//==================================================================
set net_ip "L'IP de votre serveur"
set net_port "28960" // Port par défaut pour COD mais vous pouvez le modifier
set com_hunkMegs "512"
set sv_maxRate "25000"
set sv_minRate "20000"
set net_noipx "1"
set dedicated "2"
seta snaps "40"
set sv_master1 "cod4master.activision.com"
set sv_master2 "cod4authorize.activision.com"
set sv_master3 "cod4master.infinityward.com"
set sv_master3 "cod4update.activision.com"
set sv_master4 "master.gamespy.com:28960"
set sv_master5 "master0.gamespy.com"
set sv_master6 "master1.gamespy.com"
set sv_master7 "clanservers.net"
Faites les modifications que vous voulez.
La valeur 1 "active" une commande ; la valeur 0 la désactive.
Les // devant la ligne font que la ligne est ignorée par le jeu.
Maintenant après de longues heures vous voilà fin prêt à lancer le jeu.
Sauf qu'il vous manque les fichiers de Punkbuster.
Rien de plus simple à installer et pas le plus long.
Il faut rendre exécutable le fichier "pbsetup.run" en utilisant la commande :
chmod +x pbsetup.run
Ensuite, pour le lancer, taper les commandes suivantes :
./pbsetup.run -e
./pbsetup.run --add-game=cod4 --add-game-path=/var/cod4/ ==> En fonction de votre emplacement.
./pbsetup.run -u
La ligne de commande pour lancer le jeu :
./cod4_lnxded +exec server.cfg +map_rotate +set dedicated 2
En cas de pare-feux ou autre logiciel de ce genre installé sur votre serveur dédié, vous devrez ouvrir les ports UDP 20800, UDP 20810 et UDP 28960.
+exec server.cfg => execute le fichier server.cfg : le fichier de configuration du serveur.
+map_rotate => execution automatique des maps présentes sur le serveur.
+set dedicated 2 => signaler un serveur sur internet. Active les options de ranking en ligne. Seuls les serveurs sans mod pourront avoir leurs statistiques de rankées. Mettre "+set dedicated 1" signale un serveur uniquement LAN.
NOTA : Au lancement de votre jeu vous noterez qu'un répertoire caché a été créer dans la racine de votre "user". (/.cod4) Vous y trouverez vos fichiers log ainsi que les fichiers de "PB".
Pour éviter cela il suffit de modifier votre ligne de commande et d'ajouter ceci :
+set fs_basepath /home/user/cod4 +set fs_homepath /home/user/cod4
(bien sur en fonction de l'endroit où se trouve votre jeu)
Vos fichiers logs ainsi que le répertoire "PB" se retrouverons alors dans le répertoire de votre jeu.
Dans le cas où vous voulez installer un mod (PAM, Extreme, AWE.....)
Chargez le mod dans le repertoire « mods » (Etrange non?)
Pour lancer le jeu dans le mod souhaité, placez vous dans le répertoire en question et tapez votre ligne de commande :
./cod4_lnxded +set dedicated 2 +set net_ip XXX.XXX.XXX.XXX +set net_port XXXXX +set fs_game mods/nomdevotremod +exec server.cfg +set sv_maxclients 32 +map_rotate
Vous voulez installer des maps.
Créer un répertoire à la racine du jeu :
mkdir usermaps
Reste plus qu'à charger vos maps dans ce repertoire.
![]() | Tous les fichiers des maps doivent se trouver ici et en aucun cas dans un autre repertoire. |
Chaque map est composée de 3 fichiers : .ff .iwd et .load (1 répertoire par map comprenant ces 3 fichiers).
Avant d'installer une map verifiez que le .iwd ne comprend pas de script – fichier .gsc par exemple.
Sinon cela risque de planter votre serveur ou le chargement des maps (Chargement en boucle possible).
Oubliez pas non plus de les ajouter à votre rotation !!!!
VOUS DEVEZ FAIRE TOURNER LE JEU SOUS UN MOD POUR POUVOIR JOUER AVEC CES MAPS
Lorsque vous avez installé votre mod et vos maps, il vous faut charger les fichiers clients sur un serveur miroir (qui peut être le même serveur pour vos jeux mais à un autre emplacement)
Une fois fait, LANCEZ votre serveur de jeu. :)
Ce tutoriel est protégé par une license Creative Commons.