Chat:Fr/2021-04-12
dbdr: \o
Thyl: Daporan
Thyl: c'est qui lui
Thyl: ????
Thyl: Neumann on compatit
dbdr: Daporan c'est celui qui gagne ces contests avec un submit de derniere minute a chaque fois
Thyl: aaa
Thyl: sa casse le morale
Thyl: j'avais pas vu
Thyl: sopra steria aussi il l'a gagnait la ps5 oO ?
dbdr: Réjouis-toi Neumann, tu vas pouvoir apprendre dans un Data Camp plutot que de perdre ton temps sur une PS5 :/
Thyl: c'est vrai c'est mieux
Thyl: en plus j'ai regardé ça à l'air trop bien
dbdr: Arbeit macht Frei
Thyl: Machine learning
dbdr: oui?
Thyl: etc
Thyl: deep learning
Thyl: tu c'est faire du ML dbdr
Thyl: ??
dbdr: j'ai regardé un peu, mais pas vraiment approfondi
Neumann: dbdr: Yes super ..
jfaixo: :'(
jfaixo: hello ici :) si je veux faire une "feature request" sur le site, vous savez où ca se passe ? via le forum ? j'aimerais proposer une montée de version du compilateur rust, il est vieux, ya des éléments de langages qui ne compilent meme pas..
Pauloux: Va voir sur le discord je pense
jfaixo: ok merci !
dbdr: jfaixo je dirais le forum plutot, il y a un thread sur les mises a jour de langage
jfaixo: d'acc :) je vais "arroser"
philRG: la technique c'est de hider avec un faux bot puis de matcher tous les bots de l'arène dans l'ide?
philRG: bon moi j'arrive pas à monter en bois 1 sur tron, trouvé un starter voronoi 78 ligne qui monte top silver direct
philRG: je pense que je vais le ré-écrire avec mes noms de variable pour voir si j'ai compris
Thyl: philRG moi le silver moi j'ai fait un truc ça ma push wood ->silver
philRG: sur contest amadeus: -3v + simu de magus pour détecter les collisions et redresser mon vecteur vitesse utilisée dans le cheat csb, et gestion des boosts en fonction du rang de mon pod et aussi avancée de la course (if/else de 5-6 lignes)
philRG: Thyl ah comment?
Thyl: -2v ça à mieux marché pour moi
Thyl: facile
Thyl: je regardais la où mon bot peut se déplier le plus
philRG: ah j'ai pas trop réfléchi à tron, leojean890 m'a filé 2 PM dont celui qui a gagné le Google Tron Challenge auquel j'ai pas tout compris
philRG: Thyl ah j'y ai pensé aussi ça me paraît plus logique comme approche initiale. Pour l'instant, je suis Top Wood2 en simulant en depth 1 (ie je ne me déplace pas dans une direction où mon lumicycle se crashe au prochain tour)
philRG: l'idée c'est de s'imprégner du gameplay et contraintes associées
philRG: le voronoi adapté avec une grosse fonction heuristique sinon reste assez intuitif mais je l'aurais jamais trouvé tout seul
philRG: après je vais faire OOC (mon premier contest avec un bot en top wood 2), en m'imprégnant peut-être de quelques starters pour démarrer
Thyl: en c++ c'est quel erreur qui est levé qu'on on sort d'un vector
Thyl: ????
philRG: oublié de gérer le cas où je me faisais pousser via un boost sur contest amadeus :( pourtant j'avais prévu de le faire grrr
philRG: fonction de magus peut pas détecter ce type de collision
philRG: Thyl http://shtroumbiniouf.free.fr/CoursInfo/C++1/Cours/ClasseVector/ClasseVector.html
philRG: En cas d'erreur (n >= nombre d'éléments du vecteur), at() lève l'exception out_of_range
dbdr: mais v[n] fait un truc non-spécifié, non?
philRG: ben un vector c'est un tableau dynamique
philRG: non?
philRG: j'ai fait du C++ il y a à peine 2 mois et j'ai déjà oublié les bases :-(
philRG: quand on pratique pas...
dbdr: https://blog.tchatzigiannakis.com/undefined-behavior-can-literally-erase-your-hard-disk/
philRG: ah ok c'est un code pour passer légende?
philRG: bon moi je m'installe CLion, à chaque fois je passe des plombes à lire les conneries de VSCode
philRG: ah tiens dans la version d'eval de CLion, on peut faire du React et Bootstrap
philRG: Thyl c'est une exception de ce type:
philRG: std::out_of_range: vector
Thyl: merci
philRG: quand tu fais e.what(), mon IDE CLion me renvoie "vector" uniquement l'objet incriminé par l'exception, je sais pas comment sont organisées les exceptions en C++, et mon IDE me propose pas de méthodes pour afficher le nom exact
philRG: sinon pour tester le nombre d'éléments de ton tableau dynamique, tu fais: v.size()
philRG: ou alors tu crées un objet itérateur sur ton vector, c'est la pratique usuelle pour parcourir un vector
philRG: ah bon finalement, je fais peu de C++ car j'aime pas VSCode
Zorg1: je vois pas trop le lien mais bon ^^
philRG: j'ai seulement un peu de mal avec les différentes spécifications de langage de c++ et typage des paramètres de fonction exemple sur mon code obaba
philRG: http://chat.codingame.com/pastebin/04858971-ddf5-417b-a5fe-4ab6b63ce143
philRG: int maxValue(vector<Node *> const& nodeList)
philRG: ne marchait pas trop
philRG: Zorg1 principalement lié à l'interface de VSCode
philRG: et beaucoup d'huile de coude
philRG: pour avoir un environnement de travail correct
philRG: là sur Jetbrains, j'ai la même interface, pas perdu parmi 40.000 menus
philRG: pour php/python/JS/C/C++
philRG: et C#/Java
Zorg1: y a une version communautaire pour CLion ?
Neumann: Non.
Zorg1: oui je viens de regarder leur site ;-)
philRG: limitée à 30j. En principe au bout de 30j, il te ferme ta session au bout de 30' d'utilisation, puis tu peux la relancer
Zorg1: ce truand
philRG: ça dépend des langages
philRG: :flushed:
philRG: vu mon âge avancé, je préfère avoir un environnement qui ne change pas trop, car sinon je suis perdu
philRG: savoir où sont rangés les objets
philRG: sinon VSCode c'est très bien aussi, mais en général, je me créé un dépôt sur git, et en un click je crée mon projet sur un IDE Jetbrains d'un langage lambda, plus facile pour gérer mes codes
philRG: je fais un get from cvs à partir de l'ide
philRG: je fais un push ensuite ou pas, tous mes repos sont en private, pas que mes codes sont intéressants, mais c dommage de laisser des solutions en public pour ceux qui veulent chercher
Bon[]Crayon: Salut
Bon[]Crayon: slt Automaton2000
Automaton2000: je viens de lire le sujet
Bon[]Crayon: slt AutomatonNN
Bon[]Crayon: Automaton2000 C'est à quel sujet ?
Automaton2000: je vais aller me coucher
Bon[]Crayon: Automaton2000 Bon repos.
Automaton2000: ah je savais pas que c'était possible de faire une ia qui tient la route
Alshock: yo Automaton2000 lève-toi maintenant je veux un câlin :D
Automaton2000: j'ai jamais compris pourquoi ils ont fait un truc bizarre
Alshock: @Automaton2000 :hugging:
Automaton2000: en fait on s'en fout
Alshock: ... :cry:
Alshock: c'étati bien la peine de me lever ce matin moi
Zorg1: Automaton2000 t'es un bot méchant
Automaton2000: pas sûr que tu peux, mais c'est plus chiant
Bon[]Crayon: Automaton2000 Quand on veut, on peut.
Automaton2000: en fait ca marche pas
Bon[]Crayon: Automaton2000 Je reconnais bien là ta sagesse de tortue.
Automaton2000: c'est surtout utile quand tu fais le puzzle de la communauté
philRG: bon Automaton2000 a repris son office :-) je vais me mettre en mute
Automaton2000: ah oui si tu en es où ?
philRG: Thyl pour les vector, soit tu créés un iterateur soit tu te déplaces à la old-school for (i=0; i<vector.size(); i++)
philRG: https://pastebin.com/ksaTxrXq
Louis.: salut
Bon[]Crayon: o/
philRG: http://chat.codingame.com/pastebin/4bb56c43-babc-41af-9085-e2e706486c67
philRG: vector ou deque, 2 objets assez similaires
philRG: http://chat.codingame.com/pastebin/bc98e09f-8a14-4276-bcb7-e57380d57363
philRG: http://chat.codingame.com/pastebin/c409018a-8ac3-44c3-9b00-d505d4261b55
Alshock: et le prochain pastebin sur le for range ?
Bon[]Crayon: Automaton2000 Et on fait tourner les pastebins !!!
Automaton2000: t'as combien de rollout au second tour ?
Bon[]Crayon: Automaton2000 84% d’abstention !
Automaton2000: en tout cas merci pour vos conseils
Bon[]Crayon: :slight_smile::thumbsup_tone2:
Louis.: annulé pour le chat mondial mais AntiSquid triste que personne ne vous interdise
Zorg1: ? on parle de quoi
Louis.: je suis banni du chat mondial mais AntiSquid triste personne ne vous a interdit Zorg1
Zorg1: gné rien compris désolé
Louis.: Je suis banni du chat mondial
Zorg1: ah ok
Zorg1: et qu'est ce qui faudrait nous interdire d'après Antisquid ?
Louis.: que veux-tu dire
Zorg1: ah tu sais pas parler la langue en fait ^^
-TheWalder-: Google trad c'est pas ouf
Louis.: nope
Zorg1: ouaip
Louis.: nan
nicola: Louis., attends que le chat redémarre comme la chenille.
Louis.: qu'est-ce que tu veux dire nicola
philRG: AIshock c'était pour tester le pastebin sur le chat. En privé, il ne marche pas
Zorg1: oui t'as pas de CG paste bin sur les MP
philRG: je fais des shares de mon compte PB, mais ça m'emmerde car j'ai droit qu'à 10 privés dans la version free
philRG: donc hier j'ai viré tous mes PB publics de mon compte, enfin sont sur git remote ou local
philRG: après bon c'est seulement pour des bouts de code, rien de méchant
philRG: ou des starters
philRG: Pastebin est light et supporte tous les langages
philRG: git un peu plus lourd à gérer
Zorg1: t'as pas d'autre truc que paste bin ?
Zorg1: voire des trucs que tu peux monter sur un site perso
Zorg1: en plus bon pastebin ça a tendance à être bloqué chez pas mal de boîte
Zorg1: ha ça faisait longtemps SFR me refait le coup" votre offre évolue ! (et on augmente votre facture en douce)"
dbdr: Se Faire Rouler?
Zorg1: oui ils étaient coutumier de ce genre de truc, ils s'étaient calmé mais ils reprennent leur astuce
Bon[]Crayon: Cher Automaton2000 profiter de notre offre exclusive reversé à nos meilleurs pigeons: quatre pneus achetés, le cinquième à moitié prix.
Automaton2000: et pour les autres je sais pas comment ils ont fait un bon score
Bon[]Crayon: Automaton2000 Ils ont la cartes de fidélité.
Automaton2000: bon aller je vais me coucher
Bon[]Crayon: encore :)
kayou: C'est pour retrouver AutomatonNN
B0V3R: c'est quoi un palindrome
Bon[]Crayon: https://fr.wikipedia.org/wiki/Palindrome
Zorg1: ça se lit pareil de gauche à droite ou de droite à gauche
Zorg1: bref c'est symétrique
B0V3R: comment je fais la racine carrée sur python ?
kayou: **0.5
kayou: ou math.sqrt
telerama: je crois que math.sqrt() ça doit marcher
B0V3R: nice ça à marcher merci
philRG: bon mon bolide de tron se déploie bien, mais je dois avoir un bug
philRG: https://www.codingame.com/share-replay/539846349
philRG: flood-fill basique
philRG: ah ouais mon id change dans l'arène
philRG: pas mal quand même avec un mauvais id, je finis 88ème sur 1516 en wood2
philRG: lol purée dur de vieillir
philRG: my_car = get_car(p)
philRG: c 'est mieux que:
philRG: my_car = get_car(0)
Thyl: y aun bug oui
philRG: là c'est wood 1 direct lol
philRG: je me suis fait peur
philRG: Strat 1: mid wood 2 (random move depth 0)
philRG: Strat 2: Top 25% (random move depth 1)
philRG: Strat 3: flood fill sur direction où le bolide se déploie le mieux
philRG: donc strat itérative
Alshock: "se déploie le mieux" ?
philRG: basée sur logique simple
Alshock: c'est une moto ou un origami ton truc ?
philRG: je sais pas :)
philRG: :thinking:
Alshock: Mais Oskur, y a 1h de vidéo et c'est que la partie 1 : https://www.youtube.com/watch?v=taXxtBbOjNs
Alshock: Ces gens sont des malades
philRG: en tout cas je suis pas à l'aise sur un flood-fill qu'un bfs, c'est plus intuitif
Alshock: sed s/pas/plus/ ?
philRG: plus
philRG: les promotions de ligue sont un peu longues, curieux de voir jusqu'où mon flood-fill va m'emmener
philRG: quoique pas de promotion avant le fin du run
philRG: ça rame un peu
philRG: je vais pouvoir rajouter 'flood-fill' en plus de 'ls' sur mon CV :-)
philRG: jamais j'aurais pu imaginer faire de tels scores dans ma jeunesse à ce jeu
philRG: ah ouais quand même je vais passer en bronze, mais là je me fais bien coincer par le boss de wood 1: https://www.codingame.com/share-replay/539861196
philRG: faut dire qu'à part faire des lignes, les boss en wood font rien d'autre
BlaiseEbuth: Yo tout l'monde ! Automaton2000, AutomatonNN !
Automaton2000: pour savoir comment faire pour avoir un truc pas trop mal pour le moment je fais pas
philRG: o/ BlaiseEbuth
BlaiseEbuth: \o
philRG: bon mon flood-fill se plaît bien en bronze il va y rester :)
philRG: https://www.codingame.com/share-replay/539867387
Zorg1: o/
BlaiseEbuth: Oh bah quelle surprise, qui a gagné ? :3
philRG: visuellement tron c excellent
BlaiseEbuth: Ouai c'est le seul multi où on peut dessiner des bites.
philRG: :joy:
Zorg1: alshock : ah oui en train de regarder la moto en origami
LouisLOurson: Salut, est-ce que il y a un endroit où on peut regarder les contests précédents pour voir à quoi ça ressemble?
BlaiseEbuth: https://www.codingame.com/contests/finished
LouisLOurson: Sur cette page, par exemple le fall challenge 2020, on ne voit pas en quoi consistait le chalenge si? Je ne vois que des leaderboard
BlaiseEbuth: Dans les leaderboards tu as un lien "voir les derniers matchs" sous chaque participant
BlaiseEbuth: Et tous les anciens contests sont maintenant disponibles en multi ici https://www.codingame.com/multiplayer/bot-programming
LouisLOurson: Merci beaucoup !
Zorg1: on sent que le contest est terminé y a plus personne ici
BlaiseEbuth: Mais si. Mais ils hide
Zorg1: ah ils vont spammé trois cents post en 5 minutes ?
Zorg1: ça va être brutal
Hezbaf: 😹
Bob: amis de la brutalité
Bob: o/
Zorg1: \o bob
Bob: comment qu'c'est par ici ?
Zorg1: bah c'est calme, y a eu un contest semi privé qui s'est fini hier soir
Bob: j'ai vaguement entendu parler de ça mais juste pas le temps
Zorg1: c'était une variante de CSB
Zorg1: donc si t'aimes pas les simus c'est pas forcément génial
Bob: boah -3v et c'est marre :rofl:
JBM: améliore ta heuristique Bob \o
Zorg1: jamais trop tard pour un -3v
dbdr: du coup je vais sans doute adapter mon code pour passer légende sur csb
dbdr: parait que ça se fait
Zorg1: bah oui, faut pas gâcher
Zorg1: si t'as codé les collisions t'as fait le plus pénible
Zorg1: après je vois sur #world y en a un qui est passé légende avec un truc assez minimaliste, donc bon
BlaiseEbuth: Ouai je suis en train d'y regarder...
BlaiseEbuth: Comment est ta Bob ? o/
philRG: o/ Bob
philRG: o/ -3v
philRG: là j'essaye de passer silver sur tron avec un FF fait maison mais ça rame :-D https://www.codingame.com/share-replay/539911995
philRG: et je découvre tron
pardouin: tu FF juste depuis ton joueur ou aussi depuis l'adversaire en parallèle ?
pardouin: philRG : avec ce genre de truc basique si tu prends un minimum en compte l'adversaire tu passes gold facile ;)
philRG: les 2
pardouin: le seul truc un peu technique c'est parfois quand tu colle un mur ça te sépare en deux morceaux et ça t'interdit l'accès de l'un
pardouin: dans ces cas là il faut bien prendre la taille du plus gros morceau et pas la somme des deux
pardouin: sinon tu te ferme des zones bêtement
pardouin: +s
philRG: effectivement faudra que je le teste en silver
philRG: quand mon FF marchera sans bug
philRG: ah en simplifiant un peu mon code et supprimant la POO ça marche mieux
philRG: je suis monté 22 et chuté à 254 (1623 bots en bronze)
pardouin: faudra que je tente legend sur celui-ci, c'est sans doute celui où je suis le plus proche
BlaiseEbuth: ezpz
pardouin: en gold on joue à 4 joueurs et j'ai pas trop réfléchi encore à quelle stratégie adopter
pardouin: essayer de pourrir le plus proche des 3 peut-être
BlaiseEbuth: Perso j'ai aucune différence de strat en fonction du nombre de joueurs.
pardouin: et tu es passé legend ?
BlaiseEbuth: Ouai. Top50 au passage (Y'a qq années),environ 100eme maintenant
pardouin: ok cool :)
pardouin: et juste pour info tu as combien de depth ?
pardouin: (sans détailler la strat)
BlaiseEbuth: Pas beaucoup, code pas opti du tout. En considérant qu'une depth c'est un joueur qui joue, 8 minimum. Donc 4 tours à deux joueurs, et seulement 2 à 4.
BigUP: ok, maintenant, detail la strat
pardouin: LOL
BlaiseEbuth: :zipper_mouth:
pardouin: ça me motive à m'y remettre quand j'aurai le temps :)
pardouin: j'avais codé une version jouable pour rigoler
pardouin: avec mon IA de gold
pardouin: en laissant une demi-seconde pour jouer
pardouin: je galère de ouf pour le battre XD
BlaiseEbuth: ^^
leojean890: tron c'est souvent minmax ou mcts avec voronoi;)
**BlaiseEbuth sort le balai pour ramasser les morceaux de Stilgart qui vient d'exploser.
leojean890: enfin pas un vrai voronoi au sens rigoureux d'après stilgart ;)
leojean890: chips mec ;)
pardouin: tu es passé legend sur des multi leojean ?
leojean890: non je suis gold dans 13 multis et aucun legend XD
leojean890: faut que je me bouge :P
pardouin: et dans aucun des 13 tu sens qu'en poussant un peu tu pourrais monter ?
leojean890: ptet que si ^^
leojean890: hypersonic ou tron par ex
leojean890: OOC je suis pas loin mas c'est hard^^
pardouin: et CSB ?
leojean890: CSB je peux facile ouais vu que j'ai bien bossé le contest sofia labs et SR mais bon c'est pas mérité à 100% car la simu vient du PM de Magus
leojean890: enfin je l'ai pas recodée
pardouin: ok
leojean890: hypersonic et tron je suis sr les algos qui marchent mais le souci vient p'tet des perfs avec python
pardouin: tu aimes bien t'arrêter juste avant les caps
pardouin: le mec est à 199 puzzles XD
leojean890: hehe
leojean890: ça c'est random par périodes j'en fais plein
leojean890: parfois je fais plutôt des multis
leojean890: et parfois des optims
leojean890: ^^
pardouin: tron tu eval juste ta taille de zone ou tu prends aussi en compte celle des autres ?
leojean890: je fais un voronoi avec tous les adv
pardouin: un truc genre a*ta_taille - b*celle_des_autres
pardouin: pour l'eval je parle
leojean890: et ouais exact
leojean890: mon eval c'est basé sur voronoi
leojean890: mon nombre de cases safe - le nombre des autres
pardouin: ok
leojean890: + mon nombre de cases "atteignables"
leojean890: - celui des autres
leojean890: dans le but de "coincer" l'adversaire dans une mini zone avec peu de cases atteignables
pardouin: oui oui
pardouin: je fais pareil, mais à mon avis faut tenter des pondérations différentes
leojean890: mais depth 1 pour chaque joueur sauf 2 pour moi c'est pas ouf
leojean890: ouais p'tet en bricolant les chiffres ça sufffirait pour passer xD
pardouin: ça évite déjà de se coupe des zones tout seul si tu as depth 2 sur toi
leojean890: magic numbers + perfs
leojean890: hypersonic je pense qu'il e manque 2 trucs
leojean890: 1) les perfs
leojean890: 2) j'ai pas de bon truc défensif pour anticiper que qqn me coince
leojean890: ni pour coincer qqn de coincable
leojean890: après j'ai p'tet un mini bug qui traine aussi
leojean890: ah oui dans l'éval de tron j'ai aussi un algo différent pour la fin pour pas trop mal fill la zone
leojean890: et globalement j'essaye de coller mes propres murs pour anticiper ctte phase de zoning
leojean890: avec une pondération plus légère que le reste
philRG: bon les submit rament bien ce soir
Hezbaf: Savez-vous à quel heure son actualisé les ranks svp ?
Hezbaf: sont*
BlaiseEbuth: Dans la nuit... Après j'sais pas exactement
Hezbaf: D'accord merci
leojean890: 2h heure d'été et 1h heure d'hiver il me semble j'avais vérifié un jour
leojean890: sauf si ça a changé depuis
Hezbaf: Parfait merci :older_man_tone2:
pardouin: c'est pas pile c'est genre 1h07
pardouin: un truc comme ça
Merwyn__: je trouve les clash hyper dur
JaetanSalvetat: à force d'entrainement, tu les trouvera moins dur
Merwyn__: en fait je developpe des bot discord en python mais la je suis completement largué
JaetanSalvetat: suis des tutos
Merwyn__: sur quoi précisement ? j'ai l'impression qu'a chaque clash la manip est vachement differente
JaetanSalvetat: puis les clash c'est un bon moyen se t'entrainer, puisque tu peux voir comment les autres ont fait
JaetanSalvetat: ca t'aidera a déveloper ta logique