Chat:Fr/2020-11-15
dbdr: \o
CrazyHidenTalan: QUestion, comment on sait qu'un sort est épuiser?
faga: ^^ castable
CrazyHidenTalan: Ce n'est pas une variable du jeu?
faga: Qu'entends-tu par epuise?
faga: castable donc.
faga: Dans les inputs
CrazyHidenTalan: ... j'ai du sauter la ligne avec mes yeux..
faga: et REST les reactive
Mazelcop: salut !
dbdr: amis de la rame, salam!
dbdr: \o Mazelcop
Mazelcop: o/
Mazelcop: c'est sympa le dimanche matin, les submits ne mettent pas 40 min pour faire 10 matchs
dbdr: ben justement, ça me parait pas si rapide là
Kashing: Coucou, Les changements de divisions ont lieux a quelle fréquence ?
dbdr: clique sur le nom de la ligue en haut
Mazelcop: ah oui, j'ai rien dit...
Kashing: @dbdr Je veux dire entre la Wood et la Bronze
dbdr: ça se fait dès que tu testes en arene et finis au dessus du boss
Thyl: yo
p3nguknight: hello à tous les codeurs du dimanche!
joelthelion: @dbdr le rust est toujours complilé en debug dans l'IDE?
dbdr: joelthelion oui
joelthelion: pfff, c'est vraiment pénible comme limitation
dbdr: le #1 est en rust quand meme :)
joelthelion: j'espérais vraiment qu'ils allaient changer ça. On était nombreux à l'avoir demandé...
dbdr: mais oui
joelthelion: ça empêche pas, c'est juste un peu galère pour débuguer
dbdr: en tout cas le nombre de rusts augmente sensiblement, surtout dans le top
dbdr: de toutes façons c'est utile si tu sais facilement faire tourner le code en local
joelthelion: oui, c'est flagrant. Pas vraiment étonnant :)
dbdr: :)
dbdr: j'affiche l'input dans stderr
dbdr: ensuite echo '...' | cargo run --release
joelthelion: pas mal effectivement
joelthelion: mais tu peux pas tester l'impact sur de vraies parties
joelthelion: "est-ce que j'aurais gagné en changeant ce truc"
dbdr: j'analyze aussi les parties de last battles
dbdr: oui, mais tu aurias peut-etre gagné celle là et perdu une autre
dbdr: donc le mieux c'est un test à l'échelle de toutes façons
joelthelion: quand tu regardes un truc précis c'est pas mal de vérifier que tu as corrigé sur un cas
joelthelion: enfin bon, comme tu disais ça n'empêche pas emil d'être #1 :)
dbdr: oui, je crée des #[test] de temps en temps
dbdr: sur telle situation, je prends la bonne décision
joelthelion: si j'étais moins flemmard je le ferais aussi :)
joelthelion: très chouette ton idée de dumper l'input
dbdr: :+1:
joelthelion: ça fait quoi si on lance un sort qui ferait déborder l'inventaire?
dbdr: bonne question
dbdr: je fais comme si c'était interdit, mais je suis pas sur
dbdr: je trouve pas dans l' énoncé
joelthelion: pareil, mais je me dis que ça pourrait valoir le coup si c'est autorisé
egaetan: c'est interdit
joelthelion: merci!
dbdr: défaite?
dbdr: ou WAIT
egaetan: non refus
egaetan: WAIT
dbdr: ok, merci!
egaetan: tu me laisseras passer une fois en échange ;)
dbdr: :+1:
jmpeg: si le sort fait déborder l'inventaire il te fait WAIT à la place, ça ne te fait pas perdre
Bon[]Crayon: salut
Bon[]Crayon: automatonn abracadabra
Bon[]Crayon: automatonnn abracadabra
AutomatonNN: toi tu as un truc que tu as pas de problème de te passer de l'angle
Bon[]Crayon: automaton2000 abracadabra
Automaton2000: parce que même si j'ai un peu abusé
Bon[]Crayon: AutomatonNN j'ai l'angle aigus
AutomatonNN: oui mais il a fait un truc particulier que tu as un bon resultat en fait
dbdr: Bon[]Crayon du calme sur les automates
Bon[]Crayon: dbdr abracadabra
dbdr: :)
Onion-sup: Hello =) Quelqu'un sait si il y a le droit de faire un CAST qui m'enlève un ingrédient que j'ai pas dans l'inventaire ?
Julius2k17: invalid action
dbdr: interdit
Onion-sup: Oh shit
Onion-sup: ce serait trop facile!
dbdr: ben c'est un peu la base
Julius2k17: ^^
Onion-sup: merci =)
NotwenCaasi: t'as le droit, ça va juste pas fonctionner et t'auras perdu u ntour
CopperFr: qui a le droit ?
NotwenCaasi: de dire merci?
Zorg1: bonjour à tous et aux bots Automaton2000 & AutomatonNN
Automaton2000: ouais c'est ce que j'ai fait un truc en c++
AutomatonNN: n faire un peu de temps que t'as pas le temps de me rendre compte que c'est pas trop dur de pas te f
Bon[]Crayon: :wave_tone3:
CopperFr: oui faut faire du C++ ou du rust
MoonLyss: codin game m'aura appris une chose : écrire du code co
MoonLyss: comme ça : print(-(-~-int(input())//4))
MoonLyss: merci
Orabig: Nice !
Thyl: hello
Thyl: qui c'est combien CG nous accordent de mémoire ???
joelthelion: 768Mo
joelthelion: https://www.codingame.com/faq
CopperFr: oui je l'ai dit hier
Thyl: merci
Thyl: un short int c'est combien ???
dbdr: ça dépend
Thyl: 1 à 100
BigUP: 1541eme ... il y a encore du boulot
Thyl: oui
CopperFr: short int c'est 16 bits
dbdr: ou pas
Thyl: 16 bits *8*8*8*8*3*3
CopperFr: oui mais ici ?
Thyl: ça passe ???
dbdr: saramamor
WhatTrickeryIsThis: woula le submit il dure 2h
CopperFr: si c'est signé c'est -32768 +32767
WhatTrickeryIsThis: vous préférez -32768 ou +32767 ?
BrainSolver: 42
CopperFr: 0
CopperFr: de toute façon y a toujours un nombre négatif en plus :(
WhatTrickeryIsThis: ça dépend si tu compte 0 comme positif
CopperFr: ben je le compte pas comme positif 0
Thyl: qui gère le learn ???
Zorg1: au moins les flottants t'as un zéro positif et un zéro négatif ça évite les zéros qui sont les deux à la fois ^^
CopperFr: j'aime pas trop les zéro négatifs
CopperFr: heureusement j'ai eu que des 0 positifs comme note :D
Thyl: Zorg1 pour ton bfs pour enregistrer les coups dejà vu tu enregistres tout ??
CopperFr: répond pas Zorg1 il va te prendre ta place
Thyl: non
Thyl: alos
Thyl: juste pas une question qui devoile tes atous
Thyl: je comprends tres bien :D
Thyl: tu geres ta mem comment
Haashi: Thyl pour gérer les coups deja vu, tu gardes ca dans une map
Thyl: existe en C++
Haashi: genre une map avec comme clé un entier
Haashi: et en valeur un boolean
Haashi: pour dire "oui" je l'ai deja vu
CopperFr: ca doit exister en C++
Thyl: ok
Haashi: comme ca quand tu visites un état, tu fais map[entierdefinissanttonetat] = true
Thyl: oui
Haashi: et quand tu visites, tu regardes, si c'est true, tu skip
Thyl: bonne
Thyl: idée
Haashi: le plus dur la dedans
Thyl: je pensée enregistrer les valeurs
Haashi: c'est de trouver une bonne fonction pour entierdefinissanttonetat
Thyl: une fonction de hashage
Haashi: pour éviter que ca se collisionne
Haashi: voila
Mazelcop: il y en a pas quinze millions des entiers définissant ton état ?
Haashi: mmh, pas tant que ça
Orabig: :o pas vraiment !
Orabig: 1001 inventaires différents
Thyl: je pensais à faire un mega Tree
Orabig: multiplié par la fatigue (2^nb de sorts)
BigUP: Hum.. .200 submits en cours en bronze ... CG est sous l'eau ! :)
Haashi: mon inventaire c'est 5^10 possibilités, et a ca tu rajoutes les sorts que tu peux jouer
Thyl: coup delta 0,delat1.... et un repet pour les
Orabig: Donc, avec les 4 sorts de bases, ca fait 1024*1010 états
Mazelcop: multiplié par les potions 2^5
Mazelcop: ouais, en fait ça va
Thyl: tu enregistres Maselcop ??
BigUP: 1010 ou 1001 ? faut vous mettre d'accord ! ;)
Thyl: bitwrise !
Orabig: J'ai calculé 1001 :)
Neumann: 1001
Mazelcop: j'ai un set<entierdéfinissantmonétat> et je regarde si mon état est dedans, mais c'est plus long
Orabig: Thx Neumann :)
egaetan: 1001
Thyl: oui
Orabig: (désolé, faute de frappe plus haut BigUP :) )
BigUP: Vu comment ca rame ce matin, elle va etre compliquée la fin de contest !
Mazelcop: si tu learnes beaucoup de spell, ça fait beaucoup d'états par contre
Haashi: moi je suis aller grossierement pour mon hash
Orabig: Ben oui, ca double à chaque fois Mazelcop
Thyl: ouais
Thyl: pour l'instant je learn pas
Thyl: j'ai tenté un truc
Thyl: visualiser mon algo avec scratch
Thyl: ça marche !
Orabig: arf
Orabig: On veut un screen ! :)
BigUP: Thyl, Psychopathe !
Thyl: y al e snap dans la même ligné mais avec une pensée plus tourné objet
Thyl: pas de screen
Thyl: ça éclate les yeux :D :D
CopperFr: allez un petit screen
sanpas83: la avec +3000 en bronze je pense qu'il faut attendre demain l'ouverture d'argent pour submit sa rame pas mal :o
SeebOmega: :fire::computer::fire:
sanpas83: :thinking: :head_bandage:
SeebOmega: C est un complot pour empecher mon bot de Rependre la verite vraie sur AutomatonNN
AutomatonNN: bonjour tout le monde
VirtualAtom: Salut les gens ,o/
0xCAFE: Bonjour, vous savez combien de temps ça prends à peu près pour faire un submit en ce moment, ça fait 20 minutes et mon bot a fait à peine 10 fights haha ;)
Bon[]Crayon: :wave_tone2:
sanpas83: 287 submit en cours :cold_sweat:
0xCAFE: oof
dbdr: pareil, c'est presque completement coincé
sanpas83: bloqué a 11% depuis 10 bonne minutes
Thyl: heu
Orabig: d'où l'avantage de bosser en local ;)
BigUP: 0xCAFE, à la vitesse actuelle ca va prendre la journée ! :)
Thyl: est y a pesonne sur discord du staff
Thyl: bon
Thyl: appelle CG
CopperFr: 0xTHE il existe pas par contre
0xCAFE: Np, je suis pas pressé. J'ai fait un "super" nouvel algo de maths, j'aimerai bien tester si il est meilleur que mon acien algo ultra naïf ^^
BigUP: 0xCAFE, hum... il est moins bon !
0xCAFE: On va voir ^^
BigUP: 0xCAFE, regle de base de CG, tout nouvel algo est moins bon que l'ancien ! ;)
dbdr: [CG]SaiksyApo [CG]Thibaud au secours
Thyl: tout rame
CopperFr: l'ancien c'était pas un algo
Thyl: faut louer des cpu à amazon et google !
Thyl: :D
0xCAFE: BigUP Oui, plus c'est naïf plus ça marche, je connais :à
[CG]SaiksyApo: ça vous va pas d'attendre 3min par match?
[CG]SaiksyApo: RIP
Thyl: why RIP ???
WhatTrickeryIsThis: nan je préfère comme ça. 15 min par match
CopperFr: Lilian tout rame ?
egaetan: au moins on se repose
[CG]SaiksyApo: :clap: :clap: CopperFr
[CG]SaiksyApo: Bon j'ai ping FredTreg un dimanche, j'espere que vous avez raison !
[CG]SaiksyApo: *XorMode
Lumix: Salut everybody. à quelle place est le bot ? parce que si j'ai bien compris, si on est devant lui demain on passe ligue argent
Thyl: oui mais là il y est pas encor
[CG]SaiksyApo: Il est 800
Thyl: demain il apparait
Thyl: aaa
Thyl: d'acord
Thyl: pardon
Lumix: Okay merci, j'ai de la marge alors :)
[CG]SaiksyApo: Si tu geres un minimum les spells du tome tu passes
dbdr: [CG]SaiksyApo merci
Lumix: Yep, je les gères maladroitement mais suffisament bien pour lui casser la figure
SeebOmega: Lumix te contente pas d'une "bonne lecon" il faut l'aneantir
Lumix: D'aileurs, vous faites des simulations en ajoutant chaque sort pour voir quel sort accelère la préparation de la pot ?
Lumix: SeebOmega, J'y travaille désormais.
BSimo: Booti
WhatTrickeryIsThis: mais vous croyez vraiment ce que dit Apo xD?
Stilgart: il a pas précisé avec quel protocole il a fait son ping :)
Haashi: vous pensez que top 100 ca suffit pour passer silver demain ? /s
Bon[]Crayon: top 100 sur 3000 je pense que tu es large
Zorg1: Apo vient de dire les 800 premiers passent silver non ?
Traquila: Pour les autres c'est terminé ?
Bon[]Crayon: non
Zorg1: bah non ils peuvent toujours passer le boss bronze
WhatTrickeryIsThis: Euler a pas terminé son submit (8h48)
WhatTrickeryIsThis: 62%
Zorg1: moi je regarde Kovi la période de push est plus régulière
Traquila: Si c'est 800, je vais laisser mon bot qui timeout une fois sur 5 :)
Haashi: bon je lance un vrai debat
Zorg1: houla je crains le pire ... :D
Haashi: le brew à prioriser, vous faites le max(brew.price/brew.cost) ou le max(brew.price-brew.cost)
joelthelion: brew.price
Lumix: valeur du brew / Le nombre de tour pour le faire
joelthelion: rien à faire du coût
Thyl: moi
Haashi: rien a faire du coût ok je note
Thyl: aussi
Zorg1: cost chez toi c'est la distance ?
Thyl: fout la depth
joelthelion: Haashi enfin je suis sans doute moins bien classé que toi :-D
Haashi: oui c'est le nb de tour exact qu'il me faudrait
joelthelion: Haashi ah, j'avais mal compris
Thyl: comme ça tu gère l'adversaire quand tui veux après
joelthelion: discount exponentiel pour moi
Haashi: enfaite si tu fais la division, ton bot va souvent prendre les petites popo
Haashi: et si tu fais la soustraction, c'est l'inverse
Oioi: à priori, ce qu'on veut maximiser c'est la densité de points marqués, donc price/distance
Haashi: et en faisant quelques run de mes codes identiques a cette ligne près
Oioi: mais j'ai remarqué que ça marchait pas forcément très bien
Haashi: j'ai remarqué que mon bot avec la soustraction avait plus de win, meme si le code avec le / finissait les 6 potions, en 4-5 potions l'autre avait + de points
Lumix: Tout est question de strat à ce niveau
Lumix: Moi je préfère faire plus de potion et avoir le choix de la dernière
Lumix: Si j'en suis à 5 et que mon adversaire est à 4, je fais la plus chher
Haashi: c'est peut etre ça l'idée
Haashi: si t'en a moins que l'adversaire, tu vas chercher la densité
Haashi: sinon tu te permets de greed
Lumix: En tout cas quand mon algo fonctionnera ce sera son fonctionnement
Mazelcop: perso je préfère prioriser la production, il y a toujours plus ou moins manière de transformer la prod en brew a un moment
Haashi: ah ouais je vois aussi
Haashi: c'est ce que je voulais faire au tout début
Haashi: essayer de m'approcher de la répartition [0,3,3,3] parce que c'est celle qui te permet d'arriver facilement a produire n'importe quel popo
Lumix: Mais qui te rempli ton inv vitesse grand V :D
Mazelcop: les repeats :)
Haashi: ca a été fix le bug des sorts repetables dans le tome ?
Mazelcop: il n'y a que les sorts qui générent la ressource sans delta négatif qui ne sont pas répétables je crois
Lumix: Exactement
Lumix: Tu as accès au code source si jamais tu es curieux
Haashi: bah justement il y avait un bug de remonté (mais qui a du être fix du coup) qui faisait que tous les sorts du tome était répétable
Haashi: il y avait quelques replay avec ce truc
Haashi: ou quelqu'un générait 6 fromages d'un coup en répétant le sort qui génére un fromage
Lumix: J'ai même pas eu le temps de voir le bug
Georges5: Comment vous comptez le nombre de potion faites par l'adversaire ?
Stilgart: pas
Stilgart: sinon, on a son score à chaque tour donc c'est pas dur de check si le score a augmenté
Stilgart: oublie ce que j'ai dis, j'ai fumé :/
[CG]SaiksyApo: (Le problème des submit est plus compliqué que prévu, on est toujours dessus)
Georges5: Ok bien vu, j'avais oublié le score :unamused: J'allais partir pour comparer la liste des potions :rage: Merci.
Stilgart: go go go [CG]XorMode
Thyl: on vous soutient
Julius2k17: tu peux détecter l'évolution du score de l'ennemi et avoir ainsi le nombre de potions faites
Thyl: oui pas bête
Stilgart: attends, mais on l'a où ce score en fait ?
Thyl: ou faire un minimax juste pour le tome
BrainSolver: dans l'inventaire
Stilgart: ha si, les players sont donnés après les actions
Georges5: Sur la ligne joueur...
Stilgart: c'est quand j'ai eu un doute que j'ai fumé :)
WhatTrickeryIsThis: ptin j'e resubmit , j'avais raté l'evale :(
WhatTrickeryIsThis: 2h de fail
Tintoune: mon eval est bloquée, ça vous est arrivé ?
CopperFr: non
Tintoune: mes 10 premiers combats lag, je vois pas mon classement :(
Oioi: oui, la mienne aussi
Oioi: bloqué à 36% depuis un paquet de temps
Eldritch: oui c'est très lent depuis un moment et complètement bloqué depuis plus récemment
Zorg1: les pushs sont pas bloqués si j'ai bien compris, ou quasi bloqué ?
SeebOmega: c est "normal" les equipes de Codingame sont sur la resolution de l incident
Tintoune: ok merci pour l'info, on va attendre que ça soit fix
CopperFr: heureusement qu'il y a le confinement
dwarfie: salut les gens ...
Stilgart: SeebOmega: j'aurais dit "connu" plutôt que "normal", pour le coup ;)
Oioi: j'en ai profité pour me cuisiner une tartiflette : bon appétit :D
Bon[]Crayon: salut
CopperFr: c'est bon ca les tartiflette
Stilgart: Oioi: bah écoute, bon app oui
Bon[]Crayon: bon appétit
VirtualAtom: Oioi tu livres à domicile ? :-}
Vry: Yo les gens !
Vry: Mon bot a bien tenu cette nuit, c'est cool
CopperFr: y a deliveroo sinon
Vry: Et vous ?
dwarfie: le mien est bien remonté :D
SeebOmega: C est pour ca que je me suis fait vire de la Hotline de free car j'etais pas assez fourni en vocabulaire
SeebOmega: (Aussi car j'ai dit au formateur qu'il etais con...)
Oioi: VirtualAtom : par la poste ? j'ai pitié du facteur ;)
dwarfie: c'est pas parce que tu resolvais trop vite plutot ... tant a la minute faut faire durer :D
BigUP: SeebOmega, t'aurais pu lui sortir tous les gros mots de la terre pour qu'il puisse vérifier que tu avais assez de vocabulaire
CopperFr: la hotline de free j'y vais pas le chat
CopperFr: par le*
BigUP: SeebOmega, en meme temps le gars t'a peut-etre rendu service ? tu as trouvé un vrai métier ensuite ?
VirtualAtom: ça sera dur Oioi, je ne vois plus beaucoup les facteurs en ce moment. Tant pis ^^
SeebOmega: vrai mais en meme temps il m'a sorti que le ping c etais la vitesse de deplacement de l'info. du coup j ai gentillement dit que ms=> millisecondes et pas Metres/secondes. il a pas aime cette remise en question et la tension est montee
dwarfie: :D
Lumix: Aie
ologrod: j'essaie de test mon bot dans l'arene
BigUP: SeebOmega, si tu prouve a ton formateur que c'est un con aussi !
CopperFr: ah oui quand même
ologrod: mais j'ai aucun match à afficher c'est normal ?
Lumix: Et ça c'est formateur chez free ?
SeebOmega: c'etais il y a plusieurs annees mais oui
dwarfie: oui ... et du coup surement aussi formateur chez 42 ... :p
CopperFr: ms c'est microsoft
SeebOmega: ologrod c'est un probleme connu en cours de resolution
CopperFr: ils sont pas bon les formateurs 42 ?
leojean890: [CG]SaiksyApo j'ai pas vu le début de la conversation sur le pbm des submits. je me pose une question : est-ce que vous avez changé quelque chose concernant les multis ?
leojean890: car en submittant dans un multi j'ai plus de timeouts que d'hab
BigUP: [CG]SaiksyApo, sinon si vous avez besoin d'un coup de main, j'ai vu passer quelques dev par ici
ologrod: c'est plutot une bonne nouvelle, je pensais que ça venait de mon programme.
ologrod: ça fait combien de temps que le probleme persiste ?
BigUP: ologrod, ca vient peut-etre de ton programme, ca marchait bien avant que tu submit ! ;)
dwarfie: automaton2000 ... arrete de lancer des tortues dans les serveurs , ca marche pas
Automaton2000: jusqu'au bout de la partie
leojean890: le pbm de submits ça concerne aussi el contest ?
ologrod: oui, je suis meilleur que le boss et j'ai pas de bugs
CopperFr: ben oui
leojean890: j'ai pas essayé de submit today
leojean890: sauf faire une modif dans tron
dwarfie: essaye pas ,y'as des 423 en cours
leojean890: mais d'un coup j'ai pleinde timeouts
dwarfie: deja
ologrod: donc ça serait bizzare que ça soit mon programme
leojean890: ça doit être appliqué aux multis et contests
Magus: le problème de submit doit concerner tous les puzzles je pense
BigUP: Bon dan stout ca, j'ai mon lecteur CD-Rom qui ne veut pas se remettre en tension... si quelqu'un à une astuce pour eviter le reboot L...
leojean890: (mais c'était déjà le cas hier le souci pour les multis)
Magus: même si je ne me suis pas amusé à testé
CopperFr: j'arreterais les autres puzzles
leojean890: j'ai juste testé un truc sur tron et sinon sur le contest quoi
Magus: BigUP: si c'est windows, tu peux aller dans le gestionnaire des périphériques
Magus: et vérifier s'il n'a pas été éteint par windows
Magus: et tu pourras au passage cocher/décocher une case qui dit à windows de ne pas mettre le périphérique hors tension quand il n'est pas utilisé pendant longtemps
Magus: (enfin si le problème vient de la)
Haashi: trop drole d'ajouter la fonction repeat a ton code
dwarfie: coupe la partie anti virus de defender ... a ben non , c'est vrai , on peut plus ca se remet en route sans demander ton avis :(
Magus: Mon IA est bonne pour contrer l'adversaire, mais pas très bonne pour farmer. Et ça a pas l'air d'être la bonne façon de faire pour être top 5
Haashi: ok mon IA est incroyable depuis qu'elle sait faire des repeats
Haashi: je finis des parties a 120 points contre mon ancien bot
Pyroxn: petite question, je vois "ouverture de la league argent le 23/11" le jour de la fin du challenge. Est-ce une erreur ?
CopperFr: et ce que vous me conseillez le McBaguette ?
Magus: si c'est vraiment écrit ça, oui c'est une erreur
leojean890: 16/11 18h
Magus: la ligue argent sera ouverte lundi
dwarfie: moi j'ai bien le 16/11
Lumix: Quand tu clique sur l'interface du contest sur ton rang, c'est écrit "Ouverture le : 18/11/2020"
Pyroxn: j'ai une version anglaise, c'est peut-être ca le problème
Pyroxn: "League opening: 11/23/20"
Magus: mon IA elle a tellement un bug
VirtualAtom: je l'ai en version anglaise aussi, mais pas à cette date Pyroxn
Magus: https://www.codingame.com/replay/502182759 j'affiche mon eval à chaque tour
Magus: jusqu'à l'avant dernier tour mon IA est ultra confiante avec 0.9 quand même
Magus: et dernier tour : "oh shit"
Magus: c'est quoi ce bordel :/
**Stilgart va faire son chieur en faisant remarquer que ms c'est mètre.seconde, pas /
[CG]SaiksyApo: Submits should be fixed
VirtualAtom: \o/
Stilgart: \o/
Oioi: ouais c'est reparti
SeebOmega: HIPIPIP
dwarfie: mince , du coup je vais reperdre des places ... c'est ca ? ;)
Stilgart: et pour une fois, c'était pas à cause de mes detach() :D
Oioi: oh, on connaît la cause ?
dwarfie: les spam submitters sans doute :yuù:
Oioi: * j'espère que c'est pas moi...
dwarfie: :yum:
CopperFr: c'est pas ma faute à moi
**Oioi aurait dû appuyer sur ce point d'interrogation depuis longtemps...
SeebOmega: Automaton2000 c'est toi qui a tortufie les serveurs de CG ?
Automaton2000: il y avait un truc a faire
SeebOmega: Quel scandale ce bot on a un coupable
Stilgart: Oioi: non, mais une fois j'avais mis le bazar à cause d'un thread.detach()
Stilgart: du coup, je fais plus ça en contest :D
Oioi: ok :-)
dwarfie: ben oui Stilgart ... faudrait pas que tu fasses un code efficace/correct non plus :D
Stilgart: n'empêche que je comprends toujours pas comment ça a pu mettre le mutli de UTTT en vrac ... :)
Stilgart: clair, le detach() était là pour rendre le code propre :D
domak: dwarfie tu penses à un gars dont le nickname commence par "ko" et finit par "vi" ?
leojean890: Stilgart pareil pour tron
Stilgart: c'est pas le seul
joelthelion: c'est réparé?
dwarfie: domak ... s'il etait le seul , on serait heureux
Stilgart: leojean890: mon tron est en haskell, donc pas de thread.detach()
Stilgart: joelthelion: n'en profite pas pour spam-submit :)
leojean890: ah je savais pas à quoii c'est dû
joelthelion: hihi
leojean890: mais j'avai plein de timeouts
Stilgart: [CG]SaiksyApo a droit à son weeb-end ;)
leojean890: avec un code qui normalement ne timeout pas
dwarfie: bon , ca fait un moent que j'ai pas demandé ... a quand les ligues sur BTTC ? :innocent:
Stilgart: leojean890: après, c'était peut-être au meme moment sur le même serveur
Stilgart: BTTC, mon 1er contest...
Stilgart: et il n'a pas encore de ligues :'(
dwarfie: et c'est pourtant pas le multi avec le moins de participants ...
leojean890: j'ai perdu 400 places sur tron à cause de ça :P top => bottom gold;)
leojean890: d'ailleurs c'est pas réglé pour les multis
dwarfie: bon , comme prévu (et c'est plutot normal ... je reperd des places ...
Magus: je suppose que la tu avais tous les submits en attente du contest
Magus: qui sont en train de se dépiler
Magus: donc c'est "réglé", mais ça va être encore un peu lent pendant un moment
leojean890: je me demande s'ils ont pas volontairement baissé les ressources pour les multis en fait
leojean890: depuis hier
leojean890: ou jeudi soir
leojean890: car le pbm de submits sur le contests c'est que depuis ce matin
dwarfie: ca rappelle le contests avec les 200 passages de ligues sur CSB en parallele ;)
leojean890: et le pbm sur les multis c'est depuis avant
leojean890: contest*
Zorg1: ah oui 346 push en cours en bronze
leojean890: Zorg1 je vais tenter de migrer en go, mouahaha
leojean890: sans dec ça parait sympa à coder comme langage
leojean890: et plus rapide que python
Magus: j'essaie de comprendre pourquoi mon IA des fois elle gagne
Magus: https://www.codingame.com/share-replay/502194853
Paikan2068: Pfff.... Je suis saoulé, mes tentatives sont problablement mal codées, mais aussi simulent trop de choses et vont en time out
dbdr: elle gagne? fix it Magus!
Lumix: Magus, la vie d'un dev c'est de faire un programme ne fonctionne pas. C'est quand il fonctionne qu'il se demande pourquoi
Magus: non mais des dissonances entre mon eval et ce que fait mon IA
Magus: c'est n'importe quoi
Magus: parfois mon eval est super haute et elle perd, parfois super basse et elle gagne :/
Magus: ou alors j'ai une eval tellement à l'ouest que je prévois très mal l'adversaire
Stilgart: prévoir l'adversaire en bronze, c'est sans doute pas la meilleure idée :(
BigUP: Stilgart, ca n'empeche pas de le faire je pense
leojean890: j'crois qu'il fait son IA finale dès la bronze ^^
BigUP: tiens, les combats ca à accéléré ! ;)
Stilgart: BigUP: oui, mais ça va stuck mid bronze parce qu'à ce niveau là, l'autre est imprévisible
BigUP: hum, j'aurais peut-etre pas du resubmit ... mon IA a faibli
Mazelcop: le niveau a monté aussi
BigUP: HA ca y est mon lecteur CD-ROM à fini par revenir ! au bout d'1 heure ! ;)
dbdr: BigUP, heureusement que t'as pas perdu de temps à rebooter!
Lumix: Tu vas pouvoir graver le dernier concert de Céline Dion
Lumix: (Téléchargé légalement bien sûr)
Haashi: leojean890 go faire du go
BigUP: non, je vais ripper des CD Audio de Prof ... c'est pire !
Haashi: je l'ai appris pour codingame
Haashi: et je suis pas déçu
leojean890: Haashi ouais la syntaxe semble hyper user friendly
Haashi: ca me soulait d'être bloqué par les performances du js
Lumix: La learning curve de go est incroyable
Haashi: qui faisait que mes simus étaient pourrave
leojean890: et puis moi c'est les perfs du python qui déplaisent pas mal^^'
Haashi: en gros j'avais fait A*craft en js en algo génétique
leojean890: et migrer en C++ c'est long :s
BigUP: J'ai utilisé go 1 fois, j'ai pas été décu ! le truc m'a téléchargé la terre entiere à partir de compte github.... c'est flippant !
BigUP: de comptes
Haashi: je faisais quelques chose comme 2000 simulations j'ai fait en go sans aucune optim, après 3 - 4 cours en ligne et en suivant la doc, je suis passé a 20000
domak: J'ai entendu que go était plus accessible que Rust, vous confirmez?
leojean890: ouais ça semble cool:)
Haashi: oui
leojean890: rust pas teqté
leojean890: testé
Haashi: go c'est un language de teubé
Haashi: tu peux rarement faire une connerie en go
hcabel: HEllo, vous savez combien notre algo à de temps pour donner une action ?
VilBoub: La barre des 5000 participants est passé... Bravo [CG]Fall_Challenge_2020 !!!
Mazelcop: 50 ms hcabel
Mazelcop: 1s pour le premier tour
leojean890: idem pacman y'avait 5k ^^
hcabel: Merci :) bon on va devoir tout faire en bianaire ^^
Lumix: Je pense qu'on va largemenr dépasser les 5k
Haashi: commet on voit le nb de submits en cours ?
VilBoub: 4 955 pour le Sping Challenge, pas 5k ^^
sanpas83: sur le classement complet mettre en filtre Score: En cours
sanpas83: Actuellement 474
YannT: ah oui le push il faut patience conserver etcalme garder un peu là
YannT: go demander à AWS des pods en plus là :p
Haashi: merci sanpas
sanpas83: perso sa fait 2h qu'il tourne et je suis a 50%
sanpas83: de rien :)
sanpas83: vous pensez que c'est top combien ou score pour monter en Argent ?
YannT: comme on a tous du BFS jusqu'à la time_limit, on est pas économes sur le CPU je pense là :p
Lumix: Le bot est 800 visiblement, si t'es top 800 c'est bon
YannT: (en plus c'est chiant, la plupart des bots sont pas déterministe du coup)
Haashi: YannT c'est peut etre ca la vrai raison du fog of war ahah
BigUP: YannT, pas moi, mais mon IA est aux fraisesz
sanpas83: Ahah :) moi je suis toujours en brute force :D
Haashi: fog of war -> moins de simu -> moins de temps CPU -> coute moins cher
Stilgart: Haashi: bof
sanpas83: donc je consomme pas trop :p en revanche je suis plus voleur on va dire
Stilgart: par contre, les simus arrivent de plus en plus tôt
sanpas83: merci pour les réponses :)
dbdr: cette simu est plutot simple
Stilgart: faut que je me motive...
dbdr: c'est pas botg
YannT: c'est pas évident de faire la simu opti par contre
dbdr: pense à l'alma mater Stilgart ;)
Stilgart: pour celui-là (botg) ma motivation est déjà partie à l'autre bout de la galaxie
dwarfie: moi je dit qu'un chose ... manquait au moins 2 wood ... surtout avec 5 jours ...
dbdr: si l'opti était évidente ça serait pas un jeu
YannT: j'ai fait un bitboard un peu et j'ai pu ranger tout le state dans un array d'int, mais ça reste pas opti de ouf
dbdr: la jvm c'est pas idéal pour l'opti de toutes façons, même si il y a bien pire
YannT: behh si tu manipules que de l'array de int, c'est pas mal, la copy d'array ça passe par du natif c'est plutot opti
Stilgart: par contre, qu'il est chiant ce décalage entre la partie input et le rendu...
YannT: dès que y'a un new object quelque part, c'est là que ça foire tout de suite
Stilgart: maudite frame 0
Stilgart: (╯°□°)╯︵ ┻━┻
ologrod: j'ai un bug bizzare dans mon code, quelqu'un pourrait m'eclaire ?
egaetan: raconte ologrod
ologrod: quand je fais un cast, c'est que j'ai des ingredient pour le faire. mais quand je combat dansl'arene je lance des fois des castes sans avoir des ingredient
Phamelin42: Bah à part "tu lance des sorts quand t'as pas les ingrédients", je vois pas quoi dire
ologrod: actuellement je suis classé 7, j'arrive pas à monter à cause de ça
ologrod: dans mon code, c'est impossible que je lance un sort sans ingredient
Phamelin42: J'ai un truc dans le même genre mais sur le REST
VirtualAtom: tu lances peut-être le mauvais sort, i.e. une erreur d'indice
Phamelin42: C'est pas des sorts appris par le grimoire ?
ologrod: pour toi, ça s'arrete un moment donné ou quand c'est partie c'est partie ?
ologrod: la est le probleme, je fais une commande inapproprié, virtualAtom
BigUP: hum mon Rerun est bien meilleur ... flippant l'ecart entre 2 runs !
Phamelin42: C'est dur à dire, c'est un peu aléatoire...
BigUP: va pas falloir s'amuser à resubmit à tout vas en fin de contest !
dbdr: de combien BigUP?
BigUP: dbdr, je coincais autour de 2200eme, la je suis autour de 1700eme
Stilgart: de chance au départ, et dégringolage dans 2h :D
Stilgart: 90 parties ça classe pas les gens, hein ;)
Haashi: j'hésite entre submit mon code avec les repeats aujourd'hui ou attendre l'ouverture du silver pour ça
BigUP: Stilgart, non c'est à peu pres sa place, ce matin j'etais autour de 1500 il me semble... meme si le classement etait suspect
Haashi: y a au moins 40% du top 300 qu'est en submit actuellement
BigUP: je pense que le blocage des matchs y etait pour beacoup
Haashi: ouai enfin le submit reste relativement long
Stilgart: BigUP: dans ce cas, c'est ton run pourri qui aurait remonté en 2h par aspiration
Mazelcop: à partir de quelle fréquence on considère que c'est du spam submit à la louche ?
Neumann: Quand t'as un captcha
LuckyJ.: http://chat.codingame.com/pastebin/11031401-707d-4292-88de-b8435e3d73e3
LuckyJ.: Uu pourquoi ça me mets mon message comme ça aussi :joy:
ologrod: j'ai decouvert que mon bot deconne quand j'arrive l'un des 3 premiers :joy:
ologrod: c'est possible de perturber le bot adverse ?
egaetan: reste 4eme alors
ologrod: le but c'est de monter
Orabig: Bien-sur ologrod : y a une action non documentée qui envoie des bugs aléatoires dans le code du bot adverse...
Orabig: mais chut..
ologrod: non, je veux savoir moi:unamused:
ologrod: t'as surement raison, j'etais devant le mec et d'un coup mon fais n'imp
Thyl: pffffff!
Thyl: le pire bug du monde
Thyl: (et le pire codeur)
Thyl: je fias une copy de tab de int en croyant que toute les valeurs vont bien être copier
Thyl: mais Non
Thyl: !!
MusicalCat_41bf: Bonjour je suis nouveau sur codingame. je vois que pour certains puzzle on ne peut pas voir les solutions de la commu. vous auriez un bon site qui les recensent par hasard ?
Thyl: non
Thyl: c'est des puzzles spéciaux
Thyl: qui servent à montrer au entreprises si tu es bon dans un truc
MusicalCat_41bf: haa ok c'est le cas du aneo que je fait
Thyl: oui
otpv: tan network
otpv: dsl
Thyl: c'est quoi cette erreur :
Thyl: free(): double free detected in tcache 2
WhatTrickeryIsThis: c'est quand t'es hack par free je supposes
Thyl: c'est à dire
VirtualAtom: tu libères deux fois le même espace mémoire.
Thyl: oooo
WhatTrickeryIsThis: je trouve c'est un peu pété les grimoires
VirtualAtom: un exemple con : tu récupères le raw pointeur d'un std::vector, tu fais free sur le raw pointeur, puis tu as cette erreur quand le std::vector est détruit
Thyl: ok
Thyl: merci
Magus: bon, j'ai essayé MCTS ... c'est ... pas terrible
Magus: enfin ce serait peut être mieux si j'avais les perfs pour faire plus que 4000 rollouts au 2ème tour
Magus: mais la en l'état, c'est un peu de la grosse merde :D
Thyl: j'ai l'impression que tu t'en sort pas
Thyl: *sors
Magus: je tests des algos pour voir ce que ça donnee
Magus: la j'ai submit dans l'arène un mcts
Thyl: cool
Magus: c'est un peu mieux qu'une bruteforce qui prend en compte l'adversaire, mais c'est pas transcendant
Thyl: moi je bosse la simu encore
Bon[]Crayon: alors automatonnn ça touille ?
AutomatonNN: comment tu veux que je te dit que tu veux fermer ?
Bon[]Crayon: automatonnn je veux ouvrir mon esprit sur le monde
AutomatonNN: tiens j'ai pas trouvé le problème avec toi le boss :/
didyme: le nom du boss de bronze est bof :(
didyme: c'es toi qui l'a trouvé AutomatonNN ?
AutomatonNN: oui j'ai un truc que je vais pas te faire de la merde :D
mrBen: o/
Bon[]Crayon: :smiley_cat:
Neumann: Magus : 4k rollouts ? Tu cappes la depth ?
Magus: non c'est juste que je rollout que le board en cours
Magus: donc quand les 5 potions sont consommés (ou qu'une vraie fin de partie arrive), je stop le rollout
Neumann: Ca fait combien de coups simulés en tout ? 4k ca parait beaucoup déja
Magus: mais bon, ça reste reste de la merde, je fais que 350k coups joués en 40ms
Magus: et au 2ème tour, un rollout en moyenne c'est 70 tours :/
Neumann: Ok, pour toi solo ou ennemi inclus ?
Magus: ennemi inclu. Un "tour" = une action chacun.
Magus: parce qu'un mcts solo il aurait fallu faire une éval
Magus: la j'ai pas d'éval :D
Magus: mais bon, ça fait à peine top 50
Magus: paie ton truc de merde
Neumann: En mode paranoid ? Tu considères qu'il joue avant toi ?
Magus: nan il joue après moi. j'ai essayé de le faire jouer avec moi ça a pas l'air de changer grand chose.
Magus: *de le faire jouer avant moi
Magus: avec aussi peu de rollout, c'est surtout très random au début
Magus: enfin après je suis quand même surpris qu'avec aussi peu de rollout, l'IA ne soit pas complètement stupide. Elle est pas super bonne mais au moins elle fait pas d'actions débiles au possible
WhatTrickeryIsThis: quand je fais un sort dès fois je l'oubli ?
WhatTrickeryIsThis: c'est quoi ça ?
[SG]Bisou: il revient si tu fais REST
Neumann: Il est pas oublié, t'as juste pas le CD
WhatTrickeryIsThis: ;D
WhatTrickeryIsThis: un jour je lirai les règles, mais c'est pas aujourd'hui
Haashi: après j'avoue que le viewer il prete a confusion
WhatTrickeryIsThis: le tax count pour apprendre, c'est un point gagné ou un qui faut payer en plus ?
Haashi: les sorts en CD, au début c'est grisé, mais quand t'as plus de 6 sorts ils disparaissent de la liste
Zorg1: WhatTrickeryIsThis : lire la doc ? et pourquoi pas l'écrire pendant qu'on y ait ?!?
Zorg1: taxCount c'est ce que cela te rapporte en ingr0
Zorg1: le prix c'est tomeIndex
R4N4R4M4: Salut la foule
Zorg1: o/ R4N4R4M4
WhatTrickeryIsThis: R4 !
WhatTrickeryIsThis: si c'était moi les règles je mettrai des pétards partout et des recette bananes
Zorg1: oublie pas les torpilles
WhatTrickeryIsThis: "taxCount la quantité d'ingrédients de type 0 "
WhatTrickeryIsThis: je pensais fallait payer la taxe moi :D
Thyl: ça se passe comment qu'on on depasse la limite d'ingredient
Stilgart: j'ai changé en income dans mon code, oui :)
Thyl: on n'a pas le droit de jouer l'action ???
WhatTrickeryIsThis: en ayant rien lu, je gagne 1000 places avec les grimoires
Stilgart: ça dépend
Haashi: si c'est un sort, t'as pas le droit de jouer l'action
Stilgart: si c'est sur un learn, l'excédant est discard
Haashi: si c'est l'apprentissage, alors les tiers0 sont mis a la poubelle
Stilgart: si c'est un cast, c'est interdit
Zorg1: WhatTrickeryIsThis : je me suis fait aussi avoir avec le nom des champs
WhatTrickeryIsThis: pb4 a submit, j'abandpnnes :(
flevesqu: Salut les gens, quelqu'un sait-il à partir de quand est-ce que le temps de réponse est calculé ? La premiere entree read ? La derniere ? Autre chose ?
Vry: Première
flevesqu: Ok merci !
WhatTrickeryIsThis: apres lecture du premier input
Haashi: je suis entrain de regarder des replays
Haashi: j'ai vu que pas mal de gens dans le top100
Haashi: ils learnent le premier spell pendant 10 tours d'affilée avant de commencer à faire quoi que ce soit
Phamelin42: Un console.log ne met pas fin à un tour ?
Haashi: Phamelin42, tu dois faire un seul console.log par tour, si t'en fait + tu desynchronises
Phamelin42: C'est peut-être ça mon problème depuis le début... !
Mastard: perso j'apprends le 1er spell a chaque fois que je trouve pas de chemin rapide vers au moins une commande
Galilleos: oui si tu fais plusieurs console.log, c'est comme si tu répondais plusieurs fois en 1 seule loop
Mastard: wow les submit sont lent aujourd'hui
Vry: Bon ... mon bot passe sont temps à faire memcmp (48%) ... :)
Mastard: quelle tristesse de voir que les gens ne sortent pas le dimanche et passent plutot leur temps à coder...
Mastard: oh wait...
Paikan2068: Il pleut des cordes dehors :(
Vry: Il pleut ... et on est confiné accessoirement ! :p
Mastard: bah chez moi il pleut pas :D
Paikan2068: Mais il pleut des cordes dans mes idées aussi :( J'ai du mal à trouver des idées :(
Vry: Mais je vais aller courir quand même ... :clown:
Mastard: c'est ce que je vais faire, en esperant trouver une illumination pour mon bfs
Paikan2068: Mais tout le monde est parti sur u bfs, mais c'est tout triste un bfs
Mastard: bah sur pacman il marchait super et tres vite... mais la...
Haashi: bon je vais vous faire part d'un secret
Haashi: learn les 10 premiers tours c'est super fort
Paikan2068: Ah sur Pacman c'était top
Paikan2068: Mais pacman c'était le printemps
Paikan2068: les arbres qui fleurissent
Paikan2068: Le soleil, la température qui remonte
Mastard: j'ai hesité a apprendre X sorts dès le depart
Paikan2068: là, on est sur l'automne. Les arbres sans feuilles, la pluie, la nuit qui tombe à dix-sept heures
Haashi: hésite plus, fait le, c'est trop fort
Mazelcop: Même conclusion Haashi, j'ai essayé de faire des trucs plus intelligent, mais ça marche pas du tout
Haashi: en + ca aide tes bfs par la suite
Mastard: ouais mais du coup c'est un peu ce que je fais, sauf si ya une commande qui est vraiment vite faite
Mazelcop: laisse tomber les commandes vite faites, ça sert à rien
Mastard: la je prefere faire la commande
Haashi: j'ai pris mon bot 65th la
Mazelcop: la production c'est la clé
Mastard: ah lol
Haashi: j'ai ajouté au debut du main (if turn <10 learn id du premier spell) else (comme d'hab)
Haashi: et je gagne 90% du temps
Mastard: bah je te dirais ca quand mon submit avancera... 10 minutes de passées, juste 14 combats effectués xD
Haashi: et pas que d'une 10aine de points, il prend des grosses tartes
Haashi: Mazelcop, mais du coup t'estimes comment la production ?
Mastard: oui j'ai remarqué que plus j'ai de sort, plus mon bfs arrive a aller profond dans le graph
Haashi: une espece de distance pondéré par rapport aux commandes disponibles ?
Mazelcop: je lance un BS et je regarde la production moyenne
Mazelcop: mais c'est pas ouf
Mastard: je vais essayer de learn les 10-15 premiers sorts au prochain submit
Mastard: quand le mien aura fini, vers 22h44
Mastard: demain
Haashi: Mazelcop pas ouf pas ouf, t'es top 11 a 50% de submit c'est pas mal :p
Haashi: je crois que les submits sont de nouveau gelés :(
sanpas83: oui 306 en cours encore :rolling_eyes:
sanpas83: elle est open a quel heure la ligue argent ?
Magus: demain vers 17h
Magus: enfin entre 15h et 18h en fait
Magus: ça dépend
sanpas83: merci Magus
BigUP: Ho l'erreur j'ai resubmit !! ;)
BigUP: [CG*] C'est à nouveau cassé !! ;)
Vry: Ils devraient lancer le boss aujourd'hui pour qu'il soit stabilisé demain :p
Vry: Je crois que je vais arrêter le BFS et resortir le MCTS ... et du coup je vais me débarasser du problème de la gestion de la mémoire ...
Kirbiby: ça marche vraiment le BFS ? Il faut pas 20 tours pour faire une potion à 20 rubis ?
Victorien_aka_TL: Haashi je fais la même, je pondère les spells à apprendre en fonction des ressources qu'elles permettent d'obtenir et j'apprends les 12 premiers tours tous les sorts qui en valent la peine
Victorien_aka_TL: J'ai une autre condition aussi qui dit que si un des sorts me rapporte plus de 2 ressources bleues alors je l'apprends de suite
Julius2k17: ya des sorts qui apprennent 2 verts gratos aussi
Victorien_aka_TL: Je parle de récupérer la taxe bleue payée pour avoir des spells plus hauts dans le book
WhatTrickeryIsThis: tiens y à eu un merdier à UBisoft Montreal Recurse?
Vry: Kirbiby : en tout cas avec les perf. que j'ai c'est bof je trouve ... je suis 300 bronze avec donc c'est honnête !
Victorien_aka_TL: Osef de ce que le spell fait en soi, je l'apprends juste pour avoir plus de possibilités et plus de ressources sur le moment
Gh0stm4chine: Salut tlm
Victorien_aka_TL: Hello ghost !
Julius2k17: salut Gh0st
CrazyHidenTalan: pourquoi dans l'arene mes combats bloquent à 18%
Haashi: codingame est un peu surchargé
Yab94: ça laaag
Julius2k17: https://www.codingame.com/share-replay/502313339 je crois que j'ai trouvé mon sosie cérébral
dwarfie: normal ... y'a encore pres de 400 submit
Bon[]Crayon: pas mal le replay
Kirbiby: faudrait ouvrir argent ce soir, 3000 personnes c'est trop
Dridriun: comment tu fais pour savoir le nombre de submits en cours ?
Yab94: et du coup tout le monde bourrine le submit encore plus
dwarfie: c'est dans le classement
Dridriun: ah oui il y a un sélecteur en cours dans la tableau de classement je l'avais jamais vu, désolé pour la question bête
dwarfie: score : en cours
Bon[]Crayon: leaderboard scor en cours
Dridriun: merci
Victorien_aka_TL: Enorme Julius !!! Je me suis toujours demandé si ça finirait par arriver ce genre de scénario
Victorien_aka_TL: C'est solide ahahahahahah
Boulet: putain,je reve ou vous avez ENCORE tout casser ?
Boulet: j'ai dux heure pour faire ce contest alors bon pfff
Stilgart: clair, pffff
JBM: pass-les a coder plutot qu'a raler/submit
Boulet: salut les gens, les tortues et les AutomatonNN et Automaton2000
dwarfie: c'est pas moi ... mon bot est le meme depuis 2 jours :D
AutomatonNN: mais t'es pas trop de tout cas AutomatonNN ?
Automaton2000: tu as le lien du puzzle ?
Stilgart: question du jour : doit-on classer le spell à apprendre [-1,0,-1,1] en garbage ou en why not ?
Boulet: Tu es mignon mon JBM mas c'est mon deuxieme submit depuis le debut (le premier pour passer en wood 1)
Boulet: donc bon
dwarfie: AutomatonNN : ton avis ?
AutomatonNN: quelqu'un pourrait m'expliquer que tu veux dire que tu peux pas te dire que t'es là
Stilgart: AutomatonNN: pourtant, il est là
AutomatonNN: oui je suis tout le monde t'es déjà top content de le faire à l'autre de ce que tu veux dire
dwarfie: AutomatonNN : t"es en mode metaphysique ou quoi ?
AutomatonNN: tortue ?
dwarfie: :D
Haashi: Stilgart garbage, mais why not
Boulet: joli :P
Haashi: mon idée c'est que ca peut t'économiser un REST
Stilgart: mais ça te coute un learn
Haashi: Ca peut t'économiser plusieurs REST
Haashi: dans l'absolu
Stilgart: oui, mais je trouve que tu as bien mieux à faire en learn
Haashi: mais globalement c'est garbage
Stilgart: ok, ça me rassure un peu
Boulet: les serveurs sont vraiment au tas ?
Haashi: enfaite ca peut comboter avec des trucs pas mal
Haashi: vu que du coup, il est repetable
dwarfie: 418 submits en cours
VincentBab: t'as un seed avec ce spell en 1er dans la liste ? ca doit être drole
Haashi: si tu as un truc qui te permet de générer facilement des [0,0,1,0]
Boulet: je sais lire dwarfie mais bon ...
dwarfie: :p
Boulet: c'est juste ponctuel ou la base est encore morte comme d'hab
Haashi: tu fais le sort de base [2,0,0,0], le truc pour les [0,0,1,0], et tu fais le sort garbage ù 2
Haashi: *2
bwan-nan: où est-ce qu'on voit le nb de submits en cours ?
Boulet: Notes que je ne suis pas sur que Stilgart confirme que je sache lire :D
Haashi: et tu te retrouves en 3 sorts avec 2 fromage
dwarfie: c'etait en vrac , ca a ete debloqué ... mais pas resorbé depuis le temps vu que ca spam quand meme
Boulet: bwan-nan: leaderbord general + computing
Haashi: je pense que c'est en vrac encore
VincentBab: le spell en question est repeatable par contre non ?
Kirbiby: vous avez hardcodé quels sorts faut apprendre ?!
Haashi: il y a 2 heures j'ai pu submit
Haashi: la je suis a 12 matchs depuis 30min
Boulet: En tout cas pas bougé depuis 10mn (pas un match)
Boulet: rien, que dalle, nada,
Stilgart: Kirbiby: j'y songe
Stilgart: vu la gueule de mon éval, j'aurais sans doute mieux avec un tri à la main
**dwarfie tend pas un cgstas pour verifier a boulet ... ca marcherait pas
**Boulet ne remercie pas dwarfie alors
**dwarfie est decu ... pourtant c'est quand meme faire gagner du temps en le faisant pas :D
TidyMaze: coucou les gens normaux (et les fans d'haskell)
dwarfie: (ca c'est fait ...)
sanpas83: :hugging:
Boulet: dans mes bras TidyMaze
Boulet: :D
TidyMaze: (je le fais en JS cette fois)
TidyMaze: (attention)
Boulet: ah c'est pour ça que c'est tout cassé alors
TidyMaze: :D je vais tout recoder je pense, trop lent
HoBo: salut, pourquoi le serveur bouge pas ?
TidyMaze: mais toujours la question de quel langage ... à chaque fois je fais la meme erreur
dwarfie: si y'avait le tee-shirt "premier de langage" comme avant ... je pense que je pourrais le faire en pascal ... sans rire :D
sanpas83: 420 submit qui tourne derrière
Boulet: HoBo: surement une surcharge
HoBo: ils ont pas prévu qu'on avait rien de plus a faire de notre week end que de passer notre temps sur notre algo en fait :D
Boulet: C'est pareil à chaque contest
Scarlatine: "420 submit qui tourne derrière" Justement, ils tournent pas, c'est pour ça que tout le monde râle :D
Boulet: si ils tourne, 30mn pour mon first n mais il tourne
dwarfie: ou ils ont pas prevu qu'un wood 2 triviale et une wood 1 legerement dure , avec des jours en plus , ca amenerait 2 ligues collossales pour gerer les runs ...
Boulet: c'est sur que 1880 en wood1 j'avais jamais vu
dwarfie: 3100 en bronze ...
Stilgart: le problème est plus dans le fait que ligue colossale => davantage de spam-submit car classement non stable
Boulet: clarirement
Stilgart: Boulet: si, à CoK on avait eu ça
sanpas83: et surtout 1862 personnes active sur le conteste + de 5000 inscrit et les 3000+ en bronze pas étonnant des lags
YannT: et on est aussi sur un jeu où tu BFS jusqu'à la time_limit, donc battles plus longues
YannT: d'habitude en bronze t'es sur une foret de ifs qui répond en 2,5ms :p
Boulet: j'avais du avoir le temps de le faire du coup javais du passer en haut rapidement en ne plus regarder le bas peuple des ligues inferieure
**Stilgart doit pas avoir la bonne vision du jeu
Boulet: YannT: pour le moment je suis en DFS mais bon çachange rien
Stilgart: Boulet: tu avais du commencer en retard plutôt
Victorien_aka_TL: A la fin du contest y'en a qui donnent leur code pour qu'on puisse avoir une idée des meilleurs algo ?
Stilgart: le boss était tellement chaud qu'ils l'ont nerf
dwarfie: ben non ...cok il l'avait pas fait
Stilgart: Victorien_aka_TL: non
GLE: Très bon julius !
Gh0stm4chine: Victorien les tops partagent leurs stratégies dans le forum oui, mais pas le code
Stilgart: par contre, certains rédigent des post mortem
YannT: Boulet: d'habitude d'instinct je fais plus du DFS que du BFS mais là je vois pas comment s'appliquer correctement sauf si tu évalues la "distance" à une potion
Boulet: Victorien_aka_TL :nan parce que le contest se transforme en multi
YannT: mais c'est casse gueule comme approche je pense
Stilgart: mais le code, jamais... vu que le jeu bascule en multi
Boulet: YannT: wood2 donc pour le moment j'evalue rien du tout
Stilgart: YannT: moi je vois pas de bfs qui me plait ici :(
Boulet: je bourine l'arbre comme un boeuf
Boulet: et c'est marre
Victorien_aka_TL: Ca se comprend du coup, tant pis. J'aurais bien aimé voir à quel point le code du top 100 était complexe
YannT: t'as fixé une depth alors non?
Kirbiby: oui et non, tu peux trouver le code de Fantastic Beats sans la fonction d'évalutation
Boulet: YannT : non un bon gros timeout
YannT: perso pour sortir de wood j'avais fait une éval pour jouer les spells qui me "rapprochent" d'une potion
YannT: juste ça
WhatTrickeryIsThis: distance en nombre de compo c'est jouable, mais distance en nombre de tours c'est DFS
YannT: mais ça marche plus après
Kirbiby: Mais ce que je retiens des post mortem c'est à quels point les codes des tops ne *sont pas* complexes
Boulet: et la je tire au hasard comme une betasse
Boulet: juste pour voir
Boulet: et avec ça j'atomise le boss en test
YannT: oui pour sortir de wood j'avais juste fait eval des coups jouable et eval de la distance en nombre d'ingrédients
dwarfie: Boulet : tu ferais mieux de chercher dans quel ordre caster pour faire une potion
Kirbiby: par contre ils tirent partis de 150 infos que toi tu mets pas dans ton évaluation
Victorien_aka_TL: Pour le moment je ne suis même pas sur un vrai algo d'IA. J'ai une approche naïve avec une part de RNG où je ne target pas de potion ni le nombre de coups pour quoi que ce soit
WhatTrickeryIsThis: y à plus de matchs ; ( N
Victorien_aka_TL: Mais je voulais tester de mettre en place un vrai algo d'IA pour la suite de la compétition. Ca a l'air fun
BigUP: Victorien_aka_TL, c'est fun quand ca marche... sinon c'est l'enfer
dwarfie: 461 submit ... ca augmente ...
Victorien_aka_TL: J'imagine. Je vois que la plupart des joueurs sont ultras rôdés et ont leur env en local. Pour faire un truc propre ça a l'air d'être obligatoire ^^
YannT: j'ai rien de préparé en env local
Mazelcop: pas mieux
Victorien_aka_TL: Ok, je pensais que la plupart des gens faisaient ça. C'est ce que j'avais lu sur le chat
YannT: perso mon top de productivité sur un nouvezau contest c'est que je récup genre la fonction de chrono d'un contest précédent
dwarfie: en meme temps , y'en a qui ont resubmit a peine fini ... je dirais rien mais j'ai des noms ...
Gh0stm4chine: Victorien_aka_TL Tu peux check le stream de curse2 dans Legends Of Magic, il explique bien la démarche je trouve, par contre c'est long ^^ 2 * 4h de vidéo je pense
YannT: et des fois je crée le fichier vide avant le début aussi pour gagner 3s sur le nommage
Victorien_aka_TL: Y'en a qui font du deep learning ?
Boulet: 461 runs
Boulet: dwarfie: il y en a qui finissent ?
Victorien_aka_TL: Gh0stm4chine ok merci, je vais checker ça
Mazelcop: t'es limité dans la taille du fichier que tu envoies, donc pas possible d'envoyer un resnet ou un truc comme ça à CG
dwarfie: oui ... en tout cas , la derniere fois que j'ai regardé pb4 etait sur la fin ... et la il est de nouveau a 0% ... donc ...
Mazelcop: un petit réseau, je crois qu'il y en a qui en ont fait
Boulet: Bon je sens que vu le manque de temps je vais faire une MCS (enfin une random explo)
Boulet: enfin si ce *&^*%&^^%$ de run avanace un jour
dwarfie: tant que les runs trainent , j'ai l'illusion d'etre 30 places mieux classés ... mais pas pratique c'est clair
CrazyHidenTalan: moi c'est en cours 18%
Boulet: pareil
Boulet: mais mon first n c'est mieux passé
dwarfie: leojean890 a 0.01 points derriere moi ... je suis pas rassuré :D
Boulet: tu peux
azerty123456: bonjour, j'ai envoyé mon code dans l'arène il y a 40 minutes, depuis je ne peux rien faire d'autre. Il faut attendre la fin de tous les combats ? Je suis nouveau sur codingame je ne connais pas encore bien le fonctionnement.
Paikan2068: J'ai submit il y a dix minutes, 0 combat.... il est complétement dead haha
R4N4R4M4: Les serveurs sont au ralenti !
DepartmentOfRedundancy: vous savez à partir de quel moment part le compteur des 50ms pour répondre? Je me demande si ça commence pas à compter à partir du moment où on te file le dernier input
Boulet: ils sont morts oui
Paikan2068: Après le premier input, donc le action_count ici
DepartmentOfRedundancy: ok
Boulet: DepartmentOfRedundancy: envoi du premier input pas lecture
DepartmentOfRedundancy: mince j'avais une idée pour gratter du temps :p
Boulet: raté
Stilgart: creuse, elle marche ;)
Boulet: mouais pas si bien que ça
sgalasso: Non c'est juste cassé !
Stilgart: mais CG a prévu le coup dont tu grattes ~rien
azerty123456: ok merci pour l'info ;)
Boulet: mais bon comme le dirai Automaton2000 : tortues de serveurs
Automaton2000: tu fais ça comment ?
DepartmentOfRedundancy: entre le moment où tu donnes ton dernier output et le moment où on te file le premier input?
Stilgart: Automaton2000: comme AutomatonNN
Boulet: en disant tortue plusieurs fois Automaton2000
Automaton2000: mais c'est parce que tu te dis
AutomatonNN: oui je suis tout seul a toi de me concernant pas
Automaton2000: et quand t'as une erreur de signe
Stilgart: DepartmentOfRedundancy: oui, tu as un peu de temps à cet endroit
Stilgart: mais le referee coupe ton fil d'exécution assez vite
Boulet: DepartmentOfRedundancy: oui mais le process est freezer la plupart du temps. tu peux gratter quelques ms mais pas plus
DepartmentOfRedundancy: si j envoie une commande tres longue à parser je gratte plus?
DepartmentOfRedundancy: genre un gros comment inutile
Stilgart: DepartmentOfRedundancy: oui :D
Boulet: nan je n'y crois pas
Boulet: oh ???/
Stilgart: parce que j'y crois qu'ils parsent avant de freeze :D
Boulet: les nains
Stilgart: alors qu'évidemment, il faut faire l'inverse
Boulet: pardon dwarfie
HoBo: Vous savez s'il est possible de faire jouer son bot contre un bot en particulier ?
Stilgart: "j'y crois", ça veut pas dire qu'ils font vraiment la bêtise hein ;)
Boulet: HoBo: en test oui
Stilgart: HoBo: dans l'IDE, tu as un bouton Delete
Paikan2068: Yes, si tu l'as déjà combattu
Boulet: il sufit de changer le boss par le bot que tu veux
Stilgart: tu vires l'IA par défaut et tu cliques sur +
Boulet: Paikan2068: non
Stilgart: tant que ton adversaire est dans la même ligue que toi c'est bon
Paikan2068: Ah tu peux même jouer contre des IAs que 'as pas combattus?
Paikan2068: Aujourd'hui j'ai appris
Boulet: un bot dans n'importe quelle ligue en dessous de la tienne (au sens large)
Stilgart: s'il est dans une ligue en dessous, ça risque de pas marcher parce que c'est pas les mêmes règles
BlaiseEbuth: Yo tout l'monde ! Automaton2000, AutomatonNN !
Stilgart: s'il est dans une ligue au dessus tu peux juste pas
AutomatonNN: ouais j'ai pas tester
Automaton2000: là je peux pas vraiment le temps de toutes façons
Boulet: enfin tu peux pas, tu eux pas .....
Stilgart: Automaton2000, AutomatonNN: fixez vos pouvoir !
AutomatonNN: voila
Automaton2000: mais il ne me semble pas
Haashi: tu peux pas graphiquement, mais tu peux ave cl'api
Boulet: \o BlaiseEbuth
Boulet: chuuuut
BlaiseEbuth: o/ Boulet
Boulet: pas submit BlaiseEbuth
Stilgart: Haashi: ouais enfin, s'il a pas vu le bouton delete, je le vois mal wget :)
Boulet: c'est tout cassé
BlaiseEbuth: Ah ?
Boulet: enfin bon c'est un contest quoi
Boulet: donc c'est cassé
Boulet: comme d'hab
BlaiseEbuth: Arrête de raler, on va dire qu'on est vilains encore...
Boulet: bah JE SUIS VILAIN
Haashi: BlaiseEbuth, c'est la team turtle qui ddos cg c'est sur
Boulet: mais moins que machin qui m'empeche toujours d'etre vraiment vilain sur les Coc
Boulet: 40 mn 10 matches
Boulet: joli
BlaiseEbuth: Haashi : Je suis innocent !
Boulet: ooooooh mouton est dans la place ?
Boulet: et on ne me dis rien
BlaiseEbuth: De toute façon j'ai du boulot avant d'avoir un truc à submit.
Mastard: ah ouais zero combat en 1h15 quoi
Vry: Question be posée 10k fois ... un sort appris par cœur est-il répétable ?
Vry: *bête
Mastard: s'il n'est pas gratuit oui
Mastard: gratuit = tu peux créer des ingredients avec ce sort sans en consommer
HoBo: sinon ya le flag pour avoir l'info
Vry: Ah y'a le flag dans le tome ?
Vry: J'avais pas vu
HoBo: dans le tome et les sorts
HoBo: enfin je crois, ca reste un truc a prendre en compte dans mon algo encore
Vry: Ok c'est vrai ! Merci Mastard et HoBo
Vry: http://chat.codingame.com/pastebin/ecbd8a97-b50c-4daf-9719-8ef8d856a75b
788361: pika les gens
788361: o/
Vry: chu Bob
BlaiseEbuth: chu !
Vry: \o
Boulet: :beers: bob
Bob: <3
**Boulet va faire du python et vomir
Boulet: pas le choix, il faut bien aider la gamine puisque python semble devenu présent au lycée
Boulet: je reve
BlaiseEbuth: :scream:
Boulet: pareil
Boulet: oooooh un match en cours
HoBo: bloqué a 11% depuis looooontemps :'(
dwarfie: Boulet ... pas à l'heure du gouter bordel .... :nauseated_face:
Bob: du coup c'est pas la peine que je soumette
DepartmentOfRedundancy: je passe 100ms rien qu'à parser l'input
YannT: non faut pas submit ça gagne des places parce que tout le monde est kéblo en bas de clasement :D
DepartmentOfRedundancy: y'a pas un problème là?
jolindien: ctoutkc
Bob: DepartmentOfRedundancy: tu mesures mal ton temps, probablement
**dwarfie l'avais di qu'il fallait arreter au bout de 24h ...et au bout de 48h ... le classement nous convenait en plus :D
BlaiseEbuth: DepartmentOfRedundancy tu l'a vendu ta bagnole ? :grin:
Vry: Nan mais continuez de submit ... je gagne des places ! :p
dwarfie: t'inquiete vry , tu les reperdras :p
Bob: :D
Bob: je trouvais bizarre aussi d'être remonté aussi haut
DepartmentOfRedundancy: Et non la 206+ est toujours pas vendue :D
dwarfie: alors ... 206 ... c'est folichon a la 206eme place (pour de vrai)
Dagnir: Salut ! Pour vous aussi c'est super long de tester son ia dans l'aréne ?
Neumann: Magus: t'as moyen de faire une release avec le dernier JAR sur BT ?
dwarfie: leitmotiv
Edjy: Quelqu'un sait pourquoi mon bot a fait 11 combats en 1h ?
Here_s_Chopi: Change juste les dépendance de log4j en latest
Boulet: 592 runs en cours .....
Boulet: Edjy: plateforme toute cassée (trop de subit en //)
Edjy: ok merci
Boulet: y'a des CG ou bien ?
Boulet: la maintenant tout de suite ?
Boulet: histoire qu'on ait des infos
Boulet: si possible
Neumann: Ils sont sur le coup
quanv: /meritis
Neumann: "might be related to the slowness of the rankings. most likely DB at 100% again. Maxime is looking into it"
Julius2k17: faut activer les index en base ^^
Bon[]Crayon: carabistouille automatonnn
AutomatonNN: repond
dwarfie: Automaton2000 ... tu peut organiser un tournoi de lancer de carapace de tortues pour passer le temps ?
Automaton2000: il est encore en train de faire un tour de move
Boulet: les affreux : y'a quoi comme genre du python pas trop moche sur du windows 10 ?
Boulet: genre ide ...
dwarfie: spyder
Boulet: C'est pour ma pov gamine pas pour moi (je ne suis pas sale à ce point)
Boulet: merki
BlaiseEbuth: pycharm
dwarfie: 'cadeau empoisoné ? peut etre :D )
Julius2k17: vscode
Yrodill: vscode :°
Bon[]Crayon: mu
BlaiseEbuth: Oui vscode histoire d'avoir un ide en accord avec le langage :3
dwarfie: +1
Julius2k17: ya des extensions pour tous les langages dans vscode
dwarfie: oui ... mais vu le public visé , c'est pas vraiment un choix
BlaiseEbuth: J'dit pas l'contraire
didyme: vim
dwarfie: didyme ... il a dit pour sa gamine ... voyons ;)
dwarfie: (deja qu'il evite de la mettre sur emacs :yum: ...)
didyme: justement : à la dure
Palmipedus: au fait on peux avoir deux recette completer en meme temps?
BlaiseEbuth: En parlant de vim, j'ai pris l'temps de m'installer ycm, c'est cool...
didyme: je dirais même plus : vim en bépo
Julius2k17: @blaise c quoi le public visé ?
BlaiseEbuth: J'en sais rien, c'est pas moi qui ai dit ça
Julius2k17: oups dwarfie pardon
Boulet: Julius2k17: lycée 2nd
dwarfie: euh BlaiseEbuth ... deja que la completion de l'editeur de CG me soule , c'est pas pour en mettre dans vim ;)
Boulet: et pas informaticienne pour deux sous donc un bon gros IDE dédié c'est parfait
Boulet: si c'etait pour moi se serait 1- pas de python; 2- sous linux 3- avec emacs
Boulet: mais bon
BlaiseEbuth: Ouai mais elle s'active quand tu veux. Et c'est surtout pour le debug que je l'ai mis dwarfie
Bob: Palmipedus: a priori non
Bob: vu qu'il faut les fabriquerr explicitement et que tu ne peux en faire qu'une seule par tour
Boulet: 11ieme match fini \o/
Boulet: 1 match ~~ 1h10
Boulet: je fini mon run à la fin du contest à ce rythe
dwarfie: ok ... donc c'est un argument pour le post sur le forum "si vim peut le faire , rendez l'assistant optionel dans l'ide" :D
BlaiseEbuth: :grin:
Bob: #urgentDeNeRienFaire
Boulet: bon allons defoncer machin sur discord
Palmipedus: Bob je me demande si c'est possible vu que je suis en train de coder cette logique.
Bob: pour autant que je puisse dire, ça ne l'est pas
Bob: donc économise ton temps :)
bastienwcs: j'ai un "bug" (ou alors une mauvaise manipulation), sur JS, quand je fais une action "LEARN", le tour d'après je ne récupère plus rien du tout dans les inputs
bastienwcs: alors que pour les autres actions j'ai aucun soucis
Palmipedus: yep, de toute facon la je suis plutot stable autour de #310, je vais attendre la silver pour pousser le nouvelle version
Haashi: tu dois surement ouptput 2 trucs sur la console.log
Haashi: ce qui fait que derriere t'es desynchro
BlaiseEbuth: Trop longtemps que j'ai pas utilisé scanf. Y'a un truc pour lire plusieurs int sans spammer les %d ?
dwarfie: humm ... lire la string et splitter ensuite ...
Kirbiby: for (;;) scanf() ::p
BlaiseEbuth: Ah ? Y'a pas un truc genre %3d ?
Tricatel: la ligue argent ouvre a quelle heure ?
BlaiseEbuth: demain
dwarfie: BlaiseEbuth ... si mais ca fait pas ce que tu penses ...
Haashi: c'est pas une regexp ?
Boulet: a ce rythme JAMAIS
BlaiseEbuth: dwarfie : je pense rien, c'est des vagues souvenirs...
Gorkill: Salut, est-ce que l'ont sait l'id max des actions dans Fall-Challenge?
Tricatel: demain a quelle heure ?
Boulet: vers 18h normalement
Tricatel: merci
BlaiseEbuth: ou 16
Kirbiby: EN fait c'est déjà le rerun là et demain on aura la remise des prix
Boulet: enfin c'est pas une science exacte non plus
WhatTrickeryIsThis: donc 06h30 le matin heure de Paris France$
dwarfie: bah , comme disait je sais plus qui hier : "si les gens testaient serieusement dans l'ide au lieu de submit afin de tester ...."
WhatTrickeryIsThis: si tu viens pas pour submit à 5h30, tu sera pas en silver et tu sera disqualifié
DepartmentOfRedundancy: on dirait que cest décalé à mardi
Gh0stm4chine: pourquoi ne pas fixer un nombre limite de submit par heure ?
Bon[]Crayon: 1 par 2 h
Boulet: Gh0stm4chine: demandes à CG !
Boulet: Et puis c'est fait pour le moment. On est a un submit pas jour si on veut le resultat :D
Boulet: \o
Zorg1: bon d'un autre côté je ne sais pas si on a été aussi nombreux à un contest ;-)
Haashi: c'est pas plus mal pour mes CG points
WhatTrickeryIsThis: vilboub il a dit 5k record
HoBo: c'est quoi cette histoire de silver ? Ca va changé quoi exactement ?
WhatTrickeryIsThis: après pour les CG point va falloir être bien classé, c'est moche
Boulet: reCurse: les msg Discord n'était bien sur pas pour toi
dwarfie: HoBo ... au niveau des regles , rien ... par contre , ca separe le bon grain de l'ivraie
reCurse: Ah c'était toi
HoBo: Seuls les silver pourront continuer le challenge ?
tekki: non
Boulet: oui
MooMooN: non tout le monde peut continuer tu peut toujours essayer de monter les ligue
dwarfie: HoBo ... non , mai y'aura un boss a batre pour passer silver
Haashi: HoBo non, tout le monde pourra continuer, mais il y aura une notion de palier, pour bien différencier les niveaux entre les joueurs
Boulet: maintenant que j'y pense j'ai pas pris mon pseudi
**Boulet va changer ça de ce pas
reCurse: Ta suggestion n'était pas claire c'est pour ça
Haashi: j'avoue sur Spring challenge 2020 on était 4980 a la fin
HoBo: ok rien de fou au final. Ok les joueurs seront un peu plus trié que la, mais c'est tout
Haashi: HoBo non rien de fou, mais ca permet aussi d'avoir des submits moins long
Haashi: on sera plus 3000 a se battre, seulement ~800
dwarfie: HoBo ... accessoirement , les runs sont plus faciles a gerer coté CG avec 3000 personnes dans differentes ligues plutot que dans une seule ...
dwarfie: (enfin je pense)
BlaiseEbuth: Pourquoi vous lui mentez ? Les joueurs qui ne passent pas dans les ligues supérieures sont abattus par des agents russes. #nousSachons
dwarfie: BlaiseEbuth : fait gaffe ... tu me rappelles une folle avec "les chinois du FBI" la ..
Boulet: tssss BlaiseEbuth: abattre les gens c'est pour les faibles
R4N4R4M4: Blaise, tu peux utiliser des trucs comme ça : scanf("%[^;\n]%n", ...)
Boulet: il vaut mieux les torturer AVANT
Boulet: sinon c'est pas drole
Haashi: ah tu vois je savais bien que tu pouvais mettre une regexp
Haashi: la question c'est, combien de chat tu vas sacrifier ?
JBM: ils ont ouvert une ligue?
JBM: comment j'ai gagné 300 places sans rien faire
Haashi: PTDR, je regarde le classement des écoles la
BlaiseEbuth: Le chat fr, et le chat world devrait suffirent.
Haashi: y a l'université de Tokyo
Boulet: JBM: spam submit ?
Haashi: les avatars c'est que des loli manga
dwarfie: jbm ... facile , y'a 300 personnes qui etaient devant toi qui ont submit
Boulet: voila
R4N4R4M4: C'est pas tout à fait des regex : https://stackoverflow.com/questions/15664664/scanf-regex-c
R4N4R4M4: Codingame est cassé ? :cry:
Lucanska: Vous savez comment définis la répétabilité des sorts du grimmoir ? Dans le deck présent sur github on a les recettes mais pas de répétabilité associé aux recettes
R4N4R4M4: Oui on sait :D
egaetan: repetable si consomme u ningredient
Phamelin42: Il existe pas des clash par langage ?
Kirbiby: ils sont repeatable si pas gratuit
Phamelin42: Parce que bon, en code le plus court, Python gagne souvent...
Lucanska: Okaay merci !
R4N4R4M4: T'es sûr Kirbiby ?
Kirbiby: confirmé par egaetan donc mtnt oui
egaetan: ;D
dwarfie: Phamelin42 ... parce que je suis pas la , sinon ca serait bash win ;D
R4N4R4M4: J'ai un gratuit répétable là : https://prnt.sc/vjj880
Zorg1: Phamelin42 : faut faire des clashs privés pour ^pouvoir sélectionner langage, ...
Kirbiby: bah non il a -2 en bleu
JBM: pas gratuit ca veut dire?
egaetan: R4N4R4M4 il est pas gratuit c'est -2
Kirbiby: gratuit je veux dire consomme rien
Kirbiby: comme le +2 bleu de base
R4N4R4M4: Ah ok, pour moi gratuit, c'était sans tax
R4N4R4M4: Et ils sont tous répétables les pas gratuits ?
Kirbiby: je sais pas c'est quoi les tax hihi
JBM: encore un qu'a pas lu l'enonce
R4N4R4M4: Arf
Kirbiby: bah tu payes i-1 pour le sort i
Kirbiby: c'est de ça que vous parlez ?
alze: c'est facile de dire "je sais pas ce que c'est les tax". la taxe d'habitation est à payer avant demain, sinon c'est majoration 10%
R4N4R4M4: tu paies i
kaspersaif: j'ai 25 ans , ingénieur info , trop tard pour rejoindre codinggame ?
JBM: oui c'était avant-hier la limite pour toi
Zorg1: bah non il y a de tous les âges
Zorg1: entre le jeune con et le vieux con tu dois trouver ta place :D
Zorg1: ah oui "ici nous avons junior & senior dans une ambiance positive"
Kirbiby: mon IA veut faire les potions qui rapportent 7 ou 8 rubis, et le default IA me démonte en attendant d'avoir celles à 18+
Kirbiby: snig
DepartmentOfRedundancy: ça dépend si t'es né un jour férié
Zorg1: je ferais gaffe
Oursbrun: 27 ans ingénieur android, ici c'est pour algo
R4N4R4M4: Ah mince, j'avais plus pensé à la TH
Zorg1: ah la Taxe d'Habitation.
Zorg1: je la paie pas tous les jours, j'ai pas besoin de l'abrégé
CopperFr: ingénieur android c'est bien ?
Kirbiby: nope
Zorg1: c'est mieux payé qu'ingénieur humain ?
Oursbrun: haha
CopperFr: vous préférez ios ou android ?
DepartmentOfRedundancy: ingénieur mobile
Boulet: on prefere les vrai systemes
BlaiseEbuth: +1
CopperFr: comme quoi ?
JBM: c'est mieux qu'immobile je suppose
Boulet: linux ou mieux Freebsd
Boulet: +! JBM
Boulet: enfin les trucs qui marchent et qui ne sont pas trop daubé du cul
CopperFr: on dit GNU/Linux
Boulet: Nan
CopperFr: parce que android utilise aussi le noyau linux
Boulet: et ?
BlaiseEbuth: :popcorn:
Bob: :beer:
dwarfie: :popcorn:
Boulet: meme pas (pas d'humeur) sorry BlaiseEbuth
Boulet: et les autres
Zorg1: bière et popcorn je ne sais pas si ça va bien ensemble
Boulet: sisi
Bob: y a quoi à gagner quand on est né un jour férié ?
Boulet: surtout si tu trampes la bierre dans le popcorn
Bob: j'ai pas suivi
dwarfie: pas pire que ceux qui mette la biere dans leur corn flakes ...
Boulet: :beers: ?
Bob: :beers: !
Stilgart: :beers: \o/
Boulet: CG ne recule devant rien mon petit monsieurs
Boulet: mis à part la gestion de BD et les infos sur son propre site
Boulet: mais bon c'est pas comme si ils avaient un CM donc bon
CopperFr: Vous préférez la bière ou le chablis ?
Nolliwood: biere
BlaiseEbuth: Rien à voir
CopperFr: je sais bien
dwarfie: vous preferez que copperfr arretent avec les questions cons ou qu'il oublient de les poser ? ;)
BlaiseEbuth: Voilà
Lubrun: no joke hier c'etait frosties dans du pastis
Zorg1: ça doit être une nouvelle feature de CG avec la quest map
dwarfie: Lubrun ... faut oser la ...
CopperFr: c'est un sondage
BlaiseEbuth: Y'a un forum avec des polls pour ça*
Nolliwood: Guys y a t il un problème pour soumettre ?
Boulet: mouais
WhatTrickeryIsThis: c'est meilleur sans les frosties. la jeunesse :face_palm:
Zorg1: c'est utilisé les polls dans le forum ?
Boulet: Nolliwood: yep c'est cassé et comme on a pas de Com. Manager personne ne nous le dis
Boulet: mais bon pas bien grave
Nolliwood: ok thanks
Zorg1: d'un autre côté on est dimanche
Paikan2068: Soumis il y a une heure et demie, 10 combats réalisés
Paikan2068: En soi, on est dimanche, on peut pas leur en vouloir
[CG]Thibaud: merci Paikan2068
Paikan2068: Ils se font rattraper par leur succès
Zorg1: Apo était là ce matin pour nous dire qu'ils corrigeaient
Bob: bon j'arrive juste pas à réfléchir pour ce contest
Paikan2068: Donc bravo à CG et tout ira bien demain sans doute!
Nolliwood: Bob pareil
dwarfie: ce manque de parité ... 6 emoji de femme qui facepalm et pas un seul avec un homme ...
Bon[]Crayon: automatonnn un coup de pouce
AutomatonNN: pas de temps de contest ce week end je crois
Bon[]Crayon: :grinning:
Bob: en plein dans le mille AutomatonNN
AutomatonNN: du coup c'est pas trop compliqué de tout croiser le contest de ce que tu veux dire
Paikan2068: Mais dans les 10 combats, j'ai trouvé un bug!
Paikan2068: Toujours du côté brillant
Paikan2068: pour paraphraser les anglais
**Bob sifflote
Neozero: Bonsoir
BlaiseEbuth: 'soit
BlaiseEbuth: *'soir
Paikan2068: Mais je comprends pas le bug. @Bob, je compatis
Neozero: C'est normal que les résultats des jeux mettent très longtemps à être calculer ?
kami: ;)
Paikan2068: Oui, CG s'est fait rattraper par le succès, donc soyons contents pour eux, et tout ira bien demain
Neozero: Y'a des ralentissements sur le server ?
BlaiseEbuth: Ces gens qui lisent pas...
piwai: j'espère qu'ils ont un plus qu'un seul server :D
Paikan2068: Le classement sera si bizarre demain :p
RomanceDawn: ouah ils ont mis le paquet sur l'interface de ce challenge
Bob: #itsDeadJim
xurei: au moins avec ces serveurs down on a le temps pour optimiser nos perfs
Bob: RomanceDawn: oui, elle est carrément chouette
BlaiseEbuth: Beuh. Y fait pas beau
CopperFr: non et il fait nuit :(
alze: ce moment où tu passes tous les tests d'un CoC simple, mais tu finis à 83%....
piwai: AutomatonNN des idées pour s'occuper en attendant?
AutomatonNN: je vais pas te pourrir
piwai: ouch
mrBen: la violence
Here_s_Chopi: tant de N
CopperFr: il est bon quand même emile (en plus il chantait pas trop mal avec images)
tblancbeyne: Est-ce que les soumissions sur des trucs d'entraînement solo fonctionnent ou pas ?
RomanceDawn: j'arrive pas à trouver une jux de mot avec O(N)
RomanceDawn: tans pis
Haashi: ah ca y est des matchs sont reparti chez moi
aNinjhamster: Hello, comment voit-on dans le tableau des derniers combats le résultat ? (à part en faisant "VOIR" et attendre la fin...)
xurei: pourquoi tant de timeouts T_T
Recoding: Faut voir le timeout comme un truc positif, ça veut dire qu'on réfléchit beaucoup.
mrBen: ah oui Haashi, moi aussi
Here_s_Chopi: Ah moi aussi c'est reparti j'ai pris -10 places
RomanceDawn: le gagnant a sa pdp à gauche
aNinjhamster: Ah c'est pas la place de sa sorcière ?
aNinjhamster: Merci @RomanceDawn
aNinjhamster: -> auto-répondu thx
Boulet: Haashi: pareil ici
aNinjhamster: Ah oui pui "#1" et "#2" c'est pas Player1 / 2, c'est le résultat en fait.
Boulet: par contre on va etre une chiée à monter
RomanceDawn: ouais aNinjhamster
RomanceDawn: y a pas meme pas une PS5 à gagner ou une rtx 3070 😒
CopperFr: oui c'est pour ca que c'est étonnant qu'il y ait autant de monde
RomanceDawn: ah ptain j'avais pas vue y a 5k personnes :o
Mazelcop: il y a un T-shirt a la clé quand même
CopperFr: je préférerais une ps5 voir même une xbox
BE_Walker: Y'en a pas autant d'habitude ? C'est la première fois que je participe pour ma part ^^
RomanceDawn: ah ouais c'est vrai ça le fameux :shirt:
RomanceDawn: ca depend BE_Walker
Haashi: on va dire que précédemment c'était plutot aux alentours de 3k
Haashi: le dernier a fait 5k en fin de contest, et celui la 5k en début de contest
BE_Walker: Ah ouais, quand même
Boulet: On va etre une grosse 60aine à monter
RomanceDawn: c'est tout ?
Boulet: vu la misere qu'on met au bosse
Haashi: je pense que la feature classement enteprise / ecole y joue beaucoup, + le fait qu'ils ont réduit le nombre de contest par an aussi, ca fait "gros évenement" a ne pas louper
BE_Walker: C'est vrai que c'est sympa de pouvoir se mesure aux autres élèves de son école dans ce genre de challenge ^^
Boulet: peut etre plus difficile à oir est l'avenir
brpinto: Yo ! Quelqu'un aurait une idée de comment on distingue si on a la sorcière de droite ou de gauche ?
JBM: pourquoi t'aurais besoin de ça?
BlaiseEbuth: Y'a ton pseudo au dessus
JBM: hey c'était ma seconde option
Paikan2068: Les ids des sorts de base sont précodés
Paikan2068: Si t'as le sort 78, t'es à gauche
Paikan2068: si t'as le 82, t'es à droite
Magus: mais en quoi c'est utile de le savoir ? :o
Paikan2068: Mais il pose une question innocente, je lui propose une solution!
brpinto: c'est mon algo qui craint alors mdr
xurei: ouuuh ca avance on dirait !
Magus: Ah mais la solution fonctionne, mais je me demande à quoi ça peut servir de savoir si on est à droite ou à gauche
Magus: vu qu'on joue en même temps :D
Bob: ah oui ça doit être reparti, je suis en train de redescendre :D
BE_Walker: Erf, j'suis en train de chuter dans le classement :sob:
piwai: ca me rappelle le concours harry potter, ou j'avais hardcodé de marquer à droite au tout début, donc csc 505% des parties et j'étais passé bronze quand meme xD
Bon[]Crayon: :thumbsup_tone1:
Bob: pas mal
Paikan2068: Je ne comprends pas, mon code plante comme un con sans aucune raison parfois : il a juste à faire la potion, et là, bam, il timeout
BlaiseEbuth: C'ballot
Paikan2068: Yes, en plus c'est inconstant
Bob: moche
BlaiseEbuth: Tu codes en quoi ?
Paikan2068: J'ai l'impression, en regardant les replays, que c'est que quand c'est la 5ème potion en plus haha
Paikan2068: Alors que j'ai pas numéroté les potions
BlaiseEbuth: Bah si tu le cherche aussi...
Magus: bon allez, on recode de 0
Magus: y'a un moment quand c'est trop de la merde faut savoir tout cramer
Recoding: J'ai tout cramé ce matin, je confirme c'est bien
CopperFr: crame pas ta voiture par contre
CopperFr: (les fraudes à l'assurance c'est pas autorisé par la loi)
Magus: j'ai pas le permis
Magus: si je crame une voiture c'est pas la mienne
CopperFr: c'est pratique pourtant le permis
BlaiseEbuth: Quand j'ai cramé les locaux de mon entreprise et que j'ai expliqué que c'était pour repartir sur des bases saines à mon boss, bizarement il a pas apprécié... :thinking:
Recoding: Faut avoir le code déjà. (JEU DE MOT)
CopperFr: pas mal
Paikan2068: C'est dimanche soir (à 17h33, l'automne...), on te l'accorde
CopperFr: il était mal assuré ton boss ?
Gh0stm4chine: est ce que cette technique fonctionne aussi avec du code en prod ?
JBM: avoir une voiture sans permis, c'est légal (d'au moins 2 manières différentes)
Magus: CopperFr: jamais eu besoin du permis
Magus: j'habite au centre ville, je vais au boulot en bus
CopperFr: oui mais pour les courses ?
Magus: (enfin en ce moment je vais même au boulot à pieds, vu que c'est dans mon appart)
Magus: bah on est que 2, on a pas d'enfant
Magus: on fait les courses au centre ville
CopperFr: ca coute cher aussi
CopperFr: (une voiture aussi en même temps)
Magus: plus cher que l'assurance et l'essence d'une voiture tous les mois ? :D
Magus: et pour les grosses courses on prend le bus de toutes façons
Magus: on a un leclerc à 10 minutes en bus
BlaiseEbuth: Le seul permis utile c'est le port d'arme. Et encore ça sert que si t'as affaire à des flics que t'as pas l'intention de buter.
CopperFr: je sais bien j'ai pas toujours eu de voiture
CopperFr: mais je pourrais plus m'en passer maintenant
Magus: bon, comment on code en C++ déjà ...
BlaiseEbuth: Vilain pollueur !
CopperFr: pas en ce moment :D
Paikan2068: CopperFr, il arrive que tu codes (/discute sur les forums de CG) en conduisant?
CopperFr: non je suis très prudent en voiture
Stilgart: Magus: un caractère après l'autre
Magus: mon code dans l'arène il fait 450k bytes, ça va être long
Stilgart: tu as largement le temps entre deux runs :p
Magus: c'est vrai
JBM: la plateform est encore down, ou ça s'est arrangé?
Haashi: ca marche now
Thyl: Magus en objet
brpinto: en fait je crois que j'ai pas capté à quoi sert la 2eme boucle for...
Here_s_Chopi: Esperons que ça tienne
Thyl: si t'as un trou de mem' li ton feedback CSB ça peut donner des idées :D
BlaiseEbuth: brpinto tu as le détail des inputs en bas de l'énoncé
brpinto: donc on est d'accord que la boucle décrit successivement l'inventaire de chaque joueur ?
BlaiseEbuth: Plus son score
BE_Walker: Yep
brpinto: donc du coup, la description qui me correspond, puisqu'il est écrit que je suis toujours en premier, c'est quand i == 0 ?
BE_Walker: Yep
kaspersaif: y a des data scientists ?
brpinto: ok, donc c'est pour ça que je demandais comment savoir si j'étais à gauche ou à droite, parce que du coup, la valeur des spell change
BE_Walker: Rah j'ai perdu 100 places depuis qu'ils ont relancé le bazard x)
BE_Walker: Je te déconseille d'hard coder la valeur des spells, ça risque de pas t'amener bien loin :/
piwai: +1
brpinto: ah ah je m'en rend compte maintenant justement
BlaiseEbuth: kaspersaif : ça existe oui
Paikan2068: Bon, ne pas gérer le répétable me crée des timeouts à la con. Time to change that
brpinto: faut que je trouve un moyen de vérifier la valeur des spell du coup
brpinto: et merci pour vos réponses :)
Bob: "la valeur des spell" ?
Thyl: enfin
Thyl: fini
Thyl: une bonne simu
brpinto: ben, comment je sais si je dois cast 78 ou 82 par exemple ?
Thyl: qui marche !!!!!!
BE_Walker: J'imagine qu'il parle de l'action_id ?
Bob: brpinto: ben les CAST sont à toi
Bob: les OPPONENT_CASST sont à l'autre
Bob: et les LEARN c'est dispo pour les deux
BE_Walker: La base c'est de vérifier si t'as les ressources pour lancer le sort et de vérifier si le sort est castable
BE_Walker: Ensuite à toi de réfléchir pour trouver quel sort est le plus avantageux à lancer
brpinto: à priori je suis ok là-dessus
Bob: en clair, t'as pas besoin de vérifier quel spell est à qui puisque l'info t'est donnée
arnial: quelles sont les conditions pour monter de rank ? ca fait un moment que je suis en haut de la ligue de bois, mais je ne monte pas
Bob: arnial : finir au-dessus du boss
brpinto: ok donc y'a vraiment des trucs que j'ai pas capté
arnial: je suis au dessus du boss
brpinto: genre je sais pas utilisé castable par exmple
EDoyon: Arnial : La ligue argent ouvre demain
Gh0stm4chine: premier submit de la journée :pray:
Bob: brpinto : castable, ça dit si tu peux utiliser le sort tout de suite ou si tu dois faire REST avant
Bob: arnial : est-ce que tu as terminé ton calcul ?
arnial: y'a pas une ligue enter bois et argent ?
BlaiseEbuth: Si bronze
EDoyon: Ah, bois, j'avais lu bronze
EDoyon: Autant pour moi
arnial: cad terminer mon calcul ?
EDoyon: Dans ce cas soit devant le boss, et tu passera a la ligue suivante dans les 5 minutes
brpinto: bob : je comprends ça ouais, mais j'ai pas encore compris comment lui préciser le sort à vérifier avec castable
arnial: ah nvm j'ai été relégué a la finde ma ligue pour une raison inconue
Bob: arnial : est-ce qu'il te reste des matches à jouer ?
brpinto: je dois être débile...
arnial: je fait des aller/retour entre 1900 et 20
Bob: brprinto, reprends la liste des inputs
Gh0stm4chine: faut pas resubmit à gogo arnial :D
Bob: pour *chaque* action (donc chaque spell), tu as l'info "castable"
arnial: donc une fois submit faut que j'atente pendant 2h le temps que je monte et qu'il me valide ?
Paikan2068: En fait, c'est arnial qui avait pété le serveur
Bob: arnial : c'est ça
Bob: enfin là il y avait un pain, normalement ça prend pas deux heures
arnial: mais y'a pas moyen de submit et pouvoir bosser sur son code en attendant qu'il fasse des matchs ?
Bob: si, dans l'IDE
Gh0stm4chine: c'est normal que je timeout en arene mais pas quand j'envoie la partie dans l'ide ? c'est plus opti en arene non ?
BlaiseEbuth: Gh0stm4chine tu codes en quoi ?
Bob: arnial : une fois que tu as poussé dans l'arène, cette version-là du code vit sa vie et c'est elle qui est scorée
arnial: Naaaaan c'est bon je découvre l'interface !! ok j'ai pigé merci :)
Bob: pendant ce temps-là tu peux continuer à modifier ton code et à le faire tourner
Gh0stm4chine: BlaiseEbuth Java
Thyl: grand moment je vias bientôt finir mon BFS
arnial: mais du ocup des que je resubmit une version il me remet au fin fond de l'arene ,
brpinto: bob : sur le principe je comprends, mais je capte pas comment l'utiliser en pratique
JBM: célèbres dernièeres paroles Thyl
Bob: brpinto: il faut que tu stockes les infos de chaque action dans un tableau
Bob: comme ça après tu accèdes facilement aux infos de l'action que tu veux
BlaiseEbuth: Bon a prioir y'a pas de soucis avec java. T'as pas de random dans ton code ?
Bob: (si j'ai bien compris le fond de la question)
Bob: arnial, oui
JBM: comment ça pas de souci avec java
Haashi: arnial oui
brpinto: bob: je pense que oui, je vais creuser, merci :)
BlaiseEbuth: lel
Uxof: Personnellement , plus j'essaye d'enlever les timeout de mon code, plus j'en fais ><
Haashi: y a encore 600 personnes en submit ahah
Bob: arnial : à chaque fois que tu soumets ton code, il repart en bas, il y a une dizaine de matches qui sont joués contre une sélection d'autres AI réparties sur l'ensemble du board pour te donner un classement initial
BlaiseEbuth: Il n'y a pas de soucis en plus de ceux de bases qui seraient ajoutés par la plateforme.
Bob: ensuite le reste des matches est joué contre des AI voisines de la tienne
Bob: au fur et à mesure de ton évolution
Bob: une fois que tous les matches sont joués, si tu es au-dessus du boss, tu montes de ligue
arnial: " combat en cours 27% " ca correspond a quoi ?
arnial: ah ok c'est ca tous les moatchs ?
Bob: 27 % du nombre total de matches
Bob: si tu t'affiches dans le leaderboard tu as un indicateur de progression
arnial: ok c'est pour ca que je suis stuck au dessus du boss sans bouger
arnial: c'est trop long pour faire les 100% xd
Bob: note aussi qu'une fois que tu es à 100 %, ton AI peut continuer à bouger en fonction des matches que les autres AI en cours de submit vont jouer contre elle
Gh0stm4chine: BlaiseEbuth si à un moment je choisis un coup random dans une liste, mais je timeout au premier coup du coup ça m'étonne, du coup j'ai baissé mon timeout max de 3ms et ça à l'air d'être mieux
Dridriun: aujourd'hui c'est car le serveur galère mais d'habitude c'est beaucoup plus rapide
Bob: dans certains cas c'est possible de passer au-dessus du boss comme ça si on est juste en-dessous
BlaiseEbuth: Gh0stm4chine : ouai le code ide et celui en arène sont pas exécuté de la même façon, donc la limite peut varier
Bob: l'IDE est généralement un poil plus permissive
BlackChild_71f0: petite question les gars y a pas des problèmes de machine learning ici ?
BlaiseEbuth: Non
BlaiseEbuth: Pas en tant que tel
BlaiseEbuth: Mais rien ne t'empêche de bidouiller pour utiliser du machine learning
kaspersaif: ca aurait été cool , genre des problèmes rapide pas comme kaggle
kaspersaif: des problèmes sans utiliser des bibiliothèques comme sklearn etc
kaspersaif: que du math
Magus: déjà que les collisions de certains puzzles font rager, un contest avec que des maths je veux pas être la pour voir ça :D
kaspersaif: l'info éventuellement c'est du math
Bob: et quand même Magus dit que les collisions font rager, c'est pas peu dire :)
Gh0stm4chine: https://i.imgur.com/NDAkkRh.png c'est la loose ce timeout en fin de partie :( et j'arrive pas à le reproduire quand j'envoie la game dans l'ide :/
Mastard: pareil, j'adore quand je dis "sort de la boucle quand tu depasse 30ms", et qu'il me dit "je suis sorti au bout de 53ms"... wait what ? 20ms pour une seule boucle ?
VirtualAtom: https://imgur.com/FlyqKfF sur le même joueur ^^
leojean890: ouais perso je mets une milite à 0.038 car 0.045 par ex j'ai des timeouts et 0.04 un peu..
Mastard: je comprends pas comment un tour peut mettre +20ms
Mastard: ca me depasse
Mastard: alors que c'est passé 3000 fois dans cette boucle avant... mais la 3001eme, plus de 20ms, wtf
VincentBab: un bon seed pour tester les timeout : seed=1888048566799534850
leojean890: dans certains jeux y'a une sorte de bug
leojean890: avec les 0.05
Gh0stm4chine: ah ça me rassure, j'avais le même soucis :D
Haashi: Mastard t'es en quoi ?
Haashi: ca peut etre le GC
Haashi: meme si 20ms je trouve ca gros
Mastard: typescript
Mastard: oui on m'a deja dit le GC, mais du coup je vois pas comment regler ca
BlaiseEbuth: -> change de langage
HoBo: je suis environ 350e et mon algo me prend 70us a s'executer :)
leojean890: us carrément;)
Mastard: bah 70ms tu depasse
Mastard: aaaah
leojean890: ouais j'avais compris;)
Mastard: pas moi haha
HoBo: j'ai encore des amélioration a faire, j'ai au mois de la marge de temps d'execution
Mastard: quel langage ?
HoBo: je suis dev logiciel embarqué, c'est ce que je connais le mieux
leojean890: bon #140 en effet ça redescend va falloir que je finisse mon portage go !!
Haashi: leojean890 go go go
Mastard: j'arrive quand meme a etre #230 avec un algo qui timeout une fois sur 10, donc je me dis bordel si je regle ca je monte encore quoi
Orabig: Sur un langage à GC, faut se débrouiller pour qu'il n'ait pas à passer. Donc reutiliser soi même ses objets et n'en libérer aucun, pour être certain que le GC ne passe jamais
Orabig: j'ai du faire ça quand je faisais des contests en java
Orabig: mais c'est du boulot...
DepartmentOfRedundancy: je viens de gagner 10ms en passant d une LinkedList a ArrayList
Magus: tellement de boulot qu'au final, autant coder direct en C++
Orabig: pas faux :)
DepartmentOfRedundancy: je faisais juste des add dessus en O(1) mais en fait il réalloue la mémoire à chaque fois=> https://stackoverflow.com/a/5346098
Paikan2068: C'est pour ça que certains professeurs te recommanderont de recoder certaines de ces structures pour qu'elles fassent ce que tu veux
Orabig: les objets de java collection, c'est le pire. Tu sais pas trop ce qu'ils font sous le capot. Il vaut mieux utiliser tes objets à toi, avec des array bas niveau
BlaiseEbuth: Bah si tu veux opti t'utilise pas la lib standard
Paikan2068: Je pense au cours "Algorithms" de Princeton disponible sur Coursera
Paikan2068: Qui est absolument top
Paikan2068: https://www.coursera.org/learn/algorithms-part1/home/welcome
Paikan2068: Robert Sedgewick est un excellent professeur, même en enregistré :p
CopperFr: faut tout recoder en assembleur (bon le contest sera fini avant)
mrBen: +1 pour ce cours
VincentBab: Ya des gens dans le top50 qui font pas de BFS/DFS/Bruteforce ? xD
leojean890: y'en a qui font du beamsearch ou des simus random;p
VincentBab: oué beam c'est BFS amelioré
leojean890: yep
leojean890: j'en ai un sur 2048 mais il est nul:P
leojean890: lui aussi va falloir que je le porte en go;)
leojean890: 3.3M vs dbdr 62M
VincentBab: j'ai un peu de mal a voir les heuristique efficace en beam search pour ce contest :/
leojean890: t'es en bfs toi non ?
leojean890: tu px utiliser la même eval pour les 2^^
leojean890: Haashi y'a pas d'autocompletion en go sur cg ?^^
VincentBab: j'ai un bfs pour determiné le nb de tour pour faire chaque potion
leojean890: pareil que toi
leojean890: et ensuite je garde els 2 meilleurs score/nbTours
leojean890: je relance un BFS chacun
leojean890: pour trouver une 2eme potion
VincentBab: en fait moi je fait 1 seul BFS pour les 5 potion en meme temps et je return quand j'ai les 5
leojean890: et je pondère depth1 et 2
leojean890: ah ok^^
leojean890: tu return une fois que ton bfs a trouvé les 5 quoi
leojean890: ça te donne un ordre "optimal" pour les avoir
Kirbiby: mais tu mets cb de temps à trouver ?
mrBen: VincentBob, j'ai la même strat pour l'instant
leojean890: toutes
Greg237: Mais vous faites ça à chaque tour ? et ça ne fait pas timeout ?
VincentBab: quelques ms Kirbiby
VincentBab: bah ca timeout pas car j'ai beaucoup optimisé mon BFS en C++ xD
Munto: Hello ! Elles arrivent quand les prochaines ligues?
Greg237: Munto, silver league arrive lundi après-midi
Vry: VincentBab , ton BFS applique toutes les règles ???
Munto: ah ok, merci Greg237
Vry: Moi en C, c'est ultra lent ...
leojean890: t'as l'air super chaud en optim c++ vincent ;)
Kirbiby: j'avais essayé et mon bfs était incapable de faire plus de 8 tours un truc comme ça
VincentBab: Vry: oui, mais je limite le learn au 2 premier tour pour l'instant
Vry: Moi depth 4 max après il meurt ...
leojean890: moi 2 tours aussi
TidyMaze: en js je fais 5 tours en limitant pas mal de coups ... c'est nul ^^
Vry: Du coup je suis parti sur un MCTS
Kirbiby: tu limites à 2 tours dans ta recherche ou dans le jeu ?
Vry: Les gestion des données est différentes
Vry: *La
VincentBab: c'est que tu as pas assez optimisé Vry ^^
Vry: Et du coup ça m'a donné des idées pour opti mon BFS
VincentBab: quelle est la taille de ton Node ?
BlaiseEbuth: C'est pas la taille qui compte
Vry: VincentBab et pourtant le code est ridicule mais c'est la gestion des données qui pose problème
VincentBab: il faut faire des bitset ^^
Kirbiby: mon node doit faire une centaine d'ints
leojean890: VincentBab mais en fait pour une seule branche ta seule condition d'arrêt c'est que ton parcours prend les 5 potions et tu retournes l'action depth 1 ?
Nelimee: Une petite question d'ordre pratique: ça va faire une petite demi-heure que j'attends de faire Bois 1 => Bronze et ça n'arrive jamais, je suis pourtant bien classé au dessus du boss. Une idée de quand ça va arriver?
Vry: Tu es à 100% Nelimee ?
VirtualAtom: pas mal, divisé par deux le temps d'exécution d'un BFS depth 15 en 4 lignes. ça valait le coup de lancer un profiler en local
MooMooN: 1 est-ce que tu as fini tes combat dans l'arerne Si oui alors le temps est marqué dans le bandeau du haur
TidyMaze: dites, ça a un nom un DFS qui limite à 4 coups par noeud ? (comme un beam-search mais non-global)
Vry: VincentBab : je lirais ton PM ! :p
leojean890: 3 168 vivement l'ouverture de silver pour étayer tt ça;)
Kirbiby: ça s'appelle un DFS TidyMaze :d
Vry: Un DFS4 ?
Nelimee: Ha il faut donc avoir fini ses combats... Bon ben j'en ai encore pour une bonne demi-heure vu la vitesse actuelle :(
VincentBab: xD
BlaiseEbuth: Ori <3
TidyMaze: bon ben je vous recommande pas un DFS4 TidyMaze :D
VincentBab: leojean890: ma condition d'arret c'est que j'ai trouver le nbTour pour faire les 5 potions
leojean890: TidyMaze comment es ton D&B :P
leojean890: VincentBab ouais du coup tu simules genre depth 25-30 ?
leojean890: pour avoir 5 potions depuis le tour 0
VincentBab: oula non
Vry: C'est un BFS donc pas consécutives les 5
TidyMaze: leojean890 hmm c'est en cours mais tres lentement, j'ai une sorte de min-max qui normalement gere bien les coups qui s'alternent pas toujours ...
VincentBab: oui je calcul pas pour faire les 5 a la suite
VincentBab: les 5 sont independente
leojean890: aah ok tu calcules pour chaque potion ?
leojean890: c'est ce que je fais moi..
leojean890: mais t'es mieux classé:P
leojean890: je fais un seul bfs qui retourne une depth par potion
leojean890: 12 ms
Vry: Je suis jaloux de vos BFS ... :blush:
leojean890: TidyMaze ah ok^^le gagnant remi utilise un alphabeta aussi;)
Mastard: 1 depth par potion ?
Mastard: comment ca?
VincentBab: bah le temps ca depend de la complexité du state
JBM: moi j'ai un super bfs de wood
leojean890: bah Mastard ça me dit combien ll faut de coups à partir de mtn pour la chopper
R4N4R4M4: Je pense que je vais ajouter les combis de 2 potions dans mon BFS, je sais pas si ça paie
Georges5: Petite question comment vous prenez en compte les REST dans le BFS ?
JBM: pour bronze j'ai toujours pas réussi à me commit dans une manière de renseigner les actions répétables
VincentBab: parfois je met moins de temps pour trouver une potion depth=12, qu'une potion depth=6 xD
Vry: Pour ton BFS tu recalcules à chaque parcours où tu gardes tous les states en mémoire ?
R4N4R4M4: Georges5, tu marques REST dans la cellule
Mastard: ca veut dire que tu lance un bfs par potion ?
Vry: JBM : osef
R4N4R4M4: Le BFS, il peut créer des situations de blocage ou bien c'est pas possible
R4N4R4M4: ?
VincentBab: tous les state en memoire Vry, que je préalloue avant
leojean890: un seul bfs qui récupère toutes les depths
R4N4R4M4: pareil
Nelimee: Vous faites des BFS pour récupérer seulement le temps nécessaire pour crafter des potions?
Mastard: ouais nan mais ya un truc qui doit clocher grave dans mon truc, ca fait 2j que je trouve pas ce que c'est, quoi xD
Nelimee: Ou vous récupérez aussi le chemin pour crafter chaque potion?
joelthelion: sans surprise, si on regarde les stats les langages à GC s'en sortent nettement moins bien
R4N4R4M4: Nelimee le chemin aussi, mais moi je garde juste la première action à faire
Georges5: R4N4R4M4, ca veut dire que les étapes du BFS prennent en compte l'état castable des sorts ?
R4N4R4M4: Oui
R4N4R4M4: J'ai l'état castable pour chaque position
CopperFr: ah cool kovi 19
Nelimee: C'est pas un peu overkill un BFS?
R4N4R4M4: Et si le sort n'est pas castable, je continue quand même vers la position suivante en la marquant REST
Nelimee: Vous arrivez à quelle profondeur?
Mastard: pour moi un etat c'est l'inventaire, l'etait des spells+grimoire, le chemin courant
xurei: ~20
R4N4R4M4: Mon BFS il bloque vers 10 11 12 de depth
leojean890: copper kovi est tjr bien classé et #1 en nombre de submits;)
R4N4R4M4: et remplit environ 98% du cube
Mastard: moi il va à 3 ! xD
xurei: faut être malin sur la gestion des spells
LoganWlv: Comment vous faites depth 10 XD
LoganWlv: moi il va à 3 aussi
xurei: sinon tu te retrouve vite avec plein de nodes très semblables
NoZ-: j'ai des timeouts dans des parties, quand je les envoie dans l'IDE, ça fonctionne...
R4N4R4M4: Mastard, si tu traites pas les REST, ton BFS bloque vite
Georges5: Mastard et ça explose pas en nombre d'Etats ?
R4N4R4M4: 1001 états maxi :D
xurei: non
R4N4R4M4: bah si !
xurei: 1001 seulement si tu keep que l'inventaire
xurei: mais c'est pas suffisant pour trouver le best path
xurei: mais si tu stockes les spells c'est trop gros => faut tradeoff
Mastard: bah les REST je l'envisage a chaque fois qu'un des spells est epuisé
R4N4R4M4: j'ai l'inventaire, l'état des sorts, l'indicateur REST, l'enregistrement du chemin, et la sauvegarde de la première action du chemin, ça fait 1001 fois tout ça
xurei: arriver à un inventaire identique mais avec presque tous les spells utilisé, ou presqu'aucun, ca change la suite du path
Mastard: @Georges5 si, ca explose grave
R4N4R4M4: C'est la question que je me pose justement xurei
xurei: etat des sorts : 2^(nb_spells)
xurei: c'est ce que je faisait au début mais c'est bcp trop en endgame
Mastard: au debut je gardais que l'inventaire, mais ca suffit pas
Georges5: xurei, c'est ce que je pensais. Mais si t'as pas les Spells utilisés , le meilleur chemin ignore trop les REST...
R4N4R4M4: Tu appelles quoi l'état des sorts xurei ?
R4N4R4M4: 1 bit par sort, ça suffit non ?
xurei: Georges5 oui, il faut faire un tradeoff entre tout garder et rien garder
xurei: R4N4R4M4 oui 1bit par sort
R4N4R4M4: moi je garde 0 ou 1 pour le castable des sorts, c'est tout, mes sorts sont stockés ailleurs, ce sont les mêmes pour tout ton BFS
xurei: mais c'est deja trop
Razielwar: R4N4R4M4 salut, comment tu gères un REST d'un LEARN car l'inventaire change pas, du coup tu jetes lequel?
xurei: mon bot va jusque 24 sorts
xurei: 2^24 states... voila voila
R4N4R4M4: J'ai pas les learn dans mon BFS, si je veux faire un learn, je simule d'abord, et je fais le bfs ensuite
Kirbiby: oua moi j'ai tout dans mon state
Mastard: perso je gere le grimoire comme un sort normal, du coup il me faut 2bits pour l'etat d'un sort
Razielwar: tu fais un bfs par learn du coup?
xurei: idem pas de learn dans le bfs
R4N4R4M4: yes Razielwar
xurei: heurisitques pour ca
Razielwar: ah ouais, faut que je passe en c++ ^^
R4N4R4M4: Mon BFS, il me servira que pour l'évaluation, il est pas dans ma simu
Georges5: Question con, comme tout est prévisible ou presque. C'est pas calculable en dehors pour avoir toutes les distances à tous les coups "préchargeables"...
Mastard: ouais nan mais deja si ca parle de simu, je suis out xD
Kirbiby: brews, casts, spellbooks, inventaire, score, rubis, et chemin :d
R4N4R4M4: Georges5, à mon avis c'est faisable
xurei: Georges5 si mais très complexe
xurei: faut prendre en compte les learns du coup
VincentBab: quelqu'un a tenté de faire un DFS avec Iterative deepening ?
Littleyounes: j'y est pensé aussi mdr
xurei: et ton espace explose
R4N4R4M4: +1 VincentBab
VincentBab: je me tate a essayé ca
xurei: VincentBab je suis pas sur que le DL soit très utile ici
Georges5: xurei, on est limité à combien en mémoire ?
R4N4R4M4: plusieurs Mo, mais je sais plus combient
R4N4R4M4: *n
xurei: a mon avis les bots #200+ battent n'importe quel humain deja
VincentBab: xurei: le DL ?
xurei: Deep Learning
Kirbiby: 768mo
VincentBab: ah non je parlai aps de ca
xurei: ah pardon !
VincentBab: Iterative deepening, c'est quand tu fais un DFS depth=1, puis depth=2, etc...
xurei: mal lu
VincentBab: ca permet de gérer les timeout
xurei: pour gérer les timeouts : optimiser le code à la truelle !
VincentBab: oui mais quand tu fait un DFS tu doit choisir la depth avant
xurei: (sans blague ca faisait longtemps que j'avais pas autant pousse de l'optim)
xurei: ah moi c'est un dijkstra modifié que j'utilise en fait
VincentBab: donc pour rentabilisé au mieux les 50ms, tu fait un DFS depth=1, si il te reste du temps tu fait depth=2, etc..
xurei: donc ca s'arrête dès que ca trouve
xurei: et j'ai une maxDepth à 30
mrBen: ça resemble à un BFS du coup, non ?
xurei: oui c'est très proche du BFS
xurei: p-e même un subset du BFS, mes cours d'algo sont loins '^_^
VincentBab: oui ca resemble a un BFS du coup ^^
Orabig: pourquoi parler de DFS dans ce cas ? :D
xurei: on parle pas de DFS ... ?
VincentBab: bah c'est du Iterative deepening ^^
VincentBab: mais a la base c'est surtout utile quand tu fait du minimax
VincentBab: c'est vrai que la en y reflechissant je vois pas trop l'interet par rapport au BFS
xurei: a part eviter les tiemouts
Telokis: ça ressemble pas mal à du BFS, en effet
TidyMaze: voici le moment tant attendu, je vais convertir mon code JS en un langage adapté aux perfs. Go ou C++ ou Haskell ? Seuls les votes LEGAUX seront comptés
xurei: c'en est. Je crois que la distinction se fait quand à l'ordre de traitement des noeuds
VincentBab: bah tu peux avoir une condition dans ton BFS qui return si tu as plus de temps
xurei: avec dijkstra (ou A*) tu peux regarder des noeuds plus profonds que d'autres avant
BlaiseEbuth: C++
xurei: en fonction de ta fonction de score du noeud
xurei: TidyMaze j'ai du faire pareil avec ice and fire . JS -> Java. Courage !
TidyMaze: java ? Le warmup est fatal
TidyMaze: sinon je le ferais en scala <3
xurei: JS -> Java ~ 50x speedup
xurei: C++ : pas le courage de faire du mem management
Mastard: quand vous faites un BFS, vous excluez des noeuds sous quel critere ?
xurei: s'il est déjà visité
Mastard: ok mais comment tu definis 'deja visité" dans ce challegne ?
xurei: visité = même inventaire + a REST/a pas REST
Telokis: J'ai essayé de convertir mon DFS simple en BFS et je consomme plus de 50Go de RAM si je le lance sur mon ordi ! :)
Mastard: ok donc tu regarde pas l'etat des sorts
TidyMaze: en C++ normalement y'a moyen d'eviter la gestion de la memoire "a la main" de nos jours non ?
xurei: Mastard C'est un tradeoff. L'idéal c'est visité = meme inventaire + meme etats de spells
Mastard: c'est ce que je fais
xurei: TidyMaze surement mais j'ai plus fait de C++ depuis 5ans
TidyMaze: ok ok
sykefu: moi je suis sur mon petit python et je commence la ligue bronze !
WhatTrickeryIsThis: https://www.codingame.com/replay/502466191
WhatTrickeryIsThis: il est mauvais le rank n°1
BlaiseEbuth: Non
Mastard: ca va finir en passage au c# cette histoire
TidyMaze: WhatTrickeryIsThis tu prends toujours les 42 spells ?
xurei: sykefu Bienvenue dans la cour des grands ! ;-)
TidyMaze: :O
xurei: WhatTrickeryIsThis je le défonce aussi je comprends pas
Haashi: 32 \o/
BlaiseEbuth: rsut + ide = caca
WhatTrickeryIsThis: non les spells je prends que quelques une qui sont chouette
BlaiseEbuth: *rust
WhatTrickeryIsThis: souvent je ferai mieux de pas en prendre
WhatTrickeryIsThis: je vais tenter un rush grimoire
WhatTrickeryIsThis: pour la soirée
Mastard: j'ai tenté que des learns sur les 10 premiers tours, ca m'a rien apporté de plus
sykefu: merci xurei
Haashi: Mastard, je suis passé de 90 a 30 avec ca
sykefu: bon, bah c'est parti pour voir quoi faire avec les learns de spells
Mastard: ah ouais tant que ca... nan mais deja mon probleme c'est le timeout, les learns on verra apres xD
Haashi: ouais je suis surpris mais je me fais pas de bile
Haashi: il y a pas mal de gens qui ont resubmit qui devrait finir plus haut que moi
xurei: bon, je rank ~100, pas mal... what now ?
Haashi: emil c'est un délire, il mets presque 2 points au 2eme
Haashi: il a du trouvé le secret
xurei: je défonce emil
xurei: mais pas le 2e
xurei: comme quoi ca dépende vrmt de ta strat
sanpas83: emil c'est un voleur de speal
WhatTrickeryIsThis: emil je le bute soit sans les spells, soit avec toute les spells
Mazelcop: emil est en mode début de l'IDE, c'est pour ça que tu gagnes
Haashi: personne défonce emil
BlaiseEbuth: Voilà
Mazelcop: *debug
Haashi: il a 1/100 eme de ses performances dans l'IDE
sanpas83: donc si toi aussi tu vole des spell le grimoire devient vide et il fait plus rien faire
BlaiseEbuth: non
WhatTrickeryIsThis: bhha si
WhatTrickeryIsThis: tu voit il reste afk dans mon replay
BlaiseEbuth: Vous lisez c'qu'on vous dit ?
WhatTrickeryIsThis: nan bien sur que nan
WhatTrickeryIsThis: pas fou
Oioi: C'est un problème lié à la gestion de Rust par CG
BlaiseEbuth: Il est en rust, et le rust est executé en debug dans l'ide, donc son bot galere. Mais c'est quand dans l'ide, en arene il vous dechire
Oioi: Bref, s'il est premier, c'est probablement que son algo tient mieux la route que les notres...
sanpas83: ok :)
sanpas83: donc ne pas jouer contre des personnes en rust dans l'IDE ?
BlaiseEbuth: beh non...
BlaiseEbuth: Enfin tu peux mais c'est pas representatif
xurei: on voit ou le language ?
TidyMaze: ... sauf si t'es toi aussi en Rust
sanpas83: Oui je viens de voir avec d'autre personne du classement c'est radical merci pour l'info
BlaiseEbuth: dans le leaderboard
Neumann: Rust meilleur langage pour hide en fait
BlaiseEbuth: Ouai...
joelthelion: Pas dur à implémenter avec un autre langage :)
VincentBab: oué lol abusé...
joelthelion: en vrai c'est vraiment galère de pas pouvoir utiliser son code normalement dans l'IDE
Mastard: wow @xurei thanks ! J'ai fait un tradeoff pour les visited comme tu as dis, j'ai pas mal gagné en perf deja
Mastard: sauf que moi je compte combien il y a eu de rest plutot que oui ou non
xurei: pas de quoi Mastard
VilBoub: ça bouge dans le top 10 ^^
JocelynL: vous savez pourquoi, de manière aléatoire, j'obtiens l'erreur "votre code n'a pas lu toutes les données disponibles depuis l'entrée standard avant d'avoir écrit sur la sortie standard. Ceci cause une désynchronisation qui peut entraîner des comportements inattendus" ?
Mastard: probleme de perf
xurei: t'as un printErr avant d'avoir tout lu ?
Mastard: crois moi, je l'ai depuis vendredi soir
dwarfie: JocelynL ... la traduction est timeout
JocelynL: ok merci :)
Maka: vous avec une idée du moment optimal pour faire un "REST" plutot qu'un LEARN sur Fall challenge ?
Oioi: Lorsque tes propres sorts castés sont plus utiles que ceux du grimoire
Oioi: C'est le plus souvent le cas, sauf en début de partie
Maka: hum oui merci.. ca simplifi pas mon implementation ca :) mais c'est une bonne piste !
sgalasso: Salut, dites vous auriez un tips pour bien scorer de manière admissible un state par rapport à une commande ?
Mastard: je me suis posé la meme question
BigUP: sgalasso, moi j'ai un tips pour scorer pas trop bien
Mastard: j'ai vu 2 possibilités, soit mesurer betement la difference entre chaque ingredient, et aditioner le tout pour avoir un score, soit pareil mais en ponderant leurs valeurs
BigUP: bref, une eval qui m'amene au mieux 1600eme
Mastard: ponderer les valeurs est bien si tu mise pas trop sur le grimoire. Si tu te sers bien du grimoire, je pense que ce n'est plus tellement pertinent
sgalasso: Mastard, mais leurs valeurs justement dépends des sorts qu'on possède..
Mastard: @sgalasso exactement, d'ou ma remarque sur le fait d'utiliser beaucoup le grimoire ou non
sykefu: Bon, j'ai un peu joué avec la ligue bronze et je pense que je vais tenter d'apprendre une ~15aine de sorts en début de partie puis BFS une simulation du jeu. On verra ce que sa donne
sgalasso: @Mastard tu peux développer l'idée ? J'étais à la base parti sur l'idée de générer un level de complexité à chaques élément depuis un arbre de dépendance
Mastard: j'ai pas tellement developpé le concept. A un moment je me suis dit "pour virer certains noeud de mon bfs, ce serait bien de virer ceux qui sont trop loin d'atteindre les potions"
Mastard: mais je ne l'ai pas fait encore
joelthelion: @sykefu avec 15 sorts ta BFS n'ira pas très loin
joelthelion: surtout en python
sykefu: :'(
sykefu: peut etre moins de sorts alors
sykefu: je vais voir
joelthelion: c'est pas forcément une mauvaise idée, mais autant être au courant :)
sgalasso: Vu le nombre de noeuds générés vous allez pomper la mémoire dispo avec un BFS, partez plutot sur un DFS
sykefu: apres le nombre de sorts que je prends au début sa se change vite
Greg237: quelles alternatives au BFS pour éviter d'avoir à passer en C++ / full opti ?
sgalasso: IDA*
joelthelion: @sgalasso j'ai un DFS, mais le problème c'est que ça m'oblige à avoir une profondeur fixe. Des idées?
sykefu: J'ai jamais fait de simulation et j'ai réussi a finir de preparer les cours de mes eleves pour la semaine du coup je vais avoir le temps de voir jusqu'ou j'irais dans le challenge \o/
sykefu: bref, je suis chaud et j'ai du temps
sykefu: et dire que la semaine derniere on m'a demandé a quoi servent les arbres :D
Mastard: ca me fout la mort, les seuls combats que je perd quand je submit ce sont des timeout, alors que jqns l'ide je les gagne haha
BigUP: moi je sais, a faire chier lorsqu'on veut creuser la terre ! :)
sykefu: pas faux :p
BigUP: Mastard, relance plusieurs fois dans l'ide... si t'as du random, ca va finir par tiemout
Vry: Ahhhh je suis rassuré ... avec une gestion différente des états je retrouve de la perf. :sunglasses:
sgalasso: le debug quand t'as du random -> :joy:
Vry: > 15871 playout, 86534 node, 419290 move.
Julius2k17: @sykefu je pense que cg est un support de cours extra pour les maths
Mastard: justement dans l'IDE je peux le relancer 10 fois, jamais de timeout
Vry: Au final mon bot arrive à "jouer" 400k coups
QzL: Vous avez déjà vu l'ia par défaut bloquer sur wait pendant x tours ?
Vry: en MCTS
Vry: Je ne stocke pas l'état du jeu je le recalcule lorsque je parcours l'arbre
joelthelion: @Vry joli, ça m'étonne que tu ne sois pas mieux classé
Palmipedus: Vry ha oauis je suis au alentour du tour 20, (environ 2-3 recipe done). Mon code est lent alors
Vry: Dans l'arène c'est mon BFS qui se traine depth 3
Palmipedus: depth 3 recipe?
sykefu: @juluis2k17 je suis prof d'infos mais j'avais pas pensé aux maths j'avoue
Vry: C'est la gestion/stockage des états du jeu qui est critique
Skrakout: @Vry Tu perds pas plus de temps à recalculer qu'à stocker ?
Vry: a priori non (en tout cas pas de la manière dont je le fait) ;)
Skrakout: La magie du C je suppose :d
Skrakout: J'hésite à faire un MCTS également, je trouve ça élégant
Skrakout: Mais j'ai peur des perfs en Python
Vry: Pour le coup je n'ai plus de memcmp (pour les doublons), beaucoup moins de memcpy
Vry: J'avais déjà un code éprouvé sur UTTT donc je l'ai repris ... maintenant que j'ai un peu de perf il faut que je teste que ça marche bien !
VincentBab: pour les doublon faut faire une hashtable
Mastard: oula l'arene freeze à nouveau
CopperFr: je suis pas trop fan de l'arène
Magus: bah la mon code dans l'arène c'est un MCTS
Magus: j'ai une version "un peu mieux" mais j'attendais que les submits soient vivants pour tester, mais bon au mieux ça fera top 30
Magus: le moteur est beaucoup trop lent pour avoir un mcts qui marche bien. Ou alors faudrait éval au lieu de rollout mais dans ce cas c'est pas un mcts
CopperFr: l'arène faut bien choisir ses cartes
VincentBab: ah oué pas mal Magus ^^
VincentBab: tu peux pas optimisé ton moteur Magus ?
Mastard: haha @Georges5 j'aime bien tes textes pendant un match xD "Ca repart!"
Skrakout: Quelqu'un a un conseil pour un noob qui essaie d'implémenter un MCTS pour la première fois ? :d
VirtualAtom: quelqu'un a déjà eu des surprises avec un gros memset sur CG ? en local, ça coûte quasi rien, dans l'ide c'est timeout direct.
[CG]Thibaud: si tu mets le @, ça le ping pas Mastard
Mastard: ah crotte faut faire quoi ? sorry
[CG]Thibaud: sans le @, comme je viens de le faire pour toi
VincentBab: j'ai remarqué que les memset etait assez lent sur CG en effet
Mastard: ah ok, thanks :)
VirtualAtom: merle, adieu mon x2 :-[
Mastard: quelqu'un sait comment l'algo de l'arene choisi qui on combat ? c'est juste une curiosité
Magus: VincentBab: le problème c'est qu'il faudrait l'optimiser pour qu'il soit minimum 20 fois plus rapide
Magus: et ça va pas être trop possible
Booti: De quoi, le memset ?
CopperFr: mem7 ?
VincentBab: non il parle de son MCTS
Booti: Ah
VincentBab: bon c'est quoi la strat de emil ? xD
VincentBab: a part hide en rust xD
Mastard: question toute bete, les challenge comme ca c'est quoi, tous les 6 mois ?
Vry: memset c'est le mal niveau perf.
Mastard: pacman etait mon 1er du coup je suis un peu nouveau ^^
Booti: Ça dépend des implémentations et architectures
Vry: Skrakout : https://jeffbradberry.com/posts/2015/09/intro-to-monte-carlo-tree-search/
Vry: ttp://www.baeldung.com/java-monte-carlo-tree-search
fenrir: Mastard: pour les adversaires, sauf erreur, grosso modo: il prend des adversaires autour de ton niveau, et du gagner des points ou perds en fonction du résultats du match
Mastard: ok thanks fenrir
Vry: lol d'après callgrind ce qui me coût le plus chere actuellement c'est l'ajout / suppression des ingrédients ...
BlaiseEbuth: Le coût de la matière première toussa toussa...
Gorkill: Comment on peux savoir le temps d'execution en C?
Gorkill: Je pense que je TIMEOUT, mais je ne sais pas comment savoir ou j'en suis dans mon temps d'éxécution ^^
fenrir: en C j'utilise ces helpers:
fenrir: http://chat.codingame.com/pastebin/b1a7eb62-248c-4736-b5e6-19ef0d807ca2
fenrir: get_time() est en microsecond
Gorkill: Oooh merci :)
R4N4R4M4: Ha ha, je viens de me rendre compte de ma bêtise :D
LoganWlv: Quelqu'un a une idée en Java pcq System.nanoTime() ça a l'air completement random
Gorkill: C'est ma première IA en C en générale je suis en Java :)
R4N4R4M4: Gorkill regarde la fonction gettimeofday(=
Dimitrio: ]LeganWiv System.currentTimeMillis() et tu fais des delta
R4N4R4M4: *)
Gorkill: Mais faut prendre la ref juste aprés le premier input
Gorkill: Si tu le prend au début de ta boucle, tu compte alors que ton IA peut attendre la premiére entré.
R4N4R4M4: Dans mon BFS, jusqu'à présent, une potion était un point...
R4N4R4M4: Alors que c'est un plan... voire plus :D
Gorkill: Le plus sure c'est vraiment mesurer le temps juste après le premier Scanner.in
R4N4R4M4: Du coup, pour faire une potion avec 5 vert, et si j'avais 6 verts 2 bleus et 1 jaune dans mon inventaire, il fallait d'abord que je me débarrasse de 1 vert 2 bleus et 1 jaune... :D :D :D
Mastard: woaaaaaw le son de notif de CG il m'a fait flipper puissance 255
R4N4R4M4: Dans mon calcul de chemin en tout cas
Vry: Gorkill, en C j'ai ça :
Vry: http://chat.codingame.com/pastebin/d9110b37-a27c-449b-86eb-8a48802c474c
Gorkill: Merci Vry, Fenrir ma aussi envoyé un code, qui est un peut plus complet.
Gorkill: Je garde les deux sous le coude ;)
BlaiseEbuth: Les écrase pas...
Mastard: heeeey back in the top 200, je suis content
Mastard: ah bah j'y suis pas resté longtemps xD
BlaiseEbuth: Ah. J'allais dire gg, mais non en fait... Bouh !
Gorkill: @BlaiseEbuth, ahah, ta raison, je vais les commits ahah ^^
vinzz: C'est à minuit la nouvelle ligue ?
Zorg1: demain à 18h je dirais
Mastard: nan demain dans l'aprem
vinzz: ok merci ! une idée sur le nombre de gens qui montent de ligue directement ?
BlaiseEbuth: Moi. Et ceux qui me paieront pour que je les emmène...
Vry: 1/3 ?
Vry: On prend les paris ?
Vry: Ou les 1001 premiers ?
joelthelion: 800 parait-il
Vry: Ou moins de toute façon après le boss pourrait s'effondrer ...
dwarfie: moi , du moment que je passe gold avec ce que j'ai codé , ca me va :D (optimiste hein ... pas comme BlaiseEbuth ;) )
BlaiseEbuth: Ouai moi je suis qu'un sale pessimiste.
dwarfie: et en plus t'aime pas musk
dwarfie: ;)
BlaiseEbuth: Tout les vices !
dwarfie: tout a fait ... ca se voit , c'est sur ton profil je te rappelle :D
[CG]SaiksyApo: Quel est le nom du board game du challenge ?
BlaiseEbuth: Le mec trop au courant... :3
dwarfie: century la route des epices il parait
[CG]SaiksyApo: Ty
VilBoub: oui
Magus: Zelda a link to the past
Magus: titre super mensonger d'ailleurs, parce que Zelda c'est pas du tout un lien vers le passé
VilBoub: Quelques petites différences avec "Century, la route des épices" mais la mécanique générale est celle-là
BlaiseEbuth: C'pas oot ?
Magus: si, c'est oot
Magus: je troll au second degré
BlaiseEbuth: C'trop compliqué
Magus: comme mon code :(
JBM: c'est juste une excuse pour pas dire qu'il s'est raté
JBM: te laisse pas impressionner
BaptisteLyet: Il y aura quoi de plus en ligue argent ?
Vry: Rien bagage
Vry: BaptisteLyet
Vry: :upside_down:
BlaiseEbuth: Plein de gens en moins
Littleyounes: x)
BaptisteLyet: xD ok ! dont moi surement
BlaiseEbuth: Moi aussi. J'aurais sans dout pas encore fini ma tambouille à ce moment là
dwarfie: bon ... je pete tout et reprend de zero ... pour mieux faire j'espere ...
BaptisteLyet: C'est une technique En vrai sur le github il y a des bonnes infos pour la structure des données
Robinsstudio: Mais qu'est-ce qui va déterminer qui passe en argent ?
BlaiseEbuth: Ceux qui battront le boss quand il sera là.
Vry: Le Boss une fois "actif" sera la limite à dépasser
Robinsstudio: Ah donc c'est toujours un boss à combattre, ok. Et concrètement il sera compliqué le boss ? Je veux dire il faut être plutôt dans le haut du classement pour le vaincre ?
BlaiseEbuth: Le boss est une ia joueur choisie par le staff
BlaiseEbuth: Et il choisisse à un "endroit" déterminé du classement
BlaiseEbuth: p'tin
BlaiseEbuth: ils choisisent
Robinsstudio: Mais habituelle ça écrème sévère ? C'est la première fois que je participe donc c'est pour ça que je demande.
Robinsstudio: habituellement*
BlaiseEbuth: En silver ça va encore
Vry: Je dirais à la louche 1/3 (pas immédiatement après l'arrivée du boss) mais un peu plus tard
BlaiseEbuth: en gros
Robinsstudio: Ok donc faut essayer d'être assez efficace malgré tout.
Robinsstudio: Et des règles seront rajoutées en argent ? Parce que si ça se complique et que des règles se rajoutent, ça va être chaud d'y passer du temps en semaine.
Vry: Non pas d'autres règles (normalement)
Boulet: bof l'efficacité c'est pour les faibles et les tortues. Pas vrai Automaton2000
Automaton2000: et tu fais la même
Vry: Y'a juste le niveau qui monte
Boulet: tiens je peux peut etre me fare Vry sur ce run :P
Boulet: mais bon encore 200 places
Boulet: 160 places
Boulet: pardon
Boulet: ça boum Vry sinon ?
BlaiseEbuth: Vry well
Boulet: :clap:
Boulet: mais quand meme tu sors
BlaiseEbuth: Nan. Fait froid
Boulet: le froid c'est dans la tete ! Le chaud c'est objectif
Boulet: lagguerait pas un peu le chat ?
BlaiseEbuth: J'aime pas avoir froid dans la tête.
leojean890: o/ Boulet
Boulet: \o leojean890
Boulet: trop haut pour moi toi
leojean890: como esta;)
BlaiseEbuth: fr
Boulet: bof boulot, boulot et .....
Boulet: boulot
leojean890: pk haut ?^^ je suis 203 c'est en chûte libre :o
Boulet: 640
Boulet: pas si mal en 3 submits mais bon
leojean890: ah oui t'as pas eu le temps d'avancer avec le taf même ce week-end ??
Boulet: c'est la fin du contest pour moi
Boulet: plus une seconde dans la semaine a priori
leojean890: ah t'as pas de tps du tout ?
leojean890: même le soir ?
leojean890: et le we pro
leojean890: je suis entrain de porter en go histoire d'avoir + de perfs...
Boulet: peut etre le we prochain mais bon vous serez tellement haut que je sens deja l'abscence totale de motif
Boulet: :D
leojean890: ah ^^'
Boulet: go et perf dans la meme phrase
Boulet: ah oui en meme temps python3 ...
leojean890: bah je viens du python donc :P
leojean890: je connais pas bien go
leojean890: mais c'est qd même bien (moins que c++ off course^^)
leojean890: trop la flemme pour c++ là^^
mrBen: go c'est pas pire pour les perf, c'est pas au niveau du C/C++, mais c'est juste derière
leojean890: il parait ouais
leojean890: et go vis à vis de java et c# ?
mrBen: t'es mieux que n'importe quel language interpreté, donc devant java et C# normalement
Boulet: bon je serais pas 1st en Ocaml ce coup-ci :cry:
leojean890: ah good
leojean890: bah j'ai fait 3 portages c++ sur cg mais je suis lent :s
Gorkill: Bon... Je comprend pas mon Seg fault ahah
leojean890: y'a pas grand monde en ocaml non ?
Boulet: en quoi Gorkill
Boulet: leojean890: 8
leojean890: ah qd même 8;)
Boulet: mais Gobi03 est bien trop haut pour moi
Boulet: prochain contest (peut etre)
leojean890: ouais, t'avais pas trop de temps au moment de pacman non plus
Boulet: Gorkill: quel langage ?
Gorkill: en C
leojean890: ooc ça allait par contre^^
Boulet: voila sauf que depuis j'ai rajouter des trucs bien preneurs de tete donc c'est mort
Boulet: Gorkill: pointeurs non alloué ou boucle infinie d'appels recusifs tu as le choix
Gorkill: Je vais trouver, je vais suivre mes malloc et free et je vais bien retrouver ou j'ai fait mon erreur :)
Gorkill: Le truc, c
leojean890: ah je vois, plus d etemps quoi..
mrBen: j'avais eu des acheivement legend parce que j'avais fini 2e en Rust une fois, mais bon on était que 3 c'était y a deux ans:sweat_smile:
leojean890: de temps
Gorkill: Le truc c'est que tombe aprés un certain nombre de tour...
Boulet: ou alors free trop tot d'un truc appeler par la suite
Boulet: Bon Vry est à l'abri sur ce coup
Gorkill: Oui, ou un malloc trop tard, c'est surement pas grand chose, j'avais un code qui tourné il y à peu, ça cible beaucoup ^^
BlaiseEbuth: double free or corruption :smiling_imp:
leojean890: le cut c'était à #300 pour silver et #200 pour gold pour pacman
leojean890: sachant que là ona à peu près autant de monde en contest (un peu plus mais pas trop)
fenrir: Gorkill: au cas où, si tu es sous linux, valgrind est très bien pour trouver les bugs d'accès mémoire en C/C++
Gorkill: Je suis sur ma PI4, donc effectivement, je vais me mettre Valgrind
BlaiseEbuth: PI4 choux ?
Gorkill: Raspberry Pi4
hcabel: #fenrir sauf si tu fait des choses graphique (opengl / opencl)
Mastard: ca me fait plaisir, Magus a aussi des timeout haha
Traquila: 170 places de perdu depuis hier :)
Mastard: ca va c'est pas excessif
leojean890: eh ouais le level augmente..
leojean890: j'suis en train de me faie ejecter du top 200 moi aussi
leojean890: 191 now
dwarfie: 100 places de perdu mais seulement 1 point ... dont c'est pas encore la cata
leojean890: 1 point ?
BlaiseEbuth: Ils savent que je vais arriver et fuient vers le haut. Mais leur chute n'en sera que plus brutale.
dwarfie: j'etais a 45.9 et la 44.7
Mastard: on a des points ? putain je suis nul lol
leojean890: ah oui
WhatTrickeryIsThis: ils savent
leojean890: pardon
Mastard: aaah oui dans le classement on a des points, ok sorry haha
leojean890: on est classés par score en effet
dwarfie: apres ... normal , je sers de punching ball depuis le deblocage ... comme d'hab ...
Mastard: oui oui, mais je connais pas le systeme, desolé :/
leojean890: pas de souci:p
leojean890: regarde l'algo trueskill
Mastard: 44.43, no idea si c'est bien ou pas lol
leojean890: qui nous classe
leojean890: ça dépend de ce que tu te fixes comme objectif:p
Mastard: d'etre le 1ere de ma boite, ce sera deja satisfaisant ^^
Traquila: ca sert à quoi les points ? désolé je débute .
dwarfie: leojean890 21H13 on est classés par score en effet
leojean890: te classer;P
VincentBab: https://www.codingame.com/replay/502573789 Frame 18: le viewer est buggué quand il ya un overflow de l'inventaire non ?
leojean890: en fct de tes vict et défaites
Mastard: merci pour le nom de l'algo trueskill par contre, je trouve ca tres interessant, merci leojean890
leojean890: you're welcome:)
dwarfie: +0.1 et .... 4 places de moins :D
leojean890: je suis certain que la bronze va rester un gros bordel même après open la silver:p
leojean890: et ce ad vitam dans le multi;)
0xCAFE: Je suis désolé ça a déjà du être dit mais vous savez à quelle heure le silver arrive demain et autour de quelle place le cut sera?
dwarfie: ....................................
leojean890: 18h, je pense #300
leojean890: si c'est comme pacman
dwarfie: 600 si c'est comme ooc
leojean890: ooc c'est l'open gold quia bugué
leojean890: pas l'open silver hehe
Yab94: ça veux dire quoi #cut à 300 ?
Here_s_Chopi: En BFS vous décendez à combien ?
leojean890: avec le rerun silver avant:p
dwarfie: justement ... y'a pas eu de bug et y'a eu promo en masse
leojean890: mais ils ont rerun la silver avec le boss du coup
DataWasTaken: Hello petite question java : j'ai des soucis de timeout notamment dû au in.next() le premier de chaque tour prend 90ms :/
0xCAFE: Ca marche, merci :)
dwarfie: je parle bien du passage de bronze a silver ...
788361: DataWasTaken: tu prends ton début de timer au mauvais endroit
leojean890: Yab94 ça veut dire que le boss est classé #300 en brnze
Bob: il faut le prendre après le premier input, pas avant
leojean890: bronze à silver ??
DataWasTaken: d'acc merci du tips :)
leojean890: c'était #200 po!r ooc
dwarfie: ben non
Bob: sinon tu inclus le temps du referee et de l'adversaire
leojean890: ils cut pas super haut genre 600 on était pas nombreux
Bob: bon après si tu timeoutes, c'est que tu as un souci ailleurs
leojean890: ils prennent un bot qui sépare 2 lvls de jeu
0xCAFE: C'est aussi bien si ils cut trop haut il y a des IA de niveau trop différent
0xCAFE: trop bas*
leojean890: bah en fait ils fixent le niveau d'une ligue
sykefu: ... j'ai preparé mon arbre mais j'ai pas géré d'avoir l'inventaire plein, retour au design o/
Mastard: vous prenez en compte les inventaires/spells de l'opposant ?
dwarfie: en fait ... en general , ca cut au score de 33-35 ...
Mastard: je vois pas trop comment m'en servir a bon escient
CopperFr: Est-ce que quelqu'un sait si ca sera quick silver ?
0xCAFE: Pas légale cette blague :)
Here_s_Chopi: Au buchet
leojean890: hehe
Mastard: a part essayer d'avoir la potion avant lui
Mastard: ah bah je viens de me repondre moi meme
Traquila: @Mastard Tu calcules le nombre de tour restant
dwarfie: oulah ... faut pas que ca cut a 35 points ... ca ferait plus de 1000 ....
leojean890: je simule pas l'ennemi moi
dwarfie: moi non plus
leojean890: nn faut pas en faire passer tant que ça:P
Mastard: ouais c'est ce que je me suis dit à l'instant. Si je vois qu'il a moins de tour pour la meme potion, autant en chercher une autre
Traquila: je parlais de la fin du jeu aussi
dwarfie: je regarde meme pas combien de potion il a fait :D
0xCAFE: Je pense tu as une vraie diff de niveau vers la 500ème place
leojean890: de toute façon ça va déborder après le cut
0xCAFE: ou 400 peut être
leojean890: donc des poussés + certains vont améliorer leur bot
Mastard: vers la 500eme ? bon dieu avec ma 230 ca me monte mon ego cette phrase lol
leojean890: Mastard prépare toi pour gold hehe
0xCAFE: Nan mais la on parle pour passer silver haha
leojean890: silver c pas censé ê trop dur
Paikan2068: JE suis pile 500 à l'heure actuelle
leojean890: et légende ça cut à #15
Paikan2068: De quel côté suis-je donc?
Paikan2068: les bons ou les mauvais ? :p
dwarfie: plus ceux qui vont relancer et passser parce que sous-classé (parce qu'ils servent de cible privilégiée pendant les spam submit ;) )
leojean890: ah et la dernière fois ils avaient augmenté artificiellement le score du boss
leojean890: pour que ç passe pas d'un coup mais à petit feu
leojean890: pour éviter que ça fasse bobo aux serveurs
**dwarfie se souvient d'un contest ou il etait 250eme pas promu ... il relance , passe et finit 50eme de la ligue d'au dessus :D
Mastard: si je peux finir gold comme pacman deja :)
leojean890: (avec trop de runs en même temps)
Mastard: j'ai jamais fait d'IA donc quand vous parlez de DFS, monte-carlo et tout ca je suis perdu haha. Deja j'ai appris BFS au printemps pour mon 1er challenge
leojean890: bah t'apprends ça sur CG
0xCAFE: Pacman j'avais cru passer légende, j'avais été 3ème de gold juste derrière. Et puis non haha :)
Mastard: ouais faudrait que j'y passe un peu plus de tmeps
0xCAFE: C'est vraiment la base les algos de graphe
0xCAFE: Et d'arbre
0xCAFE: Tu peux quasiment ramener tous les problèmes à quelques algos
Mastard: je connais que BFS et A*. Apres DFS et Monte carlo, min max tout ca je connais pas
Vry: Ça va Boulet ... dans l'arène c'est un BFS ultra mou du bulbe ...
Vry: Là, je prépare un MCTS qui balance du node à la pelle ... mais il faudrait que je sois sûr qui respecte bien les règles ... :p
Yab94: vous utilisez tous les algos mathémtiques avec représentation du jeu en graph ?
Boulet: ah tiens en fait tu n'étais pas a l'abri
Boulet: sorry
Boulet: Yab94: bon gros MCTS pour moi
polpoul: @yab94 non
Vry: Fait toi plaisr Boulet, je renie ce bot !
Boulet: enfin Random Tree Exploratation
Boulet: mais bon
fenrir: le MCTS c'est pour simuler l'adversaire ?
Vry: fenrir : au départ non
Vry: Sur mon MCTS je recalcule l'état du jeu à la volée lors du parcours de l'arbre
Boulet: non m'en tape à ce stade de l'adversaire parce 1- on est en bronze, 2- j'ai codé 3 heures en tout 3- c'est mon troisieme submit
Vry: Et il se trouve que c'est bien plus rapide que de tout garder en mémoire
dwarfie: tiens , t'en es a 1h30 de plus que moi :D
fenrir: ah pour le moment c'est plus 'juste' un graph/arbre ? avec just tes actions ?
Boulet: vouis sans doute plus rapide mais plus chiant à coder
Vry: Mais perso. sur mon MCTS je prends en compte l'adversaire (mal pour l'instant) mais vu que je ne sais pas faire un MCTS mono joueur je vais faire les deux
Vry: :upside_down:
Yab94: moi je fais pas tout ça juste une modélisation objet propre
Vry: Pour l'instant en 50ms j'arrive à jouer 500k coups
fenrir: le branching factor il me semble énorme non ?
Vry: Avec le BFS j'étais à 2k
Vry: Et pourtant le code de base et le structures sont les mêmes
Bob: je pense qu'il va bien falloir que je finisse par partir sur un truc de ce genre
Bob: j'ai absolument zéro intuition pour sortir des heuristiques magiques
Vry: Peut-être que sur mon BFS si j'avais appliqué le même principe : à savoir ne pas stocker l'état du jeu mais juste la rejouer à la volée ...
Vry: ... ça pourrait être pas mal
Orpheo: 500k coups :o en java je me prends des gc en perma, va falloir optimiser ça x) j'arrive pas à dépasser 3k
egaetan: Orpheo arrête d'allouer
Boulet: voila :D
Bob: et plus ça va et plus je me dis qu'en fait quand je joue au jeu en vrai, au final ce que je fais dans ma tête c'est un genre de BFS
Orpheo: haha en effet :D
Boulet: bon aller on a pas peur et on test
Bob: allouer, c'est le mal
Boulet: Orpheo: il était sérieux
Vry: et initialiser on en parle même pas !
Mazelcop: Bob, beamsearch je pense, on ignore intuitivement les chemins incohérents
Bob: oui
Orpheo: oui oui là je fais un nouvel objet à chaque état donc forcément je cherche les problèmes
Bob: le souci c'est de formaliser ce qui est incohérent :)
Mazelcop: c'est fort un humain en fait :)
egaetan: Bob dans ta tête tu fais des DFS
Boulet: ça dépend lequels ?
egaetan: pas des bfs
Bob: en effet
dwarfie: Mazelcop : je confirme , d'ailleurs number shifting , je l'ai fait a la main mdr
redCroc: Une erreur est survenue (#407) : "You reached the limit of plays for a period of time."
redCroc: quelqu'un sait quelle est la limite de tests ?
Orabig: 50ms / 1 s pour le premier tour
Orabig: rtfm
redCroc: non la limite du nombre de tests à réaliser
Bob: non mais on parle d'un nombre de runs là
Orabig: hoo. T'as bien du spammer :)
redCroc: je suis en train de tester mon prog en variant les params
Bob: c'est ça :)
Bob: spam spam spam spam spam
dwarfie: bien fait ... puni !!!
Orabig: On a trouvé celui qui écroule les serveurs ! :)
redCroc: j'ai du faire une centaine de runs :'(
Orabig: Je crois que t'es banni 6 heures la première fois
redCroc: sérieux ?
Orabig: nan :D
redCroc: ah non ça remarche ^^
Bob: te jette pas dessus trop vite hein
redCroc: bah je veux bien mais comment on peut tester autrement
Bob: parce que là tu es encore très borderline
Orabig: en local
sykefu: bon bah, je bats l'ia une fois sur deux en ligue bronze sur les tests dans l'ide
sykefu: je suis content xD
Bob: faut tester plus intelligemment
WhatTrickeryIsThis: c'est encore quelqu'un qui a push en scala?
R1FA: Dites, si on veut apprendre un sort, qu'on a pas assez pour payer la taxe mais que en apprenant ce sort on récupere des ingrédients qui compensent le prix, on peut l'apprendre ?
sykefu: et mon code c'est du spaggethi
[CG]SaiksyApo: Non
Bob: R1FA: non
Bob: tu payes d'abord
R1FA: dac merci !
Bob: chez l'épicier, pas d'argent pas d'épices
dwarfie: pas de credit
Bob: chez la belle Suzon, pas d'argent pas de cuisses
R1FA: ça aurait été bizarre en mm temps sinon mais je demande au cas ou ^^
redCroc: @Orabig mais en local tu peux pas faire des tests aléatoires
Bob: les codeurs de basse condition, c'est pas de ma juridiction
Camboui: hello, il y a un moyen d'afficher le temps pris son code ? Merci :)
Orabig: Si tu récupères le code du referee, et tu le fais tourner chez toi
Bob: Camboui : avec les fonctions de timing de ton langage
Camboui: ok je n'étais pas certain que ça marche, merci !
Bob: tu prends le temps juste après (*après*) le premier read, le temps juste avant l'output
Bob: et tu fais la différence
sykefu: Bon bah en python je peux bfs jusqu'a ~12-13 de profondeur sans timeout avec une 15aine de spells mais mon code est loin d'être opti je pense
Boulet: un bon gros signal de timer ça marche aussi
redCroc: @Orabig, il est où le code du referee ?
joelthelion: @sykefu 12-13, vraiment? 12-13 sorts?
Orabig: https://github.com/CodinGame/FallChallenge2020
sykefu: j'ai l'impression
joelthelion: je plafonne à 9 en rust
sykefu: sauf si j'ai super mal codé mon bfs et qu'il fait pas du tout ce que je crois
joelthelion: tu parcours tout l'arbre?
redCroc: @Orabig ah cool merci :)
sykefu: :>
Dimitrio: Je comprends pas pourquoi ma méthode de parse prend un temps tres variables entre chaque tour :/
sykefu: Ah non, c'est bon je timeout plus que ce que je pensais
sykefu: bon, j'y retourne !
Bob: Dimitrio: à quel moment tu prends ton timer de départ ?
[CG]SaiksyApo: Il faut mesurer le temps après avoir lu la 1er input
sykefu: en vrai je testais dans l'ide et j'avais 0 timeout mais dans l'arene j'en ai plein :<
redCroc: go docker pour faire tourner ça en local
[CG]SaiksyApo: aka actionCount
Bob: alors c'est trop tôt
Bob: cf [CG]SaiksyApo, il faut le prendre après le premier read
Bob: sinon tu mesures autre chose que ton propre temps et c'est pour ça que tu as des chiffres bizarres
Dimitrio: okay je regarde, merci
Boulet: leojean890: plante toi , j'arrive
Traquila: Vous utilisez le score dans votre algo ?
Boulet: planques pas plante
sykefu: @jeolthelion suite a verification, je cap a une depth de ~8 en python
egaetan: Allez push
sykefu: avec 14-15 spells
[CG]SaiksyApo: Nope
Julius2k17: @traquila, oui je détecte le chgmt de score pour incrémenter le nb de potions faites
joelthelion: @sykefu c'est déjà pas mal, j'en apprends beaucoup moins que ça
joelthelion: tu prunes bcp l'arbre?
sykefu: apres je rest pas dans la recherche ^^'
Boulet: Bon Strilgart c'est fait, suivant leojean890
sykefu: ce qui le rend moins efficace
joelthelion: ah....
sykefu: mais c'est un premier jet
sykefu: maintenant je passe a l'amélio :D
joelthelion: effectivement le rest complique les choses
Traquila: sans le REST dans l'arbre je ne vois pas comment c'est possible
completementgaga: pardon, juste pour savoir, dans la lgue bois 1, c'est toujours les mêmes sorts ? Ou ça dépend des parties ?
egaetan: toujours les memes
didyme: toujours les mêmes je crois
egaetan: et tu les retrouveras de base en bronze aussi
completementgaga: c'est fou que ce soit pas écrit dans la règle
completementgaga: merci pour l'info
Traquila: J'ai fait mon algo en croyant que les sorts de base allaient changer aussi ...
didyme: me semble que c'est écrit
completementgaga: ça fait une sacré différence de boulot
Bob: bah en même temps en bois normalement t'as pas spécialement besoin de détails super fins pour traverser le plafond
Bob: t'y vas bourrin et ça passe
completementgaga: je sais pas, je débarque
leojean890: Boulet quoi, me dépasser ??:P:P
Bob: bah du coup je te le dis :)
completementgaga: ok
completementgaga: merci
Bob: bois, c'est vraiment juste pour la prise en main des règles de base
Bob: tu vas au plus bestial
Boulet: leojean890 : nan c'est bon Manwe m'a tué
Bob: dans 99 % des cas c'est amplement suffisant
completementgaga: du coup dans les ligues supérieures, y a vraiment la pression sur les temps decalcul?
Bob: en bronze tu as les règles complètes et là tu peux commencer à neuronifier si tu veux
leojean890: Boulet je suis en chûte libre là j'ai fait -100 places en 2H :o
Bob: ça dépend complètement de comment tu t'y prends
leojean890: 130 => 230
leojean890: chaudchaud
xurei: leojean git etst ton ami
leojean890: pk git;)
joelthelion: @leojean890 je crois que le niveau monte vite
Bob: si tu fais de la simulation, par essence tu dois gratter de la perf
xurei: un submit = un commit
joelthelion: d'ailleurs je te salue aussi en passant :-D
Bob: sinon, tu t'en fous
xurei: comme ca si ta strat est pourrie tu peux revert
SypayV: s u b m i t
xurei: ca m'a sauvé 1000x
Bob: PUSH IT
leojean890: helllo joelthelion
xurei: ouuuuh je viens de passer sous les 100 !
completementgaga: mais du coup on peut faire quand même en python ou ça va être trop lent?
SypayV: après 4 jours de galères et de "je vais abandonner" ... pfiou ...
leojean890: ouais le level monte vite
Bob: ben ça dépend :)
leojean890: et en effet je suis entrain de bosser la perf^^
Bob: a priori python est pas le plus performant pour faire de la simu mais il y en a qui s'en sortent
Mazelcop: completementgaga, il y a un mec en python qui est #18 actuellement
completementgaga: mais les classements dont vous parlez, c'est un classement différent par ligue, non?
Bob: oui
completementgaga: ok
completementgaga: merci mazelcop pour l'info
Bob: mais bon pour le coup ça dépend aussi beaucoup de ton niveau de maîtrise de python
leojean890: le python c'est pas perf mais certains arrivent à monter quand même comme dit Mazelcop
leojean890: si tu trouves de super heuristiques ça gag,e
leojean890: gagne
joelthelion: ou alors du numpy bien dégueu
completementgaga: ah oui, vaut mieux avoir une bonne stratégie que tester absolument tous les cas
joelthelion: perso j'ai abandonné python pour CG
Gh0stm4chine: est-ce que vous pensez que ça se tente de refaire ma simu en c++ :thinking:
VincentBab: top#1 en C# :O
joelthelion: trop pénible de se trouver face à un mur en gold quand c'est trop tard pour réécrire
completementgaga: certes
leojean890: ouais python c dur
leojean890: j'ai fait ooc et pacman en python
Palmipedus: pffff, j'ai des colision au niveau de mes hash... c'est null pour supprimer les duplicates
sykefu: on a une idée de quel rang il faudrait atteindre plus ou moins pour pouvoir battre le bot en bronze ?
completementgaga: le hash, moi j'aime bien
Palmipedus: http://chat.codingame.com/pastebin/64b3003f-572a-48ae-bcc1-16846e13e06e
Vry: sykefu : le premier tiers au minimum
leojean890: ouais si tu maitrises numpy ça peut le faire niveau perfs
Palmipedus: une idee ?
leojean890: même pandas :P:P
Bob: j'allais dire comme Vry
leojean890: sykefu je dirais #300 ou #400
Bob: là il y a tellement de monde, c'est difficile de faire une prédiction
sykefu: oof
leojean890: mais j'en sais rien
Vry: C'est la ligue Bronze ...
Bob: d'habitude bronze -> silver c'est autour de 40/50 %
leojean890: pacman et ooc c'était 300
sykefu: pour l'instant avec mon premier jet je suis 819/3280 mais a 36% des combats
Vry: En Argent ça va être pus dur
completementgaga: bon, je retourne dans ma ligue de noob
Bob: mais là on est quand même vachement nombreux
completementgaga: bonne soirée
Vry: @+
Bob: donc premier tiers semble plus raisonnable, même comme ça ça va déjà faire une très grosse ligue silver
leojean890: pacman on était aussi 2800^^
Vry: Bon per MCTS Ok : parfois 700k move :heart_eyes:
leojean890: et je crois vraiment qu'ils ont cut 300
Vry: Demain je teste que ça fait pas que du vent ...
leojean890: (ah mais attends, pour pacman ilsont monté artificiellement le ELO)
sykefu: Pour l'instant ma solution climb lentement, j'espere que je pourrais tenter l'argent et que je suis pas trop mauvais pour ça :D
leojean890: du boss
joelthelion: @sykefu tu as encore des timeouts?
sykefu: c'est bon pour les timeouts
leojean890: donc c'était p'tet plus que 300 le vrai niveau du boss
sykefu: pour l'instant j'oscille entre rang 730-760
Paikan2068: Ce matin, j'ai lu sur le forum un 800 qui venait de je ne sais plus qui, mais de CG je crois
joelthelion: c'est vraiment le truc à régler en priorité, ça fait super mal un timeout contre le 2000è
Paikan2068: Pour le passage en argent
Paikan2068: ça ferait le premier quart
leojean890: l'équipe de CG dévoile jamais ça en avance
leojean890: surtout ils partent du principe qu'il reste 1 semaine pour améliorer et passer argent
Paikan2068: Oui, c'est vrai aussi
WhatTrickeryIsThis: c'est jamais préparé à l'avance de toute façon :D
leojean890: t'as vu une info sur ça dite par qui?
WhatTrickeryIsThis: c'est plustôt en retard qui met le Boss
sykefu: \o/ 689e
sykefu: je suis content
sykefu: c'est pas les meme tops que vous mais c'est mon premier challenge aussi
Julius2k17: bravo
WhatTrickeryIsThis: je dois mettre les learns dans les simus ?
sykefu: Du coup mes terminales étaient curieux sur des utilisations d'arbres en informatique ça me fera un exemple sympa en dehors des réponses plus habituelles :D
WhatTrickeryIsThis: j'ai aucune idée d'evale dessus en plus..
BlaiseEbuth: Mets des bananes.
Mazelcop: pour l'instant en faisant learn du spell gratuit sur les premiers tours on finit dans le top 10
leojean890: pourtant je fais ça pendant 7 tours et je suis 222^^
Mazelcop: faut de la simu qui dépote après
leojean890: ouais la mienne dépote pas :P
leojean890: mais c'est en cours d'amélio là;)
joelthelion: @Mazelcop tu dirais que la profondeur compte beaucoup?
sykefu: \o/ le climb continu je suis quasi top 500
Mazelcop: je dirais que oui mais franchement j'en sais rien
leojean890: Mazelcop t'es tjr en beam search sans prise en compte de l'adv ?
Mazelcop: je beam search l'adversaire à côté, au moins pour connaitre ses prochains coups et quand il peut faire ses 6 potions
leojean890: ah ok nice, tu améliores bien ^^
Mazelcop: là je regarde s'il y a moyen de contrer ses potions mais j'ai pas l'impression
yamo: En JVM, je garde les états visités dans un Set<Int> et du coup, je box en permanence. Vraiment relou la JVM pour çà ! Une solution ?
Orabig: "je box" ?
didyme: type intégral englobé dans un type objet
dolmen1234: un tableau d'int ?
BlaiseEbuth: un int
leojean890: Mazelcop ah ouais comme dans C4L bloquer l'autre ?
leojean890: ça semble plus chaud à faire ici
dolmen1234: Tu peux mettre tes List/set/Map à peu près à la poubelle si tu veux des perfs
Vry: Sinon y'a un lancement ce soir ... https://youtu.be/bnChQbxLkkI
yamo: oui. un simple set.contains alloue un objet.
leojean890: perfs => bitset
Vry: Mais je ne sais pas à quelle heure ...
BlaiseEbuth: Ah ça y est on dégage musk ?
Mazelcop: je me suis arrêté en silver (je crois) sur C4L, je connais pas trop. là c'est tellement facile de changer de potion que ça a l'air de servir à rien en effet
Vry: Nan il a pas le droit d'être présent je crois, il a le covid ?
leojean890: pareil C4L j'ai aps tryhard
Zorg1: 00:27 UTC qu'ils disent
leojean890: mais je sais que ça bloque de ouf les ingrédients dont t'as besoin
Vry: Et dans le 94 c'est quoi ?
Zorg1: ah le fuseau horaire du 94 ^^
Gh0stm4chine: tellement chelou quand je modifie mon code mais du coup mon adversaire timeout
Vry: 1h23 ...
yamo: @leojean890 pas top le bitset qd c'est sparse et que les entiers peuvent être grands …
Zorg1: oui 1h23 heure d'hiver c'est UTC+1
Vry: Observer des astronautes dans un convoi de Tesla ...
Zorg1: je vois ça
Zorg1: c'est vraiment du spectacle
BlaiseEbuth: Oui mais ça sauve la planète donc ça va
dwarfie: c'est pas vrai ... je l'ai vu hier a la TV ... il a pas ete capable d'envoyer cartman sur mars ;)
Zorg1: BlaiseEbuth : le but c'est pas justement d'abandonner la terre pour s'installer sur Mars, tant pis pour ce qui reste derrière ?
Zorg1: ou j'ai pas tout compris le Grand Oeuvre de Musk
BlaiseEbuth: Nan mais tu sais pas que les tesla et les pailles en cartons vont nous sauver ? Sale pessimiste !
didyme: la planete c'est important quand meme
Bob: fouchtre, je suis monté dans le top 500
Bob: voilà qui était inespéré
SypayV: Automaton2000 ... pourquoi codingame n'est pas sponsorisé par les fabricants d'aspirine ?
Automaton2000: si on a plus de potentiel
egaetan: tu crois que c'est une erreur Bob ? fait une réclamation !
Bob: oh ça serait pas la première fois que j'arriverais trop haut avec un gros coup de bol sur les matches
BlaiseEbuth: Musk il faut vite qu'il termine sa fusée et qu'il nous fasse un Challenger.
YannT: impl"menter les sorts répétables ça fait une grosse différence :)
sykefu: Bon bah j'ai fini mes matchs, je suis 477eme actuellement \o/
Bob: gg
Mazelcop: gj
Zorg1: ah tiens on vois les astronautes et des ninjas numérotés ^^
egaetan: ?
sykefu: bon bah sur ce j'y vais et j'espere pouvoir faire du silver avec mon score actuel
Here_s_Chopi: Il y à des plugin ide qui aide à l'optimisation du code ?
Zorg1: egaetan : c'est le thread "lancement spaceX" ;-)
dwarfie: thread.detach()
Zorg1: faut pas être pressé lors des pushs ...
b0n5a1: o/
b0n5a1: en effet
Vry: En effet, j'ai remarqué les ninjas ...
Vry: Je prends note YannT :)
Vry: Par contre ça fait déborder ma structure node de 8 octets ...
BlaiseEbuth: stoi l'octet
VirtualAtom: t'as combien d'octets dans ton nœud Vry ?
dwarfie: PEGI18
dwarfie: :D
BlaiseEbuth: La taxe est individuelle ?
Vry: 28 maintenant
yamo: Merci leojean
val seen = new java.util.BitSet(1024 * 11 * 11 * 11 * 10). ça prend qq Mo. du coup, j'en fait qu'un par partie :)
Vry: Au final ça déborde que de 4
R1FA: c'est fou le nombre de places qu'on peut gagner en ajoutant le LEARN
R1FA: #2000 -> #200
YannT: j'ai trop optimisé le bitboard maintenant je traite tellements de noeuds par tour que le gc me fait timeout -_-
Vry: GG YannT
YannT: va falloir preallouer des nodes, mais flemme un peu
Ylec: l'ia defaut du bronze est à quel rang ?
VirtualAtom: j'avais réduit la taille à 28 mais c'était plus lent que 32, donc j'ai laissé 32 sans me poser de question
BlaiseEbuth: La taxe est individuelle ?
Vry: En fait, je pensais qu'il allait faire 32 (4x8) mais au final il a décider de faire 28 (en mode O3). J'utilise 25
VirtualAtom: et t'as 3 de padding, ok
BlaiseEbuth: Le prochain qui parle sans me répondre, je le kick.
VirtualAtom: bah je ne sais pas ce que tu demandes, donc plutôt que de répondre à côté... ^^
Traquila: la taxe fait partie du grimoire donc commune au deux
BlaiseEbuth: Si je paye la taxe pour apprendre le sort 3, l'autyre joueur peut l'apprendre gratos ?
Traquila: si tu apprend un sort il disparait
VirtualAtom: si tous les deux vous voulez le trois, vous payer tous les deux la taxe
VincentBab: et si l'autre apprend le sort en meme temps que toi il doit payer aussi
Zorg1: et l'autre doit aussi payer la taxe
BlaiseEbuth: That's the point I missed. Merci ! :)
VirtualAtom: (comme quoi avec des menaces, on obtient ce qu'on veut :-})
BlaiseEbuth: Exactement. C'est triste
sykefu: Par contre si j'ai bien compris, le tour d'apres il peut prendre gratuit un sort en position 1,2 ou 3 si t'a acheté le 3eme le tour d'avant
sykefu: c'est bien ça ?
Traquila: il paye puis récupère la taxe
VincentBab: rien n'est jamais gratuit a part le 1er sort
Zorg1: et tu dois avoir de quoi payer
Zorg1: même si tu récupères ta mise
sykefu: oki, j'était parti du principe que je payait a chaque fois dans mon bot donc j'était pas loin d'avoir bien compris xD
BlaiseEbuth: Ah mais ouai du coup ? Si je payes le sort 3. Au tour d'après si je veux le 2 ?
0xCAFE: Est-ce que c'est garanti que les 4 sorts de base (78..81) soient toujours les même jusq'uà la fin du chall ?
0xCAFE: ok!
daleks: #jecodeendur
BlaiseEbuth: La vraie question c'est les mises restent entre les tours ?
Vry: BlaiseEbuth : tu paies d'abord puis tu récupères ce qu'il y a sur le 2
Vry: Oui BlaiseEbuth
BlaiseEbuth: Ah. Chiottes, j'ai pas prévu assez de place pour ça... Merci Vry
0xCAFE: C'est pour le cas ou j'ai vraiment envie d'un sort mais que j'ai pas assez de taxe, le fait que le sort 78 soit toujour dispo garantit que je pourrai toujours le prendre (hors inventaire plein)
Zorg1: mais t'es pas obligé d'avoir de la place pour prendre ce qui est sur le sort
Vry: Si au premier tour les 2 prennent le 3 chacun paie 1 sur les deux premiers
BlaiseEbuth: Je parlais de la place dans mon bitset ^^
Vry: Su au deuxième tour tu prends le 2, tu paies sur le 1er et tu recuèpere 2 sur le 2
Zorg1: ah
Vry: Au 3eme tour il y a trois sur le 1
egaetan: oui il peut y avoir 82 pièces bleues max sur la dernière ligne du grimoire
Traquila: un truc de fou j'ai gagné 30ms, j'ai plus de coups testés et du coup je perds plus de parties :)
VilBoub: en fait c'est pas tout à fait comme dans l'énoncé...
BlaiseEbuth: Ouai juste l'énoncé c'est hard...
VilBoub: "Pour gagner le droit d'apprendre les sorts plus loin dans la liste, elles doivent déposer une taxe de "lecture-d'avance" en plaçant un ingrédient de type 0 sur chaque sort qui précède le sort désiré dans la liste"
VilBoub: alors que la taxe est placé sur l'emplacement des ingrédients...
Traquila: Ca ressemble à une règle dans smallworld
pb4: YannT bitboard ??
Vry: Expliqué en 5 minutes : https://www.youtube.com/watch?v=l6tfHsIjzZk
VilBoub: du coup, si ton adversaire apprend un sort moins cher que toi, la taxe va se retrouver sur le sort qui est derrière !
Vry: Après il faut juste partir du principe qu'on joue en même temps
BlaiseEbuth: 82 ? C'est la valeur chiante
YannT: pb4: j'ai tout rangé dans un intarray ouais
BlaiseEbuth: Beh non, j'suis con...
mawguai: Hello belette !
YannT: (c'est pas encore opti à fond, j'ai encore un int par spell, je pense que je peux tout condensé en 2/3 ints)
pb4: Et ça t'apporte quoi ?
pb4: Gain en mémoire uniquement ?
YannT: en copie surtout
pb4: Ou gain en vitesse pour traiter une opération ?
YannT: copie de int array = natif en JVM
YannT: c'est plus rapidement que de new un objet
YannT: rapide*
YannT: (je sais plus taper)
YannT: et oui en opération aussi, par exemple calculer les ingredients c'est une addition
pb4: Comment ça marche pour les int négatifs ??
YannT: bien étrangement!
Traquila: C'est un problème si on soumet un code alors que le précédent n'a pas terminé ses 100 parties ?
pb4: Si je devais le faire je devrais sortir les instructions SIMD ça me paraît overkill
pb4: Traquila : non
YannT: je sais pas pourquoi, je me suis posé la même question, mais additioner 2 ints, donc un construit avec des ingrédients positifs et negatifs (pour les sorts), eh ben ça donne le bon resultat
Palmipedus: hum j'ai une potion qui est prete mais n'est acceptee par le jeu....
xurei: mon optimisation du BFS a payé. Je peux faire des heurisiques de malade pour le grimoire du coup
Palmipedus: https://www.codingame.com/replay/502683925
Palmipedus: Frame 24
Palmipedus: une idee?
Palmipedus: c'est un bug?
VincentBab: pb4: tu en est déjà à optimiser avec des instruction SIMD ? xD
YannT: http://chat.codingame.com/pastebin/9aac9bde-38fd-4519-abfe-20d9e236dec4
pb4: Ah non surtout pas VincentBab :D
YannT: pb4: snippet ci-dessus
pb4: Merci
Bob: Palmipedus: quelle potion ?
BlaiseEbuth: La même
BlaiseEbuth: Tu fais pas de potion
Palmipedus: Id 60
Bob: ah la 5 orange ?
Palmipedus: oui
Bob: ben tu fais REST à cette frame-là
Palmipedus: et alors?
BlaiseEbuth: Bah ouai tu brew
BlaiseEbuth: pas
Palmipedus: ?
Bob: ah non tu fais cast 80
Bob: tu fais pas de brew
Bob: c'est pas le jeu qui n'en veut pas c'est toi qui ne la fais pas
Palmipedus: .... ha oui j'ai retirer le code pour faire brew...
BlaiseEbuth: Palmipedus il essaye de nous inventer les potions qui se préparent toutes seules ^^
YannT: pb4: genre toIngredients(2, 2, 2, 2) + toIngredients(-2, 2, 0, 0) donne le bon resultat, et .valid() sur l'int resultant marche aussi
Bob: nice
Bob: gg
YannT: je sais pas pourquoi par contre :D
Vry: C'est AiDefault qui la prend du coup
Palmipedus: c'est le passage heuristic -> BFS ca fait des bug
Palmipedus: et la c'est un gros
Bob: bien gras
Bob: velu
nicolasD: Du coup un BFS c'est pas bien ? T_T
Mastard: j'ai joué contre quelqu'un qui arrive a mettre des emojis dans ses messages... comment il fait ??
BlaiseEbuth: unicode
alze: ben ça marche en copiant-collant les smileys dans son code... 😊
alze: http://chat.codingame.com/pastebin/9ba3fc9c-532f-4287-af40-0bf22da047e0
Mastard: haha interessant
alze: en fait on dit "100 tours", mais ça s'arrête au bout de 50 ?
Mastard: si quelqu'un a fait 6 potions oui
Mastard: si t'es en bronze en tout cas
alze: je suis bronze
Zanbez: gg
Mastard: alors dès qu'un des joueur a fait 6 potions, c'est fini
alze: et j'avais l'impression qu'au bout de 50 tours, personne n'a fait ses 6 potions
alze: et que ça s'arrête et qu'on a le bonus d'objets
alze: ce qui fait gagner mon adversaire
DataWasTaken: quelqu'un a déjà eu "ce beug" en java : votre code n'a pas lu toutes les données disponibles ça se produit à chaque fois que je veux afficher quelque chose sur la sortie d'erreur...
Gh0stm4chine: DataWasTaken tout le temps :D
Zanbez: T'as fait un timeout
BlaiseEbuth: Soit tu ne lis effectivement pas tout ou tu print avant d'avoir tout lu, soit c'est un timeout
alze: mais pourquoi, pourquoi, vous n'utilie pas un vrai langage ?
b0n5a1: tous les langages...t'ajoute un cerr ça merde tu l'enlève c'est bon (en étant large dans les clous timing)
BlaiseEbuth: Y'a pas d'erreur si personne peut la voir j'vous dit
DataWasTaken: Du coup pas vraiment d'astuce pour debugger ? Effectivement à chaque cerr c'est timeout..
Bob: mois chuis d'accord avec BlaiseEbuth
Bob: un bug que les utilisateurs ne rencontrent pas n'en est pas un
Bob: na
BlaiseEbuth: farpaitement
Bob: ou en tout cas ne mérite pas qu'on lui accorde de l'attention
BigUP: tin ca me saoul mon IA croit qu'elle peut enchainer la meme action plusieurs fois ! et je n'arrive pas a trouver ce qui cloche dans le code
VilBoub: e pense que c'est toi la cloche ! ^^
Traquila: la mienne crois qu'elle peut gagner en achetant tout le grimoire: p
Unaxee: j'ai un petit probleme d'optimisation en python pour le puzzke MIMEtype
BigUP: possible, quand je regarde mon code, j'ai tout bien blindé, mais visiblement, il y a un gros loupé
Unaxee: et je vois vraiment pas ce que je pourrais optimiser de plus$
Nerium: BFS est mieux que DFS pour le challenge ou ça se vaut ? ou l'inverse ? J'ai fait un DFS en python3 et niveau opti c'est pas ouf
BigUP: Unaxee, il n'y a pas de probleme sur MIMType ;)
BigUP: Unaxee, balance ton code ici
R4N4R4M4: Dernier push pour ce soir
Unaxee: http://chat.codingame.com/pastebin/f3ae89a6-713b-4631-8065-33380acc9135
R4N4R4M4: J'ai debuggé mon BFS
egaetan: bravo R4N4R4M4 !
BlueGhost31: Nerium comme on cherche le plus court un BFS est plus conseillé
BigUP: Et pourquoi tu aurais besoin d'optimiser ?
BlaiseEbuth: Unaxee utilises un dictionnaire
BlaiseEbuth: ça passera pas sinon
Bob: pousser une idée presque pas con juste avant d'aller au lit : check
Unaxee: Parce qu'on me mets ça
Nerium: D'accord BlueGhost je vais tenter l'aventure ahaha
Unaxee: Échec Le délai d'exécution du processus a été dépassé. Cela peut signifier que votre solution n'est pas suffisamment optimisée pour traiter certains cas.
Unaxee: BlaiseEbuth c'est à dire un dictionaire ? je débutes en prog je connais pas enormement de choses
BlueGhost31: Nerium 100% des gagnants ont tentés leur chance ;)
Bob: Unaxee : Google python dict
Nerium: J'espère faire partie des quelques pourcents qui ont tenté leur chance et fini gagnants :p
BlaiseEbuth: Je fais pas de python, mais si tu cherches "python dictionnaire" tu vas trouver.
eklore: bon j'ai suivi vos conseils ....
Gh0stm4chine: dict = {}
eklore: pardon, bonsoir ^^
Bob: Unaxee: c'est un sorte de tableau que tu peux indexer avec n'importe quoi, pas seulement des entiers
Bob: le but du jeu c'est d'établir une correspondance extension -> type de fichier
eklore: j'ai tout réécrit en c# et je simule aussi bien qu'une professionnelle du sexe ...
Bob: pour retrouver les types directement et ne pas avoir à refaire le parcours de la liste à chaque fois
Julius2k17: mdr eklore
eklore: résultat des courses : 22 secondes pour trouver le meilleur moyen de faire une potion ...
eklore: Sur mon dell à 3000 boules...
eklore: Je vais pleurer
Bob: gg
b0n5a1: le problème c'est pas le dell ^^
Traquila: tu as combien de nodes ?
eklore: (désolé de vous avoir couper, mais il fallait que je vous le dise)
Bob: grosse simu
BlaiseEbuth: Bon. J'ai fait "static const foo = 384;" et je me suis énervé parce que ça marchait pas. Puis j'ai mis un type quand même... Comme ça "static const foo int = 384;"... Conclusion : J'vais aller me coucher.
eklore: coupé
Nerium: Mdrrrrr 22 secondes c'est tragique
egaetan: eklore, le problème c'est pas le dell, c'est pas le c#
eklore: J'ai essayer de parler de mes malheurs à ma femme, mais elle a commencer à dire que j'avais jamais tenu aussi longtemps, alors je suis venu chialer sur le canal ^^
eklore: Je sais bien que le problème est entre la chaise et le clavier....
Bob: lol
egaetan: eklore, tu as un set des alreadyVisited ?
BigUP: ok, je crois que j'ai compris la connerie dans ma simu qui fait que mon IA se met plusieurs fois le meme cast dans sa liste
eklore: gni?
egaetan: eklore tu explores plusieurs les mêmes combinaisons ?
eklore: egaetan, pas compris
eklore: ah non, j'ai pas encore mis de cache... Ca me rapelle l'exo ou il fallait décoder du morse
egaetan: quand A+B == B+A ... tu fais les deux chemins ?
eklore: attends, j'ai un truc de gros nul... Je prends toutes les possibilités interessantes, je les applique et je recommence
egaetan: oui et si tu prends A super bien et B super bien le tour d'apres
egaetan: tu verifies que tu n'aurais pas aussi fait B super bien puis A super bien ?
eklore: je vérifie que dalle, je débute en simulation, en récursion, en programmation ^^
Julius2k17: ca vous est arrivé de perdre un spell ?
Julius2k17: g le 83 qui a disparu de ma liste
Bob: perdre, non
Julius2k17: ya une limite ?
BlaiseEbuth: Non. On est des gens organisés
Ekaon: Bonne question ! Je croyais qu'il étaient à consomation unique ?
Bob: Julius2k17: c'est pas juste parce que tu l'as utilisé ?
eklore: merci agaetan
Bob: et du coup il est caché du viewer tant que t'as pas fait REST (ça peut se désactiver dans les options du viewer d'ailleurs)
egaetan: Julius2k17 le viewer peut les cacher qaundils ne sont pas castables
BigUP: Unaxee, en fait tu as probablement un cas non géré :) le cas UNKOWN en fait tu n'y passe pas forcément pour tous les cas je pense
Julius2k17: ah c ca ok merci
Julius2k17: je retourne à la mine
Bob: dans le doute, affiche tes inputs
Ekaon: Mais les sorts qu'on a learn, ils se retorent eux aussi ?
BE_Walker: Raah je pensais enfin passer le mur du rang 400, et finalement j'arrive à peine au dessus.. Je commence à tomber à court d'idée pour améliorer mon algorithme >.<
Bob: c'est la seule et unique source de vérité
eklore: mais j'ai l'impression que faire un sort A puis un sort B, spa pareil ...
Bob: Ekaon: oui, tout fonctionne pareille
Bob: pareil*
Bob: tu apprends un sort, il est utilisable au tour suivant
egaetan: eklore ce sont des additions
BigUP: Unaxee, enfin j'ai un petit doute, mais je gère le cas ou le "." n'est pas présent. Dans ton cas, je ne sais pas comment ca se passe
egaetan: c'est commutatif les additions
Bob: quand tu l'as utilisé il n'est plus castable jusqu'au prochain REST
BE_Walker: Vous pensez que ça peut vraiment faire la diff' de gérer les sorts répétables ?
eklore: BE_Walker, si on te parle de simulation, "cours vite" (j'ai Silmaris dans les oreilles)
Julius2k17: oui je sais, g mis un nouvel algo et il manque un morceau ..
Mastard: Oui, ca peut vite faire une difference
Bob: BE_Walker: sans doute oui
Ekaon: Es-ce que l'un de vous se sert de dikstra à tout hasard ?
Mastard: meme si ce n'ets utilisé que 2 ou 3 fois par game
BE_Walker: Erf, ok merci ^^
Bob: parce que ça peut te faire gagner quelques tours
Mastard: ca peut faire la difference
Mastard: c'est justement ce que je suis en train d'analyser
Mastard: et certains sorts repetables sont limite cheaté
BE_Walker: Ouais j'ai remarqué que je perdais pas mal de match de vraiment peu, peut-être que ces précieux tours gagnés me permettraient de renverser la tendance
xurei: Ekaon moi oui
eklore: mmmmm eagatan, je crois que mes neurones sous développés entrevoient une vérité dans tes propos
Ekaon: xurei pour trouver le path vers la meilleure combie de spell pour une recette donnée ?
BlaiseEbuth: eklore : la troisième c'est la bonne
Bob: question con : quand on est parti pour caster un sort qui fait apparaître du bleu et qu'il y a des sorts apprenables avec du bleu en bonus, on est d'accord qu'on a toujours intérêt à plutôt faire l'apprentissage ?
eklore: bon ca fait 4 heures que je suis dessus, je vais laisser mon cerveau faire le taf tout seul cette nuit
xurei: Bob oui, s'il y en a autant
xurei: j'ai une if pour ca
eklore: BlaiseEbuth : merci !
egaetan: Bob je ne sais pas
Bob: intuitivement je pense que oui mais les intuitions...
xurei: Bob et si ton BFS tient la charge avec plus de sorts
Bob: mon quoi ? :D
xurei: ton algo de recherche
BlaiseEbuth: Je parlais d'écire le pseudo d'egaetan correctement pas de ton code btw eklore ^^
Bob: mon quoi ? :D :D
Ekaon: En utilisant dijkstra on peut écrémer les sorts inutiles pour atteindre une recette et avoir un bfs plus efficace non ?
**egaetan applaudit BlaiseEbuth
eklore: et moi qui croyait à un peu de solidarité BlaiseEbuth
eklore: désolé d'avoir écorché ton pseudo egaetan
eklore: je fais plus que du copié/collé
BlaiseEbuth: C'en était, mais avec egaetan ^^
eklore: ^^
eklore: bonne soirée à tous.
BlaiseEbuth: Tu as un autocomplet avec tab
eklore: ouaaaaah
eklore: c'est trop de bonheur, je vais aller irradier sous la couette
BlaiseEbuth: pas d'excuse
eklore: :)
BlaiseEbuth: Bref. J'vais aller m'pieuter aussi. Bonne nuit les choupis
Gh0stm4chine: bonne nuit à vs 2
Bob: xurei: je réponds en 1 ms, ça devrait te donner une idée de la complexité de mon algo de recherche :D
Bob: donc bon pour moi un sort de plus ou de moins ouais, pas de grosse différence
Bob: effectivement j'aurais un vrai algo, la réponse serait moins nette
daleks: comment sait-on combien de fois un sort "repeatable" peut être répété ?
egaetan: daleks selon ton inventaire
b0n5a1: y'a pas de limite
Vry: 10x ?
b0n5a1: à part celle de ton inventaire
Vry: :D
daleks: ok thx
Bob: mais bon même comme ça, le sort supplémentaire peut potentiellement m'amener à faire un truc contre-productif à un moment (vu le niveau de mon code)
Razielwar: salut, en c++ comment vous récupérer le temps? équivalent à System.nanoTime() en java
Bob: std::chrono
Bob: high_resolution_clock
Traquila: std::chrono::high_resolution_clock::now()
Razielwar: super merci
Razielwar: ça donne des nano?
Bob: à vérifier
BlueGhost31: Salut Razielwar, tu fais des infidélités au Java ?
Bob: perso j'utilise jamais au-dessous de milli
Razielwar: salut BlueGhost31 :p oui le GC me sort par les ... et vu qu'il va falloir faire de la grosse IA je me tourne enfin vers C++, enfin j'essaye...
Razielwar: je traduis mon code mais je galère un peu ^^
BlueGhost31: je vais le faire aussi python => C++
joelthelion: vous connaissez rust? :-p
BlueGhost31: je n'ai plus codé en C++ depuis TTT
BlueGhost31: non je n'ai pas cette chance joelthelion
joelthelion: les perfs du C++ sans l'horreur de ce langage
joelthelion: bon pour être franc il y a quelques petites difficultés nouvelles :)
egaetan: si tout le monde fait du rust, ça va faire bizarre dans l'ide
Vry: Ouais j'y pensais ...
egaetan: le C c'est tellement plus élégant
BlueGhost31: à l'occasion je regarderai mais pas sur le challenge ;)
b0n5a1: erf je perds pas mal de match sur timeout alors que je mène
Gh0stm4chine: c'est pas un peu pénalisant le C par rapport au C++ ?
egaetan: Gh0stm4chine c'est à dire ?
Vry: Naaaaaan
Vry: C'est plus élégant (bien trouvé egaetan)
Gh0stm4chine: au niveau des structures genre les vector etc ?
Vry: épuré
egaetan: il y a même du polymorphisme en C
Vry: Gh0stm4chine : ben tu fais un tableau et c'est réglé
Gh0stm4chine: oui c'est sûr mais bon pour ajouter/supprimer des elements c'est bcp plus pratique d'avoir des vecteurs non ?
egaetan: queue[++head] = start;
egaetan: ça marche tout seul
joelthelion: SEGFAULT
joelthelion: :-p
Gh0stm4chine: egaetan je regarderai ton stream, si je suis convaincu ça sera du C pour la fin du contest :D
egaetan: euh... mon stream me voit me battre avec des segfaults
egaetan: peut-être pas le plus vendeur
Gh0stm4chine: ahah
egaetan: et je suis dev Java, alors ma syntaxe C est... originiale ?
Warred: salut, le contest c'est le jeu avec les sorcières ?
Bob: mais non faut montrer un peu de tripes quoi
egaetan: Vry tu en penses quoi de ma syntaxe en C ?
Gh0stm4chine: je suis dev java justement, du coup ton stream tombait bien :p
Vry: egaetan : bof ;)
Vry: J'aime pas les -- dans les []
Vry: Je le fais sur deux lignes
Bob: autant faire des affectations dans des if, à ce tarif-là
egaetan: je me suis beaucoup amélioré
Bob: bon, horizontalisation
Bob: bonne nuit les choupis
b0n5a1: bonne nuit
Vry: Bonne nuit
R4N4R4M4: bn
Lyxx: Hello, j'ai parfois une erreur sur le contest comme quoi le code n'a pas lu toute les entrées, alors que c'est ce qu'il fait en premier et que ça tombe jamais au premier tour, des idées de la cause ?
R4N4R4M4: Ca arrive de temps en temps
R4N4R4M4: Lorsque tu mets trop de lignes dans la console
egaetan: tu exploses avant d'avoir écrit
Strawbot: le multithreading fonctionne pas sur codingame?
b0n5a1: bah sur un core...
egaetan: un seul coeur
Strawbot: ok
Strawbot: donc le main thread se finit avant le début des autres thread
egaetan: mmx, simd et tralala par contre si tu veux
Strawbot: c'est con
Lyxx: genre sur le contest en cours ça arrive qu'à moi ?
ZooooX: o/ non c'est comme l'a dit egaetan
Gh0stm4chine: Lyxx ça a du arrivé au moins une fois à tout ceux qui dev en java
Gh0stm4chine: Lyxx tu es sûr que tu lis toutes tes entrées à chaque tour avant d'écrire ?
Lyxx: j'comprend pas, pour les même entrées et le même code ça plante systématiquement entre les tours 5 et 13 c'est bizarre je dois rater qqch
ZooooX: tu as un point bleu timeout ? sur la barre des 'actions' ?
Lyxx: @ZooooX oui du coup vu qu'il doit attendre une entrée au tour suivant
Lyxx: @gh0stm4chine et du coup j'ai affiché le dernier truc que je reçois et ouais je prend bien toute les entrées
ZooooX: et bien je penses comme gaetan l'a dit que peut être tu timeout et que tu coup tu n'as pas le temps de print ton tour
Lyxx: aww j'avais pas compris le messagee
yamo: mon code prend 20 ms et je timeout. je dois me prendre un GC de 30ms …
Lyxx: j'suis surpris aussi j'avais mis 20s de limite ahah
R4N4R4M4: 1.4 ms chez moi, mais j'ai encore rien fait :D
Adi28: est ce qu'on peut changer le timeout en debug ?
b0n5a1: tu veux dire chez toi ne local ?
Adi28: nn quand on lance le code
Karang: @yamo oui le GC est problèmatique, on en a parlé sur le forum, mais il y a pas grand chose à faire
b0n5a1: ha ça timeout à cause de tes outputs console ? non tu peux pas
R4N4R4M4: Adi28, non tu ne peux pas
Karang: quel language?
Adi28: ce qui est trop chelou c que pour tester je log WAIT" juste après avoir lu toutes les input
Karang: pour ma part j'ai abandonné en js, trop de timeout et complètement random
Adi28: d'ailleurs non TS pas JS
Karang: j'ai porté mon code en C++
Karang: en js je calculais 10k moves en 30ms et j'avais des timeout dans 5% de me games
Karang: en c++ je calcule 300k moves en 14ms et 0 timeouts
Karang: il devrait y avoir des équilibrage entre language, ça permettrais à tout le monde de s'amuser
ZooooX: tu peux trier le classement par langage
yamo: merci @karang pour l'info
Karang: oui mais c'est pas pareil, ma derniere version js était 1ere en js mais 143eme totale
ZooooX: comme ca tu te compare a ceux qui utilisent le même en ignorant un peu les c++ xd
Karang: maintenant je suis 36e en c++ et 36e global x) je sais pas si c'est mieux
Karang: dommage que l'on puisse pas soumettre dans plusieurs languages en meme temps
ZooooX: bah moi c'est mon premier contest j'essai de mettre en place le bfs qui a l'air a la mode mais je suis éclaté ahah
Spifflejedi: arghh il commence a etre un peu tard
ZooooX: donc avant que je vise un bon ranking ou que je doive porter mon code j'ai le temps
Spifflejedi: je comprends pas pq mon bot learn tous les spells avant de commencer à cuisiner ^^
Zakaoai: Vais-je passer la barre du top 1000
Zakaoai: Et bah non RIP mes heures de taff :'(
BigUP: tin mon IA n'est plus trop degeux, mais je loose sur timeout
BigUP: j'ai au moins corrigé les gros problemes que j'avais, va falloir maintenant trouver de la vitesse de calcul
b0n5a1: BigUP j'ai 16/20 win en début de run pour 2 loose timeout ^^
BigUP: b0n5a1, correct
BigUP: moi obligé de brider la
b0n5a1: j'en ai quelques unes des looses timeout
b0n5a1: bon j'ai du code pourri aussi
BigUP: je fais 5 * 3 * 5 simu en random ! :)
BigUP: Python POWA !
[CG]SaiksyApo: ça fait 75.
BigUP: je suis médisant, 5*4*5 ;)
[CG]SaiksyApo: J'aimerai bien trouver de quoi simuler j'ai trop de temps moi :(
b0n5a1: sleep(45ms)
b0n5a1: ^^
BigUP: [CG]SaiksyApo, je simule juste les enchainements de casts en random, j'avais pas envie de partir sur du BFS comme tout le monde
[CG]SaiksyApo: :thumbsup:
Mahouss: Bon, j'ai enfin un BFS qui timeout plus, python ne m'a pas aidé pour le coup
R4N4R4M4: Debug du repeat dans mon BFS #121 ---> #78 :D
Mahouss: R4N4R4MA tu as percé depuis hier soir ! Bien joué !
R4N4R4M4: thx
NicolasH_42: R4 j'ai perdi https://www.codingame.com/replay/502854079
R4N4R4M4: C'était pas loin ;D
R4N4R4M4: J'ai trouvé un autre bug, je repushe
Mahouss: La journée de glande m'a fait perdre pas mal de place ahah, le niveau commence a devenir élevé
NicolasH_42: ca va encore 150 !! si tu veux le 400 est plutot stable
Mahouss: Oui ahah je ne suis pas a plaindre pour ce debut de contest
Mahouss: Mais je sens que je vais avoir du mal a suivre le niveau
NicolasH_42: 150 tu dois deja avoir un bot solide
NicolasH_42: surtout en python
Mahouss: J'ai juste un bfs qui timeout pas
Mahouss: Sinon rien de particulier
Oioi: @mahouss : le mien timeout de manière erratique... pourtant je lui laisse que 37ms pour avoir de la marge...
Oioi: Mais je me suis réveillé en me disant que c'était inévitable : le .append(...) dans une liste est en O(1) en Python en moyenne mais peut prendre certaines fois un temps arbitrairement long pour être exécuté
Oioi: As-tu supprimé l'utilisation des listes dans ton bfs ?
Oioi: Allez, je remplace les listes par des Queue, ça évitera le pop(0) en O(n) et les .append(...) au comportement erratique
R4N4R4M4: Je crois que j'ai un 2 bugs quelque part
R4N4R4M4: ou
R4N4R4M4: Ils se déclenchent quand mon BFS est bloqué
R4N4R4M4: Bon, je verrai ça plus tard