IRPG CALCULATOR

Kerrigan Messages postés 708 Date d'inscription lundi 15 juillet 2002 Statut Membre Dernière intervention 17 mars 2005 - 15 avril 2004 à 04:11
cybergregz Messages postés 5 Date d'inscription mardi 16 mars 2004 Statut Membre Dernière intervention 2 juin 2004 - 5 juin 2004 à 15:31
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/21956-irpg-calculator

cybergregz Messages postés 5 Date d'inscription mardi 16 mars 2004 Statut Membre Dernière intervention 2 juin 2004
5 juin 2004 à 15:31
merci pour ce code !
en effet, lorsque l'on veut avoir les stats d'un joueur, ca fait planter mirc !
merci pour les 17 heures de pénalité !
je ne te note pas, je suis pas un salaud mais revois cette fonction

a+
G
tidds Messages postés 246 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 9 janvier 2006
1 juin 2004 à 01:29
Merci Froh ^^
Froh Messages postés 23 Date d'inscription mercredi 24 mars 2004 Statut Membre Dernière intervention 29 mai 2004
1 juin 2004 à 01:24
Tres tres complet =)
Ca serait meme mieux si des boulets ne votaient plus 1
tidds Messages postés 246 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 9 janvier 2006
19 avril 2004 à 17:37
Je ne sais pas, mais je ne pense pas car celui qui héberge le bot lui donne le nick qu'il veut après tout...

Pour le système de configuration, oui je peux le faire mais ca sera très léger car :


- les commandes à envoyer au bot sont les mêmes pour n'importe qu'elle bot, sauf pour le nom du bot (à moins que le code source du bot, qui a été écrit en perl je le rapelle, ait été modifié, mais vu la complexité du code je ne pense pas que ça soit le cas)

- pour la connexion socket ça pourrait être paramétrable mais ne connaissant pas l'organisation de toutes les pages de statistique, quand elles sont disponibles, faire le tri dans les infos reçues m'est impossible (à la limite, je pourrai le faire par demande)

- les bases de calcul des pénalités et des lvl up sont, comme je l'ai dit plus haut identiques à tous les bots, il n'y a donc rien à paramétrer de ce côté-là...

En résumé :

- Onglet "Stats" : connexion par socket impossible
- Onglet "Pénalité" et "Niveau" : les bases de calcul ne sont pas à paramétrer
- En revanche, je peux prévoir un editbox dans lequel le nom du bot sera saisi par l'utilisateur, servant pour les commandes relatives au LOGIN, LOGOUT, etc... Je ne le fera si, et seulement si, j'ai plusieurs demandes, sinon ça ne servirait à rien... :p

Merci pour ton commentaire COOLMAN002
COOLMAN002 Messages postés 969 Date d'inscription lundi 16 juin 2003 Statut Membre Dernière intervention 1 juillet 2012 1
19 avril 2004 à 15:59
Merci, je sais quel ligne modifié, mais bon, y'a que sur jv que le bot ne se nomme par IRPG ? Sinon faudrait pouvoir configuré :$
tidds Messages postés 246 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 9 janvier 2006
18 avril 2004 à 19:50
La ligne : (ligne 173) if $did == 40 { msg Elthoras login $did(37) $did(39) } (la première) est à supprimer, mauvais c/c de ma part, dsl.
tidds Messages postés 246 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 9 janvier 2006
18 avril 2004 à 19:48
COOLMAN002,
J'ai fait quelques recherche sur ce dont j'avais besoin, voilà les lignes à replacer :


(ligne 173) if $did 40 { msg Elthoras login $did(37) $did(39) }(ligne 173) if $did 40 { msg irpg login $did(37) $did(39) }
(ligne 174) if $did == 41 { msg irpg logout }
(ligne 175) if $did == 42 { msg irpg up }
(ligne 181) if $did == 47 { msg irpg quest }
(ligne 182) if $did == 48 { msg irpg whoami }

par :

(ligne 173) if $did == 40 { msg Elthoras login $did(37) $did(39) }
(ligne 174) if $did == 41 { msg Elthoras logout }
(ligne 175) if $did == 42 { msg Elthoras up }
(ligne 181) if $did == 47 { msg Elthoras quest }
(ligne 182) if $did == 48 { msg Elthoras whoami }

Comme tu l'auras déviné, ceci sert à envoyer les commandes LOGIN, LOGOUT, WHOAMI, QUEST et UP (je suis pas sûr que la dernière soit disponible, en fait, elle sert à mettre le mode +v, ou +h, ou +o, selon le niveau, mais ce système n'est apparement pas géré avec votre bot donc pas d'inquiétude :P).

En revanche, toute la partie socket ne te servira à rien étant donné que la page contenant les stats détaillées n'existe pas (!!). Tu pourras toujours lister les joueurs, mais ca te donnera la liste des idlers d'EpikNet et non de jv.com.

Les bases de calcul utilisées pour les pénalités et les lvl up sont identiques à celles de #IRPG sur EpiK, donc no pb de ce côté.

@++
tidds Messages postés 246 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 9 janvier 2006
18 avril 2004 à 18:16
COOLMAN002,
C'est la première fois que je vois qq'un dire qu'un dialog est trop petit, d'habitude, c'est "trop large", "trop gros", "mal organisé", "trop espacé"... bref, ta remarque ne manque pas d'originalité ! :)

En ce qui concerne le serveur de jv.com, je ne le connaît pas du tout. Je ne connait pas non plus les bases de calcul pour les lvl up et les pénalités, je ne connait pas non plus les commandes pour se logger, délogger, etc..., et pour finir, je ne sait pas non plus si les stats détaillées par joueur (cf http://irpg.ohmer.biz/stats.php) sont disponibles...

Quand tu m'auras donné toutes les infos dont j'ai besoin, je ferai peut-être quelque chose :)
COOLMAN002 Messages postés 969 Date d'inscription lundi 16 juin 2003 Statut Membre Dernière intervention 1 juillet 2012 1
18 avril 2004 à 16:00
Salut, je viens de telecharger ton add-on, il est bien ( un peu petit à mon gout ).
Moi je joue à ce jeu sur le server de jv.com, et le bot ne se nomme pas IRPG mais Elthoras, donc si au démarrage de l'add-on on pourrait configurer ça se serait pas mal :)

Sinon niquel
ChAnG-Fu Messages postés 165 Date d'inscription dimanche 2 novembre 2003 Statut Membre Dernière intervention 1 juillet 2006
15 avril 2004 à 14:07
Tidds si tu as besoin d'aide concernant le sockphp demande moi.
Je suis sur koliserv.dyndns.org -> #Conclave
irc.epiknet.org -> #Conclave ou #Scripts

Je te dirai tout ce dont tu a besoin concernant le socket, le protocole http et autre...
cs_SornDrixer Messages postés 2084 Date d'inscription jeudi 12 décembre 2002 Statut Membre Dernière intervention 30 janvier 2011 8
15 avril 2004 à 09:00
tidds :
déjà je tiens à te féliciter, pour une 1ère source, c'est du très bon boulot.

Ensuite, pour un peu améliorer ton code, quand tu effectues des actions de ce genre :
did -r irpg 17 | did -r irpg 18
tu peux regrouper comme cela :
did -r irpg 17,18
idem pour :
did -v irpg 33 | did -v irpg 34
(et les autres dans le même cas que je n'ai pas précisé)

if $did(20) = $null { did -a irpg 20 0 }
peut donner :
if !$did(20) { did -a irpg 20 0 }

%autoID = $null
%autoPW = $null
Je ne comprends pas l'interet, tu aurais pas plutot préféré /unset ?

Tu peux aussi regrouper tes événements :
ON *:DIALOG:irpg:*:*:{
if $devent == init { action }
if $devent == sclick {
if $did == id { action }
}
}
(je pense que tu auras compris le fonctionnement)

"et celui qui m'a le + aidé pour le moment, c'est celui de Sorn_Drixer dispo sur son site : www.Sorn-Creation.fr.tc (coup de pub au passage :p)."
merci pour le coup de pub lol :P

Donc, pour te connecter avec un socket à http://irpg.ohmer.biz
tu dois effectuer un /sockopen irpg.ohmer.biz 80 , puis, grâve à l'événement SOCKOPEN, envoyer une requete GET vers http://irpg.ohmer.biz/index.php (voir mon tutorial)

Bonne continuation, j'espère bientot une mis à jour en tenant compte de nos conseils :)
tidds Messages postés 246 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 9 janvier 2006
15 avril 2004 à 04:42
Oui, je viens de penser aussi l'utilisation de socket pour les stats. Seulement, je n'y connait quasiment rien mais je me penche dessus. J'ai déjà d/l 2-3 tutos (qui se répétent malheureusement :/) et celui qui m'a le + aidé pour le moment, c'est celui de Sorn_Drixer dispo sur son site : www.Sorn-Creation.fr.tc (coup de pub au passage :p).
Je n'arrive même pas à me connecter sur http://irpg.ohmer.biz (internal error powa) donc si qq'un y arrive, ça serait sympa de m'expliquer comment il a fait, pour le reste je ferait travailler mes neuronnes. :)

Merci pour le commentaire ChAnG-Fu.
ChAnG-Fu Messages postés 165 Date d'inscription dimanche 2 novembre 2003 Statut Membre Dernière intervention 1 juillet 2006
15 avril 2004 à 04:21
Je te propose un truc:
Des stats avec un systeme de socket et une plateforme php.

Sinon la même chose que Kerrigan optimisation mais j'insiste sur le faite que c'est ta première source sur le site et qu'elle me plait bcp ^^.

@+ et script bien tidds
tidds Messages postés 246 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 9 janvier 2006
15 avril 2004 à 04:19
Pour la factorisation des did je ne savais pas que c'était possible. ^^
Pour l'alias, oui c'est pas une mauvaise idée car il est vrai que ça fait un peu brouillon.
Et pour la coupure des lignes, en fait j'avais un problème dans mon $replace et pour chercher d'où ça venait (après plusieurs essais), j'ai trouvé plus pratique de casser les lignes pour mieux trouver l'erreur. Je trouve aussi que c'est plus pratique pour la lecture/relecture dans code en général, mais bon ce n'est qu'une affaire de goût. :p^

Merci pour ton commentaire Kerrigan
Kerrigan Messages postés 708 Date d'inscription lundi 15 juillet 2002 Statut Membre Dernière intervention 17 mars 2005
15 avril 2004 à 04:11
if $did(16).sel = 2 {
msg $active [p30] : $replace($duration(%p30), $&
wks, $chr(32) $+ semaines,wk, $chr(32) $+ semaine, $&
days, $chr(32) $+ jours,day, $chr(32) $+ jour, $&
hrs, $chr(32) $+ heures,hr, $chr(32) $+ heure, $&
min, $chr(32) $+ minute,mins, $chr(32) $+ minutes, $&
sec, $chr(32) $+ seconde,secs, $chr(32) $+ secondes) de pénalité pour avoir changer de pseudo au niveau $did(20) $+ .
}

cette ligne ce repette un tas de fois
sinon a part ça c bien coedé pour un debut c prométeur mis a part cette repétition.
c'est amusant de voit que tu coupes les lignes trop longue je n'avais encore jamais vu ça ici :)

ameliore ça en "factorisant" avec un alias bien choisi

did -r irpg 20 | did -u irpg 10,11,12,13,30,14,15 | did -h irpg 31,32,33,34
Rejoignez-nous