Chat:Fr/2020-04-14

From CG community
Revision as of 10:56, 15 June 2021 by Chat Log (talk | contribs) (Created page with "<img src=/a/17173563008577> Neumann: first <img src=/a/41761281503549> dbdr: #1? <img src=/a/13586498256488> Vry: #3 :p <img src=/a/13586498256488> Vry: Mon bot se replace...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Neumann: first

dbdr: #1?

Vry: #3 :p

Vry: Mon bot se replace tout seul pendant la nuit ... 20 -> 42 :D

Vry: Et Boulet aussi ... on était tout les deux 15-16 hier soir ... y'a des remous !

GiB: http://chat.codingame.com/pastebin/62a115dc-2aa6-4c48-8192-631e2c765ce5

Vry: On dirait que le boss a fermé la porte à double tour cette nuit

GiB: http://chat.codingame.com/pastebin/3ee6bfd2-8644-43c7-9c66-b17467968f92

GiB: Comment on gère ce qui est mis dans le pastebin ?

GiB: Je disais: J'ai ajouté une feature: si le nom de mon adversaire contient "Chuck", je gagne :)

Vry: C'est soit un certains nombre de saut de ligne (4 je crois) soit la longueur

GiB: Vry: comment ça fermé la porte ? Il est trop difficile ? Il ne joue plus de matchs ?

Vry: Non, mais cette nuit personne n'est passé Légende (sauf erreur de ma part)

jolindien: glouglou du matin

XLP: o/

pb4: o/

XLP: gamoul est passé cette nuit apparemment

Fangel: en fait le "cette nuit" est assez subjectif ! Vry ne s'est pas couché tôt :)

Vry: Oui entre 1h et 9h :)

Vry: gg gamoul !

Vry: à 4h28 d'après le classement général

Vry: Submit du matin ?

Vry: Il a fallu en faire quatre pour avoir un départ correct (7/10) ... :D et non je ne suis pas un robot ! :p

jolindien: Vrymaton2000

jolindien: le must du maton2000

Vry: En effet ...

Vry: jolindien, j'ai les idées mais pas la motivation ... tu peux me faire mon code ? (en C stp) :D

jolindien: en C... maso2000

jolindien: ;)

Vry: Bon, il va falloir que je code moi-même !

Nagatwin: jpense que mon code compile en C

Nagatwin: ah nan faut remplacer les cout

Vry: Implémenter une stratégie ... c'est pas simple moi je vous l'dit !

Vry: Nagatwin ... cool ! :p

Vry: Tu fais du faux C++ en fait ?

Nagatwin: eh ça peut etre un bon moyen de débloquer un succès ça

Nagatwin: Haha

Nagatwin: y'a accès aux struct en C ?

Vry: Y'a objective C aussi

Vry: Oui bien sûr !

Nagatwin: bah ça compile easy

Vry: http://chat.codingame.com/pastebin/ef2950a3-4930-46b4-9be0-fc6f40c29ae1

Nagatwin: jvois pas pourquoi y'a pas plus de C dans le top

Vry: En effet Nagatwin ... le C++ devrait obligatoirement impliquer l'utilisation d'objets ! :p

Vry: En fait personne ne sait faire du vrai C++ mais personne ne l'assume ...

Nagatwin: objet c'est class + new c'est ça ?

lhm: Parce que le C demande de réimplémenter beaucoup trop d'algos présents de base dans la STL :3

Nagatwin: Bah c'est surtout que c'est plus lent

Vry: Ben non

Nagatwin: ihm genre quel algo ? :D

Nagatwin: moi je réimplémente tout :D

Vry: Floyd Warhsall ?

lhm: a peu près tout... sort, reverse, upper_bound, bitsets, etc

jolindien: unordered_set, unordered_map par exemple

Vry: j'ai aucun sort pour ce contest c'est rigolo

lhm: moi non plus par contre j'ai des set...

jolindien: ihm++

lhm: et faudrait que je me paluche ça en C...

Magus: Salut tout le monde et Automaton2000

Automaton2000: c'est pas mal non plus

jolindien: o/ Magus

Vry: moi j'ai pas de set ... j'ai juste des map avec des cases vides ou non vide ... et une petit boucle for ...

Vry: En C, le for c'est la vie ! :p

Nagatwin: ihm genre tout ce qui est plus lent :D

Nagatwin: juste les lets sont pratiques, javoue

Vry: Nagatwin, un qsort c'est pas la mort à coder non plus !

Nagatwin: qsort ?

Nagatwin: quicksort ?


Nagatwin: les sets*

Vry: qsort(void *base, size_t nmemb, size_t size,int (*compar)(const void *, const void *));

Vry: Si tu as un tableau de structures c'est très rapide à utiliser

Nagatwin: mais je sort pas

Vry: qsort(tonTableau, nbElements, sizeof(maStructure), cmp_fct);

Vry: Sur ce contest je ne sort pas non plus

Nagatwin: http://chat.codingame.com/pastebin/4aaa059d-82d8-4e42-add8-a063fbd27bdd

Vry: Mais sur c4l où j'étais full heursitique je l'ai fait je crois

Nagatwin: le seul truc évolué que j'ai c'est ça haha

Nagatwin: je devrais surement utiliser un set plutot

pb4: :fearful:

Nagatwin: jsais pas si ça serait plus rapide

Vry: Moi je stocke pas les paths ... par contre je cherche souvent le min ou le max dans un tableau ... :p

pb4: du O(N2) !

Nagatwin: pb4 :p

pb4: std::sort(); std::erase(std::unique());

pb4: hop

Vry: o/ Magus pb4

Nagatwin: bah des appels std

pb4: miam std c'est bon mangez en :D

Nagatwin: on m'a dit que c'était lent

pb4: Ca n'est pas le cas

Vry: C'est la STL qui est lente, c'est ça ?

pb4: Non non essayez vous même, je n'ai pas trouvé de cas où la std/stl était lente par rapport à ce que je fais "à la main"

Nagatwin: bah à l'époque ou j'ai commencé j'ai vu passer ça plein de fois

Vry: Oui c'est ça ... c'était une légende urbaine sur le chat CG ?

pb4: Je pense que oui :)

Vry: Mais y'avait un truc lent en c++, je ne sais plus lequel ...

pb4: unordered_map

pb4: (il paraît)

pb4: mais ça c'est valable partout, pas que sur cg

Vry: Oui, après c'est une question de "bonnes pratiques" pour le coup

lhm: C'est pas lié à l'implémentation, mais à la structure de données. Si tu essaies de réimplémenter unordered_map en C ce sera pareil

Nagatwin: c'est pas map qui est lent par rapport à unordered map ?

pb4: de stack overflow :

pb4: The standard library's maps are, indeed, inherently slow (std::map especially but std::unoredered_map as well). Google's Chandler Carruth explains this in his CppCon 2014 talk; in a nutshell: std::unordered_map is cache-unfriendly because it uses linked lists as buckets.

Default avatar.png JBM: c'est un peu reducteur, sans preciser l'origine de la lib, non?

pb4: Si je me rappelle bien du talk, c'est imposé par le standard

Default avatar.png JBM: ah, c'etait ma question d'apres

pb4: Le standard n'écrit pas "il faut une linked list"

dbdr: the implementation MUST be slow

pb4: mais il écrit (vérifiez pour être sûr)

pb4: Tant qu'il n'est pas nécessaire de "resize" (j'ai oublié le terme) le stockage sousjacent de la unordered_map, les itérateurs doivent rester valides

Skril: Yep, les conditions de non invalidation des pointeurs imposées par le standard limitent les options des libs

dbdr: si seulement le système de types pouvait garantir qu'il n'y a jamais d'invalidation

Default avatar.png JBM: si seulement

dbdr: :innocent:

Default avatar.png JBM: y'a un truc de ce niveau en rust sur les conteneurs?

dbdr: le langage le garanti en général

Nagatwin: bref

Default avatar.png JBM: ah, j'esperais un truc un peu plus axe conteneurs

Default avatar.png JBM: parce que la c++std c'est bien, mais c'est vraiment le champ de mines de ce cote-la

Nagatwin: du coup sort+erase unique c'est pas du N^2 ? c'est au moins NlogN donc jpense pas que tu gagnes beaucoup avec ?

dbdr: apres tu as des conteneurs écrit en bas niveau pour optimiser les perfs, en utilisant unsafe, et il faut bien penser l'implementation pour que ce soit safe à 100% quelque soit le code client

Nagatwin: pb4 et avec les std tu utilises quoi comme structure ? un std::vector de struct ? une array ?

dbdr: il y a des gens intelligents qui le font et après tu es tranquille :)

dbdr: perf + safety

Nagatwin: dbdr ouais j'aimais bien ça en rust

Nagatwin: y'a des gens avec un cerveau qui ont fait les trucs comme il faut :D

Skril: static_vector :-)

Magus: vector c'est performant que si tu sais ce que tu fais avec (si tu t'en sers n'importe comment et que tu le forces à resize tout le temps, laisse tomber)

Magus: array à priori c'est bon (je vois pas de cas où ce serait moins performant qu'un [] si tu compiles avec les pragmas)

pb4: Nagatwin : la structure adaptée au problème que je traite

Magus: de toutes façons au final c'est toujours la même, y'a pas tout votre code qui doit être optimisé à fond

Magus: 90% de votre code vous vous en tapez probablement qu'il soit "lent"

pb4: très souvent vector, régulièrement array, parfois map

dbdr: ^^

dbdr: profile ftw

Magus: map et set faut éviter, c'est "lent" (à cause de ce qui a été dit aussi, conservation des iterateurs)

pb4: Nagatwin oui c'est NlogN sort / erase / unique

Default avatar.png JBM: pour du code cpu-bound

Magus: (et donc unordered_set et unordered_map aussi)

dbdr: sinon c'est 100%? :)

Magus: mais bon, dans un code dont tu t'en fous de la perf, set et map tu vas pas les recoder :D

Skril: http://chat.codingame.com/pastebin/7d5dfd2f-7395-47f5-a79a-d7c4c4d1a45e

pierre31: Magus, tu es sûr pour unordered_set et unordered_map, c'est beaucoup plus rapide que map et set en tout cas, car pas de tri

Magus: oui je suis sur, c'est ce dont pb4 parlais au dessus

Magus: ils sont "lent" parce que la spec C++ impose des trucs pas forcément utiles

Magus: comme la conservation des iterateurs tant qu'on a pas de resize à faire

Magus: ou de rehash

Magus: je sais plus le terme qu'ils utilisent

dbdr: Magus cgstats il fait une seule requete des last battles et il detecte les matchs nuls avec?

Magus: normalement oui

dbdr: normalement c'est possible depuis qu'il y a le #1 #2, non?

dbdr: mais avant ça l'était pas

pierre31: effectivement question perf si on peut utiliser un vector il faut y aller mais j'avais fait des benchs entre unordered_map et map et il y avait déjà une grande différence,

Magus: je crois c'est Neumann qui a codé les draws sur cgstats

Magus: je me souviens plus

dbdr: ah ok

dbdr: merci

Magus: http://cgstats.magusgeek.com/app/ocean-of-code/pb4 visiblement les draws sont bien détectés

dbdr: oui. et vu le temps de réponse il ffait pas une requete par match :)

Neumann: Oui

dbdr: mais il me semble que ça fait longtemps qu'il a une notion de draw

Neumann: Oui

dbdr: mais c'était déjà dans les résultats de last battle?

Neumann: Oui

dbdr: juste pas affiché par CG?

ThomasNicoullaud: ha le piège on peut plus répondre oui

dbdr: :D

dbdr: !Non

Default avatar.png JBM: qui est cet individu qui a choure le pseudo de Neumann

Neumann: Non.

Default avatar.png JBM: too little too late

dbdr: c'est pour ça qu'il est pas légende

dbdr: dsl

Neumann: :'(

Default avatar.png JBM: l'original sera toujours une legende pour moi

dbdr: pas encore

dbdr: JBM est super gentil aujourd'hui ;)

Default avatar.png JBM: ca doit pas etre vraiment moi

Default avatar.png JBM: comment es mon reput

dbdr: chatters.rotate_left()

Default avatar.png JBM: ROL? l'or? un aventurier, peut-etre?

dbdr: référence?

Default avatar.png JBM: ('scusez-moi, avecle confinement je me suis refait des videos YT lowcoost des meilleures tirades de film, la cite de la peur ressort *sourvent*)

Default avatar.png JBM: (dikkenek aussi d'ailleurs, merci a qui me l'avait fait decouvrir)

YannT: enchaine sur un bestof OSS117 derrière ;)

Default avatar.png JBM: il y est, mais beaucoup moins, etrangement

Nagatwin: pb4 avec vector t'as pas des problèmes de perfs ? j'ai l'impression qu'il le relocate très souvent et du coup j'avais plein de pertes de perf avec des vector<path_struct> ou des vector<path_struct*>

Default avatar.png JBM: reserve() une bonne fois pour toutes

Nagatwin: magus comment tu le forces à pas resize ?

SeebOmega: Nagatwin pb4 ma donne un coup de main sur un truc comme ca tu utilises erase() ?

Nagatwin: SeebOmega pas compris

SeebOmega: utilises tu vector.erase(it) pour enlever un elevement de ton vecteur ?

YannT: siman fait des pushs en ce lundi matin

YannT: W:19 / L:62 -_-

SeebOmega: element*

Default avatar.png JBM: ouch

lhm: Nagatwin ton vector va resize si tu dépasse sa capacité et ça tu n'y peux rien

Nagatwin: SeebOmega oui

lhm: Nagatwin par contre tu peux lui donner une capacité suffisante dès le départ avec un reserve

SeebOmega: eu debut je fais un vector.reserve(50000)

Default avatar.png JBM: c'est O(N)

YannT: bon il roule sur tout le monde donc y'a pas de honte, mais c'est un pietinement en règles là

Nagatwin: ihm ah yes ok merci

dbdr: YannT 35ère heure du lundi? :D

SeebOmega: et du coup je te reshare le pro tips de pb4 au lieu de erase fais un swap avec la fin et pop_bnack()

Default avatar.png JBM: ah d'accord si c'est lhm qui le dit c'est merci je vois

Nagatwin: SeebOmega mais je suppose que erase fait ça

YannT: c'est le premier jour de la semaine, c'est un lundi

Default avatar.png JBM: ben non

SeebOmega: non

lhm: XD JBM désolé mon chat avait pas scrollé du coup j'avais pas vu ta réponse

Default avatar.png JBM: ca le unsirterait

SeebOmega: erase enl;eve le courant et reshift tout

Default avatar.png JBM: *sort

Default avatar.png JBM: il peut pas se le permettre

Default avatar.png JBM: lhm: c'etait plus pour nagat

SeebOmega: effectivement comme dit JBM sinon ton odre a la fin serais plus le meme

cyrlemai: Coucou les enfants, coucou Autmaton2000 et AutomatonNN

AutomatonNN: Neumam

cyrlemai: Oups la typo

RomanceDawn: Autmaton2000

cyrlemai: Chuteuuuuh, t'as rien vu ;P Ah oui, c'est Alshock au fait, j'ai été obligé de faire un nouveau compte avec l'adresse de 42 pour faire leur contest

Default avatar.png JBM: tu pouvais pas l'utiliser que pour ce contest-la?

Zorg1: o/ Automaton2000, AutomatonNN et tous les smurfers

Automaton2000: il est pas toujours le cas

AutomatonNN: oui j'ai tenté de comprendre comment ça marche :D

Zorg1: houla AutomatonNN y en a qui ont essayé ...

AutomatonNN: oui j'ai pas trop compris ce que tu veux dire

Bob: AutomatonNN, Automaton2000, tout le monde, pika o/

Automaton2000: quand je dis que c'est pas une erreur de signe

AutomatonNN: Tu peux pas te dire que tu as des problemes avec des contests ?

VilBoub: salut Bob !

Default avatar.png JBM: \o Bob ameliore ta sousmarin

Bob: pas prévu au programme, je le crains

Zorg1: o/ bob

dbdr: MOVE W MINE | MINE E | MINE N bien tenté :D

Default avatar.png JBM: mmmm WINE

Zorg1: ah le double MINE

dbdr: MINE Is Not an Elephant

Zorg1: MINE Is Necronomicon Extended

Default avatar.png JBM: MINE Is Not Everyone's

Bob: MINE Is Not Enabled

dbdr: Zorg1 tu aimes bien le necronomicon il me semble :)

dbdr: https://doc.rust-lang.org/nomicon/ c'est bien trouvé comme titre de bouquin

Zorg1: pas tant que ça je n'ai pas l'impression de le citer tout le temps

dbdr: je m'en rappelle

dbdr: c'est parce que ça me fait penser à ce lien/bouquin

Zorg1: je sais que si tu cherches une astuce C++ c'est le bouquin qu'il faut consulter, mais c'est tout :p

Zorg1: "Invocation du Shugg Nashôt pour optimiser un Vector"

dbdr: c'est sympa quand les ouvrages techniques ont la créativité de créer une ambiance et de faire des références non techniques je trouve

dbdr: ah, ya un bouquin C++ dans le genre Zorg1?

dbdr: parce qu'à la base c'est un truc ésotérique il me semble

dbdr: et pas dans le sens langage éso :D

dbdr: oui voila https://en.wikipedia.org/wiki/Necronomicon

nicola: fhtagn !

Vry: :grimacing:

dbdr: //TODO //s.cooldown[Mine] = INITIAL_COOLDOWN[Mine];

Topinambour: bah justement magie noire et C++ ça me semble pas déconnant ...

dbdr: ah oui forcément... :D

Magus: via linkedin: "Pendant cette période de confinement ... bla bla bla ... Seriez vous intéresser pour venir travailler au Québec ?"

Magus: bah euh ... ils ont pas de confinement au québec ?

Zorg1: travailler au Quebec en TT en France comme résident au Quebec

Zorg1: c'est assez technique mais y a bien un avocat qui doit te monter ça

Zorg1: :p

RomanceDawn: j'imagine que quand t'es recruteur en TT t'as beaucoup de chose à faire à par spammer linkedin

Zorg1: bah pareil pour les boulots "relationnels", mon commercial m'a dit être à 50% d'activité

RomanceDawn: mwé

Zorg1: mais je continue à recevoir des mails de recruteur

Zorg1: après bon s'ils veulent un rendez vous ça va être compliqué

Zorg1: quoique via Skype

nicola: À propos de recrutement, que peut valoir un profil comme le mien ?

Zorg1: pour être franc je ne sais pas trop à quoi va ressembler le contexte économique dans un futur proche

Zorg1: j'ai l'impression que les recrutements risquent d'être gelés en même temps que pas mal de projets

Zorg1: (après je suis pê pessimiste)

thepianist59: salut tout le monde

thepianist59: ça va ?

Zorg1: hello thepianist59

thepianist59: petite question concernant la valeur torpedCooldown sur le challenge ocean of code. Elle représente bien le nombre de tours avant de pouvoir utiliser une torpille

thepianist59: ?

dbdr: thepianist59 à condition de la charger...

dbdr: le nom cooldown est mal choisi

Zorg1: oui c'est le nombre de charge manquante en fait

Zorg1: il faut que tu face un MOVE x TORPEDO pour le réduire de 1

dbdr: en plus l'UI montre la charge, c'est source de confusion

thepianist59: j'avoue que le nom est pas très bien choisi vu ce que je comprends maintenant

thepianist59: je vais modifier mon code du coup. La, il récupère chaque tour la valeur du "cooldown" donnée par le jeu, mais ... elle reste toujours la même, je vais voir pourquoi

dbdr: tu fais MOVE . TORPEDO?

Zorg1: bah parce que tu ne le charges pas simplement ...

thepianist59: oui, je n'ai que cela pour l'instant

thepianist59: du coup, si je comprends bien, il est également possible de bouger sans mettre aucune valeur de charge ?

Zorg1: ah t'es en wood 2 ?

thepianist59: wood 1 maintenant, je viens juste d'y arriver

Zorg1: la valeur de charge est obligatoire. Mais à partir du wood 1 tu peux charger autre chose que la torpille

thepianist59: j'avoue ne pas encore avoir essayé de charger autre chose

thepianist59: la première étape serait d'avoir mon sous marin qui torpille de manière aléatoire du une case accessible dès qu'il le peux

Zorg1: donc c'est un autre problème ;-)

Zorg1: elle vaut quoi la valeur du torpedoCooldown que tu récupères ?

thepianist59: 4

thepianist59: toujours 4

thepianist59: je la met à jour via une fonction qui met à jour toutes les valeurs du programme à chaque tour (position , cooldowns, y compris ceux que je n'utilise pas)

thepianist59: puis j'utilise ma fonction play qui concatène les résultat de deux fonctions , shoot() et move() (fonction très minimalistes)

Zorg1: euh 4 c'est plutôt le sonarCooldown on dirait, pas un pb de lecture des entrées ?

thepianist59: je viens de voir, je suis vraiment pas doué XD. oui, j'ai inversé deux arguments

thepianist59: je fais toujours ce genre d'erreur, genre j'arrivais pas à trouver pourquoi je me prenais les îles car dans un fonction, j'avais inversé un x et un y ... et je passe à chaque fois des plombes à corriger ce genre de chose

thepianist59: merci

Zorg1: oui enfin je te rassure ce genre d'erreur, ça arrive u_n peu à tout le monde ...

Vry: Même si on dit que tester c'est douter ... il faut douter un peu ! :p

thepianist59: et voilà tout marche XD

Zorg1: nice

thepianist59: il tire dans la zone accessible en évitant de tirer trop proche pour pas de tuer de manière aléatoire

dbdr: mon bot joue-t-il mieux quand il crash?

Stilgart: dbdr: grande question

Stilgart: AutomatonNN: fais-tu de meilleurs licornes après un crash ?

AutomatonNN: oui

Stilgart: Automaton2000; tue-le :D

Automaton2000: faut que je bosse sur un code qui compile pas

dbdr: Stilgart tu veux bien me marquer au fer rouge: "ne pas tirer de conclusions de moins de 100 matchs" ?

Stilgart: dbdr: nan, je les tires après 10 matches moi :(

dbdr: c'est super dur de pas le faire

Stilgart: oui

dbdr: nature humaine et tout

**Zorg1 mets les fers au feu ...

Stilgart: et pourtant avec moins de 1000 matches c'est juste nimp

dbdr: je savais bien qu'il avait un coté sadique Zorg1 :D

Stilgart: wow, il s'est passé quoi en gold

Stilgart: ?

Stilgart: j'ai gagné 15 places, et je suis passé devant certains qui étaient 40e

Stilgart: (en fait, j'ai retrouvé ma place de ~70e)

dbdr: un jour j'écrirai mon Last Battles alternatif

dbdr: avec classement raisonnable et écart types :)

Zorg1: j'ai l'impression d'avoir le même pb que dans CoK avec les maps où ton bot se comporte bien et d'autres où c'est pas ça

Stilgart: pareil

Vry: Stilgart ça bouge beaucoup au gré des submits ... hier j'ai réussi à faire 15, ce matin j'étais retombé 45 ... avec le même code

Stilgart: je regarde mes matches depuis vendredi et...

Stilgart: je gagne propre quand ça se passe bien

Stilgart: je perds salement quand ça se passe pas bien

Stilgart: mais j'ai aucune idée tour 10 de comment ça va se passer

Vry: Hier même j'étais 25 après submit, toute la soirée je suis (bien) monté jusqu'à atteindre #15

dbdr: et pourtant ya pas de feedback positif...

Stilgart: tiens, ThomasNicoullaud il est bien chaud là

ThomasNicoullaud: non t'inquiète

ThomasNicoullaud: run mouleux je vais vite rechuter

dwarfie: Stilgart ... les joies des classements random ... j'oscille de la 5eme a la 25eme de silver depuis 2 jours (avec des scores entre 21.5 et 23.5)

dbdr: LeChuck à 29.3, mais il est super bas!

dbdr: je l'ai vu à 32 :)

dbdr: ya eu de la déflation on dirait

Stilgart: ça fait 2j qu'il est vers 29

Stilgart: il était même à 28.9 au plus bas (de ce que j'ai vu)

dbdr: les promos ont du emporter des points avec eux

dbdr: *promus même

Zorg1: t'as quand même eux une trentaine de nouveaux gold depuis hier

Stilgart: d'ailleurs, c'est qui les 29 et 30e promus ?

dbdr: gamoul?

Stilgart: ha, il y a gamoul

Stilgart: XLP était 28e non ?

dbdr: pas sur de l'ordre

dbdr: amurushkin est là aussi

Stilgart: slyb il est là depuis quand ?

dbdr: Valdemar

dbdr: SlyB last submit hier

Vry: Boulet, c'était pareil hier Stilgart. Il était #15 mais il est retombé dans la nuit alors qu'il n'a pas tocuhé à son code arène depuis le 11

Stilgart: Vry: justement, il n'a rien à foutre en dessous de moi

Stilgart: et dabino non plus

dbdr: merci Skril

dbdr: 6 langages dans le top 10

Stilgart: ça prouve que je comprends rien à ce contest

dbdr: et 2 PHP en légende

leojean890: ThomasNicoullaud était à 0.1 du boss à un moment hier soir

Stilgart: zasmu est passé tout près aussi

leojean890: oui

Stilgart: je pensais le voir promu en me levant ce midi

ThomasNicoullaud: sérieux ? :'(

ThomasNicoullaud: foque

dbdr: tu te lèves à midi Stilgart? :D

Vry: Nan ThomasNicoullaud c'était une blague ...

Stilgart: dbdr: quand je me couche à 4h du mat, oui

Vry: ... tu étais à au moins 1.10 ...

Stilgart: Vry: il fait quoi ton bot ?

leojean890: ThomasNicoullaud c'était pas une blague hier t'étais vraiment à 0.1 à un moment

Vry: C'est à dire Stilgart ? Il yoyotte ...

**Stilgart avait souvenir d'un bot assez simpliste

leojean890: juste après ton submit

Vry: leojean890 lui dit pas ça, il va déprimer !!! Chut !

ThomasNicoullaud: erf

Stilgart: tu as codé des trucs depuis la dernière fois où tu as parlé de ton bot ?

leojean890: non ça va lui donner espoir :P

ThomasNicoullaud: il y a pas de justice

leojean890: ça veut dire qu'il PEUT le faire !

Vry: Stilgart, j'ai corrigé un petit problème sur la gestion des mines ...

Stilgart: ThomasNicoullaud: évite de faire comme moi à UTG :(

ThomasNicoullaud: avec le meme code déafois j'arrive meme pas top 20

ThomasNicoullaud: faut qu'on m'explique

leojean890: c bizarre j'avoue

Stilgart: Vry: ok, j'en étais resté à "je gère pas les mines"

Vry: commencer à trafiquer un peu l'éval. ... mais rien de transcendant

leojean890: purée j'ai un bon winrate contre le top 10 mais je n'y suis pas :P

Stilgart: ThomasNicoullaud: pb d'inertie

dbdr: ThomasNicoullaud à mon avis une bonne part de la variance vient de l'info incomplete

leojean890: last battles entre 90eme et 99eme match contre le top 10 j'ai qu'une défaite

Stilgart: ma vision c'est que c'est très très serré du top gold à la 50e place

Vry: Ok Stilgart, donc là je sais où elle sont et c'est pris dans l'éval. mais il doit manquer le coef. qui va bien

Stilgart: donc si tu fais un bon first 20, tu as une grosse inertie et tu fais top10 gold

dbdr: si tu tires qd tu penses que tu as un bonne chance, ben c'est vraiment du hasard

Stilgart: sinon, tu luttes dans la melasse

Stilgart: et tu ne montes pas aussi haut parce qu'il n'y a que 110 parties

Stilgart: (mais tu remonterais automatiquement en attendant 3j)

Vry: Ouais Stilgart, hier en plus j'avais des débuts de submit de ouf ... 10 victoires y compris contre le boss (mais sûrement des maps cool)

Stilgart: j'en ai faite une comme ça

Stilgart: first 20, deux défaites contre XLP qui était top2 gold (1 = le boss), et qqs vicoitres contre le top10

Stilgart: ensuite, je me suis pris 7 défaites d'affilée, ça a calmé mon bot :D

Vry: Là mon plus gros problème c'est d'anticiper les moves sur N tours ... car même si je sais où sont les mines au bout d'un moment mon bot à la choix entre deux cases foireuses de toute façon ...

Stilgart: j'ai pas de solution pour ça

Stilgart: on a trop de cases foireuses assez vite

Vry: ... mais plus important, où est ma motivation bordel !

dbdr: dans les bas fonds?

pb4: bah... trop de cases foireuses -> surface ?

pb4: non ?

dbdr: oui. je suppose le probleme c'est si tu anticipes pas que ça va etre foireux si tu fais tel mouvement

Vry: pb4 ... oui voilà ... si tu peux voir deux tour avant que tu vas sur une mine c'est toujours mieux ...

MrBib: Punaise, captain Iglo est pas mauvais ! :D

Zorg1: c'est le boss Bronze ou Wood 1 ?

MrBib: Wood1

Zorg1: thx

MrBib: Pour l'instant je bosse sur le parcours de mon SM, histoire de trouver le meilleur chemin sans tenir compte de l'adversaire

MrBib: (donc je me fais pas encore chier avec les actions autres que MOVE)

MrBib: mais dès qu'il m'a détecté, il me lache pas !

Vry: MrBib ... tu viedras essayer Cpt. LeChuck après ...

thepianist59: pour le wood 1, tu as trouvé une stratégie en particulier ?

Vry: *viendras

thepianist59: MrBib : je suis aussi en wood1, je viens juste d'implémenter le silence qui fonctionne quelque soit la distance, mais je n'ai pas encore optimisé mes déplacements

thepianist59: pas réellement d'idée de stratégie pour l'instant

ThomasNicoullaud: en faite mon code a un problème contre le mid gold

ThomasNicoullaud: si je le passe pas rapidement c'est mort

Vry: ThomasNicoullaud et ça doit dépendre aussi de la typologie de la map ?

ThomasNicoullaud: non mais si je reste bloqué dans les 50

ThomasNicoullaud: c'est fini

ThomasNicoullaud: j'ai des meilleurs winrate contre le top 10 que contre des mec 50-100

BigUP: c'est quand la fin ?

Vry: 05J 20H 01MN 07SC


thepianist59: le 20 avril je crois

BigUP: ThomasNicoullaud, classique...

BigUP: ca me laisse encore du temps pour remontrer top200 ... (grosse ambition)

Zorg1: fix ton ambition BigUp

BigUP: Zorg1, je ne sais pas encore si je vais passer du temps a coder ce qu'il faut pou rtaper le top200

Zorg1: je suis en train de recoder mon bot de mon côté

dbdr: from scratch?

Stilgart: Zorg1: tu as raison

Stilgart: je devrais recoder mon bot en C++ :/

dbdr: c'est les perfs qui te limitent Stilgart?

Zorg1: dbdr : bah oui, je me suis apperçu que ça devenait le bazar pour la refacto

dbdr: ya 50% de non-C++ dans le top 10...

Zorg1: mais je reste dans le même langage

dbdr: 0% dans le top 5, certes :D

Zorg1: s'il commence à y avoir de la simu d'un autre côté

Vry: "simu" c'est vite dit ... Pseudo BF plutôt avec éval. ?

pierre31: c'est possible de faire une simu pour ce contest, ça me paraît dur

pierre31: ?

thepianist59: Cela me semble compliqué sans savoir ou l'adversaire est au début surtout au vu de la taille de la grille

pierre31: oui une version hybride avec simu quand on connaît les positions

Vry: Après tu peux toujours simuler ... car tu arrives quand même à savoir où il est (à quelques cases près)

Vry: Mais dans un premier simuler son propre tour c'est déjà une bonne chose ! :p

Vry: 1. Une bonne détection

Vry: 2. Simuler son tour = gold

Vry: 3. Une bonne éval. = Légende ??? :D

thepianist59: la j'aimerais bien faire une bonne détection, le plus embêtant est que le sonar est restreint à un secteur

BlitzProg: Ca implique quoi simuler son tour?

Vry: BlitzProg, pas grand chose !

Vry: Tester toutes les combinaison d'actions possibles

Vry: Garder la "meilleure"

BlitzProg: Je suis pas encore sûr sur quoi je dois partir pour décider du meilleur coup.

Vry: BlitzProg, c'est bien le problème de tout le monde en fait.

thepianist59: si tu peux simuler un tour, tu peux trouver plus facilement la "meilleur" combinaison

BlitzProg: justement, définir le meilleur coup, c'est vraiment le gros point faible que j'ai

BlitzProg: x)

Default avatar.png nib: celui qui fait gagner !

thepianist59: le problème dans ces calculs est toujours la position de l'adversaire ... comment simuler quoi que ce soit, y compris son tour sans savoir ou il est

Vry: Tu peux déjà travailler sur tes déplacements, ton champ de mines :D, ...

Haashi: suppose le pire des cas

Vry: essaie déjà d'avoir la plus phase possible de move sans faire surface

Vry: En parallèle, fix ta détection :D

BlitzProg: le boss bronze timeout si je fait trop de silence :')

Vry: +longue

BlitzProg: ok x) j'essayerai de voir ça alors

Default avatar.png JBM: comment es ton re

dbdr: comment est ton JBM

Vry: fix ton Môrdi :D

dbdr: Môrdinateur?

Vry: Fix ton Groland ... dbdr

dbdr: siman qui se balade, 32pts à 30%

BlaiseEbuth: Yo tout l'monde ! Automaton2000, AutomatonNN !

Automaton2000: ça y est je suis en train de me dire

AutomatonNN: voila

jolindien: bon après glouglou à tous

jolindien: dbdr, on a dit pas de conclusion avant 3000 combats

dbdr: c'est trop dur :D

jolindien: :)

jolindien: gg wala

dbdr: trop tôt ;)

jolindien: au moins pour l'imprim écran ^^

wala: ca va retomber. J'ai relancé le même code

jolindien: purée, à ce point ?

dbdr: allez hop, au fer rouge!

jolindien: :innocent:

TidyMaze: je suis stupide, je cherchais des poils de cul à optimiser alors qu'a chaque tour je recalculais l'historique entier ... suffisait de juste appliquer les nouvelles actions sur l'etat precedent ...

jolindien: :rage:

wala: en fait non. j'ai modifié une constante

jolindien: du coup c'est un paramètre

wala: voila

wala: j'ai modifié un parametre

jolindien: y'en a marre de constantes variables

jolindien: *des

jolindien: en tout cas t'as trouvé une bonne valeur

zasmu: merci aux amis fangel et borisz

dbdr: gz zasmu!

MrBib: Vais-je réussir à sortir de la ligue Wood1 ? ^^

pb4: J'arrive plus à rien :'(

Vry: gg zasmu

Vry: Normal pb4, y'a plus de boss en légende ...

jolindien: take a break pb4

jolindien: série, soleil

dbdr: Vry le boss c'est siman en ce moment

MrBib: Fichtre, 15ème seulement, je monterais pas encore ce coup-ci ! ^^'

MrBib: Vous avez mis le paquet sur la gestion des déplacements, ou la détection de l'adversaire ? (ou les 2 ! :D )

Azkellas: gg zasmu

XLP: gg

Vry: détection d'abord MrBib ... mais fait comme tu le sens

MrBib: traquer ou tenter de fuir.... dur dilemne ! :)

BlaiseEbuth: Fuire c'est pour les robinets.

nicola: Comment rattraper un robinet qui fuit ? Faut s’entraîner, mon vieux, faut s’entraîner.

nicola: Un cookie à qui trouve d’où ça vient.

SeebOmega: je donne mon cookie au chat

SeebOmega: et comme je sais pas et que googler c est tricher

nicola: https://4.bp.blogspot.com/-ewdbFimub48/V6pWohFYO-I/AAAAAAAALX4/YO4VT7qsyoEK_UPoN2C8MsuxfQxS1ksiwCLcB/s320/ConcombreMasqueRobinet.jpg

SeebOmega: et ben je saurais un truc de plus avant d aller dormir

SeebOmega: et je serais moins gros vu que pas de cookie

pb4: this

pb4: crappy

pb4: code

ThomasNicoullaud: y a un vrai probleme en gold

ThomasNicoullaud: on est trop et il y a pas assez de duel par run

ThomasNicoullaud: meme avec un ratio 60/40 contre le boss

Zorg1: houa nicola sort des extraits du Concombre Masqué (afin je suppose vu que c'est signé Mandrika)

ThomasNicoullaud: faut espérer avoir bcp de chance pour démarrer très vite le top 20

Zorg1: *enfin

zasmu: ThomasNicoullaud, faut aussi faire gaffe de pas trop overfit contre le boss, parce qu'effectivement tu vas finalement faire assez peu de matchs contre lui

Palmipedus: oui le boss silver etait trop faible, maintenant on paye les pots casses ThomasNicoullaud

Vry: Le problème, c'est les autres ... :p

Zorg1: et ça fait plusieurs milliers d'année que ça dure ...

Vry: Fangel à 0.06

dbdr: PEBBAB

MrBib: punaise, dans l'IDE je bat le boss... et pas dans le leaderboard :'(

Palmipedus: oui il risque de passer dans pas longtemps

Vry: Il faut lui dire de resubmit ... :upside_down:

dbdr: le joli bouton jaune

MrBib: c'est ce que je fais... :D

Zorg1: pebbab ?

Zorg1: c'est une insanité ?

dbdr: problem exists between bot and boss

Zorg1: aaaaaahhhhhhh

Zorg1: je viens de sortir de la caverne et contemple le soleil de la vérité ;-)

dbdr: bienvenue

BlaiseEbuth: fix ton grotte

dbdr: c'est beau hein?

Zorg1: bon maintenant que j'ai regardé le soleil je vois plus rien, t1 Platon pas pratique pour un sou

Zorg1: :D

MrBib: il fait chier ce jeu.... j'étais censé bosser aujourd'hui, et dormir cette nuit

Zorg1: hé hé

dbdr: si si il y a pensé, c'est juste au début

dbdr: mais il y a des gens qui supportent pas le soileil / vérité et qui retournent dans la grotte

Zorg1: juste avant qu'il invente l'idée des lunettes de soleil ?

dbdr: :D

dbdr: Eureka!

Zorg1: oui bon je vais pas courrir à poil si tu veux bien

BlaiseEbuth: Ca veux dire "putain c'est chaud" en grec.

Zorg1: fix ta baignoire

Fangel: qui peut me pousser :) ?

BlaiseEbuth: De quelle hauteur ?

ThomasNicoullaud: tiens voila cadeau Fangel

Fangel: merci ThomasNicoullaud, me fais pas tomber maintenant ;)

ThomasNicoullaud: pas de risque

Vry: gg !

ThomasNicoullaud: voila tu m'en dois une

Fangel: merci beaucoup je t'en dois une :p !

ThomasNicoullaud: il parait ue j'étais a 0.01 hier soir

ThomasNicoullaud: du boss

Zorg1: c'est bon Fangel t'es légende ?

Zorg1: gg

Fangel: c est bon

Vry: Merci Fangel, on va tous gagner une place grâce à toi ! :)

Zorg1: si c'était aussi simple le ranking gold ...

XLP: gg :wink:

leojean890: ThomasNicoullaud t'étais à 0.1 pas 0.01^^

leojean890: gg Fangel !

nmahoude: le couteau, la plaie, tout ça tout ça

nmahoude: gg Fangel

nmahoude: (et grace à toi je viens de trouver un bug honteux)

Vry: Ne corrige pas nmahoude, ça marchera moins bien après.

nmahoude: oui, faut toujours corriger 2 bugs d'un coup :)

MrBib: Est-ce qu'il y a moyen d'augmenter la taille de la sortie console ? (mais sans faire disparaitre la partie graphique du jeu...)

BlaiseEbuth: La taille de la fenêtre ? ou la taille de l'output ?

MrBib: la taille de la fenêtre

BlaiseEbuth: Bah t'as pas un bouton pour l'agrandir ?

MrBib: si, mai ça cache le jeu du coup

Neumann: "sans faire disparaitre la partie graphique du jeu"

BlaiseEbuth: Ouai mais je sais plus comment ça se présente de base.

BlaiseEbuth: Tu codes sur le site ou dans un ide local MrBib

MrBib: sur le site

MrBib: enfin, j'ai une IDE, et je copie/colle le contenu (je suis sur le PC du boulot, Chrome accepte pas les extensions/apps....)

MrBib: :D

BlaiseEbuth: Alors je sais pas... En codant en local tu peux utiliser cgenhancer qui vire l'ide du site et mets la console à la place.

Zorg1: mais CGenhancer c'est une extension de chrome, non ?

BlaiseEbuth: Oui

MrBib: bon je vais devoir définitivement oublier l'idée de bosser et aller sur mon PC perso...

Zorg1: le pb de MrBib c'est qu'il a un Chrome bloqué controlé par son employeur

dwarfie: question con (sans doute deja posé au moins 10 fois) ... la reponse du sonar est générée avant ou après mouvement de l'ennemi ?

BlaiseEbuth: Zorg1, j'ai bien compris, c'était à titre informatif

nicola: Oui Zorg1, c’est bien du concombre masqué.

Zorg1: ty nicola

Zorg1: ok BlitzProg

Zorg1: ok BlaiseEbuth

Clemixid: la reponse du sonar est générée avant que l'ennemi bouge

ThomasNicoullaud: comme quoi passer le boss gold c'est de plus en plus dur

ThomasNicoullaud: Fangel arrive directe milieu legend

ThomasNicoullaud: alors qu'il en a tellement sué pour passer

Swagboy: Ah lourd

Nagatwin: ThomasNicoullaud moi j'ai pas submit depuis que je suis passé (enfin pas changé mon code) et jsuis classé comme lui

Nagatwin: et 24 c'est pas 32/2

ThomasNicoullaud: il a perdu 8 places depuis :D

Zorg1: encore un coup du boss gold

Fangel: en fait je trouve que c est surtout un jeu assez aléatoire

Fangel: le premier qui tire, s'il touche, inflige des dégâts à l autre et le trouve. Sinon c'est double peine.

BlaiseEbuth: T'as qu'à pas tirer

Fangel: du coup même si des IA ont un niveau très différent, tout peut arriver et il faut un grand nombre de partie pour voir apparaître l'avantage

ThomasNicoullaud: je suis d'accrod

ThomasNicoullaud: d'ou le probleme d'avoir 350 mec et que 100 games pour espérer battre le boss derrière

Fangel: Hier avec plusieurs submits de la même IA j'ai faire en or 9ème, 15ème et 2ème en restant quelques minutes au dessus du boss.

ThomasNicoullaud: t'as interet a avoir un gros début de run

ThomasNicoullaud: t'as fait une grosse feature aujourd'hui poour passer ?

ThomasNicoullaud: enfin bon j'aurai pu passer hier aussi apparaement

Fangel: en légende, les 20 derniers sont dans un mouchoir de poche avec quasi 50/50

ThomasNicoullaud: et et le meme code arrive pas top15 3 fois sur 4

Fangel: j ai surtout corrigé des bugs

Fangel: et j'ai remis les sonar que j avais retiré

Fangel: et rééquilibré mon eval

Fangel: Le plus compliqué est de faire le bon nombre de silence. Assez mais pas trop. C'est très puissant mais ça coûte très cher.

ThomasNicoullaud: tu l'as benchmark avant de le submit ?

Fangel: non j'ai jamais su faire :)

Fangel: enfin surtout j ai jamais pris le temps d'essayer

Swagboy: Aha oui, c'est pas bien compliqué

Fangel: donc je fais des parties contre le boss et je juge.

Fangel: mais comme tout le monde je regarde surtout les parties que je perds donc c'est dur de dire ce qui marche bien dans mon IA...

Swagboy: Oui, des fois j'ai l'impression que l'ennemi devine où je suis

Swagboy: Mais c'est qu'à force de regarder des défaites, on regarde bcp de parties avec un coup de chance pour l'ennemi

Swagboy: Genre 50 positions potentielle et une roquette en plein dessus

Fangel: ça me faisait ça quand je faisais péter mes mines du début trop tôt

Vry: Ouais, j'ai du pain sur la planche ... mais je vais y arriver bordel ! :p

BlaiseEbuth: stoi la planche.

MrBib: Bon je viens de battre le boss, on croise les doigts ! :D

smeagol: Salut

MrBib: Hello

smeagol: en fin j'arrive à gagner avec la capitaine Lechuck

smeagol: https://www.codingame.com/replay/449626806

GiB: J'ai un bon winrate contre le boss aussi, mais le matchmaking ne me met aucun match contre lui :(

MrBib: GG smeagol !

MrBib: Un bon timeout comme on les aime ! :D

smeagol: commen t arrive à le gagner ?

GiB: Je trouve qu'il est très frileux pour trigger ses mines, ce qui convient bien à mon bot qui ne tient aucun compte des mines adverses

smeagol: ici j'arive à tenir jusqu'à prolongation : https://www.codingame.com/replay/449627263

smeagol: il faut que change ma facon d'explorer la carte en prenant en compte les positions des mines de l'adverssaire

GiB: Je fais aussi pas mal de nulles qu'il aurait pu gagner: https://www.codingame.com/replay/449630043

smeagol: et un match null

smeagol: https://www.codingame.com/replay/449631191

smeagol: GIB STP est ce que tu peux de faire quelques matches avec moi pour voir si je suis facilement detectable car je ne pas encore ma trace dans les choix des mouvements

smeagol: en fait, je cherche pas les combats :grin:

Default avatar.png batmot: Hello ! (PAs sur que je sois au bon endroit) Mais est-il possible de désactiver les popup blanches d'aides qui me font clairement péter un plomb car beaucoup trop envahissante ?

Merci !! :)

BlaiseEbuth: stoi la popup.

BlaiseEbuth: T'as regardé dans les paramètres ?

Vry: Frame 156 tu le deviens mais sinon jusque là c'est pas mal smeagol ... https://www.codingame.com/share-replay/449634549

Default avatar.png batmot: @BlaiseEbuth ouais, il n'y a pas grand chose a part theme clair/sombre, mode normal/expert (qui ne change rien)

BlaiseEbuth: Le mode expert change des trucs sit, tu peux éditer les paramètres de jeu à la main. Mais, je parle des paramètres de ton compte

Default avatar.png batmot: Non plus

GiB: smeagol : tu peux faire des parties contre moi ou kovi (en legend), on MSG le nombre de positions et de chemins pour chaque joueur à chaque tour

Default avatar.png batmot: Je suis parti sur un autre puzzle et le comportement est différent. Elle se ferme quand on clique sur OK.

Bizarre mais sujet clos. Merci por la réponse !

BlaiseEbuth: Ah ! Si tu étais sur onboarding, c'est normal, c'est le "tuto"

smeagol: GIB: merci pour l'information

GiB: Mais c'est vrai que ce nombre inclut des positions jugées très improbables mais possibles. J'ai des cas où l'adversaire peut être à 5 endroits, mais un des endroits est à 90%

smeagol: commet tu fais?

smeagol: tu prends la case la plus répété ds le chemin ?

smeagol: tu un case parmi les ensemble des cases avec plus grand voisins?

GiB: Je regarde surtout s'il y a des trous dans le chemin adverse, ça indique souvent une île

GiB: Pareil si l'adversaire fait un mouvement inattendu, c'est souvent qu'il est devant un bord ou une île

GiB: Par exemple: https://www.codingame.com/replay/449641570

GiB: Frame 78, tu peux être à 16 endroits possibles, mais mon bot te voit à la bonne position à 72% à cause du détour que tu as dû faire à cause des îles

MrBib: Frame 126, pourquoi tu surface ?

GiB: Mon bot estime qu'il y a urgence à camoufler ma position, et surface permet grosso modo de faire croire que je suis allé au sud

GiB: (formellement, mon bot calcule mon nombre de chemins possibles 6 coups à l'avance, avec ou sans la surface)

smeagol: GIB: quand il y a une ile et qd il y a un changement de direction ?

GiB: Mais je vais modifier ça, parce qu'en pratique je me fais souvent punir par un sonar avant ces 6 coups

GiB: smeagol : plutôt sur le nombre d'options de mouvement adverses possibles. Par exemple, si l'adversaire fait un MOVE E, les chemins où il ne pouvait aller qu'à l'est deveinnent probables

GiB: Dans les autres chemins, il aurait pu faire un MOVE N ou un MOVE S

GiB: Bon évidemment cette logique est punissable si l'adversaire choisit son trajet en tenant compte de son camouflage

GiB: Si je passe legend je vais l'adapter

Swagboy: *quand ;)

YannT: j'ai laissé run un loooong test de 200 matchs par version de mon bot, et j'ai pu prouver de façon assez fiable que la meilleure version est celle de la semaine dernière :(

Swagboy: :((

Vry: Pendant ce temps j'ai enlevé 600 lignes de codes devenues obsolètes ... :)

Zorg1: t'en as combien maintenant ? plus que 1200 ?

Vry: 2531

Zorg1: ah oui quand même ...

BlaiseEbuth: dont 1000 pour parser les commandes adverses :grin:

Vry: 25Ko de marge ...

Zorg1: méchant BlaiseEbuth

Vry: BlaiseEbuth c'est faut : 7 pour les inputs

Vry: *faux

BlaiseEbuth: :p

RomanceDawn: est ce qu'on ressoit le MSG en INPUT ?

Zorg1: de l'adversaire ? non

dbdr: non

Vry: Et une vingtaine pour parser

RomanceDawn: ag dommage

BlaiseEbuth: Lel

Zorg1: je te dis pas la gruge sinon

Vry: Ouais, les négo. entre bots ...

RomanceDawn: ouais je pensaisà spammer des MSG TO

RomanceDawn: TORPEDO

Zorg1: je mets plein de smurf qui tombe face à moi

BlaiseEbuth: En vrai un contest où les bots pourraient communiquer ça pourrait être marrant...

Vry: Oui RomanceDawn pour tester la robustesse du parsing adverse ?

RomanceDawn: le mien dirait que des insultes

Vry: Tu voualsi faire des injections inter-bots

dbdr: Zorg1 disqualifié ;)

RomanceDawn: oui vry :smile:

Zorg1: genre je suis le seul à y avoir pensé, bien sûr ... :rolling_eyes:

**BlaiseEbuth sifflote

Vry: banduga s'énerve on dirait ...

dbdr: disqualifié pour celui qui le tenterait et serait un minimum visible

BlaiseEbuth: Bof... Z'ont qu'à parser correctement

Zorg1: bah vu le temps de réaction face aux doubles hulk tu peux aller en légende avant qu'ils bougent

dbdr: au passage, je le trouve un peu différent

Zorg1: ?

dbdr: double hulk c'est abuser d'un bug du referee

Zorg1: ah oui

dbdr: mais c'est visible et évident

BlaiseEbuth: Z'ont qu'à pas mettre de bug

dbdr: ezpz

Zorg1: finger in ze noze

GiB: Je n'ai pas le contest moba, c'était quoi le double hulk ?

GiB: Je n'ai pas fait le contest moba, c'était quoi le double hulk ?

Vry: Tu pouvais prendre deux fois le même perso alors que c'était "interdit" ...

BlaiseEbuth: hulk en l'occurence, donc montagne de ovs

Vry: ... et à priori le comba double Hulk est monstrueux

BlaiseEbuth: *pvs

Zorg1: faut demander à BigUP il avait essayé "par curiosité et pour l'intérêt scientifique" :D

Zorg1: mais sinon quelques uns étaient passés en légende avec

Zorg1: ça déménageait pas mal, bon c'était pas la stratégie la plus stubtile mais c'était efficace

Zorg1: sinon BotG était un contest complexe, tu choisisais 2 perso parmi 5 avec des compétences très différentes, et le referee était touffu à lire

GiB: Le boss semble éviter les matchs classés contre moi Lâche

BlaiseEbuth: D'ailleurs post-botg la doc de la création de contrib précisait (Et précise toujours d'ailleurs) : The game's core must be enough. No extra rules for the sake of complexity (e.g. no bonus pickups, no once-per-game boosts, no hero selection). :D

dbdr: rip CSB boost

Zorg1: Hero Selection dans CSB ? je choisis MK ! :D

dbdr: :D

BlaiseEbuth: :p

RomanceDawn: AutomatonNN j'espère que t'as acheté FF7Remake ? :angry:

AutomatonNN: oui j'ai pas compris ce que tu veux dire

RomanceDawn: et toi Automaton2000 ?

Automaton2000: mais à ce point là ?

Vry: C'est l'heure d'aller courir en même temps que tout le monde ... :p

Zorg1: toi aussi maximise tes chances de chopper le virus

Zorg1: quoique si tu cours avec un masque et des gants

BlaiseEbuth: T'as qu'à pascourir

Zorg1: enfin là où je rencontre plus de monde c'est surtout quand je fais mes courses, pas quand je vais me balader

BlaiseEbuth: T'as qu'à pas faire de courses

Zorg1: tu me ravitailles ?

BlaiseEbuth: T'es une chouette non ? Chasses...

Zorg1: qu'est ce qu'ils n'arrêtent pas de bouffer dans le nord ? des poireaux

BlaiseEbuth: C'est bon les poireaux.

Zorg1: ouaip j'suis une chouette, mais je stresse avec le confinement : https://imgur.com/a/sovyZdh

BlaiseEbuth: Moh... :kissing_heart:

TidyMaze: 80% de winrate contre le boss silver et je suis derriere lui :/

D4yBr3ak: fun fact, le boss silver ne fait que des silences 0

Zorg1: donc si tu traites pas les silences ça passe ...

YannT: je crois que j'ai atteint mon seuil d'incompétence sur ce contest

YannT: quoi que je te, ça ne fait qu'empirer mon bot :(

ThomasNicoullaud: tiens moi ca fait 10 jours

YannT: ce qui me fait dire que je suis au bout

YannT: c'est que là quand je regarde des replays je vois même pas de problème évident

TidyMaze: Zorg1 et D4yBr3ak faudrait pouvoir identifier que c'est le boss, mais y'a pas trop moyen. Si je desactive les silence pour tout le monde ...

YannT: à part des petits détails mais qui changent rien au winrate global

ThomasNicoullaud: regarde mes replays alors

ThomasNicoullaud: :D

YannT: https://www.codingame.com/share-replay/449727749

YannT: tous mes replays sont comme ça là

YannT: je perd à un poil de fion

RomanceDawn: t'evite les mines de l'autre ?

Zorg1: c'est mignon chacun reste dans son champs de mines ...

YannT: mais je perd

YannT: j'arrive pas à identifier ce qui cloche

BlaiseEbuth: Les églises, pour une bonne part.

Haashi: ton replay me donne un gout de voronoi

Haashi: me donne du coup des idées

RomanceDawn: faut pe la jouer plus bourin

Haashi: mais aussi la flemme qui va avec

reCurse: Ca semble passionnant dis donc

RomanceDawn: est ce que tu hide toi ?

Zorg1: ah ok il t'a touché une seule fois, le reste c'est les surfaces

YannT: bon celui là est un peu extreme mais ouais quand les 2 bots montent un chateau de mines ben tu vas pas dedans quoi

Zorg1: c'est vrai à côté les allocutions de Macron c'est vivant ...

YannT: https://www.codingame.com/replay/449737201

reCurse: Je voyais un peu ça venir dès que j'ai vu qu'il y a aucun counter play aux mines

YannT: après c'est vrai kovi il aime bien faire des chateaux

reCurse: Du coup c'est palpitant les games

YannT: ça dépend des maps en fait

YannT: si y'a des iles un peu partout ça fait pas des chateaux

reCurse: Ça change la stratégie tant que ça?

pb4: Oui

pb4: On prédit mal au long terme où on va

pb4: Avec des îles t'as vite fait de t'engager dans un couloir qui t'amène chez l'adversaire

pb4: et tu peux quand même pas faire surface trop souvent...

pb4: Par ailleurs avec des îles c'est plus difficile de se cacher

pb4: quand tu combines les deux... ça pète plus facilement :)

reCurse: Ça reste quand même poser des mines et faire son petit territoire?

RomanceDawn: ouais quand y a plein d'ile le silence est vachement moins efficace

YannT: bon après tu finis souvent avec une notion de "chez moi" et "chez lui"

reCurse: Ça me semble des détails avec les iles mais bon pour ce que j'en sais

Vry: Je pense que c'est l'idée

YannT: https://www.codingame.com/replay/449740030

RomanceDawn: puis les mines de l'adversaire faut les trouver aussi

Vry: Arrêtez de me pousser, j'ai rien à faire #15 Gold ... :p

RomanceDawn: viens vry, on est bien

Vry: Mais nan pas #15 à partir de la fin ...

Vry: :upside_down:

leojean890: purée je teste 10k trucs et rien ne me propulse à plus de 26.5

RomanceDawn: xD

Zorg1: faut tester 100k trucs #astuce

leojean890: et même pire, les 9/10 de mes tests me font baisser dans la ligue;O

reCurse: Non rendu là faut réécrire c'est connu

leojean890: sauf si je tire des conclusions hâtives

leojean890: car 100 matchs ça rank pas bien etc etc

leojean890: réécrire quand on en est à cjanger des seuils etc ?:P

reCurse: Si tu testes des milliers de trucs sans changement notable c'est que ta base est mauvaise

reCurse: C'est un peu comme un random search with restart

leojean890: hmm maybe :P

reCurse: T'es pris dans un minima local

Neumann: Ca dépend de la définition de truc. Si c'est changer un micro-paramètre ..

reCurse: À 10k trucs j'imagine que c'est pas à 300 lignes du truc quoi

leojean890: bah après quand je suis à 26.5 et le boss à 29 je me dis qu'il faut peut être juste un param ?

Neumann: Erreur classique

Neumann: YoBo: LA FURIA

leojean890: peut être :P

leojean890: j'en suis à faire des stats avec des submits..

leojean890: chaud quand même

reCurse: Pour voir le truc sous un autre angle

Neumann: CGBenchmark

reCurse: J'imagine que t'es à 10 ou 12 points du top

reCurse: C'est énorme

reCurse: Y'a plus que quelques params de différence

leojean890: 10 ou 12 ?

Neumann: Avant de viser le top Légende faut déja passer Légende

leojean890: non 29 - 26.5 = 2.5 :P

leojean890: pas 10 ni 12^^

reCurse: C'est pour mesurer les améliorations connues possibles

reCurse: Y'a un bon 10-12 points devant toi

reCurse: C'est plus des changements paramètres

reCurse: C'est que t'as pas la bonne idée

leojean890: dans mon submit actuel peut être, je parle de mon IA d'il y a 30 min :P

reCurse: Tu saisis pas

Neumann: La différence entre toi et le commun des mortels, reCurse, c'est qu'il suffit pas de le vouloir pour remplir le gap de level entre une IA et moyenne et une IA du top

reCurse: Y'a 10 points d'écart dans la ligue légende

reCurse: Donc il y a au moins 10 points d'améliorations devant toi

leojean890: faut déjà y aller en légende ;P

leojean890: ouais vu comme ça t'as raison !:)

leojean890: mon truc est pas parfait ;)

reCurse: C'est énorme au point que tu loupes plusieurs gros trucs

leojean890: c clair !

reCurse: Donc faut revoir

YannT: proche du toip les améliorations elles deviennent dur à trouver

reCurse: Oui

leojean890: ouais je galère perso hehe

reCurse: Parce que l'amélioration connue est rendue impossible à mesurer

YannT: toutes mes idées là se résument à "tout refaire mais pas pareil"

reCurse: Mais quand y'a 10-12 points devant toi

reCurse: C'est clair que t'es à l'ouest

leojean890: en tt cas c'esty clair que les dernières places sont les plus dures à avoir !

reCurse: Faut se mettre dans l'optique "je ferais comment si j'avais à tout refaire"

YannT: tu regardes les replays et tu vois pas trop ce qui va pas (bon des fois tu vois un if qui pourait exister, mais ça a tendance à rien régler à part une situation précise dans un replay et avoir quasi zéro impact)

reCurse: Mes conseils ne s'appliquent pas pour le top 10 au risque de me répéter

YannT: faut essayer de repérer ce qui peut améliorer au doigt mouillé

leojean890: ouais je regarde mes replays, déjà mon esquive des mines est approximative;P

pb4: le top 10 a déjà tout réécrit 10x, donc heureusement que le conseil ne s'y applique pas :o)

leojean890: hehe:P

leojean890: moi j'ai tout reecrit genre 1-2 fois :P

YannT: https://www.codingame.com/share-replay/449747024

YannT: tu vas dans le coin aussi :p

RomanceDawn: faut faire unbot adaptatif qui change de strat en fonction du terrain :smiley:

leojean890: ouais se bloquer en mode surface obligatoire c'est depuis que j'ai abusé mes params pour esquiver les mines

leojean890: mon test actuel classe 35eme

leojean890: mais bon

leojean890: jréfléchis ptet pas de la bonne façon pour amélio en effet

leojean890: j'en suis à la v49 sachant que je stocke une v lorsqu'il y a pas de regression sur le classement sinon je met des versions mineures :P

reCurse: Régression sur le classement hein...

reCurse: Erreur classique #2

leojean890: ouais je sais

leojean890: ne pas se fier à seulement 100 parties

leojean890: CG bench ça spécialise aussi trop sur qq ias par contre :s

leojean890: sinon faut regarder les cgstats de magus

reCurse: Y'a le nombre, y'a aussi les submits actuels

leojean890: et voir la variation sur chaque player

reCurse: Pendant ce temps y'a des dizaines qui font des tests aussi

reCurse: Ça perturbe quelque peu la validité du classement

leojean890: ouais je sais

leojean890: mais c'est chaud d'avoir une bonne métrique non ?:)

YannT: genre en légende aujourd'hui ton rank c'est ton winrate vs. siman vu qu'il chain push depuis ce matin :p

leojean890: mdr

reCurse: Déjà conserver des agents stable ça aide

leojean890: c quoi vos matriques favories pour savoir si une évol est une regression ou une amélio ?

leojean890: ah oui se baser tjr sur les mêmes

reCurse: Les mêmes agents

reCurse: Pas le même joueur, nuance

leojean890: oui donc des versions stables

leojean890: par ex un boss de ligue

YannT: cgbench 100 games sur top5 (mais je les met pas à jour avant d'avoir pushé pour pouvoir faire des comparatifs)

reCurse: Sinon d'habitude je joue pour gagner alors si ça met pas 60% à n'importe quoi faut commencer là

reCurse: Mais bon y'avait aucune manière de dire ça sans que ça fasse prétentieux

leojean890: t'es bien ranked dans CG toi j'avoue ;)

RomanceDawn: est ce que tu fait que les contests que t'es sûr de gagner

RomanceDawn: ?

leojean890: mettre 60% au boss c pas mal déjà

Neumann: C'est dur d'être sur de gagner quand tu commences

reCurse: Bah il demandait c'est quoi vos métriques favorites...

Neumann: Sauf si tu la joues "je play sur un smurf et je dégaine le main quand j'ai un truc solide", mais c'est une strat de pleutre ça

reCurse: J'ai fait plusieurs contests sur un smurf parce que j'avais pas envie qu'on me saoule

reCurse: Histoire d'avoir une idée du truc

reCurse: Après je décide si je m'y lance vraiment ou pas

Neumann: Sale pleutre

reCurse: Je vois vraiment pas le problème

reCurse: Déjà qu'on me fait chier dès que je fais des tests sur un contest

RomanceDawn: bah ... les conteste c'est toujours plus ou moins de la recherche oppérationel , les jeux ressemble souvent à 1 ou plusieur probleme connu ^^

Neumann: Je sais pas, j'ai pas les mêmes soucis de e-fame que toi

reCurse: Là n'est pas la question

leojean890: je vois xD

reCurse: Je demande ce en quoi ça t'importe

reCurse: Je peux voir pour le hiding à la rigueur

reCurse: Mais le smurf?

Neumann: Je sais pas, y'a pas de prise de risque si tu commences sur un smurf pour préserver les stats de ton compte

Swagboy: Tu as des soucis pour l'e-fame de reCurse, Neumann alors ?

reCurse: Je veux juste poker un peu le jeu en paix

Neumann: Swagboy: je t'invite à lire ma bio

reCurse: Sans qu'on me fasse chier

leojean890: mais j'avoue un submit n'est pas fiable ;P

RomanceDawn: :popcorn:

reCurse: Je vois pas le truc de prise de risque

reCurse: Si je sais même pas si je veux vraiment m'impliquer

Neumann: Bref, c'est pas très important

RomanceDawn: ouai

Neumann: T'as poke OOC du coup ?

reCurse: Oui

Neumann: Pas convaincu ?

reCurse: Je savais déjà au départ que j'avais pas la motiv de faire un 30 jours

reCurse: Peu importe le jeu

reCurse: Pour plein de raisons perso qui intéressent personne

leojean890: bah clairement c'est chronophage donc ça se comprend de pas vouloir y passer trop de tps

Neumann: On les devine, 30 jours c'est long

reCurse: J'ai déjà fait 3 mois à deux reprises :p

leojean890: y'avait des contests de 3 mois ?

reCurse: Déjà dans le contexte c'est un peu déprimant

Neumann: Ouais mais 3 mois c'est tellement long que tu peux te permettre de slack la moitié du temps, j'ai l'impression. Alors que 30 jours t'as forcément des mecs qui vont try-hard tout du long

Zorg1: leojean890 : Halite je crois, mais c'est pas un truc CG ;-)

reCurse: Dans les autres détails y'a aussi FF7 qui sortait vers la fin

leojean890: j'avoue ^^

leojean890: Hamite je connais pas :)

reCurse: Donc ce serait déjà 25-30h que j'aurais pas sur le contest

leojean890: Halite

Neumann: Ah, j'ai pas acheté de PS4 pour l'occasion, mais j'ai matté moult streams

Neumann: Très solide ce remake

reCurse: Ah ouais la barre est haute

Neumann: Enfin du pov spectateur

Neumann: J'ai du mal à imaginer leur roadmap pour le reste du jeu, et/ou comment ils vont développer le truc

Neumann: Parce que Midgar dans le jeu original c'est genre 15% du temps de jeu

reCurse: Ils auront pas le choix de faire un faux open world je crois

reCurse: Sinon ils vont se casser les dents

Neumann: Alors si on applique le même ratio .. Ca nous emmène loin

Neumann: Ca veut aussi dire que le jeu va passer sur PS5 à un moment

reCurse: En même temps ils pourront pas développer tout le reste à la même profondeur que midgar

reCurse: Déjà midgar il y avait énormément à meubler

reCurse: Le reste, pas tant que ça

reCurse: Contrainte tech aussi, c'est plus facile de rester sur le même genre d'environnement, pour commencer du moins

Spifflejedi: hello o/

leojean890: hello

reCurse: D'ailleurs je déménage le mois prochain alors je skip le prochain contest aussi pour les intéressés

RomanceDawn: Ils ont fait le remake avec UE4

reCurse: Je disais tech plus du point de vue leur pipeline de prod

reCurse: Que le moteur

RomanceDawn: ah

RomanceDawn: j'ai toute confiance en Square pour la suite, quand on voit l'équipe qui fait le remake ça fait rêver ^^

Spifflejedi: tite questions aux experts: suis bloqué dans les 150/200 Gold et j'ai l'impression que mon bot passe svt betement dans des champs de mines et perds des pv un peu trop facilement.. Vous avez une piste de travail sur cette problématique? j'ai essayé de construire une liste des mines possibles mais tant qu'on a pas la position du joueur je ne vois pas comment faire et du coup je loupe toute les mines posées avant de détecter l'adversaire..

reCurse: Bah c'est clair qu'ils ont mis la crème là-dessus

reCurse: Ils ont énormément de respect pour l'original

YannT: Spifflejedi: tu sais où il peut être

YannT: (cela dit je crois pas qu'il y ait besoin d'éviter les mines à ce niveau, tu dois avoir d'autres trucs plus évident à gérer avant)

leojean890: Spifflejedi tu peux te baser sur les différentes localisations potentielles de mines en fonction de ses différents chemins avec des probas (c chaud de le gérer parfaitement)

Neumann: Ils ont pas switch de moteur en cours de route ?

Neumann: J'avais cru comprendre qu'ils avaient commencé sur le moteur fait maison qu'ils avaient dev pour FF15

reCurse: Je crois oui, mais je me rappelle plus quand

reCurse: Ils avaient commencé sur Luminous

reCurse: Après un UI japanese-only ça rend le outsourcing un peu difficile, il parait ;)

Neumann: C'est pas des équipes 100% nippones Square ?

R4N4R4M4: Salut tout le monde

reCurse: Je serais étonné mais je sais pas

Zorg1: o/ R4N4R4M4

Neumann: C'est sans doute naif de penser ça en 2020 ceci dit

reCurse: Avec le japon tout est possible

reCurse: La question ne se poserait même pas partout ailleurs

RomanceDawn: En fait il ont commencer à devait avec Cyberconect2 et ensuite ils sont revenue en full interne

RomanceDawn: le Luminous je crois pas qu'il ai fait grand chose dessus, ils avaient commencer le dev de KH3 puis ils ont vite abandonner

RomanceDawn: Le Liminous est dédié à une nouvelle IP

Neumann: Y'a que 3 jeux qui tournent sur le moteur si j'en crois Wikipedia. Pas très rentable comme opération

Magus: perso j'ai juste lu que dans le remake on se déguise pas en fille pour manquer de se faire violer dans une cave SM glauque

Magus: donc je toucherais pas à ce remake, nah

reCurse: Bah FF15 déjà

Neumann: Bah si Magus

reCurse: Euh Magus

Magus: ah ?

Neumann: T'as le Wall Market, tout pareil

reCurse: La scène de crossdressing

RomanceDawn: bah le moteur est pas fini et vue le desastre FF15 qui est une demo techniques

reCurse: Tu penses qu'ils éviteraient en 2020

reCurse: Mais ils ont redoublé le truc d'ampleur

reCurse: C'est hallucinant

Magus: oh, je croyais qu'ils voulaient la supprimer

Magus: fausse rumeur alors

Magus: mince

Magus: j'ai plus d'excuse

reCurse: Au contraire

reCurse: Ils ont mis le paquet

RomanceDawn: Le japon en a rien a faire de #metoo

RomanceDawn: je pense ^^

Neumann: Ils ont grossi le trait sur Don Corneo

reCurse: Limite malaise

Magus: au contraire la scène est bien. ça te montre quand même un héros badass qui se déguise en fille pour arriver à ses fins

Magus: et franchement je connais pas d'autres RPG qui ont fait ça

reCurse: Je crois que c'est plus le côté objectification assez in-your-face

reCurse: Qui ferait hurler plus d'un

YannT: quand je lance cgbanchmark maintenant je ferme vite le terminal sinon je scotch dessus à attendre de voir de quel côté tombe le [ME]

YannT: traumatisme

YannT: (et du cuop après j'oublie que j'ai lancé le cgbenchmark et je me fache quand j'ai le message rouge sur un seul exécuteur dans l'IDE aussi)

YannT: quelle vie non mais quelle vie

Neumann: Haha

MrBib: Est-ce qu'on peut lancer une torpille en même temps qu'un Surface ?

Zorg1: dans la même liste de commande oui

Fangel: hum en fait le jeux résout ta séquence entière. Elle peut contenir un ordre de chaque type

Zorg1: après elle va pas avoir vraiment lieu "en même temps"

Zorg1: tu peux lancer la torpille avant ou après ton surface

Zorg1: voir après le mouvement que tu fais après ton surface

MrBib: on peut cumuler un SURFACE et un MOVE ? :o

Zorg1: tu peux même faire un SURFACE suivi d'un SILENCE, puis d'un MOVE et enfin une TORPILLE

Zorg1: oui ce sont des ordres différents

Zorg1: *des actions

Zorg1: si t'as les points, tu peux balancer toutes les actions dans un même tour (après savoir si c'est pertinent, c'est une autre paire de manches)

R4N4R4M4: Tiens, on peut finir avec -1 life ! https://www.codingame.com/replay/449782048

YannT: oui si crash ou timeout

MrBib: Punaise, j'avais pas percuté qu'on pouvait tout chainer sur la même output !

R4N4R4M4: ah ok merci YannT

Zorg1: et l'ordre des actions est important MrBib

Zorg1: le referee va les exécuter dans cet ordre

dbdr: R4N4R4M4 c'est bien joli de mettre des mines partout, encore faut-il les exploser de temps en temps ;)

BlaiseEbuth: Tiens j'avais pas vu. Tchernobyl brule... Fallait bien ça pour achever ceux qui survivraient au virus... :grin:

Zorg1: flood fill avec des mines

R4N4R4M4: LOL dbdr, je debugge mon élagage, et comme il marche pas encore, je sais pas où est l'ennemi

Fangel: Bon c est quand même 99,9 % les survivants au virus...

BlaiseEbuth: Pour l'instant... :evil:

Zorg1: il arrive quand l'antéchrist ?

Zorg1: il est confiné lui aussi ?

BlaiseEbuth: Bah nan, j'suis là...

Zorg1: et la bête de l'apocalypse ? elle a mangé une saloperie, elle est malade ?

Zorg1: faut bien les nourrir vos truc, sept têtes ça bouffent ces trucs

Zorg1: ou 6 têtes plutôt d'ailleurs

BlaiseEbuth: J'te raconte pas le côut en croquettes...

Zorg1: ah ça on veut un truc pour la frime et on assume pas

Zorg1: d'ailleurs on n'en parle plus du Leviathan et du Behemoth

dbdr: je regardes ailleurs 5 minutes, 35 en légende :O

Zorg1: z'en avait fait des croquettes pour votre bête ?

BlaiseEbuth: C'était mes précédentes partie sur le tamagoshi ça... J'ai perdu...

Zorg1: :D

Fangel: et ou dbdr... Il fallait choisir un meilleur champion pour garder la porte !

dbdr: trop facile ce boss

Fangel: on sait qui c'était ?

Fangel: il avait du random le bougre !

dbdr: wlesavo

R4N4R4M4: Et un bug de moins, je faisais péter ma liste d'actions... 124 actions possibles sur cette partie avec les triggers :D

R4N4R4M4: https://www.codingame.com/share-replay/449795850

R4N4R4M4: C'est pas ça qui va me faire gagner des places, j'avais prévu 120 moves

R4N4R4M4: Bon, retour à mon élagage (jour 2) :(

D4yBr3ak: omg ta tellement de mines

R4N4R4M4: Ouais, c'est pour tout faire péter d'un coup à la fin :D

Zorg1: la réaction en chaîne ça marche pas ici :p

D4yBr3ak: oui mais t'en fais rien c'est dommage

Zorg1: sinon oui la map en feu c'était fun

R4N4R4M4: C'est mon élagage de chemin qui marche pas encore, du coup je réinit, et je sais pas où se trouve l'adversaire, du coup, ça me donne une idée de comment joue mon bot de façon passive

R4N4R4M4: j'avais pas prévu qu'il pose autant de mine par défaut, ça me va :D

Azkellas: coucou tout le monde

Fangel: R4N4R4M4 tu devrais faire des sonar à partir d un certain nombre de mines...

R4N4R4M4: Ah oui, pas bête, je note, merci Fangel

Vry: Ou utiliser des mines comme sonar ... :p

R4N4R4M4: Ca je le fais déjà Vry

Zorg1: bah non aucune n'explose ...

Vry: Que fais-je #13 ... :D

Azkellas: Ca a bien progressé dans le top gold nan ?

R4N4R4M4: Tiens des explosions Zorg1 :D https://www.codingame.com/share-replay/449807147

Fangel: le top gold c est très simple Azkellas, tu submit jusqu'à être dans le top 5 et tu patientes pour qu'on te pousse :)

Azkellas: Bah hier soir j'étais 12, et là en revenant à l'instant 30 et quelques, d'où ma question, je pense pas avoir si good run que ça hier

Fangel: pour moi ce jeu a une part d'aléatoire plus important que les autres. D'où la grande variabilité des rankings.

Fangel: mais n'hésites pas à re-submit plusieurs fois Azkellas

Vry: Moi Azkellas, j'étais 45 ce matin, je resubmit pour me retrouver 30 et là je suis 13 ???

Vry: Les spammeurs me font "avancer" ...

Azkellas: A chacun sa fortune Vry :D

Azkellas: Boarf Fangel je vais surtout améliorer mon ia toute pourrie

Vry: L bot de Boulet qui n'a pas changé depuis le 11 a suivi un peu le même trajet ...

Vry: Y'a pas mal d'activité la haut ...

Boulet: il fait le yoyo on bot

Boulet: et je le laisse faire

Boulet: je n'arrive pas a me remotivé

Boulet: ThomasNicoullaud: tu es reproductible ou pas ?

Boulet: Vry : meme question

Boulet: bon aller submit

Vry: Oui

Vry: Déterministe à 100% :p

Vry: Bon je vais tenter de prendre la vague, y'a une grosse quantité de submit qui arrive !

Vry: Il faudrait que je coupe CG et que je travaille sur mon bot ... car de toute façon en l'état même si ça yoyotte enntre 15 et 40 c'est pas suffisant.

Vry: Boulet, oui déterministe et mon bot ne changera plus aujourd'hui

Boulet: putain je savais que je n'aurai pas du submit

Boulet: ....

Boulet: -300 places

Vry: En gros aujourd'hui j'ai améliorer mes logs du champ de mine ... virer 600 lignes de code (des trucs bronze devenus inutiles) et juste corrigé un petit truc sur le choix du power à utiliser dans un cas qui ne doit se produire dans 1 ‰ des parties

Vry: Donc clairement le classement actuel est très très très mouvant ... faut juste avoir un bon first 10 pour arriver dans le top 50

Boulet: 75% de victoire sur 45 game et je suis 110

Boulet: c'est quoi cette arnaque

Vry: Je suis bon en snipe https://www.codingame.com/share-replay/449825684 mais nul en champ de mine https://www.codingame.com/share-replay/449826225

Vry: Deux parties totalement opposées ...

Boulet: gg et boooooo

dwarfie: 75% de victoire sur des gros nuls ... voila tout :D

Boulet: non mais apres 15 vicoires d'affiler on pourrait imaginer que je monte

Vry: et puis quoi encore Boulet ! :p

Boulet: en score

Boulet: pas de ligue

Boulet: C'est combien un run ?

Boulet: combien de parties ?

Vry: Boulet, arrête de me pousser ! :)

Vry: https://www.codingame.com/share-replay/449423308

Boulet: tu ne va pas pleurer ?

dwarfie: :sob:

Vry: Si, je vais verser une larme ... de joie ...

Vry: Flûte, sur le replay précédent je n'ai que 20 mines de l'adversaire alors qu'il en a au minimum 28 ...

ThomasNicoullaud: j'en peux plus

ThomasNicoullaud: j'ai un meilleur ratio sur les gens du legend que le boss gold

Boulet: on s'en fout du nombres de mines effective

ThomasNicoullaud: http://chat.codingame.com/pastebin/56316a50-ffee-47e1-8bf9-8821ee03730e

ThomasNicoullaud: il me rend fou ce boss

Vry: En effet, c'est le seul qui te résiste ...

jolindien: ThomasNicoullaud, tu mets bien à jour les agentId dans ta config ?

ThomasNicoullaud: hum ils ont 3h max

ThomasNicoullaud: donc ils sont pas hyper frais

jolindien: ok, c'était pour être sûr

ThomasNicoullaud: mais bon le décalage est ouf :/

jolindien: (je me suis fait avoir)

Swagboy: Oui pareil ThomasNicoullaud, je peine à dépasser les 30%

ThomasNicoullaud: en faite il faut anti strate le top 10 du moment si je veux passer

Vry: En gros guerre de territoire via champs de mines ...

GiB: J'aimerais bien arrêter d'être matché contre YoBo (~10% wins car son algo de détection hard-counter mon algo de mouvement) et prendre des points au boss

Comment est fait le matchmaking ?

Vry: + ou - 10 autour de toi

Vry: Sauf au démarrage

Fangel: le point faible du boss c est le end game je pense

dbdr: ThomasNicoullaud tes 28% sur 7 matches, ça fait un intervalle de confiance entre 3% et 70%

Fangel: genre quand il n y a plus de secret sur la case

dbdr: autant dire très peu d'information

dbdr: (intervalle à 95%)

Vry: Comment tu calcules ça dbdr ... je suis nul en stat. :D

ThomasNicoullaud: non mais c'est comme ca depuis 2 jours dbdr

ThomasNicoullaud: j'ai juste copier / coller le run en cours la

dbdr: Vry https://statpages.info/confint.html par exemple

ThomasNicoullaud: mais bon de toute façon j'ai un problème plus global que le boss la

Azkellas: Si t'estimes avoir 50% de WR Vry ça te donne [0.5 - 1/sqrt(N) 0.5 + 1/sqrt(N)] en intervalle, avec N le nombre de games

YannT: ah, je vais le mettre dans mon eval

Azkellas: Et t'as pas 50% c'est 2*sqrt(p(1-p)/n)

Azkellas: si t'as pas*

Azkellas: avec p la proba de gagner et n le nombres de parties

Vry: Ok ... je prends note ... même si c'est du chinois pour moi ... :)

Fangel: attention YannT, quand l eval est plus grand que le reste du code c est pas bon

YannT: ça peut pas faire de mal

Azkellas: https://fr.wikipedia.org/wiki/Intervalle_de_confiance pour plus de détails

dbdr: ThomasNicoullaud mon conseil: fais un break, prends du recul

dbdr: ya le temps

dbdr: vaux mieux identifier un truc fondamental à faire, voir juste simplifier ce que tu fais déjà

YannT: ou sinon tu fais 2*sqrt(p(1-p)/n) où p est le nombre de chemins de l'adversaire et n l'age de la mère de siman

YannT: j'en suis là

Azkellas: En roue libre le YannT

ThomasNicoullaud: y a un avantage a démarrer ?

YannT: non, tu vas mourrir et ton sousmarin il est idiot

YannT: (je projete un peu peut-être)

Boulet: clairement

Boulet: un sous marin ne peut par etre idiot

Boulet: son pilote eventuellement

Vry: boulet, arrête de me battre :p

Boulet: TROP PAS

Boulet: oups

Boulet: caps lock engagé (vry aussi :) )

Vry: Razielwar : timeout (ou autre) ...

Vry: https://www.codingame.com/share-replay/449850179

Vry: Pas mal Boulet, même code ?

leojean890: je devrais suivre les conseils et faire mes tests avec des agentID constants au lieu de submit, d'autant plus que c'est le gros bordel la gold là, de plus en plus ;o

leojean890: plus ça va et moins on peut tirer d'informations des submits tellement c'est de moins en moins précis

Fangel: c est quoi un agentID ?

leojean890: c un nombre associé à un submit

leojean890: d'une personne

leojean890: pour être sûr que ton code évolue tu bench sur les mêmes agenID

Fangel: ah oui mais tu peux les récupérer ?

leojean890: sur le site cgstats

leojean890: http://cgstats.magusgeek.com/app/ocean-of-code/leojean890

leojean890: avec username à la fin

Fangel: ah c est bien ça

leojean890: ça fait des tests plus carrés si tu les fais tjr sur les mêmes pour être sûr de ton evol (exemple prendre l'id du boss)

leojean890: sur ce site tu vois ton winrate contre tlm

leojean890: mais elle devient relou la gold

leojean890: c'est impossible de savoir si une évol est bien ou pas c un truc de fou ;o

leojean890: rand100matchs()

Fangel: mais ce que je ne comprends pas

Fangel: c est que le site ne fait qu indiquer les stats

Fangel: tu ne peux pas piloter des matchs avec

Zorg1: ah zut l'inventeur du "Jeu de la vie" est mort du Coronavirus :(

leojean890: pour les piloter faut utiliser cgbenchmark

leojean890: c un de mes todos de l'utiliser au lieu de submit et d'utiliser l'ide

Vry: Zorg1 ... c'est la vie ?

ThomasNicoullaud: Benchmark sur ce contest c'est l'horreur

Vry: :D

leojean890: https://github.com/s-vivien/CGBenchmark/releases

ThomasNicoullaud: je sais pas combien de game il faut

leojean890: mais benchmark comme submit c'estpas clair

leojean890: c impossible de savoir si ce qu'on fait est bien ou pas là

YannT: je fais 100 sur le top5

YannT: à 10% près ça donne quand même une bonne idée

leojean890: Fangel tu peux choisir contre qui play 100 games avec ça

Fangel: ok merci

leojean890: ouais mais en gold c moins évident YannT

leojean890: car c le bazar

YannT: ben tu prend le top4 gold + boss

Vry: https://xkcd.com/2293/

Fangel: j avais failli l utiliser sur le dernier contest et j ai eu la flemme finalement

leojean890: ouais c une bonne approche

YannT: (par contre faut pas prendre juste le boss)

Zorg1: vry : ouaip je viens de l'apprendre aujourd'hui

Vry: Zorg1 ... tu viens de me l'apprendre !

leojean890: mais avant le top c'est devenu un capharnaum

Topinambour: j'avais pas vu le truc de XKCD

Zorg1: ok

Fangel: là il faudrait que je me motive à coder le kill move

RomanceDawn: me souviens du jeux de la vie, on l'avait fait en première année

Vry: Fangel, osef tu es une Légende ! :p

Fangel: ah Vry le jeu ne s'arrête pas là !

Fangel: y a pas de tee-shirt à gagner ?

Vry: Si je passe le boss, j'arrête ! :p

leojean890: de tte façon il reste que 5j

Fangel: oh tu le passeras c est sûre

Fangel: t étais pas loin

leojean890: j'y crois de moins en moins à la légende perso

ThomasNicoullaud: Vry pareil, mais j'y crois plus

leojean890: j'ai été plusieurs fois dans le top 5 gold ces derniers jorus mais trop loin du boss à chaque fois

Fangel: il faut bosser sur le duel contre le boss

Vry: J'ai vendredi, samedi et dimanche où je vais pouvoir bosser à 100% dessus ... :D

RomanceDawn: aprés le post mortem maybe

leojean890: enfin 5eme

Fangel: je veux dire le moment ou les positions sont connues

Fangel: c est son point faible

leojean890: et je dépasse pas 26.5

leojean890: et mes idées d'évols sont moyennes

leojean890: j'y croyais de ouf jeudi/vendredi dernier car mon rank global était entre 14 et 24

leojean890: quand ils ont pris le boss déjà j'y croyais moyen

leojean890: et en plus mes idées ne suffisent pas

Fangel: fait voir un de tes matchs contre le boss (où tu perds)

leojean890: j'en ai pas dans mon last battles mais je peux en générer avec ide et conserver les replays je crois ?

leojean890: mon submit est pas allé jusqu'au boss là je suis #12

Azkellas: tu peux

Fangel: certainement. C est juste pour voir si y a quelque chose qui saute au yeux à améliorer.

leojean890: ah oui je peux filer un replay

leojean890: de l'ide avec le bouton partager

leojean890: bah j'ai qq problèmes avec le compromis esquive des mines / surfaces intempestives

YannT: ah ben moi aussi tiens

leojean890: https://www.codingame.com/share-replay/449866882

leojean890: hehe mais toi t'es légende :P

leojean890: dans le replay que je file il est pas trop mauvais en esquive de mines mon bot

Fangel: ah oui tu bouffes toutes les mines en fait

Fangel: en fait être sur une case à risque c est pas dramatique si tu as une grande discrétion.

YannT: t'aurais du surface à la fin là t'as un peu fait pokémon attrapez les tous avec des mines

leojean890: à la fin il les prend mais avant il esquive bien

leojean890: mais je devrais ptet surface parfois ouais

leojean890: juste ma fonction d'éval me fait les fuir

leojean890: mais quand j'ai pas le choix je vais dedans

leojean890: quand j'ajoute les surface je perds du winrate

leojean890: mais bon

Fangel: en fait le problème c est que au début tu vois des mines partout puisque tu ne sais pas où est l autre

leojean890: je devrais juste le soumettre à conditions (déjà essayé mais seulement avec condition sur la vie)

Fangel: moi je somme pour chaque case les dégâts potentiels de mine qu'elle peut recevoir

leojean890: mais quand je mettais surface pour esquive mines avec condition sur ma vie et la sienne pour le faire je eprdais en winrate. c ptet un point à creuser mais à faire plus finement

Fangel: puis je divise par le nombre total de mines de l autre

Skril: Dépassement de tableau, je n'avais pas anticipé autant de mines dans un run ;) https://www.codingame.com/replay/449855854

Fangel: Skril tu pourrais essayer de faire un dessin joli au moins !

leojean890: sommer les degats potentiels c pas mal ouais

leojean890: moi je somme le nombre de chemins dans lesquels il y aurait des degats

leojean890: mais sans distinguer 1 et 2

leojean890: donc toi c'est plus précis ce que tu fais

Fangel: de chemin ?

leojean890: ben dans les chemins potentiels de l'adversaire je regarde si la mine serait ici ou pas

Azkellas: Ah joli Skril

leojean890: pour chaque chemin en gros je considère 4 positions pour chaque mine

leojean890: et je vois si on retrouve fréquemment ou pas cet emplacement de mine

leojean890: si bcp de chemins

leojean890: mais faire ça avec les dégats potentiels comme toi c'est mieux

Fangel: oui ben c est bien, moi je garde en mémoire la case de pose juste, c est plus facile à retirer les mines qui ont explosées.

leojean890: ouais pareil

leojean890: je garde les cases de pos

leojean890: mais chaque tour je crée en plus une carte des cases impactées

leojean890: et après je seuille

leojean890: pour pas toutes les prendre en considération

Fangel: ah tiens tu me donnes une idée d amélioration

leojean890: selon le nombre de cases impactées en tout et le nombre de chemins qui les impacte, je considère ou pas

leojean890: ah cool:)

leojean890: car parfois on a genre 40 chelins, 10 mines donc enormément de cases impactées

leojean890: et je prends les plus probablement à risque

Fangel: tu as des probabilités sur tes chemins ?

YannT: je fais mon push bi-annuel

leojean890: ah non d'ailleurs ça c'est bien aussi j'y avais pensé :s

leojean890: certains chemins sonbt plus probables que d'autres

leojean890: moi mon set vire les equivalents je pense

leojean890: à vérifier en python si un set contient des listes de listes s'il les considère comme des doublons car structures complexes

leojean890: je pense que oui

leojean890: s'il les virait pas en fonction du nombre de chemins identiques ça gèrerait la proba naturellement

ThomasNicoullaud: moi je joue au loto

ThomasNicoullaud: je change des constantes au pif et je pousse

leojean890: mais clairement mon truc est pas parfait....

ThomasNicoullaud: et je loose

ThomasNicoullaud: while(true)

leojean890: en vrai j'ai tendance à trop me baser sur le winrate obtenu après un submit

YannT: ah ben pareil là, mon push est bien parti puis pouf

Fangel: non mais je pense que la probabilité de chemin c est pas terrible. Il faut mieux garder l esprit pire cas.

leojean890: ouais le pire des cas

leojean890: mais c chaud de savoir quoi considérer comme étant une mine ou non

leojean890: imagine : 40 chemins possibles pour l'adv et il a posé 10 mines..

leojean890: quoi esquiver ?

Vry: Toute la map ... :p

leojean890: moi j'ai mis en place une logique mais bon...

leojean890: avec des seuils

leojean890: et je surface jamais pour esquiver

Vry: Mais une fois la partie lancée ça va s'affiner

leojean890: alors que parfois ça serait mieux que s'engouffrer

leojean890: dans un champs de mines

Fangel: déjà pars du principe que tant que t as au moins 12 cases de discrétion, l autre ne fera pas péter ses mines (seuil à ajuster)

Fangel: s il fait péter trop vite, tu peux éliminer tous les chemins qui n ont pas cette mine et il y perd beaucoup.

leojean890: ouais c bien ce genre de raisonnelents :)

leojean890: eliminer les chemins sur triggers je le fais

leojean890: sauf si surface ou reset des paths pour spammers silences

Boulet: Fangel: dangereux comme raisonnement

leojean890: mais ouais après certains font péter avant

leojean890: c'est des raisonnements probabilistes

YannT: https://i.imgur.com/xMRn2B5.png

YannT: il marche bien mon bot je suis content

leojean890: ça dépend contre qui on joue

Fangel: Boulet: moi j ai rapidement mis un frein à faire sauter les mines trop vite. Ca me coûtait trop cher.

Boulet: surtout on peut imaginer qq qui ferait peter a partir d'un certain seuil de presence

Fangel: YannT, t aurais pu passer me voir au moins....

leojean890: pareil je les fais pas sauter trop vite

leojean890: mais en gold y'a de tout

Fangel: oui mais après il faut accepter de perdre quelques matchs au début... En top 20 gold y a plus "un peu de tout"

Boulet: ceci dit je devrait peut etre remonter un peu mon seuil d'explosion

Fangel: bon je dois aller dormir moi. A plus !

Boulet: bn

Zorg1: a+ bn

leojean890: ouais c vrai c'est à vérifier

leojean890: bonne nuit :)

BlaiseEbuth: Dormir c'est pour les faibles

leojean890: xD

lhm: C'est le café des faibles

Boulet: +1 BlaiseEbuth

Zorg1: comme dirait qui-vous-savez à ce sujet : https://imgur.com/a/IyHNfZ2

Zorg1: (repompé d'un truc de dbdr)

BlaiseEbuth: :grin:

Boulet: :door:

leojean890: valcodi pas de submit depuis gold mais 5eme gold hehe

leojean890: passer légende ainsi ce serait pas mal ;o

Default avatar.png ThePhantomPandaOfWisdom_6bdc: Bonsoir

Default avatar.png ThePhantomPandaOfWisdom_6bdc: [alpha[ligne][:]=row[i:i+l]) for i in range(0, len(row), l)]

Default avatar.png ThePhantomPandaOfWisdom_6bdc: ça vous parrait abbérant comme ligne de code en python ?

BlaiseEbuth: le smiley est pas standard.

YannT: ça me parait pas normal mais ça doit etre parce que je coinnais pas le python

Default avatar.png ThePhantomPandaOfWisdom_6bdc: Ah :grin:

BlaiseEbuth: *Pas standard en python, en emojicode ça va

leojean890: wow complexe ta ligne xD

Boulet: le python c'est pas normal

leojean890: je vais jamais jusqu'à la moi :P

Default avatar.png ThePhantomPandaOfWisdom_6bdc: Je veux pas d'exercice qui n'est pas à 0%

Default avatar.png ThePhantomPandaOfWisdom_6bdc: 100% *

leojean890: GiB 0.05 xD

Default avatar.png ThePhantomPandaOfWisdom_6bdc: Mais là pour une fois je me suis fié à un "facile"

Default avatar.png ThePhantomPandaOfWisdom_6bdc: et c'est pas si facile ^^

leojean890: encore 2 légende soon avec YoBo

leojean890: ta ligne de python est assez complexe je trouve :P

BlaiseEbuth: Bof, c'est de l compréhension de liste standard

BlaiseEbuth: +a

leojean890: ouais

leojean890: mais y a pas mal de trucs les uns dans les autres

leojean890: :p

leojean890: je tape jamais [:]

BlaiseEbuth: mais sois elle est pas complète, soit y'a une parenthèse sauvageù

leojean890: parfois je fais [:2]

BlaiseEbuth: -ù

leojean890: j'utilise en gros les mêmes choses mais pas de cette façon quoi

Default avatar.png ThePhantomPandaOfWisdom_6bdc: bien vu la parenthèse :grin:

BlaiseEbuth: J'aime pas quand ça dépasse...

Default avatar.png ThePhantomPandaOfWisdom_6bdc: Mais ça n'a pas corrigé mon pb ^^

BlaiseEbuth: Et c'est quoi ton problème en fait ?

Default avatar.png ThePhantomPandaOfWisdom_6bdc: une syntaxe incorrecte apparament

leojean890: execute les sous parties de ta ligne séparément

leojean890: pour voir laquelle plante

leojean890: puis corrige et execute le tout

ThomasNicoullaud: je vais faire passer GiB vous aller voir

ThomasNicoullaud: je suis un passeur moi

Swagboy: Hehe combien tu prends?

ThomasNicoullaud: une win contre le boss une loose contre GiB

Default avatar.png ThePhantomPandaOfWisdom_6bdc: Merci de l'astuce :)

Default avatar.png ThePhantomPandaOfWisdom_6bdc: l'erreur était plus haute, lors de la déclaration de mon array ;)

Default avatar.png ThePhantomPandaOfWisdom_6bdc: Je l'avais déclaré comme un array 1D sauf qu'il me fallait un array2D

Default avatar.png ThePhantomPandaOfWisdom_6bdc: Je pense que je vais aller dormir :sleeping:

Razielwar: merci Vry

Razielwar: c'est bien un timeout

GiB: ThomasNicoullaud : much appreciated ;)

Stilgart: gg GiB

dwarfie: Stilgart : c'est pas une heure pour arriver ca ... tu te reveilles ? :D

Zorg1: un mythe s'écroule, je croyais qu'il ne dormait jamais :p

TidyMaze: c'est une impression ou à toute heure de la journée y'a forcément un push de pb4 en cours à environ 20% ?

Zorg1: 17 push en cours en gold

Boulet: il ne dort JAMAIS

Boulet: je confirme

Zorg1: ah oui lui il est légende ^^

Boulet: gg GiB

RomanceDawn: peut etre que c'est pas il

Zorg1: il vient de passer légende GiB ?

RomanceDawn: mais ils

Boulet: oui

Zorg1: #teamPb4 ?

Boulet: je parlais de Stilgart

dwarfie: bon , a priori je detecte pas trop mal ... mais toujours moins bien que le boss de silver qui me trouve en moins de 60 tours ... ca m'enerve .....

Zorg1: gg GiB

Boulet: dwarfie: tu as regl'e ton pb de sonar ?

dwarfie: oui ... et de silence ...

Boulet: ok

dwarfie: ah , premier draw coherent contre le boss

Boulet: attends, je te marave en privé

dwarfie: tu peut pas ... t'es tetu a la fin :D

Boulet: ah oui merde

Boulet: fait peter du replay

Boulet: c'est gentil d'essayer de me pousser ThomasNicoullaud mais je crois que je suis trop bas :D

Stilgart: ThomasNicoullaud il a soumis du caca là

ThomasNicoullaud: je tilt

ThomasNicoullaud: bon aller

ThomasNicoullaud: a+

pb4: Zorg1 ?

pb4: ah j'avais pas vu TidyMaze :D

pb4: Ce soit oui y'a tout le temps un push à 20%

Boulet: bn ThomasNicoullaud