Chat:Fr/2021-04-12

From CG community
Jump to navigation Jump to search

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

philRG: https://openclassrooms.com/fr/courses/1894236-programmez-avec-le-langage-c/1903301-utlisez-les-iterateurs-et-les-foncteurs

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

Default avatar.png Merwyn__: hey

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

Default avatar.png Eunrynome: 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

Default avatar.png 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

Default avatar.png 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

Default avatar.png 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:

Default avatar.png JBM: améliore ta heuristique Bob \o

Default avatar.png JBM: mmm ptet trop tard

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

Default avatar.png Merwyn__: je trouve les clash hyper dur

Default avatar.png JaetanSalvetat: à force d'entrainement, tu les trouvera moins dur

Default avatar.png Merwyn__: en fait je developpe des bot discord en python mais la je suis completement largué

Default avatar.png JaetanSalvetat: suis des tutos

Default avatar.png Merwyn__: sur quoi précisement ? j'ai l'impression qu'a chaque clash la manip est vachement differente

Default avatar.png JaetanSalvetat: puis les clash c'est un bon moyen se t'entrainer, puisque tu peux voir comment les autres ont fait

Default avatar.png Merwyn__: ui j'avoue

Default avatar.png JaetanSalvetat: ca t'aidera a déveloper ta logique

Default avatar.png JaetanSalvetat: développer*