Chat:World/2021-06-03
Lueyung: any sugg for a beginner
Chainman: heyyyy
Best-Coder12: My English and my coding are both bad. Now I can communicate with google translate. Does anyone know of a simple coding site?:sob:
Luj8n: codewars is a good one
Bye_Byu07: nice choice
Pick8chu: hihihi
Bye_Byu07: hoehoehoe
Butcher2013: join samsung sds
Butcher2013: (╯°□°)╯︵ ┻━┻
Chainman: hi
jacek: oO
Astrobytes: Ban next time,
jacek: NochillBytes
bltntLego: ppl acc use this. kinda cringe ngl
Astrobytes: What?
bltntLego: im here cos of school
Astrobytes: Well go and learn
Astrobytes: Stay out the chat unless you have a question.
KalamariKing: That's what you're here for, isn't it? learning?
bltntLego: is there any sort of lessons or sumthin
KalamariKing: If you're in class right now or your teacher wants you here, then you shouldn't be in chat
KalamariKing: This site isn't for learning/beginners, but more of practice/challenges
Astrobytes: Have you not learned any coding whatsoever in your class?
bltntLego: yes pretty much basics
Astrobytes: Which puzzle are you supposed to do?
bltntLego: so I'm in the Loops training
SHAIT: Hey man sorry for that lmao
bltntLego: im asked to do 3 loops puzzles
Astrobytes: You were told to do this or you chose it?
jacek: temperatures and the descent are easy
Astrobytes: np SHAIT but fix your banter :P
Astrobytes: Thor if you haven't already done it
bltntLego: i was told to do it
Astrobytes: Don't do anything outside of the easy puzzle section for now
KalamariKing: wait, ok, do some people adapt easy challenges into clashes? I swear I've seen this before
Astrobytes: Maybe some related subject or simplified version, possible.
jacek: time to convert space maze into clash
Astrobytes: :P
sprkrd: Nintendo would be even a harder one, wouldn't it?
Astrobytes: lol. Guess that depends on your mathematical and crypto skill level :)
sprkrd: At least in Space Maze you have a clear vision of what you have to do. It's an implementation challenge more than a conceptual one
jacek: so i would turn that into ascii. ezpz
sprkrd: I remember around the time I was working on the Nintendo problem, there was some notice that Nintendo was working on a new console. A year or so after that, I realized that they were probably talking about the Switch :O
sprkrd: Should I ever had an interview with them, maybe there would be a little part of me in the Switch (assuming my conjecture is right)
MSmits: hi there
sprkrd: Yo
KalamariKing: Hey
MSmits: 30 seed book finishing today. I am guessing it will have taken around 15 hrs
MSmits: then 31 will prolly take 24 hrs or so
MSmits: not sure if i will get to 36 in a reasonable amount of time even though I have the memory =/
sprkrd: what are you up to? Chess? You were talking about books yesterday too
MSmits: oware
MSmits: https://www.codingame.com/multiplayer/bot-programming/oware-abapa
sprkrd: And when you say books, you mean opening books?
MSmits: no, endgame books
MSmits: first solve all states with 1 seed, then 2 seeds, then 3 seeds etc.
MSmits: full game has 48
MSmits: realistically, i can get max 36 i think
MSmits: google could do 48 easily
sprkrd: oh god, will you be able to submit that to CG? Or is it just for local?
MSmits: local, but i want to use the data for supervised learning of a NN
MSmits: submitting to CG will be a bit hard. Total amount of data will probably be around 50-60 GB:P
sprkrd: I see. Dunno the game, but probably there are a lot of symmetries and rotations that you can exploit. Isomorphic states and all that
MSmits: there are not any
jacek: not much in oware
MSmits: none at all
MSmits: 0 symmetries
MSmits: just transpositions
sprkrd: Oh, hence my disclaimer about not knowing the game :sweat_smile:
sprkrd: My conjecture was purely based on the preview
MSmits: yeah, many games here have symmetries
MSmits: yavalath has 12
KalamariKing: jeez
MSmits: most have 8
jacek: those squares :unamused:
MSmits: nine mens morris is nice because it has 16 symmetries if i counted them correctly
sprkrd: Maybe you can start a distributed computing project to get you book for all 48 seeds
MSmits: you can exchange inner and outer ring
MSmits: sprkrd the problem is that you cant really distribute it very well
MSmits: you need to refer to all the lower books
MSmits: everywhere in memory
MSmits: bottleneck is lookups
MSmits: not calculation
MSmits: i am not sure if you can parallelize disk access
sprkrd: Mmmh, yeah, if it's +50GB you have to exchange information with the disk all the time
MSmits: yes
jacek: d you have SSD nvme?
MSmits: i have SSD yeah
KalamariKing: nvme or sata?
MSmits: hmm, not sure actually
sprkrd: Linux?
sprkrd: in linux you can list all the devices in /dev
MSmits: windows
KalamariKing: is it uber-fast or only mostly fast
sprkrd: if there's one device that starts with nvm, then it's nvme
sprkrd: ah, then dunno anything about windows
sprkrd: probably there's a way to know, too, should you be intereseted
sprkrd: interested*
KalamariKing: You could go through the properties tab on disk management, but ig it doesn't particularly matter
KalamariKing: Just be cautious not to overload the drive, flash chips only have so many write cycles
sprkrd: Use SMART regularly to run diagnosis and all that :relieved:
jacek: the limited write cycles isnt problem in typical usage
jacek: but is generating endgame books typical usage? :thinking:
sprkrd: I mean, when you install a modern game you can also end up moving around +60GB of data
sprkrd: So I would say it's not that bad
sprkrd: I did the calculation for my drive, and its lifetime in terms of write cycles is way beyond its lifetime on terms of other factors
sprkrd: SMART still shows a 0% "write budget" usage after 2 years
KalamariKing: Could have just had bad chips, but I killed a few blocks on my old ssd messing with nn stuff
sprkrd: couldve been older drive too. recent nvme drives have much longer lifespans
MSmits: endgame books is not typical usage :)
MSmits: I take 2 bytes at a time
MSmits: randomly
KalamariKing: yeah ok, that'
KalamariKing: s not bad
MSmits: could be anywhere on the disk basically
MSmits: with a large enough book
MSmits: i dont mean random but... just a full spread
MSmits: unpredictable
KalamariKing: I was reading a couple mb from the same bits, so they wore out
KalamariKing: like, a couple million times
MSmits: wow that happens 1?
MSmits: ??
jacek: from reading?
KalamariKing: writing and reading
MSmits: what do you mean only so many cycles, do you mean in its lifetime?
MSmits: or per second/
KalamariKing: didn't have too much knowledge abt 'optimization' and 'load that into ram
KalamariKing: yeah, lifetime
MSmits: I load everything in RAM that I can
MSmits: but it gets full :)
MSmits: using 30 GB for it atm
KalamariKing: how much ram you got?
sprkrd: Just another reason why NNs are bad :no_mouth:
KalamariKing: jesus
MSmits: I have 32
MSmits: sprkrd this is not typical for NN :)
MSmits: just the way i choose to do it
MSmits: NN usually tax the cpu/gpu or maybe tpu, not your SSD
sprkrd: MSmits No no, I was talking about KalamariKing wasted SSD
MSmits: ohh ok
KalamariKing: the only reason I wore out the chips is because I was using a potato laptop with a measly 2gb ddr3
MSmits: oh, this was using some kind of swap file because of lack of RAM ?
KalamariKing: Yeah pretty much
MSmits: I see
KalamariKing: But it was... diy, and not built at all smartly
MSmits: well when I use a meta mcts, I tend to store in a persistent dictionary, so thats a lot of drive usage also
KalamariKing: true, yeah
codin_computer: help
MSmits: is there some way to diagnose your SSD, to check how close it is to needing replacement?
KalamariKing: with>
sprkrd: MSmits I could tell you in Linux
KalamariKing: MSmits I use samsung magician, but my drive uses samsung flash
sprkrd: In Windows, no idea, but it must be easy, sure enough
MSmits: hmm ok
MSmits: knowing it's possible is enough, google does the rest :)
KalamariKing: windows doesn't provide much in the category of hardware testing, its all community
MSmits: I see
jacek: google smart ssd windows :?
sprkrd: (I'm not a Windows hater btw, but most of my technical experience is with Linux, I use Windows mostly for games)
KalamariKing: Yeah, same... linux is getting better gaming capability, but windows steam is better
KalamariKing: linux has much less overhead and much 'deeper' tools tho
KalamariKing: and the os doesn't hog 40% of your cpu at all times :eyes:
sprkrd: I don't like to mix things up. Even if Linux gaming was on par with Windows, having the "games" partition and the "work" partition feels natural to me
sprkrd: then I have a classic HDD I use to share files between the 2
sprkrd: Did the whole computer set-up myself. I take pride on that :D
KalamariKing: building too?
sprkrd: Yeah
MSmits: windows does not hog 40% of my cpu :P
codin_computer: hi sprked
sprkrd: Back when you could buy GPUs
sprkrd: Nowadays you can't
sprkrd: Yo, sup
KalamariKing: Yeah lol, not even prebuilts have them
codin_computer: remember me
KalamariKing: codin_computer you said you needed help? just ask
MSmits: I think windows uses 1% or less depending on what i do
codin_computer: yeah i fixed it
KalamariKing: nice
KalamariKing: MSmits lucky
MSmits: not really, it helps if you have a modern 10 core cpu :P
codin_computer: wow...
codin_computer: i think i need help actually
KalamariKing: I have an 8 core I think, r7 2700x
MSmits: oh thats fine
sprkrd: codin_computer yeah, I remember :relieved:
MSmits: upgraded from 4 core old cpu
KalamariKing: handles rendering just fine, so I'm sure its fine
MSmits: rendering should be done by gpu
MSmits: afaik
sprkrd: there's a benchmark for CPUs based on rendering
MSmits: oh I see
KalamariKing: that and I do 3d rendering
codin_computer: (╯°□°)╯︵ ┻━┻
sprkrd: It's not its intended usage, is just for throwing some numbers on how fast you CPU is
MSmits: ahh
KalamariKing: codin_computer literally just ask
**codin_computer flips a table
codin_computer: (╯°□°)╯︵ ┻━┻
MSmits: he's trolling
KalamariKing: probably
MSmits: was trolling yesterday
codin_computer: ???
MSmits: Astrobytes
codin_computer: are you a real teacher/
MSmits: yeah
KalamariKing: yeah he is
sprkrd: As opposed to a fake one? :thinking:
codin_computer: WELL WORK ON YOUR SPELLING AND STUFF
MSmits: ok
Uljahn: oO
codin_computer: :rage:
sprkrd: good heavens
Uljahn: Astrobytes
codin_computer: :rage:
KalamariKing: CPU rendering is better for smaller blocks, say 4x4 pixels (with cycles) GPU renders whole images faster (again with cycles)
KalamariKing: cpu just happens to be faster
MSmits: I barely use my gpu
KalamariKing: cycles is the name of the render engine byw
KalamariKing: btw*
MSmits: I have a 1060 GTX, oldest thing in my PC
codin_computer: /me..
**codin_computer /me = cool messages
codin_computer: (╯°□°)╯︵ ┻━┻
KalamariKing: and ofc as soon as I get a job, and can finally afford something like a 5600x, there's none in stock
MSmits: :(
codin_computer: why is it telling me to do this https://www.codingame.com/training/easy/chuck-norris
KalamariKing: why is what telling you to do what
MSmits: to get you off our backs
MSmits: keep you busy
codin_computer: (╯°□°)╯︵ ┻━┻
KalamariKing: oh that one was pretty simple codin_computer you should leave us alone and go do it
**codin_computer flips a table on MSmits
sprkrd: Mine is a RTX 2060S, which feels kind of wasted since I do not do DL at all. And my most recent interest game-wise is Factorio, which is not too graphically intensive :joy:
MSmits: DL?
sprkrd: Deep Learning
MSmits: oh ok
KalamariKing: y'all over here like "*just* a gtx1060"
MSmits: well not just, but it's my oldest component. Did not replace it because it's not critical for me.
MSmits: might become critical when i do serious training though
sprkrd: GTX1060 is fine
KalamariKing: training uses gpu, right
MSmits: or cpu
sprkrd: you could do it in CPU
KalamariKing: but its generally faster on gpu?
sprkrd: Generally
MSmits: i did my TTT experiments on cpu
MSmits: lots faster i think
KalamariKing: due to clocks+faster ram or just the sheer number of cores
MSmits: cores
MSmits: it's very parallelizable
sprkrd: With a large enough network it's faster
KalamariKing: wait a sec
KalamariKing: would the new crypto cards, with way too many cores for a normal person to use, be applicable to training
sprkrd: if your network is just 2 hidden layers with 10 neurons each, then it's faster in CPU :joy:
MSmits: yeah you need to actually parallelize stuff so need a big network
MSmits: dont know how many cores those cards have
sprkrd: Yours?
MSmits: but layers with 10k nodes are fairly common
sprkrd: For images, yeah
MSmits: I have no idea how big mine will be
MSmits: but needs to fit in CG limits
MSmits: so maybe 10k weights or so
sprkrd: For CG games, I'd say a layer with 10k nodes is a bit excessive :joy:
MSmits: 1 hidden layer
MSmits: oh right
MSmits: sorry
MSmits: weights
sprkrd: ah, right
sprkrd: 10k weights feels about right
MSmits: could be more, 50k even, depends on how you compress and what float type you use (could use 16 bit floats)
1rre: me and the boys using c to fit bruteforcing within cg limits
quality code right here
MSmits: but should not be needlessly big because of overfitting and performance
KalamariKing: The new nVidia CMP 40hx has like 300 tensor cores
MSmits: nice
Astrobytes: Please state the nature of your technical emergency.
MSmits: oh the ETH is here
Astrobytes: (responding to the ping)
MSmits: codin_computer was spamming
KalamariKing: ok, yeah, not great - twice the price for less cores
KalamariKing: shame
Astrobytes: Isn't he a troll?
MSmits: he is
Astrobytes: Kicked. Ban next time.
Astrobytes: Sorry for the delay. Was afk.
MSmits: thanks, it's good to have a ETH
Astrobytes: :D
KalamariKing: eth?
sprkrd: What's ETH?
MSmits: emergency technical hologram
Astrobytes: ^
KalamariKing: oh I see
MSmits: if you dont get the reference, watch more star trek
Astrobytes: Watch more Star Trek either way.
MSmits: yeah
KiwiTae: i never saw that show
MSmits: hmm, then a piece of you is missing
MSmits: mind not fully grown
MSmits: fix it :)
sprkrd: My favorite episode is the Data trial :)
MSmits: this is TNG I assume?
Astrobytes: That the Bruce Maddox one?
sprkrd: TNG, yes
MSmits: i only watched all TNG twice i think
MSmits: been a while
MSmits: DS9 I think 4 times, voyager 2 times, enterprise 2 times
sprkrd: Astrobytes Yes, Bruce Maddox
Astrobytes: I rewatched that after watching Picard
MSmits: I have amazon prime now, but watched picard less than legally. Normally wouldn't, but made an exception :P
Astrobytes: Heh heh. No comment!
Astrobytes: Tis excellent though. Must rewatch soon.
MSmits: yeah will rewatch it
sprkrd: Have to go, see you arouuuun d :musical_note: :notes:
MSmits: i mean there's only so many times i can do breaking bad
Astrobytes: later sprkrd
MSmits: later
Astrobytes: I need to watch Better Call Saul again
MSmits: not sure i will rewatch it. I thought it was good, but it's normally not the kind of shows i watch
MSmits: so one time might be enough
Astrobytes: Yeah, it was unusual for me too. I thought it was great though, to my surprise.
MSmits: is the boys season 3 out yet?
Astrobytes: Last season (6, Saul) is out next year
MSmits: ah ok will watch that
Astrobytes: Not sure. I've still to watch that. It's on my list
MSmits: it's awesome
Astrobytes: Must get around to that
Astrobytes: Yeah I've seen bits
MSmits: if you've seen the first 10 minutes, you cant stop
Astrobytes: I've seen clips. Not the first 10 mins, but that's what I heard yeah
MSmits: most awesome and horrifying opening to a show i ever saw :P
Astrobytes: I'm down for that
MSmits: it has a lot of absurd humor
MSmits: kind of like thor ragnarok, but less over the top and bloodier
Astrobytes: Absurd humour is good for me. It's pretty dark too right?
MSmits: yeah it's dark
MSmits: but could be worse
MSmits: it's not depressing or anything
Astrobytes: No, just dark.
MSmits: yep
Astrobytes: I've made a note for the weekend to remind me
MSmits: cool, let me know
Astrobytes: I will do
KalamariKing: are y'all nerds done yet
Astrobytes: Yep. Carry on :P
MSmits: lol
MSmits: oh I was wondering, do we have any bitboard resources on tech.io already?
MSmits: I mean people shared mcts stuff and such
MSmits: but not sure if they shared bit tricks
Astrobytes: e m h did a bitboarded BFS? I think
MSmits: oh right, I did too
Astrobytes: Other than that, not really no
MSmits: ok
MSmits: I was thinking to do one for uttt, maybe with a few examples from other games added on
MSmits: because uttt is kinda simple when it comes to bitboarding
Astrobytes: Sure. Would be useful and save a lot of time in the chat!
MSmits: Yeah
codin_computer: I AM NOT A TROLL
Astrobytes: behave or be banned
KiwiTae: Astrobytes o/
codin_computer: I HAVE NO IDEA WHAT YOU MEAN
Astrobytes: STOP TYPING IN CAPS for a start
KiwiTae: codin_computer you got all caps locked
Astrobytes: KiwiTae hey hey
codin_computer: well i wasnt spamming
KiwiTae: Astrobytes how the weather in scotland
KiwiTae: :kissing_heart:
Astrobytes: Not as nice as the past few days but sunny, about 18C
MSmits: too hot here
Astrobytes: The weather or room temp from your PC?
MSmits: well it doesnt take much before i think it's too hot. If my room doesnt have to be heated, its too hot
MSmits: lol
MSmits: room is large enough that pc wont bother it :)
Astrobytes: Fair. 30 seeds did I read earlier?
MSmits: yea its almost done
Astrobytes: Nice
MSmits: http://chat.codingame.com/pastebin/8156ba82-b726-4710-9a31-d7b6e079077d
MSmits: 5 states left that are still changing over turns added
MSmits: so maybe 1 or 2 more iterations
MSmits: 20 mins or so
Astrobytes: Impressive. How much further do do you think you can get? seed count wise
MSmits: 36 if i cache information required from older books in RAM, 37 and 38 seeds will not be able to use a cache because there is not enough room
MSmits: so that might mean it takes like a month, not sure
MSmits: so 36 is realistic
MSmits: but could be 1 day, then 2 days, then 4 days etc.
MSmits: to get from 31 to 36
Astrobytes: Still impressive.
KalamariKing: you could use virtual ram, if thats whats holding it back
MSmits: yeah its nice i wrote a verifier earlier, did 1 million samples over all books and no inconsistencies, seems to be correct
MSmits: KalamariKing virtual ram is just using disk space isnt it?
KalamariKing: windows has a feature where you can allocate disk space as ram, it may be slow but 32gb RAM + 2gb slow is better than 34gb slow
MSmits: yes, but when i am not using a cache for 38 seeds, it means using 29 GB RAM + around 90 GB slow :P
MSmits: so i am already using as much RAM as i can
KalamariKing: yeah, true
MSmits: cache needs to be about 60% of the full size of the book
MSmits: so at some point it just wont fit
MSmits: to solve the game I would need around 1 TB RAM
Astrobytes: Get downloading :P
MSmits: or just be really slow and use 1TB disk space :)
MSmits: lol
MSmits: oh btw, even if i solved the game, i would not have solved it on CG, because i assume no turn limit
MSmits: with turn limit I need to store a different result for each amount of turns left
MSmits: so 200x larger, or at least 185 or so
MSmits: my CG version with 9 seeds does this and thats why its only 9
Xzoky174: man.. programming is so harddd :tired_face:
MSmits: programming is relative to your task
MSmits: if you pick a task that is too hard, you dont learn and if you pick one thats too easy, you wont learn either
KalamariKing: I forget who but someone famous said it takes 10,000 hours to master something
MSmits: yeah its a good rule of thumb, but its hard to define this something
MSmits: for example you can subdivide a field
MSmits: and then it;s less to master
MSmits: so what is the "something"
MSmits: you can define it as "computer scientist" but then it's too general
MSmits: you might never have done machine learning
MSmits: also mastering riding a bike does not take 10000 hrs
MSmits: i think it's mostly supposed to be in the context of learning a profession
Astrobytes: Mastering it to be competitive might
MSmits: sure, but after 10.000 hours you're maybe too old :P
Astrobytes: :D
MSmits: iterations: 60 different: 1 863 minutes.
Astrobytes: Nice. should be about 20 mins as you said then
MSmits: that means it just went through 3 billion gamestate and redid all moves and all states but 1 gave the same result
Astrobytes: Yeah, I figured it was something like that.
KalamariKing: 863 minutes?
KalamariKing: how do you have the patience for that
MSmits: for 30 seeds book yes
MSmits: it's just running in the background
MSmits: i can do other stuff. I wrote a verifier as it was running and also working on the meta mcts which will use the book
MSmits: meta mcts might run for weeks
MSmits: I like big projects :)
KalamariKing: :cold_sweat:
KalamariKing: I'll stop a project after like half an hour because its not optimized enough for my patience level
KalamariKing: GG my guy
MSmits: heh, well you have to do some effort to beat some of these guys, but I'm probably taking it too far
KalamariKing: what
KalamariKing: I don't particularly wanna deal with spammers today don't make me ping a mod
KalamariKing: you already are
KalamariKing: but thanks
Butanium: MSmits are you here?
Butanium: I just finished debugging my MCTS x)
KalamariKing: I think he's here, or at least lurking
Butanium: It bugged because I calculated the possible actions for the new node before doing the chosen action for it
darkhorse64: submit
Butanium: I did it but for now my playouts are completly random
Butanium: Which is quite bad
KalamariKing: I thought playouts are supposed to be random
Butanium: oh
Butanium: I forgot to change the exploration duration
Butanium: it has 1 ms to do the tree lol
darkhorse64: ofc smart rollouts are better but they cost also a lot which hampers the quality of the search. My C4 bot is stronger with smart rollouts but not that much
KalamariKing: :eyes:
MSmits: I'm here
MSmits: if you want an example of a game where smart rollouts matter, try yavalath
KalamariKing: He's here
MSmits: smart rollouts are everything there
MSmits: i think it helps in C4 as well, but did not do proper testing
Butanium: so for now you don't have any smart rollout for C4?
MSmits: no, I mean I do
MSmits: basically it works like this
MSmits: check if any moves you make give the opponent a chance to win next turn
MSmits: then dont make those moves
MSmits: random the rest
KalamariKing: ezpz
MSmits: the trick is to code it efficiently of course, but it should help even if you implement it less than perfectly
KalamariKing: how can your move make the opponent's move easier?
KalamariKing: we're talking ttt right?
MSmits: no, connect 4
darkhorse64: aka don't play losing moves
MSmits: yeah thats what that is
Butanium: That's exactly what I planned to add !
MSmits: cool, good luck :)
KalamariKing: but what about winning moves that would let the opp win next turn
KalamariKing: you've already won so that wouldn't matter
MSmits: well, my rollout has no winning moves
MSmits: because if the opponent has no moves that would not make you win,he auto loses
MSmits: so there are only losses in my rollout
MSmits: it's actually annoying, because if wins are never part of tree you have to get tricky to actually output a winning move at the end :P
MSmits: as it is not in your tree
MSmits: it's like chess
Butanium: I'm at 10k rollouts per turn ><
MSmits: if your king has no move left where he is in check, its checkmate
MSmits: Butanium a rollout is one random playout/
MSmits: ?
Butanium: yes
MSmits: thats very little
jacek: no bitboard eh
Butanium: I feel like ocaml is very slow at copying arrays
MSmits: but hey, if you're trick is to get the maximum performance out of a subpar language, you should be ok at some point. Otherwise you need to switch to c++ or rust
MSmits: o rc
KalamariKing: or c*
jacek: or asm
MSmits: right
KalamariKing: or hexadecimal
darkhorse64: bitboarding + AVX is like asm
MSmits: chess bitboarders keep close eye on generated asm
MSmits: I never did that
KalamariKing: avx?
MSmits: parallelized calculations
MSmits: without needing more cores
jacek: wonder if reBless fell into that chess hole
KalamariKing: how's that work
darkhorse64: the compiler generates code that is like the C++ code
MSmits: there's special registers
MSmits: that can multiply 8 numbers at the same time
jacek: do you know SIMD
MSmits: for example
MSmits: or do other simple functions
KalamariKing: I don't like that
jacek: oO
MSmits: whats not to like
KalamariKing: How can it multiply multiple numbers at once? wouldn't a in a*b contaminate c in c*d if they're done at the same time?
jacek: chances the good for loop is optimized to avx by compiler
MSmits: no, i dont mean like that
MSmits: i mean say you're using a loop
KalamariKing: oh hmm
MSmits: doing 8 things
MSmits: but they are independent operations
MSmits: why not do them all at the same time
KalamariKing: how tho
jacek: you have array of 8 numbers, then other array of 8 numbers. you can multiply them 8 times at a time
darkhorse64: Actually, my AVX code is not faster than my scalar code
MSmits: in C4
MSmits: but in othello it would be
MSmits: othello is great for avx
KalamariKing: this makes only a little sense, I'll just drop it here
darkhorse64: yep in othello
MSmits: KalamariKing it is really quite simple
MSmits: say you're having 8 numbers that have to be multiplied by 8 other numbers
MSmits: each separately
jacek: you can get over 300% speedup for some cases
MSmits: why could you not parallelize this?
jacek: https://www.codingame.com/playgrounds/283/sse-avx-vectorization/sseavx-c-frameworks
KalamariKing: I get how it works in theory, but in application, how can a processor do 8 things at once
KalamariKing: that's the issue
MSmits: they are very close in memory and its a very small amount of data, i dont know the exact physical process
jacek: ask cpu guys
MSmits: you can only do 8 or 16 of these operations at the same time
MSmits: depends on the type of variable
MSmits: int16 or int32 or whatnot
MSmits: CG uses 256 bit max
MSmits: so 8 x16
MSmits: wait no
MSmits: 16 x 16
MSmits: 8 x 32
MSmits: it's not a magical trick that always helps though KalamariKing, it's pretty rare to have situations where it's worth it
KalamariKing: Yeah
Astrobytes: https://www.codingame.com/playgrounds/283/sse-avx-vectorization/what-is-sse-and-avx
MSmits: but some boardgames are built for it almost
MSmits: chess can use it, othello can, probably a few others
MSmits: people do it on CSB
MSmits: (I still havent)
MSmits: on CSB you go from 300k simulations to around a million
MSmits: in 1 turn
MSmits: i've been tol
KalamariKing: this is so weird
MSmits: i can give you a very simple function that does it
MSmits: like 5 lines or so
MSmits: for uttt
KalamariKing: That parts' easy
KalamariKing: I just don't get on a hardware level, how
KalamariKing: Gonna go dive down the rabbit hole, brb
jacek: maybe this is pipeline stuff(?)
jacek: other interesting thing https://stackoverflow.com/questions/11227809/why-is-processing-a-sorted-array-faster-than-processing-an-unsorted-array?rq=1
MSmits: http://chat.codingame.com/pastebin/56d66582-d211-4576-ae0c-14b3917f4104
jacek: cpus nowadays are so smart
MSmits: this checks all 8 winning lines for uttt at the same time
MSmits: for a miniboard
MSmits: so actually normal ttt i guess :)
Astrobytes: KalamariKing: The link I posted gives you a rough idea hardware wise
jacek: you dont have lookup for that? :o
MSmits: i do
MSmits: but this works too
MSmits: struct says its slightly faster, i never tested
MSmits: I wrote this myself, but struct made an improvement :)
BestProgrammist: Hello
KalamariKing: Hello!
BestProgrammist: what is yor name
KalamariKing: ask your mom
BestProgrammist: ha
jacek: oO
Butanium: I just realized something
Butanium: my MCTS
Butanium: play
Butanium: as the opponent
Uljahn: classic
Butanium: that's why it lost more with more playouts
MSmits: lol
MSmits: typical mcts problem
Butanium: I was like "lol it defend well but doesn't attack"
Butanium: aaaaah
Butanium: I thought it would be easy to fix it
Butanium: ><
MSmits: learning mcts is really a matter of hanging in there
MSmits: personally I would recommend doing minimax first
MSmits: it's simpler
MSmits: but for some games less effective
MSmits: once you have 1 game working, you can swap out the sim part of your bot and use it in other games
Butanium: doesn't minmax need an heuristic eval of the state?
Butanium: or I can just run it with no depth limit?
Astrobytes: Heuristic eval yes, and use iterative deepening
MSmits: Butanium it does need a heuristic eval, but keep in mind that for many games, mcts does also
MSmits: oware can take 200 turns to finish. You dont want to have to do random playouts that long. Besides, the statistics become meaningless with that depth
MSmits: so you pick at most some depth and evaluate, then backpropagate the score
MSmits: instead of win/loss
MSmits: otherwise its similar
Butanium: ok I see
Butanium: But I have almorst a MCTS working
MSmits: yeah
MSmits: so dont give up :)
Butanium: I'll first try to fix it
MSmits: btw mcts was also my first search
MSmits: I learned minimax later, but it was much easier
Butanium: oh ok :o
jacek: or it was much easier because you did mcts first
MSmits: possible
MSmits: have workmeeting ttyl
KalamariKing: going back and doing some of the easy challenges that I couldn't do originally..... wow I was incredibly stupid
DuckKnight_quack69: @kalamariKing right now i feel stupid i cant solve anything:worried::sweat_smile:
KalamariKing: you'll get there
KalamariKing: idk why everyone in world hates clashes so much, but I got better by grinding clashes
KelvinAndHubbles: they're good if your trying to learn from them, but you can also just turn your brain off and do a lot and learn nothing
reCurse: Not sure what you can actually learn from them, but hey whatever works for you.
Lucky30_: you guys are wonderful
KalamariKing: thanks?
Lucky30_: not sure hhh
Lucky30_: weird question, why are there so many moderators
KalamariKing: i have the same question
KalamariKing: I think its because there has to be some online at all times
reCurse: They also tend to be selected amongst the most active, so there's that
reCurse: (which is the point)
Lucky30_: coool
jacek: whoever failed to run away becomes a mod
Lucky30_: hhhhh
Lucky30_: jacek how far are you?
RoboStac: he's still running
reCurse: Obligatory 'not far enough'
Lucky30_: hhhh
jacek: :(
KalamariKing: new goal: get mod
KalamariKing: AntiSquid will probably be mad if I keep pinging him so i'll stop
KalamariKing: sorry AntiSquid
Lucky30_: sorry KalamariKing
KalamariKing: when AntiSquid gets back online he'll have so many pings
KalamariKing: rip AntiSquid's inbox
Lucky30_: the more the merrier
KalamariKing: what would happen if everyone in chat rn were to collectively ping-spam AntiSquid
Lucky30_: some ppl do like being ping to eat, especially when it is free kalamar
KalamariKing: if you start sending me pictures of fried calamari istg
Lucky30_: what, you will run from your plate??
Lucky30_: how do i actually send pictures in cg
KalamariKing: AntiSquid usually just pastes links
Lucky30_: ow ok, easy enough
Lucky30_: are you free for some browing
Lucky30_: *browsing
KalamariKing: look another spelling mistake
KalamariKing: your soul is one typo closer to being mine
Lucky30_: not me
sprkrd: Is AntiSq*id's nickname a specific reference to you, KalamariKing?
sprkrd: Did he make his sole purpose to eradicate you?
KalamariKing: I think it's just a coincidence lol
Lucky30_: guys, KalamariKing just sent me a rainbow, what does it mean? peace??
KalamariKing: although now that you mention it... might be
KalamariKing: did you not see the rainbow was arcing into a dumpster
Lucky30_: ow ok, so no peace then hhhh
KalamariKing: the only peace I like is the pieces of your soul after your final typo
Lucky30_: he is planning to store my soul in a dumpster
KalamariKing: nah just the body
Lucky30_: please grant me the power of no-typo-ever-in-the-presence-of-KalamariKing
Lucky30_: please god, only this one life time
KalamariKing: there's no god up here but ME
clickers331: k
Lucky30_: god KalamariKing please grant my wish
StevensGino: I see the chat is pumping thank to 2 of you
WhatHowWhy: careful with those typos, friend, KK is watching.
Lucky30_: i hate it too, dont worrie StevensGino
Westicles: How should I rate this SHA-256 puzzle?
StevensGino: just kidding haha
Lucky30_: i know, we all afraid of the souls reaper
Lucky30_: you don't have to be ashamed of your self StevensGino
StevensGino: :D
Lucky30_: anyways, food time for me, the KalamariKing wont eat them selfs..
StevensGino: sleeping time for me, bb
WhatHowWhy: I'll just continue staring at this and hope the code pops into my head.
KalamariKing: I'm back underlings
KalamariKing: StevensGino thanks* to* Lucky30_ worry* yourself* themselves*
KalamariKing: disgraceful
KalamariKing: two souls to add to my collection, thanks
KalamariKing: WhatHowWhy what? how? why?
Uljahn: FunAtPartiesKing
1zaid1: are the standings sorted by code length?
Uljahn: in codegolf yes
FrancoRoura: Or in shortest mode clash
1zaid1: well that's stupid
1zaid1: I was the first to solve a problem and my rank is last
Uljahn: use bash/ruby/python [solved]
KalamariKing: it's called shortest mode because you need the... shortest code
FrancoRoura: The challenge is not to do it fast, it's to find the best language to solve it in the lesser amonut of chars in 15 mins
MidgetGauntlet: that sounds skill based
KalamariKing: almost like it were called... shortest mode
MidgetGauntlet: and super important to know
FrancoRoura: Award goes to the coder with a broader understanding of languages and their pros/cons
KalamariKing: isn't all programming skill based
FrancoRoura: I think it's a great challenge
JakubBiskup: hey can anyone tell me how exactly is Clash of Code ranking decaying?
Lucky30_: damn, KalamariKing does not grant wishes after all
KalamariKing: your wishes have been considered
AntiSquid: you can just bookmark the kalamari ring pictures KalamariKing
FrancoRoura: @JakubBiskup Someone else gets more points than you and your rank goes down by 1
KalamariKing: look its AntiSquid!
KalamariKing: AntiSquid did you get my pings
AntiSquid: pings are off anyway
KalamariKing: Lucky30_ I have just chosen not to care
KalamariKing: AntiSquid thats cheating
JakubBiskup: I mean the not playing makes you loose points part
FrancoRoura: Oh, that works like ELO in MOBA's or Chess
KalamariKing: JakubBiskup lose*
KalamariKing: Are you all just having a stroke over your keyboard and autocorrect does the rest? your typos are horrendous
FrancoRoura: Nah, we're just non-native speakers trying to do their best
Lucky30_: if only i could replace my Grammarly browser extension with KalamariKing
FrancoRoura: You know, like when you try to write in french, polish or german
Lucky30_: same FrancoRoura
Uljahn: indeed
KalamariKing: FrancoRoura our*
Lucky30_: hhhhh
Lucky30_: stop it
FrancoRoura: That sounds like communism but ok
KalamariKing: if you use "we're" you then have to use "our"
Lucky30_: KalamariKing how many souls do you have to take
KalamariKing: Lucky30_ more souls is more power, and I want power
FrancoRoura: are*
KalamariKing: generally, yes, but in this case 'more souls' is the idea, and it is a singular idea
Lucky30_: try not to get eating twice in a row, you would lose them all
KalamariKing: For that same reason, 'more souls MEANS more power' is correct
AntiSquid: i've seen some good kalamari ramen video today, can't find it though, it's not in this link, but close enough : https://www.youtube.com/watch?v=B5pKw6flFZE
Lucky30_: damn the power you have obtained through out the years
FrancoRoura: "more souls"* The quotation marks, the apostrophe, and the prime serve quite different purposes.
Uljahn: Automaton2000: the chat is occupied by grammar nazis, send help
Automaton2000: yes, but only if they are all in the same state
Branzz: shortest java header for code golf:
Branzz: import java.util.*;interface Solution{static void main(String[]o){
KalamariKing: Apostrophes and quotation marks both denote string literals in Python (although not most other languages) and therefore I don't care FrancoRoura
KalamariKing: besides I'm the reaper here
FrancoRoura: I thought we were speaking English, not Python lol
AntiSquid: you don't have commas or quotation marks and you can use their in the sentence you mentioned KalamariKing ...
KalamariKing: Branzz thanks but I think java isn't the best for shortest
Branzz: Obviously not
KalamariKing: AntiSquid what?
Lucky30_: Uljahn the answer you got is so accurate.. so scary
AntiSquid: and besides the only serious grammar mistakes is confusing your and you're
KalamariKing: AntiSquid mistake*
Lucky30_: ok please just finish him..
AntiSquid: +s
Lucky30_: no food should ever be wasted
AntiSquid: Lucky30_ if that's true then he's a walking snack for his fellow americans
AntiSquid: nobody needs to do anything
AntiSquid: i see myself out, laters .
KalamariKing: you know I'm a snack ;)
Lucky30_: the sexy snack we all want to eat
Lucky30_: AntiSquid don't go, i will sell my soul for you
KalamariKing: it's not yours to sell my guy
Lucky30_: nooo
FrancoRoura: sell, my guy*
Lucky30_: hhhhh
Lucky30_: a never-ending game of typos
MidgetGauntlet: cant i write a line that says if ship_height is < mountain_height .... destroy
MidgetGauntlet: im new - keep the flames small
FrancoRoura: What language?
FrancoRoura: if ship_height < mountain_height:
print("smaller")
MidgetGauntlet: wowza, imma plug that in - thank you - at least my ideas arent abstract and seem to work
FrancoRoura: No problem! Just make sure those two are int and not str
KalamariKing: str will compare first-char-ascii-codes, right?
FrancoRoura: Yeah
FrancoRoura: So "10" < "2" is True
FrancoRoura: Cool for comparing iso dates, not so much for heights
Lucky30_: so "100000"<"20"
KalamariKing: Yes, because '1' < '2'
Lucky30_: because "1"=='1' && "2"=='2'
Lucky30_: hhhhh sorry
KalamariKing: wdym
FrancoRoura: Lol
KalamariKing: oh
FrancoRoura: He means your previous quote mispell
KalamariKing: ok listen here
Lucky30_: #ignore
KalamariKing: apostrophes are used for character literals, quotes for strings
Lucky30_: are you sure?
Lucky30_: i mean for js it is the same
FrancoRoura: And how does it work for English? @KalamariKing
Lucky30_: they dont exist in English
Lucky30_: hhhh
KalamariKing: Lucky30_ I think in java and the c family its like that
KalamariKing: I know it is for c++
Lucky30_: i see
Lucky30_: nice
KalamariKing: FrancoRoura A good programmer uses the most convenient language for a task
Lucky30_: you mean an op programmer
Lucky30_: a know-it-all kind of programmer
FrancoRoura: I usually choose what's more maintainable, which is usually what most people understand for a certain task
FrancoRoura: You know, Python for scripting/batch jobs, JS for websites/apis, etc.
KalamariKing: wait a sec
Lucky30_: i usually use (not choose) js for everything, since that is the only language i can say for sure that i can write with it
FrancoRoura: Unless the API does heavy computing, then I'd go with Go
KalamariKing: can you grab other object's attributes in css
FrancoRoura: Wdym?
KalamariKing: Is there a function in CSS that lets, say, object A grab object B's 'height'
Lucky30_: do you mean use an attribute of an element?
FrancoRoura: If your object is part of the dom then maybe, otherwise I don't think so
KalamariKing: YES
Lucky30_: maybe by using a psodo class
KalamariKing: https://stackoverflow.com/a/66297592/8010520
KalamariKing: who wants to start a challenge with me
Lucky30_: sure
KalamariKing: we have var(), calc(), and attr()
KalamariKing: can we make a functional program
KalamariKing: in css
FrancoRoura: https://www.w3schools.com/cssref/func_attr.asp
Lucky30_: nevermind
KalamariKing: coward
Lucky30_: never nevermind
FrancoRoura: You'll need HTML too, so I don't think CSS-only would do
Lucky30_: lets do it
KalamariKing: YES lets go
Lucky30_: what should we do first
KalamariKing: alright, someone come up with a simple project, like a hello world but a bit harder
Lucky30_: look for existing solutions on google
Lucky30_: so you are planning to display hello_world using just css and some element..
KalamariKing: yes
Lucky30_: easy
KalamariKing: as a proof of concept
KalamariKing: and then go harder, like a user-input two numbers and output the sum
Lucky30_: use ::before {content:"hello world"}on something
Lucky30_: easy
FrancoRoura: Your program gets an HTML string consisting of a paragraph with a certain height, return a css string that will increase it's height by one
KalamariKing: yeah, thats why i said "a bit harder" -- `content` is too easy
FrancoRoura: Although anyone could just do a template string
Lucky30_: content: calc(attr("a")+attr("b"))
KalamariKing: but how do you get a and b
Lucky30_: what else can you do beside content
KalamariKing: and can we make it a functional calculator, with buttons and everything
Lucky30_:
Lucky30_: not sure
Lucky30_: probably
KalamariKing: is there a logical break?
Lucky30_: since we have event like hover and click i guess we could try
Lucky30_: nop
KalamariKing: is there a workaround, with e.g. detecting if a value is negative
Lucky30_: as far as i can tell, we are limited on one content by element..
Lucky30_: you are asking the wrong guy
Lucky30_: try finding an expert
KalamariKing: alright help me think, two css noobs learning to program
Lucky30_: hhhh
KalamariKing: take 1+2
KalamariKing: well
KalamariKing: take 1+2==3
Lucky30_: you mean two css noobs trying to make the impossible
KalamariKing: yeah lol
KalamariKing: ok take nothing
KalamariKing: try this again
KalamariKing: checking variables? take x==3
KalamariKing: set a div's height to x, and use css selectors to test for any divs with height 3
Lucky30_: we cant change the attributes of an element using just css
KalamariKing: how do you do what
wye: i just found the website today
Lucky30_: try googling
Lucky30_: ow
Lucky30_: you mean what to do on codingame
KalamariKing: this site isn't for beginners, its more for practice and competitions for seasoned programmers
Lucky30_: go to Activities>Practice>easy
KalamariKing: and noobs trying to use a non-language (e.g. css) as a language (e.g. build a calculator)
FrancoRoura: @wye You will see that each challenge requires a set of skills
Lucky30_: style sheet language?
FrancoRoura: IE this one https://www.codingame.com/training/expert/breach requires five, 3 bronze, 1 silver, 1 gold
Lucky30_: guys KalamariKing made a mistake
Lucky30_: oOOOOO
Lucky30_: congrats
Lucky30_: your soul is next
FrancoRoura: Try to find challenges that require only 1 bronze skill and click the name of the skill to learn about it
KalamariKing: the dark has already taken my soul
Lucky30_: hhhhhh
KalamariKing: my job is to spread the darkness
Lucky30_: at least i am not the only one
KalamariKing: alr bois gotta dip, the css calls me
Lucky30_: damn, no typos
SLAY3R: hey
Lucky30_: hi
KalamariKing: hello there SLAY3R!
SLAY3R: im new to this website is clash of code the only online competition?
AllYourTrees: is there a blog post or forum post about how to encode NN weights into a string? i know recurse mentioned using base64 but does that mean you have to include the base64 algorithm in your code too?
kovi: is there something with servers? leaderboard is not updated and i experience weird timeouts
KalamariKing: wow a lot of questions
Lucky30_: SLAY3R nop, check Activities>compete
KalamariKing: SLAY3R there are other competitions, like bot programming and code golf
Lucky30_: Food should not be allowed to speak
KalamariKing: AllYourTrees I'm not too sure, I think you turn it into base64 unicode or smth and then paste it in. then you need the decode base64 in cg
RoboStac: AllYourTrees - yes, you need to include the decoder in your code. You want a unicode system instead of base 64 (can get 14/15 bits per character instead of 6)
KalamariKing: kovi I don't think so
KalamariKing: Lucky30_ if food should not be allowed to speak then why are you talking
darkhorse64: kovi, yes, I just made progress with CG sponsored challenge and leaderboard is not updating
Lucky30_: i dont have a soul anymore, so nothing to eat here..
AllYourTrees: okay ty!
jacek: base65536 eh?
AllYourTrees: anyone know a simple reference implementation of utf-8 decoding? :)
darkhorse64: wow, robo is storming the C4 lb and gave me #1. Time to screenshot
RoboStac: https://github.com/Parkayun/base65536 <-- I use that
AllYourTrees: ty robo!
RoboStac: yeah, your bot seems to be somehow immune to me :(
jacek: darkhorse64 you mean MSmits need to expand his book?
jacek: RoboStac CNN?
darkhorse64: You found a hole in MSmits book
King_Coda: Hello
RoboStac: yeah
jacek: one day i will learn CNN ~
darkhorse64: no book, no hole
King_Coda: Can you all see this?
King_Coda: test
RoboStac: just make sure to test it on nonsquare boards before wasting hours trying to play a rectangular game
darkhorse64: :sweat_smile:
jrke: was trying to train NN for SR kinda game
jrke: :(
KalamariKing: King_Coda!
King_Coda: OH THANK GOD
jrke: average is crossing 0.4 checkpoints
King_Coda: I thought my chat was bugged out
jacek: oO
King_Coda: KalamariKing can you see my pm's that i'm sending you?
kovi: yes, it seems that some servers timeout heavily (i have used the old code which run wo. timeouts whole day yesterday)
KalamariKing: who wants to cry with me
RoboStac: I've not seen any timeout issue but the ranking updates are acting very weird (eg c4 leaderboard has jumped back in time to show me at 83% complete)
jacek: just wait for friday to deploy a fix
KalamariKing: to all who are interested, the CSS-project has an update: css has math functions https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Functions
jacek: is CSS turing complete
KalamariKing: to all who weren't present when the project was introduced: I sent out a challenge, to make a functional addition program in css. Two inputs, one output
KalamariKing: jacek I'm not sure but I hope so
King_Coda: Is CSS an assembly language?
KalamariKing: a what
AllYourTrees: when will CSS be a valid choice for codingame bots?
KalamariKing: css is cascading style sheets
KalamariKing: its what makes your websites look pretty
KalamariKing: this HAS to be a thing, someday
Lucky30_: a css function wow
KalamariKing: CSS + HTML IS TURING COMPLETE
King_Coda: That's suprising
KalamariKing: this is happening
King_Coda: HTML barely even constitutes as a language
KalamariKing: #bringcsstocg
KalamariKing: I wanna be first in a css botfight, I'll be expecting css as a language on the next contest
jrke: does css also support input and output?
King_Coda: If you want CSS on CG you need to add HTML first
King_Coda: Logical progression
jacek: is HTML programming language
struct: ah yes
King_Coda: Ehhhhh
King_Coda: HTML is markup i think
King_Coda: The only thing I've "coded" in HTML is a snake clone
jrke: hyper text marup language
struct: its oop
jrke: even full form sayes its markup
struct: form must be wrong
Lucky30_: hyper text markup language
Lucky30_: *hypertext
King_Coda: You can kinda code things in html, but it's not really coding
Uljahn: fascinating
King_Coda: HTML's ability to store and change variables is... questionable
cw477: HTML is best programming language
King_Coda: Yes
FrancoRoura: I prefer MD but okay
Lucky30_: ok guys lets kick them both
cw477: Lol
cw477: nah i take it back, JSON is best coding language
King_Coda: NAH dude, mp3 is the best
Lucky30_: KalamariKing the whole list of css function https://css-tricks.com/complete-guide-to-css-functions/
cw477: lol
King_Coda: Wav takes up too much memory
King_Coda: .gp3 is nasty
FrancoRoura: What about yaml?
Lucky30_: Morse code maybe
King_Coda: Morse code= best code language
FrancoRoura: Unary strings ftw
FrancoRoura: It's also really simple to learn
FrancoRoura: For each byte, you hit 1 between 0 and 255 times, which is really helpful cause you can code with only 2 buttons
Lucky30_: what about a facial-recognitions wink left as 1 and right as 0
Lucky30_: wink language
FrancoRoura: Or brainf**k https://en.wikipedia.org/wiki/Brainfuck
Lucky30_: *blink, #bad english, KalamariKing is not here hhh, lucky me
Lucky30_: man why that name
FrancoRoura: I'd really like to see you getting a job offer with that username
Lucky30_: FrancoRoura i want to be a software architect, i just graduated last year, how many years to go?? hhh
Lucky30_: min()
FrancoRoura: Idk, depends on your learning pace
FrancoRoura: I never graduated
Lucky30_: ow coool
Lucky30_: first step, get a job hhh
FrancoRoura: Yeah, the cool thing is after you get a job all you need to do is make sure you can fully understand every single word you hear on the office
Lucky30_: ow man, the battles i have yet to face
FrancoRoura: It's not that hard
FrancoRoura: Whenever they say Vue, Kubernetes, Graphql, ORM, Phoenix or hashmap you just dive into it until you feel profficient
struct: Just run if they ask you to use a language that is discontinued
jacek: just randomly say blockchain and youll be the new CEO
FrancoRoura: That's a blockchain idea
Lucky30_: blockchain it is
Lucky30_: guys i have been reading this article on blockchaining a blockchain
Lucky30_: man i am blockchaing much better now hhh
Lucky30_: is that enough blockchain for you
Lucky30_: ceo at last
Lucky30_: if KalamariKing was here, he would blockchain the hell out of me
Lucky30_: probably reading some css madness
jacek: blockchain made in css
Lucky30_: cant copy paste some css no more
Bob23: hmmmmm
King_Coda: blockchain
jacek: congratulations. now you're mod on CG
King_Coda: Eh, moderator was never my thing
jacek: yeah, they are weird people
King_Coda: To many responsibilities, I just wanna code
King_Coda: Also everybody freaks out whenever you get into chat if you're a mod, I don't wanna do that
King_Coda: Moderators are people too, despite (some of) their toxicity
jacek: oO
King_Coda: *Looks at r3Curse*
King_Coda: (replace 3 with e, i dont want to ping)
Astrobytes: Weird eh
jacek: :scream:
King_Coda: Long time no see Astrobytes
Astrobytes: I've been resting elsewhere
King_Coda: Same here. I'm 5,240th on the site now
struct: I dont remember him being toxic
struct: I only saw him speeking the truth
King_Coda: Probably be top 5,000 after I do some CoC's
struct: hypersonic didnt give you points?
King_Coda: Been learning Java, JavaScript, C#, and C++
Astrobytes: I would try to focus one at a time if I were you.
King_Coda: Yeah, I'm trying to focus on Java at the moment.
Astrobytes: Do a little bit of another from time to time
jacek: if you focus on javascript, youll get java and script at the same time [smart]
King_Coda: Java and C# have some similar syntax in the way they handle variables, so I'm focusing on Java rn
King_Coda: That way I can segue into C# easily, then C++
King_Coda: jacek :rofl:
Astrobytes: What's with your profile King_Coda? It says you have loads of points but they don't show up under your Bot Programming?
Astrobytes: *the games that provide the points (CP) don't show up
struct: he got top 100 in 1 submit maybe it broke the system
Astrobytes: Top 100? 1 submit?
struct: hs
Astrobytes: oh come on, not another Sayonara bot
struct: yes
Astrobytes: Jeez.
Astrobytes: Grim.
jacek: he said top 100 in 1 submit or delete.
jacek: he didnt want to take chances
JimmyJams: King focus on c#
JimmyJams: then javascript
MACKEYTH: Sayonara bot?
Bob23: sayonara
darkhorse64: a copy/paste of a Hypersonic top bot that says sayonara
geppoz: any python expert: the function cmp() exists or not? found different opinions :D
jacek: no https://stackoverflow.com/a/22490617
struct: https://www.geeksforgeeks.org/python-cmp-function/
jacek: :) https://i.redd.it/c7dmnjdzgu271.jpg
geppoz: lol see?
RoboStac: was removed in 3
geppoz: 2 different opinions
struct: ^
Di_Masta: Hi, I'm trying to run a game referee on my machine, I've packaged the referee to jar file using Maven. The 2 players are 2 .exe files, build in Release using Viasual Studio(MSVC), from simple C++ file containing the default CG code for the bots. The referee keeps crashing with the "java.lang.ExceptionInInitializerError" exception on the first game. I tried a couple of game. Does anyone know what could be the reason?
FrancoRoura: Hard to know without the source code, try stack overflow
Di_Masta: I've tried, but with no success, maybe I have to build the referee and debug it
jacek: that is too specific for CG for stack overlow :v
struct: which referee are you trying to use?
Di_Masta: the one for UTT and Spring Challenge 2021
struct: you are using brutaltester?
Di_Masta: yeap, I'm trying
struct: ah dont think it works like that
struct: https://github.com/dreignier/game-ultimate-tictactoe
struct: https://github.com/LSmith-Zenoscave/SpringChallenge2021
Di_Masta: yes, I've downloaded exactly these refs
struct: which java version?
Di_Masta: the C++ code is really simple
Di_Masta: https://i.imgur.com/78TqY63.png
Di_Masta: jdk-16.0.1
AllYourTrees: so for serializing NN weights, do you first transform the floats into 4 bytes, and then encode the list of bytes into a base65536 string?
struct: Can you also paste the command here?
struct: or pm
Di_Masta: ok, just a moment
AllYourTrees: cause either i made the NN too big, or am doing something else wrong, i get a huge string lol
AllYourTrees: get the submitted code is too big error
jacek: how many chars or bytes
DrGates: hello guys. is this possible to enter only easy tasks? for beginners?
jacek: you change weights into int16
jacek: DrGates there is easy section of puzzles
DrGates: I want to play Clash of Code, its good, but sometimes its way too hard for me
jacek: no time limit
DrGates: its not about the time limit, 15 minutes is good and I want it as a race, just talking about the task itself :D
Astrobytes: Easy puzzles are like clashes without a time limit and (mostly) better problems.
DrGates: where can i find that?
AllYourTrees: jacek as in chop off half of the bits of the float?
Astrobytes: Activities->Practice
Astrobytes: Then Classic Puzzle - Easy
jacek: AllYourTrees somewhat. or float16. the decreased precision isnt much issue, ~15 bits if sufficient for most things (I do)
AllYourTrees: jacek cool ty
jacek: i use my own shit isntead of base65535 and the like so YMMV
Bob23: Nice
erinc-emre: what is your favorite game type?
Astrobytes: Bot Programming
jacek: clash ~
Uljahn: opti
MSmits: whats that game called where you lurk all day to not miss any jacek memes
Uljahn: btw for 2048 opti i used bz2 compression for base65535 decoder and encoded it with base85, while hardcoded solutions are pickled, lzma-compressed and base65535 encoded, python batteries are great :hugging:
MSmits: pickled?
Uljahn: serialized with pickle module
MSmits: i see
jacek: MSmits :notebook: :soccer: ?
MSmits: I prefer the memes tbh, but sure, some day :)
MSmits: I saw you put the C4 memes in the forum thread hehe
Bob23: hmmmm
AllYourTrees: i wonder how they came up with the name pickle for python serialization
AllYourTrees: like oh i'm saving this data to disk, thats definitely the same as soaking it in vinegar and spices for the purposes of eating it later
AllYourTrees: :thinking:
Astrobytes: Presumably because they're preserved data?
Astrobytes: Pickling is, after all, a method of preservation
AllYourTrees: wow yeah actually nice one
jacek: :cucumber:
Uljahn: :pickle_rick:
geppoz: there is some problem on CG platform?
Uljahn: ye
geppoz: impossibile to submit, 504
Uljahn: got that too
jacek: me too
r31415: codingame seems to be completely down...
MACKEYTH: Anyone else getting network errors?
jacek: oO
Nerchio: i must have submitted too many times to vindinium
Nerchio: :sweat_smile:
Astrobytes: back now
jacek: oh my
r31415: Hmm, did someone commit to production w/o testing? On a programming-learning-platform? ;)
jacek: impossibru. that happens only on fridays
Astrobytes: No. That only happens on Fridays
Astrobytes: lol
jacek: slowbytes
Astrobytes: Hey, I'm out of practice
MACKEYTH: Is CoC borked for everyone?
FrancoRoura: Are the clash of code servers broken?
FrancoRoura: Maybe it's just our clash @Mackeyth
Astrobytes: We've just had a server issue so give it a few minutes
FrancoRoura: Oh ok, thanks!
derjack: are clashes broken?
Astrobytes: shut up pony :P
derjack: :(
Nerchio: is life broken?
Smelty: yes
Astrobytes: Error 666: Hellbound
Astrobytes: Hm that's very BlaiseEbuth
Smelty: Error 510: Hellbound startup failed. Retrying...
FrancoRoura: The internet is broken
FrancoRoura: Bitbucket pipelines broken
FrancoRoura: LinkedIn broken
FrancoRoura: And even Clash of Code
FrancoRoura: A sad day for software
Smelty: Success: Hellbound started up.
jacek: but this isnt broken https://www.youtube.com/watch?v=dQw4w9WgXcQ
Smelty: Running...
Smelty: yeeees clash is broken
Astrobytes: Don't click. It'll be a rickroll
Nerchio: I need CoC right now!!
jacek: 504 returned
Astrobytes: still working on my end, for now at least
Nerchio: but is it though
FrancoRoura: Not for me
FrancoRoura: The startClashByHandle endpoint does return a 204 though
FrancoRoura: It just doesn't start them
Nerchio: maybe we got banned
FrancoRoura: Hey Astro, quick question, why Angular?
Astrobytes: Hey I don't work for them, just a mod
MSmits: saved by a YT add
MSmits: your rickroll was foiled!!!
Nerchio: might not be fixed today considering its late :D
struct: I would rather get rickrolled than get an add
Butanium: https://imgur.com/vNMcvXn
Butanium: aaaah
Butanium: let me in
Butanium: I implemented the "smarter" playout MSmits
Butanium: can't wait to see how it does
yaboiikevin: clashes broken or is it just me
Butanium: deploy in multiplayer seems broken at leas
Astrobytes: There are issues currently, not just clashes.
Tuo: im resorting to code golf to satisfy my clash habit :(
Tuo: emotes not showing up also hehe
Astrobytes: Get a new habit.
Butanium: '-'
Nerchio: no, sadge
Nerchio: :unamused:
Butanium: sadge
Butanium: it's 23h in france
Nerchio: yeah probably not going to work today
Nerchio: my guess
Butanium: I don't know if they will be able to fix it this evening x)
Butanium: ;-;
Astrobytes: Hey, look, it's not the end of the world
Butanium: yup
Butanium: I'll code my local connect 4 to play agains my bot
Butanium: x)
Astrobytes: why is everyone on C4 all of a sudden?
Astrobytes: Oh, potw, my bad
Butanium: that was a good game to try a MCTS
darkhorse64: I'll stay #1 tonight :yum:. Great RPS effect, MSmits wrecks me, get wrecked by robostac which I wrecked
Butanium: my spring challenge MCTS was too buggy
Astrobytes: lol nice
Butanium: So I wanted to start with something easier
darkhorse64: Next, get legend at UTTT
Astrobytes: My c4 bot is broken. I stopped working on it at some point then did something else. Should probably get around to fixing it
Astrobytes: One day.
Pengwin: is clash of code broken?
Pengwin: Or am i doing something wrong
nikim017: this is the fourth time and nothing
MSmits: heh yeah, i checked two games vs robostac yesterday. They were completely identical
MSmits: and I dont even have a counterbook. Just a regular opening book
MSmits: so yeah major rps :)
Lucky30_: welcome back
Tonelllo: Yes, clash of code is broken
Butanium: what is UTTT?
Astrobytes: Ultimate tictactoe
Butanium: thanks
Astrobytes: 9 tic tac toe boards as a tic tac toe board
Butanium: https://imgur.com/DxhvfJg
Butanium: I guess my MCTS is supposed to detect those "seven"
JimmyJams: when does the puzzle of the week reset? Monday?
Astrobytes: Monday night, French time yeah
Astrobytes: Well, the update happens earlier but the notification happens then
JimmyJams: gotchya thx
JimmyJams: clash of code is down I guess? No games seem to start.
Astrobytes: Yep. There are issues currently. Not gonna be fixed until much later though, it's almost midnight in France
Astrobytes: anyway, laters
napan: why the arena is not working?
Nerchio: the site is semi-down currently
Nerchio: dont expec
YoloTheBear: I hate recursion
ChiliCheese: why that
JimmyJams: he didn't ilke the movie inception
JimmyJams: anyone knows what the difference is between the rank like "10030th" you see on your profile and the rank you see in teh "following progress" page of say, your friends list?
Velop0p0: yes rip
Wontonimo: hey ho
Wontonimo: how's the nn experiments going MSmits?
Butanium: yay
Butanium: https://www.codingame.com/replay/561817628
Butanium: Now I can sleep
PatrickMcGinnisII: OK!
Wontonimo: congrats
PatrickMcGinnisII: must not have submitted to arena
PatrickMcGinnisII: https://www.codingame.com/replay/561817817
Wontonimo: brutal loss
HalfLegend: that's where I'm at: https://www.codingame.com/replay/561818051
HalfLegend: lmao
Wontonimo: what algo are you using?
HalfLegend: Minimax but my evaluation function is the issue I think
Wontonimo: submit your bot, let's see it on the leaderboard
Wontonimo: how deep is your minimax able to go?
HalfLegend: I had set it up to 0 depth for debug purpose but I made it work up to 2
Wontonimo: your move, their move, your move, their move? 2 plys?
Wontonimo: so 4 moves?
HalfLegend: I think 3 moves: 2,1 and 0 of depth so my turn their turn my turn
HalfLegend: my bot is submitting
Wontonimo: what's your eval function?
PatrickMcGinnisII: mine is depth 2...me then them, so u should beat mine, rank 80
HalfLegend: My eval is +5 points for 2 chip on a same row / column / diagonal without enemy chip; +10 for 3 and then -50 when the enemy has 3 unblocked chip
Nzk: clash stil down?
Wontonimo: interesting. Where did you get those values or did you make them up?
Wontonimo: workers don't get in till tomorrow morning, so probably will be down till then Nzk
Nzk: i see
Nzk: thanks
HalfLegend: I looked at a youtube video to get ideas for the eval
Wontonimo: +100 for that!
Nzk: ooh; lemme try connect 4
HalfLegend: yeah my bot fight isn't loading
Nzk: ooh and imma try this in java too
Wontonimo: depth 2 doesn't seem like much. Have you identified any performance bottlenecks?
HalfLegend: tbh I'm still trying to get the eval right before going in depth.. :joy:
Wontonimo: if your depth is deep enough the only eval you needs is win/loss
HalfLegend: fair point haha
Wontonimo: a lesson from chess, even as far back as deepblue (decades before AlphaGo), if you can go deep enough, win/loss wins over heuristic
PatrickMcGinnisII: my submit was a long time ago, I decided to change format from full gamestates to do/undo ... and i never did
HalfLegend: I guess if I added pruning on my minimax it might work
HalfLegend: Isn't there too many possibilites to consider though?
Nzk: hm
Wontonimo: even without pruning, if the branching factor is 9 ... let's say you can do 5,000 evals... that would be about a depth of 4
HalfLegend: Is 4 depth all I need?
Wontonimo: add pruning and you can usually increase your depth by 50%, so depth 6.
Wontonimo: all you need for what?
Nzk: dang replays are also broken
HalfLegend: For a win/loss
Wontonimo: oh no, haha, sorry my bad. depth 4 is what you could get if you can simulate about 5,000 moves
HalfLegend: I see, thanks. I'll get back on this tommorwo I prolly need to make some deep changes haha
PatrickMcGinnisII: evaling entire board at each node is a waste, checking for win from 1 piece is cheap enough
Wontonimo: good point
PatrickMcGinnisII: there are some bitboarding hacks to check for win
PatrickMcGinnisII: https://towardsdatascience.com/creating-the-perfect-connect-four-ai-bot-c165115557b0
PatrickMcGinnisII: I'm working on tryanglecatch at the moment tho
PatrickMcGinnisII: classic connect4 is 7x6...CG's is 9x7, fyi
nightmarex: how do u submit it lul
PatrickMcGinnisII: so 63 bits ... doable
nightmarex: i need puzzle of the week achievement xd
ja_fica: http://blog.gamesolver.org/
ja_fica: thats a perfect play bot
Wontonimo: cool article PatrickMcGinnisII, thanks for sharing
ja_fica: I think it is not achievable on a 9x7 but still it is possible to apply an efficient MCTS-solver
ja_fica: It combines all heuristic properties of any state with minimax where the minimax part speeds up (improves) the true heuristic of the state as you play more rollouts
ja_fica: Are battles going to stuck for tonight in UTTT?
HalfLegend: I just won against the first Boss finally
HalfLegend: can't submit till they fix the website tho so that's it for tonight
ja_fica: I was ranking up on UTTT when the matchs were interrupted
Nzk: ppf
Nzk: *oof
ZQWhiting: Is anyone else's achievements not updating?
Wontonimo: i'm sure everything will be back to normal by tomorrow once the staff wake up in about 8 hours
Westicles: You don't mess with the Cult of Real N*
Wontonimo: ?
Wontonimo: I know of A*, what's N* ?
Westicles: medievalghoul profile
Wontonimo: ah, you gotta change that medievalghoul
PatrickMcGinnisII: :cop_tone5:
Wontonimo: What up Westicles? Working on any projects lately?
Westicles: Not much, how about you?
Wontonimo: just dabbled in tron without taking is seriously. mostly playing armchair qb for all the NN discussion
Wontonimo: haven't been working on any personal projects either
Wontonimo: kinda waiting for vaccine and then summer
Wontonimo: i hear you were less than 200 steps to a taco shop. anything else interesting around you, or is it just your house and that one taco place that closed for 100 miles in all directions?
Westicles: Yeah, summer is nice here. People are starting to go back to work but the tourists haven't come back, so got the beach to myself
Wontonimo: ah, a beach! nice
Wontonimo: are you seriously on Christmas Island?
Westicles: Ah, no I'm in CA
Wontonimo: that's more believable
Wontonimo: haha ... i had to google Christmas island. i was mistaken about it size
Nzk: my detect potential 4 in a row isnt working :(
Taka-Li: crashed?
Taka-Li: I clicked launch
Taka-Li: system crash
hoang2.nguyen: CoC crashed? I hit launch but the code screen doesn't load
Taka-Li: yeah, wait someone fix it...
TerranCorp: CoC Doesnt seem to work
The_ZimaBlue: Even bot programming arenas are failing
cegprakash: https://www.codingame.com/share-replay/561824279
cegprakash: the boss is acting weird on this seed and winning me
IvesL: "You must be the owner to share this replay"
cegprakash: ouch
cegprakash: https://www.codingame.com/replay/561824279
cegprakash: this should work
Nzk: rip size mega
StepBack13: CoC down. :(
Stormalix: oh rip
Greg_3141: why are bot contests taking so long now
Greg_3141: it's taking forever to test my connect 4 bot :(
nikim017: still down CoC