Chat:Fr/2020-05-21

From CG community
Jump to navigation Jump to search

Default avatar.png Java0xCAFEBABE: Initial Commit :grinning:

Default avatar.png YpH: ascii fini !

Neumann: gg

dbdr: latin1 maintenant

Vry: utf-8 ensuite ?

Alshock: Zut j'ai pas pensé à conserver le lien de Troll vs Castles

Alshock: Salut à tous au fait, heureux d'être debout pour voir Aurore aux doigts de fée

Neumann: https://www.codingame.com/ide/demo/84238477bff184d6523d9b7b6a0dd0790496d8

Alshock: <3

Alshock: je vais le garder précieusement

dbdr: Neumann en Java, tu as gardé des traces? :)

Neumann: Des traces de pneu ouais

dbdr: :D

VilBoub: plop les gens...

VilBoub: quand je rejoins l'ide je ne vois plus le chat à droite, comment on le retouve ?

Default avatar.png JBM: c'est devenu reserve a une elite

VilBoub: LoL

VilBoub: c'est pas pratique, j'dois garder deux pages CG ouvertes du coup, une sur le menu avec le chat visible et une avec l'ide sans le chat...

VilBoub: C'est moi la mère Michelle et j'ai perdu mon chat... Help !

Default avatar.png JBM: erf

Default avatar.png JBM: tu causes beaucoup pour qqun qu'a plus de chat

VilBoub: je jongle entre 2 fenetres !

Default avatar.png JBM: acrobatique

VilBoub: grrrr

Default avatar.png JBM: sur une corde raide?

leojean890: mon IA en 1 seul if/else tient pas mal sur ton jeu JBM ... pour l'instant ;o

Default avatar.png JBM: attends que je rajoute un caractere a mon bash

Default avatar.png JBM: ca rigolera moins

leojean890: tiens ma photo n'apparait pas sur le chat ;o

Default avatar.png JBM: arrete de narguer VilBoub t'es pas gentil

VilBoub: mais heu !

VilBoub: vous avez le chat à côté de l'ide vous ?

Magus: leojean890: ouai les avatars dans le chat faut en général attendre un reboot du chat

Default avatar.png JBM: non

Magus: VilBoub: non. C'est un bug.

Default avatar.png JBM: mais en regle generale, je les demarre en ?disableChat de toute maniere

Default avatar.png JBM: c'est quand il revient que j'ai un bug

leojean890: ils ont fait le bug report il me semble

Default avatar.png JBM: qu'on pende le coupable!

leojean890: ah ok, donc ils reboot le chat tous les jours?:P

Default avatar.png JBM: et 2 suspects, pour faire bonne mesure

VilBoub: ok, donc vous me laissiez crier par la fenetre pour rien, bande de méchants !

Default avatar.png JBM: comment ca pour tien

Default avatar.png JBM: *r

Default avatar.png JBM: ca eclaircit la voix

Default avatar.png JBM: ca defoule

Default avatar.png JBM: ca t'a fait un bien fou

Default avatar.png JBM: ingrat!

VilBoub: =)

VilBoub: d'un autre côté, j'aurai du m'en douter qu'il y avait un bug général, c'était étonnamment calme ici...

Default avatar.png JBM: c'est parce que tout a deja ete dit

dbdr: ou presque

dwarfie: ouais... reste plus qu'a automaton2000 a dire tortue et licorne

Automaton2000: ça à l'air de faire le test

Default avatar.png JBM: tortue

dwarfie: bon ... et si je me decidais a caillasser du troll moi ;)

Zaap38: tu parles du troll & chateaux ?

Zorg1: oui du multi de JBM

Default avatar.png JBM: c'est genant de l'appeler comme ca en presence de Zaap38, qui a donne l'idee

Zaap38: si oui, en fait pour remplir de ta grille de choix à faire en fonction es nombres de pierre i et j, faut appeler le simplex sur la sous-grille i-1 j-1, et tu descend récursivement comme ça jusqu'à arriver à des solutions connues du genre 2 pierres

Zaap38: nan mais osef, c'pas mon jeu

Default avatar.png JBM: https://www.codingame.com/ide/demo/84238477bff184d6523d9b7b6a0dd0790496d8

Default avatar.png JBM: c'est une maniere

Zorg1: ah ok je ne savais pas que l'idée venait de Zaap38 ;-)

Default avatar.png JBM: c'est ecrit en bas :p

Zaap38: en vrai je suis content de le voir sur cg x)

Default avatar.png JBM: (mais personne ne lit blablabla)

Zaap38: par contre tu feras gaffe, de mémoire la solution opti garantie au pire un draw

Default avatar.png JBM: c'est logique

Zaap38: aya je suis crédité x'D

Zorg1: le début de la gloire

Zaap38: d'un coup j'ai plus de motivation pour finir le projet x')

Default avatar.png JBM: hehe

Zorg1: espérons que la stratégie optimale ne soit pas aussi compliquée que celle pour le jeu de dés "Pig"

Default avatar.png JBM: tiens, j'ai une idee de contest

Default avatar.png JBM: ca me fait ca a chaque fois que je fais une rechute de SDK

Default avatar.png JBM: mais c'est pas tous les jours que j'ai une idee 8 joueurs

Zorg1: le max du SDK c'est pas 4 ?

Default avatar.png JBM: pas de ce que j'en lis

Zorg1: ok

Default avatar.png JBM: min_players: The minimum number of players to play the game. Must be 1 for Solo and Optimization games, up to 8 for Multiplayer games.

Zorg1: je te crois, c'est que j'avais seulement vu des multis à 4 joueurs max

Default avatar.png JBM: pareil

Default avatar.png JBM: rha c'est horrible

Default avatar.png JBM: mon style de java est en train de redevenir java-like

Default avatar.png JBM: tout imperatif sequentiel bien moche

Default avatar.png JBM: ick

Zorg1: fait un referee en clojure alors :p

Default avatar.png JBM: en haskell

Default avatar.png JBM: ca viendra

Zorg1: ou en scala, paraît que c'est fonctionnel

Zorg1: (enfin 'multi paradigme' comme ils disent)

Default avatar.png JBM: j'entends d'ici les plaintes pendant le contest

Default avatar.png JBM: j'ai encore le souvenir de la premiere fois qu'on a eu un clojure et un kotlin

dbdr: ya eu un clojure?

Zorg1: en clojure je crois pas, en kotlin oui c'était Code Royale

Zorg1: après en fait le referee t'as surtout besoin de le regarder quand l'énoncé est flou (typiquement le traitement des collisions diverses & variées)

Zorg1: tu mettras de l'Haskell dans l'énoncé pour spécifier le comportement ^^

dbdr: j'avais essayé d'inclure le referee dans mon bot, pour la sim

dbdr: ça se fait, mais never again

Zorg1: pas forcément une bonne idée, le referee est pas vraiment codé dans une logique de perf, il a tout le temps du monde lui

dbdr: pourquoi fairel les choses à moitié? le code Haskell EST l'énoncé

dbdr: literate programming style

Zorg1: ha le fameux "le code parle de lui même"

Default avatar.png JBM: pourquoi never again?

Zorg1: à propos de code C c'est un peu gonflé ;-)

dbdr: ben oui, du coup j'ai passé du temps à optimiser le referee :D

Default avatar.png JBM: ah oui, ca

dbdr: kutulu je crois

Default avatar.png JBM: pour la collision de pacs ca valait non? O:-)

dbdr: deja parce qu'il se trouve qu'ils ont corrigé des bugs en cours de contest

dbdr: donc double boulot pour maintenir mon fork :D

Default avatar.png JBM: j'aurais pas du resoumettre mon 1-bot

Default avatar.png JBM: il monte plus aussi haut

Default avatar.png JBM: rha mais ca fait une heure que je suis en train d'ajouter une fonctionalite inutile triviale

Default avatar.png JBM: et que je me laisse distraire a droite a gauche

Zorg1: oui c'est le règne des 2-bot et des 3 bots ?

dbdr: quelle fonctionalité?

Default avatar.png JBM: tu verras bientot

dbdr: petite cachotier

Default avatar.png JBM: ouais hein

dbdr: on sait déjà qu'elle est inutile

Default avatar.png JBM: z'avez qu'a lire le source

dbdr: c'est toujours ça de pris

Default avatar.png JBM: je vais pas non plus tout devoiler des conneries qui changent pas la meta

dbdr: meme pas dans un repo le source?

Default avatar.png JBM: si

dbdr: public?

Default avatar.png JBM: ~/work/game-tictactoe/.git

Default avatar.png JBM: j'espere pas

dbdr: :smiling_imp:

Default avatar.png JBM: mais j'ai pas coche la case "planquer le source", y'a les instantanes dans la contrib

Default avatar.png JBM: en attendant que ca finalise

dbdr: oui, j'ai regardé rapidement comment tu gerais les overflows ;)

dbdr: comme quoi les checks de rust ont du bon

Default avatar.png JBM: va pas m'accuser d'un oubli non plus

Default avatar.png JBM: c'etait explicitement reporte au lendemain

Default avatar.png JBM: ca a juste influence le label du resultat quand je l'ai mis

dbdr: label?

Default avatar.png JBM: "cheat" ou juste "invalid"

Default avatar.png JBM: y'a des static initializers pour les array et/ou conteneurs, en Java?

dbdr: ah ok compris :)

dbdr: oui

Default avatar.png JBM: sous quel genre de syntaxe?

dbdr: static String[] s = new String[]{ "s1", "s2" };

dbdr: un truc comme ça?

Default avatar.png JBM: oui parfait merci

dbdr: ya peut-etre plus court en java moderne

Default avatar.png JBM: boah ca ira

dbdr: sinon tu peux faire des blocs d'init static

Default avatar.png JBM: juste eviter le sequence de .add()

dbdr: static { /* */ }

Default avatar.png JBM: rha et je suis la a debattre de cosmetique ulterieure

Default avatar.png JBM: au lieu de fsck' ajouter 2 lignes de code la

dbdr: il faut que ton code java soit parfait ;)

Default avatar.png JBM: ben ouais

Default avatar.png JBM: je suis pas encore totalement converti

dbdr: pour la postérité

Default avatar.png JBM: voila

Default avatar.png JBM: que les 2.5 personnes qui cliqueront dessus par erreur

Default avatar.png JBM: ne se trompent pas quant a ma personnalite

dbdr: "il écrivait du java correct pour quelqu'un qui fait pas de java"

Default avatar.png JBM: "anti-idiomatique mais correct"

Default avatar.png JBM: pourquoi quand je lance mvn test ca fait pas "ce qu'il faut"?

dbdr: parce que c'est mvn?

Default avatar.png JBM: c'est parce que mvn ou parce que cg?

dbdr: je suis pas sur de vouloir en savoir assez pour répondre à ça de façon juste

dbdr: mais si t'es coincé sur un truc je peux essayer d'aider

Default avatar.png JBM: eheh

Default avatar.png JBM: non non pas coince

Default avatar.png JBM: juste... surpris/decu/frustre que ca ait l'air raisonnable mais en fait non

dbdr: pour le boulot j'utilise gradle, me semble que c'est plus raisonable déjà

Default avatar.png JBM: connais le nom

Default avatar.png JBM: ah mais attends

dbdr: mvn c'est super vieux non? le XML est un indice...

Default avatar.png JBM: j'utilise mvn parce qu'on m'a donne une ligne pour

Default avatar.png JBM: je sais pas si c'est une necessite

Default avatar.png JBM: toutes les meta qui viennent avec , c'est un pom.xml

Default avatar.png JBM: je sais pas quel jeu de contraintes ca implique

dbdr: build system, en ... c'est quoi le langage de script sur jvm qu'on a sur CG?

Default avatar.png JBM: groovy

dbdr: grrocy

dbdr: c'est un DSL de build au dessus de groovy, en gros

dbdr: levenstein distance de 2 qd meme, je fais fort :D

dbdr: 3?

dbdr: ça dépend des règles...

Default avatar.png JBM: invoque les bitflips tu t'en tireras mieux

Default avatar.png JBM: je lis 2

Default avatar.png JBM: le cote "passer la repetition a une autre lettre" compte pas magiquement comme 1/2

Default avatar.png JBM: c'est l'occasion de creer la dbdr-listance!

Default avatar.png JBM: *dist

dbdr: ya une version avec juste insertion et effacement

dbdr: remplacement c'est 2

Default avatar.png JBM: ah ok

Default avatar.png JBM: bam NPE

Default avatar.png JBM: forcement, je fais du java

dbdr: ChaosJava, la JVM qui insère des NPE aléatoirement pour vérifier la robustesse du code

Default avatar.png JBM: :D

dbdr: ChaosVM plutot

dbdr: ce lag

Default avatar.png JBM: ah tiens je viens de relire ta ligne de bloc d'init static

Default avatar.png JBM: de comprendre son contexte

Default avatar.png JBM: et de me rappeler que j'ai connu ca, y'a bien longtemps

YannT: dbdr: en java moderne tu peux faire

YannT: String[] foo = {"a", "b", "c"};

YannT: plus besoin du new String[]

Default avatar.png JBM: c'est pas genre litteralement ce qu'il a di?t?

Default avatar.png JBM: ah ok non

Default avatar.png JBM: mais litteralement ce que j'ai spontanement ecrit sans remarquer aue c'etait pas ca

YannT: en java 6 il fallait faire comme il a écrit, y avait pas d'inférence

Magicien-d-oz: Bonjour, je viens de rencontrer pour la première fois sur Python3 "RecursionError: maximum recursion depth exceeded in comparison" quelqu'un aurait une astuce pour la contuourner ?

Default avatar.png JBM: recursion moins profonde

Magicien-d-oz: J'ai bien pensé à réduire le nombre de recursion mais je vois comment c'est pour cela que je me demandais s'il y avais pas une autre solution. Mais sinon je me débrouilllerai

jolindien: salut

jolindien: sys.setrecursionlimit ?

Magicien-d-oz: Ok je vais voir merci bien

RomanceDawn: ChaosVM c'est trop cool

RomanceDawn: ca me fait penser à ChaosMonkey qui fou la merde dans les serveu pour la robustesse tout ça

dbdr: de l'inférence quand le type est déjà écrit :D

Default avatar.png JBM: t'as le droit a une sous-classe

Default avatar.png JBM: ou a typer par interface

Default avatar.png JBM: c'est pas si absurde

TidyMaze: bon, sur 15 pierres mon MC a décidé qu'il valait mieux en envoyer 15 sur le troll au premier tour ... ça va pas le faire

Alshock: il a gagné le premier tour cela dit

Alshock: vérifie tes wins, ça ressemble à un score inversé

TidyMaze: j'ai trouvé la petite coquille, toute bete bien sûr, newOppStones = curOppStones - buy

dbdr: :D

TidyMaze: c'etait buyOpp

dbdr: parfois un bot est à un simple signe moins de la perfection

Default avatar.png JBM: souvent meme

Default avatar.png JBM: j'ai des cauchemars de STC qui remontent la

Alshock: Putain mais le TP Trolls & Châteaux est beaucoup trop bien

Default avatar.png JBM: ouais j'avais pas des profs comme ca moi

Alshock: par contre il a pas l'air d'avoir donné de temps de réponse paximal, ça risque de mal tourner

Alshock: s/p/m

leojean890: ça peut être fun;P

leojean890: mon IA en 1 if et 1 else tient pas mal, mais Snef met la misère en terme de score ;P

leojean890: y'en a qui font du MC carrément ?:P

Alshock: il est temps de retourner à mes conneries et de faire un truc mieux

Snef: leojean890 2 ifs > 1 if/else :p

leojean890: ah donc le même genre que moi amis en mieux Snef :P

leojean890: mais en mieux*

leojean890: bah comme on doit printer un truc je dois bien mettre un else :P

Snef: ah je set le nb dans une var et je print a la fin moi :p

leojean890: if a: print b;else: /*if b*/ print c

leojean890: ah ok :P

leojean890: moi je print direct :P

leojean890: mais les MC arrivent donc on va se faire doubler ??:P

leojean890: soon !!

Snef: Ben je suis pas sur

leojean890: on verra :P

leojean890: jcode plus depuis dimanche soir, je lis des PM:p

Snef: J'ai l'impression que ca va toujours print 1 ou 2..

leojean890: sauf pour le télétravail;P

leojean890: et pour les temps où je suis pas sur CG

Snef: mais tu veux quand même éviter d'arriver à une case de ton castle sinon tu va print le max par peur de perdre

leojean890: ouais faut faire gaffe :P

leojean890: mais effectivement c'est ce genre de logique que j'ai fait :P

leojean890: mais pas exactement ça:P

TidyMaze: meme sur un truc aussi simple je ne suis pas sûr d'avoir les bonnes distances à 1 près :S

TidyMaze: je suis une honte

Snef: je viens de voir un replay ou tu print plus que tes stones :p

TidyMaze: la derniere pierre j'ai pas trop compris le comportement attendu, ce serait bien si y'avait genre ... un énoncé

TidyMaze: > je viens de voir un replay ou tu print plus que tes stones :p erf

Snef: c'est à dire la dernière pierre ?

Alshock: raaaah mais pourquoi mes GA s'accordent-ils tellement à basarder toutes leurs stones dès le début ?

Snef: c'était pour leo TidyMaze

TidyMaze: (oups)

Snef: Alshock tu permet d'envoyer combien de pierre au max ?

Alshock: tout

Snef: t'as bien la condition lorsque t'as 0 stones ca finit la partie et le gagnant c'est la ou est le troll décalé par le nb de stone de l'adversaire ?

Alshock: ouais

Snef: bizarre

Alshock: Je vais faire des tests en local, c'est ptêtre juste parce que j'ai des populations trop petites

Snef: après ca m'est arrivé aussi

Alshock: comme mon score se fait avec un bon gros tournoi de pop² parties

Snef: ah t'as pas déval tu joues jusqu'a que quelqu'un gagne ?

Alshock: ce qui est rigolo c'est que ça converge vraiment, mais vers des parties nulles

Alshock: ouais je fais du bourrinage total là

Default avatar.png JBM: ce qui n'est pas absurde, rappelons-le

Alshock: le proto à la recherche d'idées potables quoi

Alshock: bah les parties sont vraiment rapides quand même

leojean890: Snef ah ouais, bah mon truc est bugué faut que je l'améliore xD

TidyMaze: je ne comprends pas trop pourquoi terminer un tour avec 0 stones ne suffit pas à mettre fin au jeu

Alshock: parce que c'est compliqué de faire proprement l'animation du troll qui se déplace du nombre de pierres restantes à l'adversaire je crois

Default avatar.png JBM: exactement

Default avatar.png JBM: je le ferai sans doute si ca va jusqu'a la publi

Alshock: mais bon if (stones == 0) cout << 0 << endl;

Default avatar.png JBM: mais c'est pas trivial avec l'API

Snef: if oppstones == 0 cout << "1" << endl;

Alshock: else if

Alshock: ah non les deux peuvent pas être à 0

Snef: realIA.search();

Default avatar.png JBM: c'est comme ca dans l'original, mais je me suis dit que vous arriveriez tous a trouver une strategie gagnante dans ce cas-la

leojean890: JBM ton jeu intéresse assez de monde pour aller jusqu'à la publi :P:p

Alshock: int realIA.search() {return 2;}

Default avatar.png JBM: s'ils savaient...

Alshock: int RealIA::search() {return 2;}

Alshock: pardon

Default avatar.png JBM: faut que j'implem les suggestions d'astrobytes aussi

Snef: qui sont ?

Default avatar.png JBM: enfin si CG me laisse uploader le truc

leojean890: y'a plus de participants que dans des multis déjà validés :P

leojean890: dont qq mecs de CG;p

Default avatar.png JBM: et non des moindres

Alshock: en vrai ça mérite complètement la publi

leojean890: donc ce serait étonnant que ça passe pas dans ces conditions ;P

Default avatar.png JBM: non mais c'est pas *du tout* ca le souci :D

Alshock: le vrai souci c'est, comment rajouter des dessins d'herbe et des nuages dans le ciel ?

leojean890: ce serait les règles et visuels pas encore finis ?:P

Default avatar.png JBM: je comptais faire des arbres, pas de l'herbe

leojean890: bah c une question de temps only ça non ?:P

Alshock: leojean890 les visuels on approche la perfection

Default avatar.png JBM: pour les regles... ben j'ai mis mes interrogations qq part dans le statement

Alshock: JBM why not BOTH?

Default avatar.png JBM: mais le FOW ca trigger vraiment les foules ^^

leojean890: le FOW ils en ont marre :P

leojean890: certains;P

Default avatar.png JBM: donc ptet fow, mais en ligue expert

Default avatar.png JBM: et pas systematique

leojean890: ou sortir 2 versions, comme le multi de bob

Default avatar.png JBM: ouais ca aussi ca trigger les foules

leojean890: code of the realm version 4j, version 2j

Default avatar.png JBM: le draft a pas 2 jours

Default avatar.png JBM: on est pas obliges de decider TOUT DE SUITE

leojean890: j'avoue;p

Alshock: Je, je viens de lire tes patchs pour le changement en distance et je comprends pas cette manip : roadLength + 1 => roadLength + 1) & (-1)

Alshock: genre x & -1 ça donne pas toujours x ?

Default avatar.png JBM: c'est un ~ pas un -

darkhorse64: Je vois que je ne suis pas le seul

Alshock: ah bah c'est une erreur dans le statement alors

Zorg1: tilde

Zorg1: ça passe mal sur le webchat

Default avatar.png JBM: c'estun - dans le statement?!

Alshock: j'ai bien compris, mais c'est un - dans le statement ouais

Zorg1: euh non j'ai bien lu tilde

Default avatar.png JBM: ah oui pour la derniere ligne

Default avatar.png JBM: mais personne n'utilise la derniere ligne 'etait juste une blague

Default avatar.png JBM: ca vaut pas un fix

Alshock: j'aimais bien le "et si jamais vous utilisez ça... J'ai aucune idée de pourquoi vous faites ça mais voilàa : ..."

TidyMaze: "TidyMaze tried not throwing stones. Fixing that for them because I'm in a good mood today."

ce troll

Alshock: @TidyMaze ça va, toi tu t'es pas fait ban ton compte Cogingame

Default avatar.png JBM: c'est les petits details qui font la difference

Alshock: s/g/d/

leojean890: Alshock tu penses à qui qui s'est fait ban ;O

Default avatar.png JBM: j'ai quand meme ban un cofondateur de CG

Zorg1: t'es vachement présent pour un gars qui s'est fait ban Alshock ...

Default avatar.png JBM: cte classe quoi

TidyMaze: pourquoi ban ?

Default avatar.png JBM: pour cheat

Alshock: @Zorg1 Well, I got better

Alshock: @TidyMaze le message quand tu output un nombre négatif

TidyMaze: y'a pas de cheat quand le jeu est codé proprement

Zorg1: et pas n'importe lequel

Alshock: ah ouais c'est seulement pour int_min ?

Snef: l'easter egg c'est le "Cheating banning account" ?

leojean890: un cofondateur de CG a cheat dans ton jeu ?:p

Zorg1: Alshock : je ne sais pas, mais tant à se faire chopper à gruger autant y aller à fond

Alshock: C'est tonteux

leojean890: comme les 21 ban de siring challenge ?;)

leojean890: d'ailleurs jsais pas s'ils ont ban les comptes définitivement ou juste ban du contest;)

leojean890: spring*

TidyMaze: la notion de cheat est présente quelque part ? min/max int tu peux y arriver sans faire gaffe

Zorg1: bah envoyer des entiers négatifs quand on te demande des nombres >0 ...

leojean890: mdr

leojean890: c'est pas cheat c'est wrong output

Zorg1: bah la première mouture du referee l'accepter en fait

TidyMaze: yup

Zorg1: et certains ont fait les HACKERZ en exploitant :p

Default avatar.png JBM: clairement le coup du statement base sur l'honneur n'a pas paye

Zorg1: faut faire comme en France, un truc sur l'honneur accompagné de 10 pièces justificatives

TidyMaze: mon premier top10 \0/

leojean890: le jeu de JBM ?;P

leojean890: faut jouer sur des jeux avec peu de participants, c'est + jouable que d'autres:p

leojean890: exemple code of the realm

TidyMaze: :

TidyMaze: :D

leojean890: j'ai été 9eme lgtps mais now 10eme là dedans mdr

TidyMaze: JBM, c'est 1s puis 50ms ?

leojean890: mais souvent quand y'a peu de participants, c'est surtout les forts-investis qui viennent donc d'est chaud de top 10:P

Default avatar.png JBM: je pense oui

leojean890: c'est*

dbdr: j'aime bien le jeu en contrib depuis deux jour où ya deja les SA, les MCs, les Smitsis, ... :D

dbdr: il a un truc ce multi

Default avatar.png JBM: et les cheaters :->

dbdr: oeuf corse

Default avatar.png JBM: ok, donc c'est le fait de retirer Boss.sh qui fait crash le submit

Default avatar.png JBM: pourtant j'ai un Boss.java

Default avatar.png JBM: grmbl

dbdr: essaye Boss.hs

TidyMaze: :D

Default avatar.png JBM: y'a du random

Default avatar.png JBM: hs pas un bon fit

dbdr: pour faire peur à YannT

dbdr: ya pas une monade Rand?

Default avatar.png JBM: if (random.nextInt(10) > 0) playOptimal(); else randomMove();

Default avatar.png JBM: il y a, mais je crois pas que CG l'ait

dbdr: t'as calculé l'équilibre de Nash?

Default avatar.png JBM: pas encore

dbdr: c'est quoi optimal du coup?

YannT: <$>

Default avatar.png JBM: j'ai passe tout mon temps a ajouter une fonctionalite superflue, a me laisser distraire de partout puis a lutter contre l'IDE de submit

dbdr: :D

Default avatar.png JBM: <*> a toi YannT

dbdr: <++>

YannT: c'est un long weekend, je suis à 37% de la motivation nécessaire pour faire un MCTS rigolo pour ton jeu JBM

dbdr: tiens, il manquait le MCTS

Default avatar.png JBM: plus que 100-37

YannT: je suis en train de boire un Kwak, ça peut monter ou descendre le niveau de motiv', impossible de savoir à l'avance

leojean890: tu fais une easy heuristic au pire :P

YannT: ce serait pas bien compliqué je pourrai reprendre mon UTTT et juste changer le moteur

dbdr: trop facile

dbdr: à mon avis l'alphago s'impose

Default avatar.png JBM: faudrait que t'arrives a le reproduire

Default avatar.png JBM: au glitch d'approximation IEEE pres

leojean890: alphazéro qui gagne à tous les jeux !

dbdr: glitch dans alphago?

dbdr: je connais pas la ref

leojean890: tu lui files tous les multis et contests de CG et voilà !

Default avatar.png JBM: je parlais du moteur

dbdr: ah le moteur CT

YannT: bah le moteur sur ce jeu c'est une comparaison et le state c'est 3 ints ahah

dbdr: oui, c'est bien ça

dbdr: il faut des jeux simples mais profonds

Default avatar.png JBM: ouais ben si ca te parait simple a toi c'est pas la peine de te la peter, y'en a pour qui c'est moins simple ok!

leojean890: mais profond il a dit ;)

dbdr: je me la pete pas, je complimente

Default avatar.png JBM: je parlais a YannT mais ca lagge severe

dbdr: sur ce qu'il avait dit quel jour/

dbdr: ?

YannT: JBM: tu devrais ajouter un powerup speed qui fait que tu peux jetter 2 pierres pendant 3 tours et un FOW

YannT: complexification arbitraire cg-style

Default avatar.png JBM: et un slasher

YannT: et des SUPER PIERRES

Default avatar.png JBM: ou simplement la transformation ultimate

Default avatar.png JBM: "simplement"

dbdr: si tu gagnes un match, tu peux lancer une pierre

dbdr: c'est pas assez imbriqué

Default avatar.png JBM: si tu gagnes un match, tu peux choisir combien de pierres tu jettes

YannT: sinon ajoute les feuilles et les ciseaux pour aller avec les pierres

TidyMaze: très fiable ce ranking JBM

Default avatar.png JBM: genius

dbdr: lol

Default avatar.png JBM: justement j'etais en train de dessiner les arbres

dbdr: et les collisions sur les pierres?

Default avatar.png JBM: bordel de fuck

Default avatar.png JBM: je retire Boss.java~ et Boss.class et ca passe

dbdr: pas de feedback?

Default avatar.png JBM: mais qui m'a pondu ce systeme de packaging et de validation de l'autre cote!!!1!

YannT: remarque ça pourrait être rigolo de coder un MCTS avec rollout uniquement sur les "tours" adverse

Default avatar.png JBM: le feedback c'est INTERNAL ERROR #-1

dbdr: informatif

Default avatar.png JBM: le json contient le meme niveau d'information

dbdr: YannT pourquoi juste sur l'adversaire?

YannT: c'est simultané

Default avatar.png JBM: bon je m'ecris mon propre packager j'en ai marre de leurs conneries la

YannT: ton tour n'a du sens qu'avec celui de l'adversaire

Default avatar.png JBM: (hop une distraction de plus)

YannT: je vois un MCTS ou t'evalue pas tes tours, mais juste ceux de l'adversaire (en fonction de ton tour précédent of course), et la backpropagation fait le reste

YannT: pour gérer le coté simultané

dbdr: JBM si tu en arrives à te mettre à écrire l'OS pour faire tourner la VM qui execute ton packager, fais un pas en arriere

dbdr: et elles sont décidés comment tes actions?

YannT: le JBM kernel

YannT: c'est un MCTS, tu décides pas?

Default avatar.png JBM: ca j'ai deja fait

Default avatar.png JBM: y'a bien bien longtemps

dbdr: tu dis que ton MCTS fait que l'adversaire

Default avatar.png JBM: a une epoque ou les processeurs etaient plus simples a gerer

YannT: non non

YannT: je dis que le MCTS fait rollout que sur les tours de l'adversaire

YannT: sur tes tours en gros il expand les tours adverse obligatoirement

dbdr: deja l'adversaire a pas de tours

dbdr: vu que les tours sont communs

YannT: justement

YannT: je dissocie

YannT: pour avoir un MCTS

dbdr: commençons par poser le vocabulaire :)

dbdr: ok

Default avatar.png JBM: il va dans quel sens le troll sur un semi tour?

dbdr: deux tours virtuels pour un réel?

YannT: c'est ça

YannT: comlme ça t'as bien tes nodes de MCTS comme d'hab

dbdr: tu supposes que l'adversaire sait ce que tu as fait?

YannT: ben non

YannT: mais c'est un MCTS

YannT: tu t'en fiches

dbdr: :D

dbdr: l'important, c'est le MCTS

dbdr: c'est comme les valeurs

Default avatar.png JBM: y'a le bon mcts et le mauvais mcts

TidyMaze: c'est bien le propre du MC(TS), tu codes la moitié du probleme et ça marche quand meme

dbdr: je savais bien que ça me rappelais qqch

YannT: non mais regarde mettons chacun a 3 pierres, sur ton 'tour', tu décides combien de pierre tu jettes, tu rollout pas ce noeud tu expand, l'adversaire décide combien de pierres il lance, et la tu fais un rollout (ou pas, selon ou t'en es dans la depth de ton MCTS quoi)

YannT: et la backprop fera le reste

Default avatar.png JBM: dbdr: tu sais comment je peux me rajouter une "cible" ou truc du genre maven, qui me fasse le packaging dans la foulee de la compile?

dbdr: tres bonne impresonnation de Perceval

YannT: juste tu rollouts jamais tes 'tours' et uniquement les 'tours' adversaire, pour gérer le fait que c'est simultané

YannT: JBM: dans le pom.xml tu peux définir des trucs

Default avatar.png JBM: c'est un debut :)

dbdr: JBM: j'y toucherais pas si j'étais toi. une fois que t'as le classpath, bash c'est 100 plus simple

YannT: mais normalement mvn package ça fait déjà compile + package

Default avatar.png JBM: mmm ok tentons ca

Default avatar.png JBM: ah mais ca me fait un jar

Default avatar.png JBM: c'est compatible avec le systeme cg?

YannT: c'est pas ça ton package? :p

Default avatar.png JBM: y'a qu'un moyen de le savoir

YannT: ça je sais pas

dbdr: inb4 INTERNAL ERROR #-1

Default avatar.png JBM: a vue de nez, non

dbdr: ils veulent quoi, un zip?

YannT: je sais pas ce que ça veut dire "packager" rapport à cg aussi

Default avatar.png JBM: y'a que les classes du main, ni config ni reste

YannT: ah

YannT: tu veux un assembly alors

dbdr: man zip

YannT: http://maven.apache.org/plugins/maven-assembly-plugin/

Default avatar.png JBM: dbdr: mon pb c'est pas tant generer le zip

dbdr: pourquoi s'embetter?

Default avatar.png JBM: que t'integrer ca a mvn

YannT: avec mvn assembly tu peux decider de ce que tu ship dans ton jar

dbdr: integre pas

dbdr: YannT et moi on la joue https://images.theconversation.com/files/182692/original/file-20170820-7952-1c0ochl.jpg

YannT: en même temps c'est simple assembly, t'as un assembly.xml et tu dis ce que tu veux coller dans ton JAR avec des path de type ant

YannT: bienvenue dans le monde merveilleux du java et du xml

Default avatar.png JBM: je comprends meme pas pourquoi je cherche a l'eviter

YannT: 1995

YannT: (c) Oracle

dbdr: c'est simple quand tu t'y es mis. ça prend de l'énergie la première fois.

dbdr: donc si tu t'en sers 2 fois par an c'est pas rentable

dbdr: vaut mieux un outil plus générique

YannT: s'toi l'outil générique

dbdr: merci :)

YannT: sinon tu fais un truc haskell pour générer ton jar

YannT: <$>

dbdr: (surtout parce que si tu fais 2 fois par an, tu oublies entre les deux)

Default avatar.png JBM: jveux pas un jar :p

dbdr: zip

Default avatar.png JBM: ouais

Default avatar.png JBM: je suis en train de conjurer la ligne de commande

dbdr: zip package.zip mes_fichers

Default avatar.png JBM: et elle va finir dans un Makefile

Default avatar.png JBM: juste par provoc

dbdr: javac pour compiler

YannT: https://media1.tenor.com/images/975f9d5761d3a768465dc2325ecf0a24/tenor.gif

Default avatar.png JBM: (et parce que je saurai j'ecrire sans reflechir)

Default avatar.png JBM: non, meme pas compiler

dbdr: :+1:

Default avatar.png JBM: c'set fait cg-side

dbdr: encore mieux

Default avatar.png JBM: find pom.xml config src/main | grep -v '~$\|cover\.png\|.\(class\|xcf\)$' | xargs zip troll.zip

dbdr: :+1:

dbdr: YannT ça te fait le meme effet que <$> ?

Default avatar.png JBM: en plus ca me fait un zip de 65k au lieu de 2.1M

Default avatar.png JBM: c'est toujours ca de pris

Default avatar.png JBM: surtout pour du java

YannT: dbdr; absolument pas ça c'est plutot standard :)

YannT: par contre <$> ça m'a fait comme un genre de fussoir

dbdr: fussoir?

dbdr: je pense que | la première fois c'est pas très différent de <$>

dbdr: tu passes le cap ou pas, c'est tout

Default avatar.png JBM: bon enfin mon easter egg special yannt est enfin passe du coup

Default avatar.png JBM: je vais pouvoir passer a des trucs moins graves

Default avatar.png JBM: comme nettoyer le code

YannT: dbdr: c'est une référence robins de bois :p

Default avatar.png JBM: j'ai deja entendu, mais j'ai pas l'original

Default avatar.png JBM: jevais pouvoir m'essayer a l'injection de classes, tiens

Default avatar.png JBM: c'est so Java

Default avatar.png JBM: a l'attaque

YannT: la quoi

YannT: c'est quoi l'injection de classes? :p

Default avatar.png JBM: c'est a moi que tu demandes?

YannT: c'est toi qui en parle hein!

Alshock: comment pourrais-je injecter quelque chose dont je suis dépourvu ?

dbdr: dependency injection

Default avatar.png JBM: https://www.codingame.com/playgrounds/25775/codingame-sdk-documentation/game-manager

dbdr: JBM qui shippe welcome_en.html~

Default avatar.png JBM: plus maintenant normalement

Default avatar.png JBM: mais j'y peux rien, c'est la generation de leur fframework qui fait ca toute seule!

dbdr: le ~ c'est pas emacs?

Snef: Le jeu marche plus JBM c'est normal ?

Default avatar.png JBM: quoi

Default avatar.png JBM: non ca l'est pas

Snef: Le jeu a cessé de fonctionner. Veuillez contacter l'auteur(e) et transmettre l'erreur suivante : http://chat.codingame.com/pastebin/3e34f238-6ccf-41ca-98f6-7dd49ab872b2

dbdr: NPE :D

Alshock: Yes NPE

Default avatar.png JBM: yay \o/

Default avatar.png JBM: je suis un vrai ca y est

Alshock: J'aime quand même vraiment beaucoup quand les exceptions java commencent par ça java.lang.NullPointerException at java.base/java.util.Objects.requireNonNull(Objects.java:221)

dbdr: achivement unlocked

dbdr: il marche pour moi

dbdr: ça doit etre dans un cas particulier

Zorg1: un peu maigrichone la stack trace à mon avis

Default avatar.png JBM: ca doit etre l'injection

Default avatar.png JBM: Snef: c'est sur un match recent?

Snef: dans l'IDE à l'instant

Default avatar.png JBM: attends je rafraichis ton cache

Default avatar.png JBM: resubmit avec le patch a l'arrache

Default avatar.png JBM: si tu veux bien reload/retenter

TidyMaze: ça remarche

Snef: ça marche mais l'ia par défaut timeout :p

TidyMaze: Snef, tu veux pas repush ? Je voudrais faire un screenshot 1er mondial

Default avatar.png JBM: boah ca...

Snef: TidyMaze Je suis persuadé que si je repush je serai pas premier donc.. :p

TidyMaze: :P

Snef: JBM c'est par rapport à la seed ou c'est complètement random le fait que tu sois de bonne humeur pour le throw 0 ?

Default avatar.png JBM: ca corrige 9 fois sur 10

Default avatar.png JBM: ca te faile la derniere

Default avatar.png JBM: en random depuis la seed

Snef: Et l'easter egg c'est le message quand on print < 0 ? que je continue pas de chercher pour rien :p

Default avatar.png JBM: c'en est un

Default avatar.png JBM: c'est pas le dernier

Snef: j'ai tenté le print "<$>" sans succès

Default avatar.png JBM: LOL

TidyMaze: y'en a un quand tu pushes apres 20h Snef

Snef: haha

TidyMaze: avoue, c'est du machine learning que t'as mis en place ? :P

Snef: gros machine learning ouais

Snef: environ un demi neurone

TidyMaze: leojean890 m'a fait chuter :S

Snef: resubmit :p

TidyMaze: jamais, j'ai environ 7 places en trop :P

leojean890: jfais mumuse sur le jeu de jbm xD

leojean890: j'ai plus 1 seul if mais plusieurs mtn:P

leojean890: je tune mes magic numbers :P

leojean890: un coup je rank 5 un coup 12

leojean890: omg

leojean890: en vrai c'est un peu random selon les matchs :P

leojean890: Illedan et dwarfie m'embêtent :P

TidyMaze: huhu et pendant ce temps je fais 500K parties en 50ms pour quand meme pas etre premier :D

leojean890: moi c'est genre 6 if

leojean890: au lieud 'un

Snef: ah mais t'as une sim TidyMaze ?

leojean890: et je rank pas mieux qu'avant

leojean890: allo quoi

TidyMaze: oui c'est un MC (sans TS)

leojean890: rank #4 this time

TidyMaze: les postmortem vont etre marrant :D

"bon ben mon code c'est 2*dist - 3"

leojean890: :p

leojean890: des if ça se défend pas mal

leojean890: je rank souvent entre 4 et 5 ou plus bas selon les params..

leojean890: mais j'ai bien fait mpnter dwarfie et illedan

leojean890: car ont bon winrate sur moi:p

leojean890: TidyMaze ça dépend des fois :p

TidyMaze: hop, de nouveau en place https://docs.google.com/spreadsheets/d/e/2PACX-1vRdR4SpYZ-t8o11tqqMpMQruRPaMjRChAhyJAcWd38W41uExbPFK_I-TKpXjKll3-f6JkUod14jffDY/pubchart?oid=1837678358&format=interactive

dbdr: sympa TidyMaze

dbdr: ya moyen d'avoir une echelle en ordonnées?

TidyMaze: pas vraiment, il part de 0 en mode auto

TidyMaze: et j'ai pas envie de set le minimum à la main :D

TidyMaze: (c'est bon, à la main)

dbdr: :+1:

Alshock: c'est quoi le TS ?

Alshock: je suis à jour sur aucun acronyme

Alshock: ah putain c'était juste pour MCTS pardon

Zorg1: Tree Search non

TidyMaze: yup

Zorg1: sinon tout seul c'est généralement pour le JS nouveau 'TypeScript'

Zorg1: envie de créer le "BugScript"

Alshock: Oui non mais finalement j'ai les deux c'est juste que un MC sans TS je cherchais autre chose va savoir poruquoi

Zorg1: (mais qqn a du déjà avoir l'idée)

Alshock: Et du coup sans TS c'est juste que tu fais des simulations mais tu ne stockes les résultats que pour les enfants sans compléter l'arbre @TidyMaze ou c'est autre chose ?

TidyMaze: je pars de l'etat courant et je fais des parties totalement au pif, je stocke juste le premier coup et l'issue (win/played)

dbdr: Zorg1, ya Beautiful Soup, super nom de libraries d'ailleurs

Alshock: Ouais ok 'est bien ce que j'avais compris

dbdr: vu que c'est pour parser le html de façon permissive

Alshock: je vais essayer de faire une eval

dbdr: aka de la soup

Zorg1: dans la soupe, y a plein de trucs ;-)

Alshock: du chou ?

Zorg1: des poireaux

Alshock: https://www.youtube.com/watch?v=C2n212OP1cQ&t=273s

Zorg1: (enfin là on peut faire une énumération exhaustive des légumes ;-) )

TidyMaze: on compte les tomates ?

Default avatar.png JBM: et les haricots

Alshock: le lait aussi

TidyMaze: ben non, c'est un fruit ça

dbdr: JBM, c'est quoi la façon correcte d'écrire un fichier par-dessus un autre, de façon atomique?

Default avatar.png JBM: tu peux pas

Default avatar.png JBM: t'en ecris un autre et je sais plus comment on fait pour swapper l'inode atomiquement

dbdr: c'est un truc comme ça que je cherche oui

dbdr: donc on peut?

Default avatar.png JBM: je sais plus trop a quel point

Default avatar.png JBM: j'avais relu la doc la-dessus y'a qqs mois

dbdr: ya pas de vie humaine en jeu

Default avatar.png JBM: ca a l'air super grave

Default avatar.png JBM: c'est au moins pour mettre a jour les logs du chat russee

dbdr: je veux juste pas avoir un demi fichier si je fais Ctrl-C au mauvais moment

dbdr: :D

Default avatar.png JBM: ah mais si c'est que ca t'as pas besoin d'atomicite

dbdr: ecrire autre part, et rename

dbdr: ?

Default avatar.png JBM: truc >file.new && mv file file.old && mv file.new file

dbdr: a un moment ya plus de file là

Default avatar.png JBM: oui

dbdr: rien de perdu

Default avatar.png JBM: mais pas de demi-file

dbdr: oui

dbdr: mv file.new file

dbdr: c'est pas correct?

Default avatar.png JBM: c'est correct

Default avatar.png JBM: ptet avec -f

Default avatar.png JBM: je suis pas sur que ce soit atomique

dbdr: faut faire gaffe d'etre sur le meme fs en tout cas :)

Default avatar.png JBM: bien sur

Default avatar.png JBM: ah si ca a l'air possible

Default avatar.png JBM: (Linux)

Default avatar.png JBM: If newpath already exists, it will be atomically replaced,

dbdr: c'est la doc de quoi ça?

Default avatar.png JBM: rename(2)

dbdr: ok. merci!

Default avatar.png JBM: que mv appelle sans aucun doute

dbdr: je savais que si qqn sait tu sais

Default avatar.png JBM: lol

Default avatar.png JBM: c'est toujours pas ce que j'avais lu y'a qqs mois

Default avatar.png JBM: y'avait un truc genre pivot_inode

Default avatar.png JBM: bah

Default avatar.png JBM: ca doit etre pour des cas mega tordus

Alshock: j'avais un clou comme ça

dbdr: c'est pour les centrale nucléaires. vu l'enjeu, ils ont besoin d'opérations atomiques

**dbdr sort

TidyMaze: le ranking est bloqué à 0% chez moi JBM, t'as encore cassé codingame ?

Default avatar.png JBM: j'y ai pas touche depuis avant le diner

Snef: ça fait pareil sur la contrib de s truct

Default avatar.png JBM: c'est sans doute ton code qui merite pas mieux :P

TidyMaze: quel di- oh !

Default avatar.png JBM: *cliffhanger*

BigUP: tiens, submit bloqué sur Crystal Rush ! ;(

BigUP: et plus de Tchat également allez savoir pourquoi ?

Default avatar.png JBM: la coincidence est troublante

BigUP: JBM, le Tchat, je ne l'ai plus depuis ce matin environ

BigUP: a part sur cette fenetre (si je raffraichi, je pense que c'est mort)

BigUP: je vai sessayer de vider mon cache, meme si j'ai "desactiver le cache" de coché

BigUP: ca à l'air bien explosé...

Default avatar.png JBM: c'est normal, c'est le pont

Default avatar.png JBM: s'il faut que ca pete, c'est forcement la

BigUP: ha !? bah c'est revenu ici

BigUP: JBM, ha !? il n'y a plus le gars qui appuye pour ca marche ?

BigUP: enfin c'est revenu sauf sur Crystal Rush .... comme par hazard au moment ou j'allais passer Silver !

BigUP: Complot !

TidyMaze: c'est toujours affiché 0% mais les nouvelles parties de pb4 sont bien comptées

Default avatar.png JBM: ah, ca y est, le boss timeoute plus

pb4: TidyMaze tu as quoi sur Trolls et Chateaux ?

TidyMaze: une IA du feu de dieu

TidyMaze: MC sans TS

Default avatar.png JBM: aaaaaaaah

Default avatar.png JBM: j'envoyais deja la bonne roadLength en input

Default avatar.png JBM: y'a pas du tout de breaking change, c'etait juste de la mauvaise doc pour les maps en fait

BigUP: Je cherche un outil pour parser un fichier HTML et concaténer les .css et .js, une idée

Default avatar.png JBM: bah, personne la lisait dtm

BigUP: ?

Default avatar.png JBM: euh, beautifulsoup?

Default avatar.png JBM: O:-)

BigUP: JBM, il fait pas juste du parsing de HTML beautifulsoup ?

Default avatar.png JBM: aucune idee c'est du python

BigUP: ca m'irait bien si ca le faisait, j'ai regardé tout a l'heure, mais j'ai pas eu l'impression qu'il le faisait

BigUP: dire que j'ai fait un projet qui fait ca, mais il est basé sur les URL rewrite d'apache et codé en PHP...

257832: write it yourself

BigUP: BlaiseEbuth, ca me démange, mais je me dit que ca doit exister.... J4ai trouvé gulp-htmlbuild, mais ca m'a l'air un poil lourd et je me demande s'il ne faut pas en plus venir mettre des commentaire dans le HTML pour qu'il fasse le boulot

257832: Bah... Si tout est dans le même doc, tout le js est entre <script> et le css entre <style>, y'a pire à parser...

BigUP: oui en tout cas, c'est le cas

pb4: "sans TS" ça veut dire quoi ?

Default avatar.png JBM: c adoit etre typescript la

Default avatar.png JBM: ah non c'est tidymaze c'est l'autre

Default avatar.png JBM: ben MC quoi

257832: pb4 montecarlo, pas tree search

TidyMaze: lol vous dites juste MC dans ce cas là ? Je vois que ça crée de la confusion

Default avatar.png JBM: ben oui

Default avatar.png JBM: y'a pas d'arbre!

pb4: Juste deux chateaux !

Default avatar.png JBM: merde j'ai toujours pas fini l'artwork pour mes arbres

BigUP: hum, j'ai trouvé un script qui inline tout... en modifiant pour sauver les inlines dans un fichiers et ajoutant les bonnes balises ca pourrait le faire

pb4: Le dessin de troll est de toi ?

Default avatar.png JBM: oh non on a perdu 257832

Default avatar.png JBM: yes

BlaiseEbuth: Ouai, je l'ai mangé

Default avatar.png JBM: diable

BlaiseEbuth: c'est moi

TidyMaze: tu as quoi sur troll et chateaux ? 2 IFs ?

TidyMaze: (pb4)

Alshock: J'attends beaucoup de l'update des arbres

BlaiseEbuth: Fix ton IA

TidyMaze: ça va changer la meta Alshock ?

Default avatar.png JBM: oui

Default avatar.png JBM: je compte leak quelques bits du rng par steganographie dedans

Default avatar.png JBM: par l'inclinaison des feuilles

Alshock: Cool mon IDE préféré gère déjà ça par défaut ! https://xkcd.com/378/

Stanworld: bonsoir

leojean890: moi j'arrive pas à faire des stats sur mes submits pour tuner des magic numbers, c'est un peu trop random xD

Alshock: 'soir o/

leojean890: selon contre qui on tombe:p

Stanworld: je viens de submit, mais bloquer a 0%

leojean890: enfin mon ia

Alshock: apparemment c'est un souci répandu

Stanworld: il y a un blocage en cours ou c'est "parfois" ?

Alshock: jamais vu ça perso, et je peux pas t'aider plus que ça je viens de revenir

BlaiseEbuth: C'est que pour les gens dont le pseudo commence par s...

pb4: et p...

TidyMaze: et T

Default avatar.png JBM: mais pas J \o/

Alshock: zut la blague que ça bloque les joueur dont les initiales font "Jack sparrow" vient de tomber à l'eau

BlaiseEbuth: C'pas grave, jack sait nager

TidyMaze: c'est pas grave, elle était pas très bonne de toutes façons :)

Alshock: on a toujours "PTSD" dans les options possibles

BlaiseEbuth: L'eau était pas bonne TidyMaze ?

Alshock: @TidyMaze t'as déjà vu une blague de moi qui soit drôle aussi ?

BlaiseEbuth: Alshock: tu fais jamais de blague

Alshock: @BlaiseEbuth plus jamais tu parles de ma petite soeur comme ça espèce de vieux dégueulasse

pb4: TidyMaze : random() parmi une sélection de bon coups

BlaiseEbuth: Ta soeur s"appelle "l'eau" ?

pb4: bons*

Alshock: @BlaiseEbuth et maintenant ça essaye de leak des données personnelles :P

TidyMaze: haha pas mal comme reponse pb4

pb4: Techniquement vraie :innocent:

BlaiseEbuth: "random() parmi une sélection de bon coups" on dirait la description d'une app de rencontre louche...

Alshock: ah mais ça peut être un bon plan ça : tu fais ton eval et tu renvoie un enfant random pondéré par son score d'éval

Alshock: Quand je pense aux même vannes que toi c'pas bon signe BlaiseEbuth

BlaiseEbuth: Au contraire, c'est signe de progression... :imp:

**TidyMaze n'a rien vu ni lu

BlaiseEbuth: Ou alors un régression de ma part... C'est inquiétant.

BlaiseEbuth: "vieux dégueulasse" ? J'suis pas vieux !

Alshock: @BlaiseEbuth ah pardon du quiproquo, je voulais dire que c'est pas bon signe pour toi évidemment x)

BlaiseEbuth: Ah.

TidyMaze: euh pb4, c'est quoi cette IA ? x)

TidyMaze: j'avais pas vu que tu étais juste passé ... premier

Default avatar.png JBM: du random comme ca je veux bien le meme

BlaiseEbuth: C'est une HiiiiHa !

TidyMaze: je m'en fiche, je montrerai ça à mes petits-enfants un jour https://imgur.com/a/rojBu46

pb4: haha

pb4: Sérieux suis premier ?

Default avatar.png JBM: fais l'innocent

Default avatar.png JBM: on a des COPIES D'ECRAN qui le prouvent

pb4: Bah je croyais être bloqué sans aucun match

Default avatar.png JBM: t'as du en passer un

pb4: cool :)

pb4: 0 -> 100% des matchs, c'est 10 matchs de plus -_-

pb4: TidyMaze : si le jeu était Pierre/Papier/Ciseau, j'ai une IA qui jouerait 33% du temps pierre, 33% du temps papier, 33% du temps ciseau

Default avatar.png JBM: et le 1% restant!?

pb4: timeout

Default avatar.png JBM: je sens que toute la magie est la

pb4: JBM j'ai des défaites qui ne devraient pas en être :-

pb4: :(

TidyMaze: je pense qu'il trolle

Default avatar.png JBM: dans quel sens?

Default avatar.png JBM: le vent soufflait pas dans le bon sens?

pb4: Le troll termine au milieu de la map et je perds

pb4: Tour n-1 :

Default avatar.png JBM: y'a une popup dans la timeline?

pb4: le troll est 1 case du coté de l'adversaire, j'ai 1 pierre il en a 2

pb4: Non

pb4: On joue tous les deux "1"

TidyMaze: très clairement il existait une solution optimale et tu l'as trouvé :P

pb4: ensuite il joue "1" et moi "0", ça ramène le troll au centre

BlaiseEbuth: pb4 tu perds si t'as plus de pierre donc normal

Default avatar.png JBM: tu perds pas forcement si t'as plus de pierre

leojean890: tu fais ton eval et tu renvoie un enfant random pondéré par son score d'éval => ça je l'ai fait dans bulls and cows xd

pb4: ensuite ni lui ni moi n'avons de pierre, le troll est au centre et je perds

Default avatar.png JBM: tu perds, ok

Default avatar.png JBM: mais l'autre aussi au moins?

BlaiseEbuth: Mais il peut pas jouer 0

BlaiseEbuth: Si ? Ah si t'en a plus... Ouai, j'ai rien dit

pb4: Non

pb4: Il gagne

Default avatar.png JBM: c'est pas juste!

Default avatar.png JBM: son chateau reste debout?

pb4: Oui

Default avatar.png JBM: t'es joueur 1 ou 2?

pb4: D'après le viewer je pense qu'il doit y avoir égalité

pb4: mais mon IA me dit qu'elle perd

pb4: je suis sur la droite

Default avatar.png JBM: elle te dit ca comment?

pb4: -1

pb4: :D

Default avatar.png JBM: euh

pb4: (dans stderr quelques tours avant)

Default avatar.png JBM: comment elle le sait? :P

BlaiseEbuth: JBM, fais pas style. On a vu le if(player == "pb4")player.lose(); dans le referee.

Default avatar.png JBM: j'ai pas confiance en ton IA, trop de random

Default avatar.png JBM: le referee il dit quoi lui? XD

BlaiseEbuth: Ton IA est juste défaitiste pb4, le referee fonctionne.

pb4: "Résumé du jeu : http://chat.codingame.com/pastebin/0fdf0e05-f7f5-4137-bb5f-1de3c3465db6

Default avatar.png JBM: bon

BlaiseEbuth: C'est pas marqué que le troll est au milieu...

Default avatar.png JBM: ca va etre dur a debug

Default avatar.png JBM: je te dis quoi

Default avatar.png JBM: pendant la phase draft, je rajoute la destination numerique du troll

Default avatar.png JBM: dans le log referee

BlaiseEbuth: Tu devrais dire destination digitale, c'est plus buzz.

Default avatar.png JBM: ah mais ah mais ah mais

Default avatar.png JBM: je crois que j'ai une idee de la cause

Default avatar.png JBM: c'est ce fichu java

Default avatar.png JBM: (code par moi)

Default avatar.png JBM: ma gestion de fin de partie est ultra pas propre

Default avatar.png JBM: j'ai un refacto dans le pipe

BlaiseEbuth: Ca se fume ?

Default avatar.png JBM: si c'est deterministe avec cette paire de joueurs, sauve le seed

pb4: C'est fait

Default avatar.png JBM: je devrais arriver la d'ici une heure

BlaiseEbuth: Pour l'instant, il n'est pas là. C'est un holograme.

TidyMaze: c'est un compte smurf d'automaton2000

Automaton2000: avec ça je suis d'accord, mais je ne trouve pas le même code que tout à l'heure

pb4: Je pense que je lis mal tes inputs

pb4: au tour 0

pb4: road_length = 14 et troll_pos = 6

Default avatar.png JBM: arg

Default avatar.png JBM: trollPosition = roadLength / 2;

TidyMaze: 14 ? :O

Default avatar.png JBM: ca m'a pourtant l'air pas delirant

Default avatar.png JBM: AH

Default avatar.png JBM: LOL

Default avatar.png JBM: ok, hotfix

Alshock: xD

Alshock: il a vu un string usagé dans son code

pb4: Je n'ajoute pas de facteur correctif alors ? :D

Default avatar.png JBM: alors tu vas rire

Default avatar.png JBM: ton chateau etait plus pres du troll que le sien

Alshock: de 0.5 ?

Default avatar.png JBM: de 1

TidyMaze: mais wtf

Default avatar.png JBM: ouais :-)

BigUP: ha voila, j'ai fini par trouver un truc qui doit fair ele job -> https://github.com/IvanoCar/resource.minifier

Alshock: t'as rapproché le palyer 2 ? xD

Default avatar.png JBM: ben faut bien une petite injustice qq part

BigUP: ils sont ou vos trolls ?

TidyMaze: tu sais plus coder quand c'est pas en haskell mon pauvre JBM

Alshock: C'est du génie laisse comme ça :satan:

Default avatar.png JBM: grave

Alshock: p2_pos = <$>

Default avatar.png JBM: non mais la c'est dans ma simplification de road_length pour devenir coherente, j'ai oublie la

Default avatar.png JBM: je crois d'ailleurs que pour arreter les blagues je vais passer la representation interne a des positions de -halflength a +halflength

Default avatar.png JBM: j'ai UL un truc, vous pouvez reessayer?

BlaiseEbuth: JBM ul, et Zorg1 ulul...

pb4: égalité, c'est mieux !

Default avatar.png JBM: on la connait

pb4: ...

pb4: J'ai testé avec le stub pour moi...

pb4: ah bah voilà !

pb4: Victoire :P

Default avatar.png JBM: il est pas si mauvais le stub hein

pb4: Le referee est très bien maintenant, j'ai repush, une seule défaite :D

Alshock: gj

Default avatar.png JBM: ah, je vais fixer ca tres vite alors

pb4: touche à rien

Alshock: Je tente un noubeau bail des enfers, préparez-vous à un push catastrophique dans 15 minutes

Alshock: -b+v

BlaiseEbuth: Un noubeau vail ?

TidyMaze: il a traité qui de noob ?

Default avatar.png JBM: git commit -m"LOL-hotfix: right castle was closer to the troll's starting point than left one"

Default avatar.png JBM: heureusement qu'il y en a au moins Certains qui testent les contribs

Alshock: nous on teste juste les overflows

TidyMaze: http://chat.codingame.com/pastebin/beffbf74-dcb7-4d8d-8704-f0bdb3581756

Alshock: non juste que la distance maintenant c'est 2k et plus 2k+1 entre toi et l'adversaire

Alshock: genre toi -> troll = 10, toi -> adversaire = 20 (et troll -> adversaire = 20 grâce au fix)

Alshock: -20+10

Default avatar.png JBM: il est plus la ce charabia TidyMaze

Default avatar.png JBM: refresh

Alshock: il efface les traces

Default avatar.png JBM: je l'ai remplace par le bug de pb4

Alshock: #onNoublieraPas

Default avatar.png JBM: mon git oublie pas non plus

Default avatar.png JBM: il reste la a se payer ma poire

TidyMaze: oki Alshock donc maintenant j'ai un bug si on me change mes inputs ^^

Alshock: Oh oui ! on a le MSG

Alshock: on peut se TRASHTALK!

BigUP: je crois que j evais pousser du monde en Silver sur CR

Default avatar.png JBM: enfin tu le ferais si y'avait du monde a CR

BigUP: JBM, je me ferais pousser s'il y avait du monde en Bronze... mais bon la, c'est démerde toi avec ton random pour espérer passer le boss

BigUP: mais je crois que je vais pousser les 10 qui me gènent et ensuite, j'aurais le boss pour moi tout seul ! :

BigUP: et de 1 poussé en silver ...

EricSMSO: JBM, je peux t'embêter 2 s sur Troll ? Quand je me mets en joueur 2, l'input que je reçois n'est pas l'input d'avant le joueur 1, mais celui d'après sont coup. Par exemple sur une grille de dim 15 la première position de Troll que je reçois est 6 au lieu de 7.

Default avatar.png JBM: c'est le bug de pb4

Default avatar.png JBM: refresh

Default avatar.png JBM: enfin relance des matches plutot

Default avatar.png JBM: c'etait biaise contre le joueur 2

Default avatar.png JBM: parce que je me suis emmele les pinceaux en me debarrassant des reliques de longueur de route comptee en cases

EricSMSO: Refresh mon lien, vers un autre arene de test ?

Default avatar.png JBM: j'aurais pense que relancer des matches devrait suffire

Default avatar.png JBM: mais on sait jamais, refresh la page de l'ide une fois quand meme

EricSMSO: Ok merci. Refresh dodo. On verra demain :zzz:

Default avatar.png JBM: bonne nuit

Default avatar.png JBM: et merci de tes commentaires sur la page contrib!

TidyMaze: hehe j'ai glorieusement corrigé mon bot pour le road_length v2, eh bien il est moins performant que la version buggée ^^

Alshock: une division flottante par zéro en C++ c'est Infinity ?

TidyMaze: http://cpp.sh/7zf2b

TidyMaze: oui

Alshock: C'est ce que j'ai eu aussi, mais je veux dire, c'est pérenne ça comme présomption ?

Alshock: Enfin, j'm'en fous CG compile comme ça, je pars du postulat que oui c'est valide

Alshock: (pourtant NaN existe o.O)

Alshock: Adjusting weights 9.42995e+11 | 9.41457e+11 | 9.39729e+11 | 9.37801e+11 | 9.35664e+11... Ah mais c'est beau ça comme bug

Alshock: la somme totale était censée valoir 1, comment j'en suis arrivé là ?

Default avatar.png JBM: c'est pas toi qui parlais de division par 0.0?

Alshock: , tu noteras que j'ai beau m'en approcher violemment j'ai pas atteint inf :P

Alshock: remarque non inf est vers 1e2XX sur un float non ?

Alshock: double*

TidyMaze: hop, top2 :D

TidyMaze: assez bossé, il est temps que je me repose demain au taf

Snef: pas gentil ça TidyMaze

Default avatar.png JBM: vers 2^128 j'aurais dit

TidyMaze: hehe Snef

Default avatar.png JBM: ah mais non 2^1024

leojean890: TidyMaze MC toujours ?:P

TidyMaze: oui

TidyMaze: j'ai juste repush en boucle et ajouté 2 conditions de fin de jeu vraiment stupides

leojean890: moi tjr des if xD

TidyMaze: c'est beau :D

leojean890: ouais ok des conditions pour si le troll est à une dist de 1 d'un des 2 ?:P

TidyMaze: tout à fait

TidyMaze: il était frileux ou optimiste sans ça

leojean890: moi c'est plutot quand il s'approche de mon chateau que mes conditions se réveillent xD

leojean890: car veux pas perdre xD

TidyMaze: alors que tu pourrais le laisser trouver des solutions tout seul comme un grand ^^

leojean890: j'avoue, => MC :P

Alshock: C'est ce que j'essaye de faire mais il s'obstine à timeout

leojean890: bah moi j'ai essayé d'affiner des magic numbers :P

leojean890: il s'en sort pas trop dégueu

Alshock: les magic numbers c'est pour les faibles, moi je m'essaye aux arcanes de la magie noire foireuse

leojean890: mais y'a clairement mieux :P

Alshock: genre le ron weasley du necronomicon

leojean890: hehe :P

leojean890: juste j'affine des seuils pour

leojean890: - quand tirer plus que 1

TidyMaze: le truc c'est que quand les regles vont changer suite à un saut d'humeur de JBM tes seuils sont bon à jeter ^^

leojean890: -et dans ces conditons, combien tirer

Default avatar.png JBM: c'est pour lutter contre le hardcode

leojean890: j'avoue :P

Alshock: @TidyMaze build for today, save your job tomorrow

leojean890: j'ai pas de hardcode sur des distances :P

leojean890: mais des proportions de distance du troll vis à vis de la longueur totale du chemin :P

TidyMaze: bonne nuit ^^

leojean890: good night !

Alshock: ah ouais c'est pas risqué à cause des seuils justement de jouer en proportions ?

Alshock: la bonne nuitée

leojean890: à voir :p

leojean890: j'ai une version comme ça, on verra après :p

leojean890: pour le moment elle est 5eme ça va:p

leojean890: même si forcément elle va se faire doubler encore et encore :p

Alshock: bon je vais déjà essayer de voir où je to

leojean890: tjr pas de chat dans l'ide

leojean890: c'était férié today donc ils ont pas bossé dessus j'imagine:p

Alshock: aaaaah c'est donc pour ça que j'ai rien glandé aujourd'hui, parce que c'était férié !

leojean890: hehe genre tu ne savais pas ??:P

Alshock: en vrai si, mais j'ai trouvé la blague drôle

Alshock: enfin, en vrai je m'en suis rendu compte à 1àh

Alshock: -à+0

leojean890: 10h, allumer la VM de boulot ?? ah bah non c férié :p

Alshock: ah mais plus ça va plus mes IAs deviennent connes

Alshock: pourquoi elles s'imaginent que c'est une bonne idée de se suicider ?

leojean890: ça c'est moi si je retouche à CR mdr

leojean890: mon pire multi avec oware:P:P

Alshock: bah visiblement même dans un challenge aussi simple que troll vs castles la débilité de mon IA s'échappe dans des dédales inconnus

leojean890: tu fais qq if ?

leojean890: ou MC ?

leojean890: troll vs castles c'est simple mais pas tant que ça en fait :P car ça reste une compet:p

leojean890: faut pas gacher ses pierres pour rien, mais se défendre qd même:P

Alshock: bruh

Alshock: mon IA lance entre 20 et 40 pierres au premier tour

leojean890: ah ouais :P:P

Alshock: sur 50

leojean890: à enlever, ça :p

leojean890: MC je présume ?:P

Alshock: bah je veux bien mais je sais pas pourquoi elle fait ça xD

leojean890: y'aurais pas hardcodé ça je suppose :P

leojean890: t'aurais*

Alshock: nan magie noire, j'ai essayé avec un ga et avec des poids par move possible

leojean890: ah ouais

leojean890: ga, tu simules N tours

leojean890: et tu évalues

Alshock: ouais sauf que j'évalue pas, je joue la partie

Alshock: c'était un proto, le résultat m'a dit "ne surtout pas creuser"

leojean890: et tu crossover en switchant pour 2 simus le N ieme tour je suppose :P

Alshock: yep

leojean890: ouais donc comme MC tu vas jusqu'au bout

leojean890: sauf que tu crossover / mutes

Alshock: le problème c'est que chaque chromosome vaut entre "envoyer 1" et "envoyer tout"

Alshock: mais du coup il a du mal à envoyer "pas trop"

leojean890: mdr

leojean890: moi j'évite de gacher

Alshock: -chromosome+gene

Alshock: j'adore gâcher

leojean890: j'avoue j'aurais un peu d emal avec un ga:p

Alshock: regarde ma vie :P

leojean890: ce niveau

Alshock: pourquoi ?

leojean890: j'ai fait A*craft en GA

Alshock: c'est gentil les gas, c'est doux les gas, bon certes c'est un peu con parfois

leojean890: ça me paraissait naturel avec la pose de fleches:p

Alshock: A*craft tu poses une seule flèche ou non au début c'est ça ?

leojean890: jsais pas, mais jpense que ça peut se faire anyway

Alshock: j'ai pas joué à ça encore

leojean890: A*craft je tire un nb aléatoire de fleches et je les pose aléatoirement pour chaque simu:p

leojean890: x,y,sens

leojean890: mais pas totalement aléaoire

Alshock: aaaah c'est comme ça que ça marche ce jeu ?

leojean890: moins de nbAvailableSpots/3

Alshock: okkk ça fait sens d'un coup, je le comprenais pas

leojean890: ouais tu dis où poser les fleches

leojean890: et tu maximises la longueur des paths des robots

leojean890: la somme des longeurs des paths

leojean890: avec un ga et les fleches c assez adapté je trouvais

leojean890: je vais ptet essayer d'hardcoder lessolutions sinon !

Alshock: pourquoi pas faire simplement des genes de 5 valeurs haut droite bas gauche rien ?

leojean890: maybe

leojean890: j)réfre crossover en intervertissant des fleches/muter en enlevant ou ajoutant ou und e chaque :p

leojean890: préfère*

Alshock: ouais tu préfères faire des trucs moins cons et bourrins quoi

leojean890: jle sens mieux

Alshock: c'est pas très gathonic

leojean890: mas ça veut pas dire que c le meilleur choix:p

Alshock: et tu simules la partie ou tu fais une éval sortie des enfers ? ^^

leojean890: en python en 1 seconde.. ça reste lent de faire N simus, je suis genre 230/750 dans ce truc

Alshock: parce que moi ce serait simu 100% mais avec toi je sais pas ce que tu peux sortir

leojean890: mais pour des multis en 0.05 s vaut mieux abandonner python;p

leojean890: pour ce genre d'algos

leojean890: bah simu aussi du coup;p

leojean890: facile à simuler A*craft

Alshock: tu sais que je fais des simus trop lentes ou trop nulles pour faire passer légende le seul MCTS que j'ai un peu essayé d'optimiser sur UTTT

Alshock: et il est en C j'ai 0 excuse

leojean890: c pas comme CR

leojean890: ah ouais:p

leojean890: moi python et minmax donc 10eme silver:p:p

Alshock: ouais l'opti et moi ça fait 4

leojean890: mais jcompte le repasser en cpp lui un jour

Alshock: http://chat.codingame.com/pastebin/ddc69128-4a8b-47ad-aeeb-9fa6b5b835f5

Default avatar.png JBM: tu parles de quelle partie?

Default avatar.png JBM: qu'elle envoie 0, bah

Default avatar.png JBM: elle fait random(0,pierres)

Default avatar.png JBM: faire un if c'etait un peu complique pour moi tu comprends

Default avatar.png JBM: elle est en java ne l'oublions pas

Default avatar.png JBM: bon allez, dodo

Default avatar.png JBM: je ferai du troll demain

Alshock: xD bon dodo

leojean890: gn:)

leojean890: tiens un nouvel optim que je vais sûrement pas faire car physique :P https://www.codingame.com/multiplayer/optimization/search-race

Alshock: hey en mettant 20% de chance de mutation je peux ptêtre essayer de cacher que je fais 0 reproductions

leojean890: 0 repro ? comment ça ?

Alshock: mais ça a l'air horrible à faire sans physique

Alshock: alors en fait...

Alshock: j'ai deux ga, un pour moi un pour l'adversaire

leojean890: le jeu de race d'Illedan ou trolls castles?P

Alshock: le meilleur moyen que j'ai trouvé pour leur choisir une fitness

Alshock: c'est de faire jouer une partie complète à chaque couple d'ia

Alshock: bah après ça elles ont pas beaucoup de temps pour faire des bébés

leojean890: j'avoue

leojean890: en fct de tes perfs quo

leojean890: i

Alshock: de mes quoi ? :rolling_eyes:

Alshock: sinon le jeu d'illidan évidemment

leojean890: perfs (code rapide ))

Alshock: genre optimiser ça sans simu ça me paraît un tel calvaire

leojean890: :p

Alshock: code quoi ? :P

leojean890: rapide

Alshock: déso y a des mots que mon cerveau refuse

leojean890: en temps d'exécution

Alshock: ah ouais l'éxecution ça je connais

leojean890: pareil vais pas tarder à dodo non plus :P

Alshock: c'est ce que mon ia subit quand je clique sur submit

Alshock: same, j'ai déjà pas bcp de cerveau de base mais alors là...

leojean890: meuh si :P comment que tu te clash :P

Alshock: Cela dit je m'en vais sur une bonne note

Alshock: contrairement à ce que je pensais mon IA converge bien vers un truc pas trop débile sur troll & castles

Alshock: c'est juste qu'elle a pas du tout le temps de converger

leojean890: j'ai quasiment pas codé sur CG depuis dimanche en tt cas, 10 lignes sur trolls.. sinon je lis des PM de PAC et autres contests

leojean890: ah bah tant mieux, bientôt tu optim encore:p

Alshock: je quoi ? :roll:

leojean890: tu amélioreras encore bientôt:p

leojean890: bonne nuit:p

leojean890: si sa convergence est pas mal déjà^^

Alshock: xD t'es le meilleur ! bonne nuit

leojean890: bah non pk ?:P

leojean890: (et trop lente;))

leojean890: faut changer comment sont effectuer les mutations etc

leojean890: effectuées

Default avatar.png n1c0de: Salut ! Comment fonctionne le classement ?