Chat:World/2021-05-14
UndercoverToad: i have a major bug in my move generator but when I fix it, scoring falls apart and all hell breaks loose :sob:
UndercoverToad: I don't generate SEED after GROW from size 0 to 1
ZarthaxX: you beated me anyway
ZarthaxX: :(
UndercoverToad: beated?
NinjaDoggy: @toad
NinjaDoggy: don't worry it's not a bug it's a feature :)
UndercoverToad: oh, a doggy is near me
NinjaDoggy: i tell my bot not to generate seed from 1 cost
NinjaDoggy: oh i was like "i'm above toady :D "
UndercoverToad: getting in line before legend, aren't we ;)
NinjaDoggy: then i realized u just submitted :(
dbdr: nice unintentional pruning, UndercoverToad :D
NinjaDoggy: but yea i bought my ticket for the legend train :)
UndercoverToad: i was 13th when I woke up
NinjaDoggy: yeh u were around there the whole time
NinjaDoggy: u know what pushed my bot from ~50 - 100 to top 20?
NinjaDoggy: don't complete until day 12 :)
dbdr: just in line to be below the boss at opening ;)
NinjaDoggy: :( top 20 is legend :(
NinjaDoggy: don't jinx me :(
dbdr: that was for the toad, you'll be fine NinjaDoggy ;)
NinjaDoggy: ahhh thanks :D
dbdr: even if you're below him. the gold boss moves in mysterious ways
Wontonimo: what's the "usual" cut off for legend? For Gold they did about 635. Has legend been real small in past competitions?
dbdr: 15-20
Wontonimo: *sigh*
Wontonimo: that's what i get for dragging my feet the first 3 days of the competition and taking shortcuts in my sim
dbdr: legend has no value if it's too big. it's an achievement to get in
Wontonimo: once legend opens, is there a gold boss that you can beat to get in, or is it locked?
dbdr: there's a boss
Wontonimo: thanks dbdr
dbdr: will be the target for many players
UndercoverToad: gold boss is nothing you want to be yourself. players will optimize their strategies against you
UndercoverToad: vlavv is probably a good candidate if legend would open right now
UndercoverToad: not c++ and in the right range
NinjaDoggy: why does not C++ matter?
UndercoverToad: i don't know. I just rarely see a C++ boss
UndercoverToad: what matters is the thinking time though
UndercoverToad: they want a fast boss, as it will get lots of matches
UndercoverToad: those C++ bots tend to be search-heavy
UndercoverToad: and the typescipt guy submitted some bogus I think
UndercoverToad: was higher before
NinjaDoggy: maybe bots have improved that much :P
UndercoverToad: he's next to my C# competitor around rank 30
UndercoverToad: that one hasn't submitted for a while and was in a similar range yesterday
UndercoverToad: and i think i could locate the source of the terrible smell in my room
UndercoverToad: it's coming out of the roof. i guess a mouse just died there and will smell in all eternity :(
ZarthaxX: sheez
ZarthaxX: nasty toad
dbdr: yeah, perl boss would be fun
ZarthaxX: plz dont submit you hurt my feelings and score too :rofl:
dbdr: with a non-search bot, there is a bigger chance of a cheese though. but probably not in this game
NinjaDoggy: toad
NinjaDoggy: why are you so nice to me <3
NinjaDoggy: 5-0 thanks!
UndercoverToad: :/
ZarthaxX: lmao
ZarthaxX: sucking his score
UndercoverToad: i should just quit once i reach legend
UndercoverToad: i hate this game
UndercoverToad: i hate all contest games after a while
UndercoverToad: but i started hating this one early
Marchete: you wake up so early
UndercoverToad: the early toad catches the worm
UndercoverToad: and i'm frustrated
Marchete: the toad doesn't catch the mouse
Marchete: and you are frustated by that too
UndercoverToad: that's a problem. I can hear them running under the roof
ZarthaxX: why do you hate it and you are so high
ZarthaxX: damn toad
ZarthaxX: sexy toad
UndercoverToad: i'm dropping. i even fear a rank below top50 :scream:
ZarthaxX: what?
UndercoverToad: at the end of the contest of course
UndercoverToad: after a hard weeekend
UndercoverToad: but tomorrow is codejam day
UndercoverToad: I hate that as well. for the 2nd year in a row the CG contest happens during codejam round 2
CouscousAgha: is it fair when top 50 players re-submit and obviously win against random people in top 300 and just make them de-rank 5 spots
PatrickMcGinnisII: silver boss is pissing me off, but I haven't submitted in silver at all
UndercoverToad: that's just how trueskill works
UndercoverToad: it's designed for human players. who might get worse and lose skills
aangairbender: I lose to random people al lthe time xD
UndercoverToad: so if you win against a noob you may have lost some skill. just not enough to lose the game. conservative estimation
aangairbender: but eventually system puts me back to top50
PatrickMcGinnisII: ok, 41st in silver, might as well shoot myself in the foot
ZarthaxX: aangairbender resubmit
ZarthaxX: UndercoverToad good luck in codejam!
ZarthaxX: beat touris t
aangairbender: I am trying new approach where I eval actions instead of states, UndercoverToad have you tried such approach?
UndercoverToad: thank, i'm happy if i reach top 1000
ZarthaxX: t shirt :D
ZarthaxX: how is the design
UndercoverToad: didn't check
UndercoverToad: also top 1000 qualifies for round 3
CouscousAgha: my 3 last losses 2 of them were vs top 50 and top 64
UndercoverToad: i have a bit of such an approach in my current bot aangairbender
UndercoverToad: but want to get away from it
aangairbender: ZarthaxX resubmitted, lets see
CouscousAgha: made me descend 10 ranks for no reason lol
aangairbender: why you want to get away from it? It seems interesting for me
UndercoverToad: how do you even get matches against much higher ranked players CouscousAgha?
ZarthaxX: aangairbender oh shit i thought you wouldnt do it
CouscousAgha: I guess when they re submit their code
UndercoverToad: ah
ZarthaxX: oh top 1k qualifies :O
aangairbender: ZarthaxX actually I submitted my version before last, it was a bit stronger (60%wr again last one)
UndercoverToad: because that's carrying some score history and I only want to rate the outcome
aangairbender: at least it doesnt lose to random guys until ~rank 150
DarkLord__28: hiii
MADDY-1: Spring Challange is Nice
CouscousAgha: i got matched again vs a top 50 and descended 4 ranks again lol
CouscousAgha: im now below bots i mostly win against
CouscousAgha: (╯°□°)╯︵ ┻━┻
DCoderOP: happy Akshaya Trtitya
DarkLord__28: happy Akshya tritya sir
ZarthaxX: aangairbender oh ok
ZarthaxX: meanwhile im getting smaehd :(
UndercoverToad: that's what I thought when I submitted. but it was the other polar bear
ZarthaxX: e.e
ZarthaxX: im a bit higher thanh im
PatrickMcGinnisII: lost almost 2000 ranks in submit
PatrickMcGinnisII: er 200
PatrickMcGinnisII: only 1.5 pts difference, close game
PatrickMcGinnisII: gn,glhf
CouscousAgha: gonna go sleep now
Marchete: now?
CouscousAgha: hopefully this game will stop matching me vs people above 50
CouscousAgha: because this is unfair lol
Marchete: In morocco the sun is rising...
CouscousAgha: yes
Marchete: :D
CouscousAgha: it's 4:50am now
Marchete: good day? then
CouscousAgha: LOL
CouscousAgha: thank you
dbdr: CouscousAgha playing against top players happens to everyone, randomly, so it's fair
dbdr: in the worst case, resubmit ;)
padobranac: i need one more upvote for a challenge. Anyone care to check it out?https://www.codingame.com/contribute/view/6656a8357853e2d23c7dd53688f011ebe3ee
Smelty: sure!
Smelty: seems nice,upvoted
padobranac: thanks
UndercoverToad: another Caesar Cipher?
Maliamnon: 1 in silver rn :grimacing:
GareBearH: im looking for peers to work with
GareBearH: i know all the basics along with a few imports and im a quick learner
Ajaiy2: Which language?
Ajaiy2: Im C# and I know a bit of python
GareBearH: forgot to specify, sorry :sweat_smile:
Ajaiy2: Till the simple mathematical operations like trunc, ord, ceil
GareBearH: okay, and the built in functions too like if, print, input, yknow the really basic stuff
davilla: import horse
Ajaiy2: Yes, I know that and the ternary operators too
Marchete: Let's see how LAHC works
Marchete: on the game
Marchete: I like it because it's as simple as MC to code
Marchete: http://chat.codingame.com/pastebin/fc027593-50bf-47fb-ada3-e208cdbaff21
Marchete: like a 9 lines algo
Ajaiy2: I have a beam search of width 1 and it works nice
Marchete: width 1? :D
Thienu: isnt that equivalent to a depth 1 bfs
Ajaiy2: Well, I only choose the lowest index
NinjaDoggy: no it's equivalent to a greedy strategy
Ajaiy2: Yes
NinjaDoggy: outputting a random move is equivalent to 1 iterations MCTS :)
Notter: Is it hardcoding to write an array just to convert from cell id to coordinates?
NinjaDoggy: yes, but it's ok to hardcode
KCrown: I swear with each new submission Im dropping in rank
NinjaDoggy: on average resubmits will be lower in rank
NinjaDoggy: if you don't change your bot, but other bots are(on average) improving. Then resubmitting will drop ranks
KCrown: still not very encouraging
NinjaDoggy: just reassuring you that you're not going crazy ;)
KCrown: :P
KCrown: insanity
KCrown: I knew from the last 3 times I should have coded a sim
dbdr: gg kovi!
kovi: thx dbdr
kovi: found a major bug yesterday 50->top5
Ajaiy2: After few fixes, my code ends up with 12 fully grown trees
Ajaiy2: Which is shocking
KCrown: thats about the point where you notice this thing call nutrients ...
NinjaDoggy: Kovi nice!
Ajaiy2: mhm
NinjaDoggy: feels good when bug fixing doesn't make you go from top 50 to top 500 :)
KCrown: cause at that point ur tress is costing you more points to grow then to complete :P
NinjaDoggy: ok new bot beats old bot > 2:1 please don't drop
MADDY-1: i am new coder in codingame
Stormalix: welcome c:
Westicles: welcome MADDY-1
KiwiTae: there is a contest? wow
KiwiTae: o/
KiwiTae: MADDY-1 are you MK alt? :joy:
Ajaiy2: Just need a slight tweak to beat the silver boss
DamianS6: Well, yesterday evening I left my bot being sure I'd need to improve it to get to the gold (it was quite stable around silver 30-40) so I was quite surprised it got promoted and it's even not at the very bottom
DamianS6: As for my 1st challenge, quite stupid if/else bot of 110 python lines I have to say I'm even glad of it :upside_down:
Bernard_Lowe: Anyone else getting error code (#14): submitted code is too big.
Bernard_Lowe: error code (#314)***
Ajaiy2: How much lines?
jrke: did you made code more than of 100k chars?
Bernard_Lowe: lol no. Only 2,400 lines.
jrke: 100k chars not lines
Bernard_Lowe: if I try to put last battle into IDE, I get this error too.
jrke: then your code is more than 100k chars
jrke: open any code golf puzzle
jrke: and see the code size
Bernard_Lowe: ok, I've never done code golf. I should be able to put last battle history into ide, it was working earlier.
Marchete: MADDY-1 is hiding his bot
raxkin: good morning!
dbdr: hey Marchete! are you hiding too? ;)
Marchete: I wish
Illedan: No NN for this Marchete?
Marchete: nope
Marchete: it seems hard to NNize
Illedan: I have ideas, but no time
Marchete: too much items going on
Marchete: yeah I haven't time with week
kovi: welcome back illedan
Marchete: so just sim + crappy search + crappy eval
Marchete: as usual
dbdr: anyone has this issue with the local ref? https://snipboard.io/Q6Wrxs.jpg
Illedan: :D
Marchete: I needed 7 days for the simulation ...
Illedan: I will try to rewrite this weekend if I get some time inbetween life
Illedan: *rewrite the code
Marchete: yeah, you dropped a bit
Illedan: I didn't submit in 5 days though
Marchete: you can do it
Illedan: Legend should be fine I guess
Marchete: beat the toad in C# :D
Illedan: Ofc
Illedan: No sleep until toad is beaten
Marchete: just remember him the mouse
kovi: ambitous goal
Illedan: anyway, work calls. cya in Legend
dbdr: watch out, gold boss will be in perl
Marchete: euler said that
Marchete: that CG prefers fast execution bosses
dbdr: and exotic languages
kovi: go and typescript still has a chance
solistice: Hi guys, I transformed most of my code to bitboards, but I am still still struggling with number of sims
solistice: is there someone who has some time today to go through what I did?
Marchete: sim or move generation?
Marchete: in my case movegen takes up to 74% of cpu time
solistice: you generate moves in sim, no?
Marchete: well, yes
Marchete: but it can be indepently done
Marchete: like if you have a hash
Marchete: maybe you can check it first
Marchete: to see if it's a duplicate gamestate
Marchete: so you won't movegen it
Al_ir_eza00: how i can see solve this clash of codes?
mybk: what do you mean ?
itzluku: i need 2ms to gen moves by set width
itzluku: xD
itzluku: up to 2ms*
Marchete: 2ms per state?
itzluku: ...
Marchete: ahhh python :D
Marchete: gotcha
itzluku: i dont have a bitboard
Marchete: movegen is slow because of bitboards
Marchete: in my case
itzluku: sometimes even 3ms
itzluku: wtf
Marchete: simulate 30 times and pray
itzluku: i still need to add sun, pointdiff and probability normalization for depth
Marchete: pointdiff?
NotSureWhyThisWorks: I am having trouble setting/clearing bits in the second half of a 64 bit integer with c++. Has anyone had success with this?
itzluku: yup pointdiff gets more important to the end
itzluku: if u have more points u win :D
Marchete: ensure you use (1ULL << shift)
Marchete: 1ULL is different from 1
NotSureWhyThisWorks: oh ok. so shift can still be greater than 32?
Marchete: in uint64_t yes
Marchete: but if you use 1 the compiler can use uint32_t
Marchete: for shifting, and you won't get the expected result
NotSureWhyThisWorks: ok awesome thanks I'll try it out
Marchete: :thumbsup:
Marchete: I'll be in chat instead of coding :D
NotSureWhyThisWorks: it works!
pmor: are you sure why?
NotSureWhyThisWorks: I spent probably an hour trying to figure that out and I couldn't before
NotSureWhyThisWorks: Nah I'm still not sure why it works lol
NotSureWhyThisWorks: but it works so who cares
pmor: :laughing:
Marchete: always ask on chat
Marchete: most of us had the same problems for hours
UndercoverToad: you mean you had?
Marchete: like me, at some point I tried to do some number % another
Marchete: and it seems that if any number was negative it goes reaaaally bad
UndercoverToad: try python, that has a modulo function which always returns a number >= 0
Marchete: int64_t is very different than uint64_t
Marchete: I learned the hard way when generating random numbers
NotSureWhyThisWorks: I saw some people using unsigned long long online but it didn't seem to work for me (because I didn't shift with 1ULL I guess)
Marchete: I never use these naming conventions sorry
Marchete: uint64_t for me
NotSureWhyThisWorks: well I can't be bothered typing unsigned long long all the time so uint64_t for me also
Marchete: you can also use UINT64_C()
Marchete: I don't use it
Marchete: for constants of uint64_t
NotSureWhyThisWorks: is it possible to calculate seed options with bitboards?
Marchete: it's the best option
Marchete: calc freeSpaces
Marchete: for each tree calc range
Marchete: range & freeSpace
Marchete: success
NotSureWhyThisWorks: ok that makes sense
NotSureWhyThisWorks: doing tree by tree means you have to loop through the bits in a bitboard right?
Marchete: yes
Marchete: most of use use either trailing zero count or leading zero count
Marchete: to get first or last bit fast
Marchete: trailing zero count = an operation on modern CPUs
NotSureWhyThisWorks: and then once you find first or last bit you iterate bit by bit from there for the next ones?
Marchete: not a custom made function
Marchete: use bit, remove it
Marchete: find the last bit again
UndercoverToad: the toad is back :frog:
NotSureWhyThisWorks: thanks Marchete
kovi: nice euler!
UndercoverToad: but you are hitting me hard kovi
UndercoverToad: you and bowwow are my only < 50%
UndercoverToad: too few games to be significant of course
Marchete: some new feature or just paramtuning?
Marchete: wow 3rd
UndercoverToad: i completely dumped my old scoring and started from scratch this morning
UndercoverToad: not completely but mostly at least
Marchete: nice
Marchete: good job
UndercoverToad: legend here I come \o/
Marchete: was it ever a question?
UndercoverToad: for me it was. now i'm growing confidence
Marchete: :unamused:
UndercoverToad: i was sure that i will make it. just not if my old bot would make it
UndercoverToad: Illedan 09:24AM Ofc No sleep until toad is beaten
UndercoverToad: this will be a long night
Marchete: weekend*
Marchete: also he didn't specify on what game
UndercoverToad: it's implied without him saying
Marchete: I'm trying to saving him from sleep deprivation
UndercoverToad: he didn't specify which toad either but we all know
Marchete: saying the toad will uncover you
ddreams: dbdr yes, the small graphics are included as a sprite, but apparently there's something that should split it up
ddreams: haven't looked into what's missing
dbf: UndercoverToad, nice improvement with last submit!
Nerchio: why are you undercover toad
allla: Hello World
UndercoverToad: thanks dbf, dumping some code was a good idea
UndercoverToad: Nerchio chat gets extremely laggy for moderators as every user on chat is visible
Nerchio: oh ok
Nerchio: i was wondering why they keep saying euler
Nerchio: when you were not in chat
Nerchio: i know, pretty slow thinking
Nerchio: :joy:
UndercoverToad: hover over my avatar
Nerchio: now i see
mybk: guys what are the reasons for timing out ?
UndercoverToad: taking more than 100ms for your turn
UndercoverToad: infinite loop,
UndercoverToad: crash
UndercoverToad: forgetting to print an action
mybk: I have a timeout and I don't think I have any of those reasons
mybk: the only think that I added is a lookup table for getPossibleMoves
UndercoverToad: any error messages?
Nerchio: depends on the language but sometimes its good to not to use full 100ms
mybk: no
Nerchio: i use 88 ms for my beam
mybk: I did try 10ms
mybk: and I have the same problem
mybk: "mybk has not provided an action in time. "
UndercoverToad: no crash report?
mybk: no
UndercoverToad: write the input directly to stderr
UndercoverToad: then test it offline with that input
Vaurtitoux: petition to set the max timeout to 5ms! NO MORE TREE ENJOYERS!
mybk: okay thanks I will try that
UndercoverToad: even with 5ms it's possible to do a bit of search and CodinGame has problems with random timeouts that would affect all bots
UndercoverToad: the SDK even defines a minimum thinking time of 50ms per turn
Marchete: hiding time, euler?
mybk: UndercoverToad I have no problem in offline, so it's related to CG...
UndercoverToad: maybe the last submit was just a fluke Marchete, I haven't changed much
Marchete: :S
UndercoverToad: mybk do you have a replay of the timeout, maybe we have an idea what could cause it then
Nerchio: top20 is pretty brutal
mybk: https://www.codingame.com/share-replay/554944362
Marchete: that either means the game is assymetric or unreliable
UndercoverToad: i disabled a feature where i'm uncertain about. maybe it was good after all
ddreams: the game is certainly asymmetric
Marchete: it must be that
UndercoverToad: and wider beam
Marchete: HS P3 again
ddreams: mybk it's likely a crash
ddreams: "the only think that I added is a lookup table for getPossibleMoves "
ddreams: make sure you don't go outside the limits here
UndercoverToad: key not found is what I read here
UndercoverToad: but should give an error message in the web IDE at least
UndercoverToad: do you clear that lookup after each turn?
mybk: no
UndercoverToad: if not, you don't have the same state online and offline (testing only 1 turn)
ddreams: usually I don't get any crash report in c++
mybk: I am using java
mybk: HashMap in java nor limited
ddreams: how do you test it offline?
Nerchio: you can still do map.get(nonExistent).doWhatever()
Nerchio: boom
Nerchio: but you should get nullpointer then idk
mybk: I copied the whole game (24 days) given to me, past it into a file and I am reading from the file rather than from standard input
mybk: I am testing before a get a value, if the hash exist in the Map
mybk: no I did test the whole game
mybk: and in offline I added more time to force the problem to appear (1000 ms)
akagami101: op
kovi: new candidate VB.NET
UndercoverToad: that's a resubmit of my #3 bot :/
UndercoverToad: not even top10 this time
MSmits: morning
UndercoverToad: lunchtime, see you
kovi: randomness 2-7 for me hello MSmits
MSmits: I went to sleep at 4 am, then woke up at 9 am because of package delivery. Then couldnt sleep again because of contest ideas
Astrobytes: morning!
MSmits: now rank 116 though :)
Astrobytes: grats!
MSmits: thanks :)
kovi: nice
aCat: close MSmits
aCat: Im #121 now ;p
MSmits: impossible, i am 121 now
MSmits: now 128
MSmits: dropping :P
jrke: so finally MS got an good eval
jrke: but i didn't lol
MSmits: I am really stupid this contest. Earlier I spent an hour or two puzzled at brutaltester, until I realized I read the columns for p1 and p2 as wr, instead of rows
MSmits: mmh this new thingy should give me 90% wr, why doesnt it work on leaderboard ?
Whatar: Do you got any problem running the game locally? I know get extremely low scores with my bot, 12 or so
Whatar: *did you get
jrke: because only you are not on leaderboard MS ;)
Codechaos: I'm using Java and have weird timeout issues. I save the current time right at the start of the while loop. Then again after the current day is transmitted. Sometimes just this takes more than 200ms so my actual game code doesn't even have a real chance to do much stuff.
MSmits: mmh no problems, but if you set nearly identical bots against eachother you will get mostly draws
RoboStac: Codechaos - you need to start timing after the first input (the server starts timing when it sends the input) or you'll include server processing time in your turn
Whatar: true, the problem is that at the end of the game I get exactly 12 points each bot
Whatar: if I simulate the game with the same bot against the same bot on the site I get 130-110 or similar scores
MSmits: Codechaos look at it like this: It's a while loop, so you'll go back to the beginning of it immediately after outputting. So you send output and then immediately starting the timer again, instead of waiting till server is done
MSmits: wait till at least one 1 is read (so first input_
MSmits: one line
MSmits: (wait RoboStac said with more detail)
MSmits: what... damn my typing sucks
MSmits: maybe because 5 hr sleep
MSmits: Whatar you must have a bug somewhere, how do you simulate your games?
MSmits: maybe confusing turns and days or something
Codechaos: That makes sense, thank you!
Whatar: I am not using cg-brutaltester yet, I am just running the refee with two instancees of very similar bots
Marchete: Smits vs his nemesis game
Whatar: the two bots run decently online
MSmits: this is actually a game i should be ok at, but i am messing up a lot, doing stupid sht
Whatar: but maybe there is a slightly difference in the local game that messes up with my spaghetti code
MSmits: yeah
Marchete: stupid as bugs or stupid as bad ideas
MSmits: bugs
Marchete: unit tests
MSmits: i did do more unit testing than i normally do, just no across the board
MSmits: some things i tested really well, it's the untested ones...
Marchete: untested like what?
MSmits: like nth element
Marchete: ahh
Marchete: ok
Whatar: the game starts with 2 trees even locally right? I am surfing the source code but I am not experienced with java
MSmits: well the referee is the referee
MSmits: so if you take it, you get the same game, supposedly
Marchete: I haven't used the referee this game
MSmits: scoring is included
Marchete: at all
Whatar: yeah in theory it should be exactly the same, input, outputs, everything
ddreams: depends on the league, Whatar
MSmits: at some point you do need to fit some params Marchete
ddreams: if you don't set the league, you start with tons of trees
Marchete: fit for openings?
Whatar: how do I set the league?
MSmits: for the game, eval parameters
ddreams: there's a -d option, I don't remember
Whatar: the -d should be for the seed
ddreams: I just removed the wood leagues from the code
Marchete: I'm too stupid for understanding it
ddreams: ok then :p
Nerchio: i agree with MSmits i can't imagine doing a search without some local mass games
Whatar: I can do that I guess
MSmits: Nerchio in some games it works ok and in this game it works ok too, aslong as your bot has maybe 2 or 3 params
MSmits: more than that and you need faster testing than a submit will give you
Nerchio: true i guess almost every search i make has many paramteres :D
MSmits: yeah
Nerchio: and well search is supported by other stuff
Nerchio: which can be changed too
MSmits: yup
ddreams: I never understood why when you tell people something they don't know, often they argue against it
MSmits: that makes no sense ddreams
ddreams: agreed
MSmits: they should reply: "knowledge accepted, starting integration..."
ddreams: exactly, looking forward to meet our AI overlords
MSmits: :)
Whatar: than you ddreams, there was a switch for game league and I just removed woods
ddreams: yw
MSmits: I remember doing kutulu contest and translating entire java referee to C# to write a sim
MSmits: never doing that again
Nerchio: :fearful:
ddreams: yeah, I was doing that for pacman for the collide resolution stuff
ddreams: not fun
MSmits: pro tip, dont use unsigned variables when you are subtracting things
davilla: unsigned arithmetic can still be checked
Nerchio: java fixes it for you there is no usigned types
Nerchio: :joy:
MSmits: that helps
alchemsti: "fixes"
MSmits: a lot of problems are prevented by not using C++ :)
ddreams: Nerchio what about "char"? :p
davilla: ddreams look up cognitive dissonance
davilla: to answer your earlier question
Nerchio: ddreams yeah.. the only one maybe from primitives but you can't use it with mathemathical operations easily
Nerchio: i mean you can but surprises await
ddreams: davilla yeah, might be an explanation
Nerchio: i hope i can make a lucky submit to legend in the evening
Nerchio: but yeah might be difficult
Chainman: good morning
MSmits: Nerchio it is possible that whomever is chosen as boss, has < 50% wr against you, even if they are ranked higher
MSmits: so spam submit will get you, and everyone above you, to legend
Nerchio: yeah atm breaking to top20 to 'secure' the spot seems difficult
MSmits: and in any case, you can refit your params, to beat it later
MSmits: it seems pretty certain you will hit legend before monda
jrke: or even luckily you can get pushed by spam submits of bots weaker than you
MSmits: that too
MSmits: i have gotten to legend before, while asleep
ddreams: Mr. Smits, the sleeping legend
jrke: MS i am still not having an eval still my bot is heuristic
MSmits: :grin:
MSmits: well tbh, if you dont solve every search bug you have, heuristic is gonna be better
MSmits: it's hard to get bots to do what you want in a search, for this game
jrke: yeah i tried many things but..
Nerchio: i had a search now i try to support it with heuristics and action override sometimes
MSmits: same
Nerchio: in case it sees too far into the future for things that dont exist ;)
Nerchio: "i will be rich if my enemy doesnt plant any trees"
Nerchio: thats kinda what my search sees sometimes
MSmits: makes sense
jrke: my current heuristic performs well in early game good seed planting then it gets bad
ddreams: not completing enough? completing too much? :p
MSmits: well the game becomes more unpredictable then and more flexiblity is needed
jrke: look at this i can't even make out what am i doing wrong
jrke: https://www.codingame.com/replay/555005373
actualCoderTrevor: jrke why are you waiting to seed if when seeding is free?
actualCoderTrevor: I can understand waiting till you have a level 2+ tree but you wait even longer than that
alchemsti: causes dormancy, want to seed further away, increases seeding cost
ddreams: too many level3 trees probably
actualCoderTrevor: I'm just looking at the first seed action
alchemsti: (but those don't seem to apply, except perhaps dormancy, sorry)
Noyotens: any typescript guy
actualCoderTrevor: jrke it happens again around turn 61 - you have no seeds on the board but wait until the next day to plant. Just an idea / observation on how you might be able to improve
Noyotens: j
jrke: thanks actualCoderTrevor
actualCoderTrevor: You're welcome hope it helps :)
ddreams: also jrke, having more than 6 level 3 trees is very expensive
lpellieer: hi guys, do you have any tips to get out of silver ? should i work on a specific algorithm or just stick to heuristics ?
Nerchio: well having more than 1 tree level 3 is already expensive and you are overpaying :D
ddreams: you're also growing to level 3 before cutting down another
dbf: lpellieer it is possible to reach gold without search algo
MSmits: possibly to reach legend. Depends on how good the heuristics are, right?
Nerchio: well you need simulation of the future turns but not search itself
Nerchio: imo
ddreams: the top 24 guy says he has no search/sim, just a move selector
MSmits: yeah you can do some loop over future days, but that's not really a search if you're not using some sort of tree of gamestates
alchemsti: Where did he say that?
Nerchio: ddreams who?
ddreams: typescript guy
alchemsti: I gotta say, I am impressed with that move selector
Marchete: what move selector?
alchemsti: I do think this problem favors time on eval, BUT sometimes there are some time tradeoffs that it seems search can help you make the correct choice
alchemsti: The one that's getting the person to spot #24
alchemsti: :D
jrke: but the thing if you have a size 3 tree not in shadow it gives you 3 sunpoints = 1 score(/3)
alchemsti: My move selector got my to spot 900
Marchete: ahhh
alchemsti: So now I'm trying to move over to a beam type search
alchemsti: which is why I'm dead last in my league :D
Marchete: I'm there too, don't worry
MSmits: is this the same bot that was 200 ranked early on Marchete?
MSmits: you said it was heuristic
MSmits: right?
Marchete: yes
MSmits: have you tried a search?
MSmits: i'm sure you have
Marchete: I finished the sim yesterday or the day before
MSmits: ah ok
Marchete: exact sim
Marchete: I'd throw some ugly search and eval
Marchete: and not much more
Marchete: not gonna lie, I'm terrible at this
MSmits: well different contests require different skill
Marchete: at any contest
MSmits: this one is particularly heavy on the "watch games and tweak eval"
lpellieer: you seem like you're doing alright lol
MSmits: it's relative lpellieer. There are other things on CG where Marchete is the best or at least top 5
jrke: MS your depth in BS is equal to what turns or day?
MSmits: it's 30 turns, but my bot takes an extra turn to determine if all states are waiting before moving on to the next day
MSmits: so i am guessing around 5 days average
aCat: yeah, got similar Smith
Marchete: I was targetting 8 turns, :S
MSmits: cool
Nerchio: that didnt work with my bot at all idk why
jrke: gtg bye
Nerchio: maybe because low width
Nerchio: like 700
MSmits: yeah, I have 2k, but there's so many reasons why high depth may not work
Marchete: but without enemy prediction a depth=30 must be unreliable
MSmits: some parts of it are yes
MSmits: but you are also making choices unrelated to opponent that have to be planned far into the future
MSmits: like tree placement, so you dont overshadow your own trees
MSmits: in hypersonic, 40 depth seemed best for me. But calculating to 70 depth gave the same result, it didnt hurt at all
Marchete: I did depth 12
MSmits: yeah, so it depends on a lot of things...
Marchete: 8 bomb time + some reserve for reacting
Marchete: but 30 on this game, with seeding in place...
MSmits: it's not actually 30
Marchete: I can't see it
Marchete: I'll wait for postmortems
xk9c: anyone has some tips how to improve my programming skills? im doing clash of code the whole time but i cant solve many only some
MSmits: Marchete it's better to look at it in terms of days
MSmits: in my case it's 4-5 days
MSmits: the 30 turn is based on the slowest state of each depth level
Marchete: maybe you are right
Marchete: depth of days instead of turns
MSmits: i mean i dont cut off the beam after days, thats a bad idea I think, but it's a better way to discuss depth
Marchete: after days?
Marchete: what do you mean?
MSmits: yeah, i mean calculate all combinations of actions of a whole day
MSmits: then beaming
MSmits: that's too much branching i think
MSmits: need to beam during day too
Marchete: I'm going to do the simples algo
Marchete: random stuff
Marchete: then mutate
Marchete: keep better
Marchete: simplest*
MSmits: that's simple for you
MSmits: because you know it well :)
Marchete: LAHC loop is 9 lines
Marchete: then some function to do random moves
Marchete: and some "mutators"
Marchete: I was thinking like adding a WAIT, replacing by WAIT, swap move n and n+1
Marchete: etc
Marchete: then some eval
Noyotens: any ts guys
MSmits: could work, beam search is not many lines either though, if you just consider the search
Marchete: about sungain0 -sungain1 -suncost0 + rollouttoEnd
MSmits: no teamspeak sorry
MSmits: we have discord
Marchete: I was also thinking about reusing my heuristic functions
Noyotens: ok :cry:
Marchete: to do "clever" selection at random
MSmits: i was kidding, i assumed you meant typescript... you were actually asking about teamspeak !?
Noyotens: no
MSmits: oh ok :P
MSmits: yes there's typescript submits
Noyotens: i have ques
MSmits: you can search language on leaderboard
MSmits: they migth not be online
Noyotens: https://www.codingame.com/share-replay/555025503
Noyotens: i want win plz help me
ddreams: did you try the true and tried general strategy to win?
ddreams: simple: git gud
MSmits: Noyotens frame 15, dont place seed next to your own tree, unless there arent many other options
Whatar: You get to many shadoiws from enemy trees I think
Whatar: and also what ddreams sayd is true
ddreams: euler seem to often place a seed right next to his own tree
Whatar: you also get shadows from you own trees
ddreams: can't figure out why, but he's winning
MSmits: not in early game i bet
MSmits: you mean mid/late game?
ddreams: early
MSmits: thats odd
MSmits: but his bot may just be superior in other ways
Noyotens: i want try new strategy to win
ddreams: round 5
alchemsti: If it's short enough it doesn't hurt, and it blocks the enemy
ddreams: https://www.codingame.com/replay/555029302
alchemsti: From planting a shade-thrower
ddreams: I'd expect him to plant at index 9
Nerchio: yeah some kind of seed optimization is what i want to try
Nerchio: my search does it well but maybe it can be done better
ddreams: not 11
MSmits: ddreams his only other option was 24 from that tree
Noyotens: how u cheek if the tree is inline or not
MSmits: and its on the edge
MSmits: oh and shaded
VizGhar: hey MSmits nice to see you :)
MSmits: so he has no options
MSmits: hi VizGhar!
alchemsti: I agree the seed at 11 looks odd
MSmits: yeah but where should he have dropped the seed?
ddreams: 24 looks nicer
VizGhar: been waiting for you whole week :) heading to legend?
ddreams: bbl lunch
MSmits: ddreams 24 is shaded by big tree
MSmits: it's 3 hexes away
MSmits: so there are no real options
MSmits: VizGhar not sure, i hope to make it before monday
MSmits: probably not before it opens unless a miracle happens
MSmits: best rank so far was 130
VizGhar: you mean during other contests?
MSmits: no, then it's 2. I mean this one
VizGhar: wonder how many players make it to legend during contests... any historical data?
MSmits: 70-120 i think
MSmits: well
MSmits: sometimes lower even i think
MSmits: maybe thats between 1 st.dev
MSmits: usually it opens at 10 or 15 contestants
Cjx_1: i had heard only as few as 15-20. Maybe thats just those who instantly get brought up?
Nerchio: i have a feeling this time theres going to be a lot of people
MSmits: then someone lower than the boss, happens to have a >50% wr and pushes a whole bunch to legend
Zandy156: isn't it based on the total number in gold at first?
Noyotens: https://www.codingame.com/share-replay/555036872
MSmits: hmm not sure, it's always quite low though
Noyotens: guys ur the best :cry:
MSmits: gj Noyotens
Noyotens: MSmits thank from the heart
MSmits: that's the best thank :)
Nerchio: its kinda disappointing to promote in leagues without fighting the boss haha
MSmits: yeah, it's quite satisfying to fight boss and win
Noyotens: i am coming to gold YAAAAAAAAY
MSmits: except when you fail and contest ends, then it's very frustrating
Noyotens: MSmits YEAH
Zandy156: what's your legend rate MSmits? do you try for most contests?
VizGhar: It's so awesome to see early game improve itself just by changing tree to have nodes that represents DAY instead of TURN
VizGhar: but I'm timeouting right now. since I always let whole layer of tree be expanded
VizGhar: which is obviously dumb
MSmits: Zandy156 so far every time i took a serious swipe at legend i got in there
MSmits: some contests i gave up after a few days though, time issues and such
MSmits: then it;s probably silver or something
MSmits: i dont smurf so i have some abysmal contest results in my list :)
MSmits: you can check in people's profile
VizGhar: what is smurfing btw?
MSmits: using a different account, to start the contest
MSmits: if you fail, dont participate with real account
VizGhar: ah... just so somebody cant see you being too low in some contest? that seems weird...
jrke: i don;t think someone smurfs
VizGhar: not smurfing can actualy result in dropping in overall laderboard right?
jrke: maybe rare
VizGhar: all moderators :D since their chat is frozen
MSmits: nope
MSmits: not smurfing wont drop your rank
MSmits: i mean smurfing
VizGhar: if you submit poor code then it does right?
MSmits: bad rank >= no rank
Michael_Howard: Yeah, smurfing drops your rank.
RoboStac: only your top 3 contests count for global ranking
VizGhar: oh really MSmits didn't know that
MSmits: that's no longer true is it RoboStac?
Michael_Howard: Even a low bronze would get you a few points.
MSmits: isn't it last 10 contests or something, with decay?
RoboStac: it is - if you check the profile only 3 have *'s on them
MSmits: ok, so out of the last 10 contests, it keeps your best 3 with decay?
RoboStac: the only change was decay was added so people who did well 5 years ago didn't stay top
MSmits: ahh ok
DomiKo: contest is worth max 10K - 500 * number of contest after that one
MSmits: so anyways, no reason to smurf, unless you're afraid to have a rank 900 in there between the 5's and 3's
Marchete: or bot hiding
MSmits: or that
RoboStac: it's not even last 10 - you can still have a really old contest as your best, but the decay makes it unlikely
MSmits: ah ok
MSmits: yeah i have old contests as my best for sure
MSmits: my results were crap last 2 years, mostly
RoboStac: your best 3 are spring2020, OOC and ice/fire
MSmits: oh, wow
MSmits: thats not old
MSmits: so my early top 10 results dont matter anymore :(
MSmits: i guess your win at code royale doesnt either
MSmits: bit sad
DomiKo: Xmas is worth 6.5K only
Marchete: 3 top1 from 3 years ago == 1 top1 this year
RoboStac: yeah, my top 3 are spring/utg/pikapcha
MSmits: ohh yeah the puzzle contest, you did great there
Marchete: wait do you have top3? :D
MSmits: top 3 contests, not top 3 ranked
Marchete: jk
MSmits: well ranked too :P
Marchete: you guys are getting paid meme
MSmits: huh
Marchete: https://www.youtube.com/watch?v=P2vODYm3cyI
Marchete: you all talk about top10, top3, legend
Marchete: I barely reach top 50 :D
DomiKo: :joy:
MSmits: ohh ok
MSmits: sorry about that :P
UndercoverToad: the global contest leaderboard is useless, I only care about the leaderboards for each individual contest
Zandy156: dang my 3 best were spring 2020 ooc and ice/fire as well
UndercoverToad: OoC, spring 2020, fall 2020 a 4th place at Ice and Fire doesn't matter anymore
MSmits: i sprinted ice and fire starting wednesday after grading exams. Not my highest rank, but proudes achievement :)
UndercoverToad: :D
UndercoverToad: i have a hard time imagining you coding in a rush
MSmits: yeah, it was an exception
MSmits: it helped that I kind of liked the game
Astrobytes: Post-mortem: Yeah I didn't have much time so I wrote my bot on the back of my hand whilst on the train home then telephoned my wife and dictated it to her as she typed it out. Then I was legend.
MSmits: with the chaining of actions and such
RoboStac: I did badly on ice and fire, didn't make legend :(
UndercoverToad: i still remember hashcode where you thought about bitboard encoding for a 4h contest
Astrobytes: Didn't you miss part of that one robo?
MSmits: did you really fail though? Wasnt lack of time robo?
RoboStac: I think I was away the last weekend, but I put some effort into trying to have a decent bot
UndercoverToad: a legend without robo doesn't feel like a real legend league
RoboStac: I've usually managed to get into legend as it opens
MSmits: UndercoverToad I am both slow and bad at cooperative coding, I liked watching you guys go at it though
UndercoverToad: you left kutulu early too and almost got top20
RoboStac: now I just need to pretend I left this one on wednesday and didn't just get stuck trying to improve it :(
MSmits: 10th out of 7k is like 3 out of 2k
UndercoverToad: even submit results feel random again
Marchete: maybe not smits
Marchete: multi with 100 people are damn hard at top10 too
UndercoverToad: there are many new users. but on average I think they are less skilled/trained than CG veterans
MSmits: no, but then it could be either better or worse
RoboStac: there are quite a few new names in the top20 though
MSmits: could also be we drew from a source of good players, it only needs to be a few
UndercoverToad: just not the CG way of thinking how to squeeze the bot logic in the very generous 100ms
UndercoverToad: some new names, yes. but not scaling linear to the increase of the total player count
MSmits: in any case it's not easy to compare your current achievement with a 7k contest to one with a 2k contest. I'd say rank 10 is still pretty nice :)
UndercoverToad: the Japanese section isn't new to contests, just relatively new on CG
UndercoverToad: ok, we can agree on that statement MSmits
struct: hi
MSmits: hi struct
RoboStac: hi
its.Arsh: hey, is there any in-built method in java to convert the hexdecimal to decimal?
resty-daze: parseInt("abc", 16) ?
UndercoverToad: a*16*16+b*16+c
UndercoverToad: a=10, b=11, c=12
UndercoverToad: a hexadecimal number
UndercoverToad: 0xabc
alchemsti: I know it's too early for a post-mortem
alchemsti: But I am somewhat disappointed by this contest (and/or with myself for this contest)
UndercoverToad: and i just wrote random stuff without reading anything but the last message
alchemsti: I guess when I hear of people's cool evals I may feel different
alchemsti: But currently it feels ... somehow arbitrary.
alchemsti: I think I'm just a bit frustrated with slow progress
kovi: i like global contest leaderboard as it is ...
UndercoverToad: arbitrary or arborary :thinking:
alchemsti: :D
Astrobytes: haha
Zandy156: Hey, how come we don't get to make our trees fight rock paper scissors style?
alchemsti: I guess it feels like to be successful with my eval form, I would have needed to tune a ton a factors (mostly around time decay)
Astrobytes: Trees don't fight.
alchemsti: THEY FIGHT FOR LIGHT!
Astrobytes: I suppose they gotta fight for the light to party.
Zandy156: but they don't fight, they sit there lol
Astrobytes: They play the slow game. Creeping.
UndercoverToad: my eval is just counting suns, avoiding to shadow myself and a reward for keeping trees and not selling them for quick points
UndercoverToad: whenever I try to make the eval more complicated, it gets worse
Marchete: keeping trees until some day*
Marchete: no?
UndercoverToad: just keeping
Marchete: ahh
UndercoverToad: and evaluate again the next day
UndercoverToad: the incentive to keep decreases over time
alchemsti: UndercoverToad interesting -- I'm fairly far along in a re-write, moving to beam search, where I'm just implementing the actual multi-day / beam part. My eval was like yours
ddreams: what's your incentive for cutting trees then?
VizGhar: those vectors are slow as hell
UndercoverToad: maybe i should make it dependent on the game score
Chainman: why is it that if you attempt an illegal move it ends your turn? I wish it didn't do that.
alchemsti: But SEEDing seemed so awful without a bit more of an eval (I know, I guess search will find which seeds grow well)
alchemsti: that now I'm spending time on that
alchemsti: Chainman -- otherwise you could do sneaky stalling techniques
Marchete: incentive on cutting can be to allow more cycles, seed->grow->etc
ddreams: Chainman you'd prefer a crash?
Marchete: cost management
Chainman: no, I'd prefer it to continue with my precomputed graph lol.
alchemsti: e.g. wait for your opponent to WAIT and then do 5 quick harvests
UndercoverToad: oh, i have a bonus for keeping trees that also a function of the number of trees of that size
alchemsti: but penalizes having too many, right?
UndercoverToad: not penalizing. just less rewarding
Marchete: yeah, an array for size[] bonus malus
UndercoverToad: and I get a reward (score points) for chopping
ddreams: UndercoverToad but what gives the incentive to actually cut trees?
ddreams: right
Marchete: too many trees of the same size => costly
ddreams: but why would your bot cut trees early?
ddreams: instead of waiting to the end
Chainman: Are you guys at top of the leaderboard, not using self-play to find the params?
Chainman: But still manually entering them?
Marchete: imagine your next turn the enemy will shadow your tree3
Marchete: maybe you prefer to cut it and start a new cycle
UndercoverToad: somehow offline testing didn't really help me this time
UndercoverToad: submit is my test
VizGhar: ddreams you might cut lvl3 tree if next 3 turns will be shadowed
Marchete: exactly
UndercoverToad: even got renamed to "test in arena"
VizGhar: by that time you can grow brand new tree :)
Marchete: shadowed and maybe that tree shadow others of your own trees
Marchete: let the eval decide
ddreams: well, I'm playing vs Euler often, and he's definitely cutting trees that does not get shadowed any time soon
Marchete: he probably doesn't know
actualCoderTrevor: I really wish I'd made an offline testing. Being able to replay the same game from both positions alone would help me out a lot. Right now it's hard to now if my bot's improved until I submit.
Marchete: he probably have a bunch of variables and weights
Marchete: and the best weights with more wins are kept
Zandy156: three reasons to cut a tree early, shade, too many large trees, bonus nutrients points
Zandy156: also maybe not enough places left to plant new trees
ddreams: do you intend to put your seed at 11 and not 24 here in round 5, UndercoverToad: https://www.codingame.com/replay/555029302
ddreams: just seems weird to shade yourself
ddreams: actualCoderTrevor you can do that with brutaltester, you don't need to code anything yourself
UndercoverToad: let me see
Marchete: Miyazaboss?
ddreams: oh, a gold boss
UndercoverToad: really?
actualCoderTrevor: Thanks ddreams I'll check that out
Marchete: https://www.codingame.com/share-replay/555075803
ddreams: MiyazaBoss
UndercoverToad: indeed
Marchete: quick, agent ID euler :D
UndercoverToad: a python gold boss
Marchete: weird
UndercoverToad: that must be low, there is no high python :(
Marchete: 33th
actualCoderTrevor: Oh did that boss just show up or am I just noticing it?
UndercoverToad: CG disappointing me agaoin
Marchete: maybe they are just testing
UndercoverToad: again
Marchete: damn elitists
UndercoverToad: let's stalk #fr
Astrobytes: :salt:
Marchete: let me in, let me iiiin!
dbdr: SophiaLegacy then?
ddreams: appears to be a big legend then
ddreams: I'm beating it and I'm 170
MSmits: oh, gold opened early
Marchete: they must be testing it
UndercoverToad: gold opened 2 days ago
MSmits: err i mean legend :p
Astrobytes: get some sleep ffs MSmits :P
dbdr: wait, why is that boss in my ide?
VizGhar: at least boss appeared
VizGhar: Those better than the Boss will be promoted to Legend League
VizGhar: its happening?
MSmits: no sleep till legend !
Marchete: why boss calc?
Marchete: not a direct promotion?
Chainman: Is legend open already?
Marchete: they want to make sure it's a good bot
MSmits: good idea
ddreams: I bet it's going to change
ddreams: this one is too easy
UndercoverToad: ddreams the game you shared is an IDE match. I can't see my error stream to tell you more about what I was thinking there. but cell 24 is in like with cell 1
ddreams: ah, right
UndercoverToad: and the self-shading on day 5 is on a seed => 0 sun gain in anyways
ddreams: that's even what msmits said, I just didn't understand it
MSmits: yeah, every option is shaded in some way
UndercoverToad: such a shady game
MSmits: very shady
ddreams: don't you guys be putting shade on this game
Marchete: that's tree
MSmits: moar puns
Marchete: I seed
Astrobytes: at least we got to the root of the issue
ddreams: can't spring puns on you on request
VizGhar: cut it off
Astrobytes: conversation seems to have branched off somewhat
ddreams: nah, this game is growing on me
Marchete: :sunny::evergreen_tree::new_moon::herb:
MSmits: growing weed under a tree?
Astrobytes: maybe fall contest will be ganja farming or something
UndercoverToad: boss at 186 right now
UndercoverToad: what are they testing?
Astrobytes: your patience?
RoboStac: should get higher, the bot it's copied from is #57
ddreams: see you all in legend :p
RoboStac: but even so thats a big legend
VizGhar: Even I feel like i can stand a chance
MSmits: gonna be 200-300 before monday
jke: how do you know who it was copied from?
dbdr: :scream:
RoboStac: debug messages are fairly distinctive
Clagus: :D
MSmits: and robo keeps tabs on everyone
AceTea: il est quelle place le bot gold ?
UndercoverToad: to #fr you go
UndercoverToad: VizGhar 02:33PM
Even I feel like i can stand a chance
but that's not the idea of legend, or at least it wasn't in the past
ddreams: the idea of legend is to keep VizGhar out
Astrobytes: Maybe it'll be renamed The Fun League
ddreams: that's not a nice thing to say, toad
ddreams: underhanded insult
VizGhar: don't worry ddreams, i didn't get it :D
dbdr: there's actually a boss in the lb?? :o
ddreams: yes, it's Bernard_Lowe
UndercoverToad: but you have to scroll a lot to find it
UndercoverToad: 141 at the moment
AceTea: under which name ?
AceTea: I really don'T see it in the leaderboard
RoboStac: just set leaderboard to show computing (hast to be the ide leaderboard)
dbdr: https://snipboard.io/YPSdbZ.jpg
UndercoverToad: even illedan's Sunday bot will make it
kovi: i like that pic
ddreams: gj kovi :)
Chainman: 436 ms to create graph with 61 nodes, I'm done lol
UndercoverToad: finished at 100
kovi: legend now?
struct: I really need to make an eval
dbdr: ???
struct: its stil the eval from testing
dbf: yes, promotion is started
struct: already?
struct: what
UndercoverToad: you'll probably drift without an eval struct
ddreams: 55 in legend so far
dbdr: I think it's by mistake again
ddreams: 70 :p
aCat: something is strange
Nerchio: wait what
Nerchio: o.O
ddreams: 95
UndercoverToad: didn't look like a mistake, that boss was computing for 10 minutes
MSmits: maybe they went for coffee
struct: (╯°□°)╯︵ ┻━┻
struct: I was expecting the promotion to be later
ZarthaxX: wtf early legend???
MSmits: same
struct: I wanted to improve eval before it
ZarthaxX: what is this
aCat: and ore cutoff
MSmits: ore?
aCat: *more
MSmits: wrong game
ZarthaxX: so 100 cut off
MSmits: oh ok
UndercoverToad: that was the easiest legend since CSB multiplayer
ZarthaxX: damnnn
ZarthaxX: is this a bug or true legend?
UndercoverToad: it's true after all, CG is getting more and move inclusive
dbdr: a bug I'd say
struct: from 20 on last contest to 100 on this
Chainman: It said legend on 05/16/2021 yesterday.
UndercoverToad: legend used to be an achievement
UndercoverToad: Chainman when did you open the tab?
UndercoverToad: 2 days ago?
aCat: damn, sadly i ddidnt have few more hs to code
Chainman: probably just 1-2 days
struct: ok
struct: Legend or delete
ZarthaxX: i thought the same UndercoverToad
struct: with this big of a league there is no excuse
ZarthaxX: i mean based on number of participants its ok to promote more people
ZarthaxX: encouaring that its possible
UndercoverToad: others reported wrong dates as well Chainman. and they all had the tab open for at least a day
struct: My issue is not the date but the hour
Chainman: oh
struct: usually is at 5-6pm
Zandy156: didn't last spring challenge stat with like 50 in legend?
struct: it started with 20
UndercoverToad: maybe we'll read a blog post after the contest, where happy users get quoted how they managed to beat the final boss
Nerchio: struct maybe they want to go home faster today :D
ZarthaxX: its friday mah bois
Astrobytes: lol Toad
Astrobytes: The Happy Happy Joy Joy League
Gabbek: Hello dear friends! :)
Gabbek: How's the day going?
ZarthaxX: excellent
ZarthaxX: UndercoverToad true that haha
Astrobytes: Hi Gabbek :wave:
Gabbek: Good day Astro!
UndercoverToad: it's going legendary
gmessier: euler so we should now have a SuperLegend league
MSmits: Mythic league
dbdr: ^
gmessier: Only for the small Gods circle
UndercoverToad: not going to happen, CG has a hard time putting anything above legend. was discussed for CSB already
MSmits: with bossW00t heading up legend league
dbdr: league -1
dbdr: legend is 0
UndercoverToad: dbdr when legend? :smirk:
dbdr: :P
UndercoverToad: you submitted at the wrong time
gmessier: So maybe it will be better to add on the other side and keep the old ratios
gmessier: The current Bronze is almost a Wood 1 :D
Gabbek: My first gold league in contest, so happy :D
dbf: congrats, Gabbek
Gabbek: thank you!
aCat: now go legend ;-)
Meatly_Wheatly: no
Meatly_Wheatly: stop
Nerchio: its probably possible to get legend with 200 lines of code
Chainman: 368 nodes in 910 ms for first turn hahah
no-cat: idk what going on
no-cat: i cant beat the first code
no-cat: i think im broke
no-cat: the practise
UndercoverToad: the bork beetle got you
no-cat: idk
Chainman: wow improved lots of time by going to iterative as opposed to recursion for creating my graph.
no-cat: the teacher did
Chainman: went from 400-500 -> 100 ms for same number nodes.
Chainman: but still too slow.
no-cat: what does that mean
Meatly_Wheatly: yea i know its probably the connective interface of the javascript and mc
no-cat: yea hthat what i thogt\
Meatly_Wheatly: this is all easy work tho
linjoehan: So how do I get to gold? NOTE: I'm still in wood
no-cat: i codeded minceratf on tortila it dintd worc
UndercoverToad: https://www.codingame.com/contests/ghost-in-the-cell/leaderboard ghost in the cell also had a huge legend league (223 players)
Meatly_Wheatly: i know im in 1st grade but this is easy
Nerchio: so this is not a bug with legend yeah?
no-cat: IM NO GOOD at THis
Meatly_Wheatly: my other friend is like 2 and he already in champin
Gabbek: well about 100-120 legend atm
UndercoverToad: unlikely, CG getting inclusive now and pleasing casual players
Gabbek: sounds about right
XHelp: can I somehow fetch the engine for java, so I can run my algo locally?
ZarthaxX: UndercoverToad but the time for legend is weird
ZarthaxX: has this happened before? mhm
Meatly_Wheatly: kick me plz this is borig
Astrobytes: Yeah, it has. Don't remember which contest
UndercoverToad: GitC was early legend too, Friday morning
ZarthaxX: also dbdr is there a gold boss?? i dont see any in your last battles
Meatly_Wheatly: kick me
Meatly_Wheatly: kickme
ZarthaxX: oh nvm then toad
Meatly_Wheatly: kickme
Meatly_Wheatly: kick me
Meatly_Wheatly: kick me
UndercoverToad: yesterday was a public holiday for France (or most of Europe for the matter)
ZarthaxX: ah
ZarthaxX: that may expplain it
reCurse: 100 legend :rofl:
UndercoverToad: i guess they are pulling a short day today
SamPlamondo: haa u guys suck i coded byraft
UndercoverToad: more work for you Astrobytes
Astrobytes: It's getting ridiculous
UndercoverToad: the spammers or legend?
Astrobytes: haha, both
ZarthaxX: is there a gold boss?
ZarthaxX: i dont see it on last battles from people
Gabbek: how many people used to enter legend in the past? (quite new to contests)
ZarthaxX: 20
ZarthaxX: at the start
reCurse: Like 10 at opening, 100 or so at end
reCurse: Now it's 100 at start...
ZarthaxX: :D
reCurse: Used to mean something
Gabbek: oh :O
ZarthaxX: meme now :(
Chainman: :nerd: Maybe I am legend now
reCurse: Wouldn't be surprised to see 350 legend at end
aCat: yeah seems... weird
UndercoverToad: ZarthaxX there's your boss replay https://www.codingame.com/share-replay/555109272
UndercoverToad: 50.37 points
Chainman: What's a good amount of nodes to have in my graph?
Astrobytes: 42
reCurse: Huge league with crippled batches, this isn't cool
ZarthaxX: UndercoverToad thanks
Chainman: :joy:
ZarthaxX: oh true, why didnt they move players to legend this time :P
gmessier: Difficult to keep "casual" players if they can't have a chance to go further than bronze. But, not challenging for "hardcore" players if it's to easy to reach high leagues...
UndercoverToad: Chainman I can show you my numbers for comparison: https://www.codingame.com/replay/555110976 it's in my message buggle
UndercoverToad: bubble
Astrobytes: buggle sounds far better
reCurse: gmessier: Maybe I need to explain further
reCurse: Once you're in the top 20 or so, getting feedback from games is hugely important
ZarthaxX: astroooooooo
ZarthaxX: :*
aCat: there should be more lagues~~
aCat: !!
reCurse: You used to be able to run batches, so automate the IDE to play matches and get relevant usable results for you
reCurse: They crippled that
reCurse: So now all you have left are submits
Astrobytes: ZarthhhhaxX :kissing_heart:
reCurse: But in huge leagues, you get even less relevant games
ZarthaxX: howdy Astrobytes
reCurse: And more submits from people in legend with more games means very slow results
gmessier: Yeah, I just say that I guess they try to find the compromise, but it's difficult.
reCurse: In a nutshell, the competition is severely damage
ZarthaxX: true :(
reCurse: d
reCurse: Not that anyone cares I guess
aCat: all legend recomputes now
aCat: hahaha ;p
struct: its not fair for the competitive people
Nerchio: legend here i come
Chainman: really Toad, n>5k in t=12ms :0
Queuebee: wow legend is huge
Chainman: and that is only depth=3 though
annaproxy: Omg
delineate: I think the issue started because the wood bosses were too easy, very few people in wood now compared with past contests. I'm guessing they take the top X% as a cutoff for each new league. I noticed silver was larger than normal when it was started, same issue with gold, etc.
gmessier: I think it could be a good option to have Wood 3, Wood 2, Wood 1 (but Wood 1 is the final rules) and you open bronze after a couple of days.
UndercoverToad: others claim far more simulations in the same time
LLG: I made the most important improvement to my bot around this time yesterday
LLG: I made it rickroll the opponent
UndercoverToad: depth=3 means 3 days, not 3 actions in my counting
Gabbek: delineate seems to be the case, yes
reCurse: delineate: They always made an exception for legend
reCurse: Open with very few
Chainman: ohh, that makes mor esense
Chainman: sense
reCurse: Not anymore it seems
Chainman: And the nodes are computed for the entire day
aangairbender: wtf I am in legend
Chainman: or 5k nodes created in 12 ms
reCurse: Can't remember the last time a positive change was made :/
ZarthaxX: i thought the same aangairbender
linjoehan: So is wood just second action in the list?
UndercoverToad: we are equally shocked aangairbender
reCurse: Oh, allowing console to resize I guess...
ZarthaxX: :clap:
Cjx_1: destined to unite the tribes
Astrobytes: I mean, the clue is in the name of the league...
aangairbender: first legend in life during contest, ok I'll take it
RoboStac: the boss submit ended quite a bit lower than the bot it was copied from so it's possible they only intended to increase it to 50-60 (which would probably match percentage wise on the older 2000 people contests)
reCurse: But legend has never been about %
aCat: linjoehan yes
ZarthaxX: oh...
reCurse: At least it used not to be
UndercoverToad: Chainman that's generating 5k valid moves and scoring the outcome of each
reCurse: It was aiming to end with top 100 or so
reCurse: Regardless of participants
reCurse: Because of rerun etc
MSmits: depending on the game, a leaderboard can be very volatile. That means that even when you cut it off at 15, you can soon have 50. In this case it was far worse
UndercoverToad: rerun has been min(legend size, 100) for some contests already
Saelyos: That's really disapointing :/
Nerchio: so do we know whos boss it is
linjoehan: and done now I wait to get to bronze then the real game starts
Astrobytes: I have no idea why they just didn't move the top n and recomputed instead
Chainman: interesting
ZarthaxX: UndercoverToad what? when
ZarthaxX: Astrobytes same :P
RoboStac: https://www.codingame.com/share-replay/555081682 <-- probable boss based on debug
Chainman: Mine is way to complex then, I did too much
UndercoverToad: since BotG I think, they only put top 100 in the rerun and skipped the 2 or 3 remaining bots
gmessier: It's difficult to fix a hard limit when your gate is a specific bot. If you have more "good" players, you will have more people in the league. However this time the bosses are too easy.
reCurse: I don't think the best bots are a percentage
UndercoverToad: robo but the boss doesn't say "sleep". maybe they took an older version of that bot (just guessing)
reCurse: Add 100 million players to chess, should there be a lot more GMs?
reCurse: Anyway, pointless
gmessier: So you should not use a bot boss to set the league. Otherwise, the more bots are better than the boss, the more go in legend.
RoboStac: there would be a load more GM's if that happened as the cutoff is elo based
avdg: probably more logarithmic
UndercoverToad: a bot is a reasonable gatekeeper, setting same difficulty level for everyone to promote
gmessier: If 100 players don't submit their best bot and than when the legend league opens they all submit them. They may all go in the legend.
LLG: I just want Default to be my gatekeeper
MSmits: as long as it is strong enough and not beaten by some RPS effect
linjoehan: Actually if only under9's are allowed to play chess there would be a ton of U9s with a 2800 rating
reCurse: My point was getting GM is extremely difficult, but if you make it % based, then a lot of people who would have never qualified as GM in their lives would have automatically gotten it
reCurse: During the chess popularity influx
reCurse: So using % for top makes no sense
MSmits: depends on the distribution of the influx
UndercoverToad: there are always a few hiders that promote after the boss appears, that's normal. but with a higher ranked boss the league would still be smaller, no matter how many are hiding
MSmits: if it happens gradually, it's np
reCurse: You won't get GMs as influx, come on
linjoehan: though GM is not % only is it?
MSmits: no, not with a sudden influx
reCurse: It takes years of dedication and hard work
MSmits: but thats different from CG
MSmits: you could have an influx of high qualirt
MSmits: quality
reCurse: I don't believe a word of that
RoboStac: if all the people from the influx joined FIDE competitions you would get more gm's though - elo gets inflated with more players
gmessier: I don't know how they "select" the bosses
ddreams: GM title isn't elo based though
linjoehan: yeah GM is not just ELO based
MSmits: gmessier bot strength, calculation time used (preferred heuristic bosses)
gmessier: They use a "player" for the bosses or they create them?
MSmits: player
MSmits: except wood
MSmits: they create those
Astrobytes: From wood.
gmessier: That's the problem then. They choose a bots too weak this time
MSmits: exactly
linjoehan: Is a bot abe to see who he is playing?
UndercoverToad: no linjoehan
MSmits: well, unless you hardcode a way to detect playstyles
UndercoverToad: that would make abuse easy
struct: not even the sdk knows
UndercoverToad: which is reasonable
struct: yeah
UndercoverToad: I can change my nickname and the replays will show the new name
linjoehan: So bronze is last rule change?
UndercoverToad: yes
ddreams: I'm surprised that dbdr and Nerchio is still in gold
ddreams: waiting for 100% I guess
VizGhar: ++
dbdr: yes
UndercoverToad: dbdr is destroying the league right now
RoboStac: yeah, with the legend bots being resubmitted games aren't going fast
UndercoverToad: 8 points above the boss
dbdr: :innocent:
Nerchio: yeah i was trying to fix my bot for like 7pm legend league
dbdr: I have a stronger bot too, maybe I should resub now
Nerchio: messed it up and had to rollback now
Nerchio: when i saw legend open :joy:
Nerchio: i kinda expected this legend league to be easy though not sure why
UndercoverToad: MC at top gold. that's the one who created the Langton's Ant multiplayer
Astrobytes: Ah, the elusive MC
KalamariKing: anyone wanna look something over for me
KalamariKing: how do I keep losing
KalamariKing: https://www.codingame.com/share-replay/555020308
ddreams: well, you get a lower score than your opponent
ddreams: that's bad
KalamariKing: they had 0
KalamariKing: I had like 130
KalamariKing: That's a win
UndercoverToad: horrible seed right there
UndercoverToad: twice in a row
struct: you seed eraly
struct: early*
Astrobytes: You're timing out
ddreams: yeah, timeout or a crash
Astrobytes: scroll to the end
KalamariKing: Oh ok thanks
KalamariKing: That makes sense
UndercoverToad: you seed at short range. and you seed while having another seed on the board
struct: grow both trees before seeding
Nerchio: you probably are trying to sell non existing tree or something
KalamariKing: y'all know its a beginner strat right
KalamariKing: its nothing complex
KalamariKing: so thanks for the tips
Astrobytes: just re-check your logic
KalamariKing: that seed one is nice, thanks euler
JSboss: nerchio naked shorting ??
JSboss: :)
MSmits: why are we discussing Nerchio's fashion sense
Nerchio: lol kind of
ddreams: let's see if this 65.63% self play win takes me to legend then
MSmits: I have 80% all the time and then it does nothing =/
dbdr: MSmits you misread it ;)
Noyotens: https://www.codingame.com/replay/555132002
ntsd: hey I don't understand coord in the source code
ddreams: do you play both sides though?
MSmits: i did
dbdr: it's 20&
Noyotens: https://www.codingame.com/replay/555132002
MSmits: but it's still true now :P
dbdr: 20%
dbdr: :(
KalamariKing: Yep, timeout, thanks all
MSmits: i guess it depends on what you change
Noyotens: https://www.codingame.com/replay/555132002
LLG: made it further than last contest
none_: Is there bot that cuts of legend league? Or is is based purely on ranking (like first 104)? I would like to see how it plays, but all I see is both called Default, which is rubbish...
Noyotens: https://www.codingame.com/replay/555132002
MSmits: small param change is hard to test with self-play
dbdr: no first ten matches in legend?
LLG: was low gold, now high gold, legend looks very possible if I don't slack off on weekends
Astrobytes: I know KalamariKing: I saw it on your replay
ntsd: what is coords (x, y, z) of cell index 1, 2, 3
struct: the cuttof is rand()
KalamariKing: quick question what's radix
KalamariKing: its base right
ddreams: none_: MiyazaBoss
Astrobytes: base
KalamariKing: oh you're joking, the only reason its timing out is because I used byte instead of short and it was too large
KalamariKing: Ok thanks all
jrke: damn 104 in legend
jrke: what was the opening of legend?
UndercoverToad: byte to store the score?
UndercoverToad: yes jrke :(
Gabbek: it was about 95 players jrke, the same as it is now :(
UndercoverToad: 95 + a few with pending submits that finished now
ddreams: *sad elite player noises*
UndercoverToad: boss was between 103 and 104 when I got promoted
Uljahn: ^
UndercoverToad: i'm not an elite player. I'm a lvl3 noob
jrke: they should have opened for 15 only opening of silver and gold can vary like there prices do in real market but legends are always legends so i think they should have gone for 15-20
ZarthaxX: :rofl:
struct: maybe I can just wait instead of coding the eval
KalamariKing: Now that that's fixed Let's see how high I can get
ddreams: gl squiddie
KalamariKing: first 10, all wins
KalamariKing: Wow these are slow
Nerchio: now i started getting games vs the boss
Astrobytes: Drugs are not the answer KalamariKing :P
Nerchio: its 51.5 points now
Nerchio: it was 50 before :D
UndercoverToad: I remember last Sunday Marchete asked dbdr it his bot was legend level already. Both dbdr and me answered with no
UndercoverToad: I admit fault here
none_: well, there goes my motivation... I was reworking my solution, but right now I guess I am satisfied with rank 50... :D
UndercoverToad: 50 is 200 at the end
dbdr: we couldn't have known UndercoverToad
ddreams: oops, submitted with testing timeout of 60ms
ddreams: still way better than old bot
none_: well, if it's still based on bot position, I should be fine... :D
KalamariKing: oh we climbin
KalamariKing: we climbin bois
Cjx_1: bout to hit gold this afternoon with nothing but if else loops, arrays, and a whole lotta moxie :P
jrke: they took python3 as a boss so maybe its heuristic
KalamariKing: oh what do the python3 games look like
Astrobytes: Lots of snakes and stuff
UndercoverToad: snakes and ladders
KalamariKing: wdym snakes
ddreams: check out pygame
aangairbender: turtles battle
KalamariKing: snakes of trees
Cjx_1: mimics of the high level sims mostly rofl
UndercoverToad: snake = python
KalamariKing: oh lmao
Astrobytes: pythons are .... snakes
KalamariKing: im slow
Wontonimo: just logged on. how many people were promoted when legend first opened?
jrke: was the league opening early today?
ddreams: 95
Wontonimo: thanks ddreams
UndercoverToad: you missed it by 1 hour jrke
Cjx_1: wow. gl to you champs <3
actualCoderTrevor: I'll take my legend now, please and thank you https://www.codingame.com/replay/555142154
KalamariKing: god damn
Cjx_1: almost gives me a sliver of a hope I can make it
KalamariKing: wiping the freaking floor over here
Wontonimo: that's good news and bad news. Good news, that it's really achievable. Bad news is now i'm gonna want to try
KalamariKing: only two people have been able to beat me
Cjx_1: the competition in that bracket will be intense and varied
aangairbender: this time I had to beat only wood bosses:sweat_smile:
UndercoverToad: same
KalamariKing: not to brag but I'm coming for your ranks :smirk:
UndercoverToad: even reached silver twice
KalamariKing: I thought wood battles took forever how long until you know your rank
struct: and got the experience twice
KalamariKing: this is insane its been like 10 minutes and its only 30% done
jrke: KalamariKing there are 293 ongoing submissions so you have to wait
KalamariKing: the battles take forever
jrke: damn jolindien taking a big lead
jrke: nice
struct: now I cant practice vs default ai :(
jrke: make legend then
ddreams: submit the default ai code, then play against your code in the arena
none_: KalamariKing: after around 40% you are not going to rise much. The closer you are to end of executions, the more you are fighting people around your final position to compare with similar ranks...
aangairbender: struct submit empty bot and practice vs him
struct: nah Ill just use the test link :D
DomiKo: wait
DomiKo: 106 in legend
DomiKo: :rage:
ddreams: 107 when I finish my improvements :p
jrke: how will they gonna make rerun after end of contest in such a crowded legend?
dbdr: top 100
aangairbender: imo legend should have constant size every contest, around 20
Marchete: 106 legend?
Marchete: wth
dbdr: yes :(
aangairbender: codingame should create new leagues
jrke: wood 4
KalamariKing: or make them harder to pass
aangairbender: there are so many people nowadays
KalamariKing: there are so many people in bronze that don't know what they're doing
aangairbender: chilling
KalamariKing: this challenge isn't great in this sense because purely random moves can lead to surprisingly good outcomes
Nerchio: you can be in bronze just printing available actions
struct: I needed full sim for bronze
KalamariKing: after beating literally everyone in this league I really hope silver is better
KalamariKing: struct not anymore, unfortunately
uvBoss: @jrke u simulating?
jrke: not yet
jrke: i mean i am not having good eval
uvBoss: heuristics only?
creeperZnation4: Yeah, silver league is actually a little challenging coming from wood @KalamariKing XD
Marchete: gold is no sim, just pick seeds with little neighbours and growing trees that make shadow on enemy and not yours
jrke: so i am currently heuristic
kovi: maybe its too late, but now we can see who is doing search and who is doing heuristic
Marchete: like 4hrs coding
ddreams: kovi how?
ddreams: completion?
kovi: yes
uvBoss: im trying to implementing a simple search man im noob af
aangairbender: My search doesnt complete sometimes
uvBoss: free(): invalid pointer im getting this error but im not even using delete or free keywords
any C++ experts?
kovi: some false positives, those who search fast and those who heuritize slow :)
RoboStac: are you using a vector?
uvBoss: well yeah lots
uvBoss: xD
aangairbender: dangling pointer?
ddreams: probably two vectors deallocating the same objects
uvBoss: OMG memory leak
RoboStac: often means you have some memory corruption (eg writing outside of an array and when it comes to destroy your vector it tries to free the wrong thing)
kovi: rather indexing out yeah
uvBoss: i think i got it thanks guys
aangairbender: c++ is fun at such moments, when you get some random error like this and have no idea where to look
ddreams: it's also a bit dependent on the servers they run on, kovi
RoboStac: uvboss - try putting "#define _GLIBCXX_DEBUG" as the first line of your program
kovi: ddreans, yes but for this rerun it probably averages out
RoboStac: (remove it when you finish debugging - it makes things slow)
ddreams: what's up with your bot, Nerchio?
Nerchio: whats wrong with it
KalamariKing: its doing things
KalamariKing: spooky things
ddreams: oh, I guess you just resubmitted
ddreams: that's why you're at the bottom
ClosetAI: legends get job interview offer, they want more of them
KalamariKing: no you're joking
KalamariKing: resubmitting means you have to re-do all the battles
KalamariKing: even if you were at like 90%
ddreams: so? :D
struct: lol ClosetAI
KalamariKing: SO
KalamariKing: they take forever
UndercoverToad: they want more quotes like https://www.codingame.com/blog/spring-challenge-2020/ (at the bottom)
ClosetAI: I already got a new job, gardener at google
reCurse: Numbers!
reCurse: Big!
KalamariKing: wow python is popular
KalamariKing: did it have timeout issues on that challenge too?
UndercoverToad: no, only clojure
KalamariKing: ok so remember how I was doing really well and then resubmitted well now I'm doing... well, undefeated
KalamariKing: so its not all bad
KalamariKing: although I wasted a good half an hour
KalamariKing: I'll shut up now gb folks
uvBoss: can anyone help me with copying a game state?
KalamariKing: what about it
uvBoss: how? XD
ddreams: if you send it to me as a json file, I can copy it for you
uvBoss: -_-
uvBoss: i mean when calculating next possible states....how do u do it?
KalamariKing: by doing so
KalamariKing: are you using arrays and all that or bitboards
ddreams: Game nextState = applyMove(game, action)
KalamariKing: if you're moving the gamestate around a lot I would switch to bitboards
uvBoss: im using Objects with vectors
uvBoss: ok i have no clue what bitboards are so let me check
jrke: bitboards are strong integers representing a game state
Numby: Any tips on reducing the time it takes to find all legal moves? Is there a better way to store than just a list (Java)?
jrke: each bit represents a part of state
Numby: Does bitboard representation help with finding/storing the legal moves at a board state?
struct: its easier/faster to find
struct: also shadows are easier
struct: imo
DetoBot: yup he is right
Numby: But still need to loop through the board right? There will still be a loop 0 to 36 for each cell to find the legal moves?
struct: I dont need loops for shadows
Noyotens: how to get duplicates items in ts
ddreams: you do loop for seeds, right?
uvBoss: o(1)?
Noyotens: yes
Numby: Well for shadows I understand you can calculate with shifts but doesnt seem to be a bottleneck for me anyways
struct: I loop for seeds yes
ddreams: I still use my pre-bitboard code for seeds
MindController: Anyone has a good guide bitboards? Totally new thing for me and would like to learn more
struct: https://core.ac.uk/download/pdf/33500946.pdf
kovi: solid lead by jolindien
Noyotens: <_>
MindController: Thanks
Zenoscave: how many in legend?
Zenoscave: 100?
struct: it was like 100
Zenoscave: wow
UndercoverToad: https://jjj.de/fxt/fxtbook.pdf that one is on bit magic (among others)
ABIROOP-RP: 🥴
Zenoscave: thanks UndercoverToad I'll be reading
UndercoverToad: that's almost 1000 pages
Zenoscave: reading *sections
ZarthaxX: he will read them
ZarthaxX: trust
Illedan: Legend of 100?!
ddreams: sounds like a movie title
dbdr: I was going to say that even you got in, Illedan, but I see you didn't ;)
Illedan: Hahaha
UndercoverToad: remember Illedan, you goal was beating me and not legend
Illedan: Sure
UndercoverToad: i am your substitute boss now, as the real one failed
Illedan: 02D 17H 22MN 29SC
UndercoverToad: "no sleep till toad is beaten"
Illedan: I'll just fix my Legend rank
Illedan: Ezpz
Wontonimo: and remember UndercoverToad, you said you'd stop once you got to Legend
Illedan: You will wake up 1 day with me still awake above you
Marchete: lol
GhostManVC: how to seed location
Zenoscave: Is there a way to tell if your code is in ide vs submit in c#
Zenoscave: does #ifdef DEBUG or smth work?
UndercoverToad: no way that i'm aware of
RoboStac: I think they fixed all the easy ones
VizGhar: I wonder how you guys compute turns-in-day combinations... with 10 trees to grow 3 to complete and a huge amount of seed placements seems too big for me
UndercoverToad: try to print the size of the binary maybe
ddreams: Zenoscave you can easily set your own global variable in the IDE
Illedan: Submits slow?
Zenoscave: but I'll submit them on accident lol ddreams
RoboStac: legend got a full resubmit so there are loads of games being player
ddreams: Zenoscave oh no... anyway
Illedan: oh, why on earth would they need a resub now -.-
ddreams: figure out the ranking without all the games vs the gold scrubs
dbdr: well, scores were inflated
dbdr: 60+
UndercoverToad: http://chat.codingame.com/pastebin/c52a02da-f5a7-46b3-b39c-ddedeaa8fc74
UndercoverToad: that might do the trick @Zenoscave
UndercoverToad: at least to see if it's the same in IDE and arena or not
Zenoscave: Thanks UndercoverToad
ashiknur: what will be cutoff for legend?
ddreams: beat the boss
UndercoverToad: legend is open already
RoboStac: theres no limit, just beat the gold boss before the end of the contest
UndercoverToad: 100
Marchete: when submitting: SIMS:259825
ashiknur: wow, I didn't really see it.
Marchete: on IDE: SIMS:85775
UndercoverToad: :D
struct: same cpu?
Marchete: anyways it's dead slow
Marchete: CG
Marchete: CG server
struct: yes but they have different cpus
dbdr: yes, arena looked much faster to me too
Marchete: on my PC (coreI7) is completely different
UndercoverToad: I also had a feeling that i'm timing out in the IDE more often than arena
Marchete: 700k
UndercoverToad: the gold boss
Zenoscave: Yeah I cut my beam width in half and still times out on IDE
UndercoverToad: wait, no :(
Marchete: do you see the same diff on C# simcount, euler / Ille?
UndercoverToad: did you try my code snipped on submit already Zenoscave?
Zenoscave: About to
UndercoverToad: let me check Marchete
Illedan: Hahahaha, I had a property that I tweaked a lot. Never set it :sob:
miszu: good morning children
miszu: I see legend is open
UndercoverToad: random arena match: https://www.codingame.com/replay/555188006 same in IDE: https://www.codingame.com/share-replay/555193950
dbdr: that was random :D
UndercoverToad: arena seems faster stepping through the replay
dbdr: that sounds weird
dbdr: are you sleep deprived UndercoverToad?
Marchete: but it's not that different
struct: just pray you get the 2.4ghz machine
UndercoverToad: no, i'm squirrel feeding
struct: its the best one for me
solistice: I hope there will be good postmortems for this challenge
struct: The 3.1ghz machine is the slower one
solistice: I can't seem to figure out why my sims are so slooow
solistice: I give up :D
Zenoscave: Same sizes but pdb is missing in Arena
VizGhar: solistice same feelings here
UndercoverToad: and the diagnostics process?
Marchete: call itself?
Zenoscave: the socket? Yeah
UndercoverToad: also: that's an easy way to crash on purpose, isn't it? :imp:
UndercoverToad: "Yeah" = yeah it's there or yeah it's missing?
Marchete: do you have it working on .Net?
Zenoscave: It's there
Marchete: wher?
Marchete: where?
UndercoverToad: try to kill it?
UndercoverToad: wait, that's a file and not a process
tyeir: you spelled where wrong
UndercoverToad: let's inspect processes
Zenoscave: ok I'll do that too
tyeir: do you not see these messages
tyeir: ,gfifhu8j9h0aasg'jfegnv
Marchete: I don't know, maybe it's because the massive use of unsafe
Astrobytes: nice and fast there struct
Marchete: but IDE is 90k vs 300-400k on submit
struct: thanks
Astrobytes: Right, in gold now. Can I stop yet toad?
struct: thats very strange Marchete
ddreams: I'm rank 1 in gold now, with an unintentionally submitted 60ms max bot :p
Marchete: not really
struct: why?
ddreams: boss still higher tho
Marchete: C++ -O0 is dead slow
struct: true
Marchete: in fact C# in debug mode is really fast
VizGhar: How am i supposed to replace those vectors :(
Zenoscave: ddreams you know the flags?
ddreams: you mean #pragma GCC optimize("-O2,inline,omit-frame-pointer,unroll-loops")
Marchete: O2?
Zenoscave: -O3
Astrobytes: 3 or fast always
ddreams: right
ddreams: thought o3 was for size
Zenoscave: does anyone use -ffast-math
Zenoscave: it's a more aggressive optim that helps here
Astrobytes: enabled by default w/ Ofast isn't it?
jacek: its in Ofast isnt it
Zenoscave: probably
UndercoverToad: Astrobytes 04:52PM Right, in gold now. Can I stop yet toad?
legend is so easy this time, it's almost like the usual gold
Astrobytes: I've not even implemented anything about shadows lol
Astrobytes: Maybe I'll keep playing
dbdr: legend is the new gold
Astrobytes: That's just sad :(
dbdr: yeah
Gabbek: so that explains why I've reached gold this time and silver the last time... :D
solistice: 15.000ns for 1 sim
solistice: that seeems too slow
ddreams: 15k ns or 15ns?
solistice: 15k
ddreams: :p
solistice: 15ns would be godlike
solistice: I moved everything from lists and stuff to bitboard
solistice: I see improvement
solistice: but still a bottleneck
KalamariKing: solstice are you using freedom notation or not
UndercoverToad: so 1k sims in 15ms doesn't sound completely off
KalamariKing: 15.000 is 15 to me
Astrobytes: alright, afk for a bit, back later
ddreams: I just quadrupled my evaluation speed, but getting worse results
UndercoverToad: good idea, i'll do an Astro
struct: which language_
struct: *?
Michael_Howard: T-shirt will be the new Legend
ddreams: me? C++
solistice: woops, yeah 15,000
solistice: I'm using C#
solistice: btw UndercoverToad, that's local in debug, not on CG
KalamariKing: silver lets go
WatchTower: whats a easy language for beginners?
KalamariKing: python
CodeDecodeDev: Python
KelvinAndHubbles: Python
ddreams: Snakeylang
jacek: fim++
VizGhar: Spanish
Ra777: anyone else seeing different positions(yourself) in LAST BATTLES view and in LEADERBOARD window?
ddreams: after page reload?
raxkin: the position in the LAST BATTLES view is the position in your current league. in LEADERBOARD its across all leagues
Ra777: yes after reload too.
Ra777: im in the gold league so possition should be the same. it is first time im seeing such a thing
solistice: how much turns you guys average per sim?
gmessier: Ra777 the legend league is open so that's why
solistice: any ballpark?
Counterbalance: 1?
Zenoscave: solistice 1 sim = 1 turn
Michael_Howard: :sob:
Michael_Howard: paavan@jsagroup.co.uk
Zenoscave: here that's the common nomenclature
Ra777: oh didn't noticed about legend
Michael_Howard: oops sorry
Michael_Howard: https://www.codingame.com/replay/555213893
Chainman: Can you get in gold with just heuristics looking at next move?
Numby: I had 2k games from start to finish with random moves before adding pruning if that helps (was rank 700 gold before messing my constants lol)
gmessier: Yes
Ra777: yes im in gold just with looking for next move
gmessier: My current bot is technically very "stupid" and is ranked 811. I apply some filters on action, but by example for grow I just take the first in the possible list after filtering...
solistice: wait Zenoscave, I mean by sim that I'm doing MCTS and a sim is one step in the MCTS (so 1 sim has x turns where x is the number to finish the random playout
solistice: is that wrong then?
gmessier: Still work on my beam search to replace the heuristics... without so much success yet :P
Chainman: yeah
Chainman: I went straight to sim/graph search, but it is having many problems.
Chainman: MCTS that's interesting
ddreams: how many times do you reach the end of the game, solistice?
solistice: about 800 times
solistice: which is not enough imo
solistice: to have good results
ddreams: yeah, you barely scratch the surface
solistice: so maybe MCTS is not the way to go
RoboStac: solstice - I think most other people would count 1 sim as 1 turn in the ide (eg both players doing 1 action) as thats more comparable across algorithms. I'd be surprised if anyone is doing random rollouts with any success
solistice: but I alwasy thought when you guys were talking about simming, that we were talking about the same thing LOL
struct: 1 sim = new state
solistice: then maybe i'm not slow at all
solistice: just using the wrong algorithm
VizGhar: sim = day or action?
TheBatMan_TM: any of y'all wanna use foreign modules in #coc?
TheBatMan_TM: use this import os os.system('pip install <module>')
TheBatMan_TM: *resend
TheBatMan_TM: import os os.system('pip install <module>')
Nerchio: life hacks?
solistice: was that a question for me, VizGhar?
VizGhar: for example yes
VizGhar: I've had 1 action = 1 node but I failed to evaluate it
gmessier: 1 node = 1 state
VizGhar: what is state?
VizGhar: now i have 1 day = 1 node and timeouting, because I cant compute possible days fast enough
jacek: baby dont hurt me
orangesnowfox: (don't hurt me)
gmessier: state = the board position (trees + score + suns)
Noyotens: ;_(
gmessier: An action by itself can be ranked. It's the result. The state of the game after applying the action
gmessier: *can't
solistice: beam search is a heuristic search, no?
ddreams: yes
solistice: are there good possibilities without heuristics?
orangesnowfox: Well, actions can be ranked by "likely best" which is useful for minimax...
ddreams: you probably need to think in this game
solistice: I hate thinking
solistice: makes my brain hurt
ddreams: exactly
ddreams: probably why so many don't like this game :D
ddreams: computer, think for me
solistice: that would be sweet
ddreams: isn't that how most of the AI competitions work?
VizGhar: sure gmessier but you can get to some state only by applying action... I want to know whether the action is single action (game turn) or set of actions where last is WAIT
gmessier: You can do both
solistice: it depends: the game defines a round as a day, where a day has multiple turns. A day ends when both players have waited (so ends whenever the last player says "WAIT").
VizGhar: but evaluating state after one day is much easier then after 1 action
gmessier: Yes but you can "simulate" a turn with all possible actions OR you can "simulate" a day with all possible list of actions.
MSmits: the branching you get by simulating full days is pretty extreme. You may need to do some serious pruning then
gmessier: It depends if you put limitations
MSmits: thats what i mean by pruning
solistice: wouldn't that eventually even out MSmits? It would have higher depth but eventually have same amount of nodes, no?
gmessier: The order of most actions are not important. You will have the same result if you GROW 1 then 2 or if you GROW 2 then 1.
MSmits: it would be far less gradual though
MSmits: you would lose some states earlier
none_: gmessier: not true
none_: if you already have tree of given size
MSmits: in other words, just grow 2 before you grow 1 :)
VizGhar: order is important
MSmits: yes
MSmits: large first, then small
gmessier: you are right none_... damn that's why... :P
none_: I feel like this game is primarily about these small things. I'm in legendary without even considering future moves.
gmessier: That explains why my day simulation was so bad :D
none_: there are couple things like that I picked from better players...:)
gmessier: But, I the end my point was, you can reject many possibilities to reduce the branching (by example, prevent to grow a smaller tree first)
KalamariKing: yes finally my dumbass bot did the thing I told it to :clap::clap::clap::clap:
none_: even that might be beneficial if you don't have enough to grow bigger...
none_: or sometime even if you have... for example bigger tree caught between his trees and small tree on nice sunny place...
gmessier: I don't mean don't grow at all a small tree. I mean if you can do both, to the big one first
none_: yep.
gmessier: But it's meanly if you want to calculate days and not turns. You can remove some possibilities if you already know that it will be less efficient.
none_: I still think that calculating whole day is big unknown. You can plan as much as you want, but you don't know what your opponent will do...
solistice: unless you try to add predictions
solistice: but then ur working on turn level again
solistice: and my sentence made no sense because of that
none_: yeah, but still they are predictions
ItsNotABug: @RoboStac. You're the only person in UK in legend. Good job
gmessier: I'm not sure I will take the opponent into account at all.
Chainman: Just ignore opponent, they don't matter
Chainman: :wink:
gmessier: Yeah that's what I think. It's not like for the last Spring Contest. Even the Fall Contest, it was not useful to check the opponent except in legend maybe...
gmessier: Computing an opponent AI reduce by half your time to check your best move.
therealbeef: Urgh, spent half the day debugging the code I wrote last night while drinking :'(
KalamariKing: lmao what a sentence
Lucky30_: hello everyone
Lucky30_: how is your day so far
Michael_Howard: Like this https://www.codingame.com/replay/555213893
ddreams: the rest of us debugged the code we wrote sober
Chainman: It's a wonderful day to rebug.
KalamariKing: its a wonderful day to write a bot that works perfectly and then tune its parameters but it doesn't liten
KalamariKing: listen*
Lucky30_: nice
alchemsti: Just took a long break, now would really like to make legend....Missed easiest time I guess (right after it opens)
Lucky30_: are all legends using simulations??
Nerchio: no
Lucky30_: oO
ZarthaxX: perl rank 16
Cjx_1: I believe someone said last night that their was at least one person up there using pure heuristics and loops. Just the grapevine though
Lucky30_: meaning i still have a chance, a really really really small chance
ddreams: several legends
CouscousAgha: which rank should I get to play vs the boss to legend?
Lucky30_: currently even rank 1gold is not better then the boss
AlMualem: Greetings guys,i hope you are all doing great...this is a replay from a game vs silver Boss https://www.codingame.com/replay/555255130 any suggestions for improvement please?
KalamariKing: the little messages make it so much better
Chainman: Is it better to create a getter function in python or just return self.variable?
AlMualem: sorry mate
JEDWF: should i learn python or c ++
KalamariKing: Chainman I would say just get the variable, the getter would do the same thing just with more overhead I would think?
KalamariKing: JEDWF personally, python is easier but c++ is so much more powerful
AlMualem: kalamari are you greek?
Chainman: yes I'm thinking that, maybe getter is just to make it more readable or creating an api.
KalamariKing: AlMualem no, why
Chainman: Learn python first might be optimal
AlMualem: because kalamari is the greek word for squid,and i thought you were
jacek: oO
actualCoderTrevor: AlMualem sometimes your bot says "seed my little minions" but doesn't actually seed. Is that a bug?
actualCoderTrevor: Because you pass up opportunities to seed for free when you have no seeds on the baord.
actualCoderTrevor: So, either you are trying to seed with an invalid move or just aren't seeding when you could be
JEDWF: Do I have to be good at math for coding?
ddreams: no
AlMualem: aaa just a string i forgot to delete during my modifications :/
AlMualem: oups
actualCoderTrevor: Oh in that case you should seed when it's free to do so
Smelty: oh theres legend league now?
KalamariKing: someone explain how I wrote a bot that gets CRUSHED by the silver bot but I'm climbing the ranks rather fast
Smelty: lol
Smelty: my bot stuck at bottom of gold
JEDWF: can you guys recommend me some sites that i can learn coding
Nerchio: KalamariKing i can crush some people and then get crushed next game
KalamariKing: JEDWF google
Keiysuke: JEDWF I've just reach the gold ligue for 1st time and i did not use any math method to do it. So it's possible to go far without maths :D
AlMualem: with my last submit i went from ~1,300th to 324(and keep going) ,but i need improvements for the god damn bot
AlMualem: :P
Chainman: multiply or add in the score function hmmm
JEDWF: I learned coding for five months, but I can't think of anything
AlMualem: damn you silver boss :P
Chainman: I don't know how to decide
Smelty: o-oh my
Chainman: boosssooooot
Smelty: im losing to gold boss lol
Smelty: MiyazaBoss
Chainman: I hope to lose to that bot
ddreams: select it as your opponent in the IDE and try your luck
Smelty: lol
Chainman: That is only for those in gold lol
Smelty: lol
Chainman: yes
AlMualem: @actualCoderTrevor i will include this feature you proposed (seeding when its free) and hope for the best
Smelty: bruh gold boss stronk
actualCoderTrevor: gl AlMualem!
AlMualem: ty mate
Smelty: 1 thing thoguh
Chainman: Who going for silver bossooot?
Smelty: it wil make parent tree dormant
Smelty: so it isnt completely free
Hasuzawa: anyone send me a link to the chat of germany? trying to stay informed
AlMualem: @chainman me
AlMualem: @Smelty yes you are right....tests tests tests it is!
Smelty: rip me, looks like i'm ending in gold
Chainman: so many days left
Chainman: yes @AlMualem let's do this
Smelty: 2 days xD
Chainman: actually will take me probably 3 hours to get heurisitcs to compete against silver boss, now that I rewrote code from scratch.
AlMualem: if i reach Gold my task in the contest is done....i will be very happy (regarding my experience in coding)
AlMualem: So Lets do this!!!!!!!!!!
geppoz: hi, which is the class that contains the "main" method to be called by the brutaltester? "Referee" doesn't have it...
Counterbalance: you only need to run the jar itself; the main class is in the manifest.. (so: java -jar spring-...jar)
geppoz: no manifest there :(
Nerchio: i wrote you pm
Counterbalance: then you need to grab a fork; people are using https://github.com/LSmith-Zenoscave/SpringChallenge2021
Chainman: lol bossoot just plants trees 2 hexagons away from his trees
dbdr: https://www.codingame.com/replay/555280252 that battle for seeding 15 from frame 56 :D
VizGhar: lucrative cell :)
Nerchio: lol :D
Nerchio: nice
Chainman: amazing haha
Chainman: seeding till all dormant
KalamariKing: anyone wanna sit through my fortnite-themed spanish lesson with me
VizGhar: what?
Chainman: nani?
KalamariKing: help
Chainman: Que?
ScottytheHotty: why doesn't my code work?
ddreams: probably broken
KelvinAndHubbles: it's bad
VizGhar: its not getting paid :)
schachmatt: it's on strike
ddreams: taking a day off
Digginwings: wood 2 league is so easy
ScottytheHotty: its actually wood 1 league
Digginwings: it shows wood 2 league for me
KalamariKing: ScottytheHotty I would say there's an error somewhere
Chainman: y'all trolling him?
Chainman: I thought it was wood 2, but I don't remember
Chainman: Should be easy to check
Digginwings: it is wood 2
aglaglaglagla: Hey, I'm having trouble running the brutaltester for this game. It only runs a single round (or so it seems) and then stops. Any idea how to fix this?
ddreams: paste your command line
ddreams: a single game or a single round of a game?
aglaglaglagla: java -jar target/spring-2021-1.0-SNAPSHOT.jar -p1 "../../silver/target/release/silver" -p2 "../../silver/target/release/silver"
ddreams: do you get an error message?
aglaglaglagla: yeah some warnings and a logger error
aglaglaglagla: still runs though
aglaglaglagla: "ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console. Set system property 'log4j2.debug' to show Log4j2 internal initialization logging."
ddreams: I think you have to fix it
ddreams: it's a warning, but any output from the referee makes it stop
Whatar: its a fix you have to do to the pom.xml
Whatar: sorry, not true
Whatar: you have to add log4j2.xml to ./src/main/resources
Whatar: inside you past this
Whatar: http://chat.codingame.com/pastebin/2b78c7e0-87fa-4f0f-a90a-1c77f74307d3
Whatar: anyway you also need to find the switch that regulates the league inside the source code and delete wood 1 and 2 from the options
aglaglaglagla: Ok this solves the Error indeed!
Digginwings: yay
Digginwings: this spring challenge is pretty easy im not going to lie
KalamariKing: my guy
Samzok123: hi
Digginwings: what
KalamariKing: its rather easy for some of you
Numby: I'm just happy there's no graph traversals
Samzok123: ok
ddreams: bronze will be harder
KalamariKing: its pretty hard for the rest of us this is my first time doing bitboards and search algos
Digginwings: ok
ddreams: wood leagues are the tutorials
ddreams: teaches the game and the rules
Digginwings: hmm
Digginwings: is it bad i barely know what you are saying
ddreams: not really
Digginwings: ok good
Digginwings: jk
Chainman: oh 114 - 125 against silver boss, maybe I'm getting there already
Chainman: I need more though
Zenoscave: Chainman do several tests. ! isn't enough
Zenoscave: 1*
Chainman: You are correct 131-101 haha
Zenoscave: 30 should be sufficient
Zenoscave: For silver ata least
Zenoscave: https://epitools.ausvet.com.au/ciproportion
Zenoscave: number positive = wins, sample size = total plays, use .99 confidence
Zenoscave: If lover 99% CL is above .5 you'll most likely pass eventually
Zenoscave: lower*
Aniboy: Hi Guys
Digginwings: if i beat the boss but fail a lot of battles will I still pass
Zenoscave: Digginwings depends on who you lose to and how often
Digginwings: ok
Zenoscave: and how bad you beat the boss
gmessier: you must have a better TrueSkill of the boss. Not beat it in one battle
Aniboy: Do you know how to check Validator 1,2 and all at the end of our code submission?
Zenoscave: ^
Digginwings: ok
Aniboy: I am getting validator 1 failed but dont understand why?
KalamariKing: because its wrong
KalamariKing: duh
KalamariKing: ok sorry sorry, which game?
Astrobytes: Right. This IDE play limit thing's doing my fking head in
Westicles: So many legends, I thought is was supposed to be 10 or so
Astrobytes: Clearly CG believe otherwise :/
UndercoverToad: btw Astrobytes you have my absolution to quit. i'm not motivated myself either
Astrobytes: I'll maybe do something tomorrow, I'll see
UndercoverToad: was that reverse psychology?
UndercoverToad: also: where did that Magu s suddenly come from?
Astrobytes: No. Just saying I probably won't in a roundabout way.
Astrobytes: Aren't you doing another comp this weekend euler?
K3K: random :rage: emote for the play limit thingy, don't mind me
UndercoverToad: codejam tomorrow afternoon
Astrobytes: Ah right
UndercoverToad: my motivation for this is higher than for CG
asedrftgyhujasdrcfvgbhjnkmwsedrf: hello
RDty: is there going to be another challenge directly after this one?
Astrobytes: No.
ddreams: hi asedrftgyhujasdrcfvgbhjnkmwsedrf
Whatar: there are 2 challens a here, one in spring on in fall
Whatar: *year
Astrobytes: There used to be loads every year. Well, quite a few. Now just 2 official ones.
Whatar: I didn't know that
Astrobytes: I think... 2018 was the busiest competition wise? 2019?
UndercoverToad: let's wait for their announcement after this one ends
Astrobytes: Yeah :/
UndercoverToad: i see some changes coming
UndercoverToad: 2018 had 6 contests
UndercoverToad: counting locam sprint+marathon as 1
alchemsti: !
Astrobytes: Yes I agree euler
alchemsti: 6 feels kind of excessive. OTOH, you don't feel as bad if you miss one
Astrobytes: We were really spoiled that year
Astrobytes: You still get a few semi-private contests from companies a few times a year too. They're variations of existing multis though.
RoboStac: 2018 was the year with the 3 good semi private ones too (thales/decathalon/amadeus)
UndercoverToad: the most exciting thing the website has to offer when there is no contest: community multiplayer games
Westicles: Changes? Surely they won't make them escape rooms?
Astrobytes: Yeah that too robo. That Amadeus one was great
UndercoverToad: was Amadeus the soccer thing?
RoboStac: no, that was decathalon
UndercoverToad: wait, the planet wars
Astrobytes: No, the graph one
Astrobytes: yeah
RoboStac: the soccer probably wasn't good overall but it was good for me
Astrobytes: lol, you won that?
RoboStac: if that had been more than a couple of days it would have got very messy
RoboStac: yeah
UndercoverToad: the bicycle that they decided to pay in money then?
Astrobytes: I did the other two but I missed the decathlon
RoboStac: yep, they gave me lots of decathalon gift money instead of a bike. I bought a bike
UndercoverToad: was the third one the email leak contest?
Astrobytes: hahaha
Astrobytes: No, that was Klee, codebusters one
Astrobytes: 4th that year? I don't remember the order tbh
RoboStac: didn't do that one so can't check when it was on my profile
Astrobytes: I signed up but didn't submit, I strongly dislike that game and all its variants
UndercoverToad: but what about Sopra? did you dislike that one too?
Astrobytes: Yeah. I didn't do it.
Astrobytes: The last one, the Amadeus Sofia Labs one was fun
UndercoverToad: so many contests without telling names
UndercoverToad: 3 player single-pod CSB with 360° rotation
Astrobytes: I was referring to it as SLSF2442
actualCoderTrevor: Okay so I guess we're just not allowed to test code in the IDE anymore? "Some time" has become "a long time"
actualCoderTrevor: Oh the error says "A period of time"
Astrobytes: The play limit threshold has been lowered. It's *extremely* annoying
dbf: we need premium accounts with higher limits
Astrobytes: :D
Nerchio: i'd pay for that just to support cg if it meant more support for 5%
Nerchio: :joy:
ddreams: could pay for your own test/game server for the entire contest
Astrobytes: That could get real pricey, real quick
geppoz: :D
geppoz: depth:44 states to explore:10193 ms:79 ixTot=1146018
Counterbalance: 12 bucks? doable
geppoz: pruning random seems not best strat
geppoz: so fast but so bad
ddreams: surprised?
Nerchio: geppoz depth 44 with 10k nodes only
Nerchio: ?
Nerchio: or am i not understanding
geppoz: 1M states evaluated
Nerchio: ok that makes more sense
geppoz: 10k exploded at that deep
geppoz: but then i choose 2k rand
geppoz: never mind, so bad
Astrobytes: Noted for future reference: do not prune randomly ... :P
ddreams: does anyone know how to get the graphics working locally?
jrke: download referee and set it up ddreams
ddreams: I have it, but it doesn't split up the sprite image, so most of the graphics are missing
jrke: wht
ddreams: https://imgur.com/a/RKIGcgU
PatrickMcGinnisII: I had a misconception for days... I thought the use of a 2nd seed could like block the enemy from high value cells, but that 1 sun cost seed hinders my own expansion that I lose
jacek: oh my
PatrickMcGinnisII: i did so many tests for nothing
PatrickMcGinnisII: so after abandoning bad ideas, i should make gold today
PatrickMcGinnisII: i can't search deep enough
MSmits: heuristics can take you to legend apparently, but it's not easy
MSmits: i'm still 44th gold with a search
jrke: MSmits thats why i am still trying heuristic
MSmits: not a bad idea jrke
Wontonimo: PatrickMcGinnisII I had that idea also, and just didn't get around to testing it.
Wontonimo: finally have a sim bot that does better than my ifelse bot
Astrobytes: jacek: did you give up?
PatrickMcGinnisII: seed placement while optimizing growth curve is key
CouscousAgha: same, only using heuristic but now i feel stuck without figuring out the best cases for cutting tree
CouscousAgha: I thought figuring out where to seed was the challenge, but the real one is when to cut
jrke: me too
jrke: my problem is also when to cut
MSmits: I am convinced this is what is keeping me from legend also
jacek: Astrobytes contests are not my thing though this one best suits my interests
Astrobytes: So still trying then?
MSmits: what is it about this contest that makes it interesting jacek ?
jacek: maybe ill get t gold
Astrobytes: It's a board game!
jacek: its board, its hex, no fow
UndercoverToad: so jacek is the 95% that votes against contests in the survey?
MSmits: ah ok
Astrobytes: jacek: you don't even need to implement shadows for gold
MSmits: i'm curious to see what the real wording of that question was
jacek: the only thing i never mastered was simultant moves
MSmits: and the result
slamo: I wonder how many in the top 20 are simming vs not simming
MSmits: jacek the only thing i know for that is smitsimax... I produced that brainfart because, just like you, I had no clue what to do
MSmits: duct works too
MSmits: never done that myself
Astrobytes: slamo: My guess is 19 vs 1
MSmits: in this contest it would be tricky to use either of those
UndercoverToad: Based on a survey we did several months ago (the small questions on the home page) and that get 166811 replies, the replies to « What do you expect from CodinGame? » show that only 1.64% of the respondants said « Compete against other coders » but 33% reply « Improve my skills by practicing » and 17% « Just have fun while coding ». This is why we begin to shift our communication around events to talk more about « practice » and « fun ».
slamo: currently 22nd with only looking ahead to the start of the next turn, so here's to trying to be the 1
PatrickMcGinnisII: i'm pushing everyone up in top silver
PatrickMcGinnisII: smh
MSmits: UndercoverToad could you give multiple answers to this question?
Astrobytes: Nice one slamo!
MSmits: or was it 1 answer possible?
UndercoverToad: 1 answer
MSmits: thats bad then
MSmits: because people may want to have fun while coding and still appreciate a contest
UndercoverToad: as well as the voting power of each user. think about the school classes coming here for 1 lesson and then never returning
UndercoverToad: the school class has 20 times the voting power of a regular user
Astrobytes: Loaded question tbh, results can be intepreted as they see fit
MSmits: btw, i might have answered here: "Improve my skills by practicing"
MSmits: because it's true
UndercoverToad: i think i said "fun"
UndercoverToad: contest is a subset of fun
MSmits: yeah
MSmits: it's a poor questionnaire
PatrickMcGinnisII: anyone without an avatar should lose trueskill pts
Astrobytes: Highly unscientific.
MSmits: btw, I do this professionally, I design several of these a year
slamo: ** goes to add an avatar
Astrobytes: Peers would give bad reviews.
Illedan: PatrickMcGinnisII, CG should generate images based on Nicks..
Astrobytes: hahaha
MSmits: I would get the same avatar :P
PatrickMcGinnisII: automatonIlledan generate my avatar
Illedan: Maybe that is my next project xD
UndercoverToad: how CG surveys and the knowledge of the outcome feel like https://www.youtube.com/watch?v=0maYbn8ED-A&ab_channel=delukxz
Astrobytes: omg
solistice: could someone try and explain me how simming works? Without heuristics, that is?
UndercoverToad: you generate all possible moves and resulting boards
PatrickMcGinnisII: solistice just apply moves by you and your opponent and eval the result
solistice: doesnt eval mean heuristics?
UndercoverToad: instead of trying to find an action that you like, you rate the outcome of each action
solistice: since you can never sim all moves?
UndercoverToad: eval = rating the outcome
solistice: maybe I just got my terms wrong
Astrobytes: Yes, heuristics are used in the evaluation function
Astrobytes: Also perhaps in pruning moves
MSmits: solistice when you do a search, you somehow navigate a tree of gamestates. At various points in this tree you may want to evaluate the gamestate
solistice: so minimax = simming?
Astrobytes: Any search algorithm means you have to simulate
Astrobytes: Looking ahead by any number of turns is simulation. Search is separate.
MSmits: yes in any algorithm for a game where you work with a search tree you will be simulating something
solistice: cool cool, then I got it right
PatrickMcGinnisII: not gonna make it out of silver, but whoever I pushed out..yourwelcome
MSmits: minimax is not simming though
solistice: huh wait
MSmits: minimax is the search type, the fact that you need to simulate things is a byproduct
Astrobytes: Simming is just simulating.
solistice: okaaaay, got it!
MSmits: you can also simulate without a search
Illedan: Siming is the act of applying an action to the Environment and updating the Environment based on the action.
Astrobytes: ^
MSmits: just try different actions to see what happens
MSmits: Illedan nice definition
MSmits: except when you say environment you usually also have agents. Those agents also need updates
Illedan: Those are parts of the environment
MSmits: allright then
Illedan: and those are usually the ones doing the action
Astrobytes: ^
solistice: maybe stupid question then: how else could you do contests like this? Just look at possible actions and chose according to that, regardless of what outcome could be?
MSmits: you could pick actions according to some rule
MSmits: without even seeing what the actions accomplish exactly
Westicles: There's a stimming joke in here somewhere
solistice: thanks MSmits!
MSmits: if (I can afford to grow a tree to size 3) do so
slamo: solstice: you can code in rules that optimize towards something you think is important
slamo: without having to check 1000s of states to find the optimal
Astrobytes: I believe the correct terms are reflex vs model-based agents
Astrobytes: There are other types but for the sake of simplicity.
UndercoverToad: "how else could you do contests like this?" there are detailed writeups for previous contests. search for "feedback and strategies" on the forum
MSmits: people using many different approaches in those
MSmits: some doing quite well with simple programs
slamo: I need to practice my simming/search for next contest so that I can try for top spots
jrke: slamo you are 22 without sim?
MSmits: slamo it might be a while before you search better than your heuristics, since you are obviously quite good at those
Astrobytes: That's contest-specific, not all contests require it. Though it's certainly useful.
MSmits: the rest of CG requires search very often
MSmits: especially simple board games
Astrobytes: Ohhhh yes.
UndercoverToad: this contest is pretty search heavy in my opinion (as well as the last one with the witches)
slamo: yes 22 without sim. I optimize for something very specific and it does really well
UndercoverToad: pacman was doable with some if-else to a certain degree
MSmits: personally i feel this one is more heuristic favored than pacman
MSmits: I find it much harder to get a search to do what I want my bot to do here
Astrobytes: Yes, heuristics can go far here but search-based was my initial opinion and that hasn't changed.
Westicles: slamo, that's impressive
Astrobytes: I think the combination of the two is the approach MSmits
UndercoverToad: and the C++ block at the top confirms this
Astrobytes: Yep.
MSmits: UndercoverToad you forget the 100-200 players below that with beamsearches
UndercoverToad: :D
MSmits: I think I could still write a better heuristic bot than my current search one :(
MSmits: never happened to me in a contest
MSmits: i had a beamsearch in code a la mode :P
UndercoverToad: i see it coming: Sunday evening you get that one idea and WOOSH
MSmits: I guess I see why you would think that, but I have already thought a LOT about this game
MSmits: hopefully you're right
Astrobytes: Perhaps thinking less is better
ZarthaxX: smitooo go legend
ZarthaxX: :(
UndercoverToad: i'm always confident that you will make it even when I doubt about myself
UndercoverToad: that seems bi-directional
MSmits: we'll see what happens
MSmits: my main problem is this: https://www.codingame.com/share-replay/555384096
Magus: Sometimes, you can be top 3 by mistake
MSmits: see how my bot completes trees and is left with too low income near the end?
UndercoverToad: consistent mistake Magus?
MSmits: I think that is what is stopping me
ZarthaxX: Magus what haha
UndercoverToad: i submitted to #3 earlier today and then the same bot was 10th
Magus: UndercoverToad: To be honest, I submitted the wrong file.
ZarthaxX: :rofl:
kovi: top3 in the end?
UndercoverToad: :rofl:
aCat: :D
ZarthaxX: best ending
UndercoverToad: do you have some more files? I would take one
Magus: it was just a local feature, results were bad with brutaltester :D
UndercoverToad: what did you submit? your fantastic bits?
MSmits: lol
Illedan: I think you submitted my file.. Let me take a look
kovi: last 3 contests i have been top3 on recalc and always fell on last recalc
Astrobytes: People seem to be having less luck with brutaltester this time around vs actual submits
Magus: But kovi and jolin are hard to beat
MSmits: yeah, this game for sure has some overfitting
kovi: ^
UndercoverToad: you can only beat kovi in the recalc
kovi: overfit: especially when adding opponent prediction
slamo: I was playing with the idea of trying to decide whether to continue to predict or not based on how accurate my predictions are for a current match
kovi: same :)
slamo: well that gives me a little more confidence to try it :)
slamo: at this points just trying to squeeze anything I can out of my hueristics
salmon: is score a win percentage?
UndercoverToad: it's according to the TrueSkill algorithm
salmon: ah, thx
UndercoverToad: score change for wins/losses also depends on the score difference between you and the opponent
UndercoverToad: in rare cases you can even lose a bit of points for a win
salmon: yeah, I'm familiar with algorithm
UndercoverToad: nice
jacek: oO
NinjaDoggy: you can lose points for a win? O.o
xMistySenpai: wow that was easy to advance a league
MSmits: NinjaDoggy this happens when a player is much stronger than the players who are submitting
MSmits: there is a maximum rating you can be ahead
MSmits: i think it's +12 points or something
ClockSort: @ninjadoggy you inspired me to upgrade my MC to MCTS. it looks very promising -- 18 wins, 5 losses vs my old bot so far. Thank you!
ClockSort: it was not easy to write my first MCTS, haha
Illedan: Matches very slow?
Astrobytes: Extremely, yes
ZarthaxX: since beginning of legend
ZarthaxX: :D
Illedan: :(
Illedan: Damn Legend
Illedan: Let me inn
Astrobytes: Oh your weekend bot didn't make it?
Astrobytes: It was hanging in there like a champ for ages
Illedan: Nah, I changed 2 params and try a resub
xMistySenpai: 18/26 battles, wew
Illedan: It was 10th when Legend opened -.-
Astrobytes: ah damn!
UndercoverToad: i'm surprised that legend is still "only" 108 players
Illedan: Let there be 109 :pray:
UndercoverToad: usually it goes up quickly because of ranking randomness
ZarthaxX: boss was a rank 60
ZarthaxX: so maybe there already was randomness
UndercoverToad: so that was teh ..
Nerchio: yeah the idea is that boss was better but ranked worse at first
UndercoverToad: yes
Illedan: hmm
ClockSort: compared to Fall2020, gold is huge, legend is only "large"
Nerchio: and now in gold are people 110+ vs boss rank 60
RoboStac: I think this was different because boss was submitted and ended low, whereas normally they just insert it with an inflated rating so it falls
RoboStac: so this boss gained points after the league opened - silver boss dropped quite quickly
UndercoverToad: that's why it's called Fall contest
UndercoverToad: this one is Spring
Astrobytes: :smirk:
Illedan: I'm as bad on selling tress as I'm at selling stocks when the market crashes -.-
xMistySenpai: sorr for the capsy
jacek: eh https://fuckelonmusk.co/
ClockSort: my MCTS bot, vs my old MC bot: 36 wins, 13 losses, 1 draw. :sunglasses:
ClockSort: I'm now a believer in MCTS
MSmits: mcts on this contes huh
MSmits: surprising
ClockSort: @MSmits I just submitted it. I'll let you know where it lands
Dubluce: Has anyone else's game display seemed to have crashed? Mine's been a grey rectangle starting today
MSmits: does it play out till end of game ClockSort?
MSmits: as a random rollout?
ClockSort: after turn 7 then it rolls out fully.
alchemsti: grey screen -- all the damn time. I do chrome://restart and it's usually better.
MSmits: that's nice, then you can use the endgame scoring
MSmits: instead of some arbitrary eval
ClockSort: i really struggled to make a good eval
ClockSort: "most suns" just isn't cutting it :)
MSmits: no it really doesn't
Dubluce: Thanks for the chrome://restart tip!
MSmits: getting mighty tired of trying to test locally and then getting 5% WR when the bot does just as good on the leaderboard as the previous version
dbdr: that sounds really weird
MSmits: yeah
dbdr: maybe some overfitting? except reversed? >thinking:
dbdr: :thinking:
MSmits: it's overfitting yeah
MSmits: but that's a feature of this game I think
dbdr: underfitting
UndercoverToad: overstarving
Astrobytes: overfitting against himself
Zenoscave: undertale
MSmits: for example, someone can cut you off and take all the nutrients if they start completing just a bit sooner
MSmits: could be 1 param
jacek: overfatting
Astrobytes: undertaking
Zenoscave: don't let this man distract you from the fact that in 1998, The Undertaker threw Mankind off Hell In A Cell, and plummeted 16 ft through an announcer's table.
MSmits: how long have you waited for an opportunity to say this Zenoscave ?
Zenoscave: Years
MSmits: :)
UndercoverToad: since 1998
Astrobytes: lol, I think I'd stopped watching that wrestling a few years previous
Zenoscave: UndercoverToad gets it
UndercoverToad: oh, that's about wrestling
MSmits: ofc, he's the Undertoad
UndercoverToad: sometimes zeno writes something and I have no idea what that means
Zenoscave: it's a copypasta
Astrobytes: Legion of Toad
XeroOl: hi how are y'all doing
Zenoscave: Same thing but when Zeno writes zeno never knows what zeno means
Astrobytes: Hm. Well, my wrestling name is still Ultimate Worrier
Illedan: zenile?
MSmits: :grin:
MSmits: ClockSort looks like your mcts has similar performance to my beamsearch
Lowz: Finally made it to silver! (I know I'm super late lol)
MSmits: grats
Astrobytes: nice one Lowz
UndercoverToad: now you can fight against Patrick
ClockSort: @msmits i expected 1st to 50th Gold... it's underperforming :(
MSmits: :(
xMistySenpai: says i ned to be better ranked than the boss? who's the boss? cause boss 3 has no rank it appears
UndercoverToad: but a score
ClockSort: ooh i think there's a bug in my simulator that said it was so good
Astrobytes: Boss 3?
UndercoverToad: the boss is always at the top of the league
UndercoverToad: those who rank above will leave the league
MSmits: rankless
xMistySenpai: well i find it funny im surrounded by level 5 and 6's
Astrobytes: Which game?
ClockSort: @Astrobytes spring challenge 2021 :D
ClockSort: j/k
xMistySenpai: coders strike back, level 3
Lowz: No new rules/conditions from bronze silver? Is it the same case going from silver to gold?
Zenoscave: Yes Lowz
ClockSort: @MSmits ok it's doing better now, 200th gold and climbing
Lowz: :thumbsup_tone3:
Astrobytes: where were you at before the submit ClockSort?
ClockSort: 140th gold :P
Astrobytes: Ah :D
ClockSort: ok there is no doubt that the new bot is better
ClockSort: i think resubmits have a hard time climbing to the level that a 24-hour-old bot is at
ClockSort: is there a way that people test their new versions against their old? I've heard rumor of something called a brutaltester?
geppoz: y, but still not working for me
geppoz: it exits at first move
geppoz: as if my bots aren't giving output :(
geppoz: but I see their stderr in log of the first thinking, so they are running
Nerchio: you probably get timeouts which i had problems with too
Nerchio: usually need to make time longer in the referee
Nerchio: but thats why i kinda just run games in the referee not in brutaltester
geppoz: that happens also launching a single game
geppoz: without brutaltester
ClockSort: @msmits 100% battles complete. it landed at #87 gold. so it was an improvement after all.
7amasa: Anyone in legend with just heuristics?
ClockSort: anyone in top 3 with just heuristics?
MSmits: nice
DomiKo: 7amasa not me but yes
7amasa: thats pretty cool, thanks
ZarthaxX: ClockSort simultaneous mcts?
Magus: ClockSort: according to the time used by opponents, no one in top 5 is just with heuristics
Magus: Or maybe they used an heuristic that takes 100ms to return a result
Wontonimo: ( i'll add wait(.98) to my heuristic to make it seem like a sim )
Westicles: slamo at 24 probably the highest
Wontonimo: no
Wontonimo: (not no to you Westicles, no to my comment)
Magus: I can assure you that I'm not with just heuristics :D
RoboStac: theres a perl user at 19 who probably isn't a sim
Michael_Howard: Roast my bot please! Can someone tell me specifically what it's doing so horribly wrong? https://www.codingame.com/replay/555462322
Michael_Howard: I've had my head in technical details so much I've lost sight of the fundamentals.
Michael_Howard: Seems to come down to falling behind in sun earnings in mid game.
MSmits: poor seeding from frame 28
MSmits: next to your own trees
Noyotens: https://www.codingame.com/replay/555467971
RoboStac: you keep up pretty well on sun until day 12. The start of day 12 is horrible for you (5 sun vs 20 for him)
Noyotens: why my function work just in first round
RoboStac: and then you let him claim a lot of nutrient bonuses but still stay behind / equal on sun per day
Michael_Howard: MSmits thanks, yeah that's messed up.
Michael_Howard: RoboStac yeah he completes more because he's just building more because he gets more sun. Seems to be winning the shadow war but I'm not sure why.
Michael_Howard: Thanks.
Illedan: Shadows is the fow of this game :O
RoboStac: yeah, you basically just lose on start of day 12(frame 67) due to shadows
dbf: how are you able to catch an issue in replay in such details, I'm watching games and still can't figure out who is leading now and why...
Astrobytes: dbf: debug mode?
MSmits: poor seeding is easy to see unless it's poor because of shadows
RoboStac: downloaded the replay json and printed all the strings with 'collected x sun points' and then went to look at the days where there was a big difference
MSmits: seems like i have 50% vs boss, but I cant get to him :P
Illedan: Finally some chance
MSmits: nice one Illy, you're gonna make it
MSmits: if not in this life, then the next
MSmits: i mean submit, not life
Nerchio: :thinking:
Illedan: Should work and I can start on my new thing in peace
MSmits: your new thing?
MSmits: is this a contest thing or are you dropping the contest after legend>?
Illedan: Next contest algo
Illedan: this GA is not kicking it
MSmits: it's kicking the bucket
MSmits: my current submit won first 16 games
Smelty: yes lets go 1224/1292 in gold
MSmits: hope it's not a fluke
Smelty: lol
MSmits: lost 17th :(
Smelty: F
Magus: (I'm still amazed when I see Nerchio in a codingame contest .... :D )
Nerchio: :nerd:
Nerchio: its like people can do more than 1 thing in life :D
Illedan: ^
Illedan: Like I can drink beer and code
Astrobytes: I can drink beer and code. Very well in fact. I just never use that code.
theycallmedavid: Well if you already drank it
reCurse: Something something ballmer peak
Astrobytes: ^
alchemsti: ooh, iledan you are above the gold boss, I see
xMistySenpai: buncha moderators dang
Illedan: Correct
Illedan: Lose streak inc :tada:
PatrickMcGinnisII: on the cusp of gold
PatrickMcGinnisII: smh
Astrobytes: I'll give you a tentative 'looking good' on that submit Illedan
Chainman: Can't sleep till beat bossooot
Marchete: congrats ille
ClockSort: i can beat the boss 1v1 most of the time, but can't reach him :(
Michael_Howard: That means you're playing him too much.
Michael_Howard: You're overfitting your strategy.
Michael_Howard: Practice on other high-ups.
PatrickMcGinnisII: .08 ... smh
PatrickMcGinnisII: .04
Illedan: I guess allowing to use Seeds after round 14 helps :D
PatrickMcGinnisII: promoted, yeah!
ClockSort: congrats!!
Astrobytes: Illedan: you didn't allow seeds after round 14?
PatrickMcGinnisII: Illedan goes legend i c
Illedan: Nope
Illedan: Now I only allow to plant if there is 0 lvl 0 trees in play
Astrobytes: Seems sensible
PatrickMcGinnisII: free seeds
PatrickMcGinnisII: yup
jacek: round = day?
Astrobytes: yeah
Illedan: Ye
Astrobytes: Turn on debug mode, it's what they call them
Illedan: (╯°□°)╯︵ ┻━┻
Illedan: So many losses
gameJammer10: Ive lost so many times
BrunoFelthes: what is the most important thing to win gold boss?
Illedan: Get the most points?
Illedan: Sun is about 33% as important
BrunoFelthes: but, get more sun points at the start is important?
Illedan: Get the most possible income as fast as possible
Illedan: and I dont allow any selling before round 12
lowzhao: Can we make more than 1 move in an iteration?
struct: no
dbf: depends on your definition of 'iteration'
lowzhao: because i see that the opponent can COMPLETE so many trees
lowzhao: what is the format of doing this?
lowzhao: print multiple lines?
jacek: print one action per loop iteration
jacek: the day isnt over until both players are waiting
pmor: 1 day = 1 round. There are multiple turns per round.
Astrobytes: ^
lowzhao: how to complete multiple trees at once?
jacek: he doesnt do 'at once'
lowzhao: oh
lowzhao: if you wait you loses the chance to play that round?
jacek: yes
Illedan: struct, you dragged me down :(
struct: sorry :(
lowzhao: thank you!
MSmits: drag me up
ZarthaxX: gogo structo
ZarthaxX: and Illedan :*
Illedan: 1 hour+ submit just for a broken dream
struct: lol
MSmits: maybe when you go to bed, you're legend when you wake up
Illedan: Don't give me hopes
struct: just resubmit :p
dbf: just setup a resubmit script once an hour
Illedan: And resub on 95 % every time?
struct: :pray:
struct: no battles vs the boss...
MSmits: I'm rank 24 now, just short of getting battles with it
MSmits: 22
MSmits: 19
MSmits: is it just me or do most battles seem really close
struct: (╯°□°)╯︵ ┻━┻
MSmits: vs boss, but also in top of gold
struct: I lost vs him
Illedan: (╯°□°)╯︵ ┻━┻
Illedan: I'll just wait here for struct to leave the building
struct: .05 away from not deleting
struct: :/
MSmits: you should just stay there struct
elderlybeginner: do you consider amount of neighors when seeding?
MSmits: yay
MSmits: it happened struct
struct: its done
struct: Thanks
struct: I think its my first legend on a contest
Scarfield: :muscle: !
MSmits: really wow, grats!
MSmits: first of many
Illedan: 0.03 :scream:
struct: thanks
struct: you got this Illedan
MSmits: it could be worse Illedan, it could be smaller than 0.01
Illedan: You won me 7!! times
struct: lol
ZarthaxX: lol
Illedan: Let's not go down that path MSmits. Don't want to open wounds
ZarthaxX: GZZ STRUCTTTT
Illedan: :D
MSmits: :)
struct: thanks
Illedan: FINALLY
jacek: struttt?
ZarthaxX: GZZZ Illedan
Illedan: Cya next contest
MSmits: grats Illedan
ZarthaxX: bai
Illedan: Jk, no sleep before above euler
MSmits: I think i am just gonna push everyone out of gold so i can get some games vs boss
struct: MSmits you also improved a lot on last few days
Marchete: congrats
MSmits: mostly yesterday, today, a little yes
struct: now you win Illedan
struct: lol
struct: grats
MSmits: but mostly by just randomly coding stuff and hope it sticks
Illedan: Stay down struct :P
MSmits: it's like this. Hmm somehow my bot likes to complete a whole bunch of trees at once. What to change to avoid this? It's so difficult to solve that sort of thing with a search eval
WolfDarrigan: what's wrong with completing them all at once?
MSmits: because then you have no income
MSmits: i mean like 5 days before the end
MSmits: or more
WolfDarrigan: oh, it is doing it early in the game, not at the end
MSmits: well not early
MSmits: it's just better to gradually complete them
MSmits: so you keep a steady income
elderlybeginner: if you are using scoring function you can add a factor for amount of 3 size trees
WolfDarrigan: I include sun in my scoring of a board state
MSmits: I do too
WolfDarrigan: hmm
MSmits: elderlybeginner sure, i have stuff like that
MSmits: it's just hard to tweak
Rium: when debugging my code with console.error.writeline(), is there any way to get all the messages written? Currently it skips some in the middle during execution.
elderlybeginner: then change the factors and add a turn to complete, I cut more at the end
Scarfield: penalty on points gained above some threshold?
MSmits: Scarfield, i thought of that but seems messy, then you need to take into account when it was gained
MSmits: you also still need the score for endgame eval
Scarfield: ye
MSmits: also, as bots get better, it gets harder to actually see whats going wrong
MSmits: you fix one assumed error and cause another
ddreams: gz struct
MSmits: I remember being in this situation in ooc
MSmits: having a hard time getting out of gold
struct: thanks
MSmits: but there i had a todo list, every feature i added made bot better. Here I am grasping at straws
elderlybeginner: any idea for future shadow in scoring function for complete and grow?
MSmits: I have that
MSmits: calculate future sun income
MSmits: till end of game
MSmits: oh, i should try a decay
Illedan: I have reversed decay :D
ddreams: I've spent hours trying to make decay work... can't manage to improve
MSmits: Illedan huh? Why?
elderlybeginner: it's not static, so compuing till the end is useless
Enknable: I think you gotta create a [4*completedTrees - nextSunPoints(completedTrees)]
ddreams: maybe I should do that
Enknable: or something lol
Scarfield: points gained later means more suns to spend i suppose
Illedan: Nice to see other Norweigans around ddreams :)
ddreams: elderlybeginner definitely not useless
MSmits: I keep going up the leaderboard from other players submitting
ddreams: yeah, I you're in the Oslo area too?
MSmits: 8 now
pardouin: 21 python in legend :o
Illedan: Yeah
pardouin: most of them only with heuristics or very light simu
pardouin: I'm envious :'(
MSmits: I think it's cool that many approaches work in this game
pardouin: my heuristic "clever ideas" all fail miserably4
MSmits: just wish I knew what i was doing :)
MSmits: same pardouin
Westicles: Just read the chat logs for the last week, it is all clever and helpful analysis
elderlybeginner: I guess that the main difficulty in this contest is to find what's not working. I cannot find mistakes looking into board
MSmits: yea
MSmits: but also fixing the things that are not working :)
OlivierRivoyre: Since I fix a computation error on my program, it works worst ;(
MSmits: thats really annoying, happens rarely, but it's the worst thing
MSmits: being forced to keep a bug
elderlybeginner: any idea what's going wrong? I use only scoring function and no future shadow implemented https://www.codingame.com/replay/555515215
PatrickMcGinnisII: MSmits bewats me by like 6 pnts, but hes at top of leaderboard and i'm at bottom, this contest is close...like every little detail matters, but every detail cost time
PatrickMcGinnisII: bewats=beats
Astrobytes: I prefer bewat
reCurse: berates?
PatrickMcGinnisII: webats
MSmits: yeah it's all quite close
MSmits: elderlybeginner it's mostly shadows i think
MSmits: somehow he gets more suns
MSmits: but thats hard to spot
MSmits: so you need shadow prediction and such
PatrickMcGinnisII: I calculate who to grow by the current potential over the next min(23-days,6)
Scarfield: AstroBewats
PatrickMcGinnisII: w/ shadows
MSmits: yeah those are nice heuristics PatrickMcGinnisII, but hard to use in a search
MSmits: because a heuristic to choose an action is different from one to eval a state
Illedan: How is barely beating Gold boss top 40 in Legend -.-
Illedan: (╯°□°)╯︵ ┻━┻
elderlybeginner: you put "shadow points" in scoring every action?
MSmits: Illedan it's always like that
PatrickMcGinnisII: it's how I prune grows in midgame
PatrickMcGinnisII: seeds is a different matter
ClockSort: what do i put at the top of my c++ program in order to make it very fast? something like
o3 unroll loops
MindController: #pragma GCC optimize("-O3,inline,omit-frame-pointer,unroll-loops")
MSmits: elderlybeginner i dont score actions, i score states, but it's a search so thats different
Marchete: let's go JRFerguson!
ClockSort: @MindController thanks. do you know if htat works for MSVC++ too?
Zenoscave: to legend?
Illedan: Marchete close too?
reCurse: No, you control the compiler options in MSVC
Astrobytes: ClockSort: You set those in your project settings in MSVC
ClockSort: thanks
Astrobytes: ah, recurse got there already
reCurse: It's ok I still need my translator
ClockSort: i am using msvc++ locally and the differences are annoying :D
Astrobytes: And set to release
elderlybeginner: MSmith I'm purely on logic and evaluation of each action with minimal code
reCurse: Your hardware may not match CG's at all
Astrobytes: reCurse :D
MSmits: yes i know, it's quite effective elderlybeginner
ClockSort: I am seeing 3x speed improvement over not-using-pragma. is that typical?
ClockSort: (on CG)
reCurse: Yes
ClockSort: :O
Zenoscave: yup
ClockSort: hello Legend :D
Astrobytes: 100% yes
ClockSort: (maybe)
Astrobytes: It's compiled with no optimisations
Zenoscave: clock sort let me know when you submit. I want to test against
ClockSort: submitting now
Westicles: 10 minutes later... I made my code 3x faster and I dropped 1000 places
ClockSort: same bot that was #100 gold after a couple hours, but now with #pragma
MSmits: it's still mcts ClockSort?
ClockSort: yes, just 9000 rollouts from round 9 to end-of-game though
MSmits: wow
MSmits: so few!
reCurse: totoro search
pardouin: it seems that gold boss was actually a #30 player but his first run was especially bad and ~100 players made the cut
pardouin: so it's not surprising that people can jump form gold to top 30
pardouin: from*
abenner: are bitboards worth it for this game
ClockSort: what do you mean, "totoro search"
MSmits: it's mostly that gold boss tends to get boosted after a while in gold league
MSmits: meaning it takes more effort to pass it
MSmits: then when you finally manage it, your bot is strong
Noyotens: https://www.codingame.com/share-replay/555532292
reCurse: Whoever wins should name their algo totoro search
pardouin: ^^
Zenoscave: But beam search already has a name
Zenoscave: ;)
Zenoscave: not that beam will win ...
ClockSort: thanks for the help guys, let's see how 3x speed improvement helps MCTS.
Illedan: Beam wont win
ClockSort: seems like going from 3000 rollouts to 9000 would be really valuable since it's a low number either way
BrunoFelthes: what are you using illedan?
Illedan: GA
alchemsti: Why do you say that? I think beam would win
Zenoscave: Really ille?
ZarthaxX: when did agad e appear?
alchemsti: But it would be a fairly narrow one with a fairly expensive eval
Illedan: Ye
BrunoFelthes: wow...
BrunoFelthes: for you and your opponent?
Illedan: SGA to be precice..
Illedan: mhm
BrunoFelthes: but, when you change a "gene", you can invalidate the role game... no?
Illedan: Hence I evolve them at the same time
Zenoscave: Not if you don't make that a valid gene change ;)
PatrickMcGinnisII: elderlybeginner looks like u cut first tree too early, when cost to grow tree of size 3 > 10, then cut is great, but the 1 sun you are saving isn't worth it, cause your losing 9 sun over next 3 days... wtf do i know
actualCoderTrevor: Illedan what's the "S" in SGA?
Illedan: simultaneous
ClockSort: SuperDuper
actualCoderTrevor: ohhh thanks
BrunoFelthes: I'm really curious how to do it...
MSmits: Illedan that's like smitsimax isnt it?
PatrickMcGinnisII: i thought u said SCA Society for Creative Anachronism (SCA)
Illedan: Yeah, just worse and faster to write :D
actualCoderTrevor: Illedan if you don't mind my asking how do you enforce the rules with GA? Just force your algorithm to choose one of the available moves with modulo?
PatrickMcGinnisII: who did an NN?
Illedan: Yeah
Astrobytes: Two contests in a row Illedan!
struct: true AI will win
BrunoFelthes: You have a population, play a game until the end, cross, 2 good choices, if it is not valid, you discard it?
Illedan: It is never invalid
Illedan: 2 days x 4 actions. Each action a double Precalc possible actions and do val*actions to select. If not valid => "wait"
Westicles: GAimax w/ Prune Array is all you need
MSmits: Illedan i thought it was depth 4?
Zenoscave: PruneArrays are op
BrunoFelthes: it is only 2 days?
Illedan: My search yeah
BrunoFelthes: OMG
BrunoFelthes: and you are legend with 2 days search
BrunoFelthes: My search is a crap
MSmits: there are legend with 0 days search
struct: meanwhile im at 24 days
BrunoFelthes: really?
Illedan: Guess it took them a day to write the search?
MSmits: yeah many heuristic bots
BrunoFelthes: but, i really dont know how to eval what is the best board only 2 days after
BrunoFelthes: the board with the best sun?
Illedan: Least overlapping sun
BrunoFelthes: considering the first 15 turns
MindController: Incoming sun generation imo
BrunoFelthes: I will try it
Astrobytes: Yeah, she really killed it in '78
Astrobytes: woops
Astrobytes: wrong window
MindController: Also does anyone know why is there so much fights in gold?
MindController: 5h ago 90 fights were full sumbin
ZarthaxX: Astrobytes LOL
MindController: Now im 85 fights in only at 65%
actualCoderTrevor: Woah but now my curiosity is piqued. Who liked what in '78??
Astrobytes: Donna Jean Godchaux
actualCoderTrevor: I sense I'll never have the answer
actualCoderTrevor: Oh I have half the answer
Zenoscave: you're a dead head
Astrobytes: Sang great with the Grateful Dead that year
Westicles: PMs about how much you Thatcher?
Astrobytes: Yes
Westicles: love
actualCoderTrevor: Okay lol thanks
Astrobytes: https://www.youtube.com/watch?v=MnVCxqBFawQ
Zenoscave: cool
actualCoderTrevor: I'm grateful to have my answer
Zenoscave: If I'm doing '78 I'm doing dire straits
Westicles: Astrobytes the gov't told us we can all toss our masks, and these people are still driving around alone with masks on
Astrobytes: And?
Westicles: I'm living with a bunch of crazy people?
Astrobytes: Zenoscave: Fair. I love the dead from beginning to about 77 mostly, but there's a lot of good stuff up to about '84
actualCoderTrevor: The gov't said that if you're vaccinated, which only 40% of people are, and there's research to suggest if you're immunosuppressed the vaccines are less effective
Zenoscave: But we all rest in P.Funk right astro? ;)
Astrobytes: 100%
lastshamp: :poop:
Astrobytes: How anyone can claim this music as bad however is beyond me
Noyotens: :rage::rage::rage:
Zenoscave: I mean it's good, but it isn't N*SYNC good /s
SirLoxley: Does anybody know the stack size of C++ runtimes in codinggame? Do I get the full 700MB?
Counterbalance: stack is a few mb
Zenoscave: I doubt it's that large SirLoxley
Astrobytes: you can check it via bash
Counterbalance: heap = 768mb - stack - program size
SirLoxley: darn. I wanted to avoid putting stuff on the heap
Marchete: you can change stack on c++
Marchete: via code
Marchete: based on a true history
xMistySenpai: im disgusted with how most if not all example codes use var
xMistySenpai: let exists as a viable replacement
Marchete: https://github.com/marchete/RN_Explorer/blob/main/src/solorunner/RN_ExploDiv_7.cpp#L4703-L4724
JSboss: ive got no problem with Var, it's the "const" default in CoC that really grinds my gears
JSboss: because then if you need to change or increment an input in fastest mode, well gg
xMistySenpai: var is deprecated and garbage towards the engine'
JSboss: source lol ?
Stormalix: JSboss ikrr!
JSboss: yes it requires hoisting but it is also backwards compatability ensuring and deffo not deprecated
Astrobytes: Zenoscave: fungusuas goodasufugu seems remarkably on that PF wavelength
xMistySenpai: if you need backwards compatibility
xMistySenpai: then why use const
SirLoxley: wow. Someone wrote an essay on a coding-game problem. My respect
xMistySenpai: kinda lopsided
JSboss: i am arguing against the use of const as a default in CoC, not the opposite
Zenoscave: astro link? Can't find
Astrobytes: https://www.youtube.com/watch?v=MnVCxqBFawQ
Astrobytes: scroll up in the chat
xMistySenpai: ik but if const then why not let
xMistySenpai: thats my opinion
JSboss: ah yea i agree let would be optimal,
actualCoderTrevor: You're both talking about the boilerplate code when you start a new contest / puzzle?
JSboss: yes exactly, in JS
Maliamnon: First gold this time around. Might try to crack top 500 this weekend if the weather isn't too perfect
actualCoderTrevor: I guess that could be annoying in CoC
Westicles: You should try c++. By the time you tokenize the strings everyone else is gone
JSboss: :D
Astrobytes: heh heh not wrong
Zenoscave: or ruby and you can try winning more often
Zenoscave: or perl depending
JSboss: yes, js+ruby = top 20 CoC :)
JSboss: perl is too much for me
Astrobytes: cryptic ruby is harder to read than cryptic perl imo
Zenoscave: lol I write some real cryptic ruby
MSmits: so ruby is a natural obfuscation language?
JSboss: $_ and ~/$/ are favs
Zenoscave: chmod 333 *.rb
JSboss: also all this
JSboss: https://www.zenspider.com/ruby/quickref.html
Astrobytes: But can you write poetry in rb
MSmits: better use shakespear for that
JSboss: sorry screwed up the link
JSboss: https://www.zenspider.com/ruby/quickref.html#pseudo-variables this helped
reCurse: That guy writing a bot in perl is running into real risks of being disqualified for obfuscation
Astrobytes: MSmits you never read perl poetry?
Zenoscave: Is it actual perl or a wrapper?
reCurse: (or person, my bad)
MSmits: nope, i know you dont think I have a life, but, mmh nvm, show me
NinjaDoggy: oh my...
NinjaDoggy: I just found a tragic bug :(
Astrobytes: don't make me letmegooglethat for you
ZarthaxX: wtf NinjaDoggy lol
MSmits: aww right, i'll do it myself
NinjaDoggy: I'm running my new bot locally and it wins 70%+ against old bot
Queuebee: what do the scores signify in the leaderboard?
ZarthaxX: :D
Zenoscave: lmgtfy.com/?q=perl+poetry
ClockSort: how can you have a tragic bug and already be so strong?
ZarthaxX: what bug
NinjaDoggy: I run it on CG and it's < 40% ... wtf?
NinjaDoggy: turns out locally
NinjaDoggy: I don't generate sun for day 0
reCurse: Some legend says vorgons use perl as their language to write every program
NinjaDoggy: so it's basically playing with 1 less day...
NinjaDoggy: thus the constants are inproperly optimized
NinjaDoggy: i ran it for the whole night too T_T
ClockSort: hey, i might have that problem too lol
natofp: hey guys how do you test your bots locally?
NinjaDoggy: I wrote my own arena thing
NinjaDoggy: but brutal tester is pretty popular
reCurse: Did I say vorgon, I meant vogon. Geez.
reCurse: Uncreative writers I swear
natofp: can you elaborate? can i download this brutal tester from somewhere?
NinjaDoggy: um... I've never used it personally so someone else can probably help you more
NinjaDoggy: I can point you to the forums though :D
Zenoscave: https://lmgtfy.app/?q=codingame+brutaltester
Zenoscave: natofp
Zenoscave: first non-ad
NinjaDoggy: https://github.com/dreignier/cg-brutaltester
Zenoscave: https://github.com/dreignier/cg-brutaltester
Zenoscave: awe was about to not be snarky
reCurse: Not sure if it's been posted but you can find it at https://github.com/dreignier/cg-brutaltester
Zenoscave: Thx NinjaDoggy :)
NinjaDoggy: I tried your visualization and it worked :)
NinjaDoggy: first non ad :)
Nerchio: somebody explain why my rank doesnt fall
Nerchio: https://imgur.com/a/B7tq9Dw
Nerchio: when i have a match list like this
Zenoscave: TrueSkill *waves hands magically*
NinjaDoggy: lol
reCurse: The point curve is pretty stiff
reCurse: So you don't lose much from those
ClockSort: can you select agents from outside your league?
Westicles: ...ranking system developed by Microsoft
reCurse: Oh right, developed by Micro$$$oft, therefore it's garbage hahahahaaaaa...
reCurse: Never gets old
Nerchio: i see maybe i win vs the guys around my rank but lose vs everyone above
NinjaDoggy: lol
Zenoscave: I think trueskill is an improvement on many ranking system for it's purpose
Astrobytes: It's a meme that will sadly never die I fear reCurse
reCurse: Nerchio: Seems like that's what's happening, also top guys tend to submit a lot so they are overrepresented
reCurse: Top persons geez, gonna get fired at this rate
Astrobytes: :P
Westicles: The one girl here appreciates the effort, I'm sure
Zenoscave: fired from ubisoft?
reCurse: I dunno, maybe
Westicles: Except she got banned...
Zenoscave: * <--- the point
o <--- My head
reCurse: Worse has happened over less
Astrobytes: There are other girls too Westicles but you don't know them
Westicles: oh right, orange vixen
Astrobytes: Many others.
actualCoderTrevor: #1 in gold is "Jessie" with a Princess Peach avatar, though I suppose that's not definitive
reCurse: Did you just assume something
Zenoscave: Several things I believe
**actualCoderTrevor backpedals
Astrobytes: /cancel
**Zenoscave slaps Astrobytes around a bit with a large fishbot
Zenoscave: idk felt fitting
Astrobytes: What did I do?
Zenoscave: one
reCurse: Slap first and find something later
Zenoscave: Ah yes, the american aggressive greeting
Astrobytes: Do one Zeno! (I find it amusing how you've totally picked up this phrase btw)
PatrickMcGinnisII: Here, hold my beer
Westicles: They changed the definition of guy to be gender neutral, so you are okay
reCurse: That one flew over my head
Zenoscave: (I lvoe the phrase)
Zenoscave: I love it too
Astrobytes: :D
Westicles: used in plural to refer to the members of a group regardless of sex
Zenoscave: I that what was dudes
reCurse: Is it now?
reCurse: Is it also something I want to risk?
Zenoscave: reCurse not used by all.
Lysk: yeah that's all good until you ask "how many dudes/guys you slept with?" suddenly not so neutral for many
reCurse: lol
Zenoscave: only for direct reference preceeded by "you" i.e. What are you guys doing?
Zenoscave: y'all works better
reCurse: Aaaand that's why I'll stick to person
Zenoscave: ^
Astrobytes: we have 'youse'
Astrobytes: Always have
Zenoscave: how the hell do you pronounce 'youse'
Westicles: I used broads or chicks to be extra careful
Astrobytes: Terrible use of language but youse says it right?
Lysk: Astrobytes, that depends where in the usa you are
reCurse: That reads as dirty as it sounds like
Astrobytes: Scotland Lysk, lol. Said as 'yooz'
Astrobytes: it's "you's"
Zenoscave: Ah
Lysk: haha nice for the us there are so many versions: https://www.mentalfloss.com/article/12916/yall-youse-8-english-ways-make-you-plural
MSmits: Yousa might'n be sayin dat. Ye gods, whatta meesa sayin'?
Zenoscave: understood
reCurse: Is that scottish or jar jar
MSmits: jar jar :)
Lysk: lol
Smelty: combo?
Astrobytes: Scottish. Stop denying your heritage Highlander
Astrobytes: :P
Zenoscave: OUTLANDER
Westicles: Wee, sleekit, cow'rin, tim'rous beastie, O, what a panic's in thy breastie!
Astrobytes: MSmits: are you ill?
Astrobytes: Ah, tae a moose
Astrobytes: I always liked the puddock tae
MSmits: nope
Zenoscave: I've got nothing to add to weird soundin english
Zenoscave: I live in the Man'ains
Astrobytes: For clarity: Tae a Moose (To a Mouse) and The Puddock (The Frog) are both Robert Burns poems
alchemsti: Wee sleekit tim'rus Beastie
alchemsti: Oh what a panic's in thy breastie
Astrobytes: Who is somehow the Scottish national poet thing because .... a few good songs and poems, massively drunken, womanising arse though
alchemsti: I think he was one of the first to write poetry in commonly spoken Scottish
Zenoscave: TIL
alchemsti: Random trivia -- "Of Mice and Men" (Steinbeck, also a movie)
Astrobytes: I walked along a path somewhere up near Pitlochry (I think) and there was a stone sign in a bush that said "Robert Burns slept here"
alchemsti: is from that poem
alchemsti: of a mouse, whose house gets destroyed by a plow
alchemsti: with he line
alchemsti: The best laid schemes o' mice and men
Astrobytes: gang aft awry
PatrickMcGinnisII: he found ransomware in the bush and made $5M
Astrobytes: *agley
Astrobytes: same word
Zenoscave: who did PatrickMcGinnisII?
alchemsti: As you can see, I don't want to work on my stupid program
alchemsti: because it's broken in multiple ways
PatrickMcGinnisII: whoever, watching news about rusky pipeline
Lysk: between pipeline with no cyber security and social security & tax written in kobol, so many things can go wrong
Astrobytes: More concerned about a certain Middle Eastern conflict tbh, but still tweaking my bot
Astrobytes: PatrickMcGinnisII
Zenoscave: I need to find a reliable newsource. I don't have cable/tv
PatrickMcGinnisII: Gaza doesn't affect me much, but no diesel at gas stations 'cause every1 freaked out
Lysk: reddit is a very serious source
Westicles: waiting for the /s
Nerchio: a lot of discussion with chinese bots
Nerchio: sounds fun
PatrickMcGinnisII: "/r chubbychicks doesn't count"
Astrobytes: I generally use theguardian.com, opinion articles are from all sides of anything, sources are linked - if not you email them and get them
NinjaDoggy: I fixed my arena bug but my new bot(which performs worse) still beats my new bot 2:1 locally :(
CharmyRosewolf: How did I open up the game and suddenly I'm in gold :scream:
Zenoscave: good to know Astrobytes!
NinjaDoggy: guess it's time to look into brutal tester or something for sanity checking
PatrickMcGinnisII: I would trust you guys from other countries than my US news
Zenoscave: ^^^
NinjaDoggy: Zenoscave brutal tester works out of the box with this contest right?
Zenoscave: Nope. use magu_s fork of my fork
Zenoscave: https://github.com/dreignier/SpringChallenge2021
NinjaDoggy: ok thanks!
Zenoscave: mvn package. and you're good to go
Astrobytes: Zenoscave: It's a liberal-leaning (in the British sense - well the past British sense compared to right now) paper but takes and publishes articles from all side, I just repeated myself but I will console myself with nice music
alchemsti: So just resubmitted code from like 3 days ago because everything I've done since then has been broken or bad.
alchemsti: Such a shitty feeling
Astrobytes: Standard CG contest stuff, don't worry
Zenoscave: alchemsti I think I've got between 100+ submits maybe 10 different versions
MSmits: how do you target boss again with cg bench?>
MSmits: it's more convenient than ide anyways
Astrobytes: -1 id?
MSmits: i thought so, but not sure
reCurse: Careful not to hit limits
MSmits: i set 60 s
Astrobytes: been a while since I did that, you have the same limit anyway though so why bother
alchemsti: I don't mind so much the many submits, it's the frustration of having bugs / things not behaving as they should. I guess it's a lesson in not cutting corners. I have some basic verification tests, but should have more, I think.
MSmits: Astrobytes because it counts for me :)
MSmits: so i know wr, even if its poor statistics
Astrobytes: Why bother anyway?
Zenoscave: https://github.com/LSmith-Zenoscave/SpringChallenge2021/releases/download/v1/spring-2021-1.0-SNAPSHOT.jar IF you want to use a brutaltester ref but don't want to compile
alchemsti: Y'all have a good night!
Astrobytes: Sorry, jaded Friday
Astrobytes: There's a 5cm (about 2") mean black spider above my desk. It's been sat there for an hour.
pmor: spiderbro
struct: :scream:
Astrobytes: It seems pretty chill
struct: burn the house
ZarthaxX: it's a spy!
Astrobytes: It looks evil. I don't mind spiders at all but this one looks intimidating even to me.
struct: o.o
MSmits: i'm sure it's ok
MSmits: as long as you stare right at it and dont blink
Westicles: I had one that would rappel down from the ceiling and bite me every night. They ain't all bros
Astrobytes: It was up on the ceiling earlier
struct: nightmare fuel for me :(
Westicles: put on the hazmat suit before bed
Zenoscave: https://www.youtube.com/watch?v=ZvCI-gNK_y4
Astrobytes: Only time I ever had spider bites was when my ex came back from France and was complaining of bites. A few times over at her place and I was the same. Coming home on the subway one morning a very large brown spider comes running out my cardigan sleeve
Zenoscave: yeeesh
Zenoscave: that's terrifying
Astrobytes: Scared the actual bejesus out of several passengers, they stamped their feet - now tell me what did the spider do?
Zenoscave: live
Astrobytes: It ran up my fking leg!
Zenoscave: but instinct is instinct
pmor: ya'll need some wolf spiders in your life
Astrobytes: I've never thrown a spider as far as I did that time
struct: no thanks
Westicles: "It is estimated that there are up to one million spiders per acre of land on earth"
PatrickMcGinnisII: spiders lol
Zenoscave: We have brown recluse and black widows native to where I live
Astrobytes: I really like them. They can be disturbing but they are cool generally.
Astrobytes: Black Widows defo worse than Brown Recluse, though the latter bites can get infected and be pretty shit
PatrickMcGinnisII: I have lots of them, there are good spiders and bad spiders...we have brown recluse and black widows that can mess you up, but more common are the daddy long legs and wolf spiders which kill alot of bugs...I have no bugs other than spiders. Fl is full of bugs...this is mosquito and love bug season. Most of yall r prolly pretty lucky.
Zenoscave: We also have an annual fall tarantula migration
Queuebee: http://chat.codingame.com/pastebin/75e65d60-72c0-41a8-8d46-01f52ef43135
Nerchio: im fine with spiders just not the dangerous ones or fat ones xD
pmor: love bugs need to burn in hell
Zenoscave: Queuebee use 1ul not 1
Zenoscave: signed int vs unsigned long constant
Queuebee: but I need 64 bits from the beginning
Zenoscave: x |= 1ul << 31;
Queuebee: okayyy :O
Queuebee: 1l works too :D
Zenoscave: :+1:
Queuebee: thankyouuuuu :D
Zenoscave: for >> shifts does 1 work?
Zenoscave: 1l*
Queuebee: No clue, I'm not there yet Lol
ZarthaxX: UL or ULL?
ZarthaxX: i always use ULL
ZarthaxX: :thinking:
PatrickMcGinnisII: Queuebee looks like 2s complement, need unsigned long i think
pmor: 64b you would want ull
Queuebee: its c#
ZarthaxX: right
Queuebee: does that exist
Zenoscave: depends on ABI, no? This is above my paygrade
ZarthaxX: haha
Astrobytes: lol
Queuebee: my IDE goes brrrrrrrt on ull
ZarthaxX: f
pmor: c# i don't have much experience with.
pmor: they might do things differently than c/c++
Queuebee: actually Zenoscave using ulong the Conver.ToString(x, 2); breaks
struct: Zenoscave I see that you compiled the referee
Westicles: No telling what they do in C#... you know who came up with that
struct: How do I run it?
Zenoscave: java -jar no flags "should " work
struct: I see, thanks
PatrickMcGinnisII: http://chat.codingame.com/pastebin/3a7babc4-7639-49f8-8886-1bf1ff59572d
Astrobytes: Right. I'm out. I'll listen to the rest of this dead show and put my feet up
cegprakash: damn
Astrobytes: See ya all tomorrow
cegprakash: I get 5000 simulations at depth 1
cegprakash: too bad
ZarthaxX: depth 1?
ZarthaxX: day 1?
cegprakash: yep
cegprakash: day1
ZarthaxX: ah
cegprakash: let me see profiler to see if I can improve performance
ClockSort: 3x speed (pragma O3) made my bot drop 70 ranks. luck, or is there a downside?
Zenoscave: Accuracy of eval?
Zenoscave: Westicles you called it
ZarthaxX: lol
Wontonimo: Legend is up to 115 ... I'm starting to feel left out
cegprakash: my profiler is not collecting any data in visual studio 2017 not sure if I'm doing it right
Wontonimo: can't we all be winners?
ZarthaxX: nope
ZarthaxX: you are a loser wonto, im sorry
cegprakash: this is the report generated by my VS https://ibb.co/9VY6NTy no idea what I'm doing wrong.. does anyone use profiler?
ZarthaxX: legend isnt everything anyway
ZarthaxX: you learned a lot wonto :D
ZarthaxX: and will prob smash me soon
ZarthaxX: :c
Zenoscave: My IDE bot is 2x as slow compared to facing arena bot. Is IDE having issues?
Wontonimo: there is still time for smashing ZarthaxX watch your toes
ZarthaxX: i know
ZarthaxX: and you will prob do
ZarthaxX: i will just delete account before you get me ;)
Wontonimo: Winners never quit, and quitters never win, but those who never win and never quit are idiots
Wontonimo: oh ... just checked your rank ... you can rest easy ZarthaxX, my boots are no wear near your toes
ZarthaxX: my rank is a lie tho
ZarthaxX: legend is messy
struct: ZarthaxX hiding
ZarthaxX: right
ZarthaxX: i have a big fat bot here
ZarthaxX: will reveal it soon (?
XeroOl: hahaha I have completed my profile and got all of the certifications
ZarthaxX: good
Wontonimo: congrats XeroOl !
ZarthaxX: now delete account and do it again
XeroOl: lmao
Wontonimo: prestige
ZarthaxX: the struct way
ZarthaxX: :D
XeroOl: now I have to do all the achievements
Wontonimo: how long did it take you XeroOl ?
XeroOl: is there a way to know how long I've had the account?
Wontonimo: about april 8th
XeroOl: joined on 8th of april, yeah
Wontonimo: 4 u
XeroOl: so little over a month
Wontonimo: well, that's a speed run
Wontonimo: are you unemployed ?
XeroOl: lmao
XeroOl: I'm a student
XeroOl: and online classes suck
Wontonimo: i'm starting to question my abilities
XeroOl: please hire me thanks lol
Wontonimo: (Wonto repeats to himself "we are all winners, we are all winners")
XeroOl: meanwhile, I'm at silver in the competition, and I don't see any good hope of getting highe
XeroOl: ]r
xMistySenpai: range of 4 means a 9 including center, right?
Queuebee: why is everyone always talking about using unsinged thingies, is it faster?
alchemsti: it's generally nicer for bit operations.
XeroOl: how do you guys compute the distances for each tile
alchemsti: E.g. when you right shift signed things, you have to worry about sign extension
Queuebee: hmm
Queuebee: I dont have right shifts yet .__.
Queuebee: I hope it wont be hard to refactor all longs into ulongs when it comes to that
XeroOl: maybe learning rust and writing a sim at the same time is a bad idea
XeroOl: lol
Noyotens: i am dont want win but what is the prize
yyzl: 有人吗
Whiskee: are you ever really really proud of some piece of eval logic and then remove it just to check the performance impact and see that it made no difference whatsoever in the first place
Whiskee: worst feeling every time.
XeroOl: lol
Nerchio: pretty normal i'd say
XeroOl: the secret is that I never actually check performance
XeroOl: I just write code that "feels" fast
XeroOl: :(
reCurse: Secret to what
pmor: I'm still trying to get my valid actions logic performant :(. I haven't even begun to work on eval yet.
XeroOl: lmao I've given up on efficiency at this point
XeroOl: I just want it to work, and be a simulator
XeroOl: and be done before the comp is over
pmor: after day 15 i can't even sim 1 day.
XeroOl: time to look up a tutorial on beam search lol
XeroOl: I've got my sim code "finished" but completely untested
XeroOl: wait, beam search needs a heuristic
pmor: this is beam search :sob:
XeroOl: why does this challenge need so much heuristics !!!!!
XeroOl: I want to just not think today lol
cegprakash: wait wuut
cegprakash: I changed string to enum and I got from 5K sims to 82K sims
Numby: now change to ints gonna go to 150k sims lol
struct: you were using strings?
cegprakash: int is faster than enum? Numby
cegprakash: struct yes for Move types
Numby: I'm not sure for C++ but in java structs are bit heavyweight since they're objects and this can make a difference in some cases
Numby: I've seen Android developers avoid using Enums due to avoid memory bloat
Kukiss: Finally gettin closer to gold :) All evening was trying to make a use from my stored info about shadows
develoore: enums are true about android development
develoore: but in c++ they are basically ints
Numby: can c++ enums act as classes or they're plain enums same as C?
develoore: also unless classes/structs (they are the same thing) contain virtual functions they are pretty much just data containers on steroids (just a few pointers in them)
develoore: enums act like classes
develoore: but at compile time that info is lost
Numby: But I guess the issue is in java generally everything is pointer which is the issue. Like in C++ you can have an array of some class, in java it's all an array of pointers
natofp: Anyone knows how to fix that in brutaltester? Error: 02:47:44,725 ERROR [com.magusgeek.brutaltester.GameThread] Problem with referee output in game1. Output content:WARNING: sun.reflect.Reflection.getCallerClass is not supported. This will impact performance.
develoore: well, it's more about having everything with virtual functions and having their types baked in
develoore: in c++ casting (dynamic cast) is really costy
develoore: in java not that much since the object's type is stored along the object in the memory
develoore: of course if you have a lot of small objects it will make a huge difference
develoore: but these are all premature optimizations and only matter when there's really nothing else one can improve on the algorithm itself :)
Lysk: which version of java are you using?
Numby: Don't think there's a choice. But should be at least java 8 (too lazy to look around the website , this info is somewhere)
Kukiss: probably https://www.codingame.com/faq :)
Zenoscave: They're running offline :)
Zenoscave: not on CG
Zenoscave: natofp that error is safe to ignore. it is due to The reflection library used in the engine. should not effect your games
Zenoscave: sadly it makes a lot of noise
Kukiss: then oops
Noyotens: i deafet the bot 10/10 and my rank is 58 and i am not in silver
Wontonimo: it's not about the bot, it's what between you and the bot. lots of different strats in there
Wontonimo: pick a few people who beat you and try your bot specifically against them
Bozo: Hi, in Bronze mode, what is the Cost for growing a tree from size 3 to 4 ?
Numby: can't grow past 3
Numby: once it's at 3 you can only complete it
pmor: 3 is the largest size, you can only complete the lifecycle for 4 sun points
Bozo: ha sorry
Bozo: thanks
Bozo: my mistake
Wontonimo: such a Bozo mistake
Wontonimo: (sorry, couldn't help it)
Bozo: i know :-D
elderlybeginner: anyone without sim in platinum?
Wontonimo: you mean legend?
elderlybeginner: yes, legend
Wontonimo: i think there are a few, a very few.
elderlybeginner: after gold should be platinum, thou :wink:
Petrify36: Gold -> Platinum -> Diamond -> Master -> Apex Predator
Wontonimo: C -> B -> A -> S
Wontonimo: -> Saitama
NinjaDoggy: where's SS?
reCurse: SSS
CouscousAgha: so close to legend yet so far...
KelvinAndHubbles: yea, I mean I beat a silver player that evauntlly promoted to gold that once saw a higher gold rated player that was close to beating one of the top golden players that is similar in ranking to legend rank, so I'm in the same boat aswell
CouscousAgha: i make my player say 69ms on every action just to give the illusion im using sims
CouscousAgha: hopefully it will secretly buff my player
CameronWatt: holy moly rolly polly
EnderWiggins: I am not able to Approve/Reject anybody's clash of code puzzle made even though I did 50 clashes. Can anybody help?
CouscousAgha: im top 16 now idk if i should re submit and attempt legend again or wait for people to push me up
Wontonimo: Better to look at you Score. How many points are you away?
CouscousAgha: 48.40 vs 50.78 for the boss
Wontonimo: you are about 2.5 points away, so probably not gonna get there with a push
Wontonimo: imho
CouscousAgha: yeah i thought so
Wontonimo: Can you squeeze any more performance out of your bot?
Wontonimo: play with some hyper parameters at least?
CouscousAgha: at this point I have no idea
Wontonimo: same boat
CouscousAgha: every bit of squeeze feels like a 70% win chance vs everyone near me
Wontonimo: what's your bot? what kind of search you using?
CouscousAgha: purely heuristic
Wontonimo: sweeeet !! Good job!
CouscousAgha: I started since day 1 of the challenge
CouscousAgha: kept adding and deleting stuff
CouscousAgha: and i felt like it was becoming messy
Wontonimo: my heuristic is a tower of cards
CouscousAgha: so I redid my code today with all the ideas and strategies on my mind
Wontonimo: and are you using brutal tester?
Wontonimo: vs your old bots?
CouscousAgha: took me about 4 hours but i went from top 190 to legend
CouscousAgha: i mean almost legend
Wontonimo: i was gonna say, you must have pissed someone off to get kicked out
CouscousAgha: yeah lol
CouscousAgha: man these guys who keep attempting to get out of gold are buffing the boss
CouscousAgha: (╯°□°)╯︵ ┻━┻
CameronWatt: python bros recking my linq c# skills in code golf in clash
Wontonimo: haha ... doesn't quite work that way. it's more like they are making a wall of a variety of strats for you to also have to beat
NinjaDoggy: nah buffing the boss is real
Zenoscave: Wontonimo if you lose against the boss a bunch it does buff it
Numby: how is the boss buffed O.o
Wontonimo: its score increases, but it doesn't get smarter
NinjaDoggy: score is the only thing that matters though :/
Zenoscave: No but that score is enough
Zenoscave: quit beating me NinjaDoggy
CouscousAgha: well when u increases its score means u need more wins to get surpass it
Zenoscave: This isn't that much of a buff compared to some competitions though
Zenoscave: But it is iratating
Wontonimo: hey Zenoscave, i see you've been coming very close!
CouscousAgha: Zenoscave
Zenoscave: Not close enough
Wontonimo: i hear that
Zenoscave: yes CouscousAgha
CouscousAgha: come give some push to your pal here
Noyotens: guys i am at gold now YAAAAAAAAAY :stuck_out_tongue_closed_eyes:
CouscousAgha: congrats! welcome to elo hell
CouscousAgha: if you've ever heard of it
NinjaDoggy: sorry zeno :(
Zenoscave: lol
Noyotens: THANK YOU GUYS
NinjaDoggy: congratz on gold! :D
Wontonimo: congrats Noyotens !
Noyotens: thanks
Zenoscave: CouscousAgha I beat you in the current bot... like 80% of the time
CouscousAgha: are you sure
CouscousAgha: it was 3 to 2
Zenoscave: Not enough plays yet on this new submit but there's a big improvement
Zenoscave: 5/1 me in IDE
Zenoscave: Not enough to be confident but I think it's good
Noyotens: https://www.codingame.com/replay/555704411
Noyotens: u have error
Zenoscave: Noyotens was that in IDE?
Noyotens: no
Zenoscave: MAny bots time out in IDE currently
CouscousAgha: Zenoscave go easy on my 69ms heuristic bot
Zenoscave: "69ms"
Zenoscave: Nice buff
Zenoscave: ;)
NinjaDoggy: bluff*
Smelty: nice.
NinjaDoggy: ;)
Zenoscave: ;)
Smelty: ;)
CouscousAgha: yeah im almost positive making your bot say 69ms will buff it
Zenoscave: c-c-c-c-omb breaker
CouscousAgha: i think getting top10 in gold as a first timer without any sim is a good achievement
Zenoscave: definitely
jrke: can anyone gimme a better idea for heuristic?
Zenoscave: Don't
Zenoscave: there's the best idea
Zenoscave: ;)
CouscousAgha: ^
BrunoFelthes: jrke first move wait
NinjaDoggy: wait grow wait grow seed :)
Zenoscave: ^^
CouscousAgha: the amount of burnt brain cells to get a good heuristic is definitely not recommended
BrunoFelthes: wait grow wait seed grow
NinjaDoggy: debatable on the order :P
NinjaDoggy: i think grow first is better
BrunoFelthes: you can lose your spot if you grow first
CouscousAgha: wait grow2 wait grow2 seed wait grow2 grow1 seed
CouscousAgha: chad order
NinjaDoggy: you can counter seed if you see them do it first
Zenoscave: seed in better position. Plus same spot seeds are rare in first few day
BrunoFelthes: ok, grow first if you can lose the spot that you want
BrunoFelthes: cant*
Zenoscave: When is it more advantagous to not complete a tree and gather sun instead?
NinjaDoggy: zeno
Zenoscave: hm?
NinjaDoggy: you might as well ask what's the point of life
NinjaDoggy: with a question that hard :P
Zenoscave: no I mean in end game. When should you stop completing
CouscousAgha: Zenoscave if i figure that out I will be legend by now
NinjaDoggy: when it gives you more points than completing ;)
Zenoscave: A lot of my losses are I have more score but WAY less sun
NinjaDoggy: like it actually depends on a lot
NinjaDoggy: mainly on opponent
NinjaDoggy: and nutrients
Zenoscave: Gotcha
abenner: 'Compilation took too long and has been interrupted' woo hoo I love rust
Zenoscave: https://www.codingame.com/share-replay/555706781
Noyotens: guys anyone have any replay to how beat gold
Zenoscave: Like this crap
NinjaDoggy: tbh I haven't been doing too much heuristics stuff
NinjaDoggy: I made like 18 variables
NinjaDoggy: and have been running my 5900x non stop past 2 days to optimize them ;)
Zenoscave: christ
CouscousAgha: my god
CouscousAgha: thats p2w
Zenoscave: Paramfiddler?
NinjaDoggy: LOL
NinjaDoggy: p2w indeed ;)
NinjaDoggy: I see people asking how many threads max for brutal testers
NinjaDoggy: and i'm like lol... here I am running 20 threads XD
CouscousAgha: how much it took you to write it
Wontonimo: $5
CouscousAgha: LOL
Wontonimo: or 3 meters ?
Zaphus: 12 parsecs?
CouscousAgha: bro the bot just got +0.3 buff
Wontonimo: i've been taking notes of the boss over the day. 8 hours ago it was 52.29. 3 hours it was 51.81
Noyotens: this bot have 142IQ
Wontonimo: now it's 51.17
Wontonimo: so, i wouldn't say it's been going up today
CouscousAgha: i guess i will go sleep it's almost 4 am here
CouscousAgha: i get like 0.1 push every win and my winrate is kinda above 50
CouscousAgha: soon enough i might get to the boss myself
ClockSort: yess, a small change in my MCTS rollout made a big difference. #23 Gold and climbing!! fingers crossed for my first ever reaching Legend in a CG contest :metal: