Mise en forme de code: pensez à utiliser les balises [ tcl ] et [ /tcl ] (sans les espaces bien sûr) autour de vos codes tcl afin d'avoir un meilleur rendu et une coloration syntaxique. x


[Script] Duel (version actuelle : 1.21)
#1
Description

Ce script permet à un utilisateur d'en défier un autre en combat singulier.

Une fois le duel lancé, le narrateur (l'Eggdrop) commence à décrire l'action trépidante qui se déroule sous vos yeux ébahis.
Il existe 5 types d'action, différenciés par un symbole affiché en début de ligne :
> = attaque
< = contre-attaque
~ = esquive
~< = esquive + contre-attaque
x = attaque ratée
* = réaction neutre

A chaque round, le hasard décide qui attaque qui. Lorsqu'une attaque est lancée, il y a une chance pour qu'elle aboutisse, une chance pour qu'elle rate, et une chance pour que la victime se défende de 3 façons possibles (esquive, contre-attaque, ou esquive + contre-attaque).
Des réactions neutres surviennent parfois en réponse à une attaque qui a abouti; elles représentent les réactions des participants ou du public à ce qui vient de se passer et n'ont aucune influence sur le score.

Chaque attaque a un certain nombre de défenses et de réactions qui lui sont associées spécifiquement afin d'avoir un contexte cohérent entre les actions et les réactions, et des soins particuliers ont été apportés à la variété, l'originalité et l'humour.
La base de données contient :
     128 attaques toutes plus vicieuses les unes que les autres.
     66 attaques ratées car les emmerdes, ça arrive...
     116 esquives avec pied de nez.
     93 contre-attaques histoire de mettre les points sur les i.
     46 combos esquive + contre-attaque pour les plus habiles.
     256 réactions neutres parce que les spectateurs veulent tout savoir.

Le calcul des points s'effectue comme suit :
     - chaque attaque menée à bien rapporte 1pt à l'attaquant.
     - une esquive annule l'attaque précédente.
     - une contre-attaque n'annule pas l'attaque mais rapporte 1pt au défenseur.
     - une esquive + contre-attaque annule l'attaque et rapporte 1pt au défenseur.


Commandes et syntaxe

Voici la syntaxe à utiliser pour défier quelqu'un en duel :
     !duel <nick> [nombre de rounds gagnants]

Et voici ce que devra taper celui qui a été provoqué en duel pour accepter de relever le défi (si l'option target_must_accept est activée) :
     !engage

La commande !duel_stats permet au propriétaire de l'Eggdrop de compter et d'afficher le nombre d'actions de chaque catégorie dans la base de données.

Pour activer ou désactiver Duel sur un chan, vous devez taper ceci sur le chan concerné :
     !duels <on/off>
ou ceci en partyline de l'Eggdrop :
     .chanset #NomDuChan <+/->duel


Screenshot

[Image: http://imageshack.us/a/img62/3650/4iur.png]


Quelques détails chiants pour ceux qui veulent juste faire un duel au plus vite, et bons à savoir pour les autres
  • Le script utilise une file d'attente temporisée indépendante pour l'affichage des messages afin de ne pas engorger les files d'attente de l'Eggdrop en y envoyant beaucoup de messages d'un coup.
  • Le script est pourvu d'un système anti-hl, qui permet de ne pas ennuyer les participants à chaque action.
  • Chaque attaque / attaque ratée / défense / réaction ne sera pas répétée tant que toutes les autres n'auront pas été vues, et l'ordre est différent à chaque cycle. Notez qu'un rehash ou un restart de l'Eggdrop remet les compteurs à 0.

Changelog

Citation :1.0
  • Première version.
1.01
  • Correction : les codes de style (couleurs, gras, ...) n'étaient pas interprétés correctement dans les actions.
  • Correction : la commande !duel tapée sans arguments n'affichait pas la syntaxe.
  • Ajout : une nouvelle attaque a été ajoutée avec ses défenses et réactions associées.
  • Modification : certaines actions ont été reformulées.
1.02
  • Correction : les guillemets étaient filtrés par erreur dans les actions.
  • Correction : une faute d'orthographe a été corrigée dans une action.
1.03
  • Correction : il n'est désormais plus possible de lancer plusieurs duels simultanément sur le même chan.
1.1
  • Ajout : nouveau paramètre de configuration target_must_accept permettant d'activer un mode dans lequel l'utilisateur provoqué en duel devra d'abord accepter celui-ci pour que les hostilités commencent. Voir également les deux nouveaux paramètres associés duel_request_timeout et acceptance_cmd.
  • Ajout : nouvelle commande !duels <on/off> permettant d'activer ou désactiver les duels sur le chan en cours, permettant ainsi aux modérateurs n'ayant pas d'accès à la partyline de l'Eggdrop de le faire.
1.2
  • Correction : la substitution des %randnick% utilisait parfois le nom d'utilisateurs ayant quitté le chan avant que la cible tape !engage.
  • Modification : les paramètres de configuration du script se trouvent maintenant dans un fichier séparé, situé dans le répertoire duel par défaut.
  • Ajout : système anti-hl pendant le déroulement du duel.
    Les joueurs ne seront désormais hl qu'une fois pour les prévenir qu'ils ont été provoqués en duel, et une deuxième fois pour leur annoncer le résultat du duel.
    Le paramètre de configuration HL_prevention permet d'activer ou non cette fonctionnalité.
  • Ajout : nouvelle variable %randnick<index>% utilisable dans les attaques / défenses / réactions et retournant le nom d'un utilisateur présent sur le chan choisi en fonction de l'index que vous indiquez.
    Reportez-vous aux explications détaillées au début de la base de données.
  • Ajout : Duel utilise désormais des fichiers de langue pour l'affichage des messages du script.
    Des fichiers pour la langue française et la langue anglaise sont fournis.
    Un nouveau paramètre de configuration permettant de contrôler la langue a été ajouté.
  • Quelques optimisations du code.
1.21
  • Correction : Le pack de langue n'était pas déchargé de la mémoire lors de la désinstallation du script.


Téléchargement

Duel v1.21

Vous pouvez trouver une liste de mes autres releases ici


Laissez vos commentaires / suggestions / rapports de bugs.
Toute l'actualité de mes scripts ici     (dernière mise à jour le 22/04/2020)

Tout programme comporte au moins un bug et pourrait être raccourci d'au moins une instruction, de quoi l'on peut déduire que tout programme peut être réduit à une seule instruction qui ne fonctionne pas.
  Répondre
#2
Ca à l'air super comme jeu, mais je ne me souviens pas avoir joué...
  Répondre
#3
Raison de plus pour le télécharger, l'installer et le réessayer !

Il faudrait faire quelque chose pour tes pertes de mémoire :p
Toute l'actualité de mes scripts ici     (dernière mise à jour le 22/04/2020)

Tout programme comporte au moins un bug et pourrait être raccourci d'au moins une instruction, de quoi l'on peut déduire que tout programme peut être réduit à une seule instruction qui ne fonctionne pas.
  Répondre
#4
J'ai toujours les photos moi ;)

ça a l'ai sympa en tout cas !
  Répondre
#5
 
Nouvelle version disponible : v1.01

Changelog partiel :
Citation :v1.01
  • Correction : les codes de style (couleurs, gras, ...) n'étaient pas interprétés correctement dans les actions.
  • Correction : la commande !duel tapée sans arguments n'affichait pas la syntaxe.
  • Ajout : une nouvelle attaque a été ajoutée avec ses défenses et réactions associées.
  • Modification : certaines actions ont été reformulées.

Téléchargement :

Duel v1.01


Laissez vos commentaires / suggestions / rapports de bugs.
 
Toute l'actualité de mes scripts ici     (dernière mise à jour le 22/04/2020)

Tout programme comporte au moins un bug et pourrait être raccourci d'au moins une instruction, de quoi l'on peut déduire que tout programme peut être réduit à une seule instruction qui ne fonctionne pas.
  Répondre
#6
 
Nouvelle version disponible : v1.02

Changelog partiel :
Citation :v1.02
  • Correction : les guillemets étaient filtrés par erreur dans les actions.
  • Correction : une faute d'orthographe a été corrigée dans une action.

Téléchargement :

Duel v1.02


Laissez vos commentaires / suggestions / rapports de bugs.
 
Toute l'actualité de mes scripts ici     (dernière mise à jour le 22/04/2020)

Tout programme comporte au moins un bug et pourrait être raccourci d'au moins une instruction, de quoi l'on peut déduire que tout programme peut être réduit à une seule instruction qui ne fonctionne pas.
  Répondre
#7
 
Nouvelle version disponible : v1.03

Changelog partiel :
Citation :v1.03
  • Correction : il n'est désormais plus possible de lancer plusieurs duels simultanément sur le même chan.

Téléchargement :

Duel v1.03

Vous pouvez trouver une liste de mes autres releases ici


Laissez vos commentaires / suggestions / rapports de bugs.
 
Toute l'actualité de mes scripts ici     (dernière mise à jour le 22/04/2020)

Tout programme comporte au moins un bug et pourrait être raccourci d'au moins une instruction, de quoi l'on peut déduire que tout programme peut être réduit à une seule instruction qui ne fonctionne pas.
  Répondre
#8
 
Suite à une erreur de ma part, il manquait la base de données dans le .zip de la v1.03.

Si vous avez téléchargé cette version et que vous êtes dans ce cas, re-téléchargez la, le problème devrait maintenant être réglé.

Ne me tapez pas, je ne le referai plus, merci, je vous embrasse très fort.
 
Toute l'actualité de mes scripts ici     (dernière mise à jour le 22/04/2020)

Tout programme comporte au moins un bug et pourrait être raccourci d'au moins une instruction, de quoi l'on peut déduire que tout programme peut être réduit à une seule instruction qui ne fonctionne pas.
  Répondre
#9
Bonjour :)

J'ai installé ce script, il fonctionne très bien, rien à dire là-dessus, il est très bien pensé et les intéractions entre attaques et défenses sont bien trouvées :D

Cependant, les OP du channel où je fais fonctionner ce script aimeraient pouvoir avoir la possibilité (via une commande) d'activer/désactiver le script.

Pour le moment seul moi (propriétaire du robot) peut le faire, et seulement via PuttY (ce qui n'est pas très pratique en soi).

Est-il possible d'ajouter une commande "!duel_enable on/off" utilisable seulement par les OP et supérieur d'un channel pour activer / désactiver le script pour ce channel ? (un équivalent à .chanset #channel +duel et .chanset #channel -duel que l'on peut taper dans IRC)

Merci par avance ^^
  Répondre
#10
Je note ça dans les idées pour une prochaine version.

Cependant, tu devrais également pouvoir contacter ton eggdrop par dcc chat, c'est un poil plus pratique qu'en telnet. (euphémisme)
 
Toute l'actualité de mes scripts ici     (dernière mise à jour le 22/04/2020)

Tout programme comporte au moins un bug et pourrait être raccourci d'au moins une instruction, de quoi l'on peut déduire que tout programme peut être réduit à une seule instruction qui ne fonctionne pas.
  Répondre
#11
 
Nouvelle version disponible : v1.1

Changelog partiel :
Citation :v1.1
  • Ajout : nouveau paramètre de configuration target_must_accept permettant d'activer un mode dans lequel l'utilisateur provoqué en duel devra d'abord accepter celui-ci pour que les hostilités commencent. Voir également les deux nouveaux paramètres associés duel_request_timeout et acceptance_cmd.
  • Ajout : nouvelle commande !duels <on/off> permettant d'activer ou désactiver les duels sur le chan en cours, permettant ainsi aux modérateurs n'ayant pas d'accès à la partyline de l'Eggdrop de le faire.


Téléchargement :

Duel v1.1

Vous pouvez trouver une liste de mes autres releases ici


Laissez vos commentaires / suggestions / rapports de bugs.
 
Toute l'actualité de mes scripts ici     (dernière mise à jour le 22/04/2020)

Tout programme comporte au moins un bug et pourrait être raccourci d'au moins une instruction, de quoi l'on peut déduire que tout programme peut être réduit à une seule instruction qui ne fonctionne pas.
  Répondre
#12
Nouvelle version disponible : v1.2

Changelog partiel :
Citation :v1.2
  • Correction : la substitution des %randnick% utilisait parfois le nom d'utilisateurs ayant quitté le chan avant que la cible tape !engage.
  • Modification : les paramètres de configuration du script se trouvent maintenant dans un fichier séparé, situé dans le répertoire duel par défaut.
  • Ajout : système anti-hl pendant le déroulement du duel.
    Les joueurs ne seront désormais hl qu'une fois pour les prévenir qu'ils ont été provoqués en duel, et une deuxième fois pour leur annoncer le résultat du duel.
    Le paramètre de configuration HL_prevention permet d'activer ou non cette fonctionnalité.
  • Ajout : nouvelle variable %randnick<index>% utilisable dans les attaques / défenses / réactions et retournant le nom d'un utilisateur présent sur le chan choisi en fonction de l'index que vous indiquez.
    Reportez-vous aux explications détaillées au début de la base de données.
  • Ajout : Duel utilise désormais des fichiers de langue pour l'affichage des messages du script.
    Des fichiers pour la langue française et la langue anglaise sont fournis.
    Un nouveau paramètre de configuration permettant de contrôler la langue a été ajouté.
  • Quelques optimisations du code.

Téléchargement :

Duel v1.2


Laissez vos commentaires / suggestions / rapports de bugs.
Toute l'actualité de mes scripts ici     (dernière mise à jour le 22/04/2020)

Tout programme comporte au moins un bug et pourrait être raccourci d'au moins une instruction, de quoi l'on peut déduire que tout programme peut être réduit à une seule instruction qui ne fonctionne pas.
  Répondre
#13
Nouvelle version disponible : v1.21

Changelog partiel :
Citation :v1.21
  • Correction : Le pack de langue n'était pas déchargé de la mémoire lors de la désinstallation du script.

Téléchargement :

Duel v1.21


Laissez vos commentaires / suggestions / rapports de bugs.
Toute l'actualité de mes scripts ici     (dernière mise à jour le 22/04/2020)

Tout programme comporte au moins un bug et pourrait être raccourci d'au moins une instruction, de quoi l'on peut déduire que tout programme peut être réduit à une seule instruction qui ne fonctionne pas.
  Répondre


Sujets apparemment similaires...
Sujet Auteur Réponses Affichages Dernier message
  [Script] MediaDico (version actuelle : 3.126) MenzAgitat 31 24,925 14/10/2020, 13:26
Dernier message: Imhotep
  [Script] Reanimator (version actuelle : 1.2) MenzAgitat 31 14,780 10/10/2020, 16:07
Dernier message: mcdeffice
  [Script] Topic Warden (version actuelle : 1.54) MenzAgitat 23 15,856 10/10/2020, 15:51
Dernier message: mcdeffice
  [Script] Duck Hunt (version actuelle : 2.11) MenzAgitat 46 17,835 18/09/2020, 19:26
Dernier message: CrazyCat
  [Script] Automatic Translator (version actuelle : 1.1) MenzAgitat 11 6,406 18/09/2020, 15:21
Dernier message: MenzAgitat
  Nick Change Responder (version actuelle : 2.31) MenzAgitat 46 25,408 18/08/2020, 16:47
Dernier message: CrazyCat
  Motus (version actuelle : 3.357) MenzAgitat 477 22,086 19/05/2020, 22:48
Dernier message: pheeric
  [Script] Interface MegaHAL (version actuelle : 4.1.0) MenzAgitat 113 74,250 03/05/2020, 22:00
Dernier message: ShowDowN
  [Script] Anti-Frenzy (version actuelle : 2.02) MenzAgitat 9 7,660 22/04/2020, 13:51
Dernier message: MenzAgitat
  [Script] DicoReverso (version actuelle : 1.03) MenzAgitat 3 6,164 18/04/2020, 02:20
Dernier message: MenzAgitat

Atteindre :


Utilisateur(s) parcourant ce sujet : 2 visiteur(s)