Duel par MenzAgitat
Catégorie : Animation - jeux
241 téléchargements
Résumé : Permet à un utilisateur d'en défier un autre dans un combat singulier où tous les coups sont permis.
Description :
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

Plus...
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

Version 1.21 par MenzAgitat (10/09/2015)
241 téléchargements
Correction : Le pack de langue n'était pas déchargé de la mémoire lors de la désinstallation du script.