Chat:World/2021-05-17
ddreams: I do 3 shifts + 1 filter for 3-shadow, 2 shifts for 2, 1 shift for 1
ddreams: it's just a single & tho
struct: probably similar ddreams
struct: I think
BrunoFelthes: is it better to use another kind of index?
struct: But i dont really need to filter
eulerscheZahl: https://imgur.com/a/FgBBsgb that's something I shared last week
eulerscheZahl: the idea is to have same difference of value in each direction
eulerscheZahl: you have a list of set bits. and you shift all by 7 to cast the shadow up-right
BrunoFelthes: nice
ddreams: I use this: https://www.redblobgames.com/grids/hexagons/#map-storage
eulerscheZahl: but for longer shadows you have to unset the bits that are out of the map
eulerscheZahl: struct found a way to avoid the unset
struct: you can share the pic euler
struct: if you want
eulerscheZahl: if i find it again
struct: https://imgur.com/a/RC6GgTJ
kovi: 37 pos < 64-3*8 so it is possible
eulerscheZahl: https://imgur.com/a/RC6GgTJ
PatrickMcGinnisII: i gave up with shadow maps
eulerscheZahl: (╯°□°)╯︵ ┻━┻
PatrickMcGinnisII: i added a 37th cell
ZarthaxX: :P
PatrickMcGinnisII: and just compute only those i'm interested in
PatrickMcGinnisII: $shbydir=[[[1,7,19],[2,9,22],[3,11,25],[4,13,28],[5,15,31],[6,17,34]], http://chat.codingame.com/pastebin/284e7f45-3a3d-44f7-b7ad-b10eeed560f8
eulerscheZahl: you added a 37th? there are 37 already
PatrickMcGinnisII: [index][day][size]
ClockSort: struct did you get mcts going?
struct: I dont know duct mcts
PatrickMcGinnisII: ok 0-37, 38 of them
struct: so no
eulerscheZahl: 0-36, you added 37. which is the 38th cell
PatrickMcGinnisII: adding a simple day=(day+1)%6 makes it easy to estimate 'future' shadows for grow evals that are equal
PatrickMcGinnisII: i'm gonna resub for the final time
ddreams: huh.. I missed one separator bit
PatrickMcGinnisII: my depth 2 failed
ddreams: http://chat.codingame.com/pastebin/db7d18a7-0b45-4b9f-a8a7-ef44204f23b7
ddreams: that's why I have to filter
ddreams: though that single bit and is not what broke my bot :p
PatrickMcGinnisII: game isn't really memory intensive, just execution ... I use a couple shifts, but it's not worth the coding/encoding imho
PatrickMcGinnisII: php uses 4 bytes for an int...so 38*4=154 bytes...could store thousands of boards if i could get the darn tree to work
PatrickMcGinnisII: i can't multiply either
Wontonimo: it's not about saving space in RAM, it's about saving space on L1 and L2 cache
eulerscheZahl: you need 8 bytes for proper bitboarding
ddreams: and doing parallel operations
PatrickMcGinnisII: i gave it a go, but i still had to clear bits so it wasn't saving me time
Wontonimo: i tried packing instead of boarding... if you like your code to run 3x slower than the competition, I'd recommend it.
ddreams: I'll do another long shot submit... not really better locally, but let's see
struct: Sometimes is not worth to save bytes
ddreams: 3/10 .. almost certainly worse
PatrickMcGinnisII: i was 735th b4 this last submit, so i'll see how it goes and throw in the towel
PatrickMcGinnisII: the first 5 moves are pretty standardized
ddreams: ok, this is clearly worse
PatrickMcGinnisII: the first 11 moves are VERY patterned
PatrickMcGinnisII: my endgame sux
PatrickMcGinnisII: gl ddreams
ClockSort: do you guys use priority_queue<state> for your beam search?
struct: array
ClockSort: how do you run the beam? sort(arr.begin()+depth, arr.begin()+depthEnd) ?
struct: nth_element
ddreams: nth_element
ClockSort: :eyes:
ClockSort: thanks
pmor: nth_element is way better than sort in this situation
ClockSort: yeah, because you don't need to sort what you throw away
ddreams: and you don't need to sort what you don't either
pmor: you don't need to sort what you keep either
Counterbalance: :sweat_smile:
pmor: heh
ddreams: it's basically a partition
ClockSort: does c# have a function like this?
ClockSort: right on.
JohnCM: haha
ClockSort: you overload operator< on the state class to make nth_element work?
Wontonimo: gn all, and good luck
ClockSort: or just pass cmp
pmor: lamdba funciton
pmor: lambda function even :P
JohnCM: so exciting, ppl are resubmitting so much the ranks are fluctuating violently
ClockSort: nth_element is amazing, i'd never used it
ClockSort: thanks
Counterbalance: wow.. lost first 10 games in legend.. maybe top gold was better :D
ddreams: chat is distracting but also teaching
Zenoscave: how long are submits rn? Worth it or should I call it
Counterbalance: 37 minutes
PatrickMcGinnisII: 10 minutes=39%
Bernard_Lowe: Does anyone else feel that not pushing your code for awhile results in your rank doing better? Maybe it's just psychological for me.
ClockSort: @Bernard_Lowe it's true
Bernard_Lowe: After a submission from say a few hours earlier.
Zaphus: you are more likely to get a random game with someone resubmitting than with the ones around you - so makes sense
ddreams: yeah, I can't reach anywhere near my old ranking with the same code
PatrickMcGinnisII: It's usually harder the later in the contest to make any real substantial moves, but this game has tight scoring.
ddreams: and I'm pretty sure it's not because a lot of people have gone past it
struct: holy only 3:30 hours remaining
struct: and i didnt do anything
struct: I should just go to sleep
Bernard_Lowe: I definitely agree to that @PatrickMcGinnisll. I submitted new code recently and the ranks were much more difficult than 24 hours ago.
PatrickMcGinnisII: those that push when leagues open fair better in the long run imho
ClockSort: recurse lead is even more redic now
ClockSort: more than 5 trueskill pts
struct: 93% win rate
struct: decent
ddreams: back to my 13 hour old code, my last submit
ddreams: lol, decent
Bernard_Lowe: I heard recurse didn't submit any code until weekend. Why would he do that?
pmor: did he ever say what kind of bot it is?
ClockSort: because he is amazing
ddreams: so people would not be able to practice against him so easily
struct: batching has been nerfed
ClockSort: i think it's NN ?
struct: dont think its that
ddreams: well, NN with a search
ddreams: no idea really
pmor: in the fall challenge he had an alt account he used in the beginning
MichaelPu: probably some kind of NN, because he always wins just by a little bit
ddreams: the mcts algos can also do that
PatrickMcGinnisII: I watched a little, recurse didn't order the moves...like grow then seed...some went seed then grow... so probably some kinda mcts
Bernard_Lowe: @pmor is that fair to have an alt account? I guess he's a prominent player.
struct: why isnt it fair?
pmor: no idea. I just remember he had an acct that submitted a rust bot before he submitted a c++ bot a few days later
ddreams: because other top players are not in hiding?
Bernard_Lowe: If he copy/pasted code for 5 bots to all get top 5, that would be wrong. But I understand not wanting the attention.
Numby: when you don't submit you also can't test your code vs the top players so there's a tradeoff
Bernard_Lowe: I wasn't aware all top players are hiding on alts lol.
ddreams: but anyway, probably better for the game to have alts with visible fights instead of completely hiding until the weekend
struct: Also there is no proof that he hided
struct: There is a different from hiding and hiding while batching
struct: difference*
Numby: what's batching?
PatrickMcGinnisII: my last version failed, i hate deleting code
struct: testing vs other players
ddreams: he said he only tested using the IDE this time
ClockSort: @PatrickMcGinnisII I went backwards by hours of development time because i was making things worse. don't feel bad :)
PatrickMcGinnisII: oh i wasted days looking for combos
ddreams: I feel sleepy.. going to bed
ClockSort: struct what kind of bot do you think recurse used?
ddreams: gn fun playing with "youse"
ClockSort: cya ddreams
struct: i dont know
pmor: I look forward to his postmortem
PatrickMcGinnisII: but i'm remodelling a house of mine, so I've been pretty tired and zero 10 hour banging out code sessions...I even left CG open and fell asleep once...smh
Smelty: ye postmortem gonna be cool
Bernard_Lowe: @pmor where can you read his postmortem, or any of this tournament? Will it be on forums?
Smelty: lol i probably won't write a post-mortem, im at the bottom of gold
pmor: Yeah, it'll be in the feedback and strategies thread
pmor: Here's his from last contest https://www.codingame.com/forum/t/fall-challenge-2020-feedbacks-strategies/187846/81
Smelty: :0
PatrickMcGinnisII: give it a couple days, the OG gamers will give a little...but remember there is a game after the contest
Smelty: yes
Smelty: ill surf to gold in the game
PatrickMcGinnisII: i bet the bosses will be harder tho, huh struct
struct: what do you mean?
Smelty: hmm
Bernard_Lowe: Also, dumb question, but, what will this challenge be called?
PatrickMcGinnisII: silver boss won't get harder for after contest game?
Bernard_Lowe: The Plant Growing Groot Game :) ?
Zenoscave: probably spring challenge 2021
struct: nope
Zenoscave: they stopped doing names I think
PatrickMcGinnisII: I liked the games ebing named after movies
eulerscheZahl: soon we will know if the next contest will be an escape one
Zenoscave: escape contest?
Zenoscave: like first to finish wins?
eulerscheZahl: https://www.codingame.com/forum/t/solo-contests/1114/3
struct: I hate this :'(
Westicles: As the head of team NA, with my first pick I choose reCurse
PatrickMcGinnisII: there used to be old MOO games...is that what escape is?
eulerscheZahl: shouldn't me be the team head?
eulerscheZahl: he*
eulerscheZahl: bad typo
Westicles: maybe next time
Zenoscave: Also if it's only going to be a weekend do we still have to wait 6 months
eulerscheZahl: escape: you see a room and can click around to solve riddles
eulerscheZahl: follow clues, guess passwords to reach the next stage
Zenoscave: What coding is involved
eulerscheZahl: a little bit
eulerscheZahl: struct knows better
eulerscheZahl: you should have 1 coder in the team
struct: tr 'ACGT','TGCA'
struct: hard puzzle
eulerscheZahl: are you clashing?
struct: well its similar
struct: to a clash
struct: there is a clash like that
JohnCM: the escape rooms are pretty fun, i completed them all alr
struct: or there was
JohnCM: at least those that were released
eulerscheZahl: oh, that example is from the escape?
struct: yes
Zenoscave: Let me get this striaght. A competition. On a platform designed to be about coding competitions. is going to do a competition needing minimal coding
eulerscheZahl: not confirmed yet
Zenoscave: If they do I'm done
eulerscheZahl: just me being scared of the worst
struct: the coding difficulty has been on par with easy clashes
eulerscheZahl: and ClockSort even liked that forum post
eulerscheZahl: shame on you
ClockSort: ha
Zenoscave: shame ClockSort
Zenoscave: shameeeee
aangairbender: yeah that escape rooms are not about coding
PatrickMcGinnisII: beforre the internet, there were MOO servers that would drop you in a kind of maze... you had to run a dictionary and solve seemingly random things ... that only a computer crunching the english language could solve...it was hard...ran a few on university server in pascal. clues were sparse.
JohnCM: escape room coding level is easy
eulerscheZahl: maybe i'm completely mistaken. I hope so
JohnCM: you just need to do some for loop, and it's done already
ClockSort: i have some escaper-friends so we would love a team escape contest :)
aangairbender: I enjoy solving past multiplayers as 'solo' contests
eulerscheZahl: if they still do the coding contests and the other thing on top, i don't care
JohnCM: but i think bot coding is like fundamentally different from escape room
JohnCM: don't think it will clash
ClockSort: bot coding is different from a lot of things
ClockSort: i do competitive programming on codeforces.com and it's totally different from that
eulerscheZahl: like tech.io. the concept isn't even bad. but they failed to move their CG community over to the other platform. points of interest are too different
eulerscheZahl: i suck on codeforces
ZarthaxX: same
struct: I opened a puzzle and then deleted
ZarthaxX: :rofl:
eulerscheZahl: candidate master eulerscheZahl
ZarthaxX: your obsession with deleting is impressive
eulerscheZahl: a purple peasant
ZarthaxX: thats good eulerscheZahl
ZarthaxX: are you kidding lol
struct: 3 hours until delete :'(
PatrickMcGinnisII: did THE Toad do HashCode this year?
eulerscheZahl: yes, but my good rank is all thanks to Neumann in my team
struct: that is what top %?
eulerscheZahl: team DEIN, rank 78 i think
PatrickMcGinnisII: NICE
eulerscheZahl: again, not my achievement
ZarthaxX: nice one toad
PatrickMcGinnisII: does CG re-run everyone or just legend?
eulerscheZahl: top100
ZarthaxX: top 100 legend
ZarthaxX: aaaaaaaaah
ZarthaxX: but they start from actual position
eulerscheZahl: min(100, legendSize) to be precise
eulerscheZahl: but legend is huge, so...
ZarthaxX: isnt it a bit like boring tho
ZarthaxX: as everyone starts from actual rank
eulerscheZahl: I think i'm done writing my ante mortem
ZarthaxX: you already know the results
eulerscheZahl: i gave up
ZarthaxX: :rofl:
PatrickMcGinnisII: Maybe i'll get my DFS to work on the game after the contest
ZarthaxX: why not BEFORE patrick
struct: wow massive improvements
struct: i finally found it
Westicles: What are the odds a new #1 shows up? 1/12?
eulerscheZahl: less
ZarthaxX: 0
ClockSort: @struct what did you find?
ZarthaxX: struct?????????
ZarthaxX: PM ME THAT NOW
struct: 52% vs 48% massive
PatrickMcGinnisII: My brain is shot, too much physical labor lately.
ZarthaxX: ...
struct: MassiVE
ZarthaxX: this guy :P
eulerscheZahl: but only submits at 65%
struct: renting aws machine was waste of money
struct: lol
ClockSort: :question_mark:
cegprakash: eulerscheZahl if u have many CG T shirts feel free to give my address this time :P
eulerscheZahl: but having it isn't the same as winning it
eulerscheZahl: it won't make you happy
JohnCM: we should have a newbie shirt, for best 10 newbies who don't already have a cg shirt
struct: ok im not gonna give up yet
ZarthaxX: still owe you one, need to hit that top 20 some day
JohnCM: XD
ClockSort: what are you talking about
struct: We should have a shirt for testers
struct: /s
ZarthaxX: LOL
ZarthaxX: struct shouldnt you be sleeping rn?
struct: its only 6 am
ZarthaxX: only
ZarthaxX: :D
ZarthaxX: gonna stay until 9?
LLG: seems like I'm not hitting legend this contest as well
PatrickMcGinnisII: if I ever run into you guys at a comicon or some crap and i see a CG t-shirt...Imma rob you
LLG: capped out at 40 gold, anything I do make it worse
ZarthaxX: LLG try winning
ZarthaxX: :)
LLG: still an improvement from 400ish gold last contest
LLG: I'm trying ZarthaxX
LLG: my bot doesn't want to cooperate
PatrickMcGinnisII: who taught ZarthaxX??? he went from zero to hero in like a year
PatrickMcGinnisII: hehehehe
PatrickMcGinnisII: sry
ClockSort: legend is tough, don't feel bad @LLG
ClockSort: the gold boss is obnoxious to get past, too
ZarthaxX: LLG same, hate my bot
JohnCM: that gold boss...
ZarthaxX: try resubmitting tho :)
ClockSort: haha
JohnCM: i dunno what i need to do to win it
ClockSort: i
ZarthaxX: PatrickMcGinnisII what haha, a year? more like couple years :D
LLG: I had a bot that wins against the gold boss 7/10 times
LLG: but it somehow never made it near the boss
ClockSort: i'm #19 legend, a chance for a prize :sweat_smile:
JohnCM: overfitting then
LLG: probably a rock-paper-scissors thing
ClockSort: @LLG that was happening to me too! play against the #2 guy behind the boss and he seems stronger
eulerscheZahl: i don't want to discourage you ClockSort. but some are in submit, you'll always drop a bit. will be a close call
ZarthaxX: i was gonna say that toad
JohnCM: actually a lot of ppl are very strong in the top 100 gold league, they just haven't passed the gold boss yet
ZarthaxX: :D
struct: no way that ill resubmit unless 65
JohnCM: euler, how was code jam this year?
struct: against all my other versions
eulerscheZahl: :sob:
eulerscheZahl: 1194th, needed 1000
LLG: yeah I realized that too JohnCM
LLG: every fight in top 100 gold right now feels like a map RNG for me
eulerscheZahl: and short after the contest i got the idea how to solve a problem
LLG: I could technically win against any bot in top 100 if I get a map my bot is good on
JohnCM: man, better luck next year then euler. i'm probably joining next year too
JohnCM: now that i know how to code in c++
eulerscheZahl: codejam works with pretty much any language
ZarthaxX: you need to learn how to do it fast tho
ZarthaxX: true
LLG: I told myself after last contest I'd do c++ for this one
LLG: I ended up doing c# anyway
eulerscheZahl: for CG C++ is more important
ZarthaxX: :rofl:
eulerscheZahl: I did the last in C++ and switched back to C# for this one
struct: I use c++ as a wraper to not get bullied
eulerscheZahl: only to deny Zenoscave's language achievement
struct: I use D
LLG: you're good with your D huh
eulerscheZahl: https://discord.com/channels/466965651135922206/832610056604221481/839559980663308309
PatrickMcGinnisII: there's no CG players near me that i can tell
struct: 1 legend and 1 in gold from portugal
struct: :(
ZarthaxX: gn guys see you after contest ends
eulerscheZahl: we are all near you in chat
ClockSort: @eulerscheZahl yeah i expect ~25th by the end of it all. Anything 30th or higher i'll be happy.
ZarthaxX: :*
struct: gn ZarthaxX
ClockSort: see ya @ZarthaxX
struct: Maybe I should do pt stream
ZarthaxX: gl getting that top 20 ClockSort! will check tomorrow :)
eulerscheZahl: it's today for you already
eulerscheZahl: 2am, isn't it?
PatrickMcGinnisII: you know, if a couple of us actually sat down and had some BBQ in RL, we'd prolly be Billionaires
ZarthaxX: yes, exactly lol
ZarthaxX: well, in a couple hours..
ZarthaxX: toad always gets me
ZarthaxX: bb
eulerscheZahl: good night
struct: gn
Bernard_Lowe: @Clocksort GL winning the fabled T-shirts lol.
PatrickMcGinnisII: crap 1am... I gotta throw 10 gallons of paint tomorrow
eulerscheZahl: oh, the whale promoted
eulerscheZahl: did you change profession PatrickMcGinnisII?
PatrickMcGinnisII: nah, remodelling a rental house...so i can sell it...market is ripe for selling my rentals
Westicles: exciting race on for tops in objC
pmor: central florida housing market is insane right now.
PatrickMcGinnisII: i do like 3 different things for income...laser products, landlord, web, -- mainly.
PatrickMcGinnisII: oh where u at pmor?
pmor: winter garden
Nero39: lca
PatrickMcGinnisII: i know orlando a little bit
eulerscheZahl: PatrickMcGinnisII selling the house to pmor?
pmor: ha!
PatrickMcGinnisII: i got offers already and its not on the market yet
PatrickMcGinnisII: crazy stuff
pmor: house next to mine was on the market for 3 days
PatrickMcGinnisII: I have had this house for like 6 years, put in like 65k...gonna sell it for 165k...crazy profit
pmor: that's cheap compared to here.
PatrickMcGinnisII: I started seeding the lawn, people kept stopping and bugging me
PatrickMcGinnisII: buyers are hungry
Bernard_Lowe: @pmor can confirm, from Orlando as well. I'll never get a house.
PatrickMcGinnisII: yea, winter garden is more expensive
pmor: Family member just built a house. They had offers over 150k than they payed to resell it
PatrickMcGinnisII: I don't live in a 150k house tho...pfft
PatrickMcGinnisII: i bought a property unseen in colorado...sold it a week later for +10k
PatrickMcGinnisII: people r so wierd
Westicles: He says lasers and houses and people want to talk about houses
PatrickMcGinnisII: i'll talk about anything, idc
PatrickMcGinnisII: i'm excited someone on CG is in FL
cegprakash: interesting seed to test: seed=5610932785868666900
cegprakash: ^ might help ppl in gold
Westicles: Kids don't get excited about lasers and nuclear war like we did back in the day
Bernard_Lowe: I don't need a laser to live, but I do need a house...
Bernard_Lowe: I guess I could go homeless.
PatrickMcGinnisII: https://www.codingame.com/replay/557394033
PatrickMcGinnisII: I tell people..."I cut stuff with light... I'm like a Jedi and stuff" ... and then walk off. ;)
eulerscheZahl: https://www.codingame.com/share-replay/557394615
struct: oh amazon finally updated the charge :D
struct: the cost
struct: 6.27 EUR
eulerscheZahl: and that as someone who plays out of competition
cegprakash: my bot is in a rank that my bot can never reach if I resubmit ;P
cegprakash: anyone else feel the same? :P
ClockSort: @cegprakash same
Bernard_Lowe: Yep. The competition gets harder to climb each time.
dGrayCoder: I wish this competition was a bit longer D:
ClockSort: just hold still for 2 hrs 38 min.
ClockSort: @dGrayCoder 11 days not enough? :O
ClockSort: i'm fried, would prefer 7 days contest
Bernard_Lowe: you and/or delineate need to win a T-shirt. Make us americans feel good :)
dGrayCoder: Next game comes after half a year
PatrickMcGinnisII: as long as someone is kicking Miyaza's butt
Bernard_Lowe: 11 days for a competition is a long time. I felt burnout after 8 days.
eulerscheZahl: dGrayCoder we don't know yet.will be announced right after this contest ends
PatrickMcGinnisII: ClockSort can't do a NN in 7 days me thinks
PatrickMcGinnisII: ok i lost 90 ranks on last submit, throwing in the towel
ClockSort: @Bernard_Lowe my chance of top-20 is about 15% I think
PatrickMcGinnisII: i thought top 3 was the real goal
eulerscheZahl: i liked the shorter contests. in the past they started on Friday and ended on Saturday, leading to a total of 8 days
Bernard_Lowe: Why do you think your chances are so low?
ClockSort: because there are many smart people on earth
eulerscheZahl: and some of them are in submit
struct: so many smart and im not one of them
Bernard_Lowe: lol. Everyone at the top is submitting and adjusting every 10 minutes.
ClockSort: that's it for me. good night all! ggs
PatrickMcGinnisII: I've lost more brain cells than alot of Normies even have to rub together
eulerscheZahl: see you
PatrickMcGinnisII: heh
struct: cya
PatrickMcGinnisII: i g2g too
eulerscheZahl: you'll wake up a few times and check the leaderboard ClockSort
PatrickMcGinnisII: yall be good, and if you can't be good - be good at it
PatrickMcGinnisII: i'll celebrate top 1k tomorrow
1XC: I hate fast mode and I always get it
dGrayCoder: are game rules same for legend, gold and silver?
JohnCM: yes
struct: and bronze
Pick8chu: eulerscheZahl dang you got on 7
Pick8chu: congrats man
Pick8chu: undercoverToad
LLG: clocksort at 21
LLG: 🙏
Anzc: hello
dGrayCoder: can max number of days be different for every match?
pmor: no
cegprakash: for those who are not in gold yet quick tip: sort all possible moves by target index if they are same sort by source index and print the first valid move :)
LLG: quick tip: code a bot
struct: getting frustrated :(
nam4.nguyen: wow I got top 180 in gold league after modifying a bit
nam4.nguyen: that's amazing cause just a little change can improve that much
cegprakash: what did u change nam4.nguyen
nam4.nguyen: Just seed when there's no seed already
nam4.nguyen: and keep s3 = 4 for almost time
cegprakash: I thought 5 is ideal
cegprakash: anyway I think it depends on other parts of the code :P
cegprakash: let me watch a replay with u
cegprakash: I'm in the same range
nam4.nguyen: yeah there's so many params to do with
LLG: I did a singular change and it bumped my bot from 200 gold top 50 gold
LLG: what I did was load an old submit and resubmit it :^
LLG: to 50*
nam4.nguyen: it's true
cegprakash: LLG what did u change :o
nam4.nguyen: my old one got more point than new one
LLG: cegprakash like I said, just load an old submit lol
cegprakash: lol
LLG: basically I load the bot that doesn't look ahead 1 turn to check for optimal seed placement
cegprakash: so u have time traveled
LLG: it just maximize seed placement for the current turn
LLG: and uhhh it also didn't look at sequence of grow moves to evaluate
LLG: just evaluate each move separately
LLG: and it performed better
nam4.nguyen: I didn't even consider about sun direction and shadow
nam4.nguyen: that's why I doubt about my rank
cegprakash: Jon Arryn in Game of Thrones said "The seed is strong" before he died. True indeed.. Seed decides who wins
eulerscheZahl: Pick8chu 07:30AM eulerscheZahl dang you got on 7
thanks but way too early to tell. bots in that range are close
struct: Why do I still stay awake
struct: during final hours..
cegprakash: struct coz u believe in one magic number chaging ranks :P
cegprakash: like me
struct: one number wont do much
struct: I ran fiddler for 300k games
struct: didnt work
cegprakash: fiddler against urself?
LLG: nam4.nguyen I never considered sun and shadow either
struct: yes
cegprakash: against urself don't matter at all
LLG: I just make sure my bot doesn't plant trees that cuck themselves
struct: my current bot was only improved by fighting other versions of itself
struct: ofc it matters
MSmits: morning guys
struct: I dont think I ever tested against a player in the ide
cegprakash: buggy bots can perform better in most maps :P
struct: hi MSmits
struct: no bugs here
cegprakash: no bugs? literally no one ever
MSmits: I promised to share some sim stuff about this game, but gonna wait a bit to see if others will in their PM. Otherwise I don't have too much to add
MSmits: expecting to see plenty of PMs
eulerscheZahl: mine omits bit boards and such, struct can do that better
eulerscheZahl: chat is getting laggy agin
struct: im sure plenty of people did the same type I did
UndercoverToad: this is better
eulerscheZahl: my post mortem is long enough without
UndercoverToad: wrong chat
struct: But I did it first cant deny it
struct: I did it on day 2 or 3 of testing
Butanium: I have 2 hours of english class to finish my MCTS lol
MSmits: btw, in the end I think the legend boss was not too bad. They could have made it slightly stronger, but I had a hard time beating it and legend did not reach 300
Butanium: it's going to be hard
MSmits: gold boss i mean
MSmits: these contests are just getting really big
UndercoverToad: you already speak English, you don't need that class
struct: 1:50
LLG: I speak english as a foreign language, still didn't need english class
struct: its almost over
LLG: internet taught me more than any teacher ever did
dGrayCoder: how are some players able make their npc say words?
struct: seed 10 9 message
dGrayCoder: message function?
LLG: just a string
LLG: basically anything after your actual command gets printed as a message
struct: seed 10 9 anything you want
LLG: COMPLETE 3 Never gonna give you up
ddreams: Illedan gratulerer med dagen :)
ddreams: you haven't given up
struct: if I get <= 50 im happy
struct: its a decent result for 20+ days contest
ddreams: I'm really surprised that none of the changes I tried improved it... need to find a way to visualize the beam search
struct: I tried visualizing it
ddreams: must be buggy somehow
struct: I printed it to text file
struct: but good luck
ddreams: mm.. big data
cegprakash: submits stuck oh god
UndercoverToad: no, leaderboard is still moving
UndercoverToad: just > 300 submitting again
Pick8chu: dang..
TootiFlooti: they extended deadline??
Pick8chu: sad that i won't be able to get in legend league
Pick8chu: idon't think so they did?
UndercoverToad: no, it ends in 1.5h as planned all the time
TootiFlooti: idk I remember i checked last night and it was supposed to end at 8PM pacific time.
TootiFlooti: oh then i just saw the wrong time
TootiFlooti: Will this software be available for practice after the challenge. I dont think i can get past gold tonight but i would like to continue working on it tomorrow
UndercoverToad: you can keep playing the game
UndercoverToad: will be unavailable for a bit. sometimes it comes back the same day, sometimes you have to wait 1 or 2 days
UndercoverToad: you will also keep your position on the leaderboard and all the submit history
Bax533: What happens if my submit won't finish fighting before deadline? Will it still count if i submit before deadline?
TootiFlooti: dope!! This is the first time I tried a challenge a friend of my introduced me to it and I have had a lot of fun so I look forward to more challenges in the future
UndercoverToad: all submits will finish. that includes league promotions
UndercoverToad: then top100 will face a rerun to reduce ranking randomness
Pick8chu: Hey UndercoverToad
UndercoverToad: hi
Pick8chu: you got on top 7
Bax533: Great thanks
Pick8chu: nice job man
UndercoverToad: there are still some stronger players in submit
UndercoverToad: i'm happy if i can stay in top10 but it's really close
Pick8chu: aha
Pick8chu: dang..it's just crazy that you made it that far
UndercoverToad: but thanks, i'm satisfied with my result overall
Pick8chu: So you used best first search?
UndercoverToad: beam search
UndercoverToad: i made some writeup already, will post after the end
LLG: looking forward to that
Pick8chu: Oh that'd be awesome
LLG: couldn't get my beam search going so I went with a pure heuristics approach
Pick8chu: I really wanted to learn how you did it haha thanks
UndercoverToad: you will be disappointed by how little i have inside my bot
struct: :/
struct: I also have little I guess
Pick8chu: I'm excited
TootiFlooti: the top scorers all are using c++ and C#
TootiFlooti: what are you all using
struct: im using chokudai
UndercoverToad: for this game it's a crucial to get several thousand actions simulated. that makes it hard for python at the top
Pick8chu: I'm using C++ but i'm not even legend
struct: Its beam search but it expands beam width
UndercoverToad: didn't try for this contest. but Neumann says he got pretty much the same result with beam and chokudai
struct: yeah
struct: no gain
UndercoverToad: but no loss either
Pick8chu: is chokudai algorithm too?
Pick8chu: haven't heard of it
Pick8chu: can't find anything on google
UndercoverToad: not that commonly known, named after a user with that name
Pick8chu: Ohh..
UndercoverToad: the idea is to have a fixed search depth. you start expanding in a best-first manner
UndercoverToad: then you go back to the start and expand the 2nd best
UndercoverToad: and keep going to make the search wider while keeping the same depth
UndercoverToad: until you run out of time
Pick8chu: I see
UndercoverToad: no witchcraft involved
Pick8chu: what's the differences with beam? it has unlimited dept?
Pick8chu: *depth
struct: but not width
UndercoverToad: chokudai = fixed depth, dynamic width beam = fixed width, dynamic depth
Pick8chu: Oh...I se
Pick8chu: e
UndercoverToad: and both lack opponent handling, better suited for a single player optimization problem
struct: ok I give up
struct: its time
Pick8chu: lol
Pick8chu: you did great tho
Pick8chu: top 30 aren't you?
struct: no
struct: top 50
struct: for now
Pick8chu: impressive enough
Pick8chu: I'm top 700 or something lo
Pick8chu: gg
dbdr: Illedan spam submitting magic constants? ;)
UndercoverToad: the classic Illedan
UndercoverToad: who hasn't seen him doing this?
ddreams: autosubmitter
UndercoverToad: no, he does that manually
ddreams: parameterfiddler with autosubmit, clearly
UndercoverToad: even managed to play > 1000 games in IDE last contest. by hand
struct: MSmits does that on his sleep for yavalath
UndercoverToad: cat woke me up at night and wanted something. My first thought was like "i'll let the search finish first, maybe she's still sleeping at higher depth"
dbdr: noobs, seeing it for the first time :)
UndercoverToad: i wish I was kidding
struct: lol
ddreams: the tetris effect
solistice: hmm, should I try to go for legend? :D
solistice: 1hr to go
solistice: :')
UndercoverToad: "legend or delete" is a popular game here
dbdr: you need to give your account password to Blaise, he does the deleting
struct: I feel like I missed something obvious on eval
UndercoverToad: do you have suns? :P
dbdr: not sure anything is obvious in eval :)
dbdr: I considered counting suns negatively ;)
struct: o.o
UndercoverToad: because you didn't spend them?
dbdr: yeah
UndercoverToad: i have a factor > 1/3 for suns
Pick8chu: lmao legend or delete
UndercoverToad: this is struct's 3rd account
Pick8chu: LMAO
NotSureWhyThisWorks: thoughts on the game?
UndercoverToad: https://www.codingame.com/multiplayer/bot-programming/yavalath Yavalath - by an anonymous CodinGamer
UndercoverToad: that's from struct
struct: actually i dont have suns on eval
struct: o.o
ThunderbirdOne: Toady!
UndercoverToad: i hated the game on the first weekend already
UndercoverToad: wow ThunderbirdOne, haven't seen you for at least a decade
ThunderbirdOne: haha, sure feels like it
UndercoverToad: or so it feels
UndercoverToad: :D
ThunderbirdOne: saw someone stream the comp last night
ThunderbirdOne: and i was like 'oooooh shit'
NotSureWhyThisWorks: It seems like success is just found by making random changes to the eval or heuristics
ThunderbirdOne: so i spent 2 hours getting to bronze :')
UndercoverToad: you are in the upper 90% then, congrats
ThunderbirdOne: it's something
ThunderbirdOne: haven't implemented a seed method
ThunderbirdOne: but eh, then i'd have to implement some distance thing with hex
ThunderbirdOne: no thanks
ThunderbirdOne: not in the final hour
UndercoverToad: took me a bit of time as well to set it up properly
UndercoverToad: so the early lead went to dbdr this contest
ThunderbirdOne: also have a digital conference today and tomorow
struct: good thing it fitted on an uint64_t
UndercoverToad: i used a signed one
dbdr: at least I had those days of lead. two episodes :)
UndercoverToad: wasn't sure how x & -x would work with unsigned
Marchete: signed? madness
UndercoverToad: and casting to ulong for popcount
UndercoverToad: no Marchete facepalms
UndercoverToad: now*
Marchete: x ^ y is faster than x & ~y ? I use the former
UndercoverToad: no idea. I also use the xor
UndercoverToad: note that I wrote x & -x
UndercoverToad: minus, not tilde
UndercoverToad: and x, not y
UndercoverToad: to get the last set bit
UndercoverToad: as a bitmask
Marchete: 1UL << 63?
dbdr: UndercoverToad, do you have the link at hand for that SDK change to increase the timeout?
Marchete: anyways signed and bit operations can be deadly
UndercoverToad: probably here dbdr https://github.com/counterbalance
Marchete: reCurs_e said what he was using?
UndercoverToad: no
Marchete: I'd bet for either NN with only value output
Marchete: or any kind of UCT forest
dbdr: I see referees there. I mean remove the 30s constraint
UndercoverToad: i know. counterbalance did that
UndercoverToad: i can link you my contribution where i also removed the 30s
struct: I think he means your demo euler
UndercoverToad: https://www.codingame.com/contribute/view/614074c4f45bc5120d6d04e98ee334347d54
UndercoverToad: https://github.com/Counterbalance/FallChallenge2020/blob/cli/engine-timeout.patch
UndercoverToad: we did it in a different manner
dbdr: thanks!
dbdr: I suppose you do it without modifzing the engine, if it's uploaded on CG?
jrke: i think reCurse's lead will increase a lot in final re run
solistice: when can we expect reCurse's PM?
Marchete: I hope so!
UndercoverToad: i replaced parts of the engine by my own and modified the maven import
Marchete: he plays so differently
UndercoverToad: my time limit is set to 60s but can be completely removed of course
struct: well its over for me
struct: im going to rest now
struct: cya later
UndercoverToad: bye
derjack: so we can exploit cg server even more? :imp:
UndercoverToad: i shared my thoughts on discord and julien read about it :(
dbdr: src/main/java/com/codingame/gameengine/core/GameManager.java: private static final int GAME_DURATION_HARD_QUOTA = 60_000; got it :)
UndercoverToad: make it larger. make it a long
dbdr: :D
dbdr: and set to the heat death time of the universe, just to be sure
cegprakash: I finally have a bot which can beat gold boss 50% of the times
cegprakash: but I need to get to him :P
Ajaiy2: I guess I am finally ending in Silver, but this is the first time I cam this far
Ajaiy2: *came
cegprakash: Ajaiy2 do u sort by treeIndex and seedIndex?
Ajaiy2: Sort for what?
Soumyadarshan: i want the solution of clash of codes
cegprakash: sort all valid moves by seedIndex.. if equal tree index and process them 1 by 1 and choose the first best move
cegprakash: Ajay that gets to gold
Soumyadarshan: its very confucing code with integers
Ajaiy2: What's the question?
lionandmouse: First time for me in Silver as well. Simple Action scoring function developed with genetic evolution. Didn't expect it to work so well.
Westicles: I am impressed with cegs gibberish suggestions
Soumyadarshan: The game mode is REVERSE: You do not have access to the statement. You have to guess what to do by observing the following set of tests: http://chat.codingame.com/pastebin/ba2ddd97-afc9-43cc-a885-06cf078c9057
EnderWiggins: https://www.codingame.com/contribute/view/67310a4d13f79f87c325dacc14d80da08177
dbdr: http://chat.codingame.com/pastebin/f40cdc4a-5a09-4320-800d-8db5265ad06f
dbdr: and I won't send it
Marchete: 55% is too little diff, can be noise, no?
UndercoverToad: i still don't know how to read this grid. I stick to the numbers in the line above
UndercoverToad: how many games?
dbdr: 200 games
Marchete: I hade some bash for calculating it
Marchete: had*
UndercoverToad: that's too few
dbdr: 55/43.5, there are some draws
Marchete: p1W/(p1W+p2W)
dbdr: I don't think it's noise, but it could be overfit
Marchete: last minute submits are risky
dbdr: indeed, that's why
delineate: 200 games is nothing in my opinion. so many times I've had a good start after 500 games but since it been worse or breakeven after more
Marchete: statistically speaking you are right
dbdr: yeah, that's 55.8% marchete
dbdr: delineate you do swap positions?
dbdr: sorry, it means 400 considering swaps. 200 pairs of matches
delineate: yes, I do play both sides, that helps a lot
delineate: ah okay
dbdr: 200 is the param to brutal :)
delineate: that's not bad then, especially with that %
Marchete: all sample size calculators set 385 as a good sample for infinite population 5% margin error
dbdr: and yes, more is better, it just takes time. esp with 100ms timeout
UndercoverToad: does the swap still work? i thought -s is server mode (viewable replay) now?
Marchete: p1 is always at left side or it's random?
dbdr: that's the referee argument -s
UndercoverToad: so you have a fixed list of seeds instead?
UndercoverToad: oh, wait
UndercoverToad: got it
UndercoverToad: referee -s and brutaltester -s
dbdr: no, same random seed twice
dbdr: yeah
Marchete: referee have that prepared?
Marchete: I remember tweaking something about -s long time ago
dbdr: no, brutal calls referee twice
UndercoverToad: it was me who added -s to the brutaltester and made a PR, yet I got confused :D
dbdr: lol
tobk: 30 minutes left. Time for a last panic submit! :-)
Marchete: yeah I remember some PR about that
aCat: woriking on it tobk
dbdr: Illedan at 0% as usual :D
UndercoverToad: when you are at the bottom, you have nothing to lose on a last minute submit
struct: :praying:
struct: oMG
UndercoverToad: :praying_hands:
UndercoverToad: no?
dbdr: what struct?
struct: https://i.imgur.com/uyhJvFK.png
Marchete: :praying_,mantis:
Pick8chu: :pray:
Marchete: also no?
dbdr: :pray:
struct: why did i terminate the machine
struct: WHY
UndercoverToad: you need more games
struct: YES but i closed the aws machine
struct: fck me
Marchete: aws machine?
Marchete: you guys are pros :D
struct: yes i rented
UndercoverToad: now you don't even know the params you tested?
struct: for 12 hours
Marchete: I rented some for NS too :D
dbdr: wow
UndercoverToad: is it still in the s3 bucket? or just in the EC2 which is gone now?
jrke: i just noticed that battles in gold are faster than legend
UndercoverToad: a very cheap rental :rofl:
dbdr: nice stats struct! you lost the code? :O
Marchete: use spot machines
Marchete: much cheaper
struct: it probably was luck
struct: not enough games :(
Marchete: also in Azure, batch jobs were really cool
struct: what is spot machines Marchete?
UndercoverToad: Neumann coming
dbdr: haha, nice timing Neumann
Marchete: https://aws.amazon.com/es/ec2/spot
Neumann: -_-
UndercoverToad: no ablo espanol
Marchete: sorry
UndercoverToad: is that the server auction thing?
Marchete: they are VM without any guarantees
Marchete: they can shut them down at any time
Marchete: but you save up to 90%
Marchete: Gcloud as them too
UndercoverToad: or give it to someone who offers a higher prize
dbdr: https://i.snipboard.io/FEM1hB.jpg
Marchete: Preemptible VM instances
dbdr: keep this bot Neumann
UndercoverToad: evil Neumann
jfaixo: you may have EBS snapshots, even if you terminated the EC2, check it ;)
UndercoverToad: oh no, looks like i won't win Germany :(
Marchete: poor Illeda_n , he won't sleep anymore
cegprakash: bot with better win rate not climbing rank
cegprakash: so I guess settle with older bot
jrke: bye i am not gonna make anymore submits :(
dbdr: bye jrke
jrke: and grats reCurse on winning contest
Marchete: we must wait the legend recalc (/s this time)
azriel1rf: Might it demote (such as legend -> gold) at the system test (judge after contest)?
Marchete: ?? only top100 legend recalcs
azriel1rf: ah, ok
Marchete: and they usually don't disqualify
azriel1rf: thanks
CouscousAgha: what's the gold boss rank?
peerdb: 1
CouscousAgha: i mean the score
Pick8chu: https://www.codingame.com/share-replay/557451312
kovi: argh, lost to illedan at the worst moment
Pick8chu: stage 24 why does the red get 7 sunpoints?
Marchete: https://www.codingame.com/forum/t/spring-challenge-2021-feedbacks-strategies/190849
Pick8chu: isn't it should be 6?
Marchete: I need PM to read!
struct: 2*3+1?
UndercoverToad: already there with contest still going?
UndercoverToad: that's weird
UndercoverToad: i'll wait with posting
Pick8chu: what's PM?
Pick8chu: what's PM?
UndercoverToad: no details about fall challenge yet
cegprakash: no Pick8chu
cegprakash: 3*2 + 1
UndercoverToad: PM = post mortem
UndercoverToad: strategy writeup
Westicles: is that generic artwork?
Pick8chu: I see
CouscousAgha: can anyone tell me the score of gold boss?
Pick8chu: Oh I was looking at blue, thanks guys :)
UndercoverToad: yes, always the same cover art
struct: ok i go to sleep now
struct: ill read pms when I wake up
struct: I hope I get 50th
mybk: 46.55
mybk: MiyazaBoss score
Marchete: don't you sleep that night?
struct: i didnt sleep no
Marchete: some of you submitted really early, or late
struct: i didnt sleep and didnt submit ...
Marchete: ....
struct: no improvements at all
Marchete: then?
Marchete: ahh
Marchete: ok I get it
Marchete: nah, I just failed miserably with eval
Marchete: and dropped it
Marchete: I think I have the right idea
Marchete: but somehow it doesn't normalize or whatever
UndercoverToad: and of course Magus will be the first with his post mortem again
Magus: My PM are most of the time simplier than others :p
UndercoverToad: mine is ready. but i wait till 10am
UndercoverToad: no spoilers
Marchete: lol
Marchete: in 10min to recode test and submit
aCat: yeou should write code not postmortem euler ;p
Noyotens: is 7:28 in mine
Marchete: german people is german
UndercoverToad: i give a short code snippet on beam as that was asked several times on chat
Magus: UndercoverToad: I'm writing it directly on the forum. It will not be finished before 10am, don't worry.
Marchete: I pruned a lot, and I think it makes sense
Marchete: like not complete moves before X turn
UndercoverToad: not if i can successfully distract you
Marchete: if before X turn all seed are priorized to a tree3
Marchete: and only 1 tree3
Marchete: etc
BoBot: lol, managed to write in a new language (Scala) without NPEs or needing nullable values till the...last 20 minutes of the contest...
DaNinja: 5 mins, enough to work on a legend bot!
cegprakash: going with a risky last minute submission
cegprakash: lets see :P
Marchete: 5 min
cegprakash: 1 loss in first 11 games
VizGhar: wow didnt look for about 2 days and i dropped like 300 places :D
UndercoverToad: you wasted your weekend
cegprakash: VizGhar u can still improve in multi
DaNinja: 175 computing in gold
cegprakash: multi's open pretty quick
Marchete: wow, that's a big strecth
Marchete: weekend with family, sun and going out it's ok too
UndercoverToad: i'm trolling
Marchete: me too
UndercoverToad: :rofl:
cegprakash: 225 legends is just too many legends :P
JohnCM: haha i just resubmitted
Whatar: gg
Marchete: yeah, too big legend this time
cegprakash: last 2 mins!!
BoBot: oh well, my last hour shadow code had some bug somewhere, the last submit shouldnt matter..
cegprakash: last min submitters go fast :D last 2 mins
peerdb: yep im hitting test in arena
Tiramon: stoped completing 0 score trees this morning improved my rank by 400 ;)
Marchete: save any code before they close the IDE
JohnCM: i just hit test in arena without even checking my code lol
JohnCM: ran out of attempts
UndercoverToad: try not to complete size 1 next
UndercoverToad: oh, score 0, my bad
UndercoverToad: still, score 1 is bad too
UndercoverToad: 4 suns = 1.33 points
JohnCM: gg
UndercoverToad: 10s
Dr-D: That IS a useful check I never though about =D
Tiramon: yes only completing score > 1
Marchete: ok 10:00 german time right now
Marchete: lol euler :rofl:
Marchete: come on
UndercoverToad: posted PM before magus for the first time :trophy:
aCat: the closed my IDE :(
Marchete: 0.01ms after it's 10:00am
aCat: got error :crying_cat_face:
Magus: UndercoverToad: you are euler :D
VizGhar: It's done, it's over
Astrobytes: well done all
JohnCM: wow recurse's lead is amazing
UndercoverToad: yes magus, chat got laggy under my main account
VectorXz: I'm on battle progress, will it continue to calculating final score?
UndercoverToad: yes
UndercoverToad: even promotions will finish
Dr-D: Thanks for the nice challenge!
VectorXz: Glad to hear that
Anhrc: can we still see the battle progress ?
UndercoverToad: https://www.codingame.com/contests/spring-challenge-2021/leaderboard/global for those who lost the link
Zandy156: thanks
VectorXz: it gave me 504 Error on that link, anyone?
CarbonBlack: same
CarbonBlack: clash crashed ig
UndercoverToad: 473 computing, will take a while
JohnCM: thanks for the fun times everyone! see you all next challenge
TobiasA: wait it's over?
Marchete: your scoring seems pretty simple euler
TobiasA: bruh
TobiasA: who won
Whiskee: I was thinking, the last contest had 50m turns instead of 100 (and FAR fewer turns iirc)
UndercoverToad: it is. disappointingly simple complicated didn't work for me
TobiasA: where is my prize
Whiskee: no surprise it's grinding to a halt with everyone submitting at the last second
Zandy156: same toad
Marchete: don't you have cost related scoring, euler?
UndercoverToad: i have suns
CouscousAgha: is it gonna take a long time?
UndercoverToad: maybe 1h to finish pending submits
UndercoverToad: then 3-4h for the final recalc
Marchete: sun as suncount or sungained?
UndercoverToad: current suns
Noyotens: #reCurse working in Ubisoft
Noyotens: ??!
Tiramon: why not?
VizGhar: he can work anywhere he wants with such a bot
UndercoverToad: someone has to work for unisoft. or they run out of business quickly
cegprakash: I got 34 points in gold.. does that mean I'm rank 4 if I were in legend :P
Marchete: hmm Magu_s is sequential MCTS, why not simulating at even depth?
B4tiste: Is the site laggy for y'all too ?
Whatar: yes my friend
dGrayCoder: When is the fall?
Dr-D: At least for me: yes
Noyotens: yes network status 504
UndercoverToad: far-fetched ceg :D
UndercoverToad: that's normal in the minutes after the contest ended
Tiramon: no cegprakash
Marchete: damn, your evaluations seem so simple :unamused:
Whiskee: yes, massive calculations in progress for end of the spring challenge (in case you were doing something else) :)
UndercoverToad: i had a more complicated one. then i deleted it as it wasn't working
UndercoverToad: and the stupid opponent prediction did surprisingly well compared to what I had before
Zandy156: I usually don't finish huge changes to my bot at the end. I don't know if I like this feeling of not knowing if its good enough or not.
Magus: Marchete: I never tried to force only even (odd in my case) depths. So I can't say if it would be better :D
rohrokz: https://www.codingame.com/clashofcode/clash/1756337521c8ecd38b88b3f4f0e77711c411d71
Magus: When I am at an even depth (so I have a selected action but not my opponent), I just use the rollout to select his action.
UndercoverToad: oh, old CodinGame is back already
Noyotens: CODINGAME FALL CHALLENGE 2021 \
UndercoverToad: clashes
Marchete: ok, but I always thought that sequential MCTS can be tweaked to only sim when both players have their moves in the gamestate
aCat: :P
maddenvvs: I want to thank CodinGame community and chat especially! You guys are very inspirational and I learned a lot from you! Thanks for the competition!
RoboStac: but if it's doing full rollouts that doesn't really make any difference
Noyotens: CODINGAME FALL CHALLENGE 2021 Guys see u later
dbdr: eulerscheZahl, how do you enforce the move constraints (Complete first, etc)? I look at the previous action of the day for that
RoboStac: I guess it depends exactly what the sequential mcts does about conflicting moves (seeding same spot / taking same nutrient bonus)
Marchete: Magus, a question, how many rollouts in your MCTS?
Marchete: per turn
UndercoverToad: same dbdr. I also have an Expanded bitmask so I don't go back
UndercoverToad: that is if i have 2 trees of same size, I do GROW 1 | GROW 2 but not vice versa
cegprakash: my final eval look like this: http://chat.codingame.com/pastebin/18a800b4-cadd-4c7f-acd8-9cb972140dcc
Marchete: grow1 | grow2 is filtered with hashing too
Marchete: no?
kovi: hash is not free here
UndercoverToad: yes but still generates a state on the first hand
UndercoverToad: ceg no opponent in your eval?
kovi: i also prune early
cegprakash: I use same function for opponent UndercoverToad
UndercoverToad: you want to cast shadow on your opponent
Marchete: ahh
UndercoverToad: ah, ok
Magus: Marchete: my IA output the number of expand/rollout at each turn (the first number)
cegprakash: playerId = 1 means opponent 0 means myself
Magus: the second number is the score of the node
Magus: (the selected node)
Marchete: :thumbsup:
cegprakash: UndercoverToad I reduce recovery of opponent
cegprakash: meaning it takes care of shadowing
cegprakash: I think
Marchete: rollouts skyrocket at endgame :D
Westicles: TestAccount11515 coming after you guys
Donotalo: there is far less online contests in CG now :(
Marchete: it seems nobody mirrors inital moves on the enemy
Donotalo: now the date isn't defined for next contest :(
Marchete: almost all players did the same at start (except Recurs_e)
Zandy156: lol I think I know who's account that is
Marchete: he seeded from tree1, had more than 1 seed on the game, planted seed next to trees at first turn
Marchete: completely weird moves from "normal" evaluation point of view
UndercoverToad: because he understood the game. or his NN did
Marchete: I think so
UndercoverToad: the rest of us is playing as mere mortals
CouscousAgha: STOP THE COUNT
Marchete: I got stats from some top players
Marchete: most others had some kind of strategy
Marchete: very similar replays
Marchete: but not him
UndercoverToad: and then there is the chaotic good
Marchete: chaotic evil?
Tiramon: do we have a confirmed NN in the contest?
Marchete: I'd say either a super weird eval or NN
dbdr: UndercoverToad, you wrote "finished around 15th"
Marchete: moves aren't logical on short horizon
RoboStac: I can confirm my bot is (though it looks like I'll only manage around top 30)
Marchete: NN robo?
UndercoverToad: when I wrote that, i was 10th with some others in submit
RoboStac: yeah
Marchete: congrats
UndercoverToad: will update later dbdr
kovi: :o
Marchete: both policy and value?
RoboStac: yeah, usual alphazero style stuff
Marchete: policy seems hard to me
Marchete: wow
RoboStac: sequential mcts based
Marchete: 3000 inputs and 2000 outputs :D
UndercoverToad: i'm impressed that you got it somehwat working robo
Marchete: me too
kovi: yeah, well done
UndercoverToad: just someone else stealing you the show
Marchete: convolutional RoboStac?
RoboStac: nah, didn't seem like that would work here
Marchete: why?
cegprakash: sometimes I lose games coz of bad sunlight not because my bot is a noob
RoboStac: position is too important
Marchete: but you have rotations, that leads to the same state
RoboStac: but rotations break under sun changes
UndercoverToad: sun is a problem to all of us
Marchete: I mean if you "rotate" the board to always be at left
UndercoverToad: top left starting position has the advantage according to my observations
ItsNotABug: makes sense. By the time the sun gets there unobstructed the trees are grown
Marchete: how many inputs?
RoboStac: 534
Marchete: wow :D
sprkrd: What are the input features (at a glance), may I ask?
Marchete: I'd like to read a PM about all that, seems so interesting
FAngelo94: Hi all, for Spring challenge 2021 finished about 1 hour ago is it possible to see the code of AI implemented by people? In particular by the firsts in the leaderboard
Marchete: no
UndercoverToad: i saw robo typing on the forum already
UndercoverToad: don't distract him
Marchete: the challenge will be a multi
RoboStac: yeah, I'll do a pm rather than type it all in chat
Marchete: thanks!
sprkrd: nice
derjack: one-hots encodings?
RoboStac: mostly
derjack: who taught you that monstroity
Marchete: yeah, it seems board games goes better with one-hot
RoboStac: score worked better as a value
Marchete: a tree2 isn't better than tree1
Marchete: there isn't a gradient between them
Marchete: I mean it seems that tree3 isnt 2*tree1 or 1*tree
derjack: how many outputs in policy
sprkrd: But I'm thinking cardinal inputs could work too
Marchete: he'll write a PM
sprkrd: Like, how many trees of size X in cells of type Y for player Z
derjack: every input 'could work', but youll need much more hidden layers
Marchete: in 100kb including bot code...
sprkrd: Where the type of cell can be corner, edge, middle ring or center ring and dead center cell something like that
Marchete: I don't know, this game seems positional
sprkrd: There are other features that can take into account position
sprkrd: like average sun income for 6 days if all trees are fully grown
cegprakash: register for the next fall challenge :)
cegprakash: I just registered
derjack: what will be the theme of fall challenge?
sprkrd: I tried to use that kind of numeric features without much success with linear regression, but maybe a larger, non-linear approximator could fare better
Jokras: Is the next challenge also an AI challenge?
derjack: all challenges are AI challenge
Marchete: they used their NN bots (alphazero like) at another games
Marchete: like oware
Dr-D: And that is the beauty in it =)
Marchete: one-hot encoding performed much better
Marchete: and trained faster
sprkrd: I'm always hesitant to go the NN route because I haven't found a good way to do that within 100KB of code
Marchete: you can do some "tricks" to encode weights as unicode
Marchete: and fit more weights
Marchete: also quantization or float16
sprkrd: (And deep down I want the humble linear approximator to topple the mighty NNs :) )
Marchete: jace_k and robosta_c had great success with that
Marchete: top1 in many multis
sprkrd: Sure, I'd like to have a go on that some day
sprkrd: Just haven't got the time
Marchete: error 429 at forum...
derjack: it works for meh
Marchete: don't refresh then
aCat: 85% and 60-40 wr
aCat: :D
aCat: #85 i meant
Michael_Howard: 51% and 19% in gold
Michael_Howard: pleasepleaseplease...
Michael_Howard: #19th*
Michael_Howard: Has anyone got Swift into Legend before?
UndercoverToad: where did that testaccount go that was destroying silver?
Zandy156: just started gold
UndercoverToad: oh, just started, nvm
UndercoverToad: was gone a a short time
UndercoverToad: and starting with 11 wins in gold
Zandy156: its only like a rank 40 gold
Astrobytes: testaccount? Hider?
Zandy156: don't worry
Astrobytes: oh
UndercoverToad: we don't know
ashiknur: can someone give me your code who coded with monte charlo tree search algorithm or any AI algorithm?
UndercoverToad: no sharing of full code
UndercoverToad: just ideas as on https://www.codingame.com/forum/t/spring-challenge-2021-feedbacks-strategies/190849/
derjack: oh agad had NN too
UndercoverToad: that part doesn't surprise me at all
derjack: but he somewhat failed
UndercoverToad: let's see if he'll keep working on it in the multiplayer
Astrobytes: I didn't even notice he was playing
CouscousAgha: is there a way i can see my own source code?
UndercoverToad: https://www.codingame.com/contests/finished
UndercoverToad: "view report"
UndercoverToad: you can see the full submit history later when the multiplayer opens
cegprakash: after the contest results are published yes CouscousAgha
CouscousAgha: thanks guys!
UndercoverToad: i still have to fix my file bundler, has some encoding issues
UndercoverToad: http://chat.codingame.com/pastebin/fb23aa15-af2b-456f-ae17-701be57bc531
UndercoverToad: but it compiles, shrugs
cegprakash: it's actually visible now itself CouscousAgha
cegprakash: in the link shared by UndercoverToad
UndercoverToad: the 2nd using System line has an odd character before
UndercoverToad: as i said, the most recent submit is visible. the full history isn't yet
aangairbender: UndercoverToad you can try to use mine https://github.com/aangairbender/cg-singlefile-bundler-csharp
UndercoverToad: oh, some real code. mine is like 10 lines of python
Marchete: Ille bundler also worked fine, it keeps updating the file as you work
UndercoverToad: i'm not convinced by that design, having a process running in the background
UndercoverToad: just add it as a build event and run it when needed
aangairbender: I uploaded it to GitHub 3 days ago, but the code is a year old, so I am not sure about it. Btw I am looking forward to make it super cool for everybody
Magus: For CG I always work with a single file :D
Magus: a bad habit I suppose
aangairbender: Magus using multiple files + bundler can raise your efficiency
ItsNotABug: lol, the feedback page gave a 429 stats - too many requests
ItsNotABug: lol, the feedback page gave a 429 status - too many requests
Marchete: I've read Agad_e PM, it seemed like I would do the NN, just eval because policy seems overly complicated
solistice: where to find PMs?
derjack: i never did policy, so :shrug:
ItsNotABug: https://www.codingame.com/forum/t/spring-challenge-2021-feedbacks-strategies/190849/5
ItsNotABug: But its dead for me
aangairbender: I didnt get very high with simple beam search, so I implemented mcts duct, it didn't work well either
Tiramon: yes site has a bit high load right now, guess it will get worse when the legend recalc starts ;)
Marchete: I think DUCT and similar are hard to tune and make it work
RoboStac: ok, posted far too much information on how I didn't get my nn to win
CouscousAgha: 395 computing and going down
ItsNotABug: Surely legend recalc is easier as its only 100 compared to current 400?
Marchete: your policy seems cool RoboStac, I neve thought about that way
Marchete: never*
aangairbender: maybe there was not enough iterations for duct showing good results
UndercoverToad: Magus do you use git for your bots at least?
aangairbender: I used same eval as in beam search
Magus: Yes I use git
UndercoverToad: something at least
RoboStac: yeah, I spent a while trying to work out how to get the number of moves to a sensible value
aangairbender: oh, I've read your PM, euler. My beam search code is exactly the same (but in rust)
aangairbender: and pruning approach
UndercoverToad: minus the timeout. i omitted that for brevity
Marchete: it's really cool, I like it
derjack: sequential mcts, so it is like paranoid minimax?
RoboStac: yeah
Marchete: Gamestate was only updated after both players had chosen a move
RoboStac: the enemy is responding to the moves I made (even if they didn't see it on the gamestate)
Marchete: ahh
RoboStac: just due to how it works on a treesearch point of view
Noyotens: https://www.codingame.com/clashofcode/clash/17564252ad8a76000ea17d6a45bd2897b6cdda4
derjack: oO
UndercoverToad: no
Astrobytes: Post that in #clash channel Noyotens
aangairbender: Magus why you think MCTS DUCT didnt work? not enough iterations?
Magus: Less performances, yes
Magus: (less rollouts, less expands)
Magus: I think that with equal performances, DUCT is better.
Magus: But I never found a way to make DUCT as fast as sequential MCTS
aangairbender: mine does around 3k iterations on the 2nd input
aangairbender: and sim alone can handle around 300k in 100ms
aangairbender: 300k full roullouts to the end I mean
Anhrc: elca
Noyotens: https://www.codingame.com/clashofcode/clash/17564330bffb6d751a27d7b01452d9b63592400
Noyotens: plz
Marchete: 300k full rollouts is a lot
Marchete: are you sure?
aangairbender: let me test it once again
pb4: RoboStac : what do you call "sequential MCTS" ?
Noyotens: ;-;
pb4: How does it handle for exemple two players completing "at the same time"
RoboStac: basically just turn based mcts rather than trying to do anything about simultaeneous
Noyotens: who's kick me
RoboStac: thats where it gets awkward
Astrobytes: Noyotens: me. Stop posting clash links here and post them in #clash channel.
RoboStac: in training both would get full nutrients, but I found it better to disable that on my submitted bot
Marchete: seed is the only problem, complete should work ok, is sim is done when both players chose moves
Marchete: if*
RoboStac: the issue was it would basically always just assume they would complete too if I did
RoboStac: to not lose out on nutrients
Marchete: ahh
pb4: ok
Noyotens: Astrobytes ok i am sorry
RoboStac: so I found it better to be slightly innaccurate in the sim for that
Astrobytes: Noyotens: no problem
VietAnhTong: when will the spring challenge be converted to bot programming?
Astrobytes: Later today or tomorrow most likely.
aangairbender: Marchete you were right, it was total simulations, not total rollouts
aangairbender: btw my latest code does 3.6k sims, but my code 3 days ago was 300k
aangairbender: (I added 2nd player handling to simulation for MCTS DUCT)
aangairbender: its weird anyway, 100x slowdown
Marchete: 300k rollouts, with about 30 moves per turn would be like 9M sims/turn
Marchete: per rollout*
AntiSquid: Are CG forums dying? "too many requests"
RoboStac: yeah, I had to try a few times to get my edit to to work
UndercoverToad: congrats on legend BorisZ
BorisZ: UndercoverToad thx euler :sweat_smile:
eulerscheZahl: i think i can switch back now
eulerscheZahl: hm, still laggy
DomiKo: still too many?
eulerscheZahl: https://imgur.com/a/I67qrxb
eulerscheZahl: getting better
derjack: hint: if you ban all these people in the list youll get less laggy
Astrobytes: lol
eulerscheZahl: and mod rights will be revoked for ultimate speedup
eulerscheZahl: i think i can script that
none_: so, where is my legendary achievement? I spent whole weekend in legendary league and still nothing... :D
eulerscheZahl: wait a day or 2
RoboStac: scores are still being calculated
RoboStac: achievements / coding points will turn up at some point after that
eulerscheZahl: achievements over night i think
derjack: unless they are shadowed
none_: I though so, but I was quite surprised that I've got XPs right away
eulerscheZahl: for promotion? that's another topic
derjack: hmm yinsh got 30+ players last week
eulerscheZahl: was puzzle of the week
eulerscheZahl: until contest started and no one cared
kurnevsky: @Magus hi, what do you mean by tree reuse in your PM? Not very clear from the description :)
RoboStac: between turns he keeps the tree from the previous turn and just changes the root to the new state
RoboStac: (calculates what the enemy did so he can navigate his tree)
Nerchio: is recalc happening or?
eulerscheZahl: still waiting for it
eulerscheZahl: https://www.codingame.com/contests/spring-challenge-2021/leaderboard/global?column=SCORE&value=INPROGRESS
eulerscheZahl: 24 submits have to finish first
eulerscheZahl: now it's 20
kurnevsky: > between turns he keeps the tree from the previous turn
And why it needs to be kept?
eulerscheZahl: it saves time
eulerscheZahl: if you don't recompute it
RoboStac: it makes your future turns more accurate as you already have stats on moves
RoboStac: eg if you do 1000 simulations on turn 1 and 200 of them end up in turn 2 state you already have 200 simulations of data for turn 2
Nerchio: so recurse has an NN going or?
eulerscheZahl: and some nodes with valid actions generated depending on how you implement the tree
kurnevsky: So it's like amaf/rave?
RoboStac: no, it's dealing with real states
RoboStac: you go into turn 2 and already have a mcts tree with 200 nodes in it (instead of starting from 0 nodes every turn)
kurnevsky: Ah, now I got it, thanks.
derjack: but is tree reuse worth it with so many actions here?
putibuzu: This was fun, GG WP everyone! :)
RoboStac: no idea - I didn't bother (especially since I didn't generate all possible seed actions I decided not too)
peerdb: gg's my push to legend fell short but it was a lot of fun
peerdb: thanks for hosting
BeardedJotunn: {
ItsNotABug: How did someone resubmit 5 mins ago in gold?
RoboStac: promoted from silver
Astrobytes: they most likely promoted
therealbeef: in theory you can submit in wood 2 at 9:59 and go all the way to legend ;)
therealbeef: and have the love of everyone
ItsNotABug: damn. came to watch recurse squash the other legends :P
Marchete: that's already done
CouscousAgha: gonna happen again in few minutes
Marchete: waste of cpu
peerdb: cpu is free real estate
CouscousAgha: :popcorn: waiting for re run
Nerchio: so much processing is wasted on mining cryptocoins we might as well spend a few cycles on our fun right
CouscousAgha: and NFTs
Marchete: bad + bad isn't a good
Nerchio: so in the end 230 ppl in legend
Nerchio: quite a lot i guess
Marchete: a lot
Nerchio: but considering the amount of people in the competition maybe its not so bad
peerdb: it mostly seems like gold is way bigger than last times or maybe my memory is faulty
CouscousAgha: do we have data of how many participated now vs the previous event?
Twelve0: yes : https://www.codingame.com/contests/spring-challenge-2021/leaderboard/global?column=SCORE&value=INPROGRESS
Twelve0: https://www.codingame.com/contests/fall-challenge-2020/leaderboard/global ops
darkhorse64: 7142 for this contest
AntiSquid: i see 6867
darkhorse64: I summed the leagues
Twelve0: you don't have to it's in details page
CouscousAgha: i think 7142 who registered
Twelve0: 16,882 registered
CouscousAgha: damn
darkhorse64: calc is better
AntiSquid: maybe some alts were removed ?
CouscousAgha: anytime now...
GreatTux: why is the gap between registered and participants so big?
AntiSquid: i see daiver (euler's alter ego) is still there though
KelvinAndHubbles: a lot of people registered, but not everyone remembered it started
CouscousAgha: GreatTux my guess is many registered months ago and didnt participate
CouscousAgha: just like now you can register to the next one that will occur in fall
Astrobytes: Also, people may not like the look/idea of the game so don't bother.
Twelve0: https://www.codingame.com/contests/fall-challenge-2021 you can register in the next challenge
peerdb: whooo Twelve0 i registered!
AntiSquid: heh astro, damn right, was at first like "oh damn a hex game, but luckily i can port bits and pieces from my pengu bot" and thought i slap a sim on top and done, but then the eval wrecked it :/
peerdb: btw Twelve0 why is 42 morocco (1337) so good? :cold_sweat:
We struggle to keep up with you
Twelve0: are we really ?
AntiSquid: the entire day - turn cycle with fog of war disguised as WAIT and the board game rules kinda ruined it
CouscousAgha: peerdb why not? :D
peerdb: almost as good as Paris, and we are 9th (42 amsterdam) so yeah
peerdb: CouscousAgha fair game, gg man, next time we try to beat you again (and fail again)
Twelve0: aah you're from codam
CouscousAgha: we believe in you peerdb
Twelve0: how's life there peerdb
peerdb: yep, life is a little bit lockdown-y still Twelve0, how about there?
peerdb: at least my internship rn isnt remote
Twelve0: it's getting better, still we can't study at night yet
peerdb: yeah same here I guess. Our country is slow with vaccines tho so it will be at least till august like this
CouscousAgha: peerdb good luck <3
peerdb: thanks CouscousAgha you too :heart_eyes:
CouscousAgha: everyone waiting for the last gold player
natofp: when will we get final standings?
CouscousAgha: natofp the last submission is at 94%
DomiKo: after recalc
CouscousAgha: and then a rerun of top 100 in legend
CouscousAgha: it's starting anytime now
eulerscheZahl: submits finished
eulerscheZahl: let the recalc start
CouscousAgha: can we watch it ?
eulerscheZahl: https://www.codingame.com/contests/spring-challenge-2021/leaderboard/global?column=SCORE&value=ALL
eulerscheZahl: just started
Twelve0: ohh
CouscousAgha: wait
CouscousAgha: it's more than top 100?
eulerscheZahl: they do whole legend?
Twelve0: everyone in legend
Twelve0: cool
eulerscheZahl: i'm equally surprised
CouscousAgha: yeah
peerdb: oh funky
CouscousAgha: EVERYONE... GET IN HERE
CouscousAgha: this is gonna get bloody
peerdb: more chance for 1337 to beat 42
peerdb: lets get those baguettes
CouscousAgha: peerdb i doubt it
Twelve0: hahahahahaha
Twelve0: nah ir's hard
CouscousAgha: but thanks for the support x)
peerdb: haha np
codingWhale: This reCurse guy seems to have a lucky streak :P
eulerscheZahl: :D
AntiSquid: ya just pure luck
Twelve0: hhhhhhhhhhhhh
CouscousAgha: LMAO
eulerscheZahl: ping nmahoude
eulerscheZahl: "performance wise, I have around 40k actions in 50ms"
we had 100ms in this contest
AntiSquid: ouch
natofp: how many games are going to happen per player?
eulerscheZahl: about 1000
eulerscheZahl: but don't trust me, i also announced a recalc for top100 only
nam4.nguyen: So recal only for legend league?
CouscousAgha: yes
nam4.nguyen: oh so if I was out of legend it's mean that is final rank?
DomiKo: yes
Noyotens: CODINGAME SPRING CHALLENGE 2020 who remeber this
peerdb: pacman was dope
AntiSquid: back when emotes inside messages worked
KalamariKing: How'd the end of the contest play out
ItsNotABug: pacman was great, this one was decent. And i just didnt enjoy autumn at all
AntiSquid: autumn one was for sim fans :P
this one was weird for me, not sure who it was aimed at
Nerchio: idk but a lot of post mortems have different approaches
Nerchio: so it seems like it was pretty good
kurnevsky: > autumn one was for sim fans :P
I'd rank myself among those :)
Nerchio: i think if they upped the character limit for easier NNs it wouldnt be too bad
derjack: then NN guys would take it all
sprkrd: I think that, if CG wanted to support NNs, they would switch to a completely different submit system
salmon: NN?
sprkrd: Neural nets
jrke: NN -> Neural network
salmon: ah
AntiSquid: there's virtually no ML support at all . other sites have it so why not CG is the question
eulerscheZahl: completely switching isn't that easy, technical debt
sprkrd: I'd say because CG is not really an AI side
sprkrd: site*
sprkrd: it's a programming site
nmahoude: eulerscheZahl yes I know but i fixed the depth of my BS to 6 (something I didn't tell in my PM) and I rarely used the 100ms
eulerscheZahl: they even store each of your code. no diffs like you know it from git
sprkrd: ultimately it's about we programming better
eulerscheZahl: i see nmahoude
Nerchio: thats what i mean, character limit seems like a pain for NNs and it shoudn't matter that much
AntiSquid: it doesn't make sense to completely switch, but offering more support is always possible and better compared to offering no support
eulerscheZahl: i get 40k in 80ms btw
RoboStac: Most of the time the way to get a good bot is to make the NN as small as possible so it's quicker - the character limit doesn't often get in the way
eulerscheZahl: with an expensive eval
sprkrd: not about minmaxing contests with brute force and hours of CPU/GPU usage :)
Hasuzawa: there is only so much to do and learn on this site, there are many more technically superior site out there
derjack: given one-hots inputs, the space if more of issue than computation size
Nerchio: RoboStac ok good to know but every time someone talks about NN character limit pops up :D
sprkrd: then the person with the biggest computer and the most resources would always win
RoboStac: well, it's something that does limit the options available a bit
AntiSquid: not really sprkrd
RoboStac: but whether the other options would ever work due to cpu limitations etc is a different question
Nerchio: sprkrd you can see some very experienced people tried NNs here and it didn't work like you say it works
derjack: sprkrd not really. crappy designed NN will be crappy even given millions $$$ of cpu/gpus
sprkrd: sure thing, but there's other factors to consider
AntiSquid: even for ML focused challenges on ML focused sites you get folks that get 1st place with something like C++ inside python code so ...
RoboStac: eg convolution networks tend to hit code space limits quickly but also tend to be very slow
sprkrd: the current format limits the size of the networks, and the available options
Nerchio: AntiSquid lolz
sprkrd: if you allow to submit code projects rather than a single source file, then people will switch to tensorflow, keras, pytorch or whatever
Nerchio: i have to try an NN once on codingame would be nice if it could play in gold at least :D
peerdb: I would love to be able so split up my cpp file here
sprkrd: there would be no longer any ingenuity exercise on coding a NN in a small source file
Tiramon: Oware is a nive simple game to try a NN
RoboStac: I wouldn't recommend this contest as a starting point Nerchio :)
Tiramon: *nice
Nerchio: peerdb you can use bundlers
AntiSquid: it's pointless painful overhead sprkrd
Nerchio: RoboStac yeah i thought about Oware
peerdb: oh i didnt know about bundlers Nerchio
peerdb: thats pretty cool
E_pur_si_muove: where can I find post mortems' of the spring challenge?
eulerscheZahl: https://www.codingame.com/forum/t/spring-challenge-2021-feedbacks-strategies/190849/
jrke: i am not sure what NN does exactly, so is it used for getting value of a state?
RoboStac: yeah, owares a good choice (i found it easy to get started and had good results, though I know some others have struggled)
E_pur_si_muove: thx
eulerscheZahl: try again tomorrow and there wil be some more
sprkrd: I guess I'm just not a supporter of supposedly programming contests dominated by NNs
AntiSquid: i imagine NN would be favorable here since a lot of the contest was focused on evaluation
Tiramon: my NN in oware is only suck in some states .. .i will have to train it again ;)
eulerscheZahl: you mean stuck?
AntiSquid: :joy:
Tiramon: yeah ... stuck ...
Tiramon: my bot in oware can't handle it if opp side is getting empty
Tiramon: guess i need to seed some training situations like that to the NN
derjack: again with the seeds
derjack: i would start with training value network only
ThunderbirdOne: man, Code Golf in C#... not the best :')
Hasuzawa: wait until you use Java
AntiSquid: how's the fullstack life btw ThunderbirdOne?
eulerscheZahl: will get better with C#9
ThunderbirdOne: same it has always been I suppose :P
eulerscheZahl: consultant
ThunderbirdOne: I got Don't Panic to 445... but i'm out of ideas
ThunderbirdOne: my base algo was prolly not super efficient either
ThunderbirdOne: what improvements do you see with C# 9 btw eulerscheZahl?
eulerscheZahl: you can write code outside of class and main function
ThunderbirdOne: ah right
ThunderbirdOne: top level statements
ThunderbirdOne: i do have some hacks to shorten stuff :P
ThunderbirdOne: like
ThunderbirdOne: namespace System{using static Console;using static Int32;class Q{ static string[] r => ReadLine().Split(' '); static void Main(){
eulerscheZahl: the standard tricks
**eulerscheZahl is totally not into golfing
KalamariKing: why can't you get rid of the spaces before and after the =>
ThunderbirdOne: also made
ThunderbirdOne: Func<string,int>p=Parse;
ThunderbirdOne: to swap all those out
KalamariKing: I haven't done c# in a while so il
KalamariKing: idk*
TobiasA: hey KalamariKing you've been out for a while
KalamariKing: just the weekend
eulerscheZahl: var p=Parse?
ThunderbirdOne: think you could var that?
TobiasA: noice
KalamariKing: and UGH I can't do python anymore, been using Java too long
eulerscheZahl: i don't see a reason against it
TobiasA: haha
B4tiste: Does someone know how many challenges are available in clash of code .
B4tiste: ??
eulerscheZahl: 1166 clashes
B4tiste: ty
VizGhar: aaah :) CoC questions are back
KalamariKing: yeah lol
VizGhar: funny how I have strategy similar to postmortems except I was too slow + scoring was (just a bit) off.
KalamariKing: Speaking of, where ARE the postmortems
KalamariKing: I assume they're not on cg
sprkrd: forum
sprkrd: feedback and strategies
VizGhar: https://www.codingame.com/forum/t/spring-challenge-2021-feedbacks-strategies/190849/2
KalamariKing: K thanks
VizGhar: python 40LoC :O
sprkrd: League of Cards?
AntiSquid: LCM, legends of code and magic
VizGhar: Lines of Code
sprkrd: (I know, it was just a joke :) )
AntiSquid: well you'll have to adapt your acronym otherwise i'll interpret it as LCM
sprkrd: When I read Lo+Something my brain automatically interprets it as League of Something
VizGhar: hmm https://en.wikipedia.org/wiki/Source_lines_of_code
VizGhar: well we probably shouldn't use acronyms at all :D
derjack: y
sprkrd: I think there's a special beauty in minimalist bots that get that far
Marchete: lol
sprkrd: Not saying necessarily golf (I despise golf), but doing as little as needed to perform good. I think elderly's has one of my favorite bots because of that. However, bear in mind that he says 40 lines + starter
Marchete: full legend resubmit?
Marchete: why?
eulerscheZahl: ask saiksy or whoever did that
eulerscheZahl: i'll just sit it out
eulerscheZahl: now he have to wait a bit longer to finally know who won
kurnevsky: Don't we know it already? :)
DomiKo: ofc we don't :sweat_smile:
KalamariKing: code golf is awesome idk what you all are on about
eulerscheZahl: bot contests
KalamariKing: yeah but you all are saying code golf sucks
sprkrd: it's just me saying that it sucks
sprkrd: it's not the general feeling :D
KalamariKing: hmm interesting
KalamariKing: I'm skimming pretty hard
Astrobytes: It sucks. Change my mind.
KalamariKing: see theres two
sprkrd: i didn't know about the second one, sowwy :(
DomiKo: ofc it sucks
sprkrd: Ok, there's consensus, nevermind
DomiKo: why cares about three less chars in your code?
KalamariKing: astro I'm not gonna be able to, but I think its pure beauty because I do stuff with, like, boot sector games and very small roms and stuff
KalamariKing: like microchip programming
AntiSquid: it depends on the individual
KalamariKing: so using a modern language, but really freaking compressed, that's just cool
AntiSquid: but don't think it fits in with rest of the site
KalamariKing: idk
KalamariKing: it really doesn't I'll give you that
sprkrd: KalamariKing I'd argue that's not necessarily golfing
Astrobytes: ^
KalamariKing: Microchip programming? its not
Astrobytes: It's about being clever
Hasuzawa: true, it is not even properly advertised like other sections
sprkrd: (the thing about boot sectors and all that)
KalamariKing: Yeah ik
KalamariKing: But using a modern language in the same way is, in a way
KalamariKing: If any of that makes sense
Astrobytes: Nope.
AntiSquid: how about a "represent everything in bitmasks" section instead of code golf? :D
sprkrd: I mean, if there's hardware restrictions, there's art in doing things with lest instructions, less cycles or whatever
RoboStac: thats just bot contests
Astrobytes: That's the board game section
sprkrd: but being performant with modern languages doesn't necessarily amount to golfing
AntiSquid: solo i meant
Astrobytes: optims
sprkrd: in a lot of cases i'd argue it makes the program even less performant
AntiSquid: optims don't count compression
ableflyer: does anyone know when will the fall competition starts
sprkrd: In the fall
ableflyer: like at the start of school?
ThunderbirdOne: YouDontSay.jpg
sprkrd: Which I think starts around tomorrow
ThunderbirdOne: fall is autumn... its later this year
peerdb: ableflyer the exact day isnt known yet
ableflyer: oh
sprkrd: I was clearly kidding :D
KalamariKing: but were you
sprkrd: >.>
AntiSquid: grilled kalamari . bmp
elderlybeginner: which puzzle is good for learing minimax, mcts or any other simulation algorithm?
KalamariKing: all of them except that one
eulerscheZahl: 2048 for beam search
sprkrd: the ultimate tic tac toe one I'd say
eulerscheZahl: UTTT isn't a puzzle
eulerscheZahl: or does it qualify for you too elderlybeginner?
sprkrd: I assumed he meant competition, because I don't see any use of minimax in a puzzle
elderlybeginner: i don't know what uttt is
AntiSquid: type in the search bar at the top see what you get
eulerscheZahl: ultimate tic tac toe
ThunderbirdOne: I liked Code vs Zombies for a mcts
eulerscheZahl: https://www.codingame.com/multiplayer/bot-programming/tic-tac-toe
eulerscheZahl: vanilla MCTS with enough sims gets you into legend
elderlybeginner: I mean any puzzle, bot, optimatization - it's about learing an algoritm of that kind
eulerscheZahl: https://www.codingame.com/multiplayer/bot-programming/bandas another MCTS
BrunoFelthes: how many is enough?
KalamariKing: a l l o f t h e m
eulerscheZahl: 20-25k rollouts in early game
BrunoFelthes: i tried very hard mcts with java and bitboards, and it was not enough
eulerscheZahl: i switched from C# to C++
AntiSquid: https://imgur.com/a/3RAD9SR elderlybeginner
sprkrd: elderlybeginner btw, I praised your bot for the spring2021 contest ;)
eulerscheZahl: the games even have tags. i just don't always trust them
sprkrd: Read your PM at the forum
eulerscheZahl: e.g. connect4 says minimax. feels more like MCTS to me
elderlybeginner: AntiSquid thanks, that's helpful
BrunoFelthes: I do 1000 rollouts, at ttt, to low...
eulerscheZahl: not even close
eulerscheZahl: even my C# got around 10k
elderlybeginner: sparkrd You didn't see it, thanks for credit :joy:
JohnCM: i used MCTS for tic tac toe in python, got silver
JohnCM: if i adapt it for C++, it should be gold
sprkrd: Connect4 is a solved game, with minimax, can it be fully solved in CG too in the time you are given...?
eulerscheZahl: connect4 on CG has a larger board
derjack: connect4 on CG is 9x8
JohnCM: connect4 to solve it with minimax, haha
BrunoFelthes: no, it is 5000, but it is to low
derjack: err 9x7
eulerscheZahl: isn#t it 9x7?
JohnCM: you'll need a really good heuristic as you can't search the depth fully
sprkrd: Ah, I see, didn't know 'bout that
derjack: also it has steal rule
eulerscheZahl: Onitama for Minimax (jacek will tell you NN and that's "the easy game")
derjack: onitama is tutorial game
eulerscheZahl: Tron is anohter good one for minimax
sprkrd: I'd say Amazons would be a good candidate too (haven't done that, but I saw the Numberphile video about the game)
derjack: amazons, the easy game?
sprkrd: not easy
sprkrd: a good practice for minimax
sprkrd: and mcts
Astrobytes: Most of the board games are good for minimax
eulerscheZahl: jacek only calls it easy because he's first
Astrobytes: and all extensions
eulerscheZahl: jacek == derjack
derjack: :O
sprkrd: Ah, OK
sprkrd: I thought the "the easy game" was sarcastic
Astrobytes: MCTS is less painful than minimax for Clobber though
sprkrd: Like, "you really think that's a good starting option?"
derjack: i mean, the arent even tyrin
derjack: trying
Arez-Vater: Obama have dick
Arez-Vater: Arez ist ein Hurensohn
derjack: amazons may have tricky eval and has big branching factor, over 1000 in first turns
victor_1111111: Arez ist fett
eulerscheZahl: :D
Astrobytes: that time of day again clearly
eulerscheZahl: DJSilentComet_8010 has been banned by Astrobytes.
sprkrd: May I ask, why do some of you have two accounts?
eulerscheZahl: who was that one?
Astrobytes: I only banned Arez, that happens sometimes. Donno why
sprkrd: Like jacek = derjack and eulerscheZahl = (UndercoverToad I think?)
Astrobytes: I have an alt for testing games and contest chats if it's busy. I don't use it for anything serious.
derjack: I? for the trolling
eulerscheZahl: yes, i'm undercoverToad
eulerscheZahl: chat got laggy for me during contest
eulerscheZahl: now it's better again
eulerscheZahl: still a bit slow
Astrobytes: The bar is getting bigger
sprkrd: of course, too many admirers writing private messages to you in your private account :joy:
sprkrd: of course it's laggy
Astrobytes: No, moderators get a huge list of all users in chat
sprkrd: makes sense to create an alt, then
eulerscheZahl: not if your task is to moderate the chat :D
eulerscheZahl: can't have both
Astrobytes: :D
KalamariKing: two computers :thinking:
eulerscheZahl: i used chromium for competing and firefox for chatting
Astrobytes: I keep this account open on my left monitor and the alt on the right one
eulerscheZahl: i'm still on firefox for chat, it has higher tolerance before it crashes
Astrobytes: just in case I need to kick/ban
eulerscheZahl: astrohydes?
Astrobytes: Yeah
sprkrd: may I ask, do you do this on your free time or is it a job?
eulerscheZahl: free time, unpaid
Astrobytes: Free time, as and when
sprkrd: big part of your daily entertainment, then
eulerscheZahl: we even create games like this in our free time (shameless advertising) https://www.codingame.com/demo/8758470df0f4ccc4ad5c774d20935cf59c7698
sprkrd: must feel like a job sometimes coming up with all the games and puzzles you've created
derjack: :notebook: :soccer:?
B4tiste: WAn we report clashcode challenge that are wrong in the statement ?
B4tiste: Can*
eulerscheZahl: you can tell us here, maybe someone will edit it
eulerscheZahl: not me, i don't have the permission for clashes
Astrobytes: I don't either
derjack: yet you are chat moderators :thinking:
itzluku: that dice game looks cool :)
Astrobytes: Yes. I chat often, I never clash :P
eulerscheZahl: editing clash requires 300+ participations
eulerscheZahl: i can edit puzzles
Tiramon: hm only 122 participations ...
Hasuzawa: I actaully study good answers from other players in CoC so maybe I learn more from CoC than puzzles
Tiramon: maybe i should increase that so atleast some mod can fix clashs ;)
eulerscheZahl: you will get captchas
derjack: oh dice duel ready for approval eh
eulerscheZahl: a bold move from me, i'll see what happens
actualCoderTrevor: Woah 3D graphics :O nice!
Tiramon: at clash a day keeps the captcha away ... or something like that
Tiramon: *a
Astrobytes: A noble sacrifice indeed :P
derjack: is it me or dice duel demo suddenly stops and i cant resume it
elderlybeginner: What has changed that there are less contests now then it was a few years ago?
derjack: $$$
actualCoderTrevor: derjack that seems to happen to me too
Astrobytes: Yeah derjack. Not sure if it's intended to stop there or not
eulerscheZahl: it resumes when you do something to update the viewer (like fullscreen)
eulerscheZahl: it's part of the SDK. i could get around it but it's a feature
derjack: oh, normally the click would works
eulerscheZahl: you don't want that flashy animation while reading the statemetn
Astrobytes: It also resumes randomly by itself
eulerscheZahl: click is captured by 3D library
eulerscheZahl: for rotation
Astrobytes: Oh man, I didn't see the landscape etc
actualCoderTrevor: Ohh you can change the view ! :O
Astrobytes: Nice touch euler
derjack: eulerscheZahl boldly of you to assume someone would read the statement though
actualCoderTrevor: Double rainbow!
eulerscheZahl: huh? there should only be 1 rainbow
Astrobytes: It looks nice, just leave it
actualCoderTrevor: Nope. It's clearly doubled. What does it mean?
actualCoderTrevor: I like it :)
eulerscheZahl: let me check
ZarthaxX: hey
gmessier: double rainbow!
Astrobytes: HeyrthaxX!
derjack: eeyup, double rainbow
eulerscheZahl: oh that. that's part of the asset
Tiramon: hm that dice duel looks kind of fun =)
KiwiTae: omg ZarthaxX o/ you brought back the bear
eulerscheZahl: somehow i tought you have 1 in front and one behind you
gmessier: It's new that we can build 3d games ?
eulerscheZahl: https://opengameart.org/node/36621
ABC123: Do you join clubhouse?
ZarthaxX: KiwiTae i brought it for you man
ZarthaxX: :D
eulerscheZahl: you always could since the SDK exists and you can upload your own stuff
ZarthaxX: you just didnt see it in time
KiwiTae: :heart_eyes:
Astrobytes: hey hey KiwiTae
eulerscheZahl: it's just not documented and you have to get creative
eulerscheZahl: some javascript to kill the original viewer and inject your own
KiwiTae: Astrobytes heyhey
gmessier: We are programmer... we can do anything :P
ZarthaxX: astroooooo
ZarthaxX: contest is finally over for you astro hehe
Astrobytes: hehehe yeah, fixed a small bug this morning and gained a whole 100 ranks :P
ZarthaxX: :o
ZarthaxX: nice
eulerscheZahl: ClockSort had a funny bug: small trees could cast shadow on bigger ones
eulerscheZahl: from gold straight to legend #20 yesterday
Marchete: people don't test enough
ZarthaxX: btw, i dont get this, i win some games but my score keeps decreasing
Astrobytes: hehehe that's an *epic* bug
ZarthaxX: why does trueskill work like this :/
ZarthaxX: maybe im seeng score with delay
ZarthaxX: eulerscheZahl but he also allowed in his sim to seed everywhere
ZarthaxX: intended bug that works better
Marchete: with a good simulator you can guess endgame score if you play against yourself
ZarthaxX: i dont get it yet lol
Marchete: I did and it worked nicely
ZarthaxX: nice Marchete
nitekat: had lots of works to do these days, have no time to fix my code, finished in gold, so sad... :disappointed:
Astrobytes: No legend Marchete?
Marchete: lol no
Marchete: more like 1400 gold
ZarthaxX: :(
Marchete: my eval wasn't working in mid game
Marchete: and I just give up
sprkrd: did you do beam search too?
Astrobytes: I finished 1409 gold. Sad
Marchete: without a proper eval is irrelevant
eulerscheZahl: i'm sure you will beat us (except for one) in the multiplayer
sprkrd: but beam search, right?
Marchete: I don't think so
Marchete: but if I do, I'll try what recurs_e did
Marchete: probably NN :D
derjack: oO
Marchete: I was sure Beam Search wasn't the best algo
Marchete: so I refused to do it
sprkrd: heh, I evaluated all actions but with depth=1
Marchete: in fact I think my submitted was the heuristic
Marchete: probably 3 hours of code on top of the starter bot
jacek: where do you see your rank
Marchete: https://www.codingame.com/contests/spring-challenge-2021/leaderboard/global
sprkrd: https://www.codingame.com/contests/spring-challenge-2021/leaderboard/global
sprkrd: ah, you beat me
jacek: oh my
eulerscheZahl: and everyone beats me, i'm dropping :(
eulerscheZahl: nap time, i'm tired
Marchete: I think robo gave very good ideas about NNing the game
sprkrd: I mean, he was faster than me posting the link
Marchete: they are really interesting
sprkrd: Actually my bot seems to be a bit better :)
Astrobytes: Afternoon nap-time for Old Man Euler :D
Marchete: when do you get up euler?
sprkrd: What I don't understand about robo's NN is why he encodes the sun points as a OHE input
Astrobytes: 4 or 5 am iirc Marchete
actualCoderTrevor: How long before we can revisit this contest? I was never happy with my bot.
sprkrd: isn't that a clearly numeric feature? Why the trouble of a 1-hot?
Marchete: I saw his submit time at 4:30 am
Marchete: that's why I'm asking
BrunoFelthes: actualCoderTrevor, maybe some hours
derjack: apparently 5 sun points is much different than 6 sun points
sprkrd: shouldn't the NN pick that up even if encoded as a numeric input?
derjack: now when i showed him one hots are really hot, he uses them everywhere
Marchete: maybe sun points matter for move selection
Marchete: and the NN will know better what actions are valid
sprkrd: I assume it does, but I cannot clearly see the benefit of the one hot here
derjack: NN maybe could figure it out, but 'preprocessing' inputs makes the NN to understand it better with fewer hidden layers/units
Marchete: yeah
Marchete: like on oware
sprkrd: a threshold in a numeric feature is something a NN can clearly do with just a layer, with a sigmoid or a relu
Marchete: Robo said earlier
Marchete: his oware bot trained 10x faster
sprkrd: It's a whole art this thing about designing a NN :sweat_smile:
Marchete: when converting all to one-hot
Marchete: https://www.codingame.com/multiplayer/bot-programming/oware-abapa/leaderboard
Marchete: I'd listen to him
Astrobytes: a black art at that
Astrobytes: Almost witchcraft
sprkrd: so that's oware
sprkrd: I didn't have a clue of what you were talking about
Marchete: oware is oware abapa
Marchete: a game about seeds
Astrobytes: :D
derjack: and spring challenge is about seeds too
sprkrd: Yeah, I didn't know about the game
Marchete: well, each position can have 0-N seeds
Astrobytes: What a description Marchete
Marchete: they encoded as one-hot
sprkrd: I thought you were talking about some obscure NN thing
sprkrd: The oware architecture or something like that
derjack: people called me a madman when i said i use one hots
sprkrd: It's the only thing natural language processing people uses, right?
sprkrd: They see a number other than 0 or 1 and the go all crazy
sprkrd: they*
derjack: its off/on
derjack: its faster to calculate
derjack: and for some board game, even faster because you only calculate the difference
ThunderbirdOne: anyone know when c# 9 is coming to CG ?
derjack: i.e. NNUE for chess
RoboStac: even if you don't do NNUE you can massively optimise it by skipping the 0 inputs
peerdb: not NN, but I was wondering how I could have made my gamestates as small as possible, I saved all the trees in a map<int, Tree> (C++), because I didnt know how else to save a variable amount of trees. Is there a better way?
Astrobytes: They just did a languages update ThunderbirdOne, so probably not for a while
Marchete: skipping zero inputs?
Marchete: ahh
RoboStac: it's just a big matrix multiply so if the input value is 0 you don't need to calculate 96 lots of 0xweight
Marchete: I get it
sprkrd: peerdb I did it using four uint64_t numbers
derjack: peerdb bitboards?
sprkrd: the state has a constant size this way, very easy and fast to calculate hash (should you need that) and very performant equality check
sprkrd: another bitmask for ownership, and another bitmask for dormant status
sprkrd: 6 uint64_t in total for a state
peerdb: can 4 uint64_t's save 37 trees?
derjack: RoboStac but you still used python framework for training?
peerdb: interesting
sprkrd: yes
RoboStac: yeah
Marchete: and richness outside the state
Marchete: as static
derjack: used sparse vector something?
Marchete: we all did the same :D
peerdb: how many bytes was your total gamestate sprkrd
RoboStac: no, the training just takes it as a dense vector without optimising it
HakamGo: Are they gonna rerun the Tests for all Leagues now?
sprkrd: 8*6=48bytes
peerdb: for 1 gamestate? jeeez mine was 208
RoboStac: but it's run on the gpu so fairly quick
Astrobytes: peerdb: https://core.ac.uk/download/pdf/33500946.pdf
derjack: hmm
Twelve0: no HakamGo just for legend
sprkrd: I started with map too thinking it wouldn't matter that much
peerdb: thanks Astrobytes im gonna read that one, I'd never heard of bitboarding before this contest
Astrobytes: also check chess programming wiki
HakamGo: Twelve0, hahahah are you sure??
Astrobytes: Just for legend HakamGo
sprkrd: when my first MCTS was capping a ~70 simulations in the first turn, I decided it was time to upgrade to bit boards
iggy12345: good morning
sprkrd: then I dropped MCTS anyway and did evaluations with just 1 depth of moves :)
sprkrd: seeing the success of Magus, I should've pressed on MCTS
peerdb: when doing beamsearch, how many moves should you at least be able to look forward (as rule of thumb) ?
sprkrd: nice read Astrobytes :)
Astrobytes: Yeah, it's a great paper
derjack: dont spoil the ending
Astrobytes: lol
sprkrd: If I had found that paper earlier, I'd have done my shadow calculations with bit shifts instead of using look-up tables
Astrobytes: Did no one link it during the contest?
Marchete: i did all with shifts
Marchete: it was natural to do it
sprkrd: Didn't occur to me organize the cells in a way different from the numeric index
sprkrd: I mean, it's natural if you don't put cell 0 in bit 0 of your number and so on
Marchete: it's natural when you read about hex bitboarding :D
Marchete: what I found slow is move generation
sprkrd: That's what I was missing, never worked with hex boards earlier
Marchete: 70% of the time for me
Marchete: (well, also the eval)
sprkrd: Astrobytes probably, I wasn't around very much in the chats/forum
Astrobytes: ah, gotcha
Marchete: #es forum is usually silent, if you were looking there
sprkrd: No, not at all
Marchete: ah
sprkrd: I wasn't around in any chat/discord/forum
Astrobytes: It's usually good to read the chat, even if you're not chatting, during contests - you can pick up a lot of good info
sprkrd: Was going full autistic for the contest :joy:
sprkrd: Astrobytes yes, will consider that in the future
Astrobytes: then when you've had enough, ?disableChat
Tiramon: hm easy score in coc today ... so many people using c for shortest ;)
eulerscheZahl: doesn't sound like a smart idea
eulerscheZahl: and how many real people and how many bots?
Tiramon: afaik no bots ... at least not the bots i know of
Marchete: you guys are doing coc?
Tiramon: i do some to get rights to edit clashs :) at least one mod should have rights to do it ;)
Tiramon: still the same bots according to leaderboard, so yes quite low amount of bots =)
Marchete: 125, that's "normal"
Marchete: https://www.codingame.com/leaderboards/clash/global?column=clashescount&value=DECREASING
Tiramon: right
Marchete: wth, 130000 clashes?
Magus: sprkrd: there is more successful than me in MCTS
Marchete: bots, no?
Magus: jolindien is better :D
Marchete: yeah, bot
Tiramon: those with > 10k games are the bots quite easy to filter ;)
eulerscheZahl: and these with > 40 score points in the contest too
Marchete: struc_t is a tryhard CoC'er
sprkrd: Magus: didn't know he used MCTS
Marchete: 3800 clashes
sprkrd: Now that's my new milestone
eulerscheZahl: https://forum.codingame.com/t/spring-challenge-2021-feedbacks-strategies/190849/22
eulerscheZahl: "My strategy is based on … surprise … MCTS."
sprkrd: I'll confess I skimmed very fast through the post :)
sprkrd: this zobrist hashing thing caught my attention
sprkrd: sounds like a cult
sprkrd: the zobrist hashing cult
sprkrd: of the zobrist church
Astrobytes: Zobrist cult :rofl:
StevenV: I really like this challenge, as bot simulator is not the only way to looking for :D
Magus: I had zobrist hashing at first, but I had far too many cache miss
Magus: So I removed it
Marchete: ahh, weird
eulerscheZahl: is that what the game is about? https://www.codingame.com/multiplayer/bot-programming/cultist-wars
Marchete: lol
sprkrd: Hell, Kodle also used a hash map for MCTS? why the hell was I getting so few simulations then?
Marchete: pragma?
sprkrd: I thought the reason I was getting so few simulations was because of the hash map, instead of using a tree of pointers
Marchete: pragma O3
Marchete: yes
sprkrd: doesn't CG do that too?
sprkrd: in the FAQ page they say they compile the code with -O3
Marchete: give us your 3 first lines
Marchete: really?
Marchete: that's new
sprkrd: it's been there a few years I think :S
Marchete: then no
Marchete: https://www.codingame.com/faq
Marchete: said nothing about that
Astrobytes: g++ 10.2.1 mode C++17 With the following libraries ‑lm, ‑lpthread, ‑ldl, ‑lcrypt
sprkrd: what the...
sprkrd: really?
Marchete: ofc
Astrobytes: Hence the pragmas ;)
derjack: use Ofast [solved]
sprkrd: My brain filled that there for no reason
The_Auditor: when will spring challenge convert to multi ?
Magus: Ofast is like O3 with fast-math. It can improve speed if you use a lot of double/float.
sprkrd: So, the reason I got so few simulations and get so poor performance in general is because I miss a pragma?
Marchete: congrats, you were baptized in CG's C++
eulerscheZahl: probably today or tomorrow The_Auditor
derjack: Magus aka NN stuff
sprkrd: I'm gonna update all my bots immediately
derjack: youll probably get 3x speedup
sprkrd: My UTTT bot was in legend and wasn't using O3
sprkrd: I wonder what that will do
peerdb: damn sprkrd I had the same last contest, I didnt know how pragmas worked and had them below my #includes
derjack: :scream:
derjack: keep in mind #pragma must be as first line
sprkrd: yeah yeah
Marchete: welcome to CG
sprkrd: my first current line is an include from the std
derjack: #pragma GCC optimize "Ofast,unroll-loops,omit-frame-pointer,inline"
- pragma GCC option("arch=native", "tune=native", "no-zero-upper")
- pragma GCC target("rdrnd", "popcnt", "avx", "bmi2")
MSmits: hi there
Astrobytes: :D
peerdb: derjack can I have a comment above my pragmas?
sprkrd: I've been around for so many years and didn't know this
Astrobytes: Yes
MSmits: comments are ignored
sprkrd: I thought CG was doing the sane thing and compiling with -O3
Astrobytes: Hi MSmits
Vry: About prgma : https://www.codingame.com/playgrounds/283/sse-avx-vectorization/first-avx-code-sqrt-calculation
Vry: *pragma
RoboStac: the pragma just has to be before any code you want optimising (including templates in includes)
peerdb: oh okay lol cus CLion automatically put a comment there and I never thought about it
MSmits: hi Astrobytes, contest done finally.
Astrobytes: Indeed :D
derjack: eeyup
MSmits: glad i got into legend, but didnt improve after that
sprkrd: Thank you, thank you all
sprkrd: Indeed the chat is useful
Astrobytes: ;)
Marchete: I think the no-zeroupper got it wrong
sprkrd: never used pragmas to indicate compiler options, should I do it like in the first line of the code you sent for vectorized sqrt, Vry?
Marchete: sometimes I saw no-zero-upper, no-zeroupper
derjack: dunno what no zero upper does, just copy pasted mindlessly
derjack: as all the things i do
Marchete: but I think it's no-vzeroupper
MSmits: contests used to have two brackets. The search guys at the top, below that, heuristic, more or less
Marchete: anyways that has little impact
Marchete: I'd say none
MSmits: they now have 3 brackets :)
peerdb: this contest heuristics got into legend too
Astrobytes: 3?
MSmits: yes, i meant generally
Marchete: I know derjack, I put the no-zero-upper somewhere and got copied
MSmits: with some mixing
Marchete: because I keep seeing it
MSmits: the 1st bracket will soon be NN's astro
MSmits: like how it is in boardgames
Astrobytes: Ahhh yeah, gotcha
MSmits: and csb
Marchete: also these pragmas were for that test
RoboStac: afaik no-zero-upper was a problem on original avx implementations but on most cpus doesn't really do much
MSmits: search guys complaining nn's are unfair are now in the same boat as heuristic guys complaining search is unfair :)
ItsNotABug: battle for 3rd is looking close
Astrobytes: The One True AI
RoboStac: as an nn guy who's below the search guys can I complain the other way? :)
sprkrd: I don't think NNs are unfair
Astrobytes: hehehe
MSmits: did you do a NN for this contest RoboStac?
Astrobytes: Check the PMs MSmits, some really good ones
RoboStac: yeah
MSmits: havent had time yet. been teaching, omw home now
Astrobytes: ah I see
derjack: omw?
MSmits: well RoboStac, i still think it's ballsy to try it
Astrobytes: on my way
MSmits: good job
eulerscheZahl: i don't see a reason to complain. in theory everyone can build a NN and dominate
eulerscheZahl: it still requires a lot of work and skill
Astrobytes: Yep
eulerscheZahl: but equal changes nontheless
MSmits: eulerscheZahl i agree, i am just saying the complaining is equivalent
eulerscheZahl: right, those evil searches ruining my heuristic bot
MSmits: though when someone counterbooks a NN though...
Astrobytes: Heh heh heh
eulerscheZahl: also ban C++ it's unfair. and give me 1s for python
ItsNotABug: eulerscheZahl You've taken back over top German
MSmits: not a problem in contests ofc
MSmits: too random
MSmits: lol yes languages
eulerscheZahl: that will go on for a bit, i'm not even watching
eulerscheZahl: final results in 3-4h maybe
peerdb: allow assembly and watch new dominance unravel
MSmits: 1 thing would be fair to complain about, if a contest somehow requires loads of expensive local calculation time
MSmits: i kinda liked my 8 x brutaltester
MSmits: didnt make me do better though, but was convenient
Marchete: ban brutaltester too
Marchete: it's unfair
MSmits: could have written my own :P
Marchete: banned too!
MSmits: was pretty easy this contest
eulerscheZahl: i had a bigger problem with fantastic bits tbh
MSmits: oh Marchete
eulerscheZahl: physics game without public referee
MSmits: we had this discussion about beam width right?
MSmits: beam depth sry
eulerscheZahl: so there were those few hardcode-CSB players that could quickly write an engine
MSmits: i accidentally set my beam_width as depth (1000 turns) and my bot performed the same :P
eulerscheZahl: and for the rest of us it was out of reach to adapt that fast
reCurse: Good morNNing
Marchete: weeeee
eulerscheZahl: good afternoon
MSmits: morning reCurse
VizGhar: aaah confirmed :D
Marchete: automatonNN is here
Astrobytes: hehehe
eulerscheZahl: congrats, a massive win
reCurse: Oh there's even 2 Ns in afternoon, missed opportunity
reCurse: Thanks
Astrobytes: Yeah, well done
derjack: and evening
MSmits: thanks for motivating me even more to learn this nn stuff reCurse
Marchete: he hasn't said anything, no?
Marchete: about NN
reCurse: NNo
Marchete: lel
MSmits: doesnt need to i think
Marchete: yeah
derjack: nneed
Marchete: after seeing his first move
MSmits: but sure, i could be wrong
Marchete: in some replays
Marchete: I was thinking, wth!?
VizGhar: we are waiting for that post mortem :)
reCurse: I briefly considered renaming to Totozero :p
Marchete: so I assumed NN
MSmits: missed opportunity
Astrobytes: lol
olifozzy: NN is the new GG
eulerscheZahl: on a scale from 1 to 10, how exhausted are you this time?
reCurse: Um
MSmits: who?
eulerscheZahl: reCurse
reCurse: A bit over the first half: 11
reCurse: Last few days: 6? 7?
darkhorse64: overheated maybe ?
MSmits: once it works, it works eh?
reCurse: My allergies are killing me
reCurse: So probably mostly that
eulerscheZahl: so no BotG-like PTSD to expected this time
reCurse: Most of the work done was outside the contest eh
eulerscheZahl: right, that's clear to me
MSmits: oh and will you just be back for contests reCurse? Earlier people were saying you left CG
reCurse: I took a CG hiatus for over a month before contest
MSmits: yeah
reCurse: Considered leaving CG yeah
MSmits: well it doesnt have to be a all or nothing thing
MSmits: plenty of people come here just for contests
reCurse: Just too frustrated with the direction this site is going
reCurse: But contest is always that magical time of the year
ThunderbirdOne: I haven't been here for a year either
ThunderbirdOne: it's fine
ThunderbirdOne: though i'm not a mod of course :P
ThunderbirdOne: i am missable
eulerscheZahl: you used to be a missile
MSmits: reCurse maybe just focus on the part that is fun for you however small it is. No need to be involved in big picture stuff. I don't
davilla: what direction is that?
reCurse: Well here's the thing, wasn't sure if I was going to disclose it but
reCurse: Whatever
sprkrd: reCurse what is it you don't like about the site?
reCurse: I'll be switching to human learning in a month or two
eulerscheZahl: less contests, less competitive direction
reCurse: :P
reCurse: So who knows after that
MSmits: wait, do you mean becoming a teacher?
reCurse: Father
MSmits: ohhh
ThunderbirdOne: oh congrats!
eulerscheZahl: oh, congrats
MSmits: awesomenes
Astrobytes: Oh wow, congrats!
ZarthaxX: cognratzz
MSmits: congrats
ZarthaxX: amazing man
Kellthazar: gratz
Wontonimo: Congrats, a new NN in the family
ZarthaxX: lol
Astrobytes: :D
Wontonimo: it learns in real time
MSmits: human learning lol... forgive me for misunderstanding that one :P
reCurse: I finally get the legitimate right to dad jokes
MSmits: yep
reCurse: Not gonna let that one go to waste
reCurse: Thanks everyone
Astrobytes: hah!
davilla: wonder which human will be learning, him or the kid
reCurse: So yeah it's been on my mind
MSmits: both
reCurse: Whether I have time for CG at all after that
MSmits: depends on your family
MSmits: every family is different
MSmits: I still get a lot of spare time
Wontonimo: the first 2 years of my kids life is a complete blur
MSmits: but yeah first few yrs, a lot less time
Wontonimo: but there are pictures that prove it happened and in every one of them I look like someone just woke me up
Astrobytes: lol
MSmits: lol
reCurse: I'm still going to do tons of machine learning stuff, just the competition stuff tends to pull away way too much of my focus
MSmits: my daughter was born 3 months after i started teaching for real
derjack: so, teaching gives you babies?
eulerscheZahl: pb4 is also competing occasionally. and then skipping a contest again
eulerscheZahl: you can still play like him
reCurse: I'm an all or nothing kind
MSmits: eh no, Astrobytes please explain how much time babies need to grow
Astrobytes: :D
derjack: 3 days
reCurse: It bothers me to think of "what if I had 100% dedication" etc
eulerscheZahl: all on 1 contest and nothing on another?
MSmits: yeah I can see why that would bother you, it would even bother me, so i imagine it would be worse for you
reCurse: shrug
Wontonimo: it's a new variable for the contests
reCurse: I don't know what to expect at all tbh
reCurse: Kinda nervous
reCurse: So playing pessimistic
ThunderbirdOne: it'll be fine ;)
ThunderbirdOne: just enjoy the ride
reCurse: Will do
MSmits: sleep when you can :)
Wontonimo: yes
ThunderbirdOne: nothing wrong with siestas, dont let anyone tell you otherwise :P
MSmits: i should not complain, sleepless stuff only lasted a couple days for me
davilla: your other half is probably complaining then
MSmits: she was, sure
kovi: gratz recurse and gratz
reCurse: She's very understanding, I'm blessed
reCurse: Thanks
Wontonimo: reBlessed
Astrobytes: Peaceful baby = terrible toddler Terrible baby = anyone's guess :P
MSmits: biggest problem we had is bottle took 45 mins each time
MSmits: soooo slow
davilla: I'm guessing, also terrible toddler
reCurse: So I definitely killed this contest talk eh :p
CouscousAgha: damn the fights are still going
reCurse: I should not have read PMs, now I want to start over
MSmits: yeah it always takes most of the day
Astrobytes: A refreshing change of topic tbh reCurse :)
eulerscheZahl: you are even the cause of some japanese tweets
reCurse: Yeah I saw :)
Astrobytes: Finally! You're big in Japan!
derjack: japanese tweets?
Wontonimo: MSmits, sometimes a long time drinking is a break from crying. My second cried from the time she woke up to the time she went to sleep for the first2 years
eulerscheZahl: the extraterrestrial
MSmits: oh right, thats true Wontonimo
MSmits: apparently i was one of those ones
MSmits: not my daughter though
davilla: interesting
MSmits: I'm guessing, it was because I had no tablet like the kids do now
MSmits: i would have been such a happy child if i had one
MSmits: :jealous:
Marchete: why sometimes the CG chat goes bugged and the scroll bar stopped working?
Wontonimo: I have to admit, I had a lot of fun poking the chat when I noticed you were curb stomping the gold boss reCurse ... it was fun to see the chat explode
CouscousAgha: wait
CouscousAgha: how old are u guys
reCurse: I was watching :)
reCurse: Just didn't want to be too distracted
MSmits: CouscousAgha 40
reCurse: I honestly wanted to fix those losses
Wontonimo: HAHA
CouscousAgha: im 23...
MSmits: oh, i will watch my language then CouscousAgha
eulerscheZahl: i woke up at 5am, full of motivation to add a new feature to my bot after an idea I had at night
Wontonimo: you've convinced me, it's time to build out my NN for CG tooling
Astrobytes: I'm 38. reCurse is the oldest guy here, he's over 50 you know :P
eulerscheZahl: opened the website, quick look at the leaderboard
reCurse: What no
reCurse: I'm 37
derjack: huh
eulerscheZahl: and then i was completely distracted
Marchete: my first contest was with my 3month old toddler
Marchete: nights are long
MSmits: did it help any eulerscheZahl?
ZarthaxX: CouscousAgha same here
Astrobytes: I know. Remember kovi's assertion that you were older than him?
eulerscheZahl: Astrobytes did you think of kov i?
Wontonimo: i may be oldest here
Zaphus: I doubt it
eulerscheZahl: yes, MSmits. it was my stupid opponent grows everything at once assumption
eulerscheZahl: gave me 58% winrate vs old bot
Astrobytes: eulerscheZahl: kov i thought re Curse was older than he was
eulerscheZahl: and translated well to arena
eulerscheZahl: oh, i forgot about that again (or wasn't around)
MSmits: ohh ok i tried that, was 50%
eulerscheZahl: i know that he's approximately as old as my sister
Wontonimo: look at my picture Zaphus, don't I look old?
MSmits: might be poor implementation, or didnt synch well with rest of eval
kovi: who is older: my guess was based on ambigous chat comments
ZarthaxX: Wontonimo you cant fool anyone lol
Zaphus: Nah, Wontonimo - thats just hard living :-)
Astrobytes: Too many tacos!
Wontonimo: never
Astrobytes: :D
reCurse: Dealing with school kids loose on the chat does make me age
Astrobytes: I feel that.
cegprakash: as always weird leaderboard and matchmaking.. not enough games in my rank range : http://cgstats.magusgeek.com/app/spring-challenge-2021/cegprakash
Marchete: parent chats :D
CouscousAgha: yes what your language elders
Astrobytes: Oh, bi-annual ceg moan incoming
CouscousAgha: my 23yo ears cant handle tough language
CouscousAgha: watch*
MSmits: cegprakash thats just because you move up the ladder, it doesnt show all of it. If your bot is good enough it will get out of gold
Astrobytes: I refuse to participate. It's the same conversation every time :rofl:
MSmits: i did many submits to get out of gold and all of them in top 10 until 1 got out
cegprakash: 60% win rate
cegprakash: not enough to climb?
eulerscheZahl: the only winning move is not to play
Marchete: no
MSmits: cegprakash no its not
MSmits: mine is almost 100% till it gets neae top
MSmits: near
eulerscheZahl: you get 70% at the beginning and 50% at the end
MSmits: very roughly, yeah
Marchete: it's true that trueskill goes grazy with ties, but overwall it's good
RoboStac: cegprakash - looking at the stats there you have won 8 games and lost 15 in that range so you should be going downwards
Marchete: a good with a lot of ties can put you at bottom
CouscousAgha: cegprakash if your bot has 50%-60% in a specific rank means it belongs there
eulerscheZahl: :popcorn:
Astrobytes: lol
MSmits: someone else wanna pile on?
davilla: is that meme that well known, now?
ZarthaxX: :rofl:
davilla: doesn't even need a subtitle
Astrobytes: :D
reCurse: My doctor has recommended me not to participate in those conversations
ZarthaxX: this problem with ceg always arises heh
Astrobytes: ZarthaxX: Every. Single. Time.
eulerscheZahl: and don't tell him to read the statement
ZarthaxX: :rofl:
ZarthaxX: talking about statemen
cegprakash: I was rank 200 in gold
peerdb: cegprakash i win 65% of the matches and it put me on rank 309 (82nd in gold)
peerdb: so it seems fair
ZarthaxX: have you seen nmahoud e pm?
cegprakash: resubmit with improvements bang..
cegprakash: rank 400 in gold
eulerscheZahl: yes, iread nmahoud e
ZarthaxX: he mentioned amount of actions in 50ms, i think he didnt notice the 100ms
MSmits: they are not improvements :P
ZarthaxX: :/
eulerscheZahl: i pinged him on it
MSmits: anyways, train arriving, ttyl
eulerscheZahl: he has a fixed depth of 6
reCurse: :wave:
eulerscheZahl: which is about 50ms in most cases
ZarthaxX: did he saw the 100ms tho?
Wontonimo: later
Astrobytes: later MSmits
ZarthaxX: ahh okey
cegprakash: my old bot had 50% win rate and was in rank 200
eulerscheZahl: see you, good bye
ZarthaxX: bye MSmits
peerdb: the level of play rises each hour ceg
kovi: full heuristic bots are finished already
Wontonimo: well, i'm kinda sad suddenly because I know that mostly the chat is going to be dead in a couple days. It's been great, and hope to see everyone around from time to time before the next competition
Astrobytes: Damn, I forgot to write my PM explaining to anyone that didn't yet see it that I didn't like the contest and euler made me do it :P
kovi: all others are cheating and doing search in script language ;)
cegprakash: peerdb or u get caliberated bad because u had 2 bad games in the first 20 games
Astrobytes: Wontonimo: some of us will still be around ;)
reCurse: Don't forget to close with "not knocking over this contest"
cegprakash: I used minimax and my bot is well tuned against top players
cegprakash: especially boss
Astrobytes: reCurse :D
aCat: legendary bpss recurse ;p
kovi: we still wait for my bot is nn and trained against top players...
Wontonimo: i can count on you Astrobytes!
Astrobytes: :grin:
kovi: that is when the real hiding starts
reCurse: Speaking of hiding
reCurse: Honest question
reCurse: If I submitted that wednesday, do you think it would have been more fair? Better?
derjack: its fine
derjack: i dont mind hiding :v
Wontonimo: it's not hiding, NN take time to train
derjack: and less chance to counterbook you eh
kovi: this time we would have no chance for sure and it may not force me thinking to switch to duct instead of beam cause it was obviously nn
reCurse: I was legitimately scared people would spend the next few days finding flaws
Wontonimo: than you played it well
kurnevsky: Anyway almost everyone have an opponent he can't beat :)
aCat: oh ythey would ;p
eulerscheZahl: would have tried at least
aCat: that was great coming out recurse ;p
aCat: fun to watch
kovi: reasonable point recurse
reCurse: Well it's also that
reCurse: If I was slower, I would be less penalized
reCurse: So makes no sense to me to early submit
Wontonimo: in some other contests you only get to stay on if you are in the leading league. not the case here, so it's legit okay to come in last hour
rohrokz: https://www.codingame.com/clashofcode/clash/175691105515427ec9bd4c8d0fb9aae5188a9bb
eulerscheZahl: share that on #clash
sprkrd: Did the pragma thing with my UTTT code, went from 2000 simulations to 10000 with my MCTS code, and went from depth 6 to depth 8 with my minimax :D
Marchete: it's noticeable
sprkrd: (I had both a MCTS and a negamax bot laying around)
sprkrd: Quite a bit, yes
_Royale: congrats to all and thanks for the PMs :-)
struct: hello
golyshevskii: hello, guys)))
davilla: can I get someone to volunteer a comment here? https://www.codingame.com/training/medium/bijective-numeration/discuss
eulerscheZahl: surprised not to see you higher this contest. little time?
derjack: sprkrd so how many ranks up?
_Royale: eulerscheZahl: little skill :(
sprkrd: derjack I don't know until full eval, but so fat I've climbed ~80 ranks in legend
sprkrd: so far*
derjack: oh my
eulerscheZahl: oh. sometimes there's just the game that you don't know how to play
ZarthaxX: and struct is 44 rn :o
sprkrd: I was at the dead bottom of legend because my bot timed out sometimes. I'm greedy and I want my full 100ms :joy:
struct: :pray:
Astrobytes: nice
Marchete: you people don't sleep...
struct: I just woke up
Marchete: 4 hours?
struct: 5+-
Wontonimo: i had commitment issues and waffled the first 3 days if I was even going to play, then 3 days of ifelse not thinking I'd write a sim. Greatest enemy in this game was myself.
Wontonimo: and reBless
eulerscheZahl: i'll answer the sleep statement with https://imgur.com/a/CgW11GB
Wontonimo: and really everyone in legend
ZarthaxX: :) you are welcome wonto
Astrobytes: Error 4:04: Sleep Not Found
ZarthaxX: love making your life harder
ANJACE_Z: r u the undercover toad?
eulerscheZahl: yes, eulerscheZahl = UndercoverToad
ANJACE_Z: big fan haha
eulerscheZahl: chat got too laggy
Marchete: and your evil twin?
davilla: nevermind, I guess Discord will have to do
eulerscheZahl: is at rank 41
Astrobytes: geheimKröte
struct: No one wrote about the same bitboard I used yet?
struct: Do i need to do it?
eulerscheZahl: https://forum.codingame.com/t/spring-challenge-2021-feedbacks-strategies/190849/13?u=eulerschezahl
struct: not the same
struct: that one doesnt have 3 bits padding
reCurse: Who knows if we don't know your bitboard
darkhorse64: Koddle also wrote something
reCurse: I used bitboards
struct: reCurse I just meant
struct: Nobody wrote about it
eulerscheZahl: so you have to do it struct
Astrobytes: Immediately.
struct: Im sure some people did it in a similar way
ZarthaxX: like me that i copied you
eulerscheZahl: collect some likes, get the philosopher achievement
reCurse: I just literally kept this on my second monitor to do bitboards https://www.redblobgames.com/grids/hexagons/#map-storage (click hexagon)
eulerscheZahl: do you have to unset bits for longer shadows?
eulerscheZahl: if yes, struct wins that round at least
reCurse: Mask with map mask 3 times
eulerscheZahl: i had that too
eulerscheZahl: structs layout doesn't need it
reCurse: But do you get neighbors for cheap
eulerscheZahl: he does too
reCurse: Without indexing?
sprkrd: This is a minor achievement, my first recorded victory against euler :D: https://imgur.com/a/CLaPPTL
eulerscheZahl: shift my 1,9 or 10 depending on the direction
sprkrd: It's somewhat diminished by the fact that he won immediately before, but still :)
struct: http://chat.codingame.com/pastebin/d97e25c5-691f-464d-b4d1-32e423d46f85
VRtheKing: alex = apalepex
VRtheKing: what is this
reCurse: Variable shifts :scream:
eulerscheZahl: sprkrd is that UTTT?
VRtheKing: nope I mean the input is alex and output is apalepex
reCurse: I could be completely wrong here because predicting low-level perf is hard
reCurse: But I think this is slower than straightforward
sprkrd: eulerscheZahl yes
eulerscheZahl: one of the legends i struggled the most to enter
eulerscheZahl: that and wondev woman
reCurse: But it was so huge
eulerscheZahl: i'm terrible at fast code
eulerscheZahl: in most games i can compensate to some degree with eval or search algo
struct: maybe its not faster, I havent benched other ways
eulerscheZahl: but UTTT is mostly about speed
jacek: to this day i keep win against reBless in UTTT as 2p https://www.codingame.com/replay/536825365
eulerscheZahl: you could still do 3 sequential shifts without the unset part
reCurse: I don't think saving an and masking is worth it
reCurse: It's literally already in the register too
reCurse: shrug
eulerscheZahl: fair enough, more of academic interest
OldJohn: @struct you can replace *2 by << 1 btw to help readiness
derjack: oO
Wontonimo: lol
struct: :D
davilla: thanks, Old John
OldJohn: You are welcome
cegprakash: omg eulerscheZahl had bugs in his sim
cegprakash: nutrient bug
cegprakash: that hurts
eulerscheZahl: i have?
cegprakash: "I made my simulation incorrect by not decreasing the nutrient on each cut tree. Instead I decrease it by 1 on each WAIT action."
eulerscheZahl: it's intentional, made it easier for me to score states
cegprakash: I see
Marchete: I don't understand that
cegprakash: it's minimax concept
cegprakash: u assume opponent completes first
cegprakash: that way u can play a safe move Marchete
Marchete: on each WAIT?
eulerscheZahl: if i reduce the nutrient, the other tress are worth less
eulerscheZahl: so i don't want to sell them
CouscousAgha: the scores wont change even after a win or loss?
eulerscheZahl: because my sim is wrong in the first place and I give every tree the full score
eulerscheZahl: which is stupid but i felt like not bothering with it
reCurse: Definitely not unusual to make simulation not work the same
struct: Are you going to write a pm?
Wontonimo: I'm looking forward to reading the PMs
cegprakash: eulerscheZahl u used the same scoring for opponent?
miszu: good morning children
CaptainTraveller_2e82: Hi everyone!
PatrickMcGinnisII: Spring Challenge 2021 report for PatrickMcGinnisII Rank 857/6867 I suck
miszu: PatrickMcGinnisII it's good man!
miszu: where can I get my report?
PatrickMcGinnisII: https://www.codingame.com/contests/finished
miszu: nvm found it thanks!
miszu: 680/6867
OldJohn: @Astrobytes I'm 55 and I know olders here !
davilla: Young John it is, then
Astrobytes: OldJohn: Yeah, there are quite a few actually!
E_pur_si_muove: OldJohn: that's only your halftime result :)
PatrickMcGinnisII: Oh another OG, great
davilla: Original Gangster?
OldJohn: I am old enough to know Ken Thomson, the Spracklens, Richard Lang, Richard Greenblatt... So you probably understand on which game I was competing
Lysk: Original Gontest?
eulerscheZahl: cegprakash 04:34PM eulerscheZahl u used the same scoring for opponent?
minus the eval of tree count and positions. i can't change it anyways
OldJohn: I forgot Claude Shannon also
E_pur_si_muove: Aristotle?
Astrobytes: Chess. Nice
olaf_surgut: could someone downgrade my rank to 2137?
Astrobytes: What do you mean olaf?
derjack: such a nice number
eulerscheZahl: just submit some bots that are worse than your current
ZarthaxX: he is into something Astrobytes
derjack: and we have chess on CG
olaf_surgut: in poland its meme
OldJohn: @derjack I saw that but I want not to infer with successfull memory in the 199x...
Astrobytes: ah ok olaf_surgut
davilla: Urban Dictionary to the rescue
HoangH7: @olaf ask Elsa.
derjack: i doubt it will be on urban directory
derjack: or dictionary
eulerscheZahl: Time when pope John Paul II died.
Astrobytes: OldJohn: I think you should try it anyway ;)
derjack: pepe?
derjack: dbd still 1st on othello :unamused:
BrunoFelthes: why high legend take more time to process?
BrunoFelthes: bigger games?
Astrobytes: Most are using the full time limit for a start
reCurse: Personally I turned off my solver because I suspected a bug with it
Astrobytes: And thousands of games
BrunoFelthes: hum, make sense
reCurse: So it still takes 100ms at the end
reCurse: RIP
BrunoFelthes: reCurse, do you start your tree using 1s at the first turn?
reCurse: Roughly
reCurse: Sometimes it stops at 700ms for boring technical reasons
BrunoFelthes: and do you reuse it for next turns?
reCurse: Yes
BrunoFelthes: nice...
reCurse: Well, sort of
OldJohn: @Astrobytes Chess is too serious. I need to be full time on it as I used to be. So only in 5/7 years with retirement
BrunoFelthes: do you reuse with hashtables or just jumping into the choose tree state?
reCurse: Hashtable
Astrobytes: OldJohn: Ah. Yes, that's fair enough!
xMizar: Hi all. Sorry for the stupid question, but which delay on the first turn are you discussing here?
reCurse: First turn gets 1000ms
reCurse: So you can compute more stuff for later use
Wontonimo: is there a way world-chat-only page or tool ? (other than hacking html)
BrunoFelthes: so, each turn do you start a new tree, but this time it is faster because do you have some hashes calculated at the previous turn?
reCurse: Wontonimo: suggested that years ago
reCurse: I start a new tree each turn
reCurse: It's a godawful stupid idea btw
reCurse: Only realized it costs me much perf too late
reCurse: Entire turns spent rebuilding tree from cache heh
BrunoFelthes: but, for rollouts, do you use cache too?
reCurse: Cache all the things
Wontonimo: gotta go, work calls
ZarthaxX: cya wonto
PatrickMcGinnisII: where's the final leaderboard, i'm dumb this morning
reCurse: https://www.codingame.com/contests/spring-challenge-2021/leaderboard/global
reCurse: +6.66 achieved stopppp
PatrickMcGinnisII: tx
reCurse: Nevermind I still can't math
PatrickMcGinnisII: oh it's still running the rerun?
peerdb: almost done
PatrickMcGinnisII: well congratz to the top coders!
PatrickMcGinnisII: worktime
AeroFufel: reCurse, which hardware did you use to train NN? I'm a bit sad that one needs to pay money to be competitive... kind of. Participants with an access to server power have advantages. What do you think guys?
reCurse: I didn't pay servers
ZarthaxX: no lol
reCurse: Just my own computer
reCurse: i7-8700k with RTX 3080
jacek: at this level paying for training NN isnt neccessary
actualCoderTrevor: Testing my new avatar...
AeroFufel: got it, well, still ))
struct: no advantage
struct: I rented and didnt move
reCurse: Stuck on 12 cores because I don't like AMD and on the fence about 11th gen
reCurse: Also stock issues
struct: just wait for 12th gen
struct: 16 cores
reCurse: I guess
jacek: and here i am stuck with AMD's ryzen 7 5800x
VizGhar: I can see my ranking already
ZarthaxX: how did it go VizGhar
Counterbalance: 20 threads but didn't use them :(
VizGhar: ah poorly... I came up with beamsearch in first 2 days and haven't worked on it properly after
VizGhar: so just first half of gold :) I'll do better next time, just have to train this kind of code-writing
KalamariKing: jacek did you just say STUCK WITH
OldJohn: So reCurse, so you use NN and search... like aplhazero ?
reCurse: Totozero
reCurse: But yeah pretty much
jacek: KalamariKing in sacrastic way
VizGhar: let him write the post mortem :P im sure he will answer everything there
reCurse: Oh god
OldJohn: OK then...
VizGhar: or has he already?
reCurse: I still need to write this
VizGhar: :D
reCurse: Why did you remind me
OldJohn: and some info about totoZero ?
VizGhar: :zipper_mouth:
reCurse: Just a lame joke with totoro, it's mostly alphazero
jacek: with a policy?
reCurse: Policies
OldJohn: OK then. So in you PM you'll have to focus on the NN inputs and outputs
jacek: robo wrote about NN inputs and outputs
OldJohn: BTW in Othello do you use NN also ?
reCurse: Yes same pipeline except version "2.0"
OldJohn: @jacek It may be different
VizGhar: inputs and outputs are not that hard i suppose... I fear the training
reCurse: "2.1" is this contest
reCurse: Comes with small bug fixes exclusive to this contest
reCurse: Like it does not throw away 95% of training data anymore \o/
reCurse: (True story)
OldJohn: @reCurse ok fine ! my own othellozero implementation is not at your level. Congrat
Astrobytes: 95% !
ZarthaxX: VizGhar pretty good anyway!
reCurse: Yeah I was livid when I found that bug
jacek: what happens to the other 5%?
ZarthaxX: i meant your performance
VizGhar: TY ZarthaxX
reCurse: I am actively repressing the thought of what it would do to my uttt
jacek: :scream:
Astrobytes: :D
jacek: yeah, detronize karliso
VizGhar: mg... now everybody will try to learn NNs before next contest...
reCurse: Circle of life
AeroFufel: that's right... and sad
DomiKo: will try - that's a good word
MSmits: i would love to see your uttt improved reCurse
OldJohn: Just follow my courses :-) Sorry only for my collegues
jacek: :thinking:
MSmits: I still want to try to find a route for p2 to force a draw, dont think it exists, but a better bot can maybe find it
VizGhar: Hmm I want to know how big is such NN code in codingame.
reCurse: Smaller than you think
VizGhar: shouldnt be that big right?
jacek: code is small, weights are big
VizGhar: just hardcoded weights and there you go
jacek: i use 1 char per weight, resolution a little less than float16
MSmits: reCurse if you throw away 95% of the training data, doesn't that just mean it takes 20x longer to train? Or was the thrown data not uniformly distributed?
reCurse: Distribution problem
jacek: and my typical NN is in range 20k-75k weights, rest is the code
MSmits: aha
Marchete: maybe it's better a PM than random chat questions
jacek: a bug in buffer queue?
MSmits: jacek might as well use 32 bit floats, or would that affect performance (simd etc.)
reCurse: I don't know, the questions help me figure out what I should talk about
reCurse: (I hope)
Marchete: ahh
VizGhar: 75k... for which contest? sounds scarry
reCurse: I started something yesterday, then I read the PMs this morning and decided to start over
jacek: multiplayer games
MSmits: reCurse I know the most important question
reCurse: I never learn
MSmits: dreadylein wonders this also
VizGhar: uhm in general ok
MSmits: how did you structure the input
jacek: MSmits i dont use avx/simd (explicitly), its just for storage. they are floats anyway
MSmits: ah ok
Marchete: inputs layers, outputs, how it's the training pipeline, what kind of data (i.e. value+policy) do you export for training, rollout numbers
MSmits: well yeah i guess output also, if it has policy
reCurse: I am still extremely uncomfortable with giving too much details
reCurse: Not a rational reason
Marchete: ahh ok
jacek: we'll give you cookie
MSmits: no, it's ok to keep it to yourself, just throwing out options here
OldJohn: I have to make a oneapi NN example for the work, maybe I'll use a game for that !
jacek: try oware
struct: amazons
reCurse: Why oneapi and not cuda? Just curious
reCurse: And what's your line of work if you don't mind me asking
reCurse: OldJohn
OldJohn: because I have to use Intel next GPUs
Marchete: I'm always puzzled about what to export ( policy == visits? value = NN result of value or endgame 1/0)?
reCurse: Oh interesting
OldJohn: And with oneapi you can use the GPUs of your 8700k
reCurse: But is it really as fast as nvidia cuda optimized libs?
OldJohn: NDA, sorry
reCurse: Ok np
reCurse: You work for/with intel?
OldJohn: Nope but I have to benchmark V100, Mi100/mi200 and future ATS/PVC and I have to be ***fair***
reCurse: That sounds fun :)
reCurse: What's your line of work
OldJohn: yep, that is the fun part of the work
jacek: do you mine crypto in free time with those
OldJohn: @jacek I can't sorry
jacek: right, I believe you
xMizar: Sorry for the stupid question, but did i understand correctly that you implemented NN here, then export some data after each round and then tweak your parameters and weights using that output?
Chara98: I am noob how can i be good at problem solving?
jacek: perhaps I should try exploring those fancy libs, i made my NNs from scratch only and theyre simple
reCurse: No, the NN is exported offline to be part of the code
reCurse: Then it's used during the game
bociricsi: Chara98, never stop trying
OldJohn: @reCurse yes it is a good idea to use tf or pytorch and then generate the good C++ code, there are plugins for that
jacek: Chara98 try easy puzzles first https://www.codingame.com/training/easy
reCurse: Generate C++ code?
jacek: welp you only need forward here
xMizar: Wow, i just wrote stupid algo here, without NNs :)
reCurse: NN is very new on CG
KalamariKing: I was gonna write a nn, since I've got experience with those, but I decided not to
xMizar: It's my first game ever
KalamariKing: Contest you mean?
xMizar: Yes
KalamariKing: Hey same
Marchete: you need to code the inference engine
Marchete: you can't just import tensorflow
OldJohn: You can generate the inference part in c++ with a plugin
OldJohn: without using TF libs
reCurse: That's interesting, never heard of that
Marchete: plugin of 8BM probably
Marchete: MB
Marchete: or how's the size?
Marchete: even tflite was big
reCurse: They usually don't optimize for source code size :P
TBali: funny: in the leaderboard right now only #6 is recalculating. Who is it battling with then?
Marchete: TFLITE - good for embedded -> 20MB
cegprakash: #clash
Marchete: wtf
reCurse: Matchmaking is one-sided
reCurse: Just like submits
OldJohn: We used that in numerical simulation code where NN is doing some kind og interpolation of a complex function
TBali: I see, thx
OldJohn: keras2cpp for example
reCurse: Anything for pytorch? Not big on tf myself
OldJohn: So you add to code the game in Python first reCurse ? I did not have time for that myself
OldJohn: But you can let that in the PM :-)
reCurse: ? You don't need to run the self play in python.
OldJohn: Ok then !
nmortfeus: python is goat
OldJohn: I still wonder if https://github.com/deepmind/open_spiel is usable by students ?
jacek: python is reptile
Marchete: yeah that keras2cpp seems very slim
reCurse: I have the same relationship with python as with pythons. Stay away as far from it as possible, and when I have to it usually involves strangulation.
OldJohn: I have the same feeling with Python, so I use Ruby as script language and play Othello !
reCurse: I think I'll die with C++ myself
jacek: othello in ruby? :scream:
ThunderbirdOne: I've played with Python... I get the appeal... you can build stuff pretty quick... but man =/ it just doesnt click for me
AeroFufel: @reCurse Did you touch Rust? I had so much hope in it and C++ still wins for some reason
OldJohn: So enough *work* for today, time to go home !
reCurse: Bye
OldJohn: bye all!
reCurse: I briefly looked at Rust
struct: cya
reCurse: I don't see anything that compensates for the enormous loss of momentum, tooling, familiarity, legacy, etc
reCurse: Not that it's not good, but the cost is just too great
ChadThundercode: most of the contest I was improving my C# code, and got a boost when I translated it into D :thinking:
reCurse: If I was worried about security like I'm writing a browser though, for sure
miszu: which bot game should I go next? Othello or yavalath?
reCurse: Time to hide
MSmits: whats you goal miszu, what are you looking for in a game?
miszu: well I want to practice a bot game where eval function is simple
MSmits: Othello has some well known eval features
MSmits: you wont be nr 1 with them, but should do well, maybe top 10
miszu: and it's all about coding the best heuristic that takes leverage on eval
miszu: othello is just # of your pieces
miszu: so easy eval
MSmits: remember, to win at almost any board game these days, you need NN or similar
miszu: but there are some small traps
MSmits: but you can be top 5 without NN
reCurse: That's a strange way to misspell opening book
miszu: you did NN?
jacek: othello isnt about piece count
MSmits: I can be nr 1 with opening book if i want to, i am trying to leave it out of the discussion reCurse :P
reCurse: But that's factually wrong
reCurse: To win you need opening book
MSmits: sure sure
miszu: at least in beginning for sure
MSmits: unless noone does it
MSmits: and almost noone does
miszu: I'll look it up some opening books about othello and hopefully gain some ranks
miszu: alright othello it is
MSmits: you will notice i still have not reactivated my othello one
miszu: you're #7
reCurse: Part of therapy is not to look at those leaderboards
MSmits: yes, with a simple eval miszu
struct: you can always try amazons
struct: jacek has NN ready for it
miszu: oh jesus
miszu: NN
MSmits: miszu honestly dont worry about NN
reCurse: This is gonna fall on deaf ears
reCurse: NN this year is going to be the GA of 2018
MSmits: become good enough with regular search algorithms and then if your progression is blocked by NN, then worry about it
reCurse: Mark my words
MSmits: you need a search for a NN anyways
miszu: I took ML class in uni. I didn't even understood 30% of the math but finished with A- in the class
MSmits: it's not like they just look up the move only
DomiKo: reCurse yeah, but is this good or bad?
DomiKo: will we have NN battles?
reCurse: I don't know
jacek: yeah, for now i have simple eval in amazons
reCurse: I don't care
MSmits: DomiKo i am not certain if it even mattered this contest
MSmits: reCurse might very well have won with a normal algo
MSmits: he certainly did other times
reCurse: Oh you weren't there?
reCurse: I said totozero
reCurse: That's it, this is the official name of pipeline now
MSmits: no you misunderstand
miszu: btw, I assume C++ is the way to go with othello
MSmits: i meant
MSmits: if you had done a normal search
MSmits: you might have won also
MSmits: because you did before
DomiKo: no, doubt
MSmits: and other people tried NN
MSmits: Agade and Robo
MSmits: these guys are experienced NN players
jacek: miszu you can learn a lot about bitboards for othello
DomiKo: Agade and Robo know what they are doing
MSmits: and they failed and semi-failed
MSmits: (compared to their normal results)
MSmits: I like the bravery of trying though, NN is very hit and miss
miszu: jacek I know some bitboard due to UTTT. But I guess the best question is how to leverage on it
miszu: to simplify calculations
reCurse: Oh I see
struct: I tried to find NN for dummies during testing
reCurse: I don't know my patience for hardcrafting evals is nowhere near where it used to be
MSmits: understandable, it does get old. The fact that the contests are time limited at least makes you stop
MSmits: locam was painful for this
fenrir: I did an NN too but not the same algo (a policy gradient A2C like but with complete episode) but clearly not the same result than reCurse ;)
reCurse: Yeah I saw that's very cool fenrir
reCurse: Model-free is certainly impressive
MSmits: nice one fenrir
reCurse: On a board game
fenrir: it's very close than the one I have done for CSB
slamo: did recurse post how they did it?
reCurse: If this chat was vs code
fenrir: for CSB I did try AlphaZero but got nowhere (dunno if its the algo, my code, bugs ? ...)
reCurse: I'd be done writing the PM
reCurse: eh
reCurse: Takes me forever to get in the flow
fenrir: and so for this game I decided to not retry AZ, might have been an error ;)
TheBatMan_TM: hey guys
TheBatMan_TM: I need help
reCurse: I think model-free when you have the model available is a mistake personally
struct: "It's not impossible that a 3rd event happens during the year." Please dont give me hope
TheBatMan_TM: can any of y'all suggest a good REPL for MERN stack dev??
DomiKo: 3rd contest :open_mouth:
fenrir: you do some kind of AlphaZero, righ ? but here I am unsure how to handle the silmutanous part. a DUCT ?
reCurse: Yes and yes
TheBatMan_TM: which supports multiple terminals? online
fenrir: or you serialize maybe ...
fenrir: ok, so it should also work on CSB
fenrir: but I failed largely on it
reCurse: Reinforcement learning is mostly about failures
MSmits: fenrir your nn on csb beats every non-NN
fenrir: I will retry on this game then, as now you are 'proof' it can work
fenrir: th CSB bot is not an AZ but a policy gradient
MSmits: oh you meant you failed AZ
fenrir: (the bot I submitted I mean)
MSmits: i see
fenrir: yes, I failed to make AZ work on cSB
fenrir: using MSTC + DUCT + NN value/policy
fenrir: but so many part with potential bugs ;)
reCurse: You don't say...
MSmits: ah yeah
miszu: for othello just for the lolz I submitted a random bot. It is sad to see I am able to beat some players.
MSmits: oh, thats one thing that was nice this contest, I ended with 600 lines!
MSmits: normally 1500-2000 :P
fenrir: I will also need to add the unicode trick to nearly double the size
MSmits: hmm larger network also makes it slower right?
fenrir: (and CSB seems easier, always the same actions)
fenrir: yes, but at inference time, for a policy only one, time is not an issue
fenrir: my bot answer < 1ms
MSmits: ah ok
MSmits: wow
MSmits: why not search a little deeper?
reCurse: Policy only
fenrir: but a MCTS + NN, that's another story
MSmits: oh, it's ply 1?
MSmits: a policy only?
MSmits: oh right
reCurse: Model-free
MSmits: you cant backprop anything
fenrir: yep, policy only, that's the drawback, I cannot exploit the extra time
MSmits: yeah, would be better with a bigger network
MSmits: can encode policy better and use more time
Lysk: my latest attempt with A3C on CotC, the boat was moving in circles...
reCurse: My uneducated opinion is muzero is a far superior approach
reCurse: When you don't have the model
fenrir: with policy gradient, also, it's quite tricky to not have the policy converge very fast tome something suboptimal, that's my main problem
MSmits: when you dont have the model, azero isnt an approach at all is it?
reCurse: No because you don't know s'
dreadylein: 80 % of reeinforced approaches are failures, but when it works they get realy strong fast, at least in my experience
reCurse: from (s,a)
MSmits: right... azero is better than muzero when you do have the model though. It takes less time to get the same results
reCurse: It's debatable
MSmits: which makes sense
reCurse: It's entirely possible it learns a model that's more efficient to use for search
MSmits: that's true
MSmits: i find it amazing that within the search it's considering illegal moves :P
MSmits: if they can even be called moves
MSmits: and it doesnt matter as long as it leads to a good final decision
reCurse: It is remarkable yeah
Marchete: like seeding from tree1 in a neighbour
reCurse: I'll surely get curious to try it at some point
MSmits: yeah that
Marchete: I just don't understand these moves
reCurse: But on CG it's nonsense
MSmits: might not be nonsense for these contest or ex contest games
MSmits: some of them are weirdly complex
fenrir: reCurse: for your PM, it you accept: I would love to know the number (order of magnitude, is it 10, 100, 1000, 10000) of iteration you do when you compute a node
reCurse: Iterations to compute a move you mean?
dreadylein: did you disclose which approach exactly you used ? Sorry if you answered it allready, just came ;)
reCurse: Totozero
reCurse: Everyone coins terms so it's my turn
Marchete: you aren't doing it correctly
fenrir: reCurse: from memory, in AZ they used 2000. I am searching for the name
RoboStac: but it doesn't have your name in it
Marchete: it should be totomax
RoboStac: so it can't be a real algorithm
reCurse: :(
MSmits: RoboStac :grin:
fenrir: but basically the number of time you traverse the tree for update it's root value I think
The_Auditor: people a mentioning reCurce's PM
reCurse: Yeah iterations to compute move
The_Auditor: where can i find it ?
reCurse: It's in the 4 digits
dreadylein: i think they just called it rollouts in the papers
fenrir: reCurse: ok, thanks
dreadylein: to keep the term inline with the mcts part
reCurse: That literally makes no sense :P
dreadylein: :D
Smelty: so contest is over?
dreadylein: 1000 upwards mhh howmuch processing power did you use ?
reCurse: i7-8700k with RTX 3080
reCurse: Office was a sauna
The_Auditor: hi reCurse , where can i find your PM ?
dreadylein: half precission interference ?
dreadylein: hehe
eulerscheZahl: you find it halfway finished in his text editor
reCurse: Chat is more fun than writing a PM as usual
The_Auditor: ^_^
reCurse: Happens twice a year where the chat is actually riveting
eulerscheZahl: apart from clash invites
jacek: or escape
The_Auditor: except i have to work . . . and then chat is gone
Marchete: euler, jace_k, smits and robo are usually in chat
kovi: recurzero?
fenrir: cool now, I will have to redo my AZ implementation and understand why it was not working :)
Marchete: they have interesing chats from time to time
struct: How long did it took you to get rank 1 bot?
reCurse: I did not run batches so I don't know for sure
reCurse: But it felt like I had a hard time finding losses by wednesday if I recall correctly
Marchete: 6 days to code and train?
kovi: not enough games with 8-10 blocks
reCurse: Went hardcore on thursday
fenrir: for my AZ I used only one NN with 2 heads, maybe it is better to have 2 NN (still undecided)
reCurse: Then started getting results um... monday or tuesday I think? They weren't that great though.
dreadylein: do you think you the model maxed out ?
reCurse: lol no
reCurse: Every time I think that
reCurse: I do something and it gets +30elo
reCurse: So I learned to stop thinking that
dreadylein: impressive work :)
reCurse: Thanks
reCurse: I did not even put the final version actually
reCurse: Shipping instincts
fenrir: yes, it is impressive :)
dreadylein: i always have the feeling the zero approaches are reeealy delicate :D they like to not converge to anything hehe
reCurse: If it got tested enough and it works
reCurse: Why risk it
dreadylein: at least for me
KalamariKing: King_Coda ping
dreadylein: eh no way something bad happens pushing 5 minutes before the deadline ^^
KalamariKing: King_Coda pong
DomiKo: "Every time I think that" I guess we all got that feeling when we think that you impressed us so much, and then you impress us even more
Astrobytes: :D
reCurse: My best version has +50 elo over the arena version
reCurse: :blush:
King_Coda: STOP KALAMARIKING
DomiKo: so you can go +10 score in leaderbord?
reCurse: No
reCurse: That's elo
eulerscheZahl: trueskill has some cap
reCurse: 50 elo is like 57%
dreadylein: i wouldnt even be suprised if a higher iteration count would increase its elo as long as it doesent hit cellings
eulerscheZahl: good, was about to look taht up
DomiKo: hmm ok
reCurse: I stopped using winrates entirely
jacek: huh
KalamariKing: King_Coda ping
KalamariKing: King_Coda pong
KalamariKing: King_Coda ping
KalamariKing: King_Coda pong
jacek: kick
Astrobytes: stop it
struct: stop spamming
Smelty: stahp
King_Coda: KalamariKing cease this instant
eulerscheZahl: even at kicking reCurse beats me
Smelty: o.O
Astrobytes: :D
jacek: he made NN for that
DomiKo: :joy:
jacek: oh, a new rule in dice duel at new league
Smelty: wait it says i got 0 codingame points for the contest?
delineate: Really impressive win. If you don't mind saying, what was depth/plys for the duct search part?
eulerscheZahl: yes. sum of old and new die = 7 to capture
DomiKo: Smelty you have to wait
Smelty: k
reCurse: I actually have no stats for that delineate
reCurse: Would have to code it
MSmits: duct does not have a fixed depth like mcts
MSmits: afaik
DomiKo: Can we have mirrored games in Bot version of the contest?
MSmits: it's not like minimax
struct: there isnt ept duct?
reCurse: CG permanently crippled batches, I don't think they'll add more charge
jacek: mcts doesnt have fixed depth o.O
MSmits: ept still does not have fixed depth
MSmits: no jacek thats what i meant
struct: so on smitsimax you dont have fixed depth?
jacek: hmm that sentence was ambiguousous
MSmits: yeah was ambiguous
MSmits: struct well, it depends on how you code it
MSmits: duct is different though
struct: so you cant code duct to have fixed depth?
struct: ah ok
struct: i dont know what it is
MSmits: i havent coded duct, but basically you take all states combined from choices of both playes
KalamariKing: why does mcts use random playout? wouldn't it make more sense to choose moves at least a LITTLE?
casmith789: it uses random because otherwise how do you know which are good?
MSmits: so it's smits with a coherent state representation (nodes always correspond with the same states)
dreadylein: you can do it, but the mai point behind classic mcts is that you dont need domain knowledge aside of the rules
reCurse: Random playout is terrible
dreadylein: *main
KalamariKing: casmith789 true
reCurse: They need to stop teaching that
Uljahn: vanilla mcts uses random but there are heavy playouts as well
Marchete: then what? MCTS is based on zero domain knowledge
reCurse: It pretends to work with zero domain knowledge
reCurse: For me it's in the same line of thought as
reCurse: Maybe if I keep trying random solutions I'll find the perfect one
reCurse: In theory it will
reCurse: ...
dreadylein: technical correct, the best kind of correct ^^
Marchete: then remove Monte Carlo for the name
jacek: it still can be random. just bias some moves or prune them
Marchete: NotSoMonteCarloTreeSearch
Marchete: j/k I agree with the domain knowledge
kovi: wow, i wanted to optimize vs. him, but it was more luck recurse vs. kovi 82%
reCurse: I wonder if euler kept all the matches this time too
eulerscheZahl: nope, not a single one
reCurse: aw
kovi: and interesting not all on 8-10 block maops
kovi: you changed something today? i had no chance before on open maps
reCurse: I put the saturday night version back
reCurse: Wasn't sure my fix did anything good
kovi: i c
reCurse: I know some things go wrong but fixing them without interfering other legit ones is...
reCurse: Usually difficult
reCurse: With a NN? kill me
kovi: yeah
reCurse: I feel like trying a new architecture to fix it
reCurse: But
reCurse: Might just be the contest leftover energy that usually dies out soon after
reCurse: I just wasn't going to restart a training on last day
MSmits: Gonna be a long time before someone beats it anyway
jrke: congrats reCurse
reCurse: Thanks
reCurse: It's not even about #1 I just want to know why it's not working
jacek: *5 years later*
reCurse: Throwing won games is rage inducing
jacek: ragequit
kovi: 8th,12th,6th,4th,10th,18th what is next?
reCurse: ?
fenrir: what's not working ?
jacek: kovi is this clash
kovi: last 6 contest for me
jacek: oh
reCurse: It had odd games where it either plays like crap
TBali: you don't like odd places
reCurse: Or it throws games that are won
reCurse: Need better tooling to debug this
fenrir: do you normalize your input ?
jacek: i once saw it timeouts when both players seed the same cell.
reCurse: Yes
fenrir: because I had an issue with that
reCurse: The timeouts are all server hiccups
reCurse: No crash
fenrir: I used stats on previous run
Marchete: you had some games with 5 seeds in the game, like wth?
fenrir: but they were not symmetrics
Marchete: I parsed some replays
Marchete: must be somewhere
fenrir: and for some games the NN was not playing right
reCurse: I may have given too much freedom in some situations
reCurse: No explanation for the excessive seeding
fenrir: (mine I mean=)
Marchete: it was a loss
Marchete: so I imagine it doesn't matter
reCurse: fenrir even if you're not perfectly normalized as long as you're close enough to it, should be fine
reCurse: In my experience anyway
fenrir: yes it should but I meant that my cell 1 was not normalized with the same coeff than cell 2 (with large difference)
reCurse: Ohh.
reCurse: That's a problem :)
fenrir: because the stats collection phases was poor
fenrir: it was just in cases (I saw it very late, no time to retrain but it explain for my bot why some maps play poorly)
jrke: oh fenrir you ended 21st missed t-shirt by 1 ranl
reCurse: I noticed large imbalance in some map
fenrir: :sad:
reCurse: Game starts and it says 20% winrate... ok...
struct: o.o
zhoubou: How do I get my rank in contest by language?
reCurse: Use the filter columns on leaderboard
zhoubou: Yeah, but it doesn't show my rank by that language specifically
reCurse: Oh.
reCurse: Don't think there's a way to fix that sorry
gmessier: Count each lines :P
zhoubou: Ah, too bad. Thanks anyways :)
zhoubou: gmessier Lol that will take a while
gmessier: (or pages)
zhoubou: There are no pages (?)
gmessier: Oh yeah, they are only in the main leaderboard I think... not in contests
zhoubou: I would use JS but it seems it's dynamically loading the rows
reCurse: You could query the API and count it in the JSON
karliso: reCurce Just 91% winrate? You gotta be dissapointed :D
reCurse: I just want to know why it loses :( :P
reCurse: API is a big word
gmessier: The front call a back API
reCurse: More like open the web inspector and network tab
reCurse: Have fun
delineate: I was happy to get one win against you recurse, haha. lso, one game which blew my mind while testing was this one https://www.codingame.com/replay/557327036 check out moves 9 and 22, crazy "defense"
delineate: Also*
reCurse: Haha nice
reCurse: Personally I was just impressed when it started doing knight moves like the others by itself.
reCurse: You need to set the bar low in RL
Lucky30_: reCurse when are you planning to start streaming
reCurse: I've retired
struct: lol
Lucky30_: nooooo
Lucky30_: can i be you student
jrke: so you did RL reCurse?
Lucky30_: *your
reCurse: Yes
reCurse: To jrke
reCurse: MSmits is a teacher maybe he takes students
Lucky30_: :(
Lucky30_: ok i will ask him later
MSmits: hey, happy face, maybe i iwll
Lucky30_: :)
jacek: :upside_down:
struct: step 1 get top 10 on csb -> step 2 do NN
MSmits: depends on how much time you're asking and what you want to know
struct: Those are your tasks
fenrir: btw, if not secret, on CSB, more or less the same or not ?
fenrir: (for reCurse)
Lucky30_: can i be your student*10e30
Lucky30_: i want to know everying to be top 10 next contest
jacek: notice me senpai
pardouin: :hugging:
Lucky30_: senpai reCurse said you will teach me if i manage to get to top 10
MSmits: if you have specific questions i will mostly answer them :)
GreatTux: Congrats reCurse, a league of your own really... very impressive
MSmits: but if you find out how to get top 10 next contest, do tell me as well Lucky30_
Lucky30_: nooo
Lucky30_: ok what about top 50??
jrke: bi-directional teaching
MSmits: Lucky30_ i can mostly reach that these days, not this time though
Astrobytes: quid pro quo jrke ;)
jrke: lemme google 'quid pro quo'
jrke: oh latin phrase
jacek: quidquid Latine dictum sit, altum videtur
jrke: a favour or advantage granted in return for something.
Lucky30_: fine by me, just teach me enough to get to top 100, and sempai reCurse would do the rest
ClockSort: Lucky30_ i made 26th place, it was a simple matter of breaking my brain to build a simultaneous-move mcts which took 30+ hours (first time for everything is slower)
ClockSort: took 3 days to build MC, then 4 days to upgrade it to MCTS
ClockSort: next time will be a lot faster :)
Lucky30_: ow my god
Astrobytes: Well done ClockSort
MSmits: ClockSort isnt this duct?
ClockSort: yes it's DUCT but i didn't discover that until afterwards :D
Lucky30_: i only managed gold ~700 with heuristics only
MSmits: ahh ok
jrke: i failed to get minimax working due to eval
MSmits: the idea of the enormous branching always puts me off
jrke: and ended up with heuristic
jacek: MSmits practice on amazons
jacek: :v
MSmits: amazons duct :P
MSmits: its sequential so wont work
ClockSort: @MSmits i pruned all seed actions. if you have no seeds you must seed, otherwise you can't. that reduced branching to about 50 states per depth
MSmits: oh right you mean to get used to branching
jacek: :smirk:
MSmits: thats not bad ClockSort
ClockSort: 7 for p1, 7 for p2, each combination makes 49 states
Lucky30_: you guys are soo coool
MSmits: ClockSort what if they both seed at the same time?
MSmits: couldnt that be 20x20?
AntiSquid: are you really writing a guide on Mbits magic? MSmits ?
ClockSort: when seeding i required you to minimize the number of trees that could shade you if they were large trees. so the number of seed locations was typically 1-4. so taht's even fewer states (4x4=16)
MSmits: AntiSquid yeah, summer soon, so will have time, if you can wait a month or two
ClockSort: note: number of own-trees, not all-trees.
AntiSquid: congratulations reaching legend in that mess btw MSmits
MSmits: yeah thanks :)
eulerscheZahl: mess = his code?
AntiSquid: the game
ClockSort: yeah congrats MSmits. getting out of gold is an achievement for sure.
MSmits: actually my code was never more neat than this time in a contest :)
MSmits: it just wasnt very good
struct: what is the logic for next gen on intel cpus, 8 cores + 8 cores but 24 threads
AntiSquid: i didn't call your code messy, have no idea what it looks like apart from bit manipulation
MSmits: only 600 lines euler
MSmits: well if i removed the sim debugging stuff
ClockSort: this was my first CG event using C++. It was much better than using C# last fall! Nice to not think about GC.
eulerscheZahl: 765 lines for me
eulerscheZahl: with some dead code
kovi: so heur<beam/mcts<mcts-duct<mcts-duct-nn
eulerscheZahl: you win this golfing contest smits
MSmits: you had some nice ideas in your beamsearch i wish i had thought of eulerscheZahl
MSmits: yes :)
kovi: gratz clocksort!
kurnevsky: @kovi you forgot minimax :)
jacek: and posted another approve~
kovi: oh sorry
kovi: heur<beam/mcts/minimax<...
ClockSort: 1200 lines for me, but 400 of them were huge arrays to make calculating range and shadows easy.
eulerscheZahl: definitely a large variety of approaches in top20
eulerscheZahl: that's unusual
AntiSquid: about 600 if i don't count the commented lines
Lucky30_: guys did you share anything from your codes?? at least the structure..classes/function names.. general logic...?
MSmits: well it seems to me that if heuristics works, every search works too, because you can just work the heuristics in there to get the same result
kovi: i also liked dp idea...at some point i was thinking about it
ClockSort: @kovi congrats on top 10! That was really close, you were slipping a little in the last day. Very impressive.
eulerscheZahl: i didn't even get a notification on your approval jacek. thanks though :)
jacek: i managed to create legal moves
jrke: yeah approval messages are bugged i think cause i didn't get for mine also(1-2 months ago)
AntiSquid: heuristics were quite high in this contest though so ... lol
ClockSort: i think this contest was really good, the one thing i didn't like was sometimes-unfair start positions
MSmits: were they really unfair?
MSmits: because of sun direction?
ClockSort: sometimes the sun is going to shade you first, and it can't well be avoided.
eulerscheZahl: when i was analyzing losses and asw that i was at bottom right, i instantly skipped it
AeroFufel: @reCurse Btw, do you use VS still or CLion? (Watched your videos, you are cool!)
MSmits: hm ok
reCurse: Visual Studio
Lucky30_: what video
Lucky30_: share with me please
AndreMarasca: where
AndreMarasca: link please
jacek: rebless stream https://www.youtube.com/watch?v=dQw4w9WgXcQ
AeroFufel: YT just search it, closed
sprkrd: search for what?
AntiSquid: had no idea he's ginger
eulerscheZahl: https://www.youtube.com/watch?v=BU9b445CpaM
reCurse: Noooo
eulerscheZahl: also the game itself: https://www.codingame.com/multiplayer/bot-programming/legends-of-code-magic
reCurse: Can't watch it gives me the creeps
ClockSort: i totally get that, lol
Astrobytes: You won't believe what happens in part 2!!!! This will blow your mind!!! And change your life!!! :P
eulerscheZahl: was that the bitstreams?
AntiSquid: what's the issue with it reCurse?
Astrobytes: Of course euler
reCurse: I don't know it gives me anxiety or something
reCurse: The only reason is up is because I forget it exists
eulerscheZahl: just hearing yourself. i don't like that either
jacek: this is mostly when i read my old posts
Lucky30_: dont delete
AntiSquid: maybe not being familiar with streaming does that
AeroFufel: nah, you are great!
Lucky30_: i need your teaching
Astrobytes: I don't know many people who are comfortable watching/listening to themselves in all honesty.
AntiSquid: wait you intend to delete? :/
jacek: or remind of stupid things i did in childhood
reCurse: No I won't delete
Lucky30_: god bless you
struct: cant relate
eulerscheZahl: my mom brings up these childhood stories all the time, I hate it
Astrobytes: lol struct
AntiSquid: cool euler, want to share some pictures with you from kindergarten or school ?
MSmits: reCurse i like it already, never watched it because my hearing is bad and i can never understand what they are saying, but now there's subtitles and that helps. I think I will watch the whole thing
eulerscheZahl: i'll call the cops on you if you ask again
reCurse: lol
MSmits: i am just curious
Lucky30_: i will watch them all
AeroFufel: @MSmits just watch the second part, the sound is ok there!
Lucky30_: no thinking required
Astrobytes: AntiSquid: here he is https://imgur.com/a/R4euXNt
MSmits: no i am not complaining about the sound
MSmits: it is better than most streams
AntiSquid: i was taking the micky astro
MSmits: my hearing is just crap, i am a lipreader
reCurse: He can't get over my awful accent
Lucky30_: Astrobytes lol
reCurse: I get it
MSmits: no its not too bad
Astrobytes: AntiSquid: so was I with the toad picture!
Lucky30_: *you wonderful accent
jrke: oh euler so table can also be move using arrows nice in dice duel
Lucky30_: *your
MSmits: i really like the video reCurse, dont delete
reCurse: Ok I won't
MSmits: or wait 4 hrs, to let me finish :P
reCurse: I can get the urge to
struct: please delete
reCurse: But I won't
Astrobytes: Not an awful accent at all
jacek: i will pirate it
MSmits: ignore struct, he is not great at deletion decisions
struct: :)
MSmits: thanked you in my pm btw struct, i always suck at this brutaltester crap
struct: np
struct: have no idea why mine bugged for you though
MSmits: thats ok, solved it in the end, i tested everything i wanted to
MSmits: just didnt get better ideas
Astrobytes: Hmm. 2 notifications from jacek's dice duel approval?
eulerscheZahl: you got 2? i got none
jacek: i accidently deleted one
Astrobytes: One 14 minutes ago, and another 2 minutes ago
Astrobytes: Oh
jacek: but why you got any notifications
Scarfield: he stole eulers
MSmits: eh, jacek, that means you figured out a new way to troll :P
Astrobytes: Stop giving him ideas Smits!
MSmits: :)
Astrobytes: lol Scarfield
eulerscheZahl: astro didn't even leave a comment
eulerscheZahl: do upvoters get notifications now? :thinking:
jacek: lol https://www.codingame.com/forum/t/poll-spring-challenge-2021-language-supremacy/190391
Astrobytes: I haven't upvoted or approved it euler
Astrobytes: Upvoted now.
eulerscheZahl: i wasn't begging for upvotes btw. just curious in what way you would be involved
Astrobytes: The notification system is strange.
eulerscheZahl: yes
eulerscheZahl: i reported that long ago with my last contribution
eulerscheZahl: i don't even remember what it was
jrke: there is bug in notification even i didn't got any message for approval of night of war
Astrobytes: It's not high priority but in the queue iirc
jacek: clashes are higher eh
eulerscheZahl: same for my last approved one
eulerscheZahl: probably blockout
jrke: damn 1000+ registered in fall under 10 hours
eulerscheZahl: i wait with registration until i know what i'm getting myself into
struct: damn its in all caps
Lucky30_: people are ready for more
eulerscheZahl: i'm ready for a break
eulerscheZahl: happy when the contest finally starts. happy again when it finally ends
Lucky30_: hhhhh
jrke: cause you end with getting a t-shirt
eulerscheZahl: because i'm exhausted
Lucky30_: how many t-shirts you guys have
eulerscheZahl: CG or contests in general?
Lucky30_: both
TBali: in general
TBali: :-)
AntiSquid: maybe i do raic in fall
eulerscheZahl: in general a good dozen i think
eulerscheZahl: 5 for CG (and some more that I gave to other users)
jrke: i have one CG t-shirt in total got for organising a community not winning any
MSmits: lol I already found something in reCurse locam stream that would have prevented a bug in the contest
MSmits: in my case
Lucky30_: oO :heart_eyes:
eulerscheZahl: assert?
MSmits: directly reading input into uint8_t
MSmits: reading it as a char
Astrobytes: hah
Lucky30_: lol
MSmits: it's in the beginning of his stream, questions being asked about it too
eulerscheZahl: what did you do? and what's the issue with it?
jrke: gn
MSmits: i just read the input directly into the state
Astrobytes: gn jrke
MSmits: and it gave the wrong number
struct: yeah same
MSmits: because it was read as a char instead of an int
struct: I had the same bug
eulerscheZahl: sounds like a C++ thing
struct: when I was resizing state
MSmits: if you store it in an int first, then assign it to the state, it doesnt do that
MSmits: it is
Lucky30_: good to know
MSmits: but it's a c++ stream so..
eulerscheZahl: and iostream
Lucky30_: euler no c# for you
eulerscheZahl: badumts
MSmits: a lot of things from the stream i already know, but if i can prevent 2-3 bugs from watching it, it's worth it
MSmits: lol
Astrobytes: :door:
Lucky30_: no js for me
eulerscheZahl: that i'm using C# mostly doesn't mean that I don't know C++
MSmits: you know it better than i do
eulerscheZahl: i wouldn't go that far
MSmits: i would, it's just the bit stuff i do with it i am better at
MSmits: i cant even make a real c++ app
Astrobytes: Define 'real'?
eulerscheZahl: i never dared to do any UI in C++
MSmits: like compile something
Wontonimo: am i dumb or do need some kind of permission to post to https://www.codingame.com/forum/t/spring-challenge-2021-feedbacks-strategies/190849 ?
MSmits: with more than 1 file
MSmits: .h files, includes etc.
eulerscheZahl: should just work Wontonimo
MSmits: never done that
Astrobytes: Seriously? You can do that.
eulerscheZahl: the forum is a bit buggy today, refresh the page
MSmits: sure if i tried and took a bit
MSmits: but never done it, just the basic CG stuff
Wontonimo: is it the "reply" button at the bottom?
MSmits: 1 file bots
AeroFufel: @eulerscheZahl I tried once and "drowned" :/
eulerscheZahl: yes
MSmits: never wrote a template
struct: euler we need -o flag on param fiddler :(
eulerscheZahl: https://imgur.com/a/kwYh3D4
eulerscheZahl: o flag?
struct: old referee
eulerscheZahl: right, i just used an old brutaltester
struct: same
Chainman: Hey
eulerscheZahl: oh, Wontonimo is typing now
eulerscheZahl: he found the button
Chainman: How do I get the .jar file for the refereer for springchallenge 2021.
eulerscheZahl: mvn package
Chainman: I'm trying to learn how to set up brutaltester and referee now.
Chainman: oh
Chainman: thanks,
Wontonimo: Thanks eulerscheZahl!
eulerscheZahl: https://forum.codingame.com/t/spring-challenge-2021-feedbacks-strategies/190849/56?u=eulerschezahl struct get him
struct: ok
struct: im gonna end him
jacek: oO
Astrobytes: Fighting talk!
eulerscheZahl: i see a christmas start and the word "replying..." next to it :popcorn:
Chainman: what did he do wrong lol?
eulerscheZahl: it's just not optimal
Chainman: oh haha
Chainman: oh crap
eulerscheZahl: more a topic of academic interest than anything else
Chainman: struct had a good bitboard. I look forward to reading these today.
eulerscheZahl: right, for you it's still in the middle of the day
eulerscheZahl: for me it's close to bedtime (also considering that i got up at 4am
Astrobytes: Definitely some really interesting PMs this time around. Lots of approaches
eulerscheZahl: )
Chainman: yeah
eulerscheZahl: i like the variety
eulerscheZahl: not like last time with 20 versions of beamsearch
Astrobytes: I admit the game turned out slightly more interesting than I thought.
Astrobytes: Yeah indeed.
eulerscheZahl: i still don't like the game that much
eulerscheZahl: just my usual reaction to board games
Astrobytes: I don't either. Just in case you didn't see my PM :P
eulerscheZahl: i read
eulerscheZahl: you even tagged me
Astrobytes: And I didn't even get a like. Shocking.
eulerscheZahl: thibaud liked it
Astrobytes: I only did it for reCurse tbh
kurnevsky: I even skipped first few days because I thought it's not interesting :)
MSmits: wait, no like?
MSmits: hold my :beer:
eulerscheZahl: you mean hold my <3
Astrobytes: kurnevsky: I wasn't gonna go past Bronze until euler insisted I keep going
Counterbalance: don't you mean hold my :purse:?
eulerscheZahl: i told you to go to legend as the boss was that easy
Astrobytes: I gave up on Saturday though
cegprakash: any idea why this is invalid input?
cegprakash: https://www.codingame.com/replay/557729554
Astrobytes: The server issues totally killed my motivation
cegprakash: my code crashes
eulerscheZahl: i stopped on saturday too
eulerscheZahl: and found some more motivation on sunday
MSmits: hey, i didnt find the pm Astrobytes
MSmits: where do i like it
Astrobytes: I just did random tweaks on Sunday
struct: how should i picture my bitboard
eulerscheZahl: "cegprakash ran out of time"
struct: :/
struct: Its hard to represent I think
eulerscheZahl: looks like you were too slow
Astrobytes: MSmits: https://www.codingame.com/forum/t/spring-challenge-2021-feedbacks-strategies/190849/36
eulerscheZahl: with a 9x7 grid?
cegprakash: no I printed Attack eulerscheZahl
struct: oh right
eulerscheZahl: and numbers on real game board
MSmits: euler forced me to reach legend Astrobytes
MSmits: know the feeling
Astrobytes: :D
eulerscheZahl: "ATTACK 1 0"
MSmits: he;s a stern taskmaster that one
mybk: yo guys, when do they open the multi-player version of the contest ?
eulerscheZahl: haven't played the game, don't know the rules. sorry. just went by the tooltip in the timeline
Chainman: How do I see graphics, it looks like it has a webserver with brutaltester replay?
eulerscheZahl: do you know the British TV show taskmaster?
MSmits: nope
eulerscheZahl: some tasks are fun to watch
Chainman: but the link just gives me a website that says "This site cannot be reached"
eulerscheZahl: some comedians getting tasks to solve
MSmits: I thought you just watched John Oliver, but there is more than 1 Brit apparently
Chainman: http://localhost:8888/test.html Exposed web server dir: /tmp/codingame (looks like it's working)
Astrobytes: Yeah. Load of rubbish that show.
eulerscheZahl: state your ground today on lastweektonight
Astrobytes: I prefer to watch the comedians on their own.
eulerscheZahl: watched it already
MSmits: oh, havent yet
MSmits: they usually just come up on my YT recommendations
eulerscheZahl: you can shoot anyone if your feel scared
MSmits: oh stand your ground
eulerscheZahl: doesn't even have to be on your own property
Astrobytes: wtf
eulerscheZahl: oh, i wrote that wrong
MSmits: yeah but i got it now
eulerscheZahl: of course stand
mybk: ...
Chainman: nvm it works just need to remove the test.html
MSmits: the US is weird
Chainman: yeah
MSmits: but funny to watch John Oliver go apeshit over it
Wontonimo: i lived in Texas in the 80s. yes, it's different there
Chainman: with the referee and the brutaltester, can I play against my bot like myself.
Chainman: Where do you live now Wontonimo?
Chainman: I live in Texas rn haha
eulerscheZahl: astro on the bug channel on discord :D
Wontonimo: it's was so exciting, i needed 3 locks on the door to keep the excitement out
eulerscheZahl: keeping a professional calm
Wontonimo: I live outside of Toronto Chainman
eulerscheZahl: you can't stop the LockpickingLawyer with your 3 locks
Astrobytes: I mean seriously, right? :D
Wontonimo: i love LPL
eulerscheZahl: let's do it one more time to show it was not a fluke
Wontonimo: 3 sec later lock opens again
Wontonimo: and that includes 1.5 sec to reach the timer on/off
struct: this image is a bit confusing right?
struct: https://i.imgur.com/t9PLtPb.png
Astrobytes: Is this dude just one of those lockpicking maniacs or something else?
Wontonimo: i especially like when he picks something without serious tools, like a tooth pick just to show how bad a lock is
eulerscheZahl: when ZarthaxX showed that to me, i had to redraw the numbers on the actual board first
ZarthaxX: true
ZarthaxX: i admit it was hard to visualize
ZarthaxX: :P
struct: Zarthaxx Draw one for me
struct: you are an artist
struct: :)
eulerscheZahl: a Zarthist
Astrobytes: ArtHaxX
The_Auditor: i need to read this chat for a couple of years to understand the above
Wontonimo: that assignment is great. "thinking outside the box". It would take me a while to have come up with that on my own as my first reaction is not to have wraparound
ZarthaxX: struct is it necessary now?
ZarthaxX: also toad did it on the hex board
Wontonimo: I'm not sure why it can't all be shifted 3 squares left though
ZarthaxX: what?
Wontonimo: https://imgur.com/t9PLtPb
ZarthaxX: what's up with that
Wontonimo: ^^ isn't this what we are talking about?
ZarthaxX: yeah
ZarthaxX: but didnt get your statement
struct: what do you mean Wontonimo?
ZarthaxX: hehe we are two now
jacek: Wontonimo whats on your mind?
struct: maybe without the numbers it becomes less confusing
Wontonimo: i don't think it matters ... i'm just BigIndian thinking. In the image the 34 is assigned to the 0th bit, but for some reason my mind wants to align 25 to the 63rd bit. No, never mind my statement. all good
reCurse: BigIndian :thinking:
Wontonimo: aligning it the way it is is better
Astrobytes: :rofl:
Wontonimo: big endian
Wontonimo: ma speling is bad
reCurse: Maybe I just had the wrong idea
Wontonimo: i feel bad now :(
The_Auditor: did the majority of multi-es started as challenges ?
Astrobytes: The_Auditor: You can see the ones that did here https://www.codingame.com/contests/finished
eulerscheZahl: in the first years codingame was hosting puzzle contests
struct: cant upload image
struct: refresh worked
xMistySenpai: i guess wood league is p simple when first starting
xMistySenpai: any battles seems to have non-functional bots
KelvinAndHubbles: was talking to a friend about the website and he decided to hop on and try the contest, he didn't even make a functional bot and just made it print "WAIT" and beat Wood 1
eulerscheZahl: wood is to introduce you to the rules of the game
eulerscheZahl: that sounds a bit too easy
KelvinAndHubbles: Wood 2* Not wood 1, it's not like that bizzarely easy
eulerscheZahl: but i can assure you that competing for top ranks is a lot more work than that
Astrobytes: Bronze was almost as easy as that too.
KelvinAndHubbles: yea, Gold/Legend is where it starts to get fun
Astrobytes: Not complaining though.
eulerscheZahl: i'm not talking about leagues but players
eulerscheZahl: struct uploaded
Astrobytes: Very nice
eulerscheZahl: https://imgur.com/a/RC6GgTJ i really think that such a representation makes it easier to understand what's going on
struct: ok ill add it
struct: thanks
Marchete: that's a nice image
jacek: looks yavalathy
jacek: i have 30 in center there
struct: lol
eulerscheZahl: struct just got a new achievement
ZarthaxX: to p50?
eulerscheZahl: 10 forum upvotes
ZarthaxX: he also got top 50 right
ZarthaxX: :P
struct: I think i already had top 50
struct: due to hackathlons
ZarthaxX: ahhh
ZarthaxX: nvm then
struct: it doesnt really count though
struct: it was my first time legend and top 50
ZarthaxX: :
ZarthaxX: :)
alchemsti: Hey, this feels like a dumb question, but I skipped out on the last day, and would like to grab the final copy of my code to play with locally. Is that currently possible?
alchemsti: Or do I need to wait until it opens up as a bot contest?
reCurse: https://www.codingame.com/contests/finished
reCurse: Click view report
alchemsti: Ah, thank you!
BlaiseEbuth: Hey there.
Littleyounes: hey
struct: hi
Astrobytes: :wave:
jke: struct, what value did you use to prioritize the queues? score only?
struct: I used nth_element
struct: and then evaluation score
struct: i stored states in an array
struct: store -> eval all -> nth_element
struct: *store & eval -> after all are done -> nth_element*
CameronWatt: programming never fails to make me feel like an idiot
jke: sorry I meant how did you calculate the evaluation score since the player score wouldn't be relevant in the first 6 turns?
jke: I assume amount of trees, etc.
struct: well i used the best scores to get the best N states
struct: so i could keep searching from them
struct: Then I would select the best that were expanded and do the same
jke: yes but the first 6 days you don't typically complete at tree, so I am asking how the score was calculated to determine a state was better than another?
struct: The evaluation function?
jke: sure, sorry I don't know the names of things
struct: my eval is similar to what other palyers descibed
struct: described*
jke: ok thanks, I was curious
jke: trying to learn
ZarthaxX: dude is missing the r to have the same name as jrk e lol
Smelty: lmao https://snipboard.io/jtZwzE.jpg
jacek: hm?
Nerchio: do you guys know how to fix brutaltester Error: Could not find or load main class
Wontonimo: did you build the supporting jar?
Smelty: :eyes:
Nerchio: yeah it cant find it in my ai file
Nerchio: referee works (i think)
Smelty: we just got this clash, everyone got 50% or below
Wontonimo: which game are you using brutal test for?
Nerchio: vindinium :D
Wontonimo: i dont' see that one in the list of supported game
Wontonimo: s
Astrobytes: Yeah you'll need to modify that yourself to get it to work
Wontonimo: https://github.com/dreignier/cg-brutaltester#list-of-compatible-referees
Nerchio: https://github.com/aperinot/cgVindiniumReferee
Astrobytes: oh nice. No idea then :P
Nerchio: i had similar error in contest i think
Nerchio: its not connected to wrong referee
Astrobytes: check the chat logs?
Wontonimo: if you get it (or a version of it) working then post a pull request to brutal tester to include it in the list of refs
Wontonimo: it looks like old code, so it may use the "old" ref
Nerchio: :thumbsup:
Wontonimo: try the "-o" for old option
Nerchio: tried didnt do anything :D
Illedan: :wave:
Wontonimo: paste you exact command line you are using here
Wontonimo: :wave:
Astrobytes: hey Illedan
Illedan: My brilliant PM is ready. xD
Nerchio: is there something like old brutaltester or not really
Astrobytes: Yeah, I tweak numbers in the IDE too and the lower limit really, really pissed me off
Illedan: But now I know
Illedan: Time to finish that local setup
Illedan: pff
Astrobytes: Yeah indeed.
Astrobytes: Almost no point to have CG IDE now
Astrobytes: For games
Illedan: True
Wontonimo: reading your PM now
Illedan: gg ddreams
Wontonimo: i'm not following you post about the ide games being decreased
Illedan: I guess increased fits better
Astrobytes: and lol at the books for your little one Ille :D
Astrobytes: Totally awesome
Illedan: Thx to jacek for sharing an image in meme on discord :D
jacek: oh?
Illedan: On Neural networks for babies
havbro: hi
jacek: ah
Toadmunchers: Sup havbro
havbro: hi
Toadmunchers: water u doing?
havbro: du kkknow
Toadmunchers: ya still there?
Astrobytes: uh oh, schoolkid time
Wontonimo: oh, i didn't know there were so many levels of throttling on CG Illedan. Thanks for sharing. i get it now. 600 submits / 24 hours seems low during a contest
Astrobytes: That's just IDE plays, not even submits
Wontonimo: if they provided an easy way of running the environment locally...
Wontonimo: already have it all in java, so it wouldn't be too hard I'd think
Astrobytes: Gotta do the work yourself for that.
Astrobytes: I liked the runner from last RAIC, wasn't perfect but it had all game modes/levels and wasn't slow
Astrobytes: *too slow
MSmits: still watching recurses locam stream
MSmits: auto subtitling gets funny sometimes
ClockSort: the one on YT?
MSmits: https://imgur.com/a/cEwdySV
Astrobytes: why do you need subtitles?
MSmits: my hearing is not great, sometimes it makes the difference
Astrobytes: Ah OK, cool
Astrobytes: Get a hearing aid or something, seriously. Not worth suffering.
MSmits: i have a hearing aid, but magnifying sound isnt always enough
MSmits: my brain is wired differently to understand speech
MSmits: because i have been lipreading so much of my life
MSmits: if i dont see a face I struggle a lot
TootiFlooti: when the challenge is over I can continue to work on the bot here ? I have no way of testing my bot on my own.
Astrobytes: Ah right. Yes, I can understand that.
MSmits: my loss is about 55 dB
MSmits: not too bad, but just enough to cause problems
jacek: eeyup, i have hearing problems too or rather understanding speech. i watch english tv shows with subtitles
Astrobytes: I have really bad tinnitus these days
MSmits: oh thats worse, I like the quiet that comes with bad hearing
reCurse: Anyone knows how to fix markdown pasted in forum not working in preview?
Wontonimo: yeah, i have tinnitus also.
MSmits: no idea reCurse sorry
Astrobytes: Really bad sometimes. Doc is investigating potential Ménière's as I've suffered weird vertigo episodes and such too :/
MSmits: when i wrote something big i usually used tech.io, then linked it
Astrobytes: No idea reCurse
Astrobytes: Didn't see your message TootiFlooti, sorry. The challenge should be available as a playable game again tomorrow
Wontonimo: new evidence about tinnitus is that the recent loss at a frequency of hearing is missed by the brain and it hallucinates it. Same happens to your other senses if you block them for many many hours
reCurse: That's the weirdest thing
TootiFlooti: i really appreciate it. yall have a lovely day.
reCurse: For those wondering, copy/pasting from VS code does not work
reCurse: Pasting into notepad, then copy/pasting that works
ZarthaxX: o.O
Astrobytes: lol wot
MSmits: hmm something to do with encoding?
reCurse: Not kidding
reCurse: No idea
Astrobytes: Interesting Wontonimo. The sensory deprivation thing defo checks out.
MSmits: sometimes if i used a file copied from Visual studio into cg bench it wouldnt work and if i made a new file and copied the code into it, it did work
Wontonimo: after i read about the sensory depr thing, my more at peace with it now. Still loud as f**k,but just doesn't really upset me anymore
Astrobytes: Wontonimo: Does this mean I can dose acid for medical reasons to restore my missing frequencies? :stuck_out_tongue_winking_eye:
Wontonimo: i think you need to do lots of experiments and video record your experience
MSmits: please include testing a tinfoil hat
Astrobytes: Noted! :P
Wontonimo: send me the live feed link
Wontonimo: also, i do find that holding my nose and also trying to force air out of it at the same time (like what you do when an airplane is landing to repressure you ears) helps a little.
Astrobytes: I had an 'episode' earlier, just sat here and tinnitus became reallyyyy loud, you get a panic response from your brain and typical adrenaline response. Weird dizzy feeling. I don't get the vertigo any more and that's the first one for ages.
MSmits: if the sound is coming from your brain, then that may not be a good idea
Astrobytes: Yes, the nose pinching works now and then.
MSmits: vertigo, is that when room spins?
Astrobytes: Yes.
MSmits: and it gets worse when you lie down?
Wontonimo: the best thing that works for me is to NOT focus on it, don't feed the hallucination
MSmits: had that 1 time in my life, that's really panic inducing if it never happened to you before
Astrobytes: I never do. But in that case where it's as I described it's not ignorable. Fills your ears.
Wontonimo: i hope you find something that works! I've only had something mildly like vertigo a couple times in my life.
MSmits: it just came up 1 day, took about 2-3 hrs, then went away
Astrobytes: Yes MSmits. Think of that but without the spin. Just everything else and the worst ear buzzing ever.
MSmits: weird
Astrobytes: Was your hearing affected at all MSmits?
MSmits: nah i was born with my handicap
MSmits: it never changed after that
Astrobytes: But at the time I mean
MSmits: oh, hmm, hard to say, i was alone at home, watching tv
MSmits: was too focused on the spinning
MSmits: its so weird
Astrobytes: It's a truly bizarre experience yeah.
jacek: sounds like hypnagogia before the sleep
Astrobytes: Nah that's good unless it's paralysis
Astrobytes: *sleep paralysis
Astrobytes: I like my lucid dreaming
jacek: im keen on lucid dreaming, so ¯\_(ツ)_/¯
Astrobytes: Yeah it's awesome. I do the best in early morning.
MSmits: a few times it happened to me that i snored or something, just before i fell asleep and it seemed an extremely loud noise that shook me up and got me wide awak
Counterbalance: Astrobytes ever had an oobe?
MSmits: wtf was that!!
MSmits: kinda funny
MSmits: oobe?
Astrobytes: Yes Counterbalance, but it wasn't from lucid dreaming . . . :zipper_mouth:
jacek: oO
MSmits: https://docs.microsoft.com/nl-nl/windows/configuration/wcd/wcd-oobe
Counterbalance: https://en.wikipedia.org/wiki/Out-of-body_experience
Astrobytes: Came pretty close when I was into meditation and stuff a few years back though. Amazing what you can do with your mind.
Counterbalance: yeah, it's incredible ;)
MSmits: how much weed you need for this?
Counterbalance: I have them very sporadically but as soon as I realize I'm dreaming I jolt awake
jacek: nah, its just more sophisticated lucid dream when you try to keep conscious while falling asleep. more realistic with more leaving the body sensations
Astrobytes: Which is achievable by numerous methods. Weed is not one of them (not in my experience at least!)
MSmits: you mean you havent tried weed, or you treed it with weed and it didnt work
jacek: weed supress REM state. could use that for REM rebound in next nights
MSmits: thats important you know
Astrobytes: Weed and I don't get along these days. It's ridiculously strong and bad for you.
MSmits: aha
MSmits: haven't ever tried it myself
MSmits: not even a cig
Astrobytes: Plants bred for THC content alone are the worst. It's a finely balanced herb in natural form.
snoyes: Talking of seeing things that aren't there, perhaps you'd like to see if https://www.codingame.com/contribute/view/657661704b0fdc034a635fa4aa2d0b61193f is within your scope
Wontonimo: legal here in Canada ... finally
MSmits: I bet they go together well with your tacos
Astrobytes: Some nice low-thc stuff would be cool, all I need
Wontonimo: weird, now that you mention it
Astrobytes: :D
Astrobytes: I was a massive stoner for years (functioning stoner) but the strength was just getting ridiculous
Counterbalance: just use less weed then
MSmits: just dilute it with some grass
Astrobytes: Tried that. The high is still very different.
MSmits: but smells like freshly mown lawn
Astrobytes: I prefer psychedelics.
Astrobytes: Phosgene MSmits?
Counterbalance: who doesn't :D
MSmits: stop making me google stuff
MSmits: dude, that's a biological weapon :P
MSmits: I said grasss!
Astrobytes: chemical weapon
MSmits: wait ok, now it all makes sense :P
MSmits: grass is biological though
MSmits: I'm so confused now
Astrobytes: well phosgene is an organic compound, used as a gas, that smells like grass
MSmits: aha
Wontonimo: GrAsS
MSmits: so when you put grass in your weed you get paranoid and think it's WW 1?
Wontonimo: that's why you connect your gas mask to your bong
MSmits: makes sense
Astrobytes: RoentgeniumArsenicSulfur Wontonimo?
jackthrow893: anyone selling PHP?
MSmits: wait, is this a drug jackthrow893?
MSmits: we dont sell drugs here
Astrobytes: (I took a liberty with the Gr/Rg but hey)
MSmits: wrong channel
KillaManDan: im selling http
KillaManDan: :smirk:
therealbeef: or swift
Wontonimo: lol Astrobytes
MSmits: jackthrow893 go here #TheGoodStuff
Illedan: reCurse, how many policy outputs did you have for each player?
reCurse: "two policies, one per player"?
jacek: hell write this in his pm
Illedan: he posted it
Astrobytes: Read it jacek
jacek: oO
Illedan: How many actions did each policy contain, is the better question I guess
reCurse: 1 per cell
Illedan: k, thx. Great PM.
reCurse: Thanks
struct: recurs e ever tried implementing NN for 3+ player game?
reCurse: No, if this was done as a multi-player game I'd probably be screwed
Astrobytes: muzeroCurse coming for Fireworks multi struct
reCurse: I still have no idea I'm comfortable with for multi-player
Astrobytes: Excellent, thorough PM man, good read.
MSmits: do not seed next to your tree is not a safe prune reCurse, sometimes this is useful
Notaboredguy: uhh
Notaboredguy: how do you convert float to integer in lua :))
MSmits: so not pruning too much is prolly good
Saelyos: Congrats reCurse, thanks for your PM :)
reCurse: Thanks, you're welcome :) Congrats on your own rank too, definitely deserved!
delineate: Nice/interesting write up, thanks recurse. do you have recommendations of the best ml frameworks, like pytorch or something else?
jacek: so this is convolution net after all
reCurse: I personally love pytorch
MSmits: good PM reCurse :)
reCurse: Reading tensorflow code makes my head hurt
MSmits: I like the fact that you put a short history before the PM
MSmits: good for people to know that it didnt come out of nothing
Astrobytes: Some people pay their dues and respects ;)
Wontonimo: yeah, the history is great. level setting
reCurse: For me it's mostly about being honest
Illedan: I love your failure in Silver :joy:
Astrobytes: Which is always a refreshing thing these days.
jacek: yeah, i think at this point the good 'RL pipeline' is more than NN
jacek: important*
MSmits: what is verification through disassembly ?
Astrobytes: literally about to type that!
reCurse: I verified the generated assembly was not stupid
reCurse: Making function calls where it shouldn`t
reCurse: etc
MSmits: I see, do you run into that sometimes coding bots for CG?
Astrobytes: right, godbolt time
reCurse: Definitely
MSmits: hmm
reCurse: Sometimes you want to code clean
reCurse: And it turns out it no longer wants to inline things for whatever reason
reCurse: For a hot loop like NN inference it's not acceptable
MSmits: is it safe to assume the CG compiler will do the same thing as the godbolt thingy?
reCurse: If you use the same version of g++ with -O0 most likely
Astrobytes: If you set it correctly yes
MSmits: I see, i should use that more often
dbdr: you should use a profiler
MSmits: well i sometimes use VS for that
Astrobytes: That too ofc
dbdr: that shows you the assembler
dbdr: then you only look at parts that are actually relevant
reCurse: vtune
Counterbalance: had to install vtune as vs profiler is broken
MSmits: never seen that, I just look at cpu time %
Astrobytes: vtune is what struct uses right?
reCurse: Unfortunately I refuse to switch to linux
dbdr: cpu time at the assembler instruction level
jacek: !
reCurse: So I profile with clang on windows and hope it's similar
struct: vs profiler somtimes is hard to tell whats hapening
reCurse: msvc is absolutely garbage with avx2
reCurse: For some reason
Astrobytes: MSmits: the memory view in the VS debugger can be quite handy
MSmits: oh, what does it do? I mean in my CG bots i usually already know how much memory i use because i reserve it
MSmits: does it show cache efficiency somehow?
struct: vtune does
struct: cache hits and such
MSmits: nice
Astrobytes: vtune is much more feature-rich
Counterbalance: I'm still wondering how you combined DUCT with the NN. Did you do DUCT and use the NN to calculate a score (win chance)?
Wontonimo: oh i know i know ...
Wontonimo: check out the AlphaZero architecture and pipeline
MSmits: gonna take off and see if i can apply some of those sleep experiments you guys were discussing earlier, gn!
Counterbalance: okay i'll rtfm ;)
Counterbalance: nn
Astrobytes: gn MSmits :D
Wontonimo: hey MSmits ,
MSmits: hey?
jacek: https://medium.com/applied-data-science/alphago-zero-explained-in-one-diagram-365f5abf67e0
Wontonimo: a trick that works for me for remembering dreams and sometimes realizing i'm dreaming
Astrobytes: hay - phosgene again
Wontonimo: is to start a task (even just drinking a glass of water) and
jacek: look at your hands or clocks - theyre werid in dreams
Wontonimo: then when you wake up immediately finish it
MSmits: this sounds like you fall asleep halfway through a glass of water and let the rest fall on your face Wontonimo
Wontonimo: you are asking you mind for immediately continuity before and after waking up ... which means not forgetting
struct: Anyone has any articles on duct mcts?
Astrobytes: That's how Wontonimo sleeps. Covered in tacos and water.
reCurse: I posted the paper struct
MSmits: apparently
struct: thanks ill check
MSmits: anyways thanks for the... advice Wontonimo , gn now :)
Astrobytes: https://dke.maastrichtuniversity.nl/m.winands/documents/sm-tron-bnaic2013.pdf
Wontonimo: could be a rubik's cube
Wontonimo: have fun!
Wontonimo: i used to have a water bed, so not far from the truth
Astrobytes: What is it about programmers and water beds.
Wontonimo: can you even buy those things anymore?
Astrobytes: Probably in some modern form
struct: thanks ill try to understand it when my brain recovered
Astrobytes: Very peculiar things they were
Chainman: what does this error mean? File "<stdin>", line 2
0 3 1 2 3 4 5 6 ^
SyntaxError: invalid syntax
Chainman: When I"m trying to look at the logs with the referee
Chainman: in web app
Chainman: oh do I Need to use Eclipse or intellij?
Chainman: https://www.codingame.com/playgrounds/25775/codingame-sdk-documentation/create-a-multiplayer-game
Notaboredguy: can you send the code
Chainman: I know the bot program works locally
Chainman: I mean it worked in the game
Chainman: not locally
Chainman: I'm running this command "java -jar ~/github-repo/AIGame/spring-2021.jar -p1 python3 ~/github-repo/AIGame/heuristics.py -p2 python3 ~/github-repo/AIGame/heuristics2.py -l ~/github-repo/AIGame/logs/game1.json -s -d seed=-92039809419061936"
Counterbalance: add quotes: -p1 "python3 ..../heuristics.py"
Counterbalance: -p1 and -p2 take 1 argument, the program, which should be "python yourfile.py"; instead, it just runs python without a script which then executes the referee input 0 3 1 etc as a script. Make sense?
Zenoscave: Is it not available in multi?
Zenoscave: the last contest i mean
Chainman: tomorrow they said
Zenoscave: got it
Astrobytes: pewpewpew
Zenoscave: pewpewpew
Astrobytes: where did you finish in the contest zeno?
CamTheHelpDesk: anyone else having problems where they're not getting achievements?
Astrobytes: Should be good by tomorrow at some point
Zenoscave: 201st :/
CamTheHelpDesk: will we get achievements we've earned but that didn't show up?
Astrobytes: Yes. Most likely. To which achievements do you refer, specifically?
Astrobytes: Zenoscave: better than me :P
Zenoscave: I had almost the same bot as euler. just different eval weights and no decay factor on sun
Zenoscave: Eval scoring was huge in this game
Astrobytes: decay factor seemed to be helpful for a few
Zenoscave: I should have thought of how to code it but had a block until this morning
Zenoscave: Was recalcing base score each sim rather than doing additive on move changes
Astrobytes: I gave up after the server issues on Saturday, lost all motivation
Astrobytes: ouch
Zenoscave: Just one more day and I could have probably had top 100. or at least top 200 ;)
CamTheHelpDesk: > to which achievements do you refer, specifically?
MARS LANDER - EPISODE 2 and SHADOWS OF THE KNIGHT - EPISODE 1
CamTheHelpDesk: got 100% on both
Astrobytes: And which achievement is not showing up? You didn't get the XP for it?
Astrobytes: Zenoscave: "Just one more day" - literally all contests every for anyone :D
Zenoscave: lol true enough
Astrobytes: *Ever for anyone
Zenoscave: for everyone would work as well ;)
Astrobytes: everyone I was just coming with yeah
Astrobytes: I'm tired, lemme be :P
CamTheHelpDesk: > And which achievement is not showing up?
Neither achievement is showing up. SS: https://cam.is-ne.at/c0QyK5.png
CamTheHelpDesk: it's like that for both
Zenoscave: I'm not singing words of wisdom. I will not let it be
Astrobytes: :rofl:
Astrobytes: CamTheHelpDesk: I can't even remember what those achievements are!
Astrobytes: Anyway, I gotta sleep. Gn all
CamTheHelpDesk: sleep well
Chainman: gn
Chainman: ahhhhh "python3: can't open file '/home/therealchainman/github-repo/SpringChallenge2021-referee/~/github-repo/AIGame/heuristics2.py': [Errno 2] No such file or directory"
Chainman: idk why I can't get the referee to work
Chainman: anybody can help me with running springchallenge 2021 on intellij?
Chainman: This doesn't seem to be up to date with intellij https://www.codingame.com/playgrounds/25775/codingame-sdk-documentation/create-a-multiplayer-game
Smelty: o.O
Chainman: Import Project > Select game-tictactoe > Import project from external model > Maven
Smelty: hm
Chainman: this part doesn't make sense
Chainman: I don't have an option to do that with maven
Smelty: idk
Chainman: yeah same
Smelty: "starting in null"
xMistySenpai: Think I may have found a bug in crystal rush
xMistySenpai: 3rd arena match my script is played in, ends on round 168 suddenly, score 72 to 64 and he wins?
xMistySenpai: either, a bug, or my script is really taking over 50ms to output next set of commands
xMistySenpai: nvm all fixed, derp me
Smelty: oh?
Smelty: well in the future i guess just output the time it took in error stream so you can tell
xMistySenpai: well, it'd cut out by then and the time could take a variable length
Smelty: hmm yea
CamTheHelpDesk: anyone know precisely what time rankings are recalculated?
struct: Its around this time
CamTheHelpDesk: hmm ok
CamTheHelpDesk: is there a server restart or smth
struct: nah
Wontonimo: i'm very excited to see my new ranking ... i'm hoping for 625th
CamTheHelpDesk: quick question for all you mods: are you volunteers or codingame staff members?
struct: volunteers
CamTheHelpDesk: cool
CamTheHelpDesk: good luck Wontonimo!
Wontonimo: thanks
struct: I have no idea how much I will climb
struct: I probably will get like 9k points from the contest
struct: and then 4.5k+ from the multi when it comes
reCurse: Hope it answers your questions AntiSquid
Wontonimo: yeah, that sounds about right
CamTheHelpDesk: oh wow impressive stats reCurse
CamTheHelpDesk: congrats
reCurse: Thanks
CamTheHelpDesk: you seem familiar... did you win the competetion today?
Chainman: why server restart?
reCurse: Yes
Chainman: did anybody here get the spring challenge referee work in web app?
Wontonimo: ??
Chainman: tororo
Chainman: totoro I mena
Chainman: did you Wontonimo?
Project-Magenta: ??
Counterbalance: Chainman yes - you have to copy the fiiles in src/main/resources/view/assets to a new directory src/main/resources/view/assets/assets/, then rebuild
Chainman: oh
Chainman: "java: package com.google.inject does not exist" this is the error
Chainman: but there are a lot of error when I try run I think.
Counterbalance: are you running it in an IDE?
Chainman: intellij is what I'm trying now
Counterbalance: hm.. for eclipse you could run mvn eclipse:eclipse and then import the project.. for intellij, idk.. if it has a maven plugin or something you could import it as a maven project?
Wontonimo: i stepped away Chainman. I didn't try
Counterbalance: https://www.jetbrains.com/help/idea/maven-support.html#maven_import_project_start
Chainman: what about without an ide?
Chainman: I was trying that earlier
Counterbalance: mvn package
Chainman: okay but I was getting a weird error there as well
Counterbalance: but you'll need one of the forks that offers the commandline interface
Chainman: https://github.com/LSmith-Zenoscave/SpringChallenge2021
Chainman: ?
Chainman: I'm using that
Counterbalance: yes that one will work
Counterbalance: are you running java 15 or something?
Counterbalance: what error? some reflection error?
Chainman: java 1.8
Chainman: so I use the command line for p1 and p2
Chainman: and it seems to work I check the logs game1.json files and it shows outputs
Chainman: how do you see the replay in web app with cli?
Counterbalance: run that command with -s
Counterbalance: then open browser on url http://localhost:8888
Chainman: huh
Chainman: that swaps player position I think
Counterbalance: only in brutaltester
Counterbalance: in referee commandline it means 'start server'
Chainman: oh I'm using brutaltester I guess
Chainman: not sure about referee cli
Counterbalance: you can't view the replays from the logs, unfortunately. You'll have to run the game again with the -s and specifying a seed to view that replay..
Chainman: I don't see any docs on cli for referee
Counterbalance: just run it without arguments, it shows help
Counterbalance: java -jar spring...jar
Chainman: ooooh thanks, it finally worked
Counterbalance: nice!
Chainman: I see I just did java -jar target/spring-2021.jar -h
Chainman: to see the commands for it haha
Chainman: I realized whoever made it added the commandlineinterface class to the referee so it had some commands
Chainman: I could see them from source code of referee as well., thanks Counterbalance
Counterbalance: np
Chainman: wait the graphics are messed up though? it doesn't have the trees.
Chainman: :(
Counterbalance: yeah that's what the copy resources thingy above was for
Smelty: o.O
Smelty: oof
Counterbalance: got it working?
Xwtek: iid|id
Chainman: oh, got distracted with something
Chainman: I think I did the copy resources, let me check again
Chainman: cause yeah the graphics are all weird
Chainman: I did that Counterbalance but it's even worse, just black screen almost
miszu: for bitboarding a board of 64 squares, would it be wise to use __int64_t?
reCurse: uint64_t
miszu: thank you!
Wontonimo: I see CP has been awarded. Cool, new ranks!
Chainman: what's cp?
MoMaT: coding points?
samcmullin: I'm a noob, can somebody explain how to read this constraint? 2<=num_bounds<=1000 ?
samcmullin: just started using these types of sites :\
MoMaT: like in normal mathematical expression?
MoMaT: number between 2 and 1000, inclusive
samcmullin: i guess, like when i' coding my solution whats that mean? no number can go number 2 or lower? and no number can be higher than 1000?
samcmullin: so it has to be between 2 and 1000?
MoMaT: usually its about the expected input, so there are no surprises.
ZarthaxX: Wontonimo nice rank :O
ZarthaxX: almost 666 :P
Wontonimo: yeah, i'm reduced to player CoC to get to 666 lol
Wontonimo: watcha doing at this late hour after a competition ZarthaxX?
ZarthaxX: im always chilling haha
ZarthaxX: not necessary on cg
Wontonimo: (i think i just messed up my CoC rank)
ZarthaxX: rn im watching some backend video because i have an interview tomorrow
ZarthaxX: :P
Wontonimo: Good luck!
ZarthaxX: the previous one to this one was in middle of contest
ZarthaxX: ty :D
ZarthaxX: i want to do multis tho
ZarthaxX: contests always leave me with that will lol
Wontonimo: multis? the bot programming?
ZarthaxX: right
ZarthaxX: also so close to top 100
ZarthaxX: i should just do it
ZarthaxX: :/
ZarthaxX: have been like this for years
Wontonimo: funny how that goes ... always chasing the next number. i have that also
ZarthaxX: wdym=?
ZarthaxX: rank? :P
Wontonimo: yeah, i have that want to chase the next rank
ZarthaxX: ah right
ZarthaxX: i want to get top 100 because that's guru
ZarthaxX: and i become orange in rank haha
ZarthaxX: just to match everything
Wontonimo: nice
Wontonimo: the motivation is colour, i respect that
ZarthaxX: nah haha
ZarthaxX: i feel like its about time for me to be higher
ZarthaxX: :P
Wontonimo: i can just imagine that coming up in your interview. "So tell me some of your accomplishments" "I became orange on CG"
ZarthaxX: anyway when multi comes out i will prob get it automatically
ZarthaxX: exactlyyy
ZarthaxX: *just in time*
ZarthaxX: *oh man hired!*
Wontonimo: yeah
Wontonimo: btw, do you ever bring up CG in interviews?
ZarthaxX: i have
ZarthaxX: when it's possible to
ZarthaxX: i jsut comment hey its a cool platform
ZarthaxX: great games
ZarthaxX: i mention my avatar if they want to contact me
ZarthaxX: lol
ZarthaxX: i dont flex obv
Wontonimo: but why not, if you can't flex in an interview then when can you?
ZarthaxX: it wouldnt sound humble
Wontonimo: maybe culture difference in the interview.
ZarthaxX: i guess
ZarthaxX: its my first try at a job
ZarthaxX: im not sooo experienced
ZarthaxX: lol
Wontonimo: oh, okay, i get you. I would totally talk up how much effort you put in, how dedicated you've been over the years, what very challenging problems there are
Wontonimo: and not mention the word "game" or "cool"
ZarthaxX: mmhm
ZarthaxX: i see
ZarthaxX: maybe i will tomorrow
ZarthaxX: it sgonna be an hour with technical people
ZarthaxX: so i can show my motivation for learning
ZarthaxX: :P
Wontonimo: dude, you have kicked ass. Well, you kicked my ass
ZarthaxX: "i kicked wonto's ass!"
ZarthaxX: i kicked some
ZarthaxX: but it's average for my rank/lvl i guess
ZarthaxX: could be way better
Wontonimo: but your rank/lvl isn't average.
Wontonimo: anyway ... what's the postion? full stack or something?
ZarthaxX: i meant that i feel like i should be way higher given my global rank
ZarthaxX: but i gotta value myself more i guess
ZarthaxX: i tend to feel im bad at everything
ZarthaxX: it's backend
ZarthaxX: with java/go
ZarthaxX: it's 2 months of an IT Bootcamp where they teach us and then we enter some area within the company to work seriously
ZarthaxX: :)
Wontonimo: dude, I'm here eating humble pie. I've got 26 years of professional experience in coding, been coding since i was 8, and young guys like you are kicking my but. Be proud, at least to make me feel better
ZarthaxX: you gotta admit tho that this is a different skill than normal work
ZarthaxX: really different
ZarthaxX: but thanks for that, i will :)
Wontonimo: backend and CG competition achievement is a great fit. Backend is all about optimization, moving data, reversing stuff
ZarthaxX: i just feel that it's irrelevant to show off on an interview, but i DO actually include it on cv
ZarthaxX: lik "hey this is my rank globallly, 1st in argentina, best rank ever 28 out of 2500"
ZarthaxX: smth like that
ZarthaxX: yeaahhh i like backend because of that
ZarthaxX: like the algorithmic part of it :)
ZarthaxX: thanks for the support wontooo <3
Wontonimo: first interviews?
ZarthaxX: with this company or ever
Wontonimo: if you think of interviewing like dating, it will go a lot better. A lot of people who go into interviews like it's this formal thing and they act all stiff and wait for things to happen. If instead you think of it as a date it goes a lot better. On a date you are trying to be yourself, but you also have to get to know him/her. You ask about that picture on his/her desk, make eye contact, try to slip in a funny joke when appropriate
Wontonimo: ah ... sorry for the unsolicited advice
ZarthaxX: hahaha
ZarthaxX: the last part was funny
ZarthaxX: its ok thanks for the help
Wontonimo: have you done any NN bots on here?
ZarthaxX: i had an interview once when i got into a school as a teacher, but that was a meme
ZarthaxX: and then i had 3 interviews with a security company
ZarthaxX: they said they were very happy with me, i even metnioned codingame to the last dude and he really cared of how this workedl ol
ZarthaxX: but the chat with those guys was super smooth and cool
ZarthaxX: this is the first interview related to backend, that's the main diffrence
ZarthaxX: to programming itself tbh, because security is not directly programming
Wontonimo: some ppl are good at giving interviews and some are just azz
ZarthaxX: and no, i havent done NN
ZarthaxX: havent messed with ML ever
ZarthaxX: im scared
ZarthaxX: but i want to lol
ZarthaxX: haha
ZarthaxX: the thing is, i was calm back then because i didnt care of that job
ZarthaxX: i just tried but had 0 experience in security and they were not looking for ajunior
Wontonimo: funny story, i do NN and ML at work, i'm actually the lead and yet I haven't applied it here. wtf up with that eh?
ZarthaxX: but in this one iREALLY want to get in
ZarthaxX: so it puts extra pressure
ZarthaxX: i know, you told meyesterday haha
ZarthaxX: it's ironic actually :D
Wontonimo: that's a tough spot
ZarthaxX: i guess you will
ZarthaxX: i will give you one year
ZarthaxX: you will be smashing
Wontonimo: (geez, these last couple days have been a blur. sorry for repeating myself)
ZarthaxX: its ok
ZarthaxX: one loses notion of time while in a contest
Wontonimo: i think of myself as good at interviewing. I've changed jobs about 30 times in 26 years, and usually with 0 break inbetween. But even still, getting a job has quite a but of random chance to it that is completely outside of your control
Wontonimo: someone else may also apply at the same time with +5 yrs experience with all buzz words checked off.
Wontonimo: or they may have a budget cut right after interviewing and not be able to hire anyone
ZarthaxX: oh god 30 times??
ZarthaxX: thats more times than years working
Wontonimo: yeah, about 8 months is my 'usual' length of employment
Wontonimo: i get bored
ZarthaxX: and that's what scares me too, a better candidate showing up haha
ZarthaxX: luckily on this one juniors have a big chance
ZarthaxX: the requisite is to have <=3 years of software dev
ZarthaxX: like, work soft dev
ZarthaxX: 8 months damn, you know, i also fear getting bored
ZarthaxX: it gets annoying to change jobs all the time tho, right
Wontonimo: that's really cool. is there a gov program in Argentina that supports employers in this way or somthing
Wontonimo: no, i really like changing jobs.
ZarthaxX: not that i know of
ZarthaxX: thing is this company is actually doubling their employers size
Wontonimo: you see a lot of new ways of doing this, and can bring your previous experience to the table
ZarthaxX: 16k -> 32k
Wontonimo: oh, that's a lot of employees
ZarthaxX: so they have this IT Bootcamp program where they are recruiting a lot of people
ZarthaxX: i know of many from my uni that have got into it through this program
ZarthaxX: yeah, its a mix of programmers and other kind of jobs obv
ZarthaxX: but i guess a big proportion is of programmers
ZarthaxX: its an amazing oportunity, great company
Wontonimo: i remember my boss in 1998 saying that after the Y2K bugs are fixed that programmers are going to all be out of jobs
Wontonimo: and now there are bootcamps to help as many people into the field as possible to the endless work
ZarthaxX: what is that?
ZarthaxX: luckily haha
Wontonimo: https://en.wikipedia.org/wiki/Year_2000_problem
ZarthaxX: ohhh okey
ZarthaxX: that one was in a simpson's chapter
ZarthaxX: lol
Wontonimo: on Dec 31 1999 the next day was going to be Jan 1 1900
Wontonimo: it was a huge deal. Seriously huge. Power plants were going to stop working.
ZarthaxX: i havent read how it was solved
Wontonimo: I remember a live news coverage of a power plant in the US saying they have solved their issue and to prove it they are going to turn their computer clocks forward 1 year. It shut down their grid for a few days
Wontonimo: we solved it line by line, program by program
ZarthaxX: o.o
ZarthaxX: holy f
Wontonimo: basically, all other work stopped for about 2 years prior
ZarthaxX: ah but back then there was so much embedded systems going on right
ZarthaxX: it was easier
ZarthaxX: ok 2 years nvm :
ZarthaxX: D
Wontonimo: some companies just said f-it, we are just going to turn back the clocks of our computers every night 1 day and stay in 1999
Wontonimo: i kid you not
ZarthaxX: doing that every day sounds so shit
Wontonimo: fun times. lots of doomsdayers prepared for the end of civilization
ZarthaxX: and i was just a baby back then
ZarthaxX: little did i know
ZarthaxX: i mean it would be a disaster rn
ZarthaxX: back then it would have been, but not as much