Chat:World/2020-04-26

From CG community
Jump to navigation Jump to search

KiwiTae: struct yeah its anoying >,< we had to postpone release to optimise performance on nintendo switch

KiwiTae: MadKnight i will have a free copy i hope ~

cegprakash: I just thought of a way to find mine probability in OOC

cegprakash: say if opponent places a mine in a particular turn and I guess he can be at 10 positions at that instant, then he can place mine in 4 directions from each of it's positions i.e. probaility of placing mine in all these 40 positions will be 1/40

cegprakash: I can use this probability to decide whether to be scared of this location or not

eulerscheZahl: cegprakash you can't make me play topcoder and then not compete yourself

cegprakash: I did

cegprakash: it's not updated in website yet

cegprakash: oh wait it's updated

eulerscheZahl: https://www.topcoder.com/challenges/30122730?tab=submissions this contest?

cegprakash: https://www.topcoder.com/members/cegprakash/details/?track=DATA_SCIENCE&subTrack=SRM

cegprakash: I have never took part in Marathon

cegprakash: I don't know the marathon event format

cegprakash: never tried

eulerscheZahl: wow, a lot of participations

cegprakash: I only do SRMs

eulerscheZahl: what's the thing you are competing at?

eulerscheZahl: what's SRM?

cegprakash: algorithm contest

cegprakash: single round match

eulerscheZahl: ah, like codejam/codeforces

cegprakash: yes

eulerscheZahl: i rarely do those

cegprakash: can u teach me marathon

cegprakash: how to compete

eulerscheZahl: you register and then submit your code

cegprakash: is it possible to practice

cegprakash: like now

cegprakash: i logged into the applet

eulerscheZahl: just do it. participation is the best practice

eulerscheZahl: i'm using the website

cegprakash: did u register for TCO

eulerscheZahl: no

eulerscheZahl: i'm completely lost on their website

cegprakash: https://tco20.topcoder.com/

cegprakash: go into regional events

eulerscheZahl: bookmarked the marathon section

cegprakash: actually u can also login into topcoder arena and register

cegprakash: active contests -> register

eulerscheZahl: that algo track isn't really my cup of tea

cegprakash: you know petr, tourist and all?

cegprakash: they are world toppers

eulerscheZahl: and using the website already is the first challenge

eulerscheZahl: of course i know who they are

cegprakash: there is TCO for marathon too

cegprakash: I'll be competing in southern asia regionals this year

cegprakash: how do I submit code for that Rotating numbers challenge

cegprakash: where is the submit button?


cegprakash: eulerscheZahl

cegprakash: okay found it

eulerscheZahl: exactly: hard to find anything

eulerscheZahl: now you will get 4 emails

eulerscheZahl: we received your submission

eulerscheZahl: you passed the virus test

eulerscheZahl: you have a score of 1 until we processed your submit

eulerscheZahl: and your final score is ...

eulerscheZahl: https://prnt.sc/s61tsl

eulerscheZahl: and now we are first as that's our virus test result and not the actual score :D

cegprakash: there should be a folder inside the zip?

cegprakash: I mistakenly uploaded the zip with the file directly

eulerscheZahl: that's fine

eulerscheZahl: and the filename has to be exactly as given in the example submission

eulerscheZahl: there's a test submission for each language

eulerscheZahl: and don't use cerr

cegprakash: "Please Note: Please zip only the file. Do not put it inside a folder before zipping, you should directly zip the file."

cegprakash: how do I run this

cegprakash: java -jar tester.jar -exec "<command>" -seed <seed>


cegprakash: what is that command and seed

cegprakash: oh i need to generate an exe

cegprakash: how do I generate an exe ;O

cegprakash: he time limit is 10 seconds per test cas

cegprakash: woah

cegprakash: time to do simu

cegprakash: :D

eulerscheZahl: was afk for breakfast, did you solve your compilation problem?

cegprakash: no I was helping WINWINWIN

cegprakash: for CSB

cegprakash: for his eval

cegprakash: yes

cegprakash: I was able to run local tester

cegprakash: my exe file generated in debug folder

cegprakash: so I use that to test

Default avatar.png POSEnough: does anyone has text about MPI programming?

AntiSquid: https://lmgtfy.com/?q=mpi+programming

eulerscheZahl: 2h to get a link to google. i know a faster way to use a search engine

Crypticsy: are you guys free enough to give a peek to my 5 min contribution?

https://www.codingame.com/contribute/view/4995b17dc015ab22ad07ed6ddaaa3551544e

AntiSquid: nope

aCat: honest but brutal ;p

eulerscheZahl: no, the honest answer is "i have time but i don't want to"

Nerchio: the honest answer is i can do it in 3 mins but my lvl is 11 so whats the point

Nerchio: can't approve or disaprove below 20 :D

Default avatar.png JBM: free peek needs no level

Crypticsy: *slowly crawls back to the den*

aCat: ^^'

Nerchio: gold boss in ghost in the cell :( so strong

YurkovAS: AntiSquid do you use dfs in evaluation for tron battle multi?

MSmits: I doubt that YurkovAS

MSmits: mostly it will be some form of minimax with floodfill I think

MSmits: but I am not high ranked on tron, so someone may correct me

MSmits: btw, Onitama has huge rps effects

MSmits: I already found a version of my bot that beats karlis o. But it's less good vs darkhorse

MSmits: http://chat.codingame.com/pastebin/60afee38-88ab-4b3a-9b0a-aca82acd710f

MSmits: that 1 crash was Jacek... probably his assumption pass doesn't happen :P

jacek: my crash?

MSmits: yeah

MSmits: well it's the 1 crash in the cg bench and it's you who did it, but may be a fluke timeout. Server hiccups

MSmits: It's really just like oware... small tweaks in the eval makes my bot very strong vs 1 player and weak vs another player. Last night I had 1 version that chain-lost vs Renard, but not vs anyone else

MSmits: I can probably pick a player and make him nr 1 or 2 if i start recording which version beats whom

dbdr: Illedan, was any boss harmed in the making of your promotion?

MSmits: where did he promote?

dbdr: Tulips and daisies

MSmits: oh cool

MSmits: how do you write a search for that game?

MSmits: seems hard to do

MSmits: so many choices

jacek: dutch should know something about tulips

MSmits: not this one :)

dbdr: lol

dbdr: not yet

dbdr: still investigating it

MSmits: did you do langtons ant dbdr?

dbdr: so far it seems minimax is on top

MSmits: it has similar branching

dbdr: MSmits not yet

MSmits: I was able to make mcts work for langtons, but only because there was a very clear/logical pruning rule available

dbdr: and EricSMSO mentioned his MCTS on Tulips was weak, but that it might have been an implementation issue

MSmits: Some pruning rules are obvious with tulips and daisies, but I don't see enough of them to reduce the branching to a manageable level

dbdr: what pruning would be obvious to you?

dbdr: apart from planting on yourself :)

MSmits: place your flower within a certain distance of other flowers

MSmits: dont just go in the middle of nowhere

MSmits: or if you do, do it by heuristic

dbdr: I think soon that will be everywhere

MSmits: yes, thats why i said its not enough :)

dbdr: if certain distance is not too small

dbdr: right

dbdr: in some ways it reminds me of go

MSmits: yeah

dbdr: though I know little about go

MSmits: which means mcts could work

dbdr: and in go it even makes sense to play far from the rest of the pieces

dbdr: IIUC

MSmits: hm ok

dbdr: to start influencing that territory

MSmits: well this sort of question will answer itself when better bots get submitted

dbdr: yes

MSmits: I'm not particularly drawn to the game

MSmits: but will visit it eventually I think

dbdr: visual style or the rules?

MSmits: rules, visual doesnt matter much to me

MSmits: though if it's good it's a nice bonus

MSmits: I like games with less branching

MSmits: do some deep searching

MSmits: in T&D it's all about eval, since you can forget about depth

dbdr: it's a different challenge definitely

dbdr: but good that we have games that differ in this fundamental way

MSmits: yeah

dbdr: so that we can learn better to deal with various situations

MSmits: once I am done with my AI assignment, I will continue to work on STC

dbdr: what approaches work or not

MSmits: yeah

MSmits: my knowledge is mostly lacking in optimization games

dbdr: single player optim?

MSmits: yes

MSmits: stuff you can't treesearch

dbdr: that's definitely a different category again :)

dbdr: it's still a tree

dbdr: you just don't have an opponent

MSmits: sometimes it isn't a tree

MSmits: well

MSmits: say like number shifting

MSmits: or travelling salesman

MSmits: you mutate a solution

MSmits: that's completely different

dbdr: you can still see it as a tree

MSmits: it's a sequence of moves

jacek: everything can be tree if youre brave enough

AntiSquid: what about puzzles MSmits ?

MSmits: but sure at every move you considered other moves and they're all part of the tree

dbdr: a sequence of moves is one path in the tree :)

MSmits: what kind of puzzles AntiSquid

AntiSquid: sometimes i go out in the garden barefoot, step on the grass, stretch my hands out and pretend i am a tree jacek

MSmits: I can solve puzzles ok. I solved pikachu in less than 4 hrs at least

dbdr: graphs is even more general, e.g. if you consider transpositions your tree becomes a graph

MSmits: a tree is a onedirectional graph isnt it?

dbdr: a directed graph with no cycles

MSmits: oh wait no, you can have multiple paths ot the same node

MSmits: with a one directional graph

MSmits: yeah i suppose a minimax with TT is like that

dbdr: two states can have the same child

jacek: its called ADG

MSmits: acyclic directional graph

dbdr: I know it as DAG :D

jacek: DAG* -.-

AntiSquid: diagonally aligned graph

MSmits: thats what Dutch people say when they leave

MSmits: it's like bye

AntiSquid: (bye) da(w)g makes sense

MSmits: :)

Astrobytes: Isn't it like saying "good day"?

AntiSquid: the very hard puzzlys MSmits

MSmits: probably closer in meaning yes, but it's used when people leave mostly

MSmits: AntiSquid I didn't try many, but that's mostly because I like multis

Astrobytes: Good day is a greeting or a parting phrase

AntiSquid: ya multis are more fun

MSmits: Astrobytes true

AntiSquid: multis are like very hard puzzles but you only do as much as you like of the puzzle

MSmits: mmh it says i completed 3 very hard but I doubt they are really very hard

dbdr: like very hard puzzles that you can never fully solve :)

MSmits: https://www.codingame.com/training/expert/the-water-jug-riddle-from-die-hard-3

MSmits: https://www.codingame.com/training/expert/unflood-the-world

AntiSquid: disagree dbdr

MSmits: https://www.codingame.com/training/expert/bulls-and-cows

MSmits: those are the ones I completed. They all seem medium at most...

dbdr: I would count only official CG ones as very hard

AntiSquid: at least bandas and oware got to be fully solvable with NN

MSmits: oware is not fully solvable the way it's coded on CG because of loops

MSmits: there are rules that deal with this in other versions of the game. Then it would be solvable

AntiSquid: how many ML experts are there on CG?

AntiSquid: 0

AntiSquid: afaik

dbdr: right, simpler multis might be at the edge of solvability

dbdr: but you might be able to solve them offline and not be able to fit the solution in 100K

MSmits: solving has a pretty precise meaning though, if you say a NN can solve a game, it still has to consider all opponent choices

MSmits: so you can write a perfect NN and it may still be out of reach

dbdr: yes, NN is a function approximator

dbdr: if you have a perfect solution, there is probably a more compact representation for it

AntiSquid: if nobody can top it it's solved imo

dbdr: if nobody can EVER top it

MSmits: yes, thats the thing

MSmits: you never know

dbdr: well, you do if it's actually solved

AntiSquid: well if nobody can reach higher accuracy then it's good enough ... sort of like the TGD puzzle i guess

dbdr: like checkers

MSmits: AntiSquid but how do you know noone can?

dbdr: TGD was not solved

dbdr: once you take a decimals into account

MSmits: just because noone has, doesnt mean noone can

AntiSquid: but nobody was reaching higher accuracy after a while

MSmits: what if it happens after 20 years

dbdr: one player had better score than everyone else

Nagatwin: I tried to solve it fully with NNs

dbdr: so max one player solved it, probably no one

Nagatwin: but failed

AntiSquid: is CG still around in 20 years?

Nagatwin: Oware ^

AntiSquid: maybe it is but who knows

MSmits: I beat the NN's after obsessive eval experimentation

dbdr: in checkers, we know. there is a proof / complete search

MSmits: yeah

dbdr: this is a cool story actually

MSmits: oware has a proof for the version with slightly different rules

dbdr: this one guy was so much above the rest, then he died before finishing a match against a strong AI

AntiSquid: i don't get "Breach"

dbdr: the Ai devs thought the only way to give him respect before saying they would have beaten him was to beat God

dbdr: e.g. prove perfect play

dbdr: and they spent like a decade doing that

MSmits: ah yes

MSmits: was this Tinsley?

MSmits: or something?

dbdr: Marion Tinsley, yes

MSmits: I also remember reading he wanted to play the best AI in an official championship and the organization refused

MSmits: then he refused to participate in the championship

dbdr: World Champion 1955–1958 1975–1991

MSmits: so they had to invent a new championship to accomodate him

MSmits: otherwise it would be worthless

MSmits: without him in it

dbdr: In August 1992, he defeated the Chinook computer program <https://en.wikipedia.org/wiki/Chinook_(draughts_player)> 4–2 (with 33 draws)

AntiSquid: i want to see Dota bots that actually win with all heroes available

dbdr: wow, so many draws

MSmits: near perfect play :)

dbdr: http://chat.codingame.com/pastebin/69d268f0-c2ef-4fa2-a0ba-542f9cab2539

MSmits: hehe yes, i remember reading that too

MSmits: it is quite interesting

Astrobytes: Impressive

AntiSquid: so like Magnus Carlsen sort of

MSmits: I think no other sport has a marion tinsley

MSmits: not the same

AntiSquid: but if you do only 1 thing your entire life you should be better than the rest no? :p

MSmits: yes, but even then, this was extreme

AntiSquid: well it's not the same "sport", but it's comparable

MSmits: no i mean

MSmits: the difference between marion and anyone else

dbdr: I'm sure other people tried very hard too

AntiSquid: you pile up magnus with anyone else MSmits

MSmits: no other game/sport has this difference between nr 1 and the rest

dbdr: by the way have you guys seen the movie about alpha go?

dbdr: not very technical, mostly the human side of the story

AntiSquid: classical chess world champions: Magnus Carlsen (2013-current)

dbdr: the research team and the human players

Astrobytes: Any good?

dbdr: I enjoyed it

Astrobytes: Seems worth a watch

AntiSquid: MSmits https://youtu.be/H0n69pDaUaY?t=94

dbdr: EricSMSO got 40 at Tulips :)

dbdr: 40.5

EricSMSO: Thanks to Illedan, I found a weakness in my evaluation function

Astrobytes: Nice!

dbdr: won 77/80 :)

Astrobytes: Well played

EricSMSO: Thank you.

EricSMSO: dbdr. I think MSmits is right. If you restrict to neighbourhood, MCTS should work. Mine was bad because I played complete random

dbdr: neighbourhood will soon be the whole board no?

MSmits: sorry was afk a sec

MSmits: cool EricSMSO

MSmits: will try it at some point

EricSMSO: You won't play were your flowers are already

dbdr: sure, but next to yours + next to opponent + on opponent, that's mostly everywhere

EricSMSO: True, that's why I rarely reach depth 4

MSmits: AntiSquid nice trick with the blindfold. Seen fellow students do this (with only one game and playing more poorly)

MSmits: it's really cool to see. These two guys who just sit on lunch breaks and say chess moves. We werent even sure they were playing until someone brought a board

AntiSquid: idk what you mean trick

MSmits: well the blindfold doesn't prove you're a good player, it proves you have good memory. Obviously he is also a good player

AntiSquid: honestly look up carlsen, quite interesting

MSmits: hey I believe you

AntiSquid: it's nothing to do with belief

AntiSquid: it's more about knowing the individual

MSmits: allright

eulerscheZahl: MSmits :D https://www.codingame.com/share-replay/454977165

eulerscheZahl: i like how you announce your victory

dbdr: RIP

MSmits: yeah i am testing new versions with bugs :)

eulerscheZahl: testing in production

MSmits: yes :)

eulerscheZahl: meanwhile i try to win $0 but all the spinning makes me dizzy

MSmits: huh

eulerscheZahl: https://www.topcoder.com/challenges/30122730?tab=details there, you can win $0

MSmits: ahh I see

MSmits: think I found the bug

MSmits: if (moveBits[playerIndex] & (masterBitPos[opponent]) && !lastTurn)

MSmits: typical bit op bug

MSmits: can you spot it?

jacek: no parenthesis?

MSmits: no there's parenteses

MSmits: but they are placed wrong

jacek: thats what i meant

MSmits: yea.. hard to spot this

MSmits: & has such a weak priority

MSmits: always gets me into trouble

MSmits: mmh still bugged I think

jacek: good, keep pushing me up

MSmits: will try :)

MSmits: I get this a lot:

MSmits: https://www.codingame.com/share-replay/454986257

MSmits: solve on frame 18/35 as a loss

MSmits: then, it gets "unlost" because he chooses a different path than the one I solved as a win for him

MSmits: then I lose again :p

jacek: hes teasing you

MSmits: maybe :)

MSmits: this is what is cool about mcts solver though. Under the right conditions it solves much better than minimax

dbdr: how so?

dbdr: ah, you mean better if the opponent is imperfect?

MSmits: because sometimes statistics guide you better

MSmits: it doesnt have to explore the entire tree (with or without ab pruning). Just the path that is seemingly best for the winning player

MSmits: i did say *under the right conditions*

MSmits: has a lot to do with exploration parameter and such

dbdr: well, that's one thing with minimax, it assumes perfect opponent

MSmits: but it gets crazy solves sometimes. I would see karlis o say he got to depth 11 and my bot solved at 15 or something

dbdr: so it can make you lose against weak players when you could have won

dbdr: because they make a mistake

MSmits: mcts might do that too

MSmits: but it's different

dbdr: yes, but MCTS will have stats

MSmits: yeah

dbdr: once in a while the opponent will play badly

dbdr: in minimax never

MSmits: true

MSmits: https://www.codingame.com/share-replay/454987603

dbdr: minimax does no distinguish lose in 1 turn and lose in 60 turns

MSmits: look at the replay. I solve it as a loss for me 15 frames before the end

MSmits: karlis o says d:8

MSmits: I wondered if this is maybe due to his definition of a depth being 2 plies, but if you continue the game, he keeps using max calc time

dbdr: what is d /

dbdr: ?

dbdr: ah, depth?

MSmits: I think so

jacek: what if he puts random value there

MSmits: of course that is possible

dbdr: looks consistent with depth

dbdr: not knowing the game :)

dbdr: gets a bit higher need the end

dbdr: near

karliso: MSmits I limit my depth to 11...

MSmits: oh

dbdr: grats on promotion Quidome!

MSmits: karliso why to 11?

karliso: No particular reason

dbdr: https://en.wikipedia.org/wiki/Up_to_eleven

karliso: Do you thnk MCTs is going to be better?

MSmits: I don't know

MSmits: the reason I use mcts is that I suck with minimax

karliso: Was my first minimax... I find mcts more intuitive.

MSmits: this game has strong rock paper scissors. I found several versions that have higher than 50% winrate vs you, but then darkhorse beats me

MSmits: or someone else

karliso: You tested with -s parameter?

MSmits: whats that?

karliso: Ahh, I meant you play position from both isdes?

MSmits: oh yes, swap and random seed

karliso: Ok, perhaps my endgames are not so good.

MSmits: this happened with me on oware too

MSmits: I could make versions that beat re curse and robo, but only won 60-70% vs the rest

MSmits: then i submitted it a few times and was nr 1

MSmits: then other people submitted and i would lose it

MSmits: karliso your bot is fine

MSmits: hard to beat

MSmits: it stays on top when other people submit too, so I wouldnt worry. But you can try mcts if you want

karliso: I am no gona try mcts in onitama, but I regret going with mcts in bandas.

MSmits: why?

MSmits: mcts seems fine in bandas

MSmits: do remember that nagrarok uses an endgame book

MSmits: not sure if you do

MSmits: but that's a major boost

karliso: It feels to me like it has decent eval + mcts spend a lot of time in big depths + there are some forced lines.

MSmits: then use mcts with eval

MSmits: make your mcts more like minimax :)

ALIM: Could anyone help me with an easy puzzle please?? I need some help ta disordered first contact on how to decode the message.

karliso: What do you propogate?

karliso: No, I don't use endgame tables in bandas. I am also only 51% vs nagrarok.

Default avatar.png JBM: isn't the format code given in the statement?

MSmits: karliso you propagate the eval

MSmits: just make sure it is properly normalized

MSmits: for example between 0 and 1, or some other value

ALIM: in the statement there is only the encoding, not the decoding

karliso: Hmm, interesting. I use ints = 0 as loss, 1 = draw, and 2 = win in my mcts.

MSmits: thats fine. I use 1, -1 and 0

MSmits: doesn't really matter

MSmits: ohhh

MSmits: I had a bug where my knight blocked my master from reaching shrine

MSmits: I simply checked all master moves and if the shrine is in there I count it as a win

MSmits: but if the knight is in the way...

Adnmaster: is there any way to find our own location in code royale?

MSmits: it is not given as input?

Adnmaster: only the location of the sites are given

MSmits: mmh there are two types of input, initial input and input per turn

MSmits: are you sure the position is not in the per turn input?

Adnmaster: i tried x y but i later found out that it wont go in the direction i want

MSmits: not sure what you mean. We're talking about input here right, not output?

Adnmaster: i mean, it says x and y is the sites value, and when i make it output, it does return as a sites value

Adnmaster: so it is a sites value

Adnmaster: and it would be much better if we could move our character as we want

MSmits: you can

Adnmaster: how

MSmits: let me open code royale, sec

Adnmaster: ok

MSmits: been 2 years :)

Adnmaster: :D

MSmits: which league are you in?

Adnmaster: wood 3 i think

Adnmaster: wait

Adnmaster: let me look

MSmits: ahh, maybe wood 3 doesnt allow free x y movement

Adnmaster: oh

Adnmaster: might be

MSmits: http://chat.codingame.com/pastebin/1f6041d2-504f-49e4-9e20-e8f1327450d2

MSmits: thats output for legend league

MSmits: bronze, silver, gold shoul dbe the same

MSmits: wood might be different

darkhorse64: MOVE x y to move the quuen

Adnmaster: what is the input in those leagues?

MSmits: but really, if you want to get out of wood, just build barracks and make kngihts

Adnmaster: yeah

Adnmaster: youre right

MSmits: input is pretty big for legend, not usre if it will be readable

Adnmaster: ok

MSmits: http://chat.codingame.com/pastebin/4db93372-b2f6-4132-8f5f-e53f432648ef

dbdr: normally input does not change

dbdr: some things are just unused

**dbdr looks sternly at CSB

Default avatar.png JBM: legacy

dbdr: CSB legacy, nice title

Default avatar.png IAmNoob: HI!

MSmits: hi noob

Default avatar.png IAmNoob: :)

wlesavo: hi i am noob

Default avatar.png IAmNoob: :)

MSmits: wow darkhorse64

MSmits: https://www.codingame.com/share-replay/455007253

MSmits: look when it was solved (according to my maybe bugged bot)

Quidome: funny i have been pushed into wood 1 and into position 4 with tulips

Quidome: :joy:

MSmits: nice

Quidome: well with a crappy solution, but still funny

Quidome: Top Rust player :muscle:

Quidome: :sunglasses:

Quidome: Eric has taken over first place big time

Quidome: 6 points difference!

MSmits: nice

darkhorse64: Strange, my eval goes beyond 1

MSmits: he does that sometimes :)

MSmits: err

MSmits: in the game i shared darkhorse64?

darkhorse64: Yes

MSmits: I think it's funny my bot keeps seeing a path for you to win and you keep refusing to take it :)

MSmits: maybe I should post your winning move

Default avatar.png IAmNoob: :)

darkhorse64: You mean I should have won it much earlier

darkhorse64: ?

MSmits: yeah

MSmits: unless you expect my bot to look 80 turns ahead

darkhorse64: You always surpass my expectations

MSmits: that can mean two things

MSmits: either your expectations are very low or I do very well :P

darkhorse64: Choose whatever suits you better

MSmits: are you pulling down karlis o?

MSmits: he only has 39.01 now

MSmits: almost seems like you're benching him

MSmits: hmm yes you won 5 out of 9 on last submit

darkhorse64: I have a few wins. I am tweaking my exploration parameter

MSmits: http://cgstats.magusgeek.com/app/multi-onitama/darkhorse64

MSmits: weird stats

MSmits: you win more vs top 2

MSmits: this is oware all over again

MSmits: oops i forgot to put in an exploration parameter. I guess it is 1

darkhorse64: Indeed. I should look into the bug before continuing. If my stats are wrong, I am in trouble

MSmits: I might have bugs too, still. I really did a number on myself with this state representation

Quidome: What is the most active multi at the moment?

darkhorse64: Non deterministic bot = plague

Quidome: Can i see that somewhere?

MSmits: darkhorse64 agreed

dbdr: Quidome: https://cgmulti.azke.fr/statistics

eulerscheZahl: https://cgmulti.azke.fr/statistics

eulerscheZahl: :rage:

MSmits: lurker!

darkhorse64: Judging by the chat, Tulips and Daisies

Quidome: thnxs

MSmits: that toad is always lurking

eulerscheZahl: nah

eulerscheZahl: getting frustrated with that optim game

dbdr: eulerscheZahl: at this point it's getting funny :D

MSmits: oh the one for $0 ?

eulerscheZahl: yes

dbdr: you writing half a second later

eulerscheZahl: not the first time

dbdr: unfortunately it seems cgmulti does not get the list of multis dynamically :(

eulerscheZahl: correct

eulerscheZahl: would be interesting to compare OOC with UTG

eulerscheZahl: to see how much the fast release helped

dbdr: indeed

dbdr: I think the data is somewhere in https://github.com/dbdr/codingame-leaderboards :)

eulerscheZahl: so, let's watch the wine poisoning you recommended yesterday

dbdr: I mean can be computed

eulerscheZahl: fairly simple to get these stats actually

eulerscheZahl: but i'm not in a mood

dbdr: ah, with date of last submit?

eulerscheZahl: yes

eulerscheZahl: just to see who submitted after the relaunch

dbdr: I'm #5 :o

dbdr: and ValGrowth #1

Illedan: Power of spam!

dbdr: whose spam? :)

Illedan: no idea, just guessing :P

dbdr: agenti ds are different between contest and multi even with no new code :(

dbdr: but I think we can use the contest agent ids in the multi, right?

Illedan: ye

Default avatar.png l0524: Could someone help me and tell me where I can find my completed? I need to send this to my professor, however I can't find it

Default avatar.png JBM: you won't find your completed unless you it first

Astrobytes: :smirk:

Default avatar.png l0524: unless I what first?

Default avatar.png JBM: your what completed?

karliso: MSmits Results make some sense. mcts might be better than minimax, but good minimax is better at beating weaker minimaxes.

Default avatar.png l0524: completed puzzles form "practice" section

MSmits: karliso sure, that's possible

Default avatar.png l0524: apologies, I'm new here

Default avatar.png JBM: they're the ones with a check mark next to them

MSmits: darkhorse64, 1 more time :P

Default avatar.png JBM: you can find your stuff either in the solutions tab from a puzzle, or in the history section in the ide

Default avatar.png l0524: ah, thank u

MSmits: thanks darkhorse64 :)

MSmits: I would say this is the perfect value for your exploration parameter :P

MSmits: aww kicked to 2 again

darkhorse64: 1.25, 1.5, 1.75, ...

MSmits: this sort of parameter i prefer to test with selfplay

MSmits: doesnt seem likely there is much overtraining

MSmits: or just test vs 1 opponent

darkhorse64: Your solver is better than mine, you sometimes predict the issue 4 ply before me. Might be due to speed or a bug in my solver

Default avatar.png Floor: Would you consider searching how to do different statements / functions etc when doing a Practice challenge "Cheating"

MSmits: darkhorse64 i dont have simulations

MSmits: so more rollouts

Default avatar.png Floor: and I don't mean ripping the code from someones Github that they've posted

Default avatar.png JBM: no

MSmits: Floor there are many standard algorithms, many puzzles just test if you know them

MSmits: its fine for learning

MSmits: google away

Default avatar.png Floor: Yeah I understand the algorithms in pseudo code, just didn't know if I was cheating myself by searching different ways to do them in my desired language on Google.

MSmits: nah

MSmits: every puzzle is different, you still need to apply it to the situation

darkhorse64: I have 3 M "short" rollouts first turn

MSmits: especially with more complex puzzles. This will require you adapt existing algorithms

MSmits: let me see

eulerscheZahl: short? you limit the depth?

darkhorse64: Yes

eulerscheZahl: to what? that's relevant for comparing numbers ;)

darkhorse64: depth 1 then eval

MSmits: I get up to 800k rollouts with which I evaluate about 9 million nodes max

MSmits: but no random sim

MSmits: so i just expand and evaluate each child

darkhorse64: First turn or next turns

darkhorse64: ?

MSmits: first

MSmits: mmh it differs a lot per game

MSmits: i just see a game with 600k rollouts and 10 million root visits (10 Mnodes evaluated)

MSmits: it depends on the cards a lot

MSmits: second turn for this game was 32k rollouts and about half a million nodes evaluated

darkhorse64: Our figures are too different. Either you are slow or my stats are botched

MSmits: your rollout is defined differently

MSmits: your 3 million corresponds best to my 9 million

MSmits: because when you expand you count each child as a rollout

darkhorse64: True

MSmits: i count 1 expansion as 1 rollout

MSmits: i evaluate each child immediately after that without doing randoms

MSmits: we had that difference in oware also

MSmits: I've found that as your eval gets better, my way becomes better, but with worse eval, your way is

MSmits: worse eval needs to be offset with randomness

MSmits: thats why total randomness is so necessary in uttt, no good eval

darkhorse64: I should also check depth 0, "worse eval needs to be offset with randomness" is an interesting conclusion that you do not find in the litterature

MSmits: well i found this experimentally with oware

MSmits: at first my best was depth 5

MSmits: then depth 4

MSmits: then 1 and when the eval got best, it became 0

MSmits: i refitted it a lot, so i could really track how the ideal depth changed

darkhorse64: Find the same with Onitama but i can't remember if I tested depth 0

MSmits: I just never even tried random rollouts. It's a lot of work to code

MSmits: also they might be a bit expensive

darkhorse64: I did. It was way worse

dbdr: seems intuitive to me. a perfect eval would be better than random moves

MSmits: no i meant random rollouts to depth x, i didnt code that for onitama

MSmits: total random would definitely be bad here

darkhorse64: You are #1 again until my next submit

MSmits: hehe ok

Default avatar.png MarcoSP: How can I send a private message to someone who is not in this chat?

MSmits: my winrate vs karlis o is about 40% btw

darkhorse64: Take a scrrenshot

MSmits: I still have 4 ideas to test though

MSmits: got constant = 0 for them,

MSmits: already coded. Fitting takes too long :P

darkhorse64: 1.25 or 2.0 exploration parameter makes hardly any difference

MSmits: hmm doesn't surprise me that much. It often has a large plateau

MSmits: just take the center of it i'd say

jacek: you try each child before going further?

MSmits: what do you mean?

darkhorse64: Currently testing

MSmits: you mean on selection jacek? I visit each child at least once before I move deeper yes

jacek: yes

MSmits: actually, I count the eval as the first visit

MSmits: so they are immediately all visited once

MSmits: so maybe the answer is no?

MSmits: not sure..

MSmits: btw, you can pull me down far with a chain submit jacek

MSmits: but thats temporary

MSmits: versions vary wildly

MSmits: http://chat.codingame.com/pastebin/73c06093-9dfa-4c3d-8407-c7f383f550f1

MSmits: current version is very weak to you

MSmits: I'm getting a baseline test now so I can try what happens if I test the other ideas

jacek: well i mean in selection phase, UCT is infinity

MSmits: oh, on expansion, all my child nodes get evaluated, that;s their score and their visitcount is set to 1

jacek: so if there is an unexpleored child, youll visit it first. unless you use some eval or FPU to ignore those

MSmits: so i never encounter this situation

jacek: oh

MSmits: the combined evaluation gets backpropagatedf

MSmits: except on win/loss of course, then it's just 1 or -1

MSmits: (eval is between -1 and 1)

jacek: how complicated is your eval :thinking:

MSmits: current is fairly simple, but it's about to double in complexity.

Adnmaster: in code royale, sometimes you can be born as blue. But when i am born as blue, errors on my code occur. Anyone know how to fix that?

MSmits: check whats different about being blue, see how your code handles that

jacek: or maybe i should focus on speed? karliso is always 1-2 plies deeper than me

MSmits: probably the starting coordinate

MSmits: hmm

MSmits: what enhancements did you use

MSmits: ab pruning i assume

MSmits: also TT?

MSmits: for mcts, TT was no success for me

Adnmaster: for example, i coded it to build two barracks then attack, but when im blue it only builds one than attacks

MSmits: but minimax is different

MSmits: karlis o hasnt done minimax before.

jacek: TT and some mover ordering

MSmits: which is a bit annoying :P He also hadnt done uttt before when he got nr 1

MSmits: done mcts before I mean

MSmits: ah ok, seems ok jacek

MSmits: but you will get deeper with better eval maybe

MSmits: ab pruning works better when scores vary more i think

MSmits: for mcts it was definitely like this. If my eval is better, my bot solves deeper

jacek: oh and also killer moves

MSmits: yeah thats all quite normal

MSmits: you can also do a quick check at the end to maybe eval 1 layer deeper

MSmits: to see if the opponent has a finishing move

darkhorse64: killer move is a move that causes a cut in ab ?

MSmits: I think you save 1 or 2 moves at each depth

MSmits: that caused cutoff I thought

MSmits: you check those first

jacek: yes. you save move (or 2) for each ply that cuased cutoff and later try it first if available

darkhorse64: You can also use quiescence search when capturing or being captured. Thanks for definition

karliso: Yeah, I use PVS for onitama. I have no intuition for how it works, but it seemed somewhat faster than ab pruning.

MSmits: thats nega scout?

MSmits: also, it is cool that you share this karliso, thanks

jacek: pvs/negascout gave me neglibile profit

karliso: Yes, I don't know how it works, but it does work.

jacek: this is typical for recursive few-liners

MSmits: jacek did you somehow take into account the fact that this game has a lot of very short branches with a quick win? I have no idea how this would factor into your minimax, but it might make things different

MSmits: other games dont have this as much

MSmits: it's comparable to yavalath in this regard, but with a lot less brancing

jacek: iterative deepening should take care of that

MSmits: I wonder how expensive iterative deepening gets when you have almost no branching

jacek: still worth it

MSmits: yeah I guess it is

MSmits: also, depth might have a +1 or -1 in the definition

MSmits: you might define it to be smaller

MSmits: not by more than 1, but still

MSmits: you could call your first move the depth 0 move and say your depth is 0 or you could say you've done 1 move and your depth is now 1

MSmits: anyways, thats the sum of my knowledge on minimax. You do exactly the same thing as what I do when I try minimax and it's always worse than my mcts :(

jacek: coclustion - your mcts is just very good

MSmits: it's good, but it's also different every time. I practiced it a lot

MSmits: I should practice minimax more, but I lack motivation

MSmits: maybe if someone explained to me a proper eval for tron :0

darkhorse64: Maybe for the next challenge, if it's really a pacman variation ?


MSmits: maybe yeah

MSmits: you need to practice it too dont you?

MSmits: you're always doing mcts

darkhorse64: I have google mcts pacman and it returned something

MSmits: "Did you mean mrs. pacman?"

darkhorse64: I am quite in the same situation: heavy mcts practitioner

darkhorse64: "mcts pacman"

MSmits: hehe nvm, mrs pacman is a game

darkhorse64: Heard of it

MSmits: I suspect the game will be very different from pacman. Will just have some kind of grid with walls and such, but other than that, no similarities

MSmits: I think it's mostly a theme

MSmits: anyway, off to the store, need to get some food and :rage: at people for getting near me

darkhorse64: Take care

jacek: you mean those getting closer score to you?

MSmits: no, there's this thing called corona :P

MSmits: and some people are idiots

darkhorse64: Also but we do not fear retaliation

MSmits: :)

darkhorse64: Except getting even more rekt

struct: hi

AntiSquid: hi

Default avatar.png Im_A_Rookie: hi

eulerscheZahl: hi

Uljahn: hi

Astrobytes: hi

tekki: hi

Kukiss: hi

jacek: c-c-combo breaker

Default avatar.png Im_A_Rookie: im using python and some people who use c++ beat me

Default avatar.png Im_A_Rookie: that is how noob i am

Default avatar.png Im_A_Rookie: xD

Default avatar.png Im_A_Rookie: Any tips on how to type faster?

eulerscheZahl: use both hands

Default avatar.png Im_A_Rookie: smart

Default avatar.png Im_A_Rookie: are you joking? xp

struct: in coc c++ stands no chance

struct: in fastest mode

coderinblack: Lol

jacek: what if you used optimization

Uljahn: ye, use autocomplete, ctrl+space

dbdr: coc -- what a strange game the only winning move is not to play

AntiSquid: do something other than clash Im_A_Rookie

Astrobytes: And get an anime avatar

Default avatar.png Im_A_Rookie: Okay

Default avatar.png Im_A_Rookie: to be honest i hate this ide you have to write all the code on your own normally it does it automatically

Default avatar.png Im_A_Rookie: ctrl + space

Default avatar.png Im_A_Rookie: nice

AntiSquid: you could try to use CG sync

Default avatar.png WINWINWIN: In code vs Zombies, what if a zombie is equidistant from 2 humans?

Nerchio: legend run in ghost in the cell? lets goo

EricSMSO: WINWINWIN It will probably go towards the human with the lowest ID

cegprakash: WINWINWIN how is ur CSB bot

cegprakash: legend yet?

AntiSquid: he is playing code vs zombies, why does CSB matter?

Nerchio: Promotion to Legend League in : 01H 06MN 52SC

Astrobytes: grats Nerchio

Nerchio: my last submit ended ~65, i didnt change anything #1

Nerchio: it was similar in ooc gold

Nerchio: i need to learn how to deal with this randomness ;p

darkhorse64: Did you follow any PM or is it just your own algo ?

jacek: damm teapot stop spam submitting,i keep getting worse :\

Nerchio: my own algo or rather heuristic not much of an algo xD

darkhorse64: #3 is not enough. I want to rule the world

darkhorse64: Just gone from 34 to 37 by tweaking parameters

Nerchio: where you are #rd?

darkhorse64: Onitama

Nerchio: ah that one is too hard for me

Default avatar.png hozayfeh: HI:raised_hand:

Nerchio: D:

Default avatar.png MaciejF: Hi everyone! Could someone explain me one thing about mtcs?

AntiSquid: maybe

darkhorse64: go ahead

MSmits: thats how it starts

MSmits: 1 thing

AntiSquid: maybe that's all he wanted to know

Nerchio: MSmits is a teacher he can help im sure

Nerchio: :D

AntiSquid: if someone can explain stuff to him about mcts

MSmits: ohh

Default avatar.png MaciejF: it really is one thing xD Is node's value just wins / number_of_visits ?

Default avatar.png MaciejF: what about loses?

MSmits: count a loss as -1

MSmits: and a win as +1

AntiSquid: Nerchio doubt it, he is supposed to teach physics, but plays bot programming instead :/

AntiSquid: all students fail

MSmits: :P

Nerchio: xD

Astrobytes: :joy:

Adnmaster: :joy:

darkhorse64: He teaches mcts to CG members

MSmits: sometimes :)

Default avatar.png MaciejF: MSmits what if I told you that in UTTT my bot jumped about ~20 places when i switched from (wins - losses) / visits to just wins/visits

darkhorse64: You fixed a bug

MSmits: I'd say you are in silver or gold where everything is quite random

MSmits: and 20 places is basically the same rank

Default avatar.png MaciejF: actually, yesterday I got into legend

darkhorse64: oops

MSmits: you jumped 20 places in legend?

Default avatar.png MaciejF: yeah

Nerchio: take that msmits hahah!

MSmits: lol

Default avatar.png MaciejF: And I just tried another evaluation that seems to give better results

MSmits: interesting, you just ignore losses?

MSmits: wait a minute

MSmits: you increase visit count when you ignore the win?

Default avatar.png MaciejF: Yeah, but I didnt like it

Default avatar.png MaciejF: yeah, I do that

MSmits: so you count a loss as a draw

Default avatar.png MaciejF: exactly

MSmits: I am thinking you just lowered your margin

MSmits: the min-max score

MSmits: which means you could have just doubled your exploration parameter for the same effect

MSmits: draws rarely happen so

MSmits: your loss score is now 0

MSmits: and your win score is 1

MSmits: instead of -1 and 1

Default avatar.png MaciejF: I think you are right. I have just tried another evaluation that incorporates losses and it gave me another boost: (wins * (1 - losses/visits)) / visits

Default avatar.png MaciejF: it's like weighting wins by losses

Default avatar.png MaciejF: can't go negative so exploration part still has some effect

MSmits: i think you are overcomplicating things

MSmits: it doesnt matter if it goes negative

MSmits: if your loss score is -500 and your winscore is -498, you have the same bot as when your loss score is -1 and your win score is 1

MSmits: the difference is what matters

MSmits: the difference compared to the exploration parameter

MSmits: you are comparing different nodes to select one

MSmits: so if all nodes have a 499 lower score, the result of the selection formula will be the same. you select the same child

jacek: wait, how draws in uttt are rare? o.O

MSmits: rare as in 10% or so

MSmits: I am trying to explain why he got an improvement by ignoring losses

jacek: i already 'ignore' losses, as i have 0, 0.5 and 1.0 :)

MSmits: lol... thats not ignoring losses either

jacek: nyoro~n

MSmits: you can change that to -1, 0 and 1 and double the exploration parameter and you have the exact same bot

MSmits: only it's prettier :)

MSmits: cuz no broken results (0.5)

MSmits: can use integers

Default avatar.png MaciejF: MSsmits so are you saying that I've just indirectly increased exploration parameter?

MSmits: did you just use another anime thingy jacek

MSmits: yes MaciejF

jacek: :eyes:

MSmits: the score range is half as small

MSmits: so exploration is relatively twice as strong

MSmits: you just needed more exploration is why your bot improved

Uljahn: i agree on exploration constant being the cause if it's vanilla mcts (no heavy rollouts or something)

Default avatar.png MaciejF: Ok I think I understand :D Thank you! It's nice to get some explanation from 1st UTTT player!

MSmits: np :)

MSmits: afk 10-15 mins, drop me a pm if you have more questions

jacek: 1st UTTT? oh my

jacek: reCurse not gonna be happy

MSmits: he knows

MSmits: he's is 3rd

darkhorse64: UTTT is like Games Of Thrones. Heads roll

MSmits: and dont ping him jacek, you meanie

MSmits: brb

dbdr: I'm sure he's happy to be reminded he's not #1 anymore

Nerchio: lol

Illedan: Send him a PM just to be sure..

jacek: maybe i should invite to clash to cheer him up

AntiSquid: yes

AntiSquid: make a bot that automatically invites him jacek

AntiSquid: best birthday gift ever

AntiSquid: detective pika #3 isn't really a mobius strip is it? statement doesn't make any sense when compared to what i see in the replay

AntiSquid: and why does the replay not always work wtf?

BenjaminUrquhart: pika is a mess

BenjaminUrquhart: chang emy mind

AntiSquid: no, i agree

BenjaminUrquhart: and yes, it's not a mobius strip

AntiSquid: guess i need to read forums to figure shit out?

BenjaminUrquhart: literally ignore the statement and you'll be fine :eyes:

AntiSquid: done that in ooc :thinking:

AntiSquid: was reading chat instead of statement

MSmits: pika is a good puzzle except for the moebius. You can solve it by looking at the examples though, with some trial and error

MSmits: took me about an hour i think, the moebius one

MSmits: the cube thingy also an hour

AntiSquid: if it says moebius strip then that's what i expect, want and should get, otherwise it's a shit puzzle

MSmits: if it was just that, then yes. But it is 4 puzzles

AntiSquid: talking about #3, that's one puzzle

MSmits: the other 3 are fine

MSmits: ah ok, then i agree

AntiSquid: i just don't like puzzles where the statement is part of the problem

MSmits: same

AntiSquid: happens an awful lot on other sites

AntiSquid: difficult explanation or inaccurate details to misguide you

MSmits: we can edit statements thankfully

AntiSquid: would have to reupload contrib then

MSmits: really? I edited a puzzle once, dont think it reuploaded

AntiSquid: which i don't have lol, can't edit statement separately

MSmits: I edited this one:

MSmits: https://www.codingame.com/training/easy/pirates-treasure

AntiSquid: i think it's because of the viewer?

MSmits: oh, that might be true yeah

eulerscheZahl: yeah, SDK contributions require a full upload

AntiSquid: ya it's different, you can edit statement separately with that one

eulerscheZahl: btw MSmits: langton's ant

MSmits: oh right

MSmits: i never got a response on my message

eulerscheZahl: oh

eulerscheZahl: let's vandalize

MSmits: let me find the message, so i know what the error was

MSmits: err where do i see messages i sent?

eulerscheZahl: https://www.codingame.com/forum/u/MSmits/messages

eulerscheZahl: /sent

Astrobytes: M C has definitely been on since then, I mean he played OOC

MSmits: http://chat.codingame.com/pastebin/92b03ef7-754b-4dd1-950a-78ad5300c529

eulerscheZahl: while checking my forum profile i just realized that the OOC postmortem is my most upvoted one

AntiSquid: time for a ninja fix!

eulerscheZahl: share images instead of meaningful insights i guess :P

eulerscheZahl: i'm surprised, the replay is still up

MSmits: the statistics were great

MSmits: yeah

AntiSquid: ya i upvoted for cool image

MSmits: eulerscheZahl do you think you can fix the ant thing? I am afraid to touch it

eulerscheZahl: ok, will do

MSmits: I am sure the bug is there though

eulerscheZahl: first create an own contrib for testing

MSmits: ah right

AntiSquid: only upvoted actual PMs instead of just random statements and opinions, and only PM i've actually read

AntiSquid: MSmits gonna wreck the contrib ?

MSmits: thats what i was afraid of yes :P

MSmits: the fact that it is someone else's work makes it worse

jacek: hm?

eulerscheZahl: it might resubmit the bosses when i upload it

MSmits: does that mean everyone gets promoted?

eulerscheZahl: possibly

eulerscheZahl: at least some

eulerscheZahl: https://www.codingame.com/ide/demo/8412116d37650c63a0bb1570fcfdba066760bc

MSmits: maybe we should check with a cg dev first?

eulerscheZahl: preview. right now it's my own contrib for testing

AntiSquid: just yolo submit

MSmits: ok, will submit my bot in the highest league

MSmits: *after* i switch to c++ mode :P

MSmits: o right

MSmits: I am alone :P

Illedan: There is a bug in Langtons ant?

MSmits: yes

Illedan: which?

MSmits: when your ant goes off screen in the first game a boolean is set to true and is not set back to false for the second game

jacek: well ants are bugs anyway so whats the problem

eulerscheZahl: ok, the ant is moving again after it left the grid

MSmits: or false and not set back to true

eulerscheZahl: code:

eulerscheZahl: def player0(): http://chat.codingame.com/pastebin/2f0042e3-306a-4786-b162-89529d2f74bb

eulerscheZahl: seed=5165791258583332900

eulerscheZahl: play against yourself, python IDE bot

MSmits: ok

AntiSquid: of course there's a bug in langton's ant, the title would be misleading otherwise

Astrobytes: :smirk:

eulerscheZahl: the apostrophe in the title alone is a bug already

AntiSquid: nvm, chat scroll

MSmits: sigh

MSmits: now i put the python bot in my onitama ide

eulerscheZahl: hope you submitted instead of playing too :D

MSmits: hehe no :P

MSmits: yep it moves twice

MSmits: good job

eulerscheZahl: so, shall we risk it?

Illedan: Did trictrac tell his approach in Tulips?

Illedan: still ifs?

MSmits: well what is the alternative eulerscheZahl?

MSmits: if it resubmits the bosses, will there ever be anything we can do about that?

eulerscheZahl: let it broken? :D

eulerscheZahl: ok, let's do it :fingers_crossed:

MSmits: allright :)

eulerscheZahl: the zip is even smaller than before, i have a better zip compression

MSmits: and that with a whole extra line of code

MSmits: Illedan don't know, but trictrac almost always does a minimax, if he can

AntiSquid: is redstrike winning the bug? :P

BenjaminUrquhart: euler you said "let it broken" and so it became

https://i.imgur.com/VJwcEyZ.png

MSmits: AntiSquid he does abuse the bug sometimes, but his bot is better even without the bug

eulerscheZahl: what's that?

BenjaminUrquhart: CodinBotRelay logs

Illedan: Minmax is hard on the tulips though

BenjaminUrquhart: trying to fix some stuff that broke from CG updates

Astrobytes: If that's still ifs Illedan I'm seriously impressed

eulerscheZahl: https://prnt.sc/s6aqrv

jacek: Oups?

Astrobytes: What are you using Illedan?

eulerscheZahl: so i can't edit someone else's contribution after all?

MSmits: I guess so

Illedan: Which is nice :P

MSmits: Should I write a tech support ticket or something?

eulerscheZahl: yes

MSmits: ok will do

eulerscheZahl: ping thibaud on the forum, giving the line

MSmits: if you mention him in the message he gets pinged?

eulerscheZahl: private void reinit(){ // Réinitialse tout à la fin du premier round

       lastAction=null;
       touche_bord=new boolean[]{false,false};


AntiSquid: you can't call it just ifs if you do lots of searches and simulate the bloody game state

eulerscheZahl: @_CG_Thibaud

eulerscheZahl: sends an email to him

eulerscheZahl: the last line of the 3 above is what i added

MSmits: ah yes, resetting the touche_bord

Astrobytes: AntiSquid tric trac had no search previously in TaD

MSmits: where do i do this @_CG_Thibaud

dbdr: touché

AntiSquid: ya but do you call ooc bot with tracker only just if-else bot?

Astrobytes: It's just "touche" in the code

Astrobytes: We're talking about TaD tho

eulerscheZahl: in the forum MSmits

Astrobytes: @AntiSquid

MSmits: ok

eulerscheZahl: just start typing, autocomplete will help

AntiSquid: i am saying he might have a lot more than simple ifs to Astrobytes

MSmits: cool

Astrobytes: AntiSquid but he confirmed previously that he did not, we're speculating on what he has now

Astrobytes: I get what you mean

Astrobytes: dbdr how deep is your TaD minimax?

dbdr: 3, without checking the time :D

dbdr: about 20% timeouts

Astrobytes: Cool. I'm at 2, with a somewhat inefficient bot

Astrobytes: Rewrite tomorrow I guess

Astrobytes: eval just score?

dbdr: yeah

Astrobytes: Same. Trying to come up with some other ideas

wlesavo: TaD is cool name btw

AntiSquid: TD

AntiSquid: :D

eulerscheZahl: TD is taken

AntiSquid: 2x CR, 2x TD

eulerscheZahl: 2.5x CotR

dbdr: 2x CotR

dbdr: .5?

AntiSquid: good

Astrobytes: Code of the Rings

eulerscheZahl: coders of the realm 1+2

dbdr: eulerscheZahl! you were faster!!!!

eulerscheZahl: haha

dbdr: ah

AntiSquid: refer to checkers as C

struct: Y

AntiSquid: it's the acronym

AntiSquid: didn't see anyone say OA yet

trictrac: illedan, now i am with min max on TaD

MSmits: ha!

jacek: oO

Astrobytes: See, told ya's

BenjaminUrquhart: what's TaD?

BenjaminUrquhart: oh

jacek: turd

Astrobytes: Tulips and Daisies

BenjaminUrquhart: that flower one

Astrobytes: good work trictrac

BenjaminUrquhart: "Back in the 1980s, children in school had math notebooks in which the pages were printed by a grid of squares."

It's 2020 and that's what I use for math as well

BenjaminUrquhart: :thinking:

MSmits: me too

Astrobytes: Yeah I've got grid notebooks

trictrac: thanks but EricSMSO is better for the instant

MSmits: jacek, this is funny

dbdr: unacceptable :)

MSmits: i thought you would for sure pull me down with your chain submit

MSmits: and you did

MSmits: but you pulled karliso more :P

AntiSquid: are the costs varying from game to game for TaD ?

MSmits: maybe with more spam you could be nr 21

MSmits: 1

Astrobytes: No AntiSquid

jacek: and you can play certain game with this notebook https://i.redd.it/93aazuyvdow21.png

AntiSquid: we get them as input though :thinking:

Astrobytes: Yeah I know, annoying

MSmits: I love that notebook!

Astrobytes: yay organic chemistry

MSmits: it's a yavalath book!

AntiSquid: nice :D

AntiSquid: so what do you do when you don't draw carbon bonds? :p

Astrobytes: I drew all mine freehand, I wish I'd had a notebook like that

Nerchio: is tulips a good challenge to write my first monte carlo?

MSmits: what do you mean a monte carlo

eulerscheZahl: huge branching

MSmits: some people confuse monte carlo and monte carlo tree search

Nerchio: i meant mcts

AntiSquid: but what's wrong with free hand?

MSmits: do uttt for that

eulerscheZahl: smash the code is good for monte carlo

Astrobytes: Yeah they should have called it Oak Trees and Pine Trees

AntiSquid: wasn't there some rotation in chemistry that's very important to not mess up when drawing ?

MSmits: tulips will not work well with mcts if you've never done it before

Nerchio: i dont like tick tac toe not really into uttt :s

MSmits: hmm ok, then do bandas

Astrobytes: Are you talking about chirality AntiSquid?

eulerscheZahl: bandas is a good choice

eulerscheZahl: or connect4

MSmits: yeah but he wants an arena that gives cp

Nerchio: bandas looks more fun i guess

MSmits: and xp

eulerscheZahl: both have a limited branching so you get visible results with less rollouts already

MSmits: bandas is cool

AntiSquid: ya that one

MSmits: the pushing sim will be a bit complicated at first

MSmits: oware has similar complexity

MSmits: can do that too

AntiSquid: is chat being weird? i get like +5 lines pop up at a time

eulerscheZahl: also a good candidate for bitboards

eulerscheZahl: first the MCTS

eulerscheZahl: then the bitboards

eulerscheZahl: don't start 2 wars at once

MSmits: *now* you tell me :P

eulerscheZahl: i always did

MSmits: well yes, but not when i wrote my first mcts that already had bitboard :P

MSmits: took me a whole month

MSmits: actually

MSmits: maybe you told me

MSmits: I am stubborn

Astrobytes: Didn't you learn C++ during that time too tho

MSmits: yeah but i had bitboard and mcts in c# already

Astrobytes: *begin to learn*

AntiSquid: wait you can do mcts for csb no?

MSmits: yeah I guess you can

MSmits: but i think its hard

MSmits: people do minimax with it

struct: What did you use on Langton?

MSmits: mcts

AndrewLaneX: I got captcha'd

AndrewLaneX: :)

AntiSquid: nerchio if CP is your main goal: http://apps.rezonux.com/codingame/?user=ca7666783c8b1849544468008f6b2d3e1597351

struct: if CP go CSB, probably one of the easiest legend

MSmits: I saw you type something about FB as well

MSmits: 137 lines?

AntiSquid: 137 lines what?

MSmits: for a bot in FB to get legend

struct: legend 131 lines javascript

AntiSquid: BS @_@

struct: I had to spam submit gold

struct: But I got legend

AntiSquid: i guess you write it all in one like lol

MSmits: probably some strong heuristics and no spells

AntiSquid: how do you keep track of the game and what spells to cast lol

struct: I have spells

MSmits: oh

MSmits: do you search?

struct: Just heuristics

MSmits: ah ok

AntiSquid: "strong" heuristics, more like code golfed heuristics i bet

MSmits: well they have to be strong too

AntiSquid: if spaghetti can get legend yes, not arguing that, it's just the code size

MSmits: struct is pretty talented

Astrobytes: Especially at deleting accounts and finishing Yinsh :P

MSmits: he has many

AntiSquid: this isn't that struct ? this is Tobou or are they related?

Astrobytes: Many Yinshes?

MSmits: talents

Astrobytes: Same person squiddy

MSmits: they're all the same talented weirdo

AntiSquid: was struct made when tobou was still around as a username?

Astrobytes: Yeah

AntiSquid: maybe they were even both in chat at some point ...

AntiSquid: 1 alter ego too many

Astrobytes: He changed Tobou to struct, the proof.txt is on the MultiStruct github thanks to euler :D

MSmits: how long did he carry this secret?

Astrobytes: A year? Ish?

AntiSquid: i know the name changed to struct, but he had a second account then, which is weird considering how active he was on it

Astrobytes: He had more accounts too, Nulte was one, and there were others

AntiSquid: and he acted as a separate individual on it

AntiSquid: idk about nulte, just saw struct in chat A LOT!

Astrobytes: I busted his Nulte account in chat

AntiSquid: it's like Mr ROBOT lol

AntiSquid: (horrible show btw)

struct: I typed on phrase here and then deleted

struct: Or something like that

AntiSquid: struct it's ok

AntiSquid: create as many alts as you wish but please put some avatars on them, it's getting annoying

MSmits: this one has an avatar

AntiSquid: this is the main

Astrobytes: So did the Nulte one

eulerscheZahl: when struct was new (around the time when langton's ant came out), he even said that he is an alt. but that he's rarely chatting with the main account and we won't know him anyways

MSmits: or is it?

Astrobytes: Correct eulerscheZahl

MSmits: I remember that

MSmits: we all started guessing then

AntiSquid: ah, that time when we guess struct was the main and MSmits was his alt ?

MSmits: :)

Astrobytes: MStructs

struct: Whos the real struct

Astrobytes: There is no struct

Default avatar.png JBM: will the real struct please stand up

Astrobytes: Please stand up

Default avatar.png struct_s_main: hello

struct: hi

Nikhil_The_Lord: yo

struct: Are these structs?

Astrobytes: Infinistructs

Default avatar.png struct_s_main: automaton2000 hi

Automaton2000: i go for the big board

Astrobytes: All your structs are belong to us.

Default avatar.png struct_s_main: how to delete my alt ?

Astrobytes: Insanity.

struct: settings

struct: delete account

struct: The account is not deleted though

trictrac: hi struct, do you resubmit yinsh or never ?

struct: tritrac I will try to finish it, but I changed a few things

struct: For example no more multiple turns per player

struct: and notation also changed

trictrac: ok thank you good news

Astrobytes: Notatiion changed to what?

Astrobytes: *Notation

struct: So now if you have multiple moves you must apply them all on same turn

struct: http://www.gipf.com/yinsh/notations/notation.html

struct: To these notation

struct: this*

Astrobytes: I thought you did that already

struct: yes

struct: But I never submited that version to CGT

struct: CG

Astrobytes: Ahhh ok

Astrobytes: Multiple moves per turn sounds much better than the multiple turns in a row

MSmits: yeah

Default avatar.png structs_s_main: hi

MSmits: AntiSquid go back on your main, we dont believe you

**MSmits smells the squid in the struct

Astrobytes: MSmits sniffs squids

AntiSquid: when did anti-squid and squid become interchangeable ?

AntiSquid: :/

Astrobytes: WE have problems calling you Anti

Astrobytes: Too much like Auntie

Astrobytes: Auntie Squid

AntiSquid: also it's a different type of squid: https://www.youtube.com/watch?v=Kow1C3rt0Pw

AntiSquid: motorbike squids (people without protection)

MSmits: :squid: :motorcycle: that is the question

Astrobytes: loads of them round my way

AntiSquid: and bad at it too

Astrobytes: They bring shame upon their bikes

MSmits: I'll try to remember that you have nothing against sea creatures then AntiSquid

AntiSquid: no, i just play along with the joke

MSmits: o

AntiSquid: guess it would have been lame to just pick a "anti" + sea_creature_name

Astrobytes: antiseacucumber

AntiSquid: there's an anti dolphin group on facebook and reddit, wow https://imgur.com/a/ZPkdzPv

AntiSquid: this is what i found regarding that nick Astrobytes https://cdn.thetruthaboutcancer.com/wp-content/uploads/20190125173114/Sea-Cucumber-final1.jpg

Astrobytes: Intriguing...

Adnmaster: is there any way to find out if we're red or blue in the beginning of the game? (code royale)

AntiSquid: something to do with id of player? see statement

Astrobytes: Umm, position I think? Just off the top of my head

Astrobytes: Been a while, thankfully

Adnmaster: statement?

AntiSquid: the problem statement

Adnmaster: we dont have statement as i know

Astrobytes: The description of the game

AntiSquid: the description of ... yes that

Adnmaster: it doesnt say anything about it in the description

AntiSquid: well you have your queen's position

Adnmaster: it doesnt give that as input

AntiSquid: there was something ...

Adnmaster: oh

Adnmaster: sorry

Adnmaster: it does

AntiSquid: owner: http://chat.codingame.com/pastebin/acce473a-155a-4bad-9179-bb0d0bde4bd4

Adnmaster: thank you

Astrobytes: If the statement is too confusing there are simpler multiplayers

AntiSquid: ya, play ocean of code instead

Adnmaster: i think ocean of code is harder than this

AntiSquid: was a joke :D

Adnmaster: :D

AntiSquid: was code royale trello visible during its creation? :thinking: https://trello.com/b/i3PvOOlS/code-royale

AntiSquid: Automaton2000 say oops

Automaton2000: you would still have to figure out what i'm doing

Default avatar.png Atticus14: Are there answers to these?

Default avatar.png Atticus14: I am doing the Thor episode 1

Uljahn: there are hints on the left

Default avatar.png NatanaelXUFREGARCEZ: Hello everyone, I would like to make a question about Mars Lander. How do i detect where the ground is flat?

Default avatar.png NatanaelXUFREGARCEZ: please

struct: There will be two coordinates given where the y is the same

struct: Maybe there are more

struct: but pick the one with the longest distance of X

Default avatar.png NatanaelXUFREGARCEZ: I'm trying to find thos land coordinates but still not see it. Thanks anyway ;)

Default avatar.png NatanaelXUFREGARCEZ: will check the args[] but i dont think so

struct: its above

Default avatar.png NatanaelXUFREGARCEZ: inside the for loop?

Default avatar.png NatanaelXUFREGARCEZ: landX, landY ?

struct: yyes

Default avatar.png NatanaelXUFREGARCEZ: because they are declared in the loop, i cannot access them, should i remove the declaration outside the loop, or there is another way to have these values?

Default avatar.png NatanaelXUFREGARCEZ: to outside*

struct: you can declare the vars outside the loop

Default avatar.png NatanaelXUFREGARCEZ: ok, i thought i should not touch other parts of the default code. Thanks

AntiSquid: you can do whatever you want with the default code actually

Nerchio: yeah

Nerchio: like

Nerchio: MSG MUDA MUDA MUDA MUDA

AntiSquid: it's Thor puzzle Nerchio, it doesn't have an opponent or msg output

Nerchio: damn missed opportunity

Astrobytes: If you click on submit too many times in that puzzle you get a Thro finger

Astrobytes: *THOR

AntiSquid: joke ?

Astrobytes: I wouldn't go that far

MSmits: https://www.youtube.com/watch?v=knxq5EF-ohI

Astrobytes: Jesus

Astrobytes: I think I liked the Aladdin song better

MSmits: oh

MSmits: I will find it for you

Astrobytes: No no it's fine, I'll imagine it

MSmits: o ok

Astrobytes: :P

MSmits: I'm listening to it so you don't have to

Astrobytes: You are a true gentleman. how's the Onitama coming along?

MSmits: 22:44:38,347 INFO Temporary results (time left estimation : 6 minutes) : http://chat.codingame.com/pastebin/e57634ea-faca-4165-af2a-c208bcd68b19

MSmits: jacek is a hard nut to crack it seems

MSmits: but plenty of constants to fit :)

Astrobytes: Well, that karlis o winrate is good either way

MSmits: yeah

Astrobytes: What's with the draws?

MSmits: only 2

MSmits: vs darkhorse

MSmits: lemme find one

Astrobytes: yeah, why just v him

MSmits: https://www.codingame.com/replay/455101718

MSmits: hmm bad solving I think

MSmits: very late

MSmits: draws are hard to get though

Astrobytes: "Oups An error occurred (#UNAUTHORIZED): "You are not authorised to view replay 455101718". Please contact codersHS@codingame.com"

MSmits: ah yes

MSmits: sec

MSmits: https://www.codingame.com/share-replay/455101718

MSmits: it wasnt shared

MSmits: i think its just random that it was darkhorse, but it might have something to do with similarities in the search

Astrobytes: Got it now thanks. Yeah you called draw very late, is there a mistake earlier or

Astrobytes: Yeah as you say, maybe very similar search

MSmits: hmm it may just be the fact that there's many moves and no way to guide

MSmits: if everything leads to a draw, how would you be guided anywhere?

Astrobytes: Hm, true

MSmits: draws are hard to solve in uttt as well

dbdr: https://www.codingame.com/share-replay/455131552 game of poverty :D

Illedan: Cant view :(

MSmits: need to share

MSmits: i just did that too

Astrobytes: What's with that?

MSmits: IDE games are private until shared

Astrobytes: Oh wait CG changed something recently

MSmits: its a good thing

Astrobytes: yeah that

MSmits: I think it is to prevent people from taking solutions to optimization games

MSmits: but not sure

Astrobytes: Or finding contests?

MSmits: yeah that too I guess

AntiSquid: dbdr share replay !

dbdr: ?

dbdr: didn't I share?

Astrobytes: yeah but can't view it

dbdr: how do I share?

AntiSquid: click share button

Astrobytes: BigUP you finally made it, welcome to wood 1 :)

AntiSquid: when the joy of getting promoted is wood 1 ...

dbdr: https://www.codingame.com/replay/455132156

dbdr: better?

MSmits: sad game. Never become a gardener dbdr

Nerchio: people have -score in bandas lol

Astrobytes: lol

dbdr: MSmits why sad?

MSmits: I dunno, you tried to make a column of daisies and then he messed it up

MSmits: made me sad

MSmits: :sad:

MSmits: I'm just messing. I barely understand this game

Astrobytes: It's more the 0 gold and -1 gold :P

MSmits: yeah thats a lot of wasted effort

AntiSquid: dbdr i don't get it why didn't you do 4 in a row lol

MSmits: I think he tried to make a bigger combo

stacked: ::sunglasses:

AntiSquid: is that the strat? make the opponent timeout? ooc timeout strat ?

MSmits: he didnt timeout

MSmits: he goldout

AntiSquid: the opponent did

MSmits: dont think so

AntiSquid: nvm

Astrobytes: He didn't. He tried to use more gold than he has

MSmits: apparently flowers cost money

AntiSquid: you mean the flowers from the supermarket weren't free ?

dbdr: values gorws as the fibonnaci sequence

MSmits: think zombieflowers AntiSquid

Astrobytes: But not Plants vs Zombies

dbdr: less gore

wlesavo: dbdr especially in march 8

AntiSquid: plants vs zombies would be fun multi :p

AntiSquid: lots to code though

wlesavo: code vs zombies

Astrobytes: Isn't that just basically tower defence?

AntiSquid: completely different game wlesavo

stone43: how is it not tower defense?

wlesavo: all the names are already taken, huh

AntiSquid: plants vs scripts

MSmits: what is a good IDE to code python in, so that I can collapse functions and such?

BigUP: Astrobytes, thank's ;)

dbdr: MSmits CD editor can do it :)

dbdr: CG

MSmits: yeah this is for my AI assignment

MSmits: not for CG

MSmits: should I use Atom?

dbdr: you can still code in CG ;)

MSmits: there's multiple files

Astrobytes: VSCode, Sublime

dbdr: then copy paste out :upside_down:

Astrobytes: VS

MSmits: wait... visual studio is good for python?

Astrobytes: You can do python in it

MSmits: nice

Astrobytes: Just download the python bits and pieces for it

Astrobytes: Did you pass your security course OK btw MSmits

Astrobytes: Guessing you did since you're on the AI one now

MSmits: yeah very near maximum score, but there was supposed to be an oral exam... haven't heard back about that. Maybe they're waiting for the corona thing

Astrobytes: Cool. Yeah I'd imagine it's got something to do with that

MSmits: I'm glad it is done though, I didn't like the subject much

Astrobytes: Excellent submit dbdr, what did you do?

dbdr: went from depth 3 to depth 2 :D

Astrobytes: MSmits, I'm sure you'll enjoy the AI one a little better

Astrobytes: hahaha nice

dbdr: beware of my next depth 1 bot ;)

Astrobytes: lol

Astrobytes: Would of course be nice to be able to test against Rust bots in the IDE...

MSmits: gj dbdr, picking flowers like a pro

Astrobytes: Another reason to switch to rust right? :D

MSmits: double edged sword. He can't test vs us either, this is worse

Astrobytes: Really?

MSmits: yeah, it's the same IDE. He has to submit to test

MSmits: afaik

dbdr: I can if I send the compiled binary

MSmits: ahh o

MSmits: k

Astrobytes: Damn, what a pain in the ass

dbdr: it is, but minor

dbdr: can be scripted, like everything

Astrobytes: ofc :)

Default avatar.png TheoAguilar: who is computer science here

Nerchio: i am THE science

Nerchio: you should be afraid

Default avatar.png JBM: is science scary?

Astrobytes: No. It's the scientists you need to worry about.

Default avatar.png JBM: i KNEW it

dbdr: burn the witches!

Default avatar.png JBM: BURN

MSmits: :fire: :fire:

coderinblack: sure

Default avatar.png hozayfeh: Hi

icecream17: Wow. My wood2 boss was 2nd place, so I resubmit with improvements, and now it's 2nd place in wood1

hozayfeh: HIiiiiiiiiiiiiiiii

Durkin: huh, anyone know off the top of the head if two lightcycles 'heads' can collide for a tie in Tron?

Uljahn: no, they move sequentially

Default avatar.png nthistle: @stacked rip I lost the chat window

stacked: for which one lol