TROOPO Index du Forum TROOPO
Forum du Troopo où un ramassis de fadas de Trackmania se retrouvent pour délirer. Liberté, Respect, Délire.
 
 FAQFAQ   RechercherRechercher   MembresMembres   GroupesGroupes   S’enregistrerS’enregistrer 
 ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 

serveur dédier

 
Poster un nouveau sujet   Répondre au sujet    TROOPO Index du Forum >>> Trackmania - TMN & TMUF >>> Tutoriaux
Sujet précédent :: Sujet suivant  
Auteur Message
Less CargO
Administrateur


Hors ligne

Inscrit le: 02 Avr 2009
Messages: 1 387
Localisation: Hérault

MessagePosté le: Dim 28 Juin 2009 - 01:26    Sujet du message: serveur dédier Répondre en citant

[Tuto] Serveur dédié Trackmania Nations Forever
Pré-requis
Pour commencer vous devrez choisir quel sera votre système d'exploitation hôte. Si pour certain ce choix parait comme une évidence, pour les serveurs LANs par exemple je vous conseille fortement d'utiliser un OS de type GNU Linux sur lequel repose ce tutoriel.

La configuration d'un serveur sous Windows ne sera pas détaillée ici mais les fichiers de configuration, l'arborescence des dossiers et les paramètres de commandes étant globalement les même il ne devrait pas y avoir de problème pour adapter ce tutoriel pour Windows.

Forever ? Nations ? Sunrise ?
Si vous avez suivi l'univers Trackmania depuis 5 ans vous connaissez les différentes versions. A l'heure actuelle on distingue les serveurs pour les anciennes versions :

  • Trackmania Nations
  • Trackmania Original
  • Trackmania Sunrise



Et les nouvelles

  • Trackmania Forever (la version payante)
  • Trackmania Nations Forever (la version gratuite Trackmania Nations mise à jour en 2008)



Ce dossier abordera la mise en place d'un serveur dédié pour Forever, que ce soit pour Nations our pour le jeu complet, cependant à part les binaires la configuration et en de nombreux points identique avec les anciennes moutures du serveur.



Installation
 Les fichiers du serveur dédié sont communs à Linux et Windows. La dernière version disponible à cette date est sortie le 5 décembre :
Cliquez ici pour télécharger le serveur dédié Trackmania Forever

Sinon le topic officiel mis à jour par l'équipe de Nadeo reste la meilleure source : Forum officiel .

Si votre serveur n'est pas dédié à Forever (Sunrise,Nations ...) veuillez utiliser le binaire suivant : dédié anciens trackmania.

Décompressez l'archive dans le répertoire de votre choix.

#mkdir tmnf
#cd tmnf
#wget http://files2.trackmaniaforever.com/TrackmaniaServer_2008-12-05.zip
#unzip TrackmaniaServer_2008-12-05.zip


Dans le répertoire on remarquera la présence de :

ClientCommandLine.txt
C'est dans ce fichier que vous trouverez la syntaxe des commandes à utiliser en mode client pour contrôler votre serveur..

Readme_Dedicated.html
Est-ce bien utile de préciser qu'il devrait normalement à lui seul vous permettre de monter un serveur de base ?

TrackmaniaServer / TrackmaniaServer.exe
Ce sont respectivement les binaires pour le serveur dédié linux ou windows. Vous l'aurez compris, une fois préparé votre serveur est prêt à être copié collé et lancé depuis n'importe quelle machine, qu'elle soit sous GNU Linux ou Windows.

[GameData]
C'est dans ce dossier que nous placerons les circuits, la liste des maps et l'ensemble des fichiers de configuration du serveur.



Configuration du serveur dédié
Votre serveur est désormais installé sur la machine, nous allons maintenant nous pencher sur la configuration du service. Pour ce faire rendez vous dans le fichier "GameData/Config/dedicated_cfg.txt"

Le contenu se présente sous la forme suivante :
Code:
<dedicated>    <authorization_levels>        <level>            <name>SuperAdmin</name>            <password>SuperAdmin</password>        </level>        <level>            <name>Admin</name>            <password>Admin</password>        </level>        <level>            <name>User</name>            <password>User</password>        </level>    </authorization_levels>     <masterserver_account>        <login></login>        <password></password>    </masterserver_account>     <server_options>        <name></name>        <comment></comment>         <max_players>32</max_players>        <password></password>         <max_spectators>32</max_spectators>        <password_spectator></password_spectator>         <ladder_mode>forced</ladder_mode>        <!-- value between 'inactive', 'forced' (or '0', '1') -->         <enable_p2p_upload>True</enable_p2p_upload>        <enable_p2p_download>True</enable_p2p_download>         <callvote_timeout>60000</callvote_timeout>        <callvote_ratio>0.5</callvote_ratio>         <allow_challenge_download>True</allow_challenge_download>        <autosave_replays>False</autosave_replays>        <autosave_validation_replays>False</autosave_validation_replays>    </server_options>     <system_config>        <connection_uploadrate>512</connection_uploadrate>   <!-- KBps -->        <connection_donwloadrate>8192</connection_donwloadrate>   <!-- KBps -->        <force_ip_address></force_ip_address>        <server_port>2350</server_port>        <server_p2p_port>3450</server_p2p_port>        <client_port>0</client_port>        <bind_ip_address></bind_ip_address>        <use_nat_upnp></use_nat_upnp>         <xmlrpc_port>5000</xmlrpc_port>        <xmlrpc_allowremote>False</xmlrpc_allowremote>    <!-- If you specify an ip adress here, it'll be the only accepted adress.          this will improve security. -->         <blacklist_url></blacklist_url>        <guestlist_filename></guestlist_filename>        <blacklist_filename></blacklist_filename>         <use_proxy>False</use_proxy>        <proxy_login></proxy_login>        <proxy_password></proxy_password>    </system_config></dedicated>

Les points à modifier
Inutile de toucher à tout, seuls quelques paramètres doivent être modifiés sauf cas exceptionnels.
authorization_levels
    <authorization_levels>
        <level>
            <name>SuperAdmin</name>
            <password>SuperAdmin</password>
        </level>
        <level>
            <name>Admin</name>
            <password>Admin</password>
        </level>
        <level>
            <name>User</name>
            <password>User</password>
        </level>
    </authorization_levels>
Cette section contient les paramètres de connexion utilisateurs et super utilisateurs. Ne modifiez en aucun cas les noms de ces paramètres (<name>), modifiez seulement leurs mots de passe avec ceux de votre choix.

masterserver_account
    <masterserver_account>
        <login></login>
        <password></password>
    </masterserver_account>

Le masterserver account correspond à votre compte auprès du serveur central de Trackmania. Si vous n'avez pas de compte pour votre serveur dédié il vous suffit d'en créer un depuis le jeu à cet effet.

server_options
    <server_options>
        <name>Kookyoo.net</name>
        <comment>Commentaires de mon serveur, visitez $lkookyoo.net</comment>
 
        <max_players>32</max_players>
        <password></password>
 
        <max_spectators>32</max_spectators>
        <password_spectator></password_spectator>
 
        <ladder_mode>forced</ladder_mode>     <!-- value between 'inactive', 'forced' (or '0', '1') -->
 
        <enable_p2p_upload>True</enable_p2p_upload>
        <enable_p2p_download>True</enable_p2p_download>
 
        <callvote_timeout>60000</callvote_timeout>
        <callvote_ratio>0.5</callvote_ratio>
 
        <allow_challenge_download>True</allow_challenge_download>
        <autosave_replays>False</autosave_replays>
        <autosave_validation_replays>False</autosave_validation_replays>

    </server_options>

Ici pensez simplement à paramétrer le nom de votre serveur et le nombre de joueurs acceptés (max_players). A vous de tester pour voir selon les ressources de votre machine le meilleur compromis. Au delà de 64 joueurs il faudra prévoir une machine puissante avec une grosse connexion.
Attention aux paramètres autosave_replays et autosave_validation_replays, à moins d'en avoir besoin je vous conseille de vérifier que cette valeur soit à false, autrement chaque course enregistrera son lot de replays, prenant au final une place importante et entraînant des pertes de performances évidentes. Si vous organisez des compétitions sur votre serveur il semble préférable d'utiliser les validation_replays qui ne conserveront que les meilleurs temps en vue d'un éventuel visionnage à postériori par les arbitres.

system_config
    <system_config>
        <connection_uploadrate>512</connection_uploadrate>    <!-- KBps -->
        <connection_donwloadrate>8192</connection_donwloadrate>    <!-- KBps -->

        <force_ip_address></force_ip_address>
        <server_port>2350</server_port>
        <server_p2p_port>3450</server_p2p_port>
        <client_port>0</client_port>
        <bind_ip_address></bind_ip_address>
        <use_nat_upnp></use_nat_upnp>
 
        <xmlrpc_port>5000</xmlrpc_port>
        <xmlrpc_allowremote>False</xmlrpc_allowremote>
 
        <blacklist_url></blacklist_url>
        <guestlist_filename></guestlist_filename>
        <blacklist_filename></blacklist_filename>
 
        <use_proxy>False</use_proxy>
        <proxy_login></proxy_login>
        <proxy_password></proxy_password>
    </system_config>

Là encore, peu de choses à configurer, remplissez éventuellement les champs guestlist_filename (slots réservés pour vos amis/votre team), blacklist_filename (liste des joueurs bannis du serveur) avec les fichiers correspondants. Saisissez si possible l'adresse du pc qui servira à distance pour contrôler votre serveur dans xmlrpc_allowremote , inutile de laisser n'importe qui prendre la main sur le serveur.
 Laissez les ports par défaut sauf si vous lancez plusieurs serveurs sur la même machine ou si le port est déjà utilisé.



Configuration du MatchSettings
 Le fichier " GameData/Tracks/MatchSettings/Nations/kookyoo.txt " contiendra la liste des paramètres du jeu. Ce fichier est appellé dans la commande de chargement, vous pouvez en enregistrer plusieurs sous différents noms pour différentes configurations de jeu.

Le fichier se compose de la manière suivante :
Code:
<playlist>    <gameinfos>        <game_mode>1</game_mode>        <chat_time>10000</chat_time>        <finishtimeout>1</finishtimeout>        <allwarmupduration>0</allwarmupduration>        <disablerespawn>0</disablerespawn>        <forceshowallopponents>0</forceshowallopponents>        <rounds_pointslimit>30</rounds_pointslimit>        <rounds_usenewrules>0</rounds_usenewrules>        <rounds_forcedlaps>0</rounds_forcedlaps>        <rounds_pointslimitnewrules>5</rounds_pointslimitnewrules>        <team_pointslimit>50</team_pointslimit>        <team_maxpoints>6</team_maxpoints>        <team_usenewrules>0</team_usenewrules>        <team_pointslimitnewrules>5</team_pointslimitnewrules>        <timeattack_limit>180000</timeattack_limit>        <timeattack_synchstartperiod>0</timeattack_synchstartperiod>        <laps_nblaps>5</laps_nblaps>        <laps_timelimit>0</laps_timelimit>        <cup_pointslimit>100</cup_pointslimit>        <cup_roundsperchallenge>5</cup_roundsperchallenge>        <cup_nbwinners>3</cup_nbwinners>        <cup_warmupduration>2</cup_warmupduration>    </gameinfos>    <hotseat>        <game_mode>0</game_mode>        <time_limit>300000</time_limit>        <rounds_count>5</rounds_count>    </hotseat>    <filter>        <is_lan>0</is_lan>        <is_internet>0</is_internet>        <is_solo>0</is_solo>        <is_hotseat>0</is_hotseat>        <sort_index>27</sort_index>        <random_map_order>0</random_map_order>        <force_default_gamemode>0</force_default_gamemode>    </filter>    <startindex>0</startindex>    <challenge>        <file>Campaigns\Nations\Green\B01-Race.Challenge.Gbx</file>        <ident>8oDWqaNMXpyFg6e_QUb07Wzpkk3</ident>    </challenge>...</playlist>

Explicationsgameinfos
Code:


        <game_mode>1</game_mode>
        <chat_time>10000</chat_time>
        <finishtimeout>1</finishtimeout>
        <allwarmupduration>0</allwarmupduration>
        <disablerespawn>0</disablerespawn>
        <forceshowallopponents>0</forceshowallopponents>
        <rounds_pointslimit>30</rounds_pointslimit>
        <rounds_usenewrules>0</rounds_usenewrules>
        <rounds_forcedlaps>0</rounds_forcedlaps>
        <rounds_pointslimitnewrules>5</rounds_pointslimitnewrules>
        <team_pointslimit>50</team_pointslimit>
        <team_maxpoints>6</team_maxpoints>
        <team_usenewrules>0</team_usenewrules>
        <team_pointslimitnewrules>5</team_pointslimitnewrules>
        <timeattack_limit>300000</timeattack_limit>
        <timeattack_synchstartperiod>0</timeattack_synchstartperiod>
        <laps_nblaps>5</laps_nblaps>
        <laps_timelimit>0</laps_timelimit>
        <cup_pointslimit>100</cup_pointslimit>
        <cup_roundsperchallenge>5</cup_roundsperchallenge>
        <cup_nbwinners>3</cup_nbwinners>
        <cup_warmupduration>2</cup_warmupduration>
    </gameinfos>


game mode :
  • 0 = Rounds (courses normales, tout le monde part en même temps, le premier arrive gagne)
  • 1 = TimeAttack (contre la montre)
  • 2 = Team (classement par teams rouge vs bleu)
  • 3 = Laps (nombre de tours)
  • 4 = Stunts (score des cascades)


timeattack_limit > Durée en secondes d'une manche de time attack (ex : 30000 = 5 minutes)
Notre serveur est configuré pour du timeAttack, je n'expliciterais pas les autres paramètres qui me semblent suffisament explicites.




Lancer le serveur, et aller plus loin
C'est parti
Maintenant que tout est en place il ne reste plus qu'à lancer le serveur dédié. Pour ce faire la syntaxe de la commande linux est la suivante :

#./TrackmaniaServer /dedicated_cfg=GameData/Config/dedicated_cfg.txt /game_settings=GameData/Tracks/MatchSettings/Nations/kookyoo.txt

Sous Windows pensez à inverser les slash dans les adresses, la syntaxe est identique.


Les options supplémentaires
Vous pouvez spécifier si votre serveur est de type internet ou LAN avec l'option " /internet " ou " /lan " (défaut)
Concernant les numéros de ports réseau votre machine doit pouvoir :

  • sortir en http (TCP 80) et https (443 tcp)
  • recevoir sur le port <server_port> en tcp et udp (2350 tcp eu udp par défaut)
  • recevoir sur le port <server_p2p_port> en tcp (3450 tcp par défaut)
     
  • (pour l'administration à distance) recevoir aussi sur le port <xmlrpc_port> en tcp (5000 tcp par défaut, parfois utilisé par le système sous Windows)



Pensez donc à bien ouvrir vos ports et à faire les redirections nécessaires sur les routeurs.


La création de compte
Elle est facultative mais pourra vous servir dans le cas d'un serveur internet, surtout si vous voulez permettre l'échange de coppers (la monnaie du jeu dans la version payante). Pour un serveur simple utilisez n'importe quel compte (ou un compte créé depuis le jeu pour l'occasion), sinon rendez-vous sur cette page dans la section Dedicated Server.

Pour aller plus loin
Le Readme officiel, le fichier à toujours consulter en premier avant de chercher ailleurs :
http://slig.free.fr/TM/TMFdedicated/Readme_Dedicated.html


Administrer son serveur Trackmania en PHP
Si vous avez besoin de gérer votre serveur sans être connecté au jeu, ou si vous organisez par exemple des tournois, les interfaces php sont un excellent moyen de contrôle. A l'heure actuelle l'interface la plus aboutie que j'ai testé est TMWeb.

Ce tutoriel de lanforums vous expliquera comment mener à bien son installation.


Développer son interface d'administration / Widget PHP
Aucune interface ne comble vos attentes ? Si vous vous y connaissez un minimum en php pourquoi ne pas attaquer directement en développant la votre ?

Nadeo a eu la gentillesse de fournir avec le serveur dédié un ensemble de fichiers d'exemples ainsi qu'un fichier source contenant les fonctions précodées pour intéragir depuis php avec votre ou vos serveurs. Tout se trouve dans le dossier " RemoteControlExamples/PhpRemote/ " et le fichier "basic.php" est sans doute le meilleur moyen de voir ce que cette API est capable de faire. Vous pourrez ensuite modifier à votre guise cette base pour construire, par exemple, des modules pour afficher la liste des joueurs connectés sur votre serveur en temps réel, la map en cours, les temps et pourquoi pas carrément un chat php pour dialoguer avec les personnes ingame, comme sur Kookyoo.



BONNE CHANCE


                                                                                                                                    
_________________
Je crois au moment. S'il n'y a pas le moment, à ce moment-là, il faut arriver au moment qu'on veut. (JCVD)



Revenir en haut
Publicité







MessagePosté le: Dim 28 Juin 2009 - 01:26    Sujet du message: Publicité

PublicitéSupprimer les publicités ?
Revenir en haut
per pustule
Administrateur


Hors ligne

Inscrit le: 02 Avr 2009
Messages: 1 255

MessagePosté le: Lun 6 Juil 2009 - 18:43    Sujet du message: serveur dédier Répondre en citant

j'ai trouvé çà: pour  xaseco:

http://translate.google.fr/translate?hl=fr&sl=en&u=http://www.gamer…
_________________

Je n'ai pas échoué. J'ai simplement trouvé 10.000 solutions qui ne fonctionnent pas.
Thomas Edison
Si le matin tu ne rentre plus dans ton slip; c'est que c'est pas le tiens.


Revenir en haut
Contenu Sponsorisé







MessagePosté le: Aujourd’hui à 03:12    Sujet du message: serveur dédier

Revenir en haut
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    TROOPO Index du Forum >>> Trackmania - TMN & TMUF >>> Tutoriaux Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 1

 
Sauter vers:  

Portail | Index | Panneau d’administration | Creer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Powered by phpBB © 2001, 2017 phpBB Group
Traduction par : phpBB-fr.com
Thème réalisé par SGo