Chat:World/2022-06-28
linjoehan: hello
eulerscheZahl: moin
jacek: good morning
Juan_two: Good morning
OldJohn: Good morning everyone !
derjack: :upside_down:
DomiKo: godd morning!
Titann37: hi all
emh: jacek what can you tell me about NN implementation for CG? how many hidden layers do I need? what is better, fixed point or floating point? embed weights in forward propagation or separate code and data for loop performance?
emh: I guess size matters so then no embedding (instructions would be repeated and consume too much space)
jacek: i replied there about the size. weights for cg are just lowered precision floats
jacek: it has only 1 hidden layer
emh: ok
Uljahn: how many bits per float? guess model size and precision may benefit from Quantization Aware Training
jacek: i used normal floats in training. for cg i use my custom int16 divided thing. i divide by 2048.0 so precision is around 0.0005
jacek: i dont know if this affected the model strength in any way
emh: I see
DomiKo: it could affect but it really depends on model, so the only way is to test this. I locally test model vs compressed model to see how much it affects.
INSANOGUY: i started like 2 week ago
ThomasGottschalk: With coding like almost 1 year ago but with codinggames like 2 weeks
ThomasGottschalk: follow me? what do you mean with that
INSANOGUY: mean that i be your friend
ThomasGottschalk: oh yeah sure
INSANOGUY: i follow you already
INSANOGUY: my name is insanoguy
INSANOGUY: just search my name and press follow
INSANOGUY: now let chat at our own chat
derjack: and chat is still going
SinnerJyze: These text bombs seems overwhelming for me lol
SinnerJyze: Sure,mind if I ask where you guys from?
SinnerJyze: Greetings my Sout-east asian comrade
SinnerJyze: Sure, let me do it
ThomasGottschalk: Can someone gift me the fortnite battlepass
5DN1L: not here, ThomasGottschalk
5DN1L: i'm a chat moderator
SinnerJyze: No solicitations, right?
5DN1L: right
omharry: will anybody be my friend
omharry: because you have pineapple in ur name
Frukostbord: Just curious. How many of you work as programmers?
Nerchio: at least 1
Uljahn: no more than 2**33
Crosility: Does making money while programming == work as programmer?
emh: is it possible to make c++ call an external binary during compile time?
emh: for example base64
emh: or zcat
emh: I found a constexpr base64 function, but calling the binary would be shorter
emh: I guess I could use bash to do it but would be fun to do it from C++
derjack: :thinking:
DomiKo: during compile time???
derjack: and why would he want to compress anything
derjack: :smirk:
derjack: https://img-9gag-fun.9cache.com/photo/ay9r0XW_700bwp.webp
DaNinja: difficult one, is that for getting a job at Google?
Phlipside: In C# how can I log notes to the console that aren't taken as part of the answer
Phlipside: Ah never mind I found it
Quick_Kick: Console.Error.WriteLine();
Phlipside: Thanks Quick_Kick :)
LuaAdventurer: how do i change my input\
5DN1L: how do i change your question\
5DN1L: English
Crosility: Drop down menu at top of code block.
Crosility: It's alphabetical, and scrolls
5DN1L: wow you actually understand what the question is? i'm impressed
Crosility: Only assuming. :joy:
5DN1L: right :joy:
5DN1L: LuaAdventurer, hope that answers your question
derjack: and what language?
5DN1L: let's ask Automaton2000 what language
Automaton2000: well it's a good one
derjack: D?
5DN1L: D for derjack
Ayza: does it matter if you can beat most players or not as long as you can beat the boss?
5DN1L: it's all about getting your trueskill score higher than the boss's
Ayza: I see, hopes back up
wlesavo: Ayza well you have to get games against boss, and if you lose to everyone else you wont get any
Ayza: I am losing to some players but testing my code, it wins against the boss 90% of the time
Ayza: so I guess it's fine
Uljahn: losing to bottom league players is very harmful for your score
5DN1L: but if you keep losing to other players, your trueskill score won't be high
5DN1L: Ayza check out what trueskill score system is
wlesavo: yeah, i generaly start climbing by fixing those losses against lower half of ladder, as Uljahn said
Ayza: alright thanks
5DN1L: Ayza https://www.codingame.com/forum/t/how-is-the-rank-for-single-finished-bot-programming-computed/194147
Ayza: thanks couldn't find a clear one
5DN1L: np :)
PatrickMcGinnisII: looks like alot of people CP just got kicked in the nutz
eulerscheZahl: participant count was much lower. while the winner gets the same CP, the exploential function drops faster to 0. 10th here is worth less than 10th or even 30th last time
struct: 1000 points difference between 10th and 3th
eulerscheZahl: wow. i didn't do the math but didn't expend it to be that significant
struct: (10000)**((1763-10+1)/1763)-(10000)**((1763-30+1)/1763) = 946.54781786959095688007
jacek: any significant difference between g*ld and legend?
eulerscheZahl: but no excuses: i failed the last 2 contests and dropped in the overall contest leaderboard :(
struct: jacek yeah legend gives extra few ranks if you make it there on last day
eulerscheZahl: depends: top gold vs bottom legend? not significant top gold vs mid legend: there is a difference
eulerscheZahl: aCat right into mid legend after contest ended
eulerscheZahl: but not everyone got pushed. siman was really close a few times but didn't make it in the end
PatrickMcGinnisII: I don't like that the CP is dropped from previous contest. So would I have been off NOT entering Event?
eulerscheZahl: he already stopped on wednesday when topcoder started
Astrobytes: it wasn't an 'official' contest as such sooo
eulerscheZahl: official enough to count for contest leaderboard
eulerscheZahl: wrong, PatrickMcGinnisII
eulerscheZahl: the factor of older contest always declines. regardless of whether you play or not
Astrobytes: Fair point. Then they would have to make a different formula to account for smaller participation count to make it balance
struct: yeah
eulerscheZahl: pending on your rank in this and the previous it will either not count top your best 3 (as if you never played) or increase the score
eulerscheZahl: ergo: you can't make it worse by playing
struct: I dont think the problem is the points here
struct: is the points you lose on the others
struct: the decay
Crosility: Everything dies. Even your points *lol*
struct: But if there wasnt a decay, players would never catch older players
PatrickMcGinnisII: Each next most recent contest is worth 5% less ... that adds up
Astrobytes: A moot point, as always.
eulerscheZahl: they have an exponential decay regarding your rank for scores. i think that's fair
struct: I think 10k is fair because the contests are still hard even if there are fewer players
struct: The top players were still there
Astrobytes: I'm just grateful we had another one
darkhorse64: you must be within the 5% to score (no pun intended)
eulerscheZahl: we can argue that 10th out of 1000 is harder than 100th out of 10000. because some top players always compete and the occasional participants are less strong on average
eulerscheZahl: recurse once proposed the kaggle formula for the leaderboard and even computed some numbers with it. looked pretty fair to me
eulerscheZahl: still rewarding top ranks in older contests a bit but also giving new players a chance to climb fast
Astrobytes: I remember that, but they went with the other one instead
eulerscheZahl: with more contests, player count will probably decrease further. making the decay for older contests even more severe
Astrobytes: Stuck between a rock and a hard place
PatrickMcGinnisII: to maintain your cp you would have to rank higher than your average by a hair to maintain it. When participation is low the burden is higher.
eulerscheZahl: at least i don't intend to participate when they temporarily promote some board game and call it a contest
struct: wdym player count will decrease with more contests?
PatrickMcGinnisII: i get encouraging new participants
Astrobytes: If they increase contest count with new ones like this I'm all in
eulerscheZahl: imagine you have another event in 1 or 2 months. but not a new game
eulerscheZahl: this time we had 1700 players, which was pretty cool
struct: Well this one felt rushed
eulerscheZahl: but don't expect the same amount for a connect4 contest
eulerscheZahl: i might be wrong, just my feeling
struct: ofc not, and I hope it doesnt happen
struct: it will just be booked like othello is
Astrobytes: lol, right
eulerscheZahl: replace connect4 by any existing community game
derjack: onitama :heart:
Westicles: no chance, connect4 isn't french
darkhorse64: a fresh board game would be more interesting ataxx
darkhorse64: for instance
darkhorse64: it rules out books
Astrobytes: lol, I like how you shoehorned ataxx in there darkhorse64
darkhorse64: :smiling_imp:
struct: still not close to enough depth
derjack: :notebook: :soccer:
Westicles: 8/9 events french, 1 german
eulerscheZahl: the german must me mine then
derjack: so what are french community games
eulerscheZahl: penguins
derjack: dots and boxes!
Astrobytes: the upcoming 6 nimmt
darkhorse64: I already started working on it
eulerscheZahl: 6 nimmt?
darkhorse64: there are new search algos to try out
eulerscheZahl: i'm slightly disappointed that no one managed to crack RNG :(
PatrickMcGinnisII: I guess we can regain cp when/if it hits multi?
derjack: does it have complicated rules?
eulerscheZahl: for 6 nimmt the random impact will be massive
Astrobytes: no I wasn't suggesting it as a contest
Astrobytes: someone asked for French board games, I assumed board games made by French people
derjack: Sebastien wrote in pm that he'd use SecureRandom
eulerscheZahl: too late, not it's in the draw pot
darkhorse64: it will be very hard to reach legend in Green Circle, much more than spider attack. Farewell CPs
eulerscheZahl: i mean it will be hard to play as a coder. we already struggled with random here
eulerscheZahl: you can do it darkhorse64, i have faith in you
struct: darkhorse64 all I changed from 60 to top 3
Astrobytes: ah, yeah, but it encourages different thinking
struct: was pruning moves
struct: and make the opening better
eulerscheZahl: i just hardcoded the opening moves
Astrobytes: For instance, the success with some clevery modified MCTS-style algos in Green Circle was nice
eulerscheZahl: smits gave me his code. i think that's the main point why i ranked above him
Astrobytes: the opening?
eulerscheZahl: yes
Astrobytes: He didn't hardcode the opening at all? I was under the impression he did, at least at some point
eulerscheZahl: can't copy to chat, pastebin broken
eulerscheZahl: https://i.imgur.com/elrn0Vb.png
eulerscheZahl: he had an outcommented call to Heuristic()
eulerscheZahl: i hardcoded a few moves at least. significant boost in ranking
darkhorse64: In my bot, I did not care enough of the opponent when releasing apps
Astrobytes: yeah I knew about yours but smits, not like him not to find something simple like that
darkhorse64: I can't believe he did not book the opening
Astrobytes: In my bot, I failed :rofl:
eulerscheZahl: void NormalTurn() { //if (Heuristics()) // return;
eulerscheZahl: leaking smits code
Astrobytes: I don't think he's be concerned about that particular 'leak' :D
Astrobytes: *he'd
Astrobytes: euler, did you see new yare update?
eulerscheZahl: i saw the announcement
Astrobytes: yeah I didn't check the details yet
eulerscheZahl: but didn't look into it yet apart from a quick check
derjack: yare yare?
Dapps: i was going to check it out, but deciding if i spend more time on that or try green circle when it becomes a multi
darkhorse64: I have looked at bowowow Twitter. Apparently, he used ISMCTS, that's more interesting to try than tweaking magic numbers
eulerscheZahl: you can code modules now. which makes it easier to code your own UI around the game for manual controls
Astrobytes: darkhorse64: yes, did you see his PM?
eulerscheZahl: https://bowwowforeach.hatenablog.com/entry/2022/06/28/210200
Astrobytes: he also did something in the CG thread
darkhorse64: No thanks. An algorithm to see through the fog
darkhorse64: yummy
Astrobytes: and Duck seems to have some hybrid of that and EPT
Dapps: re: yare i'm not so interested in manually controlling though. would prefer fully-automated
eulerscheZahl: i accept that yare is a different concept from CG and might even go the hybrid way
Astrobytes: same Dapps, though that guy last time who was playing manually was pretty damn good
struct: what is yare?
Dapps: yeah i think winner was fully manual
eulerscheZahl: the macro game is pretty heuristic based
eulerscheZahl: yare.io struct
Astrobytes: And his setup was really nice
struct: is it down?
Astrobytes: how he managed to play like that is beyond me
Dapps: lol
eulerscheZahl: can be painful to code for some cases. and in the last contest i had some bugs that were only triggered in contest games and not the few dummy bots to play against
Dapps: yea yare.io looks down. DDOS lol
Dapps: from the few of us checking it out
eulerscheZahl: manual controls for macro and automation of micro (attacking a specific target among several options, jumping for fast reaction)
eulerscheZahl: https://www.youtube.com/watch?v=c0VIE8k0F34&ab_channel=Yare-io
eulerscheZahl: yare gameplay (version 1)
derjack: 1 ethereum?
eulerscheZahl: v2 will change some mechanics
Dapps: yep
eulerscheZahl: back then 1 ETH was worth more
eulerscheZahl: should have sold
Dapps: jokes on you. i didn't win so didn't lose anything
eulerscheZahl: :chart_with_downwards_trend:
Astrobytes: you didn't sell or spend that? wow
Astrobytes: for a maths guy that was an oversight :P
eulerscheZahl: at first it was rising in value
eulerscheZahl: i still have about 0.1BTC that i won at hackerrank
Astrobytes: but it's exactly the same as stock market shares
eulerscheZahl: was $75
struct: it only dropped 66% not bad
eulerscheZahl: jeez, BTC under 20k euros
eulerscheZahl: that's painful to watch
Astrobytes: you could have bought yourself a fake identity with the ETH and had double the chance to win this year :P
eulerscheZahl: i would need 2 bots to make it less obvious
eulerscheZahl: and there's a possibility that i can fight myself
Dapps: put in a backdoor to detect that matchup
eulerscheZahl: there's also an andergee on yare btw
Astrobytes: still a higher chance, and you vs you in the finals would be easy to sabotage
eulerscheZahl: he was top10 in halite
Astrobytes: interesting
Dapps: did you guys check out kore on kaggle?
Dapps: couldn't get myself interested in it
eulerscheZahl: quick look
eulerscheZahl: it's just so much stuff going on, you can't play it all
Astrobytes: I had a brief look yesterday, looked halite-ish
eulerscheZahl: coder one is in 2 months
Dapps: find kaggle graphics so bad though.. actually takes away from gameplay
eulerscheZahl: topcoder regionals in early august (i think everyone can enter here)
Astrobytes: I dislike their whole site tbh
Astrobytes: and topcoders :D
eulerscheZahl: you don't find anything without a bookmark
Dapps: don't like the entire kaggle matchmaking system with "ghosts"
eulerscheZahl: i never played kaggle because it always lasts so long
eulerscheZahl: and i have a serious addiction problem if i get into it
Astrobytes: Still, I guess with fewer CG contests we have to bite a few bullets and embrace some differences
eulerscheZahl: topcoder it is. platform is a pain but the optim tasks are in the range from good to great
struct: anything about a new contest has been mentioned?
eulerscheZahl: CG contest?
struct: yeah
eulerscheZahl: nah
Astrobytes: was short notice last time, I would never have seen it if I didn't happen to log in just after 5D posting the link
eulerscheZahl: i found out about it because astro told me
Astrobytes: :)
Hakb: hi, is there any way to get the time and memory consumption and on training puzzles?
struct: well for memory you should be tracking it yourself
struct: you have 768MB
struct: for the time you can also track it
Astrobytes: You won't be able to track the execution time/mem consumption for the validators but the testcases should give you an idea
Crosility: You are the 3 names I see the most here in chat. struct, eulerscheZahl, and Astrobytes.
Astrobytes: not always ;) I take extended breaks from here these days
eulerscheZahl: is see eulerscheZahl quite often too. acutally he's always online when i'm here
Astrobytes: :D
Crosility: Aww, a funny one :]
eulerscheZahl: if astro laughs, it counts
Astrobytes: Just watch out for that undercover one
Crosility: Well, it's nice, honestly. Seeing the same people. It feels like a community.
Astrobytes: hah!
Astrobytes: Crosility: yeah, the community was always the backbone of this place
Astrobytes: contest-time you still see a lot of familiar names, not as many nowadays though sadly
eulerscheZahl: do you ask for a particular reason like failing a testcase Hakb?
Crosility: What would cause more decent-like minded people to flock here? I wonder?
Astrobytes: More contests, end-of. As it was previously. The turnout for official contests is huge
struct: Maybe a contest this year is still possible
struct: who knows
Astrobytes: But as with most things in life, things do indeed sadly change.
Astrobytes: I have a feeling they will do a proper Fall contest struct
Crosility: Was the event that just ended, not considered a contest?
Dapps: i wish i had found CG earlier. only joined last year. but saw previous years multiple contests a year
putibuzu: how many contests were there previously?
eulerscheZahl: about 5 per year
Astrobytes: 2018 was the record year right? 7 or 8 contests?
Astrobytes: or 6 or 7
Dapps: 8?!
eulerscheZahl: you can't count locam twice
struct: https://www.codingame.com/contests/finished
Astrobytes: I wasn't
eulerscheZahl: and pikatcha can be argued about
struct: page takes a while to load
Astrobytes: 6, plus there were a few semi-privates that we gatecrashed
struct: also fall challenge 21 is not a thing
struct: :p
Astrobytes: That was the Fail Challenge 21
struct: Its past
eulerscheZahl: https://escape.codingame.com/games the list grew since i opened it last time
Astrobytes: but I'll be really happy if there is a proper one this year, and hopefully another 1+ community-style like the last one
IvesL: what is a pro account in escape?
Astrobytes: oh yeah, a few new ones
struct: accounts from CG work I think
putibuzu: yeah a fall contest would be really nice :)
eulerscheZahl: someone (you?) told me there might be another community contest around fall
Astrobytes: no, that was this one I was talking about, T mentioned it prior to Spring or just after
eulerscheZahl: and i expect an official contest in autumn (last time it was in November). we just don't know if it will be a bot contest
eulerscheZahl: but nothing official, just some educated guess from my side
Astrobytes: :fingers_crossed:
struct: shirt or delete
Astrobytes: :D
Astrobytes: Incorrigible you are struct
Crosility: O.o, unable to be improved?
Astrobytes: No, he never changes: "x or delete" is struct's personal motto/meme
Crosility: Ah.
eulerscheZahl: there is also "no sleep till legend". but that's another user
Astrobytes: ahh the world of CG memes
Astrobytes: Speaking of CG memes, ceg gave up early this contest
eulerscheZahl: he was playing?
eulerscheZahl: regarding memes https://www.codingame.com/ide/demo/850088a159bea424cb5e8f502cc34eabda16ff
Astrobytes: He streamed
darkhorse64: He could not pass the bot without reading the statement
Astrobytes: I think he remained in Wood
Astrobytes: hahaha forgot about that one euler
eulerscheZahl: jacek didn't read the statement either
Astrobytes: :D
Astrobytes: I admit I was mildly surprised that nobody showed up at the last minute
GNye22: Can you private message another coder on the site that's not in this chat?
GNye22: I did a Clash of Code with him and looked at his code and was wondering what the one line did
Crosility: Go to their profile. Click their name.
Crosility: Message them-not sure if there's a seperate inbox, but it opens up a tab here.
struct: they need to be following you
GNye22: All i see is a follow button
struct: and you need to follow them too
GNye22: well then would anyone know what this does?
Astrobytes: Otherwise you can use the forum
Crosility: You could try contacting them on discord.
GNye22: http://chat.codingame.com/pastebin/e5cde6c6-efbe-4eb2-9b55-e36b56d7cef8
struct: or you can press the person button on chat
Astrobytes: ^ or discord yes
struct: when you join in a clash with them
GNye22: It was a program that converts characters to their ascii values and sums them if the characters uppercase
struct: and then click on their name
Astrobytes: auto pastebins are broken no?
struct: GNye22 golf?
GNye22: but I want to know what the !!std::isupper(c))*c; line does
Phlipside: With Mod Pod racing Test In Arena isn't enough for me to go against the boss even though I'm consistently beating it in Play My Code mode... how do I get it to attempt to rank me up?
GNye22: no struct, just a flash clash
GNye22: I've never seen the !! operator
GNye22: And when I google it nothing appears
struct: p gets.tr('^A-Z',).sum
Astrobytes: Beat the rest of the league Phlipside
Phlipside: Do you mean I have to rank #1?
Astrobytes: Look at who you lose against the most, and why, try to fix that and you should move up the league and get more games against the boss
Astrobytes: Yes
GNye22: http://chat.codingame.com/pastebin/df4878c5-dc55-43f9-af07-0786992568da
Astrobytes: You must have more points than the boss
char c; while(std::cin>>c) sum+=(!!std::isupper(c))*c;
Astrobytes: At the end of the submission time
Phlipside: Thank you Astrobytes :)
Astrobytes: np
GNye22: does anyone know what that (!!std::isupper(c))*c does?
Phlipside: how do I see the Boss' number of points compared to mine?
eulerscheZahl: std::isupper is 1 for upper case, 0 otherwise
eulerscheZahl: so 0 * c = 0 1*c = 1
eulerscheZahl: c is the ASCII value of the character
GNye22: so then whats with the double negation?
eulerscheZahl: this it add the ASCII of all non-uppercase chars
eulerscheZahl: oh, double
struct: shortest I can think of p`dd`.tr('^A-Z',).sum
eulerscheZahl: bad eyes
Crosility: https://stackoverflow.com/questions/29312123/how-does-the-double-exclamation-work-in-javascript
GNye22: that's the part that confuses me, couldn't he have just put std::isupper(c)*c?
Astrobytes: Phlipside: Hit the leaderboard button on the left
timbersson: in js you use it to force a value to be boolean, but that is c, right?
eulerscheZahl: just looking it up. might be that it just returns any non-0 number
eulerscheZahl: https://cplusplus.com/reference/cctype/isupper/
Astrobytes: C++
Nerchio: c++
eulerscheZahl: A value different from zero (i.e., true) if indeed c is an uppercase alphabetic letter.
eulerscheZahl: you aren't guaranteed to get a 1 for upper. might be a 7 or a -432432
Crosility: Okay, okay.. okay. C++. Sorry, I think the answer they give still applies though.
Astrobytes: double negated then multiplied by the ascii value?
Astrobytes: sorry, just reading it
eulerscheZahl: negate: 0 => 1, anything else => 0
eulerscheZahl: double negate: 0 => 0, anything else => 1
Astrobytes: I would never have worked that out :smirk:
Crosility: https://stackoverflow.com/questions/11374810/defining-double-exclamation
Crosility: That's C++ explanation
eulerscheZahl: sarcasm Astrobytes?
Astrobytes: Naturally
GNye22: Ahhhhh ok that makes sense now
Crosility: But, both links said the exact same thing.
Astrobytes: ugly though
GNye22: I will definitely use that from now on haha
derjack: they use c++ for shortest?
eulerscheZahl: golfing is ugly
GNye22: No it was a fast clash
eulerscheZahl: or wasteful to water, depending on the type of golf
derjack: hmm what would be the new featured puzzle
eulerscheZahl: insert link to lastweektonight from this week
Astrobytes: Fastest also produces ugly code
GNye22: but yeah golfing is ugly, but its a good skill to have I think. I watch some of these pythoners and they populate a map in a single freakin line and I'm like whaaaaaaatttt
GNye22: I agree, but its a good exercise to see what libraries you know, just not good practice for writing code that is going to be updated and viewed by others
eulerscheZahl: don't code like that in production
Nerchio: meh kinda useless skill to me
Astrobytes: More of a hobby-thing
eulerscheZahl: when you have to think about what it's doing and then say: "hm, clever", you probably shouldn't do it
Astrobytes: The only time golfing everything is acceptable in production is writing perl
GNye22: Yeah I'm aware, I just like learning new little tricks like that cuz a lot of them take advantage of small rules in the language that you otherwise would be aware of
Astrobytes: <that was a joke btw>
Astrobytes: (I'm here all week)
Crosility: While I'm over here doing explicitly long variable names.
Crosility: In very defined chunks of code.
Crosility: To solve puzzles.
struct: thats fine
Crosility: char blunderdirection = 'S'; and map[height][length].. instead of m[y][x]
eulerscheZahl: grid[x,y] the only acceptable order of dimensions
Crosility: Like struct's example. Of shortest code. .. I can't see why people do that to themselves.
eulerscheZahl: there's even a language just for golfing: golfscript
struct: [y][x] for me
Crosility: Lol, Euler, if only the site didn't continuously give me strings at a time. And work top to bottom. I would do that. But it's too much work to make map[][y] = "this string it gave me"
struct: or uint64
Crosility: So, I've opted to just apply it in the logic flow the site gives to me. :P
Crosility: But yes, x, y for everything else.
Crosility: I like using 2d arrays too much for these map puzzles. I don't wanna store an array of strings. I rather be able to call the coordinates directly.
Astrobytes: map[] [solved]
Astrobytes: map[MAX_SIZE*MAX_SIZE] that is
Astrobytes: or uint64 if it fits
Crosility: Oh, well, yes. YOU CAN define it that way. BUT, it's not easy-to-read and follow way.
eulerscheZahl: let's make it a dictionary. can JS use an object like {x;1, y:3} as key?
Crosility: When you're calling grid spacing.
eulerscheZahl: then it's independent of the order
Crosility: Haha, JS nice modern dictionary benefits.
Astrobytes: if you wrap things up nicely in a struct or class it's very easy to read when you're using it
Phlipside: Thanks for the advice Astrobytes, just ranked up in the league with a > 95% win rate
Astrobytes: Phlipside: Nice! :tada: onwards and upwards
Crosility: Lol, technically.. it's an array of y,x coordinate structs. With data relevant to the coordinate.
Crosility: http://chat.codingame.com/pastebin/d0cfdbd3-725a-46ac-ba6b-f651fd449003
Crosility: Gah, I need to learn the character length here.
Astrobytes: it's based on line breaks iirc
eulerscheZahl: arrow up to recover your last message
eulerscheZahl: 4 lines are the max
Crosility: ypedef struct {
char symbol; char times_touched;
} MAPS; MAPS map[height][length];
struct: has anyone reported that pastebins are broken?
Astrobytes: jacek did ages ago
Crosility: Asks the moderator. :P
Astrobytes: lol
eulerscheZahl: and did someone react with :eyes: ?
Astrobytes: dunno, don't think so, not on discord rn to check
Crosility: So, Astrobytes, in C, curious, what would you do, to be able to easily call a cell of Y,X (or X, Y) if not in a 2d Array like so? Just curious.
Nerchio: don't remind them to remove the chat :cold_sweat:
eulerscheZahl: maybe they will just forget it?
Astrobytes: in C I would probably use your way unless 1D indexing helped
struct: just make a forum post asking to not remove it
struct: eas
struct: easy*
Astrobytes: *helped with speed/efficiency
Crosility: 1D indexing like you proposed, only works if you're willing to deal with ugly syntax. :P
Astrobytes: in C that's what macros are for :P
struct: then ask people in chat to brigade the post
Crosility: Haha, yup. Man, haven't used a macro in forever.
Crosility: Need to try implementing them more.
Crosility: (Other than library pre-made macros)
Astrobytes: it's easier to hide ugliness away in C++ than it is in C tbh
Astrobytes: For CG at least
Astrobytes: re. the chat, someone made a nice post in the thread on the forum
Astrobytes: https://www.codingame.com/forum/t/discussions-spaces-update-the-question-of-the-chat/196276/8
Astrobytes: Razovsk y post. Not like it hasn't been suggested before though
struct: yeah probably wont make a difference
struct: but he is right, the discord also has problems
eulerscheZahl: i left because the phishing links annoyed me
Astrobytes: Yes. The spam issue makes me silence the whole thing
Crosility: I fully turn off notifications/alerts to every discord channel I join. Only if I'm tagged directly do I go to the chat, or if I'm curious.
Crosility: Most servers are just spam.
Astrobytes: I keep it on for the announcements/important channel or I leave the server
struct: During the contest I banned 1 person in total
eulerscheZahl: same. when i join a server i mute everything but the annoucnement channel and maybe 1 or 2 others
struct: The chat had problems during a month or so
Astrobytes: struct yeah the chat during the contest was unusually spam/troll free, other than us all trolling each other
Astrobytes: Was very pleasant
struct: For me shutting it down its mistake
eulerscheZahl: topcoder discord was quite spammy like admins writing "@everyone go to typeracer and join us"
eulerscheZahl: at least they made the typeracer thing a group on their own now
Astrobytes: that @everyone tag is so annoying. Servers that limit their use of it are the better ones
eulerscheZahl: but it was the admins pinging everyone for typeracer
struct: lol
Nikanameu: do featured puzzle give any bonus rewards
struct: no
Astrobytes: Yeah, that's irresponsible admin'ing imo
Astrobytes: @everyone is like the nuclear option of notification
eulerscheZahl: it's perfectly fine for "we just released yare2 after almost a year"
Astrobytes: Yes exactly.
Astrobytes: Not to be abused for spamming stuff
struct: hi @everyone
Astrobytes: lol
Astrobytes: I'm amazed TC didn't lose most of their discord doing what you described euler
eulerscheZahl: i left
eulerscheZahl: but rejoined for TCO info
struct: Thats when you know it has gone downhill
eulerscheZahl: they still have some annoying practices. write !work to gain useless internet points
eulerscheZahl: for some channels only. so someone writes in the wrong channel. bot: "don't do that here" and instantly someone else tries the same nonsense
Astrobytes: Yes, I was on there for a short time iirc
struct: thats why I dont even go on discord
Astrobytes: You see that stuff in quite a few servers nowadays, exceptionally annoying
Crosility: If you ever wanna see the most degenerative behavior. Join a crypto-game server.
Astrobytes: No. Thank. You :D
Crosility: Lmao.
Astrobytes: These people are rabid.
Astrobytes: alrighty, afk a couple hours, be back later on at some point
eulerscheZahl: there's so much weird stuff on the internet. i'll never understand asmr
Crosility: ... I need to back out of that discussion.
Crosility: Twitch has fallen so far
jacek: hm?
Razovsky: eulerscheZahl if i find a asmrdude or girl i swear ill rip their ears off
Razovsky: this triggers me so hard, exactly the contrary of what it's supposed to do i guess XD
Crosility: Avoid what'sherface-IWearABikiniAllDayInAKiddyPool on twitch then.
Crosility: Asmortanthoho or whatever.
Razovsky: i never go on twitch except for a few entertaining gamers i know
Razovsky: strangely they are all males, i never found a female streamer which wasnt selling herself with it
Razovsky: mst exist, anyway
Razovsky: must*
Crosility: I know a few. But, the play niche content usually.
Crosility: https://www.twitch.tv/gabsmolders
Crosility: Also usually the huge nerds, the real nerds.
Crosility: Not the "I want people to look at me"
Crosility: Nah, that's not mine.
jacek: Razovsky misophonia much?
Razovsky: nah man
Razovsky: im really fond of music, i play a lot
Razovsky: and within several groups
eulerscheZahl: Razovsky 05:58ᴾᴹ eulerscheZahl if i find a asmrdude or girl i swear ill rip their ears off
you would do that for me? thank you :)
Razovsky: but ASMR is a mystery to me, i stand with eulerscheZahl on that
PatrickMcGinnisII: I'm half deaf, When i put on my Aeropex and can actually hear what pepl r sayin' ... I think i understand ASMR now. But my urge is to pick up a machete.
eulerscheZahl: oh, i didn't know. smits also has some problems hearing. but he can lip-read is students and catches them saying things smits is't supposed to hear
eulerscheZahl: *his
Astrobytes: ASMR is for people who never had someone whisper aggressively in their ears as a child or something. It's an absolute mystery.
PatrickMcGinnisII: me 2, CoV-19 with all the masks was a MF 4 me, I didn't have headphones then. Waitresses would yell at me, umm that didn't help.
Astrobytes: that sucks Patrick
Nikanameu: was the contest fun
PatrickMcGinnisII: they think I didn't her them at all, it just takes me longer to interpret what they said so they get impatient and start yelling... I don't know what ASMR is, but I kinda get in now
Astrobytes: As if provision for those hard of hearing isn't bad enough as it is
PatrickMcGinnisII: I'm just lacking in certain frequencies, so louder the 'good tones' feel like attacks on my senses.
PatrickMcGinnisII: sry, TMI
Astrobytes: I have tinnitus in my right ear (mostly) which is my constant companion :|
eulerscheZahl: i have an organ player among my colleagues. he hears significantly worse on certain frequences
eulerscheZahl: you get to make a hearing test among others at my workplace when getting hired. the medic asked him right away if he plays organ
Astrobytes: I will refrain from making any organ-based jokes that only Patrick would laugh at
PatrickMcGinnisII: i wake up to tinn. everyday, no idea why ... but I burnt my eardrums on loud metal after having surgery like 30 years ago. I still love rolling up to the gas station blaring what most people find obnoxious. The pandandlers leave me alone. ;)
Astrobytes: Yeah, a lifetime of hardcore techno, hardcore/punk, metal and DnB has done my ears no favours
PatrickMcGinnisII: I have 3 concerts lined up this year to attend. And Astrobytes can keep his Organs to himself. ;)
MFogleman: Are they ever going to give clash of code the option to pick your game type? Fastest mode is just a typing contest and reverse is half luck. It seems like a significant number of people just quit as soon as its not code golf
Astrobytes: :D
PatrickMcGinnisII: can u exit a clash w/o losing points?
Astrobytes: The only winning move in clash is not to play.
eulerscheZahl: there seems to be a way of finding out the type beforehand via inspecting the traffic
eulerscheZahl: but you can't actively choose the type
PatrickMcGinnisII: Wargames ^
Astrobytes: ;)
Astrobytes: Did we hear anything back from j4at about that?
eulerscheZahl: i didn't
struct: you only need to check playClash
struct: once you enter the lobby
eulerscheZahl: i don't want to enter the lobby
Astrobytes: ^
Nikanameu: why so long promotion timer
eulerscheZahl: to force you to take a break
eulerscheZahl: not even kidding, i wish i was
eulerscheZahl: for higher leagues the break becomes longer. 6 hours
Astrobytes: Similar systems should be introduced in all workplaces.
struct: this is why I submit from wood to legend all in one
Astrobytes: 7-day promotion
Astrobytes: (tiny little exaggeration there)
eulerscheZahl: you want to get promoted every 7 days at work?
Astrobytes: No, the second statement was a reply to struct. Though 7-day work promotions would be good too.
eulerscheZahl: could help to counter inflation
Darleanow: Abraham i lost the convo xD
Astrobytes: Abraham?
Darleanow: i was talking to a mate in a clash :)
Astrobytes: ah gotcha :)
struct: you are in class and not trolling world chat?
struct: o.o
struct: Didnt know this was possible
Astrobytes: hahaha
BrunoFelthes: is there any other way to sync an external file without use the chrome extension?
struct: are you talking about CG Sync BrunoFelthes?
BrunoFelthes: yes
struct: You can use CG Local, it also works for firefox
struct: also works for chrome
BrunoFelthes: my company blocks extensions
struct: and you dont need to login on store
struct: ah
struct: well CG local also requires an extension
BrunoFelthes: yeah, i cant install extensions
eulerscheZahl: i never got that: what's wrong with copy-paste to IDE?
struct: you might paste it into chat accidentally
eulerscheZahl: pastebins don't work
Nerchio: too long euler :D
BrunoFelthes: i do not work with one file
eulerscheZahl: me neither. i merge it into one file on build
BrunoFelthes: i work with mult files, and i have a command that merge the files and create a new file
jacek: cat a b c > d [solved]
BrunoFelthes: and open the merged file, copy and paste?
BrunoFelthes: i'm just lazzy
Kellthazar: maybe a command to put the merged result to the clipboard
BrunoFelthes: maybe it will help
eulerscheZahl: https://imgur.com/a/eCMTFnR that's how my setup looks like
eulerscheZahl: the merged file in the bottom corner doesn't cost much space and is easily accessible for copy
jacek: Book.cs :thinking:
BrunoFelthes: nice setup
eulerscheZahl: wasn't much of a help to download 500 replays from a top player and hardcode the openings from there
jacek: seems the 'stateless' mcts was a choice of algorithm by top players
Kellthazar: how do you folks work with the replay data? Is any export functionality to do so?
eulerscheZahl: https://www.codingame.com/playgrounds/53705/contest-tools-and-workflow/the-codingame-api
eulerscheZahl: parsing can be a pain sometimes. it's easy to extract stderr for your own bot
eulerscheZahl: but i wanted to scrape replays of other users. luckily the game summary was pretty excessive
jacek: but later
eulerscheZahl: https://pastebin.com/wm4repsX not the prettiest but did the job
Kellthazar: Cool!
Nerchio: oh my god :D
Nerchio: my eyes
eulerscheZahl: i wrote that in an hour or so
Nerchio: my drawing function was 7 loops inside one another couldnt bother doing anything else
eulerscheZahl: wait, what? why? how?
Nerchio: especially when you are tired the simplest option sounds the best, hard to make mistakes
eulerscheZahl: i don't see why you need loops there
Nerchio: you dont need loops
eulerscheZahl: also an important rule: don't code while tired. it will always backfire
gfhnpkv: my code got delete 2 times already how do i save it?
Nerchio: https://pastebin.com/HhNkrtg3 it was for discard actually, no judging :joy:
struct: you just need to press play my code for it to save
eulerscheZahl: int sumDiscarded = i + j + k + l + m + n + o + p + q;
if (sumDiscarded == calcCardDiscard) {
eulerscheZahl: that's one way to do it
eulerscheZahl: not the most efficient but it works
eulerscheZahl: you understood the theme of the contest
Nerchio: i was tired of writing sim for that game so yeah whatever works works
jacek: :scream:
jacek: what people would do just not to read the rules
struct: I just used recursion
eulerscheZahl: i threw one card. then another. causing duplicate states (throw bonus and coding, next throw coding and bonus)
eulerscheZahl: then zobrist hashing to find the duplicate
struct: for that I had "Double throw" on my action gen
struct: and just dif for (i...)for(j=i){actions[size++].throwAction(i,j);...
Nerchio: see euler that's a lot of work, and this ugly code not only I was sure was going to work but also didn't do any duplicates
eulerscheZahl: i wanted to catch a few other potential duplicates as well
StevenV: Hello guys
struct: hi
Kellthazar: Does anyone understand the 64-bit representation of Cards that bowwow posted in his PM?
StevenV: normally we would have a discussion topic on CG after a contest. Do we have it for GreenCircle?
Nerchio: sure
Nerchio: https://www.codingame.com/forum/t/green-circle-feedback-strategies/196574
Nikanameu: another promotion 2 hours much wow
StevenV: how can I find this link @Nerchio?
Nerchio: main page -> community -> forums or in IDE on the left side forums
Nerchio: and then find it in the list somewhere
eulerscheZahl: forum used to be a point on its own in the top bar
struct: Kellthazar its just to fit everything you need in 8 bytes
StevenV: I don't do that for the other contests, but I can still find the post somehow.
StevenV: I just forget how can I do it in the past :?
struct: 4 bits cant store up to 16 different values
struct: when he played review
struct: it would look somethign like this, give me 1 min
eulerscheZahl: search "feedback and strategies" + name of the game
simone.pelloni: ue
eulerscheZahl: often the post mortes are also linked on the problem overview page
struct: discard_pile += 0x200000000ULL;
struct: hand -= 0x1000000ULL;
struct: played_cards += 0x1000000ULL;
StevenV: thank you guys :D
struct: oh but he could do bit.bonus += 2;
struct: with the union
jacek: so people did do bitboards in this game
struct: ofc, I did too
struct: not bitboard
struct: just packed data
struct: Kellthazar maybe what you are looking for is this https://en.cppreference.com/w/cpp/language/bit_field
Washier: where can I find this card game?
struct: We need to wait for cg to release it
Washier: ah ok
Westicles: new puzzle event tomorrow, could be freecell
jacek: is it french
eulerscheZahl: unlikely
StevenV: I wonder If we have fall challenge 2022 or not
Kellthazar: thanks, struct. I'm not familiar with this kind of representation.
Kellthazar: https://pastebin.com/J4x6fe2d
StevenV: wow
eulerscheZahl: ah, bit fields
eulerscheZahl: oh, was linked a few messages above. sorry
wlesavo: oh, val and bowwow shared pms, nice, almost thought they wont
Kellthazar: Oh, I'm reading now that bitfield is not supported in Golang.
jacek: :scream:
eulerscheZahl: both wrote PMs in the past
eulerscheZahl: and usually another one on hatenablog that's more detailed
eulerscheZahl: https://bowwowforeach.hatenablog.com/ https://valgrowth.hatenablog.com/archive
wlesavo: oh thx
wlesavo: i really liked the random node states aspect
Kellthazar: Japan did pretty well in this contest.
eulerscheZahl: japan is strrong on CG in general
jacek: we need to get more weeb
eulerscheZahl: also on topcoder optim. and on atcoder of course
wlesavo: atcoder is the one cho kudai established?
eulerscheZahl: no idea who founded it
eulerscheZahl: they have algorithmic contests (like codeforces) and an optim once a month
Kellthazar: 145 / 5.000 Resultados de tradução I wish I had known this world of competitive programming when I was younger or that there was this kind of community in my college days.
eulerscheZahl: you have us now
DomiKo: euler atcoder is weird
eulerscheZahl: in what way?
eulerscheZahl: easier to navigate than topcoder
DomiKo: it isn't just a regular site like codeforces.
eulerscheZahl: i never really got into it. what are the differences?
DomiKo: you can do well in competitive programing in general but you won't at atcoder
eulerscheZahl: different tasks?
wlesavo: yeah, just googled it, he did founded atcoder
DomiKo: competitive programing have many hmmmm let's say different styles of tasks
DomiKo: and atcoder style is really hard for most not Japanese programers
eulerscheZahl: i'm doing ok-ish on codejam but i'm a huge failure in some codeforces rounds. so i know what you mean
struct: you can do well at bot programming and very bad on codeforces
eulerscheZahl: and i did really well on some hackerrank rounds
DomiKo: I know many grandmasters from CF that can't do second or even first task at atcoder contest
StevenV: they are very different
eulerscheZahl: like 20 out of 10k
DomiKo: so that's why atcoder is mostly Japanese, and only some really good programmers compete with them
eulerscheZahl: ok, that sounds extremely strange. i never tried their algorithmic rounds
eulerscheZahl: had a look at their schedule, was in the middle of the night
struct: I tried both, I was so bad and both that I just quit
struct: bad at both*
eulerscheZahl: i enjoyed the hackerrank style. then hackerrank quit
eulerscheZahl: now they have occasional contests. for women only. or with $500 for the winner. but you can't keep but have to donate to a charity from a given list
jacek: i identify as woman
eulerscheZahl: with organizations like "black women who code"
jacek: oO
DomiKo: yeah that's true
eulerscheZahl: not even cherry picking. they are all called like that
Nikanameu: domiko give an example of why it's as hard as you say
DomiKo: I've written only one contest at hackerrank
eulerscheZahl: you were a problem setter? cool
DomiKo: no no
DomiKo: I participated*
eulerscheZahl: oh. less impressive :D
DomiKo: Nikanameu I can't really explain it, they are just so different and most competitive programmers are really used to some types of tasks, and if you give them different ones then won't be that good
Nikanameu: is there a language barrier problem
DomiKo: not really
eulerscheZahl: i see surprisingly many struggle with interactive problems
eulerscheZahl: here on CG they are fairly common
jacek: i/o stuff?
eulerscheZahl: i think it's the logic of getting extra information during the run
eulerscheZahl: somehow their minds don't work like that. querying for more relevant info
DomiKo: Nikanameu can give you an example of styles. If you gave me a task from Polish competition. I would tell you if that task was from Warsaw, Wroclaw or Krakow. In each site people have a little different style of tasks, and we can mostly easily tell the difference.
eulerscheZahl: task
Kellthazar: I didn't know Chokudai. Pretty impressive.
DomiKo: it's not about writing style
DomiKo: it's about task "style"
jacek: you need to watch more anime
struct: if its a portuguese task it will be add a and b.
DomiKo: Portugal have him: https://codeforces.com/profile/brunovsky
Nikanameu: https://atcoder.jp/users/chokudai Affiliation AtCoder Inc. CEO
eulerscheZahl: https://cphof.org/profile/topcoder:chokudai
struct: imagine a cooperation between cg and atcoder for a contest o.o
jacek: :scream:
Dynamolten.: hello Luca!
jacek: luna?
DomiKo: ehhh after reading some PMs I'm really sad that I didn't have much time :(
jacek: they should have announced it earlier. everyone gave up hope about cg contests
eulerscheZahl: or announce it at the time they did but start it later
eulerscheZahl: less bugs
Westicles: I still have no idea what green IT means
eulerscheZahl: saving energy
eulerscheZahl: by not coding like this https://pastebin.com/HhNkrtg3
DomiKo: ohhh god
jacek: by training NNs on coal energy
struct: how much time has your NN spent training?
Westicles: oh, so that's why the phones are used, I get it
eulerscheZahl: a concept new to americans?
struct: also does your last NN handle trask prio BONUS for other?
Kellthazar: hahahaha
jacek: it was mostly fiddling with hyperparameters, now i can train the one I had in few hours
jacek: what task prio bonus?
Westicles: you wouldn't call it green here, bad associations with greenpeace
eulerscheZahl: the missing legal action
struct: the one that wasnt given in legal moves
jacek: oh, no
DomiKo: ohh boy
jacek: was it important?
DomiKo: jacek top1 incoming
struct: its the difference between rank 10 and rank 1
jacek: can you share a replay when they use it?
eulerscheZahl: i feel like jacek got top10 without even trying to rank high as a primary objective
Kellthazar: Vim 9.0 released... o.o
jacek: well im happy i reached legend
jacek: refurbished phone would be a bonus. but all i want is refurbished t-shirt
eulerscheZahl: no tshirts this contest
jacek: :(
eulerscheZahl: we should put together and get a tshirt for jacek
Razovsky: im in !
struct: Let me check my collection
Westicles: everypony chip in a dollar
eulerscheZahl: this one looks like he would like it https://www.joom.com/de/products/61b42343bab32f01728301a8
jacek: :tada:
Razovsky: My God eulerscheZahl, your pastebin ! It's so funny :P
eulerscheZahl: it's from another user who shared it here. but he knows it's bad
eulerscheZahl: and i know he can do better
Razovsky: when even a double loop TImes out on cg
Razovsky: trying this is balsy !
Razovsky: i admire the dedication
struct: this is the closest thing I have to that
struct: https://i.imgur.com/SEDjb1t.png
eulerscheZahl: i know the game from the 729 alone
struct: ofc this was your idea after all
eulerscheZahl: :D
Westicles: 5D Chests
Westicles: http://chat.codingame.com/pastebin/8155acc6-e4d8-4158-b2b2-6abd0f49b9db
Westicles: ah, well you got the idea
eulerscheZahl: once there was someone messaging me a code in private. actually being proud about it, while it was horrible
eulerscheZahl: in the terms of defining 4 different variables A,B,C,D for the witch contest instead of an array[4]
eulerscheZahl: i shared it here, but blurred the username for anonymity
eulerscheZahl: then the user shared the same snippet in the post mortem
jacek: 729?
struct: its a game you never played jacek
struct: Maybe a NN could work there idk
eulerscheZahl: 3**6 STC, possible layouts in the top 2 rows
eulerscheZahl: to look up valid moves
struct: before I had 4096 if it includes illegal states
20220628: LOL this interface is shit
eulerscheZahl: your feedback too
20220628: so u agree cos u attack me
Kellthazar: ?
struct: can't argue with this logic
eulerscheZahl: no. my point is: you say it's shit without giving any reasoning
20220628: right then here it is
20220628: i say print print print i get nothing
20220628: regular code in regular work I get answer answer answer. stonks up
darkhorse64: The sad conclusion of the contest is that the best is to release as early as possible with lots of technical debts :thinking:
struct: I only released starting at turn 5 I think
eulerscheZahl: games could have been a bit longer
Kellthazar: darkhorse64, oh, the irony! XD
eulerscheZahl: with more apps and/or higher costs per app you would have to be more careful
eulerscheZahl: and CI would be even stronger :/
struct: could you start the game with 4 debth?
Nerchio: i think referee blocks that
Nerchio: but dont quote me on that
struct: Yeah I never saw it
darkhorse64: es
darkhorse64: yes
struct: you could?
darkhorse64: sorry, 4 debts or 4 bonus is disallowed by the referee
struct: ah ok
struct: thanks
struct: I guess player 1 would just move to task_prio if it happened
struct: since CI would be useless in that turn
darkhorse64: That said, software delivery IRL is like that
struct: not task, daily sorry
OldJohn: Hi, is there a link of this chat archive ?
Wishbone: This is an interesting chat to follow. I have absolutely no idea what any of you are talking about, but much of it sounds intriguing ;-)
eulerscheZahl: https://cg.spdns.eu/wiki/Special:RecentChanges?limit=50&days=7&enhanced=1&urlversion=2
struct: We are talking about the previous contest Wishbone
OldJohn: Thanks Euler.
OldJohn: (BTW I never thank Euler enough fot beginning the graph theory !)
jacek: oO
eulerscheZahl: :D
eulerscheZahl: the king had to cross all the bridges after all
Wishbone: Thanks struct, that gives a bit of context at least. Don't know much about it since I only joined yesterday.
Wishbone: Joined the site, that is.
jacek: its general chat, not only mad pod racing
Wishbone: Is THIS pod racing? :-D
jacek: no, pod racing is quite old contest ~
eulerscheZahl: one day you will show up and see no chat. then you can find some of us on discord
Kellthazar: Is "Coders Strikes Back" the best contest ever made here?
Wishbone: Yeah, just joined the Discord. I actually thought this was one of the Discord channels, but that appears not to be the case.
eulerscheZahl: opinions differ on the best game
eulerscheZahl: for me it's hypersonic and code of ice and fire
Nerchio: code of ice and fire was pretty fun
darkhorse64: crystal rush is one of my favorites
eulerscheZahl: i hate fog
darkhorse64: fog is quite light in this game
OldJohn: Othello is my favorite :-)
darkhorse64: for boardgames, yavalath
Kellthazar: The pacman contest was really nice.
OldJohn: My program is like me, now ! Do not know what to play after the opening book.
struct: just book until the end :D
jacek: i dont know how to play othello. i would struggle to get legal moves on real board
OldJohn: I know a line I play as black that I know till the 31-33 end
OldJohn: Only once on Internet White played it correctly.. I suppose it was using a program
jacek: you need to counterbook nyanyan
jacek: you are our only hope
OldJohn: Let see what it plays :-)
OldJohn: With white it plays a draw line... My program does not find the draw after the book but I know it is there. And same as black !
struct: is the game solved?
OldJohn: No, but this line is
struct: not even weakly solved?
struct: oh it isnt
OldJohn: As far as know it is not
sqrtNOT: I keep getting captchas on clash of code :cry:
Dynamolten.: my friend too!
boumagik: anyone ranked 60+ at 2048 (https://www.codingame.com/multiplayer/optimization/2048)
Darleanow: Hello, what's Euler's website ?
Darleanow: i'm looking for clashes database
5DN1L: it's down at the moment
5DN1L: i guess it'll be up again on 1 July
Darleanow: okay thank you sir !! :)
5DN1L: np :)
Astrobytes: euler's gonna have to start charging for use of that to keep the dynos flowing
OldJohn: Ok, as expected my program plays a losing move out of book ! And Zebra program knows the line well !
FoxHound1935: Im new to coding, is it good site to learn it?
5DN1L: this is a good site for practising
5DN1L: for new learners,tTry codecademy.com , 'The Coding Train' on youtube, or first levels in codewars.com
5DN1L: try*
FoxHound1935: Okey, I will try those. Thank you very much
OldJohn: Correction as black it plays a bad line at move 31
Wishbone: From what I've seen so far, this is probably not the best place to start if you don't already know SOME programming.
Astrobytes: Oldjohn: not sure there's enough time on CG to manage to find all those draw lines, or indeed enough space to book even some of all possible draw lines discovered so far :)
Astrobytes: *manage to find many of
OldJohn: A good program should be able to play them
jacek: boumagik any question?
Astrobytes: Room to improve then, fix it! as we say here
Astrobytes: :)
boumagik: jacek I'm looking to improve my score at 2048. I feel like i should be pruning during the beam search (currently not). Any pointer ?
jacek: oh, i just brute force minimax
jacek: what is your score function
jacek: i have the snake-like
boumagik: I'm on a beam search algo, so it's going through the tree of possibilities while selecting a beam of best states at each iteration
Uljahn: i use beamsearch with 3 actions and remove duplicate states from the beam, also snake-shaped score
Astrobytes: but how are you evaluating the states boumagik? Score only or snake?
boumagik: score only, I don't even know what you mean by snake
boumagik: I suppose this is the pointer I'm looking for
Astrobytes: snake is like an optimum values version of the grid. So there is a score for each line in the 'snake'
jacek: https://i.stack.imgur.com/Sqpbc.png
Astrobytes: thank you jacek, much easier to visualise with a visual :)
boumagik: thanks for the visual
Wishbone: Small victory: just did Death First Search - Episode 1. It ran (correctly even) on the first try :-D It's probably horribly inefficient but it works, and it's a far cry from the sort of things I deal with in my work.
boumagik: how did you end up figuring out the snake ?
Astrobytes: nice one Wishbone :)
jacek: :tada:
jacek: have you played 2048 yourself? this is something what people come up with
jacek: to get highest value in the corner
darkhorse64: if you play the game, you find out
Astrobytes: most people have their own version but it follows roughly the same pattern
Wishbone: I haven't worked with graphs since... Uhm, that would be 2001, I think.
Wishbone: And that wasn't even work, that was education.
boumagik: did the snake make for a big improvement once you implemented it ?
jacek: for me it was much better than score only
Astrobytes: before I came to CG my graph theory was limited to simple trees only Wishbone :)
Wishbone: Astrobytes: Yeah, I came here looking for just a few fun coding challenges, but I'm actually also learning stuff. It's great :-)
Astrobytes: Yeah, I've learned a ton on here that I wouldn't have otherwise, CS-wise or otherwise mathematical
Wishbone: http://chat.codingame.com/pastebin/4ed4e1d1-b477-4c05-ad35-7a0fdb94c2fd
Wishbone: Huh, TIL, if you type too long a message in the chat, it goes to pastebin automatically.
Wishbone: Or, well, it makes a pastebin link which doesn't work...
Astrobytes: It normally works but been broken for a few weeks or so
Uljahn: at least the chat still does
Astrobytes: So true Uljahn
Wishbone: Short sentences then :-/
Astrobytes: No, I think it works on line breaks?
Uljahn: 4 or more newlines i guess
Wishbone: tl;dr; I think it's interesting to see other people's solutions after you've solved a puzzle.
Astrobytes: For sure.
Lisa-Has-Ideas: I only have a day left.. I need some Approvals.... anyone, anyone ???
Lisa-Has-Ideas: https://www.codingame.com/contribute/view/182986ce43712d2b4e105ac72cacc96208e53
Astrobytes: Lisa-Has-Ideas: it's quite normal for the approval to take longer, you can republish as soon as it expires
Astrobytes: and FWIW it looks clashable
Astrobytes: don't see why people forced it into easy puzzles
Astrobytes: anyway, gn all
BugKiller_328: hi, guys. I have a question about minimax
struct: gn
struct: yes BugKiller_328?
BugKiller_328: when I make the connect4 AI with minimax
BugKiller_328: in the early stage, we have so many possibilities, so can't go deep
BugKiller_328: but later, board is filled, I think minimax can go more depth
BugKiller_328: how can I decide the depth in this kind of situation?
BugKiller_328: I hope my question make sense to understand.
struct: like when to start using minimax?
struct: or the depth you want to search?
BugKiller_328: yes.
BugKiller_328: if board is almost empty I think we can't go too much depth
BugKiller_328: but later, (game goes by), I can go more depth
BugKiller_328: Am I right?
struct: yeah end games should be fsater
struct: faster*
struct: but your idea is to switch between to searches?
struct: one for early and one for late?
BugKiller_328: yes. my idea is to use different depth for minimax
struct: ah look iterative deepening
struct: its probably what you are looking for
struct: you will search while you have time with it
BugKiller_328: Thank you for guiding me this keyword. :)
BugKiller_328: I'll try to learn about it. :) Thanks
struct: np
Aldoggen: hey, for some reason codingame thinks I speak french (half of my country speaks it, the other half, including me speaks dutch). any idea how to get rid of the french chat?
Adam9910: get rid of all the french
Aldoggen: bit too much effort. was looking for something I could accomplish tomorrow
struct: Not sure you can close it
struct: It joins you based on your country flag
Adam9910: when you have open any game you have settings in the left panel
Aldoggen: I tried to look in the settings some time ago, didn't find anything useful yet
Adam9910: i see language there
Aldoggen: it lets me switch between english and french in that panel lmao
Aldoggen: thanks for the suggestions though
boumagik: thanks jacek Uljahn and others, I'm pulling 20m+ on 2048 now. Need to fix timeout on couple of games
struct: nice
Bob_Rocks: What are the maximum values for the amount of cyborgs at a factory on turn one of Ghost In the Cell/Cyborg Uprising
Bob_Rocks: the maximum values
Aldoggen: yeah sorry I was just trolling
Bob_Rocks: very funny
Aldoggen: I just joined cyborg uprising to go have a look. for the player, it's 15-30.
Aldoggen: I assume it must be the same for other players too, because that's only fair
Bob_Rocks: But the minimum is 0 I believe
Bob_Rocks: Oh I guess I should've specifiede
Bob_Rocks: I meant specifically any factory
Bob_Rocks: but I guess the max would be 30 for any factory?
Aldoggen: for neutral ones I see 0 3 and 13
Bob_Rocks: I thought I saw 28 once
Aldoggen: I guess the max wouldn't be very useful to know no? it's the neutrals with the minimum you need to take first
Aldoggen: but 30 would probably be a good guess
Bob_Rocks: okay
Aldoggen: thanks for showing me this bot problem btw, I like this one
Bob_Rocks: lol you're welcome I guess
Aldoggen: I played so many flash games like this
Bob_Rocks: well I absolutely suck at it
Aldoggen: as long as the bot wins it's fine lol
Bob_Rocks: I'm bad at the game and my bot is also bad at the game lol
Aldoggen: did you read jaceks report on the last contest?
Aldoggen: he made a neural network
Aldoggen: never knew the rules himself
Aldoggen: and the bot got pretty high
Bob_Rocks: I have not read it
Bob_Rocks: but personally I don't really want to win
Bob_Rocks: I just wanna learn something cause I suck at programming these things
Aldoggen: what language are you ussing?
Bob_Rocks: I'm using Python
Bob_Rocks: I've recently been trying to learn some game and control theory to get a good algorithm with finite state machines or with some function that's generated at the start of the game and then matched
Bob_Rocks: I was also planning on getting some of my friends to work on this too but they only know Lua and I'm not programming this bot in lua
Aldoggen: yeah, I wouldn't like to do it in lua either
Aldoggen: I'm gonna be fair, I know some of those words, and seems like it'd be pretty hard to do something like that
Aldoggen: like, I wouldn't know what a good cost function would be for something like this
Bob_Rocks: Me neither but there algorithms that show you candidates for cost functions
Bob_Rocks: its like taking dynamics and then plugging it into an inverse lagrangian
Aldoggen: okay, that's too much physics :)
Bob_Rocks: I can't think of a better way to do it besides like minmax or some other changing function method in some way Like the function is a piecewise where if you enter certain states in the game it enters a possibly discontinuous state in the function
Bob_Rocks: TLDR a fininte state machine
Aldoggen: well, maybe not too much, but I've never seen things like lagrangians. I've done math tho if you want to vent
Bob_Rocks: I **would** say something like lagrangians are just energy functions (which they kind of are but it's not like a hamiltonian where it's the total energy)
Bob_Rocks: Yes the energy of a system
Aldoggen: and I'm assuming we're talking kinematics here, so no chemical potential energy and all that stuff
Bob_Rocks: No that's allowed
Bob_Rocks: L (the lagrangian density) = T - U Kinetic energy - potential energy
Bob_Rocks: So gravitational, chemical, spring, whatever
DollarAkshay: #Denmark
Bob_Rocks: but anyway, I can't think of a better way to make something
Bob_Rocks: other than an ever changing finite state machine
Aldoggen: minmax sounds good tho
Bob_Rocks: I hate using min max
Bob_Rocks: it makes me feel like I'm so inept that I can't bother to make a better solution than minmax
Aldoggen: I have been able to avoid it until now
Bob_Rocks: I'd rather use some simplified form of minmax where the initial future states are calculated about 1 or 2 steps in advance
Bob_Rocks: and then I do some analysis based on that instead of using the remaining time per frame computing the rest of the states
Aldoggen: 2 states sounds like not a lot tho
Aldoggen: but minmax + some kind of eval sounds like the way to go
Bob_Rocks: I agree so maybe I'd say like 10 states
Aldoggen: yeah, sounds more like it
Kellthazar: I like minimax with alphaBeta... its so clever.
Aldoggen: I'm just gonna do what I always do and try to identify problems from gameplay. ad hoc solutions, here I come!
Bob_Rocks: yeah that's what I was thinking but it still makes me feel stupid lol
Aldoggen: because you're walking the paved path
Bob_Rocks: what do you mean
Aldoggen: standing on the shoulders of giants
Aldoggen: doing the things a lot of people have done
Aldoggen: well maybe not exactly that, but idk
Bob_Rocks: lol
Bob_Rocks: My idea now is to try and create a simulation of the game that I can step through and try to beat an algorithm that's pretty good at beating a novice
Bob_Rocks: specifically stepping through and giving commands
Bob_Rocks: then I can see what strategies that I come up with during the game
Bob_Rocks: so that I can implement those control states during the algorithm
Aldoggen: I do some of that too :) in the mad pod racing I just added heuristic after heuristic
Aldoggen: here I plan to do the same
Aldoggen: but remind me to go to bed soon, I live in europe. it's 2 am here XD
Bob_Rocks: oh lmao
Bob_Rocks: well yeah you should go to bed 2am programming is probably not good for you
Aldoggen: morning-me is gonna be glad if I do that, but now-me says I need to finish this small thing first
Bob_Rocks: well it is what it is
Bob_Rocks: wait a minute
Bob_Rocks: for the neutral factories there is a larger chance for factories to be 0 than any other number
Bob_Rocks: at least that's what it feels like
Bob_Rocks: but I wonder what the chance is specifically
Bob_Rocks: well I can compute it but I"m not sure I want to
Aldoggen: I'd say at least half of them are
Bob_Rocks: I coudl just run the code that does nothing for the first frame and then basically deconstruct all the probabilities for every number
Aldoggen: but I havent seen much
Aldoggen: and it might change in higher leagues
Aldoggen: but most important thing is just to decide and start doing something :)
Bob_Rocks: well I'm just gonna start reverse engineering the probabilities in the game
Kellthazar: are you talking about the pod racing game?
Bob_Rocks: Cyborg Uprising / Ghost in The Cell
Aldoggen: now it's back to cyborg uprising
Bob_Rocks: For pod racing I think I'll have to reverse engineer the thrust physics
Bob_Rocks: if I can get a set of equations then I can at least look at them and maybe find something
Aldoggen: most of the rules (like turn speed) are specified once you get higher leagues
Bob_Rocks: Bruh come on
Aldoggen: yeah, I found it a bit offputting too
Bob_Rocks: Litearlly gatekeeping my simulation making
Aldoggen: you don't need a very good bot to get out of wood tho
Aldoggen: bronze was a breeze too
Bob_Rocks: for pod racing?
Aldoggen: silver took some work
Bob_Rocks: Bruh
Bob_Rocks: well I haven't tried it in about 2 years
Bob_Rocks: I couldn't get out of wood 2 years ago
Bob_Rocks: but at least I'm bronze in Cyborg Uprising from my 900 lines of C# that I wrote like a year ago
Bob_Rocks: half the code was documentation
Bob_Rocks: and yet I still dont understand what it does to this day
Aldoggen: mfs in bot games be like: "if I don't know what I'm doing, you sure as hell don't know what I'm doing"
Bob_Rocks: lol
Bob_Rocks: Automaton2000 is this ai
Automaton2000: oh, i got it :)
Bob_Rocks: Automaton2000 answer the question is this ai
Automaton2000: and when i need to finish my bot
Bob_Rocks: well it is what it is
Aldoggen: all right, I'm heading to bed
Crosility: The code must go on.
HenroLST: smh not coding in your sleep during forcefully induced lucid dreaming?
Crosility: Are you asking for help Naya08, or where to begin?
Crosility: What do you need help with?
Crosility: A puzzle, programming, starting, .. what's your goal?
HenroLST: for c++, if i wanted to find the value of the first element in a vector that fits a certain criteria, what would i do? just iterate through the whole vector in a for loop?
Crosility: You're asking about search criteria?
Crosility: That's one method, if your vector is small enough.
Crosility: If it's unsorted, then yes, 1 by 1 search till a criteria matches is the best case.
HenroLST: yeah, I was just wondering if theres another method, such as similar to std::find or std:: find_first_of
Crosility: No, essentially that functionality is the same as just implementing a basic loop, and going through the vector/list.
Crosility: But, apparently there is the algorithm library.
Crosility: That does it.
Crosility: So, I'm wrong.
Crosility: https://stackoverflow.com/questions/571394/how-to-find-out-if-an-item-is-present-in-a-stdvector
Crosility: It does the for loop for you.
HenroLST: nope your right i think, it doesnt return a iterator or integer value, its a binary expression i beleive
HenroLST: oh wait nvm it does return a iterator
Crosility: Sorry I was wrong at first, been a few years since I used C++, forgot about algorithm library. :P You're welcome.
Zaos: is there anyway to head back into a clash of code
Zaos: like I wanted to finish my code but the timer ran out
HenroLST: thanks! finally solved the spoons after realizing it was not just literally next index :sweat_smile:
HenroLST: zaos, i dont think there is
HenroLST: however using the coc chat you can ask others still doing for test cases and the problem
Zaos: damn that sucks, I really wanted to figure that out
HenroLST: do you remember the problem?
HenroLST: you can go to another IDE to try
HenroLST: i mostly use USACO's free IDE under resources in USACO guide
HenroLST: actually depends on language
Zaos: i am probably going to usle idle
HenroLST: USACO only for python and C++ and Java i think
Crosility: Man, Blunder - Episode 1 (https://www.codingame.com/training/medium/blunder-episode-1) was a lot of fun.
HenroLST: Just took a break to verify my C++ language cause jsut realized verification test for a language is a thing :sweat_smile:
Gameonn: I'm using PHP for programming and all my coding tests.
HenroLST: oo crosility this looks fun
Crosility: See, a really nice logic-tree, 2d array, state machine puzzle.
Gameonn: Is it good to go for long term?
Crosility: Well, off for now. been fun. Did my 1 puzzle/day. And a clash. Good luck and have fun Coders
HenroLST: lmao ive been doing similar, does wonders for improvment, cya later
HenroLST: dont forget to lucid dream coding