Chat:Fr/2021-06-06

From CG community
Jump to navigation Jump to search

WhatTrickeryIsThis: t

WhatTrickeryIsThis: tortue tortue

WhatTrickeryIsThis: je suis prems aujourd'hui :heart_eyes:

Default avatar.png npo: Bonjour

Remiavecuni: Bonjour bonjour ! comment allez-vous ? je suis passé Mentor :)

Default avatar.png npo: ca va merci et toi ? c'est quoi "Mentor"

Remiavecuni: Ca va. C'est l'étiquette à côté du classement.

Remiavecuni: Si tu vas sur ton profil tu vois ton classement et tu as un titre à côté.

Default avatar.png npo: Félicitations!

Remiavecuni: En passant les seuils tu changes d'étiquette.

Remiavecuni: Merci lol, je ne pense pas être meilleur qu'hier mais c'est marrant.

Default avatar.png npo: on est forcement un peu meilleur que hier tout les jours, je pense

Default avatar.png npo: quels est le type de puzzle que tu fais le plus ? clash of code, ou autre chose ?

Remiavecuni: J'ai fait des clash of code, mais pas que. Je fais un peu de tout. D'ailleurs faudrait que j'en refasse quelques-uns.

Remiavecuni: Ce que je n'ai pas encore beaucoup fait, c'est lescombats de bots. JE n'en ai fait que 2.

dwarfie: bonjour les codeurs du dimanche et automaton2000

Automaton2000: du coup, ça signifie que ma gymnastique ne peut pas être le même que le mien

dwarfie: Automaton2000 : fix tes accords

Automaton2000: c'est pas une super idée

dwarfie: Automaton2000 ... si si , c'en est une

Automaton2000: oui mais bon je dis ça je dis rien

dwarfie: alors dis rien Automaton2000 ... ou alors tortue

Automaton2000: je sais plus trop comment je peux avoir des trucs pas mal

dwarfie: Automaton2000 : facile , fait des puzzles et arrete les clashs

Automaton2000: tu as un replay ?

Default avatar.png npo: Bonjour dwarfie, je prend ton dernier conseil à Automaton2000 pour moi, merci

Automaton2000: à cause du fait que c'est pas le bon

Default avatar.png npo: Automaton2000: tu parles du conseil ? si ça a l'air pas mal

Automaton2000: y'a pas de bug !

dwarfie: cool , il approuve en fait :D

Default avatar.png npo: il faut beaucoup d'interprétation, mais il a, en effet, l'air d'approuver

dwarfie: c'est surtout que parfois il est plein de contradiction ... pas vrai Automaton2000 ?

Automaton2000: je comprends pas bien comment on peut faire de la doc de gcc

dwarfie: (et de hors sujet)

Default avatar.png npo: AH

Default avatar.png npo: effectivement

**dwarfie slaps dwarfie around a bit with a large fishbot

dwarfie: quel noob , j'ai oublie LA regle bien chiante dans TGE ...

Default avatar.png npo: qu'est ce que "TGE"?

dwarfie: multi the great escape ...

dwarfie: un de ceux que je deteste (au point que j'avais rage-quit pendant le contest)

Remiavecuni: Si tu le détestes, pourquoi s'acharner ? ^^

Default avatar.png npo: ok, je suis encore loin de ça

dwarfie: pour le faire une fois pour toutes et plus en parler ;)

dwarfie: et puis , j'ai un lvl a gagner ... des places aussi ... 6 places gagné grace a hypersonic hier

Remiavecuni: Ah donc c'est une histoire de compétition ! C'est pour battre quelqu'un en particulier ou juste pour être le mieux classé possible ?

dwarfie: juste pour etre classé la ou je devrais ... donc devant certains en effet :p

dwarfie: et puis , avoir encore des multi ou je suis meme pas gold ... honte a moi :rofl:

Remiavecuni: Si tu vises Automaton2000 je crfois que c'est bon là

Automaton2000: j'ai du mal avec le mode d'édition

dwarfie: en plus ; vu que j'ai presque plus de puzzle a faire , me reste plus que ca

Default avatar.png npo: Bon je file, bonne journée à tous

Remiavecuni: Bonne journée

Remiavecuni: Coté multi si tu toi as honte qu'est-ce que je devrais dire ^^

Remiavecuni: J'en ai 2 en bronze et le reste pas encore touché

dwarfie: bah , en meme temps , t'es pas la depuis aussi longtemps que moi

Remiavecuni: Non, j'avoue je suis encore au stade du petit nouveau

dwarfie: csb et mean max ... humm ... tu peut peaufiner ton code pour les trajectoires sur search race ... meme principe que csb mais t'es seul

Remiavecuni: search race c'est un autre jeu multi ?

dwarfie: une fois que tu sais aller "a fond a fond a fond" y'a plus qu'a gerer les collisions

dwarfie: c'est un optim

dwarfie: https://www.codingame.com/multiplayer/optimization/search-race

Thyl: j'ai 2 silver 2 gold 0 legend :D

dwarfie: normal , you are a turtle ;)

dwarfie: bon ... todo : ajouter un flood check dans tge

Thyl: j'ai découvert un truc géniale sur le profile

Thyl: tu peut formater au html

Thyl: :D

Alshock: essaye de bourrer un script dedans :smirk:

Atraya: hello tout le monde

Alshock: Coucou Atraya

Default avatar.png icon: Bonjour, comment on trouve le temps de calcul utilisé par notre programme ?

Alshock: Bonjour, lance un chronomètre après avoir lu la première entrée, un autre avant de donner ta réponse, et soustrais les deux

dwarfie: with a clock

Thyl: Alshock c'est interdit

Thyl: icon avec un module ( suremment time) de ton langage

Bon[]Crayon: Salut :ghost:

Bon[]Crayon: Automaton2000 :>

Automaton2000: salut, c'est quoi le nom du puzzle

Bon[]Crayon: Automaton2000 Course de tortues.

Automaton2000: j'étais en train de me demander si c'est pas une impression

Bon[]Crayon: Automaton2000 tout à fiat

Automaton2000: j'arrive pas à le faire en js

Bon[]Crayon: Automaton2000 :)

Automaton2000: ca a pas l'air de marcher ...

Bon[]Crayon: Automaton2000 Fait du python, ça va ramper.

Automaton2000: c'est à cause de la taille de la carte ?

Bon[]Crayon: Automaton2000 Fait un effort.

Automaton2000: ah mais c'est un bon début

jdeveil: bonjour tlm

jdeveil: Automaton2000, toujours fidèle au poste ;)

Automaton2000: même pas de code pour faire une ia qui ne fait pas mieux que le reste

jdeveil: quelqu'un sait utiliser brutaltester ici ?

jdeveil: j'ai un erreur reflect.InvocationTargetException au lancement...

jdeveil: ah trouvé... c'est bon

philRG: fait gaffe à la syntaxe de ligne de commande, l'outil te dit pas s'il trouve pas ton code... seulement qu'il a perdu le match ;-)

philRG: le reflect message est pas bloquant

BiMathAx: Salut, j'ai un pb avec le puzzle Jack Silver : The casino....

BiMathAx: En fait, je ne comprend pas très bien les remises de prix : si il parit 200 et qu'il gagne sur un ODD, alors il récupère ses sous + 100 ou ses sous + 200 ?

jdeveil: philRG: oui c'était ça... il trouvait pas mon exe

jdeveil: BiMathAx: désolé je le connais pas celui là

jdeveil: tu as le lien ?

Zorg1: t1 vous avez une barre de recherche les gars : https://www.codingame.com/training/easy/jack-silver-the-casino

jdeveil: pardon :p

Zorg1: j'avais juste envie de râler ^^

jdeveil: c'était mérité

Zorg1: bon après s'ils demandent de l'aide ça devrait pas les gêner d'envoyer le lien

jdeveil: :)

Zorg1: BiMathAx : bah comme dans tous les jeux de casinos, quand tu gagnes tu récupères ta mise plus le paiement de ta mise

BiMathAx: ok merci ^^

Zorg1: donc si t'as joué 100 sur ODD et qu'un nombre impair sort, tu récupère 100 (ta mise) plus le paiement de la chance égale à ta mise, donc 100

Zorg1: sinon tu perds ta mise

jdeveil: even et odd: 1 to 1

jdeveil: plain : 35 to 1

jdeveil: donc comme dis Zorg1: si tu mise 100 tu récupère 200 sur ODD et EVEN si tu gagnes et 3500 sur un chiffre

jdeveil: 3600 pardon

Zorg1: après l'erreur classique dans ce type de jeu c'est de compter ou de retirer deux fois la mise, en fonction que tu la retires ou non de ta somme avant le résultat

BiMathAx: ok merci bcp

jdeveil: bon ça m'aide pas pour mon code tout ça moi...

jdeveil: il timeout visiblement sans raison

philRG: ça timeout plus souvent avec brutal tester que dans l'ide cg chez moi

jdeveil: là je viens d'avoir un timeout avec seulement 12 rollouts alors qu'au tour précédent il en a fait 3600...

jdeveil: pour pas timeout il faudrait que je diminue à 50ms !

jdeveil: mais bizarrement, j'ai pas d'erreur autre affichée

jdeveil: genre core dumped ou full mem ou autre

philRG: fais gaffe à bien spécifier le niveau de ligue dans brutal tester aussi, les erreurs sont affichées dans le fichier json avec l'option -l '.'

philRG: mais faut un bon parser json pour lire le json

jdeveil: j'ai bien mis le -l... mais dans le json je vois pas grands chose

jdeveil: si il y a un invalid action dans brutal tester... étrange, le code tourne durant quelques tours dans l'IDE

jdeveil: j'ai mis des traces partout dans le code (ou presque) : aucun pointeur null

jdeveil: aucun vector vide (avant de faire des .back)

jdeveil: les new ne retournent pas d'erreur

jdeveil: merde !

jdeveil: au bout de quelques tours, il rentre dans la méthode de recherche du MCTS et n'en ressort plus !

jdeveil: et parfois juste avec un nombre dérisoire de recherches !

jdeveil: question en cpp le cerr il est synchrone ? ou il affiche que quand il a le temps (nécessité de faire un flush derrnière ?)

jdeveil: -n

jdeveil: pour brutal tester ca doit être la league qui n'est pas bonne... mais je trouve pas comment la changer

jdeveil: pour mon code... je sais pas encore :'(

Remiavecuni: Bonjour, vous faites comment pour progresser en code golf ? A part me faire battre par ceux qui codent en ruby et python 3 ... j'ai pas tellement l'impression d'apprendre des choses.

jdeveil: tu codes en quel langage ?

Remiavecuni: C++

jdeveil: c'est pour ça :p

jdeveil: il n'y en a pas beaucoup qui font du cpp en golf

philRG: jdeveil c simple

Remiavecuni: J'aimerais bien tomber sur d'autres qui codent en C++ et qui partagent leur code, mais ça n'arrive jaamis. Ils prennent tous le ruby ou le python3.

jdeveil: sinon quand il y en a: tu regarde leur code et tu apprends en observant...

philRG: -Dleague.level=3

jdeveil: oui il y a bcp plus de raccourcis dans ces deux langages

Remiavecuni: jdeveil c'est justement ce que j'aimerais, mais je crois que personne ne fait du c++ en code golf.

jdeveil: merci philRG je tente de suite :)

Bon[]Crayon: Tu codes pour toi sans la compète.

jdeveil: yep c'est ce par quoi j'ai commencé, c'est rare

philRG: c surtout pour les règles en fait

Zorg1: Remiavecuni : c'est le pb du CoC, t'as des langages nettement + efficace que les autres

Zorg1: après à une époque CG avait organisé des soirées CoC avec langage imposé

jdeveil: Unrecognized option: -Dleague.level=3

jdeveil: oups

Zorg1: (y avait eu pour C++, python, Java ...)

Zorg1: je sais pas sil ils vont refaire ça

Remiavecuni: Mais je sais que c'est possible d'améliorer encore ce que je fais en C++, dans les puzzles de taille de code je suis loin derrière les meilleurs et même avec ceux qui codent en C++

jdeveil: sinon tu peux tenter les exercices en taille de code uniquement (pas de limite de temps, difficulté plus importante et accès aux codes des autres dans le même langage pour apprendre et s'améliorer une fois terminé à 100%)

dwarfie: les soirees clashs ... un fiasco au final :D

Zorg1: ah pas eu trop de retour là dessus

jdeveil: ah non pardon les exos normaux, pas les tailles de code

dwarfie: t'en a fait ... moi j'ai ete assez pfou pour ...

dwarfie: c'etait festival de copy-paste

Remiavecuni: jdeveil je les ai tous fait, en C et en C++, mais une fois que c'est fini, je peux juste constater que d'autres ont fait mieux que moi.

jdeveil: dedans, certains donnent des facilities sur quelques amérliorations

Zorg1: ah ok

dwarfie: pour les golf , y'a des tricks en effet ...

Remiavecuni: Ah tu veux dire regarder les solutions dans les exos qui n'imposent pas la taille de code, pour voir comment optimiser les algos, et ensuite j'optimise la taille de code sur les meilleurs solutions ... bien vu. Merci

**dwarfie en a meme glisser un sur le forum une fois :D

jdeveil: dr

jdeveil: ah oui il y a le forum aussi, certains y post quelques trucs

jdeveil: ah je crois que j'avais pas mis l'option au bon endroit !

Remiavecuni: LEs seules astuces que j'ai trouvé sur le golf en c++ c'est cette page : https://codegolf.stackexchange.com/questions/132/tips-for-golfing-in-c . Je n'en ai jamais trouvé d'autres.

jdeveil: ah ben non... toujours un invalid action sur un des players (j'ai mis le même code pour les 2 players)

jdeveil: Remiavecuni: très bon site pour le code golf... mais il faut réussir à naviguer dedans... pas évident

Bon[]Crayon: Automaton2000 Ça t'en golf un trou !

Automaton2000: c'est déjà un bon point de départ

jdeveil: sinon essaye le turtle, nettement plus intéressant comme langage

Remiavecuni: Y a un rapport avec le fait que tout le monde écrit "tortue" quand automaton2000 apparaît dans le tchat ?

Automaton2000: j'ai du mal à comprendre le simultanné en mcts

jdeveil: Player $0 played (3 3) ... $0 eliminated: Invalid action

Bon[]Crayon: C'est pour essayer de faire dire tortue à Automaton2000.

Automaton2000: c'est vraiment pas mon truc

jdeveil: bon sang, l'option doit pas encore être au bon endroit

jdeveil: ça on sait Automaton2000

Bon[]Crayon: Comme tu peux le constater se n'est pas aisé.

Automaton2000: en début de partie ?

jdeveil: non non, tout le temps

jdeveil: ben ya des fois où il repond des trucs sympa Automaton2000 :)

Automaton2000: tu as de la marge

jdeveil: oui beaucoup.. la plupart du temps ça reste quand même à côté de la plaque Automaton2000 :)

Automaton2000: et puis il y a le puzzle de la semaine

jdeveil: voilà

jdeveil: elles sont comptées comment les leagues dans l'option -Dleague.level ?

jdeveil: 0, 1 = bois 1 et 2, 2 = bronze, 3 = argent, 4 = or, 5 = legend ?

dwarfie: moi je dirais l'inverse ... y'a deja eu jusqu'a 6 wood ...

dwarfie: mais je peut me tromper

jdeveil: hmm ça expliquerai pourquoi ça plante java.lang.NullPointerException au bout d'un moment

jdeveil: pb j'ai pas de log :(

dwarfie: ah et y'a deja eu des sans-wood

BlaiseEbuth: 'java' explique pourquoi ça plante à lui seul.

jdeveil: java pour le coup c'est soit le referee, soit brutal tester...

jdeveil: ah moins qu'il récupère l'exception que mon code a levé ?

Zorg1: Java Haters never sleep

BlaiseEbuth: Je ne hais pas java. Tu ne hais pas une personne 'limitée' à cause de son handicap. Mais si tout le monde encense cette personne et lui donne de grosses responsabilités, qu'elle n'est, de fait, pas capable d'assumer, bah faut pas non plus faire semblant de ne pas voir l'origine du problème...

jdeveil: l'option de league c'est pas comme ça ? : java -jar cg-brutaltester.jar -r "java -Dleague.level=3 -jar tictactoe-1.0-SNAPSHOT.jar" -p1 ./Solution3 -p2 ./Solution3 -l "./logs/"

jdeveil: il y a moyen de lancer le referee tout seul, sans brutaltester ? il y a une doc quelque part ?

jdeveil: bon en ouvrant le code du referee, j'ai trouvé la fonction main... j'ai pu lancer (enfin je crois) une partie sans brutaltester

jdeveil: je crois parce que pour le moment, ça tourne alors qu'une première exception NullPointer est tombée :p

Zorg1: BlaiseEbuth : pas sûr que ça soit mieux si on faisait en C++ tout ce qu'on faisait en Java

jdeveil: merde pareil, il quitte sans fichier de log et pour seul exceptions: NullPointerException (levée presque dès le départ) et un RuntimeException: Invalid Referee command

Zorg1: Après y a certainement des langages plus adaptés maintenant mais souvent c'est le premier dispo qui rafle la mise

jdeveil: bon ça me saoul... je sens que je vais coder un referee en python rapidement juste pour lancer le bot contre lui-même...

jdeveil: tiens ça n'a pas réveillé le petit diablotin...

Zorg1: ^^

Default avatar.png Kanekieuhh: Bonjour ! je suis nouveau dans tout ce qui est code et je suis un peu perdu... quelqu'un peut m'aider !

Bon[]Crayon: Poses-ta question directement.

TheDoudou: salut du monde sur connect 4 ?

TheDoudou: petite question bete

TheDoudou: sous certain pseudo de joueur je vois du texte genre debug

Default avatar.png Kanekieuhh: Quel langage est il plus façile à apprendre ?

Bon[]Crayon: TheDoudou Regardes dans les règles. La plupart du temps, il faut ajouté un espace et un texte après ta sortie.

Bon[]Crayon: Kanekieuhh Acune idée.

TheDoudou: Kane sa dépend de pas mal de chose

dwarfie: de toutes facons on apprend a programmer avant de choisir un langage ...

dwarfie: :p

TheDoudou: du pseudo code ?

dwarfie: par exemple ... ou en tout cas , savoir poser un algo sur une feuille de papier ...

TheDoudou: Bon thx c'est pas mis dans la doc du output mais effectivement sa semble marché

Zorg1: avant le pseudo code c'était du pascal déguisé maintenant c'est du python en français

Default avatar.png Kanekieuhh: Merci ^^, car j'ai des petites bases que je souhaite développr

Default avatar.png groskouik: le fortran c'est bien ...

Zorg1: j'ai toujours eu du mal avec le concept de "pseudo code"

TheDoudou: python est pas mal je trouve pour forcé l'indentation

dwarfie: comme si l'indentation etait importante ...

TheDoudou: bha oui le coding style joue

Default avatar.png Kanekieuhh: the doudou, ok merci ^^

Default avatar.png Kanekieuhh: bah je vais voir pour apprendre seul, ce qui risque d'être galère

dwarfie: non , c'est juste parce que les mecs savent pas documenter leurs codes ... l'apparence c'est accesoire ...

dwarfie: et surtout , ca devrait pas etre un element de syntaxe ....

TheDoudou: Kane faut voir ce que tu veux faire dans un 1er temps une app win/linux/osx/mobile site web microcontrôleur etc

Bon[]Crayon: Initiation au c

Bon[]Crayon: https://framabook.org/docs/c20h/C20H_integrale_creative-commons-by-saV2_AOUT2013.pdf

TheDoudou: bha un code bien mis en forme vaut bien des lignes de comm

Default avatar.png groskouik: vas sur openclassrooms les cours sont bien foutu

dwarfie: :nauseated_face:

Default avatar.png rpalfray87: Je pense que la documentation et l'indentation de son code sont des choses qui vont de paire. L'indentation rend plus lisible à la volé et la documentation aide à la compréhension

Default avatar.png Kanekieuhh: TheDoudou, je souhaite plus apprendre pour les site web et/ou app windows

TheDoudou: rpa pareil faut les deux

Default avatar.png rpalfray87: :slight_smile:

TheDoudou: site web je te dirais du coup html/css/js/php coté serveur

TheDoudou: (hors framework c'est une cata sa aussi)

TheDoudou: je suis en pleins recrutement

Default avatar.png Kurosaif: hello j'ai un souci qu il faut regler rapidement svp. J'ai un projet pour les cours. J'ai utilisé la bibliothèque xlrd qui fonctionnait sur les pc de mon lycee mais chez moi rien y fait ca ne fonctionne pas et renvoie: Excel xlsx file; not supported

TheDoudou: les mecs savent meme pas faire un insert sql en php sans framework ...

dwarfie: on peut arreter le mythe de framework ... c'est juste que les mecs savent pas coder sans ...

TheDoudou: (1er exo faire une todo liste)

Default avatar.png Kurosaif: du coup j ai essayé de changer d'ide, reinstaller les bibliotheques... mais la j ai plus de solutions

TheDoudou: personne n'y arrive from scratch ...

TheDoudou: c'est dingue

Default avatar.png Kanekieuhh: The doudou c'est à dire ?

TheDoudou: bha sans laravel & co y savent rien faire

**dwarfie a defoncer 2 enseigants cette année justement parce qu'il voulait faire un cours de framework au lieu de php+pdo ...

Default avatar.png Kurosaif: en python

**dwarfie en a explosé un 3eme parce qu'il voulait carrément remplacer par du nodejs ...

TheDoudou: genre $mysli->query('INSERT INTO table (txt) VALUES ($txt)'); en mode j'arrive pas à inseert la variable dans la string ...

TheDoudou: VALUES ('$txt') etc etc bref

TheDoudou: concaténation de string 0 ...

TheDoudou: (et les " " car varchar la ... t'oublie lol)

dwarfie: on en revient au probleme , les gens savent faire ils font , ils savent pas ils enseignent ... et ceux qui apprennent d'eux sauront pas plus ...

dwarfie: déprimant ...

TheDoudou: mais bon c'est des jeunes qui sortent de formation

dwarfie: ca doit etre pour ca que je sais faire moi ... pas de formation :rofl:

TheDoudou: bha c'est pas le prob formation ou pas

TheDoudou: c'est avant d'utilisé nodejs apprend le js

dwarfie: en vrai , si , j'ai eu un corps de prog ... en CM1 en logo :D

TheDoudou: pure et dur (sans jquery)

BlaiseEbuth: Non. Apprends pas js

Zorg1: sur un TO7 j'espère dwarfie ? :p

Zorg1: avec le stylo optique qui marche jamais

dwarfie: tu plaisantes .... mo5 ... avec les touches deplacables ...

dwarfie: la peniche et la tortue ... :D

TheDoudou: bon je retourne à mon code connect 4

Zorg1: le problème de "apprendre le JS" c'est que t'as JS d'un côté et tout le bazar DOM du navigateur de l'autre

TheDoudou: non mais js ou autre

TheDoudou: php ok mais sans laravel ou autre

Bon[]Crayon: php+pdo ? Qu'est-ce que c'est pdo ?

TheDoudou: le moins de lib/frameworks au debut

TheDoudou: bha j'ai fais une classe pour connect 4 justement ;)

Zorg1: après oui sur JS c'est la fameuse blague du module qui faisait en truc à la con qui n'était plus là sur npm

Zorg1: et une tonne de truc était KO ^^

BlaiseEbuth: https://www.php.net/manual/fr/book.pdo.php

TheDoudou: ha pdo j'ai lu poo :p

Zorg1: ah l'accès au BdD

Bon[]Crayon: Ok merci.

BlaiseEbuth: :poop:

TheDoudou: tiens d'ailleurs si vous avez une idée pour lire une db en dbf en pdo je suis pas contre

TheDoudou: dbase

dwarfie: tien , je viens de trouver la libpoo ... est-ce un fork de la libcaca ...? ;)

dwarfie: humm ... le dbase ... deja etonnant que ca soit encore suppoerté :D

Zorg1: quelle version aussi ^^

TheDoudou: alors la ...

Zorg1: ça s'appelle pas 4D maintenant en plus, ou je confonds avec autre chose ?

TheDoudou: non advantage c'est repris par SAP

TheDoudou: fin bon m'en fou c'est pour le taff :p

dwarfie: pas sur que le pdo soit envisageable ... dbase est tout sauf transactionnel ... ou j'ai raté un truc ...

TheDoudou: bha ouais c'est chiant la ont passe par du c#=>csv=>mysql

dwarfie: advantage == dbase !? oh my god , c'est pour ca qu'un des outils fournis par un presta est aussi merdique :D

TheDoudou: (avec un check de lastupdate pour pas forcé les update)

Zorg1: après tu trouves des données en dbase, les fichiers semblent avoir été assez populaire

TheDoudou: dwarf oui c'est proprio

Zorg1: Mais j'ai surtout vu ça, des données dans un format de fichier dbase 2 ou dbase 3

TheDoudou: advantage serveur advantage client etc

dwarfie: alors que vous pourriez passer par du php => myqsql direct :D

TheDoudou: 2 je crois mais bon

TheDoudou: bha meme faire les query direct dans les dbf

TheDoudou: (bon vaut mieux une injection mysql de tt facon)

**dwarfie hesite a proposer talend ... mais ca serait pas pire ... voir mieux ...

TheDoudou: c'est pour de la compta espace client etc etc ensuite

Zorg1: t1 talend

Zorg1: le truc qui te bouffe toute ta mémoire et qui plante ?

Zorg1: ou ils l'ont amélioré depuis ?

TheDoudou: lol sympa l'idée :p

dwarfie: j'ai jamais eu ce soucis ... ;)

Zorg1: si tu l'utilises pas ...

dwarfie: (et pourtant c'est en java)

TheDoudou: sinon j'ai une bombe fork c'est plus rapide

dwarfie: Zorg1 ... si peut ... juste pour remplir mon referentiel etablissement depuis tous les referentiels metiers :rofl:

Zorg1: après bon Talend j'ai du l'utiliser il y a dix ans, donc il s'est sans doute amélioré depuis ;-)

dwarfie: apres , j'utilise que le data integration aussi ... donc pas le plus lourd ... et le moins cher ...

dwarfie: (0 c'est toujours moins cher que n'importe quel prix)

dwarfie: :D

Zorg1: mais les ETL j'avoue avoir un préjugé négatif, quand tu passes ton temps sur certains projet à faire des requêtes SQL pour corriger les désynchros de ces trucs là

dwarfie: bah , j'ai pas eu trop le choix ... j'ai conservé une bonne partie de mes scripts en php ... mais les autres ou je suis pas seul , faut que je compose avec des collegues qui savent pas pondre un script ...

Zorg1: surtout quand des gars ont pensé que faire communiquer deux applications par un ETL qui copie des données de base en base c'était top

Zorg1: oui l'avantage de talend c'est qu'il est gratuit

Zorg1: après faut juste espérer que ça ne soit pas le seul

philRG: bah y a pas que le talent qui compte

philRG: faut bosser le physique aussi et le mental

philRG: bon moi je retourne regarder RG

philRG: j'ai un entretien mercredi matin comment développeur C# équipe support et évolution, bon

philRG: comme

philRG: je me souviens que je faisait des imports de données dans Oracle et db2

philRG: s

BlaiseEbuth: Image rare d'une erreur de signe dans son milieu naturel: https://www.codingame.com/share-replay/562265573

philRG: c beau la nature :-)

Default avatar.png Baccussss: Bonjour !

BlaiseEbuth: o/

BlaiseEbuth: :wine_glass:

dwarfie: freexp done ...

Remiavecuni: J'ai suivi ton conseil dwarfie et je suis sur le search race.

dwarfie: et donc ... t'es devant moi ? :D

dwarfie: en vrai , je suis mauvais a SR :yum:

Remiavecuni: Je suis dans la 1ère moitié du classement sans algo, juste avec des if

Remiavecuni: Je ne sais pas combien tu es classé

Remiavecuni: Je suis 212/442

dwarfie: bien plus haut ... mais normal , des ifs c'est un peut leger ...

dwarfie: pour ca , faut du random ... plutot bon que mauvais ... c'est d'ailleurs csb avec le moteur physique qui est en exemple dans la conf de manwe

Remiavecuni: La prochaine étape, avant de tenter les algo dont j'entends parler ici (car j'aime bien réfléchir d'abord mes solutions :P ), ce sera de calculer la courbe idéale (splines cubiques ?) qui passe par la voiture et les 2 prochains checkpoints, pour calculer un checkpoint plus près. Faudra que je détermine la vitesse idéale en fonction du rayon de courbure, puis l'accélération idéale en fonction de cette vitesse.

dwarfie: ambitieux ... et optimiste :)

BlaiseEbuth: On aime pas les optimistes ici.

Remiavecuni: Si je n'y arrive pas tant pis ;)

Remiavecuni: Ah bon Belzebuth ?

dwarfie: y'a un nan optimiste ... se resoud en 33 chars ... et quand il repond a des conseils de commentaire le gars demande la validation parce qu'il a fait ce qu'on lui a dit ...

dwarfie: :D

dwarfie: ouah ... encore pire , un nan qui se resoud en 11 char ... la blague ...

dwarfie: bon , nouveau rage-quit sur TGE ... comme uoi fallait pas etre optimiste :D

**dwarfie aurait du se rappeler que meme le bot silver cheese ...

nicola: Remiavecuni, tu connais les courbes de Bezier ?

Remiavecuni: J'ai déjà entendu ce nom là, ça doit dater de quand j'étais étudiant

nicola: Sinon, il y a l’interpolation de Hermite (une extension de celle de Lagrange).

nicola: Mais elle n’est pas très stable.

nicola: Pas plus que celle de Lagrange.

Remiavecuni: Dans mes souvenirs, les splines cubiques donnaient un bon résultat, c'est pour ça que je les envisageais. Mais je vais jeter un oeil aux courbes de Bezier aussi.

nicola: Les courbes de Bezier incluent les splines cubiques.

nicola: Elles peuvent ne pas être cubiques, tout dépend du nombre de points de contrôle.

jdeveil: help help !

BlaiseEbuth: Aides toi.

jdeveil: quelles peuvent être les raisons d'un timeout dans l'IDE quand en local le programme se déroule pile dans les temps (avec une marge) et une occupation mémoire finale de moins de 200Mo

jdeveil: c'est pas gentil bla

jdeveil: BlaiseEbuth

jdeveil: ( complétion trop rapide ;p )

dwarfie: parce que CG

BlaiseEbuth: Parce que t'as sans doute pas la même conf que les serveurs cg...

BlaiseEbuth: Du coup ton temps local...

jdeveil: ouai d'accord mais je dois descendre le timeout de 100ms à 50ms pour pas passer en timeout !

jdeveil: et ma conf local est plus pourrie que celle des serveurs

BlaiseEbuth: C'est pas possible

jdeveil: presque 2 fois moins de rollout en un tour en local :p

jdeveil: si si

BlaiseEbuth: A moins d'avoir un minitel

jdeveil: ba c'est pas loin... mes machines ont pas mon age, mais pas loin

jdeveil: bon d'accord, je suis quand même 3 à 4 fois plus vieux

jdeveil: qu'elles

jdeveil: mais ça reste de grosses bouzes lentes

jdeveil: en 32 bits pour la plupart

jdeveil: mais du coup ça m'aide pas du tout et je m'arrache les cheveux là dessus

BlaiseEbuth: Fait pas style t'as encore des cheveux

jdeveil: si sur les côtés

jdeveil: :p

jdeveil: et sous le menton aussi :D

BlaiseEbuth: Je veux pas la suite.

jdeveil: c'est eux qui morflent le plus d'ailleurs !

jdeveil: non j'irai pas plus bas

jdeveil: comment je peux avoir QUE des timeout dans l'IDE et 0 à la maison !

jdeveil: timeout au bout de quelques tours de jeu...

jdeveil: au bout d'une 20aine de tour à chaque fois... c'est louche ça

BlaiseEbuth: Ouai. T'es juste mauvais et t'accuses le matériel...

jdeveil: non non... j'accuse pas le matos... juste le programme...

jdeveil: je veux comprendre où il merde

BlaiseEbuth: Faut lui apprendre à faire dans sa litière

jdeveil: j'ai pas de core dump en local

jdeveil: si l'image était pour cela

BlaiseEbuth: Non.

jdeveil: la limite en mémoire c'est bien 700Mo et quelques !?

BlaiseEbuth: https://www.codingame.com/faq

jdeveil: ba oui je l'ai bien vu cette page

jdeveil: j'espérai qu'il y ai une erreur :p

dwarfie: y'a du faux dedans ...

jdeveil: ah tu vois !

BlaiseEbuth: Non.

BlaiseEbuth: CG est absolu

jdeveil: lol

dwarfie: y'a ecrit combien pour la ram en php ?

jdeveil: comme s'il n'y avait pas de facteur humain derrière CG !

BlaiseEbuth: T'as déjà vu des facteurs pas humains ? T'es dans le turfu !

jdeveil: 768

dwarfie: fait un gros tableau et le serveur de cg va arreter et te dire que tu depasses 512Mo et pas 768Mo

dwarfie: mais c'est que sur php ... sabotage !!!

jdeveil: ah il y a un message en cas de dépassement mémoire ?

jdeveil: donc la s'il me dit timeout, c'est pas dû à la mémoire

jdeveil: mon programme s'arrête ou est trop lent sur leur serveur

dwarfie: non ... en php il te le dit ... en c++ tout est timeout ...

jdeveil: argl

jdeveil: m'enfin j'ai fait un compteur rapide, incrémenté à chaque new... j'obtiens 210 000 000 max

jdeveil: des sizeof... donc en octets... donc 200Mo

jdeveil: on est loin des 700Mo

jdeveil: même des 500 de php (le bot est en C++)

dwarfie: overflow , segfault ...

jdeveil: il segfault pas à la maison

dwarfie: parce que tu tombes pas sur les meme seeds et que ca arrive pas c'est tout ;)

jdeveil: merde sur CG c'est systématique !

jdeveil: avec la quantité de run que j'ai fais à la maison, il aurait planté avant !

jdeveil: j'ai même mis des log, 1 ligne sur 2 presque

jdeveil: pour chercher où il s'arrête...

jdeveil: je trouve rien car sur CG, timeout et aucune trace :'(

jdeveil: en local pas de timeout... mais des traces...

dwarfie: que nenni ... sur HS , y'aura fallu plus de 100 essais pour que j'arrive sur un cas precis ... et pas reproductible en faisant rejouer dans les memes conditions ... ca arrive

jdeveil: oui je dis pas que c'est impossible, mais quand d'un côté c'est systématique, la proba que ce soit reproductible elle est quand même proche de 100% !

jdeveil: et à la maison, elle est plutôt proche de 0% :'(

dwarfie: et prout , un 2eme free xp a faire...

jdeveil: ?

dwarfie: des faux puzzles tellement simples que meme en clash ca serait facile ...

jdeveil: ba tous les easy ou presque non ?

jdeveil: elle est de combien la pile d'appel max en cpp ?

dwarfie: la ca fait 2 medium dans la meme journée ... dont un dont j'ai dit des le depart qu'il etait superflu parce que part2 ...

BlaiseEbuth: Ca dépends si c'est une duracel

dwarfie: et ca dure ... et ca dure ...

jdeveil: paskil fallait que je réponde quelque chose à ça ?

jdeveil: j'ai une pile d'appel d'une 10aine de fonctions max

dwarfie: automaton2000 ... une reponse ?

Automaton2000: j'ai mis un peu de temps :)

dwarfie: Automaton2000 ... et donc ?

Automaton2000: ben je sais pas dans quel langage

jdeveil: en C++ Automaton2000

Automaton2000: comme tout ce qui est pas bon

jdeveil: LOL

dwarfie: Automaton2000 ... tu confond la ...

Automaton2000: mais le coup de pas de bol

jdeveil: ba le coup de pas de bol il est de 100% Automaton2000

Automaton2000: je ne comprend pas ce que j'ai de la merde je suis pas sur qu'il y ait un peu de ...

jdeveil: oula c'est pas compréhensible comme phrase ça Automaton2000 !

Automaton2000: et pas le temps de le faire en java

jdeveil: tu m'étonnes Automaton2000 ;)

Automaton2000: et j'ai l'impression que ca fait pas un mail frauduleux

jdeveil: va dire ça à ceux qui le reçoivent Automaton2000

Automaton2000: et en plus faut que je la retrouve

jdeveil: la mail ? Automaton2000 le genre des mots c'est pas pour les chiens !

Automaton2000: moi je vais au lit

jdeveil: bonne idée Automaton2000, ça te fera du bien un peu de repos

Automaton2000: et pour ce qui est à plus de 2 ans

leojean890: alors dwarfie t'es passé sur TGE en MCTS c'est ça ?

leojean890: tu vas bientôt me re-doubler sur le général hehehe

dwarfie: c'est un epic fail suivi d'un rage-quit :D

dwarfie: pour ce qui est du general ... je m'attendais deja pas a monter a ce point juste avec HS ;)

dwarfie: (deja que je pensais pas monter si haut avec un code qui a eu du mal a passer le boss gold)

leojean890: bah t'es passé 180eme de HS alors que t'étais pas dans le top 1000, ça paye tjr:)

leojean890: epic fail pour TGE ? comment ça ? ça marche pas le MCTS ?

leojean890: oauis mais c abusé la légende de HS

dwarfie: soit pas vexant , j'etais dans le top 1000 :yum:

leojean890: bah t'avais pas encore bossé le bot par manque de temps ? ça n'a rien de vexant :P

leojean890: silver, c'est peut être le top 1000 j'avoue j'ai pas ompté

leojean890: pas compté/regardé

dwarfie: mon tge passe son temps a danser ... et poser des murs n'importe ou ...

leojean890: la légende de HS c'est tellement de poussés que même étant moi-même poussé je suis 333 sur plus de 500..

dwarfie: c'est la regle qui empeche de bloquer l'adversaire qu rend gourmand

leojean890: ah je vois

leojean890: ouais TGE y'a quand même un gros branching

leojean890: tu pourrais ptet le faire marcher un peu quand même

dwarfie: ouais , juste mettre cette regle je passe de 25k a 500 simu

leojean890: moi j'ai un minmax depth 2 en vrai et ça top gold lol

leojean890: juste une éval simple et je simule pas tout

**dwarfie a jamais reussi avec minimax ... ses eval sont toujours foireuses

leojean890: je choisis quel adversaire affronter (soit le suivant soit le gagnant en fct de l'écart)

leojean890: bah pour l'éval tu regardes les distances à l'arrivée

leojean890: il va placer le mur là où ça rallonge l'adv

leojean890: rallonge le plus* le path de l'adv

leojean890: des bfs

leojean890: mais je simule pas partout pour la pose de murs

dwarfie: de toutes facons , c'est cheaté tge ... meme le boss de silver cheese a mort ...

leojean890: je me souviens pas du boss silver

leojean890: mais le principe de rallonger le plus possible la distance de l'adv à l'arrivée et te rapprocher toi ça marche pas mal déjà pour la pose des murs

leojean890: y'en a qui utilisent une strat de poser des murs pour s'assurer un chemin gagnant

leojean890: pas pour bloquer mais pour ne pas être bloquable

leojean890: je le fais pas ça

leojean890: en ce moment je fais des puzzles, pas de multis ; mais faudrait que je me fasse un MCTS qui marche

leojean890: j'ai peu de multis à commencer, j'ai un truc quasi partout

leojean890: (il y en a quelques uns qui seraient améliorables en passant en MCTS)

dwarfie: la je me fais un break dans les multi et fait un peu d'optim ...

leojean890: ah btw la règle qui empêche de bloquer l'adv t'es pas obligé de la simuler partout

leojean890: en fait j'avoue tu dis 500 simus, moi je dois être sur un depth 2 avec un branching de 20 avec mes élagages, donc.. 400

leojean890: environ je suppose

leojean890: je simule la règle qui empêche de bloquer l'adv que sur celui que je tente de gêner

leojean890: l'autre si je le bloque par inadvertance tant pis mais dans les faits ça n'arrive pas ou rarement

leojean890: ah tu vas faire de l'optim, je les ai bien avancées début 2021

leojean890: il me reste CG funge

dwarfie: j'en etais meme pas a tester avec 2 adv :D

dwarfie: a part blender ... je les ai tous ... mais certains je les ai clairement baclé :rofl:

leojean890: vu que mon éval c'est des BFS pour savoir le nb de cases restantes pour atteindre l'arrivée je vois direct si je bloque l'adv (et moi-meme)

leojean890: d'une pierre 2 coups, donc^^

leojean890: et minmax depth 2 ça coute rarement bcp en ressources

leojean890: ah oui niveau optim.. j'ai baclé samegame tiens

leojean890: j'ai une éval simu depth 1 et basta

leojean890: c'est pas ouf

leojean890: même the great dispatch j'ai mieux alors que je l'ai fait en officieux quand il était disabled

Zorg1: c'est vrai qu'un smithimax ça devrait marcher sur tron :thinking:

leojean890: TGD j'ai quand même plus que le fameux objectif de 1 (j'ai 2 d'écart)

leojean890: en python

leojean890: les meilleurs ont 0.0000006 ..

leojean890: ptet moins de 0 je sais plus

leojean890: mais c'est fort hehe

leojean890: smitsimax sur tron maybe, jsp

leojean890: A*C SA + hardcode, CVZ SA + hardcode, sponsored challenge des BFS

leojean890: 2048 BS

leojean890: SR BS aussi

leojean890: bender plusieurs BFS

leojean890: B&C2 bruteforce

Zorg1: SR en beam search ? m'ouais pk pas

leojean890: euh SA pardon

Zorg1: ah ok ^^

leojean890: il m'a l'air un peu chaud lui https://www.codingame.com/ide/puzzle/codindice

leojean890: (je suis entrain de faire les VH et y'en a pas bcp que je trouve faisables en moins de 5h mdr)

leojean890: je sens que ça va être galère pour bcp quoi

leojean890: tu as N dés et faut trouver le chemin le plus court pour les faire bouger/se coller et finir sur la face 6

leojean890: je sens direct que la simu va exploser même si je ne simule que des mouvements qui rapprochent du barycentre de l'ensemble des dés

leojean890: (et encore ça trouve pas forcément la solution la plus courte de faire ça!)

leojean890: ptet que ça passerait en glouton

leojean890: répéter 1 chercher la paire de dés les plus proches, 2 rapprocher le dé le plus loin du barycentre de tous les dés parmi les 2 dés de l'autre

leojean890: simuler pour les faire se coller en finissant sur un 6

leojean890: mouais bof pas sûr que ça trouve ce qu'il faut

leojean890: ^^

leojean890: ah non faut pas la distance la plus courte parcourue mais minimiser "he number of times a die was rolled." donc ce serait plutôt un bfs (mais à élaguer car ça timeouterait !)

Zorg1: ça va tu te sens pas trop seul à monologuer sur le chat ?

Zorg1: Automaton2000 tu lui tiens compagnie ?

Automaton2000: mais on m'a dit que c'était une bonne idée

leojean890: sisi un peu je réfléchis à voix haute hehehe

leojean890: mais je pense que le puzzle est assez chaud

leojean890: je pourrai tenter de le BFS...

BlaiseEbuth: https://www.codingame.com/profile/51cf3569a28219e695585f664d80a5b5238752 :scream:

Zorg1: :thumbsup:

Littleyounes: o/

leojean890: 666, troll ?^^^^

dwarfie: c'est quoi ce lvl 666 .... ?

BlaiseEbuth: :imp:

dwarfie: on va etre obligé de signaler un abus la

leojean890: plus un troll qu'un abus ^^

Littleyounes: PTDR

dwarfie: si si , c'est un abusement ... (comme dans pirates des caraibes 4)

leojean890: c'est temporaire jvx dire c sûr^^

Littleyounes: Laissez le dans son délire satanique

Littleyounes: il fait rien de mal x)

Zorg1: c'est vrai que permettre de mettre des balises dans ta bio ^^

dwarfie: on en a bruler pour moins que ca ... et on en brulera encore ... :japanese_ogre:

Zorg1: c'est le genre de truc qui me dit que je suis vraiment pas bon en CSS ^^

BlaiseEbuth: Bah balise oui. Je savais. Mais <style></style> rempli de css...

Zorg1: t'as testé ^^

Zorg1: et t'as gagné ;-)

BlaiseEbuth: Reste à voir pour le js :3

pardouin: et il y a moyen de voir ton vrai lvl quelque part ?

Zorg1: là ça devient chaud si c'est possible

pardouin: (bonjour au fait o/)

Zorg1: pardouin : quand tu survoles son profile ou t'inspecte la page de son profil

Remiavecuni: En mettant la souris sur son avatar dans ce tchat

Zorg1: oui voilà

pardouin: oui

pardouin: merci

dwarfie: bon , recoder SR c'est raté ... c'est un week end de loose en fait :D

Zorg1: par contre le js c'est chaud si on peut le faire

pardouin: moi j'ai fait cgfunge ajd, j'avais la motiv

BlaiseEbuth: Si js marche, je fais un "clique sur la tortue" dans mon profil.

dwarfie: Automaton2000 ... une licorne pour le coup ?

Automaton2000: ca tombe bien, je suis en train de me prendre la tête sur le clavier

pardouin: et 2048 ça met 100% même avec le stub donc je suis pas allé plus loin ^^

pardouin: me reste bender mais une flemme monumentale pour celui-là

pardouin: bon c'est pas le tout mais deux nouveaux medium alors que j'ai du boulot ;(

dwarfie: bah , c'est des faux medium de toutes facons ...

philRG: Level 666 tiens

pardouin: oui ça a pas l'air méchant

dwarfie: surtout le part2 de m.... suffit de prendre le part1 ... de gerer plus d'une piece et c'est quasi fini ...

Remiavecuni: Bonsoir tout le monde, j'ai une petite question à propos du jeu d'optimisaton "samegame". Sans parler algo, est-ce qu'il existe une vraie stratégie ? Je veux dire les gens qui téléchargent ce genre de jeux pour jouer dans les salles d'attentes, ils ont une vraie stratégie pour choisir les zones à faire disparaître ?

pardouin: acheter le pack premium

dwarfie: chercher a composer la plus grande zone a faire disparaitre tout en connservant la possibilité de vider la grille

Remiavecuni: pardoin mdr

Remiavecuni: dwarfie ça c'est le principe du jeu, mais je ne comprends pas tellement comment choisir les premières zones qui vont faire que les suivantes seront plus grandes.

Remiavecuni: Je pourrais choisir bêtement les zones les plus grande, mais ce n'est pas la meilleure solution et ne sera probablement pas meilleur qu'un random.

dwarfie: par chute de bloc et deplacement vers la gauche quand une colonne disparait ... desole mais c'est les regles justement :D

Zorg1: y avait une heuristique de virer la couleur minoritaire je crois

pardouin: dans dev friends il dit que si un type a plusieurs tics il faut tous les vérifier mais plusieurs types ne peuvent pas avoir le même tic donc suffit d'en vérifier un ^^""""

dwarfie: oui et non ... parce que y'a 1 cas a la con

pardouin: je vais le tenter en supposant ça et au pire ça se change facilement

pardouin: suffit de return la liste des tics au lieu du prelier trouvé

pardouin: premier*

pardouin: allez je vais faire ça bien, c'est noël

Zorg1: je crois que j'ai fais un brute force depth 2 en lua pour SameGame

Remiavecuni: C'est souvent que j'entend parler de brute force.

Remiavecuni: Ca consiste à tester toute sles combinaisons possibles ?

Zorg1: dans ce cas là ça veut dire tu fais tous les combinaisons à 2 coups possibles

Zorg1: oui tu finasses pas tu fais tout

Zorg1: d'où le côté un peu "brutal"

Remiavecuni: Et ça ne pose pas de problème de timeout ?

Zorg1: pour la profondeur 2 non, ça tiens

Remiavecuni: Donc tu simules la disparition d'une région, tu recalcules la grille ... pour toutes les régions.

Zorg1: oui mais en fait non j'ai mal lu mon code ^^

pardouin: je crois que j'ai un truc tout pété qui cherche vaguement des zones de couleur

pardouin: et ça fait 125ème ^^

Remiavecuni: Moi je suis 170ème avec du rand. Habituellement je m'en sors avec des if, mais là j'ai aucune stratégie pour mes if.

Zorg1: c'est à dire pour le recacul des groupes je m'étais inspiré de mon code Smash the code

BlaiseEbuth: Ah! https://www.codingame.com/profile/51cf3569a28219e695585f664d80a5b5238752

Zorg1: Remiavecuni pour ce puzzle j'ai bien peur que tu sois obligé de coder une simu

pardouin: kekia blaise ?

pardouin: tu arrivais pas à le remettre normal ?

jdeveil: on l'entend pas ton audio

pardouin: ah ok il y a un audio

pardouin: j'ai pas le son je sais pas ^^

jdeveil: même avec le son ça passe pas :)

pardouin: mon king in check était relou à modifier pour 2 pièces, c'était un truc en 6 lignes pas du tout fait pour vérifier les "pièces qui sont sur le passage"

Zorg1: c'est quoi ça "King in check" ? on dirait le nom d'un démocrate nord-corééen

pardouin: j'ai fini par gérer ça avec des trucs sales à base de tri de trois coordonnées et regarder celle du milieu

pardouin: https://www.codingame.com/ide/puzzle/is-the-king-in-check-part-2

pardouin: (j'ai testé le son et ça fait rien blaiseebuth)

Zorg1: pê un truc pour récupérer tes infos privés

pardouin: ah si c'est bon

pardouin: ce bin vieux rick ^^

Zorg1: perso j'entend rien

pardouin: autorise l'audi et actualise

Zorg1: ah ok

Zorg1: il va tester la balise pour la vidéo aussi ?

pardouin: on verra bien ^^

BlaiseEbuth: Ouai. Tout le monde bloque le son... Hmm...

BlaiseEbuth: J'essaierai js demain.

BlaiseEbuth: Su ce braves gens. La bien bonne nuit.

NomNick: bonsoir, si quelqu'un a une idée sur ce problème ? https://pastebin.com/MCQeJsWU J'essaye de faire tourner cg-brutaltester avec ultimatetictactoe

jdeveil: lol j'essaye aussi de faire tourner uttt avec brutal tester et j'y arrive pas non plus

jdeveil: mais j'ai pas la même erreur que toi :(

philRG: en général, ça ressemble à çà:

philRG: java -jar cg-brutaltester-1.0.0.jar -r "java -jar -Dleague.level=3 tictactoe.jar" -p1 "./uttt_v1" -p2 "./uttt_v2" -s -l "." -n 1

philRG: le tiens ressemble à çà: java -jar .\cg-brutaltester-1.0.0-SNAPSHOT.jar -r "java -jar .\tictactoe-1.0-SNAPSHOT.jar" -p1 "..\UTTT.exe" -p2 "..\UTTT.exe" -t 1 -n 1 -l ".\logs" -v

philRG: le -s est optionnel

philRG: à quoi sert le -t j'ai oublié

philRG: faut que le code sache faire tourner les règles de la ligue

philRG: donc pour UTTT faut au moins level=2

philRG: vu qu'en wood c'est 9 cases et en bronze 81...

philRG: les timeout sont différents entre l'IDE CG et brutal tester, possibilité de modifier le timeout dans le code du referee et recompiler les sources mais je sais pas faire

jdeveil: ah c'était ça le problème !

jdeveil: league=3 on m'a dit... j'avais une erreur NullPointerException

jdeveil: je viens de tester avec league=2 (au cas où) et ça a ouvert un webserver là !

philRG: -Dleague.level=3

philRG: ah mais non l'option webserver c'est autre chose

jdeveil: le -s ?

jdeveil: ouai il a pas l'air d'y avoir une partie en cours l)

jdeveil: là

philRG: le -s c'est pour switcher l'id player

philRG: on peut le tourner en mode serveur mais jamais fait

philRG: là on est sur des outils bricolés pour des usages persos...

philRG: il y a 0 support

philRG: sinon le code source des outils est accessibles (Java), et donc potentiellement scriptable dans un langage de script type bash/perl ou python

philRG: brutal tester ca permet de tester en local facilement sans être jeté par l'IDE à cause de spam submit

philRG: je l'avais utilisé sur le dernier contest pour tuner des magic numbers car l'arène me saoûlait trop le dernier soir

philRG: je me faisais jeter sans arrêt

jdeveil: ayé j'ai réussi à le lancer (une fois)

philRG: sinon je vois pas trop l'utilité de brutal tester vs l'IDE CG

jdeveil: bon ba je retesterai demain (ou plus tard) pour essayer de reproduire le $@#£* de timeout que l'IDE me balance à chaque fois

philRG: ce que je fais dans le doute, je mets un bug dans un des 2 codes pour être sûr que le résultat soit pas moisi par une mauvaise ligne de commande

jdeveil: ?

philRG: ça doit être un bug ton timeout

philRG: ben brutal tester est pas user friendly

jdeveil: ba le problème, c'est que lancé en local (avec une sorte de referee python pour le lancer contre une autre instance de lui-même), il plante pas du tout, pas de timeout... rien

jdeveil: il passe partout, il y a pas de pointeur null

jdeveil: bref j'ai pas trouvé la couille

philRG: ah faire tourner contre sa propre instance, pas sûr que ça marche

jdeveil: pas grave, brutal fonctionne maintenant, je testerai demain

philRG: si 2 noms de code identique ça peut merder

philRG: faudrait 2 noms différents pour le même code

philRG: ok cool

jdeveil: ba cp v1 v2 et go ?

philRG: yes, quand on utilises des outils non officiels, faut faire gaffe

jdeveil: ça marche... je ferai ça

NomNick: hello désolé j'ai du aller gérer des priorités

NomNick: j'essaye le -Dleague=2

philRG: je dis ça au pif mais en général c souvent des trucs basiques

NomNick: pour compiler, c'est pas compliqué, "mvn package"

jdeveil: ouai j'ai fais ça aussi

philRG: oki cool mais j'ai pas mvn, seulement un ide

jdeveil: bon par contre, il faut que j'aille dormir, je me lève dans 5 heures :p

philRG: ah ouais bonne nuit :)

NomNick: mvn tu l'as depuis ton ide

jdeveil: 'nuit tous les deux ;)

NomNick: sinon c'est là

NomNick: https://maven.apache.org/install.html

NomNick: tu dezip mets dans le path et boom

NomNick: bonne nuit

Zorg1: mon code fait boom

leojean890: bam booom

philRG: mon ancien code de merde:

philRG: def pellet_counts(pac: Pac): http://chat.codingame.com/pastebin/d660da3a-fb18-4afb-a0b9-1be24bba4379

philRG: mon nouveau code:

philRG: def pellet_counts(pac: Pac, p_list: List[Pellet]): http://chat.codingame.com/pastebin/852735b4-56d1-4dcd-907f-7ec240dacfaf

philRG: faut que je trouve un psy d'urgence :-D

leojean890: pacman ça m'a gavé, j'y ai pas remis les pieds après le contest hehe

leojean890: (pendant le contest j'aimais bien mais ensuite la flemme)

philRG: n'empêche ton tip d'enregistrer le compteur pour les pellets du fog est cool

philRG: je l'ai fait sur d'autres multis (ie Codebusters) mais sur pacman, ça marche bien

leojean890: ah le compteur du nombre de tours ?

leojean890: depuis la dernière fois que tu as vu un pellet?

leojean890: pour mettre une patience sur ce nb de tours ?

leojean890: seuil de confiance de présence du pellet

philRG: oui, je l'avais pas fait car la flemme, et j'étais parti sur la gestion des combats ensuite, un truc de ouf

leojean890: c'était l'astuce de R4N4R4M4 par ex

philRG: ça s'adapte bien à pacman, je l'ai testé en wood avec mon smurf

leojean890: osef de wood, faut pas tester en wood

leojean890: wood ça passe tranquille avec un random ou à peine plus

philRG: ben si justement tu as des règles simplifiées

leojean890: du genre viser le plus proche de la liste

leojean890: même, ça sert à rien de tester sur ça car pas représentatif du vrai jeu

leojean890: la wood ça sert juste à être passé en 2 sec

leojean890: tu peux tester en bronze limite

philRG: non mais ça donne une idée de ton algo

leojean890: mais autant tester direct dans la ligue cible

philRG: quoiqu'en wood tous les pellets sont visibles

leojean890: contre les IA qui bloquent la tienne

leojean890: tu t'en fous de ceux que tu bats déjà, en gros ; tu bench ton code sur ceux qui te résistent

leojean890: qui te font un mur qui t'empêche de passer au delà

leojean890: ou ceux moins bien classés qui te mettent de petites loses

philRG: j'ai vraiment du code de ouf sur pacman du coup

philRG: bon je vais me pioter, je pars 5j dans le Verdon demain sans ordinateur :-( et codingame, j'vais être en manque

leojean890: genre par ex si ton meilleur code bloque sur les IA classées 120-130 gold, alors tu bench contre les 120-130 histoire de les passer

leojean890: rien en t'empêche de prendre ton ordi, mouahaha

leojean890: j'avoue en vacs autant ne pas en faire :P

leojean890: rien ne*

philRG: bah mais je suis accroc

leojean890: à toi de voir xD

philRG: mais mon IMac est pas transportable

philRG: ptêt un pc portable à la rigueur

philRG: bah autant pas en faire ouais en fait xD

philRG: j'en ai chié sur PacMan au contest (surtout le dernier jour), mais j'ai commencé 3 j avant la fin) pas raisonnable

philRG: pour un noob

philRG: j'ai morflé physiquement

philRG: comme federer hier soir

leojean890: as u wish

leojean890: 3j avant la fin ça dépend de ton objectif quoi:)

leojean890: c'est clairement pas un objectif tryhard

philRG: c invraisemblable d'avoir sué pendant des heures pour coder une fonction de comptage de pellets alors que ça faisait en 10' avec un flood fill

philRG: faut vraiment penser out of the box

philRG: et j'avais pas trouvé la fonction qui va bien aussi:

philRG: def get_manhattan(pac: Pac, pellet: Pellet) -> int:

   modulus_bs = lambda x, mod: min(x, mod - x)
   d = modulus_bs(abs(pac.coordinates[0] - pellet.coordinates[0]), width) + modulus_bs(abs(pac.coordinates[1] - pellet.coordinates[1]), height)
   return d

philRG: allé bonne nuit

philRG: leojean890 pour un noob si un peu je pense

philRG: il y a un an je faisais de la merde

philRG: j'en fais toujours mais j'analyse un peu mieux

philRG: et je code plus propre aussi quand je m'en donne le temps

philRG: def pellet_counts(pac: Pac, p_list: List[Pellet]):

   pac_view_range = []
   p_count = {direction: 0 for direction in DIRS}
   p_list: List[Tuple] = [p.coordinates for p in p_list]

philRG: Là on voit les types des variables avec cette notation. Pour relire un code 2 mois après, c'est pas mal

philRG: def pellet_counts(pac: Pac, p_list: List[Pellet]) -> dict:


philRG: 199 remaining pellets pac: 0 (4, 5) {'right': 5, 'up': 0, 'left': 15, 'down': 0} pac: 1 (5, 2) {'right': 0, 'up': 0, 'left': 0, 'down': 0}

philRG: sur codingame, des codes trop longs c'est desastre assuré

leojean890: bah ça dépend de ton objectif ^^

leojean890: chaque personne se fixe son propre objectif, et c'est plus dur à atteindre en commençant 3j avant la fin sauf si l'objectif est light