Phasor
Publié : 03 Juin 2011, 14:29
I. Généralités
II. Téléchargements
III. Installation
IV. Configuration
I. Généralités
Phasor est un logiciel complémentaire aux serveurs de Halo 1 Combat Evolved PC.
Ce logiciel permet de mettre des autos-messages, d'obtenir les journaux du tchats des joueurs, de kicker automatiquement les joueurs absents (AFK/SOK), de mettre en place un système de vote pour passer certaines cartes et modes de jeu, et plein d'autres choses encore.
Phasor est un logiciel très complet pour les serveurs de Halo. Cependant, ce tutoriel explique qu'une infime partie de l'utilisation possible de Phasor (l'installation et la configuration des "autos-messages").
Ce tutoriel pourra être complété par l’expérience des membres du forum qui souhaitent partager leurs configurations. De plus, une ressource documentaire est présente dans l'archive, ainsi qu'un forum à l'adresse suivante : http://phasor.proboards.com/index.cgi
Je tiens également à préciser que je ne fais pas le support de Phasor, mais je pourrais éventuellement essayer de vous apporter de l'aide .
II. Téléchargements
- Phasor version 01.00.03.104 :
http://haloapps.wordpress.com/2011/03/0 ... 00-03-104/
Une nouvelle version est peut-être disponible sur le site officiel :
HaloApps.
Important : Le serveur doit être en version v1.09 pour que Phasor puisse fonctionner.
- Patch Serveur dédié v1.09 :
Télécharger
III. Installation
- Fermer le serveur de Halo si celui-ci est en cours d'exécution,
- Décompresser l'archive après avoir l'avoir téléchargée, - Dans le répertoire "Phasor", copier les fichiers "aliasViewer.exe", "Phasor.dll", "RConAccessEditor.exe" et "strings.dll", - Coller ces fichiers dans le répertoire d'installation du serveur de Halo (répertoire par défaut dans : "C:\Program Files\Microsoft Games\Halo Server"),
Attention : un fichier "strings.dll" existe déjà dans le répertoire d'installation du serveur. Il est conseillé de renommer ce fichier pour en faire une sauvegarde avant de l'écraser.
Dans le cas où vous auriez malencontreusement remplacé le fichier "strings.dll" et que vous souhaitez remettre le fichier d'origine, vous pouvez le télécharger sur notre site : Télécharger. - Dans le répertoire "Phasor", copier le dossier "scripts", puis coller le dans le répertoire "My Game\Halo" (répertoire par défaut présent dans "Mes documents") - Pour terminer l’installation, dans le fichier de configuration "init.txt", il suffit de placer à chaque fin de ligne "sv_mapcycle_add" le texte "AutomatedMessages", ce qui donne par exemple :
Code : Tout sélectionner
sv_mapcycle_add bloodgulch CTF AutomatedMessages
D'autres scripts peuvent également être appelés. Pour cela, il suffit de remplacer "AutoMessage" par "Infection", ce qui donnerait :
Code : Tout sélectionner
sv_mapcycle_add bloodgulch CTF Infection
Code : Tout sélectionner
sv_mapcycle_add bloodgulch CTF AutomatedMessages Infection
Code : Tout sélectionner
sv_mapcycle_add bloodgulch CTF AutomatedMessages Infection
sv_mapcycle_add ratrace Slayer Infection
sv_mapcycle_add deathisland CTF Slayer AutomatedMessages
Cependant, la configuration du script AutomatedMessage est par défaut et je vous invite parcourir la catégorie Configuration ci-après
Serveur en exécution sans Phasor : Serveur avec Phasor (ceci montre que Phasor est opérationnel sur votre serveur) : Information sur les logs :
Lors de la première exécution du serveur avec Phasor, le logiciel créer automatiquement un répertoire "logs" dans "My Games\Halo". Ce répertoire contient 3 fichiers :
- Phasors_Events.log : journal concernant les événements du logiciel Phasor (exécution, (re)chargement des scripts, plantage ...),
- Phasor_GameLog.log : journal comprenant tous les événements des parties (lorsqu'un joueurs arrive et quitte le serveur, les tchats (publique et équipe), tel joueur à tué tel joueur et les autos messages diffusés), ce fichier contient également les hashkey des joueurs (hashkey : longue chaine de caractère alphanumérique correspondant à un identifiant unique issue de la clé CD du joueur),
- Phasor_RConLog.log : journal comprenant la liste des commandes RCon utilisées, avec le nom du joueur, et éventuellement son hashkey si le joueur ne fait pas partit de la liste des admins.
IV. Configuration :
IV.a Préambule
IV.b Automated Messages
IV.c Message quand un nouveau joueur arrive
IV.d Commandes
IV.a Préambule
Les scripts de Phasor se trouvent dans le répertoire "My Games\Halo\scripts". Ces scripts ont une extension .lua et sont facilement éditable avec le Bloc-Notes (notepad).
Ces fichiers étant des scripts, ils comportent une syntaxe particulière, je vous invite à télécharger Notepad ++ pour pouvoir éditer aisément ces fichiers .
Pour ouvrir un fichier, vous pouvez procéder de la même manière avec le Bloc-Notes ou avec le logiciel Notepad++.
1ère méthode :
- Ouvrer le logiciel (Bloc-Notes ou Notepad++),
- Se rendre dans le répertoire ou se trouvent les scripts,
- Effectuer un glisser-déposer du script à éditer dans le logiciel.
2ème méthode (éditer le script avec un logiciel par défaut) :
- Se rendre dans le répertoire ou se trouvent les scripts,
- Effectuer un clic droit sur le script,
- Cliquer sur "Ouvrir",
- Cliquer sur "Sélectionner un programme dans la liste des programmes installés, cliquer sur "OK"
- Vous pouvez avoir "Bloc-Notes" dans la liste des "Programmes recommandés", si vous souhaitez utiliser ce logiciel par défaut, sélectionner "Bloc-Note" et cliquer sur "OK"
- Sinon, cliquer sur "Autres programmes", sélectionner "Notepad++ : a free (GNU) source code editor" et cliquer sur "OK".
3ème méthode (Notepad++) :
- Se rendre dans le répertoire ou se trouvent les scripts,
- Effectuer un clic droit sur le script,
- Cliquer sur "Edit With Notepad++".
IV.b Automated Messages
Configurer et éditer le message :
- Ouvrir le fichier "AutomatedMessages.lua".
- "message_table" correspond à un tableau contenant le message à afficher à intervalle régulier.
- Éditer à votre guise le texte placé entre incollade.
Attention : veillez à respecter l'utilisation des guillemets pour ouvrir et fermer une ligne de texte.
N.B. Pour passer à la ligne suivante, il suffit de placer une virgule à la fin de la chaine de texte. Il n'est pas nécessaire de placer une virgule à la fin du paragraphe.
N.B. Certains caractères (notamment des accents) ne sont peut être pas supportés. Effectuer des tests.
Exemple :
Code : Tout sélectionner
message_table = {
"Coucou a tous",
"Bienvenue sur mon serveur :)"
}
Il est à noter qu'il n'y a pas de virgule à la fin de la ligne "Bienvenue sur mon serveur ".Coucou a tous
Bienvenue sur mon serveur
Changer l'intervalle de temps des messages :
- La fonction "OnScriptLoad" permet de configurer l'intervalle de temps.
- Pour configurer l'intervalle de temps, aller dans la fonction "registertimer" :
Code : Tout sélectionner
function OnScriptLoad(process)
-- create the message timer with id 1 and a delay of 5 minutes. The third parameter '0' is userdata, which we don't need.
-- When the timer is finished the function OnMessageTimer will be called.
-- You should note that the timers are removed when the script unloads (at the start of a new game). This cannot be avoided.
-- You should note that OnMessageTimer is called when we register the timer too
registertimer(1, 5 * 60000, 0, "OnMessageTimer")
end
- Pour changer l'intervalle, éditer simplement le 5 par une autre valeur en minute. Exemple, si vous souhaitez que votre message apparaisse toutes les 10 minutes, remplacer le 5 par 10 :
Code : Tout sélectionner
registertimer(1, 10 * 60000, 0, "OnMessageTimer")
Configurer et éditer les messages pour les nouveaux joueurs :
- Ouvrir le fichier "AutomatedMessages.lua".
- La fonction "OnPlayerJoin" est chargée dès qu'un nouveau joueur arrive sur le serveur.
- Éditer le texte présent entre guillemets dans la fonction "privatesay".
Exemple :
Code : Tout sélectionner
function OnPlayerJoin(player, team)
-- send a message to the player as they join.
privatesay(player, "Bonjour a toi joueur de Halo, défenseur de l'univers et de la galaxie")
end
Attention : veillez à respecter l'utilisation des guillemets pour ouvrir et fermer une ligne de texte.
N.B. Certains caractères (notamment des accents) ne sont peut être pas supportés. Effectuer des tests.
Pour afficher un texte sur plusieurs lignes, il suffit d'ajouter des fonctions "privatesay" à la suite les unes des autres, comme ceci :
Code : Tout sélectionner
function OnPlayerJoin(player, team)
-- send a message to the player as they join.
privatesay(player, "Bonjour a toi joueur de Halo, défenseur de l'univers et de la galaxie")
privatesay(player, "1")
privatesay(player, "2")
privatesay(player, "3")
privatesay(player, "Soleil !")
end
Plus sérieusement, ceci affichera :
Configurer et éditer un message pour un ou plusieurs joueurs en particulier :Bonjour a toi joueur de Halo, défenseur de l'univers et de la galaxie
1
2
3
Soleil !
- Vous pouvez afficher des messages personnalisés à certains joueurs de votre entourage grâce à leurs hashkey.
- Exemple du code à appliquer :
Code : Tout sélectionner
function OnPlayerJoin(player, team)
-- send a message to the player as they join.
if gethash(player) == "hashkey_admin" then
privatesay(player, "Bonjour a toi SuperAdmin")
elseif gethash(player) == "haskey_amie_tres_chere" then
privatesay(player, "Rameuneuse de drapeau en force")
elseif gethash(player) == "haskkey_admin" then
privatesay(player, "Salutation Admin, tu as le droit de jouer :)")
elseif gethash(player) == "hashkey_amis" then
privatesay(player, "Ne passez pas par la case depart, ne toucher pas 20 000 euros")
else
privatesay(player, "Bonjour a toi joueur de Halo, défenseur de l'univers et de la galaxie")
privatesay(player, "1")
privatesay(player, "2")
privatesay(player, "3")
privatesay(player, "Soleil !")
end
end
"hashkey" indiqué entre guillemets dans la condition est le hashkey du joueur à qui vous destinez ce message (vous, un autre administrateur, des amis). Le hashkey est récupérable dans le journal "Phasor_GameLog.log" (hashkey : longue chaine de caractère alphanumérique correspondant à un identifiant unique issue de la clé CD du joueur).
Le "else" (sinon) contient évidemment le message générique pour tous les autres joueurs, et seuls ceux faisant partit d'une condition particulière auront droit à un message particulier
Écriture d'une condition en français :
Code : Tout sélectionner
Si le hashkey du joueur est égal à cette valeur alors
action à realiser
Sinon Si le hashkey du joueur est égal à cette valeur alors
action à realiser
Sinon
action à realiser
Fin de la condition
Syntaxe équivalente pour le script "AutomatedMessages.lua" :
Code : Tout sélectionner
if gethash(player) == "hashkey" then
action
elseif gethash(player) == "hashkey" then
action
else
action
end
- sv_reloadscripts : recharge les scripts chargés en mémoire. La phrase "The script(s) have been reloaded" indique que les scripts ont correctement rechargés.
Attention : lors de mauvaises modifications d'un script, Phasor peut ne plus fonctionner. Revenez dans une version précédente du fichier ou résolvez le problème. Il est parfois nécessaire de relancer le serveur si Phasor ne semble plus réagir, notamment si vous n'obtenez plus la phrase "The script(s) have been reloaded".
- sv_say "message" : affiche un message à tous les joueurs sur le serveur (message : remplacer message par votre texte ).