Teeworlds

Ce tutoriel est un fork considérablement inspiré du tuto suivant, sans qui rien n’aurait été possible : merci à son auteur ! Consultez-le en complément, il y a plein d’infos.

Présentation

Teeworlds[^1] est un jeu (libre) très amusant, il fonctionne bien auprès des 8-14 ans. Jeu de tir à la 3ème personne en équipe, il est parfait pour jouer en solo ou par équipe sur un réseau local. Multiplateforme, il est disponible pour linux, windows et OSX.

Spécificités pédagogiques

  • fabriquer soi-même des cartes de jeu
  • mettre en place son propre serveur de jeu sur chaque PC
  • proposer sa carte sur son propre serveur pour des parties en lan

Spécificités techniques

  • en réseau local (LAN) ou sur un serveur internet
  • 3 types de jeu :
    • solo (DeathMatch) : tous contre tous
    • en équipe (TeamDeathMatch) : 2 équipes l’une contre l’autre
    • attraper le drapeau en équipe (CatchTheFlag) : chaque équipe doit s’emparer du drapeau de l’autre équipe et le ramener dans son camp
  • utilisation d’un « grapin » pour s’accrocher aux murs et plafonds
  • 3 armes différentes + 1 arme spéciale (powerup)
  • multijoueurs
  • une console d’administration en jeu (rcon) accessible via F2

Déroulement d’une partie

L’objectif est d’infliger un maximum de dégâts aux autres joueur. On peut augmenter sa résistance en récupérant de petits boucliers, et de la vie avec les petits cœurs. On peut changer d’arme en attrapant de nouvelles armes qui apparaissent régulièrement dans le jeu. Le Katana est pouvoir spécial (powerup) infligeant beaucoup de dégâts.

Lorsqu’on meure, on renaît au point d’apparition (spawn spot).

Lorsqu’un joueur atteint 10 points, il gagne. Si aucun jouer n’atteint ce score, après un certains temps, est déclaré vainqueur celui qui a le plus de points.

À la fin de la partie, on recommence une partie dans une carte différente.

Animation pédagogique

Intérêt pédagogique

Fabriquer soi-même la carte dans laquelle jouer avec ses copains :

  • développer sa créativité
  • découvrir les notions de calques, de chemin, de serveur, de réseau local
  • découvrir les notions de jouabilité (gameplay)
  • se mettre à la place de l’autre (le futur joueur)

Séquences possibles

  • Prendre en main le jeu (prévoir une carte déjà fabriquée par l’animateur, sinon jouer sur un serveur sur internet)
  • Prendre en main l’éditeur de cartes (les raccourcis, le fonctionnement de l’éditeur, les calques)
  • Fabriquer une première carte
  • Rendre disponible sa carte sur son serveur
  • Jouer en lan avec les copains sur sa carte

Installer Teeworlds

Teeworlds ne s’installe pas, on le lance directement par un exécutable. Télécharger l’archive du jeu sur le site officiel, décompresser l’archive n’importe où sur votre ordinateur, ouvrez le dossier et lancer l’exécutable Teeworlds.exe.

Remarque pour linux : il est possible d’installer Teeworlds de façon classique via votre gestionnaire de paquets. Si vous choisissez cette méthode, pensez à installer également le paquet teeworlds-server. Cependant, la méthode directe via l’exécutable fonctionne très bien.

Configurer un serveur de jeu

Créer le fichier de configuration

  • ouvrez un éditeur de texte
  • collez-y les lignes de la colonne de gauche ci-dessous
  • adaptez le paramètre de chaque ligne en fonction de votre cas
  • enregistrez-le fichier dans le même dossier que l’exécutable de teeworlds
  • nommez-le par exemple « svr.cfg »
sv_name Mon serveur
sv_rcon_password mot_de_passe_rcon
password mot_de_passe_joueurs
sv_port 8303
sv_gametype dm
sv_register 0
sv_warmup 5
sv_map map
sv_maprotation maps_tournantes
sv_max_clients 16
sv_scorelimit 10
sv_tournament_mode 0
sv_motd Bienvenue sur mon serveur !
sv_powerups 1
sv_timelimit 15
sv_spectator_slots 0
nom du serveur
administrateur du serveur (facultatif)
pour entrer sur le serveur (facultatif)
port
mode de jeu (dm / tdm / ctf / mod)
0 en LAN / 1 pour apparaître sur internet
secondes avant le lancement du match
nom de la carte de démarrage
noms des cartes utilisées après la 1ère
nombre de joueurs max sur le serveur
score à atteindre pour finir une partie
0 entrer en cours de partie / 1 attendre la suivante
mot d'information à propos du serveur
0 = pas de Katana / 1 = Katana apparaît toutes les 1min30
temps max de la partie en minutes
Nombre de spectateurs pouvant regarder la partie

Il est possible de personnaliser d’autres paramètres à l’aide du type de jeu « mod » (sv_gametype mod). C’est un dm personnalisé, qui autorise la prise en compte de lignes supplémentaires que vous ajouterez sous la forme « tune paramètre variable ». Par exemple: tune gravity 0.

Console administrateur (rcon)

En jeu, elle est accessible via F2, avec le mot de passe correspondant, elle permet d’administrer votre serveur. On peut alors modifier et appliquer de nouveaux paramètres de configuration à son serveur, changer de carte, bannir un joueur, etc.

Démarrer le serveur

Il faut lancer le fichier teeworlds_svr en lui spécifiant de prendre en compte notre fichier de configuration svr.cfg.

Sous Windows

Créer un raccourci vers l’exécutable du serveur

  1. clic-droit sur le fichier teeworlds_svr
  2. créer un raccourci

Connaître le chemin exact du fichier svr.cfg

  1. ouvrez l’explorateur de fichiers (Menu Démarrer > Ordinateur ou Ce PC)
  2. placez-vous dans le dossier de Teeworlds
  3. cliquer dans la barre de chemin pour afficher le chemin du dossier
  4. clic-droit sur le chemin pour le copier

Modifier le raccourci pour qu’il prenne en compte le fichier svr.cfg

  1. clic-droit sur le raccourci > propriétés
  2. dans le champ « cible », placer le curseur à la fin du champ, après ce qui y est déjà écrit
  3. ajouter un espace, puis « -f », puis un autre espace, puis collez le chemin précédemment copié, puis ajouter « /svr.cfg »
  4. validez

Remarque importante

Le contenu déjà existant du champ « cible » ne doit pas être modifié. Pour une raison inconnue, toute modification de ce chemin pré-rempli rend le raccourci invalide. (Si vous l’effacez, puis le ré-écrivez à l’identique à la main, le raccourci devient invalide. Les mystères de Windows…)

Le champ « cible » doit donc avoir la forme suivante, avec le premier chemin qui n’a pas été modifié. Les guillemets ne sont pas (normalement) nécessaires, mais, si ça ne marche pas, essayez avec. 😉

"/chemin/vers/teeworlds_svr.exe" -f "chemin/vers/svr.cfg"

Sous Linux

Ouvrir un terminal et entrer :

$ teeworlds-server -f /chemin/du/dossier/teeworlds/svr.cfg

Sous Mac OSX

Comme sous Windows, deux exécutables sont fournis. Double-cliquez sur Teeworlds Server.app, il vous demandera le fichier .cfg. Sélectionnez-le, et ça devrait être ok. (Cf. le tutoriel précité, je n’ai pas testé sous Mac)

Créer une carte de jeu

Prérequis

Il faut bien comprendre la notion de calque :

Ensemble de couches empilées les unes au-dessus des autres, dont chacune contient une partie des éléments de peinture ou de dessin constituant l’ensemble et est transparente ailleurs. Dans ce système, chaque élément peut être placé sur un calque différent, si bien que l’on peut décomposer le travail, ce qui le rend plus simple, éviter d’altérer un dessin de fond et donc permettre de déplacer les éléments supérieurs d’une composition existante. (Wikipedia)

Objectif

Il nous faut :

  • un ou plusieurs sets d’images
  • un calque Game (avec nos Tees, les armes, les spawn spots, etc.)
  • un ou plusieurs calques dessinés à l’aide des sets d’images
  • un calque de fond (l’intégralité de la carte doit être remplie)
  • une hiérarchie correctes des calques (le fond au fond, les dessins ensuite, les Tees en premier)

Ouvrir l’éditeur de carte

  • Ctrl+Maj+E

Contrôles de base

  • Molette pour agrandir/réduire
  • Clic-molette pour déplacer la carte
  • Tab pour cacher les menus
  • Espace pour afficher le set d’images du calque courant
  • Clic
    • dans le set d’images (barre espace appuyée), sélectionne une unité d’image (un carré)
    • dans la carte, place l’unité d’image sélectionnée
  • Clic-droit pour perdre la sélection
  • Cliquer-déplacer pour sélectionner plusieurs unité d’images

Choisir des sets d’images et les rendre disponibles pour la création

  • Cliquer sur Layers
  • Add
  • Choisir l’un des sets d’images (malheureusement, on ne peut pas les voir avant de les charger), par ex. grass_main
  • Cliquer-droit sur le set choisi pour le passer en « Embedded » (« Embarqué », afin que le set soit téléchargé par chaque joueur qui se connectera sur votre serveur pour jouer dans votre carte)
  • Cliquer sur Images pour retourner dans l’édition de votre carte

Calques (« Tile »)

  • ajouter un calque : clic-droit sur Game > add Tile
  • modifier les paramètres d’un calque (clic-droit sur le calque) :
    • « Order » pour mettre l’ordre adéquat
    • « Image » (défini le set d’image actif pour ce calque)
    • « Name » (renommez vos calques pour ne pas vous perdre : « Fond », « arrière-plan », « avant-plan », etc., sinon vous aurez des « Tiles » en pagaille)
    • « Game Tiles », ce paramètre s’applique donc bien à l’ensemble du calque
      • Collision, le calque sera « solide », autrement dit les tees ne pourront pas passer à travers les murs, et ils pourront y planter leur grappin
      • Death, le calque est mortel, toucher toute partie du calque tue
      • Unhookable, le calque est inaccessible aux grappins, on ne peut pas planter le grappin
  • hiérarchie des calques (leur ordre est très important), placer-les dans l’ordre suivant :
    1. Calque de fond
    2. Calque des dessins
    3. Calque des éléments de jeu (Tees, armes, zones mortelles, carrés à grapin, etc.)

Remarque : je ne sais pas à quoi servent les calques « Quads », je les supprime donc. Cliquer sur le calque « #0 », et « Delete goup ».

Créer la carte

Nous allons faire une création basique de carte, vous pourrez complexifier les choses lorsque vous aurez pris en main l’outil !

Admettons que vous avez :

  1. créé un calque « Fond » avec le set d’images « grass_main »
  2. créé un calque « AvantPlan » (paramétré en mode Collision)
  3. ordonné vos calques dans le bon ordre Fond/AvantPlan/Game
Le calque « Fond »
  1. placez-vous sur ce calque en cliquant dessus
  2. appuyer sur espace et maintenir espace appuyé
  3. sélectionner un bout d’image (pour faire le fond de la carte)
  4. lâcher espace
  5. placer votre bout d’image dans la carte
  6. Recommencer en sélectionnant des bouts de plus en plus grand, et remplissant l’intégralité de l’espace de fond

Remarque : si le calque de fond n’est pas intégralement rempli, la carte sera buguée.

Le calque « AvantPlan »

L’objectif est de créer une bordure, des murs, des plateaux, des couloirs, etc. Soyez créatif, et pensez aussi à la vue d’ensemble de la carte.

Cliquer sur « Border », pour créer une bordure tout autour de notre carte.

Le calque « Game »

Ce calque est différent des autres. Il permet :

  • de placer les drapeaux, les armes, les boucliers, les cœurs, et les tees
  • de placer des carrés blancs (équivalent mode Collision d’un calque), des carrés anti-grappin (mode Unhookable d’un calque), des carrés mortels (mode Death d’un calque)

Les carrés blancs sont essentiels au jeu. C’est sur ceux-ci que les tees marchent ou accrochent leurs grappins. Ils servent donc à « durcir » certaines parties de la carte. On peut également créer des murs invisible… 😉

Un mur sans carrés blancs ne pourra pas être agrippé au grappin. Les tees passeront à travers un plateau sans carrés blancs.

Utiliser « Border » pour créer une bordure de carrés blancs. Si vous avez paramétré votre calque AvantPlan en « Collision » et qu’il possède bien une bordure, votre carte a déjà une bordure « solide ».

Astuces

Remplir une grande portion d’image : remplir 4 unités (placées en carré ou en barre), puis sélectionner ce bout de 4 unités, remplir à nouveau avec cette portion, sélectionner à nouveau une portion plus vaste, etc. Vous irez beaucoup plus vite que si vous remplissez petit carré par petit carré !

Utiliser les paramétrages automatiques des calques (clic-droit sur le calque), ils sont bien utiles ! Collision, Death, Unhookable, mais aussi AutoMap qui ajoute automatiquement un joli bord à vos dessins.

Sauvegarder la carte

Cliquer sur « File », puis « Save », utilisez des noms reconnaissables et une numérotation (en prévision de faire plusieurs cartes).

Les cartes sont sauvegardées :

  • sous windows, soit dans le dossier caché C:\Users\votre_user\AppData\Roaming\Teeworlds\maps\, soit dans le dossier /teeworlds/maps/ du dossier où vous avez décompressé l’archive du jeu
  • sous linux, dans le dossier caché /home/votre_user/.teeworlds/maps/

Utilisation de votre carte lors du lancement de votre serveur

Modifier le fichier de configuration svr.cfg pour y renseigner le nom de votre carte pour le paramètre sv_map. Si vous avez plusieurs cartes, renseigner le paramètre sv_maprotation.

Exemple

sv_map macarte1
sv_maprotation macarte1 macarte2 macarte3

[^1]: Le site officiel www.teeworlds.com et son article wikipedia