Guide du Chat
Transcription
Guide du Chat
LES NOUVELLES SALLES DE CHAT GUIDE UTILISATEUR *** Guide du Chat *** *** Guide du Bot *** *** Guide des Salles *** http://chat-webca m.ifrance.co m http://chat-webca m.ifrance.co m/en.html http://chat-webca m.ifrance.co m/de.html http://taverne.be.fr.free.fr/aide/ *** Chat - Guide Utilisateur *** Chat Webcam gratuit : Télécharge m ent 1. Liste des Salles de Chat Au lancement de Chat, vous arrivez à l'écran ci-dessous qui permet de choisir une salle. Cliquez sur une ligne de la liste pour entrer dans la salle correspondante. - le bouton ont été créées. - les boutons Français. (Refresh) permet d'actualiser la liste pour voir si des nouvelles salles et permettent de voir s'il existe des salles dans d'autres langues que le - Le symbole indique une salle à webcam obligatoire : votre webcam s'y allumera automatiquement. Dans les autres salles la webcam n'est pas obligatoire, vous pouvez l'allumer quand vous avez envie. PRO B L E M E : LA LIST E DE S SA LL E RE S T E VID E Si la liste des salles reste vide : 1) si vous chattez sur un PC relié indirectement à internet via un autre PC qui doit rester allumé (connection partagée ou proxy server), il faut aller chatter sur le PC directement branché sur le modem ADSL ! 2) les logiciels de protection Norton et ZoneAlarm peuvent poser problème : ils doivent être configurés pour autoriser le programme de chat à accéder à internet. 3) le parefeu Windows, s'il est désactivé, n'avertit plus l'utilisateur quand il bloque certains logiciels, nous vous conseillons de le laisser activé. 2. La Salle de Chat Parler au microphone (cliquez et gardez appuyé vous avez fini de parler ). , parlez, puis relachez le bouton quand ne plus entendre les autres participants parler au microphone. ne plus entendre les bruitages (entrée en salle, sortie de tasse, exclusion, pv, déconnection) allumer sa webcam ou regarder la webcam d'un autre participant (il faut cliquer sur un pseudo de la liste de droite avant). modifier son profil ou afficher le profil d'un autre utilisateur (il faut d'abord sélectionner un pseudo dans la liste de droite). téléphone (demander à parler en pv = privé, ou bien accepter de parler en privé) - voir explications au chapitre ci-dessous. bloquer les demandes de pv d'une personne. ignorer quelqu'un (il faut d'abord sélectionner un pseudo dans la liste de droite). toc (Or ou Brun); prendre/déposer le toc, ou bien exclure un utilisateur (il faut d'abord sélectionner un pseudo). écrire une ligne de texte sans ':' entre le pseudo et le texte. Exemple: "Erik pense que c'est bien", (cliquer sur l'icone à la place de la touche Entrée). aller/revenir de tasse. modifier le caractère et la couleur de l'écriture. réglages de la webcam (choix d'une source vidéo, luminosité, contraste, netteté, couleurs). démarrer Internet Explorer pour surfer sur le groupe associé à la salle de chat. afficher la liste des émoticons. sortir - revenir à la liste des salles. suivre plus facilement un participant dans une grande salle - il faut d'abord sélectionner un pseudo dans la liste de droite puis cliquer sur cet icône : un chaque ligne écrite par le participant. apparait alors à gauche de donner un toc provisoire de 24h à un participant, ou le retirer. Touches du clavier: F1 = diminuer la taille du font d'écriture. F2 = augmenter la taille du font d'écriture. F3 = changer les dimensions de la fenêtre (appuyez plusieurs fois). Clics Rapides: Profil : pour voir le profil d'un participant, cliquez sur l'icone liste. à gauche de son pseudo dans la Webcam : pour regarder la webcam d'un autre participant, cliquez sur l'icone pseudo. à côté de son 3. Profil Utilisateur Pour changer votre profil utilisateur, cliquez sur pour remplir votre profil utilisateur et mettre une photo. Votre profil pourra être consulté par les participants qui sont dans la même salle de chat que vous. Dans la zone 'Pseudo-Icon' on peut spécifier le nom d'une icône qui sera utilisée pour vous représenter (voir chapitre 11 : ajouter ses propres icônes). Le profil permet aussi de gérer une liste d'amis avec lesquels vous souhaitez rester en contact. Quand vous consultez le profil d'un autre chatteur, un bouton "Ajouter un Ami" permet de l'ajouter dans la liste de vos amis. Ce bouton n'apparait pas si ce chatteur est déjà dans votre liste. Les amis que vous ajoutez ne sont pas prévenus automatiquement que vous les avez ajoutés sur votre liste. Ils ne seront dérangés par aucune demande d'ajout. C'est à vous de leur demander en salle de vous ajouter aussi, sinon rien ne se passe ... Si votre ami ouvre votre profil et vous ajoute aussi, il peut alors vous appeler à tout moment par fenêtre privée tant que vous êtes dans n'importe quelle salle sur le chat. Quand vous avez ajouté au moins un ami, un bouton "Mes Amis" apparait sur votre profil et vous permet de gérer votre liste : Un ami que vous venez d'ajouter apparait en DEMANDE. Il n'est cependant pas prévenu automatiquement que vous l'avez ajouté : c'est vous qui devez lui demander en salle de regarder votre profil et de vous ajouter aussi comme ami, son état passe alors à AMI. Si plus tard votre ami vous efface de sa liste, l'état repassera à DEMANDE. Vous et vos amis peuvent être dans 3 états de connection : : connecté, en train de chatter : connecté, mais absent ou en tasse : non-connecté Le bouton "Appeler" permet d'ouvrir une fenêtre privée pour parler à votre ami. Le bouton "Bloquer" permet d'empêcher un ami de vous appeler, vous lui apparaissez alors comme non-connecté. Le bouton "Groupe" permet de créer des catégories. 4. Liste des émoticône s Dans la salle de chat, cliquez sur l'icône pour voir la liste des émoticônes. Si vous ne voyez pas tous les émoticônes sur l'écran, augmentez la résolution d'écran de windows (clic droit sur le bureau, propriétés, paramètres, résolution de l'écran : 1024x768 ou plus). Pour ceux ou celles qui n'arrivent jamais à retenir les abbréviations des émoticônes, on peut cliquer directement sur les émoticônes pour les afficher. Voir l'image ci-dessous pour un exemple : 5. La Webcam note: j'ai caché les photos des personnes car je n'ai pas demandé leur autorisation pour les montrer ici. Pour allumer votre webcam, ne sélectez aucun pseudo de la liste et cliquez sur le bouton en bas. Votre image webcam apparait alors à gauche en haut et n'importe quel participant en salle peut alors vous voir. Cliquez sur l'icône pour effectuer les réglages de votre webcam : choisir une source vidéo, régler luminosité, constraste, netteté et couleurs. Le symbole affiché à gauche d'un pseudo indique qu'un participant a branché sa webcam. Pour voir la webcam d'un autre participant, cliquez sur l'icône à côté de son pseudo; son image apparait alors en haut de l'écran. Le compteur sous chaque image indique le nombre de participants (à part vous vous-même) qui regardez cette image. On peut zoomer(2X) sur une image webcam en cliquant dessus, mais il faut pour cela avoir suffisamment de place sur l'écran. S'il y a trop peu de place sur l'écran, vous pouvez agrandir la fenêtre. Vous pouvez aussi augmenter la résolution d'écran de windows (clic droit sur le bureau, propriétés, paramètres, résolution de l'écran : 1024x768 ou plus). Pour empêcher votre webcam de s'allumer automatiquement quand vous entrez dans une salle à webcam obligatoire, ajoutez dans chat.ini : # chat.ini [cam] start = manual cliquer) ; automatic (s'allume tout seul) ou manual (faut Pour utiliser une webcam wifi qui ne passe pas par Windows, il faut rajouter la source dans chat.ini comme dans cet exemple : # chat.ini [cam] source = http://192.168.1.13:8080/image.jpg Si vous êtes animateur, vous allez voir un point d'interrogation sur l'icône cam des chatteurs qui entrent en salle sans avoir de toc. Ce point d'interrogation disparait lorsqu'au moins un animateur a cliqué sur la cam du chatteur pour visionner sa cam. Cela permet aux animateurs de se répartir plus facilement le travail de vérification des webcams de ceux qui entrent en salle. 6. Parler en Privé Les PVs "sauvages" ne sont pas possibles sur ce chat : chaque PV doit d'abord être accepté par le destinataire. L'exemple ci-dessous montre comment faire un pv : Samuro (à gauche) veut parler à Isabelle (à droite) en Privé : 1. Samuro clique sur le pseudo d'Isabelle. 2. Samuro clique sur le téléphone en bas. 3. Un téléphone jaune apparait à côté du nom d'Isabelle. 4. Isabelle entend une sonnerie et remarque un téléphone vert avec le mot "DRING" à côté du pseudo de Samuro. 5. Si elle désire répondre, elle clique sur le pseudo de Samuro, puis sur le téléphone jaune en bas. Un écran de conversation privé apparait alors. 6. Si elle ne désire pas répondre et souhaite bloquer les appels de Samuro, elle clique sur le pseudo de Samuro puis sur le téléphone vert barré en bas. L'icône PV n'est pas présente dans les salles Ados. 7. Bruitage Un bruitage est prévu pour les évènements suivants : - arrivée en salle - sortie de salle - sortie de tasse - appel en pv - exclusion par toc - déconnection réseau - réveil : après une inactivité de 3 minutes en salle, si un nouveau participant arrive, ou bien si un participant parle ou sort de tasse, alors un "toc-toc-toc" sonore sera entendu par les autres participants. Cliquez sur pour ne plus entendre le bruitage. 8. Le Microphone Pour parler au microphone à toute la salle, appuyez et gardez appuyé , parlez, puis relachez le bouton quand vous avez fini. Si vous avez des problèmes de microphone, les conseils suivants peuvent vous aider: 1) si vous n'entendez rien, n'oubliez pas de décocher l'icône . 2) si vous n'entendez toujours rien, pour régler le micro dans windows, cliquez ici : micro 3) pour faire un bon réglage de qualité, rentrez deux fois en salle de chat en même temps : vous pourrez ainsi vous entendre et adapter vos réglages. 4) sur Windows 95/98, un seul programme peut accéder au microphone et au haut-parleur en même temps. Fermez donc tous les programmes qui utilisent du son, fermez le chat et réouvrez-le. On peut bloquer la touche micro en cliquant dessus puis en glissant la souris vers le haut; cela permet de passer de la musique en continu, si la vitesse de la connection le permet. Cependant, pour éviter les blocages accidentel de la touche micro, elle se redébloque automatiquement après 5 minutes, sauf si vous avez mis dans chat.ini l'option : [micro] unblock = no Le propriétaire d'une salle peut empêcher l'apparition du message 'xx parle au micro' pour les tocs OR en ajoutant l'option suivante dans chatserv.ini : [settings] radio = yes En salle 3D, le son micro n'est pas entendu si les chatteurs sont éloignés de plus de 5000 points. Cette valeur peut être changée dans chatserv.ini : [3D] distance-micro = 5000 Pour faire disparaitre les icône micro et haut-parleur, le propriétaire d'une salle peut mettre dans chatserv.ini : [settings] micro = NO Pour que les chatteurs entrent en salle avec le haut-parleur ouvert, le propriétaire d'une salle peut mettre dans chatserv.ini : [settings] speaker = ON notes: 1) les préférences de l'utilisateur ont tout de même priorité; 2) le haut-parleur des bots n'est pas modifié. 9. Fichier de Macros Chaque utilisateur peut créer un fichier de macros servant à afficher des lignes de texte préparées à l'avance. Par exemple: vous tapez : &va eva le texte suivant s'affiche : vaaa eva, va chercher bonheur Pour arriver à ce résultat, vous devez créer un fichier MACROS.TXT qui doit être placé dans le même répertoire que CHAT.EXE, c'est-à-dire dans C:\CHAT.XXX\ (où XXX est votre nom de pseudo marqué sur l'icône de chat sur le bureau). Voici un exemple d'une ligne du contenu de ce fichier : &va : vaaa %1, va chercher \ 001\255\000\000\002\009\000\000bonheur(f):p Explications: &va mot clé pour démarrer la macro (doit commencer par '&' et être suivi de lettres ou chiffres) : deux points (ceci est un séparateur) %1 paramètre de la macro qui sera remplacé quand vous tapez votre texte; jusqu'à 9 paramètres (%1 à %9) sont acceptés. changement de couleur du texte; doit commencer par \001 suivi de 3 valeurs pour les \ quantités de rouge, vert et bleu de la couleur choisie (chaque valeur doit être comprise 001\255\000\000 entre \000 et \255). \ changement de font du texte; doit commencer par \002 suivi d'une valeur entre \000 et \ 002\009\000\000 014 pour le numéro du font, suivi de \000\000. Vous pouvez créer n'importe quelle couleur; en voici quelques-unes avec leur codes : \001\000\000\000 noir \001\255\000\000 rouge \001\192\000\000 rouge carmin \001\255\255\000 jaune \001\255\000\255 violet \001\255\128\000 orange \001\000\128\128 vert foncé \001\000\200\000 vert clair \001\000\000\255 bleu foncé \001\000\210\255 bleu clair Voici la liste des fonts avec leur code : \002\000\000\000 Tahoma \002\001\000\000 Times New Roman \002\002\000\000 Arial \002\003\000\000 Arial Black \002\004\000\000 Comic Sans MS \002\005\000\000 Courier New \002\006\000\000 Franklin Gothic Medium \002\007\000\000 Georgia \002\008\000\000 Impact \002\009\000\000 Lucida Console \002\010\000\000 Microsoft Sans Serif \002\011\000\000 Palantino Linotype \002\012\000\000 Sylfaen \002\013\000\000 Trebuchet MS \002\014\000\000 Verdana \002\015\000\000 Kartika \002\016\000\000 Vrinda Attributs : les attributs s'ajoutent à la fin du code 'FONT': \000\000 normal \001\000 souligné \002\000 italic \003\000 souligné+italic \004\000 gras \005\000 souligné+gras \006\000 italic+gras \007\000 souligné+italic+gras Un fichier exemple de macros : &va &ar :p &fl &em &ps &ex &si &pr &mi &se &ca &pv &f3 &mg :vaaa %1, va chercher \001\255\000\000\002\009\000\000bonheur(f):p :\001\255\000\000j'aime \001\000\255\000bien \001\000\000\255écrire \001\000\255\255en\001\255\255\000 coule :t'offre tout ça (f)(f)(f)(f)(f)(f)(f)(f)(f)(f)(f)(f)(f)(f)(f) :p :pour voir la liste des émoticons, il faut cliquer sur :p à droite :pour changer de pseudo, il faut cliquer sur :a à droite en bas :il faut cliquer sur :x pour voir la liste des salles ;) :$si(8)(88) (8)(88) (8)(88) (8)(88) (8)(88) (8)(88) (8)(88) (8)(88) :pour voir un profil, cliquez sur la tête à gauche du pseudo dans la liste de droite ;) :pour parler au micro, appuyez sur (mic), parlez, puis relachez (mic) ;) :$s1$s2$s2$s2$s2$s2$s2$s2$s2$s2$s2$s2$s2$s2$s2$s2$s2$s3 :pour voir quelqu'un en cam, cliquez sur (ca) à gauche de son pseudo ;) :pour faire un pv, on clique sur un pseudo puis sur le (t) en bas :pour changer la taille de l'écran, appuyez plusieurs fois sur la touche F3 :$ba(pl)(pi)(||)$ce$ca(d)$gl(b)$fr(^)$ha(c)$cr$lo$ch$po $mi &ci :(ci):o -> $if:s$mo -> (te) -> $rp Si ça ne va pas, essayez de renommer votre fichier en "MACROS" au lieu de "MACROS.TXT" (le bloc-notes rajoute l'extension cachée .TXT automatiquement). Comment voir les Fichiers Cachés dans Windows Par défaut, windows cache certains fichiers et certaines extensions de fichier, ce qui peut poser des problèmes pour bien configurer. Pour voir tous les fichiers et extensions : 1) double-cliquez sur l'icone "Poste de Travail" qui se trouve sur votre bureau. 2) cliquez sur le menu "Outils", puis "Options des dossiers". 3) cliquez sur l'onglet "Affichage". 4) descendez un peu dans la liste "Paramètres Avancés" puis sélectez la case "Affichez les fichiers et dossiers cachés". 5) Décocher la case "Masquer les extensions des fichiers dont le type est connu". Attention: on a bien dit Décocher, c'est-à-dire enlever le 'v' ! 6) Fermer toutes les fenêtres avec OK. 10. Personnaliser les sons Les sons (bruitages) suivants existent : nom du son fonction arrivee arrivée en salle quitter sortie normale de salle deconn sortie de salle par déconnection toquer sortie de salle par kick tasse sortie de tasse knock toc-toc-toc - réveil après 3 minutes d'inactivité pv1 demande de pv pv2 sonnerie de pv discon vous avez été déconnecté tag un chatteur suivi avec shoot tir laser (3D) parle Chaque utilisateur peut changer les sons du chat sur son propre PC uniquement. Pour cela, il devra créer (ou modifier s'il existe déjà) un fichier chat.ini dans le même répertoire que CHAT.EXE, c'est-à-dire dans C:\CHAT.XXX\ (où XXX est votre nom de pseudo marqué sur l'icône de chat sur le bureau). Ce fichier devra contenir les lignes suivantes : exemple: # chat.exe ini file [sound] arrivee = ding.wav toquer = fouet.wav L'utilisateur devra se procurer les fichiers audio (avec l'extension .WAV) nécessaires et les placer dans le même répertoire que chat.exe Ces modifications n'ont pas d'effet sur les autres PCs qui gardent les sons standards. 11. Ajouter ses propres icônes Chaque utilisateur peut ajouter ses propres icônes s'il ne trouve pas les émoticones standards assez variées. Pour cela, il lui suffit d'ouvrir Internet Explorer ou Mozilla Firefox, de surfer sur internet pour choisir une image ou icône animée, de cliquer sur l'image avec la souris puis de déplacer la souris sur la fenêtre de chat tout en gardant le bouton de la souris appuyé : un code spécial pour l'image apparait alors sur la ligne de texte du chat. Remarque: cette méthode ne fonctionne pas sur des images qui sont des liens dans Internet Explorer, donc sur des images sur lesquelles on peut cliquer. A côté de cette méthode simple mais volatile car on ne garde pas les images, il est également possible d'ajouter des images et icônes de façon permanente, mais c'est un peu plus compliqué. Voici comment faire : 1. configurez l'explorateur windows en suivant les explications : ICI 2. ouvrez le fichier chat.ini qui se trouve dans le dossier du Chat. Voici comment faire : si votre icône jaune avec laquelle vous démarrez le Chat s'appelle CHAT_SAMU ( ), regardez l'image à droite, vous devez taper le texte c:\chat.samu dans le cadre rouge (1), puis cliquer sur (2), (3) et (4) : voici un exemple de fichier chat.ini quand il est ouvert : # chat.ini [icons] heriss = c:\mes documents\herisson.bmp soleil = soleil_rouge.jpg fille2 = fille125.gif 3. Si vous dessinez vos images à l'aide d'un logiciel (par ex: Paint ou Photoshop) veillez toujours à sauver vos créations originales en format .BMP 24-bits car ce format noncompressé est le seul qui conserve à vos images toute la richesse des 24 millions de couleurs disponibles avec ces programmes. 4. Quand votre image est terminée, vous pouvez en réduire la taille sur le disque en la sauvant dans l'un des formats de compression suivants : • GIF : choisissez ce format si votre création ne contient pas plus de 256 couleurs sachez que si votre image contient beaucoup de couleurs, la conversion en GIF va appauvrir fortement la richesse et luminosité des couleurs de l'image comparez avec l'image BMP originale avant de choisir ce format. • JPG : sachez que si vous sauvez votre image en format JPG, beaucoup de programmes vous permettent de choisir un taux de compression de 0 à 100. Une valeur trop petite peut rendre les images floues tandis qu'une valeur trop grande donne une image très grande sur le disque - sachez toutefois qu'une compression en JPG appauvrit toujours la qualité et la netteté de l'image - comparez avec l'image BMP originale avant de choisir ce format. • BMP : vous pouvez aussi garder l'image originale en BMP pour être sûr de ne rien perdre en qualité, mais à condition que l'image ne dépasse pas 63K sur le disque. • PNG : ce format permet de compresser vos fichiers sans perte de qualité. A conseiller. 5. Copiez vos fichiers d'image (.GIF, .JPG, .BMP ou .PNG) dans le même dossier que chat.ini - à côté du rond rouge (4), pas dessus. 6. Ensuite, pour chaque image, écrivez une ligne dans chat.ini sous la ligne [icons] (regardez l'exemple qui contient déjà 3 lignes). Pour chaque ligne, il faut donner un nom d'exactement 6 lettres à l'icône (ni plus, ni moins de 6 lettres sinon ça n'ira pas !), suivi du signe égal '=', suivi du nom du fichier d'image sur le disque avec son extention(.GIF, .JPG, .BMP ou .PNG). Ensuite il faut fermer la fenêtre du chat.ini en enregistrant les modifications. 7. Quand cela est fait, cliquez sur la fenêtre du chat (là où vous chattez) et appuyez sur la touche F5. Vous allez voir une ligne 'system info: loading chat.ini : ok' qui signifie que le chat a bien rechargé votre nouveau fichier chat.ini 8. Tapez maintenant sur le chat : {heriss} {soleil} {fille2} Vous devriez alors voir vos icônes. Au lieu d'une image, vous pouvez voir l'un des messages d'erreur suivants : signe signification {.ini??} chat.ini ou chatserv.ini non trouvé {icons?} paragraphe [icons] non trouvé dans le fichier .ini {name??} nom de l'icône non trouvée (avant le signe =) {found?} fichier d'image ou de "son" non trouvé (après le signe =) {big???} taille du fichier dépasse 63K {wav???} fichier "son" non autorisé ici {size??} dimensions de l'image dépassent la limite limite {illeg?} valeur icônes utilisés pour les pseudos dimensions max: 168 x 21 pixels icônes utilisés pour le texte dimensions max: 320 x 240 pixels icônes utilisés pour les styles de salle (voir chapitre J. Style) dimensions max: 21 x 21 pixels icônes utilisés pour les titres de salle dimensions max: 900 x 21 pixels format de fichier illégal Corrigez alors le problème et ré-essayez (n'oubliez pas d'appuyez sur la touche F5). Il est recommandé, afin de ne pas "ramer" en salle, de choisir une petite image, donc de bien la découper avec MsPaint aux dimensions minimales. Un fond transparent (format GIF) est conseillé. Voici encore quelques cas particuliers : 1. A la place d'un fichier d'image, il est également possible de placer un fichier audio avec l'extension .WAV, ce qui aura pour effet que le son sera entendu en salle par tous les participants. Une telle icône "son" ne fonctionne pas si placée dans le pseudo, mais fonctionne comme texte ou dans le message d'exclusion. 2. En salle, lorsqu'une image est suivie immédiatement d'un lien url : exemple: {image1}http://www.ici.com alors le lien ne s'affiche pas à l'écran mais lorsqu'on clique sur l'image, l'internet explorer est démarré avec ce lien. 3. Si les émoticons animées vous rendent malade, utilisez l'option suivante dans chat.ini pour les figer : # chat.ini [settings] animated-gifs = no ou bien l'option suivante pour n'autoriser que les images clignottantes, mais pas les pseudos clignottants : # chat.ini [settings] animated-gifs = after 4. 12. Comment changer la couleur de l'écran de démarrage du chat Pour changer la couleur de la page de démarrage du chat (sur votre propre PC uniquement), utilisez l'option : # chat.ini [settings] screen-color = 1CBBF0 ; couleurs écran field-color = FFFFFF ; couleurs des champs room_description_font_color = 808080 ; couleur description des salles Les 2 premières options sont également disponibles dans chatserv.ini pour changer la couleur du serveur de chat. 13. Comment se déplacer dans une salle 3D En salle 3D, on peut se déplacer avec les flèches du clavier : -> avancer, reculer, tourner à gauche et à droite. -> avec control-gauche et control-droite : se déplacer vers la gauche ou vers la droite sans tourner. On peut également se déplacer avec la souris : -> pour tourner, cliquez sur un point de la moitié supérieure de l'écran et glissez la souris vers la gauche ou vers la droite. -> pour se déplacer, cliquer sur un point de la moitié inférieure de l'écran (là où vous voulez aller), et tout en laissant le bouton souris appuyé, faites glissez la souris vers vous. -> avec la roulette de la souris, vous pouvez regarder vers le haut ou vers le bas. -> si vous avez des munitions, tirez avec le bouton droit de la souris. ==> *** Guide Chat *** <== ==> *** Guide Bot *** <== ==> *** Guide Salle s *** <== *** Chat Bot - Guide du Bot *** 1. Comment Installer un Bot 1. téléchargez un bot en cliquant sur ce lien puis sur 'Ouvrir'. 2) démarrez-le en cliquant sur l'icône "CHAT BOT" qui se trouve sur votre bureau. 3) Pour changer le texte du bot, editez avec notepad le fichier de configuration du bot qui se trouve sur votre disque dur dans C:\Chat.Bot\Bot.txt Le fichier BOT.TXT # bot.txt ##################################################################################### [conversation] bot = /kick %P $es pas de bots dans cette salle [15 min] yoyo = /kick la prochaine fois, tu resteras plus de 15 secs en salle $gr yoyo_sec = 15 proprio = tention, un proprio(h) entre en salle ;;) anim = tention, un animateur entre en salle ;;) change = tiens tiens %P, d'après moi tu as changé de pseudo et tu étais %Q :o:o join = Bienvenue en salle, %P :d Tu as %A ans :) cam = (*)(*)(*) %P (*)(*)(*) > < 20 sec pour allumer ta (ca) cam_sec = 20 cam_kick = /kick A bientôt (ro) quitte = Au revoir %P, à bientôt ;;) discon = :s oups, %P a glissé ! [conversation.f] anim = tention, une animatrice entre en salle ;;) quitte = Au revoir %P, à bientôt (ro) discon = :s oups, %P a glissée ! [tasse] partir = tiens, %P s'en va :( revenir = bon retour %P :p [toc] deposer = ouf, on respire :p brown = attention, ça va toquer :s or = tention, vla l'animateur :d :d kick = aie aie aie, %P s'est fait kicker :s :s :s !kick = /kick PAFFFFF ! $pa ; commande !kick !ban = /kick $he[24h] ; commande !ban !tasse = /kick c'est pas un parking ici!$gr ; commande !tasse [toc.f] or = tention, vla l'animatrice (f)(f) [webcam] allume = Tiens, %P allume sa webcam :p eteint = ben pourquoi tu éteints ta webcam, %P ?? :( [micro] parle = tiens, %P nous parle (h) [micro.f] parle = tiens, %P nous parle de sa voix suave :p ##################################################################################### [mots] glace = j'aime bien la glace moi $gc $mi mèrde = mérde ?? ;;c;;c;;c :s %P :@ pas de gros mots en salle !! cochon = (coc) :| %P :@ on reste poli en salle ! cul = $cu :| %P :@ pas de gros mots en salle ! putain = %P :@ on reste poli en salle ! enculé = %P :@ on reste poli en salle ! salope = /kick %P :@ on reste poli en salle ! con*ar* = %P :@ on reste poli en salle ! chier = ;;c;;c;;c %P :@:@ on reste poli en salle ! tg = /kick %P :@ on reste poli en salle ! [2min] [mots.f] fleur = %P aime les (f)(f)(f) ##################################################################################### [!coeur] 1=(l)(l)(l)(l)(l)(l)(l)(l)(l)(l) 2=(l)(l)(l):$:$:$(l)(l)(l)(l) 3=(l)(l):$(l)(l):$(l)(l)(l)(l) 4=(l)(l)(l)(l)(l):$(l)(l)(l)(l) 5=(l)(l):$(l)(l):$(l)(l)(l)(l) 6=(l)(l)(l):$:$(l)(l)(l)(l)(l) 7=(l)(l)(l):$:$(l)(l)(l)(l)(l) 8=(l)(l)(l):$(l)(l)(l)(l)(l)(l) 9=(l)(l)(l)(l)(l)(l)(l)(l)(l)(l) 10=(l)(l)(l)(l)(l)(l)(l)(l)(l)(l) 11=(l)(l)(l)(l)(l)(l)(l)(l)(l)(l) 12=(l)(l)(l)(l)(l)(l)(l)(l)(l)(l) 13=(l)(l)(l)(l)(l)(l)(l)(l)(l)(l) [!chien] 1=(&)(&)(&)(&)(&) 2=(&)(&)(&)(&)(&) 3=(&)(&)(&)(&)(&) 4=(&)(&)(&)(&)(&) 5=(&)(&)(&)(&)(&) ; rajouter d'autres figures ici (coeur, chien, ...) ... ##################################################################################### ; le jeu mine [mine] start = Bienvenue au jeu Mine :) cliquez sur une case puis sur la touche Enter :p kick = /kickBOUM!$um ##################################################################################### [action_verite] start = *-)*-) Voyons voyons, je vais prendre qui *-), $nr %P ACTION...ou VERITE $ri?? kick = /kick réveille-toi, on joue là, faut répondre $gr kick_sec = 40 ; secondes avant le kick [action_verite.m] action = %P $br (*) $h4 verite = %P $br (*) :m [action_verite.f] action = %P $br (*) $rb verite = %P $br (*) :f [action_verite.c] action = %P $br (*) $h4 verite = %P $br (*) :m ##################################################################################### ; actions communes pour Hommes, Femmes et Couples [action] 1=envoie une photo de toi à quelqu'un de la salle 2=raconte ton dernier calin 3=chante un couplet de chanson 4=fait un dessin sur un papier et montre le en cam ##################################################################################### ; actions pour Homme seulement [action.m] 1=demande à un participant féminin de te faire un compliment 2=pince-toi le nez ##################################################################################### ; actions pour Femme seulement [action.f] 1=demande à un participant masculin de te faire un compliment 2=montre tes beaux yeux en cam ##################################################################################### ; actions pour Couple seulement [action.c] 1=demande à ton homme de t'embrasser ##################################################################################### ; verites communes pour M, F et C [verite] 1=Vous rencontrez un groupe de personnes que vous connaissez depuis peu. Quelle est votre réaction ? Vous jouez le profil de la coquetterie ? 2=Vous rencontrez un groupe de personnes que vous connaissez depuis peu. Quelle est votre réaction ? Vous redressez la tête pour montrer que vous êtes indépendant? 3=Vous rencontrez un groupe de personnes que vous connaissez depuis peu. Quelle est votre réaction ? Vous engagez simplement la conversation? 4=Vous rencontrez un groupe de personnes que vous connaissez depuis peu. Quelle est votre réaction ? Vous souriez et restez d'un beau «naturel»$u3 ##################################################################################### ; verites pour M seulement [verite.m] 1=(*) Avoir un accident avec la voiture de votre copine, fait ou à faire ? 2=(*) Décrit la femme idéale ##################################################################################### ; verites pour F seulement [verite.f] 1=Dans une boutique de lingerie, vous achetez pour vous ou pour votre Ami ? 1/ Un déshabillé en dentelle noir 2/ Un ensemble en soie mauve 3/ Un $cv en satin vert 4/ Une robe de chambre confortable 2=Décrit l'homme idéal ##################################################################################### ; verites pour Couples seulement [verite.c] ##################################################################################### A. Syntaxe du fichier Dans le fichier, les symboles # et ; doivent être doublés, c'est-à-dire ## et ;; car sinon ils servent à ajouter un commentaire dans le fichier. B. Genre M, F ou C Il est possible de spécifier des phrases différentes suivant le genre du pseudo (Masculin, Féminin, Couple) qui provoque l'action, en spécifiant un suffixe M, F ou C à la fin du nom du paragraphe, par exemple [micro.F] ci-dessus. Sans le suffixe, la phrase s'applique aux 3 genres. C. Touche F5 pour recharger le fichier du bot Après avoir changé le fichier bot.txt avec notepad, cliquez sur la fenêtre du bot puis appuyez sur la touche F5 pour recharger le fichier, cela vous évite de devoir arrêter et redémarrer le bot. D. Les réponses du bot Dans les réponses du bot, on remarquera l'utilisation de 3 codes spéciaux : %p : est remplacé par le pseudo de celui qui provoque l'action. %P : est remplacé par l'émoticon et le pseudo de celui qui provoque l'action. %A : est remplacé par l'âge de celui qui provoque l'action. En outre, le mot /kick devant une réponse provoque un kick du participant qui a déclenché l'action. Les macros peuvent aussi être utilisées dans les réponses du bot, voir le chapitre macros du chat. E. Paragraphe [Mots] - les mots sur lesquels le bot réagit Les mots sur lequels le bot réagit peuvent contenir 3 caractères spéciaux : ? remplace 1 caractère non blanc * remplace 0 ou plusieurs caractères non blancs % remplace 0 ou plusieurs caractères blancs ou non blancs Pour illustrer cela, voici quelques exemples: [mots] mdr* = vous avez tapé mdr suivi de 0 ou plusieurs caractères, par ex: mdr, mdrrr, mdrrrrrire vit? = vous avez dit vite ou vita ou vito ... bon* jour* = vous avez dit bonne journée ! vous%mang* = votre phrase commence par "vous" et se termine avec "manger" ! alta vista = vous avez dit "alta vista" :d F. Le langage 'Script' : ajoutez de l'intelligence à votre bot Si vous voulez faire un bot plus compliqué (créer vos propres jeux par exemple un quizz spécial avec vos propres règles ou un jeu de devinettes) et que la programmation en script ne vous fait pas peur : New Chatrooms Programmer le bot à l'aide d'un script Le langage 'script' est disponible pour programmer le bot; pour ce faire, il faut écrire et placer un fichier SCRIPT.TXT tel que celui ci-dessous dans le répertoire script du bot. note : si vous modifiez le script, appuyez sur la touche F5 pour le recharger. // Voici un script simple qui dit bonjour aux arrivants en salle proc event (session_key, userid$, sex$, has_photo, age, is_away, admin, cam_on, is_bot, toc_capab, signature$, action, is_myself, line$) { if (action == 128) // l'action 128 indique une arrivée en salle { print ("Bienvenue en salle " + userid$ + " :p"); // la commande print permet d'afficher une ligne sur le chat } } Notes : 1 - si vous modifiez le script, appuyez sur la touche F5 pour le recharger. 2 - vous pouvez placer plusieurs fichiers se terminant par "SCRIPT.TXT" dans le répertoire script du bot (par ex: SCRAB-SCRIPT.TXT, ROBOT-SCRIPT.TXT), ils seront alors exécutés par ordre alphabétique. Sur cet exemple, on voit une procédure "event" qui est exécutée chaque fois qu'un évènement se passe en salle. Cette procédure "event" reçoit les informations suivantes concernant le chatteur concerné par l'évènement : session_ke : numéro attribué lors de l'entrée en salle d'un chatteur et qui accompagne tous ses y évènements jusqu'à sa sortie de salle; le session_key est notamment utilisé pour désigner le chatteur à kicker. userid$ : sex$ : has_photo age : is_away : admin : cam_on : is_bot : toc_capab signature$ action is_myself line$ : : : : : : nom du chatteur genre du chatteur ("M", "F" ou "C") indique s'il a une photo dans le profil (0=non, 1=oui) âge du chatteur indique s'il est en tasse (0=non, 1=oui) indique s'il a pris son toc actuellement (0=pas de toc, 1=brun, 2=or) indique s'il a sa cam allumée (0=non, 1=oui et cam vérifiée par un anim ) indique si c'est un bot (0=non, 1=oui) indique s'il est capable de prendre son toc (0=pas de toc, 1=brun, 2=or) signature du chatteur, exemple "1234567890ABCDEF" type d'évènement, voir ci-dessous indique si le chatteur est ce bot (donc moi-même) (0=non, 1=oui) contient la ligne de texte écrite par le chatteur actions possibles Voici les évènements qui existent, avec leur numéro d'action : action évènement 0 le chatteur écrit une ligne de texte normale 1 le chatteur écrit une ligne de texte avec la bulle 2 le chatteur va ou reviens de tasse 16 le chatteur prend ou dépose le toc 127 le chatteur déjà en salle avant l'arrivée en salle du bot 128 un nouveau chatteur entre en salle 129 le chatteur quitte la salle normalement 130 le chatteur est déconnecté 200 le chatteur fait un PV au bot 204 le PV du chatteur a été bloqué avec le téléphone barré (line$ contient le pseudo du bloqueur) 240 lun animateur donne un toc provisoire (line$ contient la session_key en 10 chiffres suivi du userid du receveur) 241 idem que 240 mais pour enlever le toc 256 le chatteur est kické hors de la salle 300 un chatteur a cliqué sur une zone de texte - voir chr$(3,a,b,c) ci-dessous 400 un chatteur a écrit un message dans le groupe (avec numéro de panneau de message (9 chiffres), numéro du message (9 chiffres), et sujet du message dans line$) 512 le chatteur parle au micro 550 le chatteur allume ou éteint sa webcam 601 à 609 912 le chatteur a cliqué sur un bouton du menu du chat (voir commandes pour créer un bouton) 915 le chatteur a cliqué sur un objet 3D cliquable (line$ contient le numéro de l'objet 3D) le chatteur a cliqué sur un actor 3D (line$ contient le session_key de l'actor) EVENEMENTS #define ACTION_NORMAL_TEXT 0 #define ACTION_TEXT_WITHOUT_COLON 1 /* don't display " : " in text */ #define ACTION_AWAY 2 /* -> aller ou revenir de tasse */ #define ACTION_USER_TAKES_DROPS_TO C 16 /* take or drop toc */ #define 127 /* used by script bot for chatters already in room */ ACTION_USER_ALREADY_IN_ROO M #define ACTION_USER_JOINS_ROOM 128 #define ACTION_USER_LEAVES_ROOM 129 /* leave room normally, or be teleported */ #define ACTION_USER_DISCONNECTED 130 #define ACTION_ASK_PV 200 /* used by bot internally */ #define ACTION_PV_REFUSED 204 /* pv blocked (user=blocked-user, text=blocker) */ #define ACTION_GIVE_TOC 240 /* admin gives toc (line contains 10-digit-session_key + pseudo of receiver) */ #define ACTION_REMOVE_TOC 241 /* admin removes toc (line contains 10-digit-session_key + pseudo of receiver) */ #define ACTION_KICK_USER 256 #define ACTION_CLICK_TEXT 300 /* click on chat text - code 0x03 + 3 bytes as text */ #define ACTION_GROUP_NEW_MESSAGE 400 /* user posted new message on group */ #define ACTION_VOICE 512 /* received when secondary sends BOC voice block */ #define ACTION_WEBCAM_ON_OFF 550 /* user enables/disables webcam */ #define ACTION_MENU_BUTTON_1 601 /* user-defined menu buttons 601 to 609 */ #define ACTION_MENU_BUTTON_2 602 #define ACTION_MENU_BUTTON_3 603 #define ACTION_MENU_BUTTON_4 604 #define ACTION_MENU_BUTTON_5 605 #define ACTION_MENU_BUTTON_6 606 #define ACTION_MENU_BUTTON_7 607 #define ACTION_MENU_BUTTON_8 608 #define ACTION_MENU_BUTTON_9 609 #define ACTION_CLICK_ACTOR 912 /* user clicks on actor (message contains actor's session_key) */ #define ACTION_CLICK_3D_OBJECT 915 /* user clicks 3D object (message contains object_nr) */ ligne de texte line$ La ligne de texte line$ contient des caractères imprimables (codes ascii 32 à 255), mais elle contient aussi des séquences spéciales de 4 ou 8 caractères qui commencent par un caractère entre chr$(0) et chr$(9), notamment : chr$(0,n%256,n/256,0) emoticon N : chr$(1,rouge,vert,bleu) chr$(2,font,style,0) chr$(3,a,b,c) chr$(4,a,b,c) chr$(5,a,b,c) chr$(6,a,b,c,d,e,f,g) chr$(7,a,b,c,d,e,f,g) chr$(8,a,b,c,d,e,f,g) chr$(9,a,b,c,d,e,f,g) couleur (rouge vert et bleu sont des valeurs entre 0 et : 255) : changement de police ou style (voir chapitre macros) marqueur de zone texte - chr$(3,0,0,0) indique fin de : zone : : : : : : (non utilisé pour l'instant) (non utilisé pour l'instant) image jpeg/gif/bmp son wav (non utilisé pour l'instant) (non utilisé pour l'instant) Par exemple, si on écrit "Hello" sur le chat, userid$ et line$ peuvent contenir les caractères suivants : userid$=[0,11,1,0,6,16,156,56,39,33,252,127,65,0,4,0,0] line$=[0,50,0,0,0,11,1,0,6,16,156,56,39,33,252,127,65,0,4,0,0,32,58,32,1,12,94,254,2,2,0,0,72,101,108,1 08,111] Voici le détail de line$ : 0 50 0 0 : emoticon 50 ":M" 0 11 1 0 : emoticon 267 (11 + 1*256) "$nr" 6 16 156 56 39 33 252 127 : image (bannière du chatteur) 65 : caractère A majuscule 0 4 0 0 : emoticon 4 ";)" 32 : un espace 58 : caractère ':' entre le pseudo et la ligne de texte 32 : un espace 1 12 94 254 : un code couleur (rouge=12,vert=94,bleu=254) 2 2 0 0 : un code font (2=Arial) 72 101 108 108 111 : "Hello" en ascii De façon générale, quand action==0, line$ a toujours la structure suivante : - un emoticon (ou une image si le propriétaire de salle a dessiné ses propres icônes) - le contenu de userid$, donc le pseudo du chatteur, qui peut être composé de plein de séquences textes, émoticons ou images, - la séquence : espace, caractère ':', espace - puis la ligne de texte tapée, qui peut inclure n'importe quelle séquence, y compris des changements de font ou de couleur. Le script de test suivant peut vous permettre de faire des essais pour mieux comprendre le contenu de line$ : proc event (session_key, userid$, sex$, has_photo, age, is_away, admin, cam_on, is_bot, toc_capab, signature$, action, is_myself, line$) { var i, s$, u$; if (!is_myself) { for (i=1; i<=len(line$); i++) { if (i > 1) s$ = s$ + ","; s$ = s$ + str$(asc(line$,i)); } for (i=1; i<=len(userid$); i++) { if (i > 1) u$ = u$ + ","; u$ = u$ + str$(asc(userid$,i)); } print ("action=" + str$(action) + " userid$=[" + u$ + "] line$=[" + s$ + "]"); } } Eléments du langage script Données Le langage script manipule deux types de données : 1) les nombres entiers : 9 -62 136 0xFFD2 Les valeurs doivent être comprises entre -2147483647 et +2147483647 2) les chaines de caractères : "" "Bonjour" "Oui:p" la première chaine de caractères ci-dessus est une chaine vide. la longueur maximale est de 8192 caractères. Variables Une variable est une case de la mémoire du PC à laquelle on donne un nom; cette case mémoire contient une valeur qui peut changer au fur et à mesure que le programme se déroule. Il existe 2 types de variables : - celles qui contiennent un nombre entier (exemple: age, admin, compteur, i, joueur, cam_on) - celle qui contiennent une chaine de caractère (exemple: fruit$, user$, userid$, line$) Les variables 'chaine de caractère' se terminent toujours par un signe dollar '$'. Avant d'utiliser une variable, il faut la 'déclarer', c'est-à-dire réserver de la place mémoire pour son contenu, à l'aide de la commande 'var'. exemple: var compteur; // va contenir un compteur var s$, t$; // deux variables chaines de caractère var fruit$[3]; // un tableau de 3 chaines de caractère : fruit$[1], fruit$[2] et fruit$[3] Les variables peuvent être déclarées, - soit tout en haut du script. - soit dans une fonction ou procédure, Si elles sont déclarées tout en haut du script, elles gardent leur valeur entre deux évènements; autrement, elles sont effacées à chaque fois. Par défaut, les variables numériques ont la valeur zéro, et les variables chaines de caractère contiennent une chaine vide. Procédures et Fonctions Une procédure est une commande à laquelle on peut donner des paramètres, par exemple 'print' auquel on donne une chaine de caractères "Bonjour !" ce qui donne : print ("Bonjour !"); Une fonction ressemble à une procédure, mais en plus elle calcule un résultat, par exemple 'len' qui calcule la longueur d'une chaine de caractères : longueur = len ("abc"); Les procédures/fonctions standards suivantes existent : commandes du bot print ("Bonjour !"); // le bot envoie une ligne de texte sur le chat away (); // le bot part en tasse ou revenir toc (); // le bot prend ou déposer le toc kick (session_key, "va dodo"); // le bot kicke le chatteur ayant le numéro de session indiqué commandes création bouton de menu Pour créer un bouton dans le menu qui génère une action 601 à 609 quand on clique dessus : create_button (session_key, 601, "{lock01}"); // avec icône create_button (session_key, 602, ":)"); // avec smiley create_button (session_key, 603, "T"); // avec texte L'action 601 à 609 va contenir le session_key du chatteur qui a cliqué en 10 chiffres, suivi du texte tapé sur la ligne du chat. pour supprimer le bouton : delete_button (session_key, 601); commande Téléportation Pour téléporter un chatteur dans une autre salle (le bot doit avoir un toc) : teleport (session_key, x, y, z, dir); // pour changer de coordonnées 3D simplement teleport (session_key, x, y, z, dir, port); // pas besoin d'IP si l'autre serveur est sur le même routeur ou même PC teleport (session_key, x, y, z, dir, port, ip$); calendrier d$ = now$ (); // fonction qui calcule la date du jour // exemple: now$() == "2007/01/17 12:23:12" d = weekday (d$); // renvoie le jour de la semaine (1=lundi, 7=dimanche) correspondant à la date // exemple: weekday("2007/01/17 12:23:12") == 2 d$ = add_date$ (d$,n); // renvoie la date vieillie de n secondes // exemple: add_date$("2007/01/17 12:23:12", 3600) == "2007/01/17 13:23:12" n = nb_days_since_1901 (d$); // renvoie le nombre de jours entre le 1/1/1901 et la date fournie, // ce qui peut servir à calculer le nombre de jours entre deux dates: // nb_days_since_1901 (date2$) - nb_days_since_1901 (date1$) numérique n = random (a,b); // renvoie un nombre aléatoire entre a et b // exemple: random(1,50) == 12 n = abs (n); // renvoie la valeur absolue de n // exemple: abs(-2) == 2 n = sin (angle, M); // calcule le sinus(angle), multiplié par M n = cos (angle, M); // calcule le cosinus(angle), multiplié par M angle = atan2 (Y, X); // calcule l'angle correspondant à l'arc-tangeante de (Y / X) n = sqrt (n, M); // calcule la racine carrée de n, multipliée par M chaîne de caractère n = len(s$); // renvoie la longueur de la chaine s$ // exemple: len("abc") == 3 s$ = dup$(s$,N); // renvoie la chaine s$ dupliquée N fois (avec N >= 0) // exemple: dup$("ab",3) == "ababab" s$ = chr$(N1,N2,N3,..); // renvoie une chaine constituée des caractères ascii N1,N2,.. concaténés // exemple: chr$(65,66,67) == "ABC" c = asc(s$[,N]); // renvoie le numéro ascii du Nième caractère de la chaine s$ (N vaut 1 si omis) // exemple: asc("A") == 65 // exemple: asc("ABC",2) == 66 s$ = str$(N); // renvoie une chaine représentant le nombre N // exemple: str$(23) == "23" n = val(s$); // renvoie le nombre représenté par la chaine s$ (l'inverse de str$) // exemple: val("23") == 23 s$ = left$(s$,N); // renvoie les N caractères de gauche de s$ // exemple: left$("ABCD",2) == "AB" s$ = right$(s$,N); // renvoie les N caractères de droite de s$ // exemple: right$("ABCD",2) == "CD" s$ = mid$(s$,a,N); // renvoie N caractères de s$ commençant au 'a'ième // exemple: mid$("ABCDEF",2,3) == "BCD" i = pos(s1$,s2$); // renvoie la position de la chaine s2$ dans s1$, ou 0 si pas trouvé // exemple: pos("ABCDEF","CD") == 3 // exemple: pos("ABCDEF","X") == 0 entrée/sortie n = count_lines ("quizz.txt"); // renvoie le nombre de lignes du fichier présent dans le répertoire bot // exemple: count_lines ("quizz.txt") == 120 l$ = read_line$ ("quizz.txt", i); // renvoie la ième ligne du fichier // exemple: read_line$ ("quizz.txt", 3) == "Question 3 : comment s'appelle .." i$ = image$("a.jpg"); // renvoie l'image ou le son d'un fichier présent dans le répertoire du bot // exemple: print ("une vache : " + image$("images/vache.jpg")); s = selected_user_session_key(); // renvoie le session_key du chatteur sélectionné dans la liste de droite // de l'écran du bot, ou zéro si aucun chatteur n'est sélectionné. database store (tiroir$, valeur$); // stocke la valeur$ dans le tiroir$ de la database chat.db // exemple: store ("JEU-DEVINE", "1 35 16 32 89 12"); a$ = fetch$ (tiroir$); // renvoie la valeur contenue dans le tiroir$ de la database // exemple: fetch$ ("JEU-DEVINE") == "1 35 16 32 89 12" timer set_timer (n); // appeler la procédure timer() dans n secondes (ou annuler si n==0) Procédures/Functions En plus des procédures et fonctions déjà existantes décrites ci-dessus, on peut en écrire des nouvelles; Voici trois exemples : - une fonction qui renvoie un nombre, // une fonction qui calcule le double de n func double (n) { var resultat; resultat = n * 2; return resultat; } - une fonction qui renvoie une chaine, // une fonction qui renvoie une chaine de N tirets func tiret$ (n) { return dup$("-", n); } - et une procédure : // une procédure qui imprime N tirets proc print_tiret (n) { print (tiret$(n)); } Opérateurs Voici les opérateurs disponibles, par ordre de priorité : Les opérateurs permettent d'effectuer des calculs, par exemple: 2+3*4 Chaque opérateur a une priorité, par exemple * a une priorité supérieureà +, ce qui veut dire que le calcul cidessus est équivalent à : 2 + (3 * 4) et non pas à : (2 + 3) * 4 Si ce dernier calcul est désiré, l'usage de parenthèses est requis. Voici les opérateurs disponibles, par ordre de priorité décroissante : opérateurs numériques NON logique ! * / % & | + - multiplié par divisé par reste de la division bitwise and bitwise or ajouter soustraire <= plus petit que ou égal à >= plus grand que ou égal à == != < > && égal pas égal à plus petit que plus grand que ET logique || OU logique opérateurs chaines concaténer 2 chaines + <= >= == != < > plus petit que ou égal à (ordre lexicographique = dictionnaire) plus grand que ou égal à égal pas égal à plus petit que plus grand que exemple : if ("ab" < "abc") print ("ab vient avant abc dans le dictionnaire"); Instructions assignation L'assignation permet de calculer une valeur (à droite) et de la stocker dans la variable (à gauche). result = a * b + c; // calcule '(a * b) + c' et stocke dans la variable 'result' line$ = "Hello" + userid$; // concatène "Hello" et userid$ et stocke dans line$ fruit$[2] = "pomme"; // stocke la chaine "pomme" dans la case 2 du tableau fruit$ ligne$ = "i contient la valeur " + str$(i); longueur = len(s$) + 1; L'assignation avec incrémentation permet d'ajouter ou de soustraire une valeur à la variable de gauche. i += 72; // ajoute 72 à i j -= (b + c); L'incrémentation simple permet d'ajouter 1 ou de soustraire 1 à une variable: i++; // ajoute 1 à i j--; // soustrait 1 à i l'instruction if L'instruction if permet de n'exécuter un groupe d'instructions que si une condition est remplie. // if avec 1 seule instruction if (i < 10) print ("i trop petit"); // n'exécuter le print que si i est plus petit que 10 // if avec plusieurs instructions // note: des { } sont obligatoires si on a plusieurs instructions if (i < 10) { print ("i trop petit"); print ("recommencez"); } // "if" avec partie "else" if (i < 10) // si i plus petit que 10 { print ("i trop petit"); print ("recommencez"); } else // sinon { print ("i égal ou supérieur à 10 ! oué"); } // "if" avec plusieurs parties en cascade if (i < 10) // si i plus petit que 10 { print ("i trop petit"); print ("recommencez"); } else if (i == 10) // sinon si i égal à 10 { print ("i égal à 10 ! oué"); } else // sinon (i plus grand que 10) { print ("i plus grand que 10 ! oué"); } // if avec expressions complexes if (i < 10 && j == 3 && a$ == "hello") // si i < 10 ET j == 3 ET a$ == "Hello" print ("oui"); if (i < 10 || j == 3 || a$ == "hello") // si i < 10 OU j == 3 OU a$ == "Hello" print ("oui"); // if avec instruction vide if (i < 10) ; // ne rien faire else { print ("oui"); } l'instruction FOR L'instruction FOR permet de répéter l'exécution d'un groupe d'instructions entre { } en augmentant la valeur d'une variable à chaque exécution. exemples : // pour imprimer les nombres de 1 à 5 : for (i=1; i<=5; i++) { print (str$(i)); } imprime : 1 2 3 4 5 // pour imprimer les nombres de 5 à 1 : for (i=5; i>=1; i--) { print (str$(i)); } imprime : 5 4 3 2 1 l'instruction WHILE L'instruction WHILE permet de répéter l'exécution d'un groupe d'instructions tant qu'une certaine condition est vérifiée. // tant que i <= 10, // répéter les instructions while (i <= 10) { print ("Bonjour"); } // parcourir le tableau tab[] // jusqu'à tomber sur une valeur 6 var tab[512]; i = 0; while (i <= 512 && tab[i] != 6) // tant que i <= 512 et que tab[i] pas égal à 6, augmenter i { i++; } break et continue // l'instruction 'break' fait quitter la répétition immédiatement for (i=1; i<=6; i++) { if (i == 3) break; print (str$(i)); } imprime: 1 2 // l'instruction 'continue' fait passer au tour suivant for (i=1; i<=6; i++) { if (i == 3 || i == 5) // si i égale 3 ou 5, passer au i suivant continue; print (str$(i)); } imprime: 1 2 4 6 procédure timer Si vous ajoutez une procédure "timer" dans votre script, celle-ci sera exécutée d'abord une fois lors de votre entrée en salle. Ensuite, à l'aide de la procédure set_timer(N), vous pouvez faire en sorte qu'elle soit exécutée à nouveau après N secondes. Si N == 0, cette nouvelle exécution est annulée. exemple : proc timer () { print ("ce message apparait toutes les 30 secondes"); if (mid$(now$(),12,5) == "12:00") print ("il est 12 heures !"); if (mid$(now$(),12,5) == "13:00") print ("il est 13 heures !"); set_timer (30); // rappeler timer() dans 30 secondes } Affichage de l'icône CAM à côté du nom de la salle L'icône CAM s'affiche automatiquement à gauche du nom de la salle lorsqu'un bot est présent en salle et configuré au moyen de bot.txt pour imposer les webcams. Alternativement, si vous avez votre propre script pour obliger les webcams, vous pouvez forcer l'affichage de l'icône CAM par la commande suivante à placer dans chatserv.ini : [settings] cams = oblig ; cam obligatoire Rendre une zone de texte cliquable En entourant une zone de texte par des marqueurs, on peut la rendre cliquable, c'est-à-dire que si un chatteur clique sur la zone avec la souris, une action 300 sera envoyée au bot contenant dans line$ le code marqueur. Un marqueur commence par le code 3. Le marqueur de fin de zone est toujours chr$(3,0,0,0). Le marqueur chr$(3,255,a,b) est réservé pour le jeu mine du bot. exemples : print (chr$(3,0,0,1) + image$("logo.gif") + chr$(3,0,0,0)); print (chr$(3,0,0,1) + image$("logo1.gif") + chr$(3,0,0,2) + image$("logo2.gif") + chr$(3,0,0,0)); print ("Logo 1 : " + chr$(3,0,0,1) + image$("logo1.gif") + chr$(3,0,0,0) + "Logo 2 : " + chr$(3,0,0,2) + image$("logo2.gif") + chr$(3,0,0,0) + "Logo 3 : " + chr$(3,0,0,3) + image$("logo3.gif") + chr$(3,0,0,0)); ... if (action == 300) print ("vous avez cliqué sur le logo " + str$(asc(line$,4))); Erreurs Les erreurs suivantes peuvent apparaitre lors de l'exécution d'un script : 1 "array index out of range" : l'index du tableau [] est hors limites 2 "division by zero" : division par zéro non autorisée 3 "string too long" : chaine ne peut pas dépasser 8192 caractères 4 "out of string space" : trop de chaines, la mémoire est pleine 5 "bad argument" : mauvaise valeur pour fonction standard 6 "application hangs" : l'application a déjà exécuté 100 millions d'instructions et semble tourner en rond 7 "missing return in function" : fonction sans instruction "return" 8 "expression too complex" : trop de paramètres ou d'appels imbriqués 9 "callstack full" : trop de paramètres ou d'appels imbriqués Les erreurs 10 à 15 dénotent un problème avec le logiciel de chat : 10 "arithmetic stack empty" 11 "unknown pcode" 12 "outside code range" 13 "outside var range" 14 "ret outside range" 15 "astack corrupt" Exemples de scripts Exemple 1 : Horloge proc event (session_key, userid$, sex$, has_photo, age, is_away, admin, cam_on, is_bot, toc_capab, signature$, action, is_myself, line$) { var heure, phrase$, phrase2$; if (action == 128) // arrivée en salle { heure = val (mid$(now$(),12,2)); if (heure >= 12 && heure <= 13) phrase$ = "Bon Appétit$mi "; else if (heure >= 0 && heure <= 4) phrase$ = "Agréable Nuit(s) "; else if (heure >= 6 && heure <= 19) phrase$ = "Bonjour:) "; else phrase$ = "Bonsoir;) "; if (sex$ == "F") phrase2$ = " (f)"; else phrase2$ = " (y)"; print (phrase$ + userid$ + phrase2$ + ", il est " + right$(now$(),8) + "(o)"); } } Exemple 2 : jeu de Puissance 4 var jeu; var tab[35]; var joueur; // 1 = jeu actif // 5 lignes de 7 colonnes proc effacer_table () { var i; for (i=0; i<35; i++) tab[i] = 0; } proc afficher_table () { var line, col, line$, i; i = 0; for (line=0; line<5; line++) { line$ = " "; for (col=0; col<7; col++) { if (tab[i] == 0) line$ = line$ + chr$(1,0,0,0) + "."; else if (tab[i] == 1) line$ = line$ + chr$(1,0,0,255) + "X"; else line$ = line$ + chr$(1,255,0,0) + "O"; i++; } print (chr$(2,5,4,0) + line$); } // courier new + gras print (chr$(2,5,4,0) + chr$(1,0,0,0) + " } >" + "1234567<"); func score (col, line) { var x, y, c, i, j, count; // 4 cases consecutives horizontales j count = 0; = 0; for (x=0; x<7; x++) { c = tab[x+line*7]; if (c == 0 || c != j) { count = 1; j = c; } else { count++; if (count == 4) return j; } } // 4 cases consecutives verticales j count = 0; = 0; for (y=0; y<5; y++) { c = tab[col+y*7]; if (c == 0 || c != j) { count = 1; j = c; } else { count++; if (count == 4) return j; } } // 4 cases consecutives obliques \ j count = 1; = tab[col+line*7]; for (i=1; i<=3; i++) { if (col-i < 0 || line-i < 0 || tab[col-i + (line-i)*7] != j) break; count++; } for (i=1; i<=3; i++) { if (col+i >= 7 || line+i >= 5 || tab[col+i + (line+i)*7] != j) break; count++; } if (count >= 4) return j; // 4 cases consecutives obliques / j count = 1; = tab[col+line*7]; for (i=1; i<=3; i++) { if (col-i < 0 || line+i >= 5 || tab[col-i + (line+i)*7] != j) break; count++; } for (i=1; i<=3; i++) { if (col+i >= 7 || line-i < 0 || tab[col+i + (line-i)*7] != j) break; count++; } if (count >= 4) return j; return 0; } // col de 1 a 7 // joueur 1 ou 2 func ajouter (col, joueur) { var line; col--; if (col < 0 || col >= 7) return -1; if (tab[col] != 0) return -1; for (line=0; line<4; line++) { if (tab[col+line*7+7] != 0) break; } tab[col+line*7] = joueur; return score (col, line); } proc event (session_key, userid$, sex$, has_photo, age, is_away, admin, cam_on, is_bot, toc_capab, signature$, action, is_myself, line$) { var c$, col, r; if (action == 128) { print ("Bienvenue en salle, tapez !p4 pour jouer au puissance 4."); } if (action == 0) { if (len(line$) >= 3 && right$(line$,3) == "!p4") { jeu = 1; afficher_table(); } else if (jeu == 1) { if (len(line$) >= 1) { c$ = right$(line$, 1); if (c$ >= "1" && c$ <= "7") { col = val (c$); if (joueur == 1) joueur = 2; else joueur = 1; r = ajouter (col, joueur); if (r >= 0) { afficher_table(); if (r > 0) { if (r == 1) { print (chr$(1,0,0,0) + "Bravo + chr$(1,0,0,0) + " a } else if (r == 2) { print (chr$(1,0,0,0) + "Bravo + chr$(1,0,0,0) + " a } ! " + chr$(1,0,0,255) + "X" gagne"); ! " + chr$(1,255,0,0) + "O" gagne"); effacer_table (); jeu = 0; } } } } } } } Exemple 3 : kicker les tasses après 30 secondes var session[256]; var expire$[256]; var nb_session; // enregistre le session_key des chatteurs en tasse // date et heure à laquelle on kicke le chatteur // nombre d'éléments dans les 2 tableaux // ajoute une session_key dans les 2 tableaux proc ajouter_dans_table (session_key) { var i; for (i=0; i < nb_session; i++) { if (session_key == session[i]) // trouvé break; } if (i == nb_session) // pas trouvé, donc agrandir table nb_session++; session[i] = session_key; expire$[i] = add_date$ (now$(), 30); } proc supprimer_de_table (session_key) { var i; for (i=0; i < nb_session; i++) { if (session_key == session[i]) break; } // trouvé if (i < nb_session) // trouvé { session[i] = session[nb_session-1]; expire$[i] = expire$[nb_session-1]; nb_session--; } } proc timer () { var i; for (i=0; i < nb_session; i++) { if (now$() > expire$[i]) // a expiré { kick (session[i], "ce n'est pas un parking ici !"); supprimer_de_table (session[i]); } } set_timer (1); // rappeler timer() toutes les secondes } proc event (session_key, userid$, sex$, has_photo, age, is_away, admin, cam_on, is_bot, toc_capab, signature$, action, is_myself, line$) { if (!is_myself) // pas moi-même { if (action == 2) { if (is_away) // chatteur va en tasse { print ("Attention " + userid$ + " : tu seras kické après 30 secondes en tasse !"); ajouter_dans_table (session_key); } else // reviens de tasse { supprimer_de_table (session_key); } } if (action == 129 || action == 130 || action == 256) { supprimer_de_table (session_key); } } } Exemple 4 : robot multi-fonctions var nombre; // nombre a deviner (pour le jeu devine) var jeu_score[50], jeu_pseudo$[50]; var nombre_de_lignes; // compte le nombre de lignes reçues var fruit$[3]; // tableau de 3 fruits func fq$ () // changer la couleur et le style d'écriture { return chr$(1,0,0,128) // couleur bleue claire (voir chapitre macros) + chr$(2,5,4,0); // font "Courier New", style gras } func red$ () { return chr$(1,255,0,0); } // couleur rouge func green$ () { return chr$(1,0,255,0); } func blue$ () { return chr$(1,0,0,255); } proc demarre_devine () { print ("devine un nombre de 1 à 99"); nombre = random (1,99); } // ajoute des points dans le tableau jeu_score[] proc ajoute_points (userid$) { var i, j, u$; // cherche le userid$ dans le tableau jeu_pseudo$[] // ou bien cherche une case vide dans le tableau for (i=0; i<50; i++) { if (jeu_pseudo$[i] == userid$ || jeu_pseudo$[i] == "") break; } // remplir la case et augmenter le score jeu_pseudo$[i] = userid$; jeu_score[i]++; // ajouter 1 point au score // remonter le joueur dans le tableau des scores // s'il a dépassé des joueurs avant lui while (i > 0 && jeu_score[i] > jeu_score[i-1]) { j = jeu_score[i]; jeu_score[i] = jeu_score[i-1]; jeu_score[i-1] = j; u$ = jeu_pseudo$[i]; jeu_pseudo$[i] = jeu_pseudo$[i-1]; jeu_pseudo$[i-1] = u$; i--; } } // imprime les 9 premiers scores du tableau // ainsi que le userid$ même s'il est après les 9 premiers proc affiche_scores (userid$) { var i, score$; print (fq$() + "SCORES"); print (fq$() + "======"); for (i=0; i<50; i++) { if (jeu_pseudo$[i] == "") break; if (i < 9 || userid$ == jeu_pseudo$[i]) { score$ = str$(jeu_score[i]); if (len(score$) < 4) score$ = dup$(" ",4-len(score$)) + score$; print (fq$() + str$(i+1) + ". " + score$ + " } } print(""); " + jeu_pseudo$[i]); } proc joue_devine (word$,userid$) { var last, first, n; // enlève les blancs à la fin last = len(word$); while (last >= 1 && asc(word$,last) == 32) last--; // collecte tous les chiffres à la fin first = last; while (first >= 1 && asc(word$,first) >= 48 && asc(word$,first) <= 57) first--; if (first == last) return; // pas de chiffres n = val (mid$(word$,first+1,last-first)); if (n < print else if print nombre) ("ha non, trop petit !"); (n > nombre) ("hé non, trop grand !"); else { print ("Bravo, c'était bien " + str$(nombre)); ajoute_points (userid$); affiche_scores (userid$); nombre = 0; } } proc print_fruits () { if (fruit$[1] == "") // tableau pas encore rempli { fruit$[1] = "Pommes"; fruit$[2] = "Poires"; fruit$[3] = "Bananes"; } print ("Saluuuut :d tu aimes les " + fruit$[random(1,3)] + " ? "); } // nettoye la ligne line$ en remplaçant toutes les icones par des blancs, // en convertissant tous les mots en minuscules, // et en entourant tous les mots par des blancs. func clean$ (line$) { var last, r$, i, c; i = 1; last = len(line$); while (i <= last) { c = asc (line$,i); if (c <= 9) // séquence spéciale { i += 4; // passer 4 caractères if (c > 5) i += 4; c = 32; // remplacer par un blanc } else // caractère normal { if (c >= 65 && c <= 90) // si entre A et Z c += 32; // convertir en minuscules i++; } r$ = r$ + chr$(c); } return r$ + " "; } proc timer () { if (mid$(now$(),12,5) == "12:00") print ("il est 12 heures !"); if (mid$(now$(),12,5) == "13:00") print ("il est 13 heures !"); set_timer (55); } // rappeler toutes les 55 secondes, // donc 1 appel par minute est garanti proc event (session_key, userid$, sex$, has_photo, age, is_away, admin, cam_on, is_bot, toc_capab, signature$, action, is_myself, line$) { var word$, w$, heure, i; word$ = clean$(line$); // nettoye la ligne pour pouvoir y chercher des mots if (action == 127) // afficher les gens déjà présents en salle { print ("Déjà en salle : " + userid$ + " (session_key=" + str$(session_key) + ")"); } if (action == 128) { if (is_myself) toc(); // arrivée en salle // c'est moi-même // je prend le toc ! w$ = blue$(); heure = val (mid$(now$(),12,2)); if (heure >= 12 && heure <= 13) w$ = w$ + "Bon Appétit$mi "; else if (heure >= 0 && heure <= 4) w$ = "Agréable Nuit(s) "; else if (heure >= 6 && heure <= 19) w$ = w$ + "Bonjour:) "; else w$ = w$ + "Bonsoir;) "; w$ = w$ + userid$; if (sex$ == "F") w$ = w$ + " (f)"; else w$ = w$ + " (y)"; w$ = w$ + ", il est " + right$(now$(),8) + "(o)"; print (w$); // print ("Votre signature est : " + signature$); print (blue$() + "tape " + red$() + "!devine" + blue$() + " pour le jeu devine"); } if (action == 0) // ligne de texte normale { if (!is_myself) // ce n'est pas moi-même { if (pos (word$, " !devine ")) // contient !devine (avec 2 blancs autour, attention !) demarre_devine (); if (nombre > 0) // le jeu devine est actif joue_devine (word$, userid$); // kicker quelqu'un s'il dit cochon if (pos (word$, " cochon ")) kick (session_key, userid$ + ":@ malpoli !!"); // Afficher l'heure if (pos (word$, " heure ")) print ("Horloge parlante : " + now$()); // afficher le fichier bienvenue.txt, ligne par ligne if (pos (word$, " bien ")) { for (i=1; i<=count_lines("bienvenue.txt"); i++) print (read_line$("bienvenue.txt", i)); } // Afficher une image de porte if (pos (word$, " porte ") > 0) print ("-> " + image$("kitchen02.jpg") + "quelle porte ? :p"); // retenir une phrase en la stockant dans la database chat.db if (pos (word$, " retiens ") > 0) { store ("Retiens " + signature$, line$); print ("phrase retenue, dis 'quoi' pour la revoir !"); } // redire la phrase stockée if (pos (word$, " quoi ") > 0) { print ("ta phrase était : "+ fetch$("Retiens " + signature$)); } nombre_de_lignes++; // augmenter le nombre de lignes de 1 // toutes les 200 lignes, annoncer le nombre de lignes déjà parlées en salle if ((nombre_de_lignes % 200) == 0) print ("Déjà " + str$(nombre_de_lignes) + " lignes parlées sur ce chat :p"); // toutes les 100 lignes, demander si on aime un fruit if ((nombre_de_lignes % 100) == 0) print_fruits (); } } if (action == 2 && is_away) // aller en tasse { print ("Et alors là " + userid$ + " ? on se cache ?"); } if (action == 2 && !is_away) // revenir de tasse { print ("Ben heureusement que tu reviens " + userid$ + " $si"); } if (action == 1) // ligne de texte envoyé avec la bulle { print ("Alors on rêvasse " + userid$ + " :d"); } } G. Démarrer le bot sans passer par la liste des salles On peut démarrer le bot sans passer par la liste des salles avec la commande dos suivante : chat.exe -room 127.0.0.1:12000 H. Applications 'Console de Jeu' En script, vous pouvez aussi écrire des 'applications console' qui tournent dans une fenêtre du chat. Le tutorial pour écrire des applications console est ici A ce lien , vous trouverez 4 jeux console de démonstration : casse-brique, galaxy, pacman et falcon. Il suffit de dézipper les 4 fichiers et de les copier dans le répertoire du bot, ensuite tapez !jeu avec votre pseudo. A ce lien , vous trouverez un jeu console/quizz pour dessiner : il faut remplir un fichier dessinmots.txt avec une liste de mots à dessiner. Les commandes sont : • • • • !dessin start !dessin stop !dessin score !dessin efface (efface les scores, pour toc or seulement) Voir également le cours pour apprendre le script ici 2. Comment Installer un Quizz Pour créer un quizz, vous avez besoin d'un fichier de questions. Un exemple : 1492 : En quelle année Christophe Colomb a-t-il découvert l'amérique ? 1957 : date de lancement du tout premier satellite artificiel (Spoutnik 1) 1969 : date du 1er débarquement humain sur la lune (Armstrong, Aldrin - Apollon 11) 1976 : date d'arrivée de la 1ère sonde sur Mars (Viking I) aïkido : art martial japonais à mains nues fondé sur des mouvements de rotation et d'esquive abîme : gouffre très profond abdiquer : renoncer à la couronne abeille : insecte produisant du miel ablette : poisson d'eau douce, à dos vert métallique, abondant dans les lacs alpins abnégation : sacrifice de soi abordage : assaut donné d'un navire à un autre aboyer : pousser un cri en parlant du chien abribus : édicule destiné à servir d'abri aux voyageurs à un point d'arrêt d'autobus acajou : arbre des régions tropicales donc le bois rougeâtre sert en ébénisterie accalmie : calme momentané du vent ou de la mer accolade : action de serrer quelqu'un dans ses bras lors d'une remise de décoration accompagner : aller quelque part avec quelqu'un accordéon : instrument de musique portatif à touches ou boutons muni d'un soufflet accrocher : suspendre à un crochet accélération : accroissement de la vitesse acousticien : spécialiste du son acrobate : artiste qui exécute des tours d'agilité, d'adresse ou de force dans un cirque adolescence : période de la vie entre la puberté et l'âge adulte agneau : petit de la brebis agriculteur : personne qui cultive la terre agripper : saisir vivement en serrant avec les doigts, en s'accrochant aguicher : provoquer, chercher à séduire quelqu'un par la coquetterie, l'artifice aigre-doux : d'un goût à la fois acide et sucré aiguiser : rendre tranchant, affûter ail : plante à bulbe dont les gousses, à l'odeur forte et piquante, sont utilisées en cuisine aisselle : cavité située sous l'épaule ajourner : renvoyer à un autre jour albatros : oiseau palmipède des mers australes d'une envergure de 3m, bon voilier, très vorace aligner : ranger, présenter sur une ligne droite alliance : anneau de mariage alligator : crocodile d'amérique qui atteint jusqu'à 5m allumette : petit brin de bois dont l'une des extrémités est imprégnée d'une composition inflammable alouette : oiseau passereau à plumage brunâtre commun dans les champs et ne perchant pas sur les arbres alpha : première lettre de l'alphabet grec alpinisme : sport des ascensions en montagne altocumulus : nuage d'altitude moyenne (4000 m) formé de gros flocons aux contours nets (ciel pommelé) altruisme : tendance à s'intéresser aux autres, à se montrer généreux et désintéressé altérer : détériorer, changer en mal amant : homme qui a des relations sexuelles avec une femme qui n'est pas son épouse amateur : personne qui pratique une activité sans en faire sa profession ambassadeur : représentant permanent d'un état auprès d'un état étranger ambition : désir ardent de réussite ambivalent : qui parait être en contradiction, avoir un sens double ambulance : véhicule pour le transport des blessés amende : sanction ou peine pécunière amiante : silicate naturel hydraté de calcium et magnésium résistant au feu, utilisé pour fabriquer des matériaux incombustibles amiral : officier général d'une marine militaire ammonite : mollusque fossile à coquille enroulée, caractéristique de l'ère secondaire amnistie : loi qui efface une condamnation ou empêche les poursuites amnésie : diminution ou perte totale de la mémoire amorcer : commencer à déclencher un dispositif amour : sentiment très intense d'attachement entre deux personnes amourette : amour passager, sans profondeur amphibie : qui peut vivre à l'air et dans l'eau, en parlant d'un animal ou d'une plante amplifier : accroitre le volume (du son) amputer : enlever un membre par une opération chirurgicale amulette : object que l'on porte sur soi et auquel on accorde par superstition des vertus de protection aménager : transformer pour rendre plus pratique amuse-gueule : menue friandise servie avec l'apéritif amydales : organes lymphoïde de la gorge (au nombre de deux) que l'on enlève parfois lors d'une intervention chirurgica anaconda : grand serpent d'amérique du sud (8 m) se nourissant d'oiseaux et de mammifères anagramme : mot formé des lettres d'un autre mot disposées dans un ordre différent analphabète : qui ne sait ni lire ni écrire ananas : plante de l'amérique tropicale, cultivée pour son gros fruit à bulbe sucrée et savoureuse anarchie : état de désordre dû à l'absence d'autorité anchois : petit poisson de Méditerranée, 15 à 20 cm, qui est souvent conservé dans la saumure ou dans l'huile ancre : pièce d'acier servant à immobiliser un navire en s'accrochant au fond de l'eau andouille : personne sotte ou maladroite androgyne : qui tient des deux sexes anecdote : récit succinct d'un fait piquant, curieux ou pas connu anesthésier : endormir, rendre insensible ange : être spirituel, intermédiaire entre Dieu et l'homme angine : inflammation des muqueuses de l'isthme du gosier et du pharynx anglophilie : sympathie pour le peuple anglais anglophobie : aversion pour les anglais, pour ce qui est anglais angoisse : inquiétude profonde angora : qui présente des poils longs et soyeux, en parlant de certains animaux (chat, lapin, chèvre) animateur : personne chargée d'organiser et d'encadrer des activités dans une collectivité animosité : malveillance, antipathie qui se manifeste souvent par l'emportement annuaire : ouvrage publié chaque année qui donne la liste des membres d'une profession année-lumière: distance parcourue par un rayon de lumière en un an année : période de douze mois annuité : paiement annuel au moyen duquel un emprunteur se libère progressivement d'une dette annulaire : quatrième doigt de la main qui porte généralement une alliance annuler : déclarer nul anoblir : accorder un titre de noblesse anodin : inoffensif, sans importance anonyme : dont l'auteur est inconnu anorexie : perte de l'appétit anosmie : diminution ou perte complète de l'odorat anthropophage: se dit d'un homme qui mange de la chair humaine antiquaire : commerçant spécialisé dans la vente et l'achat de meubles et d'objets d'art anciens antépénultième : qui vient juste avant l'avant-dernier anéantir : détruire entièrement anémomètre : instrument qui sert à mesurer la vitesse du vent aparté : paroles échangés à l'écart, au cours d'une réunion apathique : qui ne réagit pas, qui parait sans volonté, sans énergie apatride : personne sans nationalité légale apesanteur : disparition des effets de la pesanteur terrestre aphasie : perte de la parole ou de la compréhension du langage suite à une lésion du cortex cérébral aphone : se dit d'une personne qui a perdu sa voix aphrodisiaque: se dit d'une substance qui est censée créer, stimuler le désir sexuel apiculteur : personne qui élève des abeilles apocalypse : catastrophe épouvantable, fin du monde apollon : jeune homme d'une grande beauté appareiller : se dit d'un bateau qui quitte le port, le mouillage appeau : petit instrument avec lequel on imite le cri des animaux pour les attirer applaudir : marquer son admiration en battant des mains appointements: rémunération fixe, salaire attaché à un poste, à un emploi apprivoiser : domestiquer, rendre docile appréhender : craindre, redouter la venue de quelque chose appétit : désir de manger après-demain : le second jour après celui où on est apurer : solder le passif d'un compte apéritif : boisson alcoolisée servie généralement avant les repas aquaplanage : perte d'adhérence d'un véhicule par temps de pluie aquarelle : peinture à l'eau, légère, transparente, le plus souvent sur papier blanc aquarium : réservoir transparent dans lequel on élève des poissons arbitre : personne chargée de faire respecter les règles d'un jeu archet : baguette souple de crin qui sert à frotter les cordes d'un violon archipel : un groupe d'îles ardeur : zèle, empressement au travail ardoise : mot familier pour désigner une dette chez un commerçant ou au café argile : roche imperméable meuble qui, imbibée d'eau, permet de façonner des objets argon : gaz, inerte, incolore, symbole chimique Ar. On en trouve 1% dans l'atmosphère terrestre. aride : se dit d'une terre sèche, privée d'humidité arithmétique : partie des mathématiques étudiant les propriétés élémentaires des nombres entiers et rationnels arlequin : personne de clown au vêtement bariolé armure : vêtement de protection en fer du moyen-âge arnaqueur : escroc, filou (en 9 lettres) arène : espace sablé d'un cirque où se déroulaient les jeux romains artère : vaisseau sanguin qui va du coeur aux organes arête : un cube en a douze asphalte : calcaire imprégné de bitume qui sert au revêtement des chaussées asphyxie : état de détresse respiratoire aspirine : médicament analgésique et antipyrétique (pour guérir la grippe) assainir : ramener une situation à la normale assemblée : réunion de personnes (par exemple église ou sénat) asseoir : installer sur un siège assiette : pièce de vaisselle à fond plat et bord incliné dans laquelle on mange astéroide : petit corps céleste asticot : larve de la mouche à viande, utilisé comme appat pour la pêche à la ligne asticoter : taquiner gentiment astiquer : faire briller en frottant athlétisme : ensemble des sports individuels comprenant course, saut et lancer atroce : qui est horrible, insoutenable attacher : fixer à quelque chose babiole : chose puérile ou sans valeur babouin : singe du genre cynocéphale baby-boom : accroissement subit de la natalité baby-foot : football de table baby-sitter : personne qui garde les enfants en bas âge baby-sitting : fait de garder les enfants en bas âge baby : terme anglais signifiant "bébé" bac : bateau plat, parfois attaché à un câble, utilisé pour passer d'un bord à l'autre d'un cours d'eau baccalauréat : premier grade universitaire sanctionnant les études secondaires en france bacchanales : fêtes célébrées en l'honneur de Bacchus bachelier : qui a subi avec succès l'examen de baccalauréat bachi-bouzouk: autrefois, soldat irrégulier de l'armée turque bachot : petit bateau à fond plat bachotage : travail intensif pour se préparer à un examen ou à un concours bacille : insecte du sud de la France, dont l'aspect rappelle celui d'une brindille bacille : microbe qui a la forme d'un bâtonnet bacon : lard fumé bactérie : microbe unicellulaire qui ne comporte pas de noyau cellulaire badaboum : onomatopée imitant le bruit d'une chute badaud : personne qui flâne en regardant tout ce qui présente un intérêt quelconque badge : insigne badinage : action ou propos de celui qui se plaît aux choses légères badine : petite canne flexible badminton : jeu de volant qui ressemble au tennis baffe : nom familier de la gifle baffle : enceinte acoustique bafouiller : parler d'une manière confuse bagage : connaissances que l'on possède bagage : objet que l'on emporte en voyage bagagiste : employé qui s'occupe des bagages bagarre : tumulte, rixe bagarreur : personne qui aime se bagarrer bagatelle : chose frivole, sans importance bagne : établissement pénitentiaire où étaient enfermés les condamnés aux travaux forcés bague : anneau que l'on porte au doigt baguette : pain long baguette : petit bâton flexible bâbord : côté gauche d'un bateau lorsqu'on regarde vers l'avant bâcler : expédier un travail à la hâte bédéphile : comment nomme-t-on un collectionneur de bandes dessinées Einstein : en physique, qui a découvert la théorie de la relativité ? marguerite : fleur à partie centrale jaune et pétales blanches marmite : récipient avec couvercle, sans manche, et muni d'anses, dans lequel on fait cuire les aliments marmot : petit enfant milou : Comment s'appelle le chien de tintin ? misogyne : homme qui a une hostilité manifeste à l'égard des femmes mistral : vent violent, froid, turbulant et sec mitrailler : tirer par rafalles moine : homme lié par des voeux religieux et vivant en monastère ânon : petit de l'âne satellite : corps qui gravite autour d'une planète Saturne : planète géante du système solaire qui comporte des anneaux saumon : poisson à la chair estimée, d'une couleur rose-orangé sauna : bain de vapeur sèche, d'origine finlandaise SN : symbole chimique de l'étain Le fichier de questions doit être appelé QUIZZ.TXT et être placé dans le même répertoire que CHAT.EXE On ne sait pas ajouter plusieurs fichiers. Si vous changez les questions, attention de respecter le format et de ne pas ajouter de lignes vides ou de titre ! Commandes du Quizz : !start démarrer le quizz !stop arrêter le quizz !pause mettre le quizz en pause (redémarrer avec !start ou !pause) !indice ou !hint avoir un indice !next passer à la question suivante !score ou !scores voir les scores de la semaine !quoi ou !what pour répéter une question quand on vient d'entrer en salle et que la question est déjà posée Si le quizz ne démarre pas avec !start, essayez de renommer votre fichier en "QUIZZ" au lieu de "QUIZZ.TXT" (le bloc-notes rajoute l'extension cachée .TXT automatiquement, pour plus de détails : Comment voir les Fichiers Cachés dans Windows Par défaut, windows cache certains fichiers et certaines extensions de fichier, ce qui peut poser des problèmes pour bien configurer. Pour voir tous les fichiers et extensions : 1) double-cliquez sur l'icone "Poste de Travail" qui se trouve sur votre bureau. 2) cliquez sur le menu "Outils", puis "Options des dossiers". 3) cliquez sur l'onglet "Affichage". 4) descendez un peu dans la liste "Paramètres Avancés" puis sélectez la case "Affichez les fichiers et dossiers cachés". 5) Décocher la case "Masquer les extensions des fichiers dont le type est connu". Attention: on a bien dit Décocher, c'est-à-dire enlever le 'v' ! 6) Fermer toutes les fenêtres avec OK. 3. Jeu Action/Vérité Pour démarrer le jeu Action ou Vérité, tapez !action ou !av Les textes du paragraphe [action] du fichier bot.txt doivent être correctement remplies (voir explications ci-dessus). Vous pouvez aussi rajouter des questions dans ce fichier. 4. Jeu Mine Pour démarrer le jeu Mine, tapez !mine Cliquez ensuite sur un symbole du tableau puis sur la touche Enter afin de découvrir une case du jeu. Les textes du paragraphe [mine] du fichier bot.txt doivent être correctement remplies (voir explications ci-dessus). 5. Comment Installer un script pour le jeu "Scrabble" Pour le jeu scrabble, téléchargez puis dézippez le script SC R A B B L E_ S C R I P T , et copiez-le dans le répertoire du bot. Ensuite, téléchargez puis dézippez les questions de scrabble SC R A B B L E_Q U E S T I O N S , et copiez-les aussi dans le répertoire du bot. Si les fichiers ZIP sont vides après le téléchargement, essayez de cliquer sur 'Enregistrer' au lieu de 'Ouvrir' ! Cliquez sur la fenêtre du bot et appuyez sur F5 Les commandes du jeu sont : !scrab start démarrer le jeu !scrab score voir les scores !scrab efface effacer les scores (pour toc Or seulement) Attention: le bot lui-même NE peut PAS faire ces commandes ! Les scores sont effacés aussi toutes les semaines automatiquement. 6. Comment Installer un script pour le jeu "Le compte est bon" Pour le jeu "Le compte est bon", téléchargez puis dézippez le script CO M P T E_ S C R I P T , et copiez-le dans le répertoire du bot. Si le fichier ZIP est vide après le téléchargement, essayez de cliquer sur 'Enregistrer' au lieu de 'Ouvrir' ! Cliquez sur la fenêtre du bot et appuyez sur F5 Les commandes du jeu sont : !compte start démarrer le jeu !compte stop arrête le jeu !compte score voir les scores !compte efface effacer les scores (pour toc Or seulement) Attention: le bot lui-même NE peut PAS faire ces commandes ! Les scores sont effacés aussi toutes les semaines automatiquement. ==> *** Guide Chat *** <== ==> *** Guide Bot *** <== ==> *** Guide Salle s *** <== ** Comment créer sa propre salle de chat ** Voici maintenant un chapitre pour ceux qui se sentent une âme d'animateur (ou d'animatrice) et qui désirent créer leur propre salle de chat. Pour cela, vous devez installer un serveur de chat sur votre PC. Les gens qui viendront chatter dans votre salle se connecteront directement à votre PC. Si vous arrêtez le serveur de chat ou que vous coupez votre PC, votre salle disparaitra. A. Clause de Responsabilité Etant donné que l'animateur fait tourner un serveur de salle de chat sur son PC sans aucune possibilité de vérification ou de contrôle de notre part, nous déclinons toute responsabilité de l'utilisation qui sera faite de ce logiciel serveur ainsi que du logiciel de chat client correspondant. En téléchargeant le serveur de chat, l'animateur accepte d'endosser l'entière responsabilité de l'utilisation de ce logiciel. Nous conseillons à l'animateur de prendre à coeur les responsabilités suivantes : * L'animateur vérifiera l'âge des participants dans les salles "adultes". * L'animateur veillera à ce qu'aucun acte contraire à la loi ne soit commis par les participants. * L'animateur ne laissera pas une salle très fréquentée sans surveillance, surtout s'il s'agit d'une salle qui, vu le titre de la salle, attire un certain public adulte. Il est conseillé de s'entourer d'une équipe d'animateur/d'animatrices qui peuvent se relayer. * L'animateur n'utilisera, pour le titre de sa salle, ni mots grossiers ou vulgaires, ni insultes vis-àvis d'autres participants. Nous conseillons à l'animateur de ne pas prendre ces responsabilités à la légère s'il veut éviter une convocation à la gendarmerie suite à une plainte déposée par un participant ! L'animateur a à sa disposition le fichier de log du serveur afin de vérifier ce qui se déroule en salle. B. Installation Pour installer le serveur de chat veuillez exécuter les Etapes 1 à 8 ci-dessous: Etape 1 Téléchargez le serveur de chat en cliquant sur ce lien puis sur 'Ouvrir'. (si ça ne fonctionne pas, cliquez ici ) Etape 2 Démarrez-le en cliquant sur l'icône "CREER SALLE" qui se trouve sur votre bureau. Etape 3 Entrez le nom de votre salle ("Chat en Belgique - Chez Samuro"), ensuite choisissez une langue ("Français/Belgique"), et finalement choisissez une catégorie (Ados, General, Conversation 18+ ou Erotica 21+) : Categorie Description Ados jeunes 0 à 20 ans General ouvert à tous Conversation 18+ conversations entre adultes Erotica 21+ salles roses Etape 4 Observez l'indicateur "#rooms" sur le serveur de chat (voir photo à droite). Cet indicateur compte le nombre total de salles de chat existantes dans le système. Au début, quand vous démarrez le serveur de chat, cet indicateur est égal à 1. Après quelques minutes, il devrait indiquer une valeur supérieure à 1 (par exemple 67 sur la photo). Cela signifie que votre salle a été correctement ajoutée dans la liste des salles. Continuez alors à l'étape 7 ci-dessous. Si vous voyez un bouton TEST coloré en VERT, cela signifie que tout va bien, l'indicateur "#rooms" va changer dans quelques minutes, il suffit d'attendre. Par contre si vous voyez un bouton TEST coloré en ROUGE, cela signifie que votre PC n'est pas bien configuré pour faire tourner un serveur. Continuez alors à l'étape 5 ci-après. Etape 5 : Routeur 1. cliquez sur le bouton "Démarrer" en bas à gauche de votre écran Windows 2. cliquez sur "Exécuter" 3. tapez cmd puis cliquez sur OK, ce qui doit faire apparaitre une boite noire. (note: sur windows 95/98, tapez dosprmpt au lieu de cmd) 4. tapez ipconfig et appuyez sur la touche Entrée (à droite en bas du clavier) 5. cherchez les 2 lignes rouges sur l'image ci-dessus. La première est intitulée "Adresse IP" et la deuxième plus bas s'appelle "Passerelle par défaut". Si ces deux adresses IP commencent par 192.168.x.x, 10.x.x.x, ou 172.x.x.x alors vous avez un routeur que nous allons devoir configurer (s'ils commencent par autre chose, vous n'avez pas de routeur et vous pouvez aller directement à l'étape 6 : Parefeu) 6. 7. 8. 9. notez soigneusement les deux IP sur un papier : - la première est l'IP locale de votre PC (à ne pas confondre avec l'IP Internet !) - la deuxième est l'IP de votre routeur. démarrez internet explorer et tapez http://xxx.xxx.xxx.xxx en remplaçant les xxx par l'IP de votre routeur. dans le guide utilisateur, cherchez le nom d'utilisateur et le mot de passe pour se logger (il faut souvent laisser la zone vide, ou bien taper admin). cherchez le menu pour ajouter un serveur, ça s'appelle souvent "NAT" ou bien "Virtual Server" ou "Applications & Gaming" Ajoutez une ligne dans la configuration : application user-defined, non-standard ou tapez chat protocole TCP ou UDP TCP numéro du port entrant 12000 (ou 12000 à 12000) - celui du serveur de chat numéro du port sortant 12000 (ou 12000 à 12000) - celui du serveur de chat Adresse IP IP locale de votre PC, que vous avez notée sur un papier Enable X 1. sauver la configuration. exemple: le router wireless LinkSysBEFW11S4 2. Si vous ne trouvez pas le menu NAT, vous pouvez aussi entrer l'IP locale de votre PC dans le menu "Default Server" ou "DMZ" du routeur. Quand votre routeur est bien configuré, continuez à l'étape 6 car ce n'est pas fini. Etape 6 : Parefeu 1. Vous devez autoriser le port TCP 12000 dans le firewall de windows XP : - pour windows XP Comment configurer le firewall installé en standard dans windows xp pour le serveur de Chat - pour windows XP avec Service Pack 2 Comment configurer le firewall installé en standard dans windows xp + Service Pack 2 pour le serveur de Chat 2. Vous devez autoriser le port TCP 12000 dans les logiciels de sécurité que vous avez installés (norton, f-secure, ..) Pour configurer vos firewalls installés, reportez-vous à la documentation fournie avec le produit. Certains produits gratuits (par exemple Zone Alarm Standard Edition) ne permettent pas de configurer les ports. Il faut alors se procurer la version professionelle du produit, ou bien l'enlever (le firewall inclus dans Windows XP procure une sécurité suffisante pour empêcher tout piratage). Pour vérifier que tous vos logiciels parefeu installés sur le PC sont bien configurés, vous pouvez télécharger ici le petit logiciel testport. Démarrez le serveur le chat, ensuite tapez dans testport l'IP locale de votre PC (voir point 5 ci-dessus) et le port 12000 et cliquez OK : le logiciel vous dira si le port est ouvert sur tous vos parefeus, donc si vous avez correctement exécuté l'étape 6. Quand tous vos routeurs et firewalls sont bien configurés, alors le bouton TEST sur le serveur de chat devrait se colorer en VERT quand vous cliquez dessus pour indiquer que le port est ouvert; s'il reste coloré en ROUGE, remontez à l'étape 4 car vous avez sûrement commis une erreur ! Quand l'indicateur "#rooms" sur le serveur de chat affiche une valeur supérieure à 1, continuez à l'étape 7 car ce n'est pas fini. Etape 7: plusieurs PCs Si vous avez un routeur et que vous chattez depuis un autre PC que celui où vous avez installé le serveur, vous allez voir une ligne de pointillés à la place du nom de votre salle et vous ne pourrez pas y rentrer, alors que les autres chatteurs y parviennent sans problème. C'est parce que l'un de vos PCs ne trouve pas l'IP de l'autre. Pour résoudre ce problème, vous avez deux solutions : 1) la méthode automatique : • ouvrez le port UDP 12000 (ou 12001, ..) sur le firewall du PC server, • ouvrez le port UDP 31977 sur le firewall du PC d'où vous chattez, • essayez de rentrer en salle. 2) la méthode manuelle : • allez sur le PC d'où vous chattez, • configurez l'explorateur windows Comment voir les Fichiers Cachés dans Windows Par défaut, windows cache certains fichiers et certaines extensions de fichier, ce qui peut poser des problèmes pour bien configurer. Pour voir tous les fichiers et extensions : 1) double-cliquez sur l'icone "Poste de Travail" qui se trouve sur votre bureau. 2) cliquez sur le menu "Outils", puis "Options des dossiers". 3) cliquez sur l'onglet "Affichage". 4) descendez un peu dans la liste "Paramètres Avancés" puis sélectez la case "Affichez les fichiers et dossiers cachés". 5) Décocher la case "Masquer les extensions des fichiers dont le type est connu". Attention: on a bien dit Décocher, c'est-à-dire enlever le 'v' ! 6) Fermer toutes les fenêtres avec OK. • ouvrez tous les fichiers CHAT.INI sur votre disque dur (ceux de vos pseudos et de vos bots); par exemple, la photo à droite montre comment ouvrir le fichier CHAT.INI pour le pseudo SAMU ( ) : tapez c:\chat.samu dans la zone (1), ensuite cliquez sur (2), (3) et (4) • Dans chaque fichier CHAT.INI, vous devez ajouter l'IP (192.168.x.x, 10.x.x.x ou 172.x.x.x) et le PORT du PC où tourne le serveur de chat. Attention: n'ajoutez PAS l'IP indiquée sur le serveur de chat, ce n'est pas la bonne ! • Voici un exemple simple : Attention à bien recopier cet exemple proprement sans rien changer sauf l'adresse IP et le numéro de PORT ! # chat.ini [room1] IP = 192.168.0.52 # adresse IP locale du PC PORT = 12000 # port du serveur de chat [icons] test01 = test.jpg frog01 = grenouille.jpg [settings] Si vous avez installé 2 salles (port 12000 et 12001), vous devez indiquer les 2 ports, comme ceci : # chat.ini [room1] IP = 192.168.0.52 # adresse IP locale du PC pour serveur 1 PORT = 12000 # port du serveur de chat [room2] IP = 192.168.0.52 # adresse IP locale du PC pour serveur 2 PORT = 12001 # port du serveur de chat [icons] test01 = test.jpg frog01 = grenouille.jpg [settings] Lancez maintenant le chat. Si vous avez correctement exécuté cette étape vous devriez maintenant voir une ligne avec le nom de votre salle. N'oubliez pas, si vous créez un nouveau pseudo ou que vous téléchargez un bot, de répéter cette opération pour le nouveau chat.ini ! • Etape 8 : plusieurs serveurs de chat Si vous installez plusieurs serveurs de chat, alors vous devez utiliser des numéros de ports différents (12000, 12001, ...) en modifiant le fichier chatserv.ini de chaque serveur. De plus, si vous installez plusieurs serveurs de chat sur des PCs différents connectés au même routeur, alors il est nécessaire d'ouvrir, sur les firewalls de ces PCs, les ports UDP de même numéro que les ports TCP déjà ouverts. Si vous oubliez de le faire, certaines de vos salles vont apparaitre et disparaitre régulièrement de la liste des salles. (note: le routeur ne doit pas être changé). Exemple: • sur le firewall du PC 1 : ouvrir port TCP 12000 et UDP 12000; • sur le firewall du PC 2 : ouvrir port TCP 12001 et UDP 12001; • etc ... C. Le Serveur de Chat indique l'IP de votre PC, 12000 étant le port TCP utilisé par le serveur de chat. indique le nombre total de salles de chat actuellement ouvertes. indique le nombre de chatteurs dans votre salle. indique le nombre de connections actives entre le serveur de chat et internet. Comptez 1 connection pour le répertoire des salles, 2 connections par chatteur en salle (1 connection texte + 1 connection camµ), 4 connections par couple en PV. vous permet d'indiquer le nom de la salle. Il n'est pas nécessaire de redémarrer le serveur après avoir changé. répertorie votre salle dans l'une des listes de salles en fonction du choix Langue/Pays. Il n'est pas nécessaire de redémarrer le serveur après avoir changé. répertorie votre salle dans l'une des catégories suivantes : Categorie Description Ados jeunes 0 à 20 ans General ouvert à tous Conversation 18+ conversations entre adultes Erotica 21+ salles roses Il n'est pas nécessaire de redémarrer le serveur après avoir changé de catégorie. permet de spécifier la bande passante d'envoi (upload) maximum utilisée pour les cams et le micro. La valeur du haut est la limite maximum que vous autorisez; la valeur du bas change toute seule et indique la bande passante effectivement utilisée. (voir aussi le chapitre "bande passante" plus loin dans cette documentation) remet le réglage "mic & cam upload" à la valeur par défaut 120 recharger le fichier chatserv.ini - à utiliser après avoir modifié un paramètre serveur dans ce fichier. affiche la liste des tocs or (voir ci-dessous le chapitre "Comment donner un toc"). idem pour les tocs bruns. affiche la liste des gens bannis de façon permanente. affiche le log de salle de hier. affiche le log d'aujourd'hui. D. Fichier de Log du Serveur de Chat Le serveur de chat produit un fichier de log par jour reprenant toute la conversation de la salle, par exemple "2003-10-12.chatserv.txt". Les conversations en fenêtre privée ne sont pas enregistrées pour des raisons de respect de la vie privée. Il est cependant à noter que votre provider internet peut facilement intercepter tous les dialogues sur ce chat, sur Messenger ou tout simplement les échanges d'emails, cela sur demande des autorités judiciaires. Nous vous conseillons donc de ne rien faire d'illégal sur internet, cela laisse toujours des traces. E. Comment donner un toc ou exclure un participant Il y a 2 façons de donner le toc ou d'exclure quelqu'un : 1) la façon temporaire, qui dure au maximum 24 heures ou bien jusqu'à ce qu'on redémarre le serveur. 2) la façon permanente, sans limite de temps. 1. Façon temporaire (max 24 heures) Pour donner un toc brun à Eric pour 24 heures : . cliquez sur le pseudo d'Eric dans la liste, . cliquez sur l'icône en bas de l'écran (celle du bas, attention il y en a deux). Eric doit sortir de salle et revenir pour avoir son toc. Pour exclure un participant, il faut : . écrire une ligne de texte avec la raison de l'exclusion, mais sans appuyer sur la touche pour l'envoyer, . cliquer sur le pseudo du participant à exclure, . cliquer sur l'icône ou (l'icône du haut). Optionnellement, on peut ajouter dans la ligne de texte une durée d'exclusion entre crochets exprimée en minutes ou en heures. Exemple 1: va te calmer dehors [15 min] Exemple 2: au dodo [8 h] La durée d'exclusion n'a cependant aucun effet sur les propriétaires de salle (ceux qui ont le toc jaune). Pour voir la liste des tocs bruns ou exclusions des dernières 24 heures, tapez : /toc ce qui va afficher une liste comme suit : 10 : Marc a reçu le toc jusque 22:45 12 : Ivanohé est exclu jusque 02:12 14 : Arglub est exclu jusque 04:06 Pour reprendre le toc ou annuler une exclusion, il suffit d'effacer la ligne correspondante. Par exemple pour annuler l'exclusion d'Ivanhoé (ligne 12 ci-dessus), tapez: /delete 12 Pour effacer tous les tocs et annuler toutes les exclusions, tapez: /delete all Si vous ne souhaitez pas que les tocs OR ou BRUN puissent donner des tocs provisoires, ajoutez les lignes suivantes dans chatserv.ini : [security] gold-tocs-can-give-toc = NO ; toc OR ne peuvent pas donner toc provisoires brown-tocs-can-give-toc = NO ; toc BRUN ne peuvent pas donner toc provisoires 2. Façon permanente (sans limite de temps) Seul l'animateur qui fait tourner la salle sur son PC peut utiliser cette méthode : Cliquez sur le bouton "Log" du serveur de chat pour voir la conversation en salle. Cherchez l'arrivée en salle du participant concerné, vous allez voir une ligne telle que : 00:03:24 > ISABELLE s'est jointe à la conversation. (80.200.6.106) [E5DF21C781251FE9] Les caractères entre crochets [ ] constituent la signature unique d'un participant. Copiez la signature (en gardant les crochets), puis collez-là dans l'une des listes Gold, Brown ou Banned que vous ouvrez en cliquant sur le bouton correspondant sur le serveur de chat. - Gold : liste des tocs OR permanents (propriétaires de salle), - Brown : liste des tocs BRUNS permanents (animateurs), - Banned : liste des gens exclus de façon permanente. Exemple d'un fichier Gold : [E5DF21C781251FE9:12F3] Isabelle (Lyon) [ZE3160A5D0D3D718:B6C2] Samuro F. Salles Privées Une salle "privée" n'est accessible qu'aux personnes invitées par le propriétaire de salle. Pour créer une salle privée, il faut créer un fichier c:\chatserv\invite.txt qui doit contenir la liste des signatures autorisées à rentrer dans la salle (voir chapitre ci-dessus). Quand ce fichier est créé, l'icône apparait devant le nom de la salle, ce qui permet aux chatteurs de reconnaitre une salle privée. Si ça ne va pas, essayez de renommer votre fichier en "INVITE" au lieu de "INVITE.TXT" (le bloc-notes rajoute l'extension cachée .TXT automatiquement, pour plus de détails cliquez ici ) Pour retranformer une salle privée en salle tout public, effacez le fichier G. Salles avec Mot de Passe Une salle peut être protégée par un mot de passe. Seuls les participants qui connaissent le mot de passe correct peuvent rentrer. Il est possible de combiner salle privée (voir chapitre précédent) et salle protégée par mot de passe : seules les personnes invitées ou connaissant le mot de passe peuvent alors rentrer. G.1. Mot de Passe contrôlé par le Propriétaire de la salle Pour protéger sa salle avec mot de passe, le propriétaire de salle doit créer un fichier "PASSWORD.TXT" dans le dossier "C:\chatserv". Ce fichier doit contenir uniquement le mot de passe (pour ce faire, allez avec explorateur windows dans C:\CHATSERV, cliquez sur le menu "Fichier", cliquez sur "Nouveau", puis sur "Document Texte", ensuite tapez le nom de fichier PASSWORD, cliquez dessus pour ouvrir le bloc-notes, enfin tapez votre mot de passe et fermez). Quand ce fichier est créé, l'icône apparait devant le nom de la salle, ce qui permet aux chatteurs de reconnaitre une salle avec mot de passe. Si ça ne va pas, essayez de renommer votre fichier en "PASSWORD.TXT" au lieu de "PASSWORD" (le bloc-notes rajoute l'extension cachée .TXT automatiquement, pour plus de détails) Comment voir les Fichiers Cachés dans Windows Par défaut, windows cache certains fichiers et certaines extensions de fichier, ce qui peut poser des problèmes pour bien configurer. Pour voir tous les fichiers et extensions : 1) double-cliquez sur l'icone "Poste de Travail" qui se trouve sur votre bureau. 2) cliquez sur le menu "Outils", puis "Options des dossiers". 3) cliquez sur l'onglet "Affichage". 4) descendez un peu dans la liste "Paramètres Avancés" puis sélectez la case "Affichez les fichiers et dossiers cachés". 5) Décocher la case "Masquer les extensions des fichiers dont le type est connu". Attention: on a bien dit Décocher, c'est-à-dire enlever le 'v' ! 6) Fermer toutes les fenêtres avec OK. Pour enlever la protection par mot de passe, effacez le fichier. Les participants ayant un toc (OR ou MARRON) rentrent en salle sans devoir donner le mot de passe. G.2. Mot de Passe contrôlé par les tocs OR Le propriétaire de salle peut permettre aux tocs OR de gérer le mot de passe de la salle, grâce à la commande /pass. Avertissement: un toc OR peut, grâce à cette commande, faire rentrer dans une salle privée (voir chapitre précédent) des gens que le propriétaire de salle n'avait pas invités. Pour autoriser l'utilisation de la commande /pass, le propriétaire de salle doit rajouter dans chatserv.ini : [security] command-pass = enable Après avoir cliqué sur le bouton "Reload" du serveur de chat, les commandes suivantes sont alors disponibles pour les tocs OR : Pour protéger la salle avec le mot de passe "plumeau", tapez la commande : /pass plumeau Pour voir le mot de passe actuel, tapez : /pass Pour enlever le mot de passe, tapez : /pass off H. Comment créer plusieurs salles Plusieurs salles peuvent être créées à partir du même PC. Pour cela, il faut spécifier, lors de l'installation du serveur, le nombre de salles désiré. L'installation va alors créer plusieurs répertoires ainsi que plusieurs icônes sur le bureau pour démarrer chaque salle. Chaque salle doit écouter sur un port tcp/ip différent. Le port par défaut est 12000. Pour sélecter un autre port, l'installation va déposer automatiquement, dans le répertoire du serveur, un fichier CHATSERV.INI avec le texte suivant : # chatserv.exe ini file [listener] port = 12001 Tout ce que vous avez encore à faire est de configurer votre firewall pour ces ports additionnels. I. Bande Passante Chaque chatteur est relié au serveur de chat par 2 connections : - la 1ère connection sert à envoyer du texte. - la 2ème connection sert à envoyer les images webcams et le son micro. Un réglage sur le serveur de chat permet de limiter la bande passante utilisée pour la 2ème connection "webcam et micro". Connection Download modem 56K ADSL ADSL ADSL ADSL SDSL 32 Kbits/s Upload 32 Kbits/s Réglage CAM & MICRO 8 à 16 Kbits/s 256 Kbits/s 128 Kbits/s 48 à 80 Kbits/s 512 Kbits/s 128 Kbits/s 48 à 80 Kbits/s 1024 Kbits/s 128 Kbits/s 48 à 80 Kbits/s 4096 Kbits/s 128 Kbits/s 48 à 80 Kbits/s 1024 Kbits/s 1024 Kbits/s 792 Kbits/s Par défaut, le réglage est positionné sur 120 Kbits/sec ce qui convient à une connection ADSL 512/128 Kbits/sec. Une connection ADSL download=512 Kbits/sec et upload=128 Kbits/sec permet d'envoyer vers les autres chatteurs 128 Kbits par seconde; un réglage de 120 Kbits/sec laisse une petite marge pour envoyer du texte et éviter les engorgements. Si les gens se déconnectent fréquemment ou bien qu'ils vous disent qu'il y a du lag (le texte est lent), réduisez cette valeur à 48 Kbits/sec ou moins. Si certaines personnes n'ont pas ADSL et sont connectés par modem 56K, réglez à 8 ou 16 Kbits/sec. Si vous avez la chance de disposer d'une connection professionnelle SDSL (symmétric digital subscriber line), vous pouvez régler sans problème à 792 Kbits/sec. Remarque: la vitesse d'une connection ADSL est asymétrique, ce qui signifie que la vitesse de réception (1024 Kbits/sec) et d'envoi (128 Kbits/sec) sont différentes. Malheureusement, un serveur de chat a surtout besoin d'une vitesse d'envoi rapide afin d'envoyer le texte et les images à tous les chatteurs en même temps. Il ne sert donc à rien d'augmenter la vitesse de réception (1024 ou 4096 Kbits/sec) si la vitesse d'envoi reste limitée à 128 Kbits/sec. D'habitude, les serveurs sont hébergés sur des connections SDSL (symmétric) où la vitesse de réception est égale à la vitesse d'envoi. Une telle connection est cependant inabordable financièrement pour un particulier. J. Style Ce chapitre explique comment donner un style unique à votre salle. J.1 Placer une image comme titre de salle Vous pouvez placer les 3 images bannières suivantes : • une petite bannière sur la liste des salles • une grande bannière comme décor à l'intérieur de votre salle • une grande bannière comme titre de votre groupe Voici comment faire : • Placez vos images (format GIF, JPG, BMP ou PNG, max 63K) dans le dossier du serveur de chat (c:\chatserv). • Modifiez votre fichier chatserv.ini comme ceci : # chatserv.ini [settings] banner = mon_image1.gif ; bannière pour liste des salles (max 300 x 21) large-banner = mon_image2.gif ; bannière pour décor dans la salle (max 900 x 21) [group] banner = mon_image3.gif ; bannière pour titre du groupe (max 900 x 21) • Pour finir, cliquez sur le bouton Reload sur le serveur de chat. J.2 Changer les émoticons par Nr icône défaut Fonction 0 Tasse 1 Toc OR Pour changer la tasse en wc, le toc MARRON en marteau, et le toc OR en une icône faucille que vous avez dessinée vous-même (voir chapitre 11. Ajouter ses propres icônes), vous devez modifier le fichier chatserv.ini dans le répertoire du serveur du chat comme suit : 2 Toc MARRON 3 Ange (âge <= 10 ans) 4 Homme avec photo 5 Homme sans photo # chatserv.ini 6 Femme avec photo 7 Femme sans photo 8 Couple avec photo 9 Couple sans photo 10 bouton: Micro 11 bouton: Haut-Parleur 12 bouton: Sons (note de musique) 13 bouton: Webcam 14 bouton: Profil 15 bouton: Téléphone 16 icône: Téléphone RING 17 bouton: blocage PV 18 icône Bot 19 bouton: ignorer 20 bouton: bulle 21 bouton: font Les émoticons du tableau de droite peuvent être changés. Exemple: [settings] icon_0 = $vc # tasse en wc icon_1 = {faucil} # toc OR en faucille icon_2 = (ma) # toc marron en marteau Attention: si vous utilisez des emoticons contenant les caractères # ou ; vous devez les doubler, c'est-àdire ## et ;; Après avoir modifié le fichier chatserv.ini, cliquez sur le bouton Reload du serveur de chat pour le recharger. J.3. Changement des couleurs par défaut : Les couleurs par défaut suivantes peuvent être changées : Paramètre Valeurs Valeur par défaut Fonction border-color rouge,vert,bleu 192,192,192 couleur de la barre de déplacement du texte et des lignes de séparation cam-color rouge,vert,bleu 255,255,255 couleur de la surface où s'affichent les webcams (en haut de la fenêtre) title-color rouge,vert,bleu 255,255,255 couleur de fond du titre de la salle (la ligne entre les webcams et le texte écrit) text-color rouge,vert,bleu 255,255,255 couleur de fond du texte écrit du chat list-color rouge,vert,bleu 255,255,255 couleur de fond de la liste des chatteurs à droite menu-color rouge,vert,bleu 255,255,255 couleur de fond du menu en bas à droite cam-txt-color rouge,vert,bleu 0,0,0 couleur des pseudos sous les cams title-txt-color rouge,vert,bleu 64,64,64 couleur du titre de salle, en salle text-useridcolor rouge,vert,bleu 0,0,0 couleur des pseudos dans le texte text-away-color rouge,vert,bleu 128,128,128 couleur des messages du serveur de chat list-useridcolor couleur des pseudos dans la liste à droite rouge,vert,bleu 0,0,0 list-away-color rouge,vert,bleu 128,128,128 couleur des pseudos en tasse dans la liste à droite list-selectedcolor rouge,vert,bleu 255,255,255 couleur des pseudos sélectés dans la liste à droite list-selbackcolor rouge,vert,bleu 128,0,0 couleur de fond des pseudos sélectés dans la liste à droite bulle-color rouge,vert,bleu ?,?,? forcer la couleur de texte d'une phrase écrite avec Pour chaque couleur, spécifiez les quantités de rouge, vert et bleu de la couleur, entre 0 et 255. Vous pouvez trouver cette information dans le logiciel Paint (ça se trouve dans les accessoires Windows), menu Couleurs Personalisées. Exemple: # chatserv.ini [settings] border-color = 160,160,192 menu-color = 255,255,128 Après avoir modifié le fichier chatserv.ini, cliquez sur le bouton Reload du serveur de chat pour le recharger. J.4. Placer un cadre avec une image de fond autour du texte Paramètre Valeurs Fonction 10% ou 20p taille du bord supérieur du cadre (de 0 à 40%, ou de 0 à 1024 points) 10% border-bottom ou 20p taille du bord inférieur du cadre (de 0 à 40%, ou de 0 à 1024 points) border-top border-left 10% ou 20p taille du bord gauche du cadre (de 0 à 40%, ou de 0 à 1024 points) border-right 10% ou 20p taille du bord droit du cadre (de 0 à 40%, ou de 0 à 1024 points) Paramètre border-image-1 Valeurs {image1} align:top zone:789 Fonction horizontal-align:left 1 Zone: 2 3 4 Text 6 7 8 9 vertical- image d'un groupe de zones Option Valeurs horizontalalign left=aligné à gauche, right=aligné à droite, center=centré, stretch=étiré vertical-align top=aligné en haut, bottom=aligné en bas, center=centré, stretch=étiré Exemple 1: # chatserv.ini [settings] border-top border-bottom border-left border-right border-image-1 = = = = = 40p 17p 12% 5% {decor1} zone:78946 = = = = = = = = = 40p 17p 12% 5% {decor1} {decor2} {decor3} {decor4} {decor5} zone:789 zone:4 zone:6 zone:2 zone:3 = = = = = 20p 20p 20p 20p {decor1} zone:12346789 horizontal-align:left vertical-align:top horizontal-align:center horizontal-align:left horizontal-align:left horizontal-align:left horizontal-align:left vertical-align:top vertical-align:top vertical-align:top vertical-align:top vertical-align:top Exemple 2: # chatserv.ini [settings] border-top border-bottom border-left border-right border-image-1 border-image-2 border-image-3 border-image-4 border-image-5 Exemple 3: # chatserv.ini [settings] border-top border-bottom border-left border-right border-image-1 horizontal-align:stretch vertical-align:stretch Après avoir modifié le fichier chatserv.ini, cliquez sur le bouton Reload du serveur de chat pour le recharger. J.5. Désactiver les pseudos images Pour désactiver les pseudos images des chatteurs et les faire apparaitre sous leur nom pseudo simple (en gris), utilisez l'option : # chatserv.ini [settings] pseudo-icon = no Après avoir modifié le fichier chatserv.ini, cliquez sur le bouton Reload du serveur de chat pour le recharger. J.6. Geler les pseudos animés ou les images gif animées Pour geler tous les pseudos animés mais autoriser quand même les images gif animées en salle, utilisez l'option : # chatserv.ini [settings] animated-gifs = after Pour geler tous les pseudos animés et geler toutes les images gif animées, utilisez l'option : # chatserv.ini [settings] animated-gifs = no Après avoir modifié le fichier chatserv.ini, cliquez sur le bouton Reload du serveur de chat pour le recharger. J.7. Changer les messages systèmes du serveur Pour modifier les messages système du serveur, ajouter les options suivantes dans chatserv.ini : [system-message] 0 = s'est joint à la conversation. 1 = s'est jointe à la conversation. 2 = a quitté la conversation. 3 = a quitté la conversation. 4 = a été déconnecté. 5 = a été déconnectée. 6 = est parti. 7 = est partie. 8 = est revenu. 9 = est revenue. 10 = prend son toc. 11 = prend son toc. 12 = dépose son toc. 13 = dépose son toc. 14 = parle au (mic). 15 = parle au (mic). 16 = (inutilisé) 17 = Hôte 18 = exclu 19 = : Pour supprimer l'un des messages (0 à 15 uniquement), il faut indiquer un texte vide, par exemple: [system-message] 0= Après avoir modifié le fichier chatserv.ini, cliquez sur le bouton Reload du serveur de chat pour le recharger. J.8. créer une salle sans webcams Pour créer une salle sans webcams, utilisez l'option : # chatserv.ini [settings] cams = no ; fait disparaitre les boutons webcam et soleil du menu Après avoir modifié le fichier chatserv.ini, cliquez sur le bouton Reload du serveur de chat pour le recharger. J.9. cacher les compteurs sous les webcams Pour cacher les compteurs sous les webcams, utilisez l'option : # chatserv.ini [settings] webcam-counters = HIDE ; SHOW(montrer) ou HIDE(cacher) les compteurs sous les cams Après avoir modifié le fichier chatserv.ini, cliquez sur le bouton Reload du serveur de chat pour le recharger. J.10. cacher la barre noire entre les icones webcam et soleil Pour cacher la barre noire entre les icones webcam et soleil, utilisez l'option : # chatserv.ini [settings] webcam_sun_bar = HIDE soleil ; SHOW(montrer) ou HIDE(cacher) la barre entre les icones webcam et Après avoir modifié le fichier chatserv.ini, cliquez sur le bouton Reload du serveur de chat pour le recharger. K. Gérer un groupe associé à la salle de chat Le bouton permet de surfer sur un site internet associé à la salle. Description du groupe Le groupe contient un forum de messages, une page vers le chat, et une page Tools permettant de gérer les pages du menu. Le forum permet à tout le monde de poster des messages; il faut cependant être en salle de chat afin que le forum connaisse le pseudo de celui qui poste le message. En revanche, il n'est pas nécessaire d'être en salle de chat pour simplement lire le forum, à condition d'avoir ouvert le chat au monde extérieur avec l'option world-access = yes (voir plus loin). Si vous ne savez pas entrer dans le groupe, vérifiez que : 1) vous acceptez les cookies (le forum utilise un cookie) et 2) que dans Internet Explorer les options de sécurité "Soumettre les données de formulaire non codées" et "Active Scripting" sont à "Activer". Comment Configurer l'Internet Explorer pour le groupe Pour configurer l'Internet Explorer pour le groupe, démarrez L'Internet Explorer et cliquez sur : Enfin, TRES IMPORTANT : vérifiez que votre anti-virus ne bloque pas les Cookies ! Dans le menu Messages, les animateurs ayant un toc peuvent ajouter/renommer/supprimer des panneaux de messages ou effacer des messages et des discussions. L'auteur d'un message peut l'effacer. L'auteur d'une discussion peut effacer la discussion si celle-ci ne contient qu'un seul message. Dans Le menu Tools, les animateurs ayant un toc d'ajouter/modifier/renommer/masquer/effacer une page, ou de changer l'ordre des pages dans le menu (le groupe démarre toujours en affichant la première page tout en haut du menu). Le menu Tools permet aussi d'ajouter un séparateur afin de regrouper plusieurs entrées du menu. Renommer un séparateur crée un titre dans le menu. Finalement, le propriétaire ayant le serveur peut également placer des fichiers HTML (ou tout un site web) dans le sous-répertoire www/ du serveur et référencer ces pages dans le menu avec l'option Tools/"Ajouter Lien". Par exemple s'il a créé une page home.html dans www/ il doit spécifier home.html comme nom du lien. Par défaut, l'accès au groupe n'est donné qu'aux chatteurs qui se trouvent en salle, cela vous permet de garder un contrôle sur les personnes qui accèdent au site, et aussi d'éviter qu'une multitude de gens créent des liens vers votre site, ce qui ferait sérieusement "ramer" le chat. La vitesse d'accès des pages web se règle sur le même bouton que pour les webcams, donc si trop de monde consulte le site web et fait ramer les gens en salle, diminuez le réglage. Tout le groupe (messages, images, etc ...) est stocké dans le fichier group.db dans le répertoire du serveur. Afin d'éviter une perte de donnée importante en cas d'effacement accidentel ou intentionel par un animateur (hé oui ça arrive), ce fichier group.db est copié une fois par jour (de lundi à dimanche) vers les fichiers de backup (group.db.day_1.backup à group.db.day_7.backup). Le propriétaire de salle peut donc revenir jusqu'à une semaine en arrière en recopiant manuellement le fichier de backup choisi vers group.db. Attention: afin d'éviter une perte de donnée importante en cas de crash disque dur, il est recommandé de prendre régulièrement une copie du fichier group.db ou bien des fichiers de backup; pour prendre une copie de group.db il faut d'abord arrêter le serveur de chat car il verrouille le fichier. Vos pages HTML qui sont dans www ne font pas partie du groupe et doivent être sauvegardées aussi; ces pages ne sont changeables que par le propriétaire du PC. Le fichier group.db peut aussi être transféré d'un PC à l'autre lors d'un transfert de la salle d'un animateur à un autre. Paramètres du groupe Les paramètres optionnels suivants dans la section [group] de chatserv.ini permettent éventuellement de changer certaines options : Paramètre server Valeurs on, off Valeur par défaut on Fonction on=server internet actif, off=serveur internet inactif chat=normal group=désactivation de la salle de chat, ajout d'un bouton access chat,group,both chat à gauche de la liste des salles -> la salle de chat n'existe plus : en cliquant sur une ligne de la liste des salles, on rentre directement sur le groupe. both = ajout d'un bouton à droite de la liste des salles -> salle et groupe combinés : si on clique sur la ligne, on rentre en salle de chat, mais si on clique sur le bouton, on rentre directement sur le groupe sans passer en salle. yes, no database nom de fichier group.db nom du fichier database du groupe Nom de dossier nom du dossier où la database du groupe est sauvegardée chaque jour, doit se terminer par \ Exemple: f:\chat_backup\ databasebackup-dir no no=normal, yes=démarrage internet explorer en plein écran fullscreen www répertoire c:\chatserv\ chemin vers le répertoire www www\ show-title yes,no yes banner nom de fichier image (.gif,..) menu-width 0 à 2000 120 largeur du menu (en points) (0 = supprimer le menu) menu-text-color 000000 à FFFFFF 666699 couleur d'écriture du menu menu-bordercolor 000000 à FFFFFF ECF1F6 couleur de fond du menu menu-hovercolor 000000 à FFFFFF CC6600 couleur quand on passe la souris sur le menu menu-titlecolor 000000 à FFFFFF F17827 couleur des séparateurs renommés du menu yes=afficher le titre, no=pas afficher afficher l'image (max 900 x 21) comme titre du groupe world-access yes, no no yes = groupe consultable en dehors du chat, no = groupe accessible uniquement par le chat. remarque1: un groupe privé ou avec mot de passe a toujours la valeur 'no'. remarque2: pour modifier le groupe ou écrire sur le forum, il faut toujours passer par le chat. remarque3: le groupe est TOUJOURS accessible depuis le PC où tourne le serveur (ip 127.0.0.1) maxdiscussions 10 à 100 28 nombre de discussions affichés par page. max-messages 3 à 100 10 nombre de messages (d'une discussion) affichés par page. messagebackgroundcolor FFFFFF couleur de fond par défaut pour les nouveaux messages messagebackgroundimage 000000 à FFFFFF 0000000000.jpg image de fond par défaut pour les nouveaux messages. Pour spécifier une image, cliquez Propriétés (bouton droit souris) d'une image se trouvant déjà sur le groupe, et recopiez son nom (qui doit avoir 10 chiffres et l'extension .jpg) dans le paramètre. Exemples: pour éteindre le serveur web, ajouter dans chatserv.ini : [group] server = off serveur # désactiver le pour enlever le titre et changer la couleur du menu en blanc : [group] show-title = no # pas de titre menu-border = FFFFFF # bord menu blanc Si vous modifiez le fichier chatserv.ini, cliquez sur le bouton Reload du serveur de chat afin que votre changement soit pris en compte. Il est possible de remplacer les fichiers par défaut group.html et/ou group.css par vos propres fichiers. Il suffit pour cela de déposer ces fichiers dans le sous-répertoire www du serveur. N'oubliez cependant pas d'effacer le cache d'Internet Explorer sinon les anciennes copies seront conservées. Si vous avez créé votre propre fichier group.html, vous pouvez utiliser les variables suivantes dans le code html : $START-PAGE$ est remplacé par un lien vers la 1ère page du menu, $MENU-WIDTH$ est remplacé par la largeur du menu. Accès depuis l'extérieur du chat Par défaut, le site du groupe n'est accessible que depuis la salle de chat. Pour permettre une consultation depuis l'extérieur, mettre l'option world-access à yes. L'URL du groupe est indiquée dans la barre d'adresse d'internet explorer. Exemple: http://62.197.65.220:12005/group.html Cette URL peut être simplifiée de plusieurs façons : 1) le suffixe /group.html est optionnel 2) le suffixe port (ici :12005) peut être enlevé à condition de changer l'installation de votre serveur pour qu'il utilise le port 80 (c'est le numéro de port standard réservé pour le protocole HTTP), voir à cet effet le chapitre H. "comment créer plusieurs salles". donc il reste : http://62.197.65.220 L'IP change normalement toutes les 24 heures; afin de garder une URL qui ne change pas, vous devez réserver un nom DNS chez un fournisseur, par exemple : http://www.no-ip.com/ qui vous propose cela gratuitement, mais attention cela est réservé aux spécialistes; cela implique notamment d'installer un logiciel sur le PC qui prévient le fournisseur chaque fois que votre PC change d'IP pour que le nom DNS soit mis à jour. bref, au final, votre site peut avoir un nom tel que : http://newchatrooms.zapto.org Ajouter un compteur de visites sur le groupe Pour ajouter un compteur du nombre de visiteurs, créez une page (Tools/Ajouter Page), cliquez sur le bouton "C" de la barre d'outils, et choisissez : numéro du compteur (vous pouvez créer plusieurs compteurs) Couleur d'écriture couleur des chiffres Couleur Bord couleur du fond nb chiffres hauteur (en points) • Le compteur compte tous les accès à la page, mais sans compter deux accès successifs par le même IP. • Si la couleur d'écriture est identique à la couleur de fond, le fond est transparent. L. Style de salle "3D" Pour créer une salle 3D, vous devez créer un fichier world.txt décrivant tous les objets de votre monde. Ce fichier doit être placé dans le répertoire du serveur de chat. Si vous changez votre fichier, vous devez arrêter et redémarrer le serveur de chat. Voici un exemple de fichier : ; world.txt ; sol .1 0 65535 32768 .2 65535 65535 32768 .3 65535 0 32768 .4 0 0 32768 / 1 2 3 4 {sable1} ; mur .5 32368 33368 33280 .6 32886 33368 33280 .7 32886 33368 32768 .8 32368 33368 32768 / 5 6 7 8 {welcom} bt L'exemple ci-dessus décrit 2 types d'objets : . des coordonnées en 3 dimensions (x,y,z) . des polygones habillés par une texture d'image *** Pour créer votre fichier world.txt, vous avez 2 solutions : a) utiliser un logiciel d'édition 3D (voir au chapitre M ci-dessous). b) créer votre fichier world.txt à la main. Pour cela, prenez une feuille de papier et commencez par dessiner une carte vue d'en haut de votre monde (comme une photo satellite). Dessinez des points sur la carte, numérotez-les (en commençant à 1), puis reliez-les par des lignes. Exemple: un sol carré qui couvre toute la carte. Votre carte a des coordonnées qui vont de -32768 à +32767. Les 4 points ci-dessus ont donc les (x,y) suivants : point 1 : point 2 : point 3 : point 4 : (-32768, +32767) (+32767, +32767) (+32767, -32768) (-32768, -32768) La 3ème coordonnée (z) indique l'altitude à laquelle se trouve le point. Sur le chat, le sol se trouve à l'altitude 0. Pour définir 4 points au niveau du sol, nous aurons donc : ; sol .1 -32768 32767 .2 32767 32767 .3 32767 -32768 .4 -32768 -32768 0 0 0 0 Nous devons maintenant relier les 4 points et choisir une texture d'image pour la colorier; cela se fait par la commande suivante : / 1 2 3 4 {sable1} La texture doit être définie dans chatserv.ini comme pour une icone image. remarque l'ordre des points (1,2,3,4) est important ! En effet, les points doivent être énumérés dans l'ordre des aiguilles d'une horloge pour que la texture soit visible à l'avant. Si vous voulez définir un plafond de manière analogue au sol mais à une hauteur Z de 10400, vous devez définir les points dans l'ordre inverse (12,11,10,9), sinon votre plafond restera invisible et ne sera visible que pour les oiseaux ! Exemple: ; plafond .9 -32768 32767 .10 32767 32767 .11 32767 -32768 .12 -32768 -32768 512 512 512 512 / 12 11 10 9 {plafon} Une autre solution pour ne pas être embêté avec l'ordre des points (si toutefois vous souhaitez utiliser la même texture des 2 côtés) c'est de mettre l'option b (both) qui a l'effet de rendre la texture visible des 2 côtés. Exemple: / 12 11 10 9 {plafon} b Vous pouvez définir des sols et des plafonds; ils sont toujours plats, donc tous leurs points ont le même z. Vous pouvez aussi définir des murs verticaux de manière analogue : Exemple: ; mur .5 -300 .6 200 .7 200 .8 -300 -400 512 -400 512 -400 0 -400 0 / 5 6 7 8 {welcom} bt Pour un mur classique, on voit 2 points avec un Z de 0 (le bas du mur) et 2 autre points avec un Z de 512 (le haut du mur). Ici, le mur va de (-300,-400) jusque (200,-400); on remarque que le Y ne change pas, c'est donc un mur qui va du nord au sud sur la carte. Voici la liste des limitations du moteur 3D et quelques explications complémentaires : Limitations des Points 1. les coordonnées (X,Y,Z) varient de -32768 à +32767. 2. la coordonnée (Z) indique l'altitude (le sol est à 0, l'oeil du chatteur à 141, et un acteur (chatteur) peut passer dans un couloir au plafond à 282). Limitations des Polygones 1. Dans la définition d'un polygone tel que : / 1 2 3 4 {sable1} le nombre de points doit être compris entre 3 (triangle) et 8 (octogone); exemple: / 1 2 3 {triang} 2. le polygone formé en reliant les points dans l'ordre doit être : • plat (tous les points doivent se situer sur un même plan), • et convexe (aucun angle interne ne doit dépasser 180 degrés) si ces règles ne sont pas respectées, le résultat obtenu aura un défaut ! (à noter qu'un triangle est, par nature, toujours plat et convexe) 3. le polygone doit être horizontal (sol, plafond) ou vertical (mur); d'autres formes (par exemple un toit penché) sont possibles, elles ralentissent cependant le chat si elles ont une surface importante. 4. les points d'un polygone doivent être énumérés dans l'ordre des aiguilles d'une horloge pour que la texture soit visible à l'avant. Limitations des Textures 1. les dimensions maximales d'une image texture sont de 2048 x 2048, la taille de fichier image (jpg, gif, bmp, pcx, png) définie dans chatserv.ini est limitée à 127K. Les GIFs animées et les PNG semi-transparentes sont supportés. 2. Les options suivantes existent : exemple: / 1 2 3 4 {sable1} btns Option b (BOTH) : la texture est visible des 2 côtés (devant et derrière), peu importe l'ordre des points. Option t (TRANSPARENT) : la couleur noire de la texture est utilisée comme couleur transparente. Option n (NO COLLISION) : les personnages peuvent traverser le polygone. Option s (STRETCH) : la texture est étirée sur toute la surface du polygone. Option d (DOUBLE) : la texture est appliquée en double-précision (les points sont plus fins). Ne fonctionne pas avec STRETCH. Options pour objets 3D seulement: Option M (MERGE) : fusionne plusieurs textures sur un objet presque plat (pas compatible avec option STRETCH). Il faut spécifier l'option M sur toutes les textures que vous voulez fusionner. La première texture avec M est la texture de base sur laquelle la texture sera appliquée normalement. Sur les textures suivantes avec M et de même nom de texture, les textures seront appliquées avec l'orientation et le décalage de la texture de base, ce qui peut étirer la texture en cas de pente importante. Option V (VELOCITY) : permet de faire défiler la texture sur l'objet à une certaine vitesse avec la commande object_texture_velocity. 3. Si vous n'avez pas utilisé l'option 's' et que la surface du polygone est plus grande que la texture, alors la texture sera répétée plusieurs fois pour couvrir l'entiereté de la surface du polygone; mais attention, le moteur 3D impose dans ce cas que les dimensions de la texture soient des puissances de 2 (par exemple 128 x 256) sinon le moteur 3D rajoutera un fond blanc (ou transparent si option t) pour remplir le trou. cela veut dire que seules les dimensions 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024 ou 2048 sont possibles. 4. plusieurs textures (jusqu'à 3) peuvent être spécifiées, elles alternent alors irrégulièrement avec une vitesse de 0.5 sec. exemple: / 1 2 3 4 {sable1} {sable2} {sable3} bt 5. Comment changer son personnage Un personnage entrant en salle apparait en (0,0,0) avec une direction 0 (regardant au nord). L'oeil est à (0,0,141). Par défaut, vous vous promenez dans le monde 3D avec une boîte munie à l'avant d'un écran webcam. Chaque chatteur peut également créer son propre personnage 3D composé de plusieurs polygones en créant un fichier actor.txt dans le répertoire du chat; Si vous changez le fichier, vous devez arrêter et redémarrer le chat. Exemple: ; actor.txt .1 .2 .3 .4 .5 .6 159 0 119 -160 0 119 -160 0 -141 159 0 -141 0 -106 -141 0 -106 -13 / 1 2 3 4 {webcam} {soleil} {toquer} b / 5 3 2 6 {floor1} b / 4 5 6 1 {floor1} b Votre personnage dispose d'un espace (X,Y) de -160 à +160 et (Z) de -141 à +141 que vous pouvez remplir avec des polygones; dans l'exemple ci-dessus, on a définit 6 points et 3 polygones; l'espace(X,Y,Z) de l'actor n'est pas limité pour le bot. La texture {webcam} est spéciale : c'est une texture qui ne doit pas être définie dans chat.ini car elle est créée dynamiquement et remplie avec l'image webcam du chatteur; l'option t (transparent) rend toute couleur noire transparente. Dans le 1er polygone, on a spécifié 3 textures : la 1ère {webcam} est celle qui s'affiche par défaut, la 2ème {soleil} est celle qui s'affiche quand le chatteur se met en tasse, la 3ème {toquer} est celle qui s'affiche quand le chatteur prend son toc; Le propriétaire de salle peut aussi modifier le personnage par défaut en plaçant un fichier actor.txt dans le répertoire du serveur. Il peut également placer des fichiers différents par genre de chatteur : actor.m.txt, actor.f.txt et actor.c.txt Si tous les deux (chat client et serveur) ont placé un fichier actor, alors le chat a priorité sur le serveur. La fonction script b = actor_customized (session_key); permet de tester si un chatteur a changé son actor. Cette fonction renvoie 1 si le chatteur a changé son actor, ou 0 si c'est un actor par défaut ou choisi par le serveur. Cela permet au bot de ne pas attacher d'objets aux actors customisés par le client. Une petite note technique : la fonction actor_customized donne une erreur si on l'appelle en réponse à une action 128, il faut utiliser l'action 228 (arrivée en salle d'un actor) à la place. Comment déplacer son personnage (bot) à l'aide d'un script Les commandes suivantes ont été ajoutées au langage script pour supporter le monde 3D : 1. Les fonctions suivantes : bot_x(), bot_y() et bot_z() permettent de connaitre la position x, y et z de votre bot. Exemple: if (bot_x() > 30000) // on arrive en fin de terrain là ! 2. La fonction : bot_dir() permet de connaitre la direction de votre bot, de 0 à 359 : 0 = nord (vers le haut de la carte) 90 = est (vers la droite) 180 = sud (vers le bas) 270 = ouest (vers la gauche) 3. les procédures : turn (dir); avec dir entre -360 et +360 permet de changer la direction de votre bot move (pas); avec pas entre -65535 et +65535 permet d'avancer ou reculer le bot lift (altitude); permet de changer l'altitude du bot avec altitude entre -32768 .. +32767 Ces procédure vous permettent de faire avancer le bot tout seul. 4. les procédures : teleport (session_key, x, y, z, avec dir entre -360 et +360 dir); permet au bot de déplacer un joueur teleport (session_key, x, y, z, port = port du serveur dir, port); permet au bot de téléporter un joueur dans une autre salle sur le même PC ou routeur teleport (session_key, x, y, z, ip$ = adresse ip ou nom DNS dir, port, ip$); permet au bot de téléporter un joueur dans une autre salle set_gravity (session_key, gravity); avec gravity entre -255 et +255 (10=s'envole, 0=flotte en l'air, 10=tombe normalement) permet au bot de modifier l'attraction du sol give_ammo (session_key, ammo); avec ammo entre -100 et +100 permet au bot de donner/enlever des munitions give_health (session_key, health); avec health entre -100 et +100 permet au bot de donner/enlever des points de vie Ces procédure permettent à un bot avec toc de faire bouger un joueur, de lui donner des munitions ou des points de vie. En outre, cliquer sur un actor génère une action 912 contenant dans line$ le session_key du chatter cliqué, en 10 chiffres. 5. Vous pouvez créer une procédure event_3D qui sera appelée chaque fois qu'un chatteur change de position; cela permet par exemple au bot de suivre un chatteur, de se placer devant lui, éventuellement de le toquer s'il se positionne là où il ne peut pas; Exemple: proc event_3D (session_key, x, y, z, dir) { if (x > 16000) kick (session_key, "interdit d'aller là !"); } 6. finalement, voici un exemple de script.txt qui fait avancer le personnage: var dir; proc timer () { if (dir == 0) turn (0); else turn (180); move (10); if (bot_y() > 30000) dir = 1; else if (bot_y() < -30000) dir = 0; set_timer (1); } Comment définir une skybox Une skybox est un grand cube entourant le monde 3D et qui permet de spécifier un décor de fond. Pour chacune des faces du cube vous pouvez spécifier une image (de max 127K) par la commande script suivante : set_skybox (n, "image.jpg"); // avec n: 0=bas, 1=avant, 2=droite, 3=arriere, 4=gauche, 5=haut Comment créer des objets 3D Le bot peut créer des objets 3D que vous pouvez faire bouger et réagir quand un chatteur clique dessus. Un chatteur peut se placer sur un objet : si l'objet se déplace, le chatteur se déplacera avec. Un objet peut servir d'obstacle (mur, grille, cage) car le chatteur ne peut pas passer à travers (sauf si option n). Pour créer un objet 3D, vous devez placer dans le répertoire du bot un fichier OBJECTS.TXT qui contiendra la définition de tous vos objets. Ici on a créé un oiseau et une porte : # OBJECTS.TXT [oiseau] ; plan horizontal .1 -141 307 0 .2 141 307 0 .3 141 0 0 .4 -141 0 0 / 1 2 3 4 {bird01} btn [porte1] ; plan vertical .1 -276 0 512 .2 276 0 512 .3 276 0 0 .4 -276 0 0 / 1 2 3 4 {wood01} b Pour permettre une rotation correcte, vos objets doivent être centrés en (0,0,0) et orientés au nord. Les coordonnées (X,Y,Z) sont limitées entre -32768 et +32767. Pour faire apparaitre et bouger vos objets, vous devez écrire un script tel que celui-ci et le placer dans le répertoire du bot : // script.txt : exemple script pour objet 3D oiseau proc timer () { object_shape (1, "oiseau"); object_move (1, 0, 0, 12000); // position initiale object_move (1, 0, 10000, 12000, 0, 0, 0, 10000, 1); // position finale } Les commandes script suivantes sont définies pour les objets 3D : object_shape (nr, "oiseau"); object_shape (nr, "oiseau", "OBJECTS.TXT"); • choisit la forme "oiseau" (voir OBJECTS.TXT) pour l'objet numéro nr. • nr indique le numéro d'objet vous pouvez choisir entre 0 et 65535, vous pouvez donc créer jusqu'à 65536 objets (par script et par bot). • un objet peut changer de forme autant de fois que souhaité. • si on ne spécifie pas de fichier, c'est OBJECTS.TXT par défaut. object_move (nr, x, y[, z[, direction[, hauteur[, transversal [, durée[, répéter]]]]]]); • positionne un objet en coordonnée (x,y,z) avec une orientation (direction, hauteur, transversal). • les crochets indiquent que la plupart des paramètres sont optionnels, donc par exemple pour modifier uniquement le (X,Y) de l'objet numéro 1 vous pouvez écrire simplement: object_move (1, 100, 200); • direction : direction (angle 0 à 360, 0 = au nord). hauteur : lever le nez (angle 0 à 360, 0 = normal). transversal : pencher la tête (angle 0 à 360, 0 = normal). • durée : temps que prendra le mouvement de l'objet vers sa nouvelle position, en 1/1000 de secondes (0 = immédiat, 1000 = 1 seconde, 600000 = 600 secondes). • répéter : (0 = ne pas répéter le mouvement, 1 = quand l'objet est arrivé à sa nouvelle position, le faire revenir au début et répéter le mouvement). • Des valeurs -18000 à +18000 sont autorisées pour direction, hauteur et transversal afin de pouvoir faire plusieurs "tours" de 360 degrés au cours du déplacement de l'objet. object_face_actor (nr, option); • oriente automatiquement l'objet afin qu'il s'affiche toujours face au chatteur ! • C'est très utile si vous avez un objet 'plat' du genre 'attaquant doom' ou 'boule de feu' qui doivent toujours faire face au joueur pour ne pas qu'on voie qu'ils n'ont pas d'épaisseur. • Chaque chatteur verra donc l'objet dans une orientation différente. • option 1 = orienter toujours l'angle direction face au chatteur, 2 = orienter toujours l'angle direction et l'angle hauteur face au chatteur, 0 = désactiver l'orientation automatique. object_face_to (nr, x, y [, z]); • oriente l'objet pour qu'il 'regarde' le point (x,y,z). • Cette manière d'orienter l'objet est plus simple que de calculer les angles dans la commande object_move. • Cette commande désactive aussi l'orientation automatique (voir object_face_actor). • Si on ne spécifie que les coordonnées x et y, uniquement l'angle 'direction' est changé, si on spécifie aussi la coordonnée z l'angle hauteur est modifié aussi. object_clickable (nr, option); • rend l'objet 'cliquable', c'est-à-dire que si un chatteur clique dessus avec la souris un évènement (action 915) sera envoyée au script qui a créé l'objet. • Cette action contiendra dans line$ le numéro de l'objet, en 1 à 6 chiffres. • option : 1 = rend l'objet cliquable, 0 = ne rend plus l'objet cliquable object_soap (nr, gliss); • rend l'objet glissant, c'est-à-dire que s'il est penché et qu'un chatteur est dessus, le chatteur va glisser et risque de tomber de l'objet. • gliss : 0 à 255 : 0 = pas de glisse (le chatteur colle à l'objet), 10 = glisse normale, 255 = forte glisse. • la force de glisse dépend aussi de la gravité (voir set_gravity) object_scale (nr, scale_x, scale_y, scale_z); • agrandit ou rétrécit l'objet. • scale : entre 1 et 65536 : 128 = taille moitié, 256 = taille normale, 512 = taille double. object_texture_velocity (nr, velocity_u, velocity_v); • permet de faire défiler les textures ayant l'option V sur l'objet à une certaine vitesse • velocity_u, velocity_v : entre -2047 et +2047 en pixels par seconde object_skybox (nr, on_off); • crée un objet de type skybox dont la position est automatiquement centrée sur les coordonnées de chaque actor, ce qui permet de créer un objet cube avec un décor à distance infinie. • on_off : 0 = objet normal, 1 = objet skybox object_attach_actor (nr, session_key, mode); • permet d'attacher un objet à un actor. L'objet va alors suivre tous les mouvements de l'actor. • 'mode' peut avoir les valeurs suivantes : 0 = détacher (redevient un objet normal) 1 = attacher à l'écran (seul le chatteur ayant la session_key voit l'objet) 2 = attacher à l'actor (tous les chatteurs voyent l'objet sauf celui qui a la session_key) 3 = 1 & 2 combinés. object_attach_object (nr_objet_enfant, nr_objet_parent); • permet d'attacher un objet (enfant) à un autre object (parent). L'objet (enfant) va alors suivre tous les mouvements de l'objet (parent). • Cela permet de réaliser des objets en plusieurs parties qui peuvent chacune effectuer des déplacements, rotations et scaling tout en restant attaché (tronc, bras, main, doigt). • attention: le numéro de l'objet enfant doit être plus grand que le numéro de l'objet parent. object_delete (nr); • efface l'objet (il va donc disparaitre). object_sound (nr, "{son001}" [,distance]); object_sound (nr, "son.wav" [,distance]); object_sound (nr, "son.wav"); • permet à l'objet nr d'émettre un son. Le paramètre 'distance' permet de spécifier une distance en points. Les chatteurs éloignés de plus de 'distance' points de l'objet n'entendront pas le son. Comment définir un arrière-plan Il y a 3 manières de définir un arrière-plan au monde 3D : 1. le paramètre suivant de chatserv.ini permet de choisir une couleur de fond : [3D] sky_color = 102,190,253 2. la commande script suivante permet de modifier la couleur de fond dynamiquement : set_sky_color (r,g,b); // change la couleur du ciel en 3D 3. Créer une skybox : une skybox est un grand cube entourant le monde 3D et qui permet de spécifier des images en décor de fond. • Créez un object 3D en forme de cube (-32768 à 32767 par côté), • multipliez sa taille par deux avec object_scale afin d'obtenir un grand cube de 131072 de côté, • centrez-le sur chaque actor avec la commande object_skybox pour que l'acteur reste toujours au centre du cube. Autres Options On peut figer les textures GIF animées dans votre chat client, par : # chat.ini [3D] animated-gifs = no ; geler les GIFs animés dans les textures 3D (pas pour le {board0}) M. Logiciel d'édition 3D Pour créer votre fichier world.txt automatiquement : 1) cliquer ici pour télécharger l'éditeur 3D (version 23). Attention: cliquez sur Enregistrer et pas sur Exécuter ! Téléchargez le logiciel sur votre disque dur, ensuite copiez-le dans le répertoire du serveur de chat (normalement c:\chatserv) et enfin démarrez-le en cliquant dessus. 2) commencez par dessiner un sol Pour cela, cliquez sur "Texture" pour choisir une texture, ensuite cliquez sur "Mode" pour choisir le mode 'SOL', puis cliquez sur la carte pour dessiner un grand rectangle autour du signe violet et du triangle rouge (le triangle rouge indique votre position de départ). Si vous vous trompez, appuyez sur la touche Escape (Echap) pour annuler le dernier point cliqué. Pour fermer votre rectangle, recliquez sur le 1er point de départ. Votre rectangle devrait alors se colorer en bleu. 3) vous voyez un petit cercle bleu au centre de la carte. Si vous cliquez dessus, cela va sélectionner votre sol et afficher divers attributs changeables (hauteur du sol, texture, options T=Transparent, B=Both, N=No_Collision, S=Stretch). Un bouton 'Effacer' permet aussi d'effacer le sol. 4) pour dessiner des murs, choisissez une texture (bouton Texture), ensuite choisissez le mode 'MUR', cliquez ensuite sur la carte pour dessiner un ou plusieurs murs d'une pièce dans le sens des aiguilles d'une montre ! (en effet, chaque mur a 2 côtés et chaque côté a sa texture et sa hauteur). Pour commencer un nouveau mur, cliquez sur la touche Escape (Echap). Pour effacer un mur, cliquez sur son cercle vert pour le sélecter puis sur le bouton 'Effacer'. Vous pouvez aussi changer sa texture ou sa hauteur. 5) le mode PLAFOND sert à créer un plafond de la même manière que le sol. Pour les points du plafond, il est recommendé de prendre des points existants de mur ou de sol, car sinon les points resteront invisibles (pour les afficher, vous devrez changer les altitudes minimum et maximum sur l'indicateur en haut à gauche afin que le minimum soit égal à la hauteur du plafond). 6) le mode EDITION sert à déplacer des points ou changer des attributs sans rien créer de nouveau. Un message "Error: angle < 180°" apparait si vous créez un sol ou plafond comportant un angle supérieur à 180°, ce qui est interdit; déplacez alors le point pour faire disparaitre le message. 7) pour créer un 2ème étage, changez en haut à gauche les altitudes maximum à 1024 puis minimum à 512. Vous ne verrez alors que les objets compris entre ces 2 limites. De manière similaire, on peut créer un escalier. 8) cliquez et déplacer la souris sur la fenêtre en haut à droite pour naviguer dans votre nouveau monde; tout objet créé ou option changée va y apparaitre en direct. Si vous changez votre altitude minimum (indicateur en haut à gauche), votre personnage va aller à cette altitude. 9) cliquez sur la croix en haut à droite pour sortir de l'éditeur, ce qui va automatiquement sauver votre monde dans un fichier world.txt N. Salles Irc L'Irc (Internet Relay Chat) est un protocole de chat déjà assez ancien, mais encore utilisé par beaucoup de sites de chat. Si vous possédez une salle de chat sur un serveur Irc, il est possible d'ouvrir une salle sur les Nouvelles Salles de Chat qui va jouer le rôle de passerelle et envoyer les chatteurs d'ici sur votre salle Irc. Evidemment, les fonctionnalités seront grandement réduites : pas de bannières, pas de couleur d'écriture, pas de profils, pas de webcam ni micro. On peut uniquement écrire et parler en privé. De plus, vous devez vous attendre à avoir des problèmes techniques vu que le protocole Irc utilisé varie un peu d'un serveur à l'autre. Il est possible aussi qu'on vous bloque sur certains serveurs parce qu'il faut un mot de passe ou une option adulte. Nous ne vous proposons donc ceci qu'à titre expérimental. Pour ouvrir une passerelle vers un serveur Irc, ajoutez ceci dans chatserv.ini : [irc] server = www.coolsmile.net ; nom du serveur Irc channel = ##ma-salle ; nom de la salle (toujours mettre ## au début !) port = 6667 ; port du serveur Irc nick_suffix = _s ; suffixe pseudo (optionnel) Le nick_suffix est un suffixe qui sera rajouté à la fin des pseudos des chatteurs qui arrivent par la passerelle, cela vous permet de les distinguer des autres. Ce paramètre est optionnel. Dans les salles Irc, il est d'usage quand on s'adresse à quelqu'un (par exemple Loulou), de commencer sa phrase par "Loulou>". Pour obtenir cet effet, il vous suffit de sélectionner le chatteur à qui vous voulez parler avant de taper votre phrase. Pour faire un PV, vous devez enclencher le téléphone jaune sur le chatteur pendant que vous lui parlez : toutes les phrases que vous envoyez ne seront alors envoyées qu'à lui (ou elle). Méfiez-vous quand même parce que contrairement au chat ici, les PVs sont enregistrés et même parfois monitorés; vous risquez de vous faire jeter si vous faites de la publicité ou donnez votre msn. O. Accès par Ftp Il est possible d'accéder aux fichiers de votre serveur de chat à distance, à l'aide du protocole FTP (File Transfer Protocol). Pour cela, rajouter les lignes suivantes dans chatserv.ini : # chatserv.ini [ftp] port = 21 ; numéro de port pour l'accès ftp user = votre_nom_utilisateur pass = votre_mot_de_passe ; au moins 8 caractères ! Utilisez un nom d'utilisateur et un mot de passe compliqué pour éviter le piratage de votre salle ! A l'aide d'un outil Ftp (installé en standard sur n'importe quel ordinateur), vous pouvez alors lire et écrire tous les fichiers qui se trouvent dans le répertoire du serveur de chat (mais pas ailleurs sur le PC). Attention: pour que cela fonctionne, vous devez ouvrir le port 21 sur votre parefeu et routeur. De plus, sur le PC d'où vous appelez, un port arbitraire est ouvert par le protocole Ftp. Il est donc souvent nécessaire d'y ouvrir tous les ports (cherchez la documentation ftp sur internet pour plus de détails). ==> *** Guide Chat *** <== ==> *** Guide Bot *** <== ==> *** Guide Salle s *** <==