Chat:World/2021-05-19
Chainman: pewpew
Chainman: roar
Xoast: so who are the bots here
Xoast: the anchorman guy
JohnCM: can c++ declare tuples like this: tuple <int, int> a = {1, 2};
JohnCM: or must you always do make_tuple(1,2)
Mgs25: @JohnCM you can just curly init
Mgs25: it will work
ArtLiteracyStory: I'm addicted to this site
JohnCM: ok thanks
JohnCM: actually for stl containers, most can do curly init right?
Mgs25: yup! C++17 is very flexible in this aspect of curly bracket initialization
JohnCM: i'm trying to like code c++ in the most pythonic way ever
Mgs25: good luck lol
JohnCM: haha python has spoilt me, now whenever i need to do list comprehension, i have to code 3 lines in c++
JohnCM: and i have to convert to binary myself in c++
JohnCM: oh wait, i just realized there is itoa
Alihussain: hi bro iam new here
MysticZarah: I thing i just realized the issue with the code validation i have been having. somehow.
MysticZarah: wait then that doesnt explain why the other validation got fixed
spjass: How do I zoom in / out in the web IDE? I accidentally somehow zoomed out on my code and zooming on the webpage (with ctrl+) doesn't help as it zooms in too close with other content on the page.
magmasa: when you click inside ide ctrl+mouse scroll works
The_xD: ctrl +
derjack: good morning
spjass: Ah, thanks. ctrl+mouse scroll worked, control + (plus-key) didn't
nam4.nguyen: hi does CG provide certificate or something after contest?
nam4.nguyen: just curious
derjack: participation badge?
nam4.nguyen: Oh where can I find it?
AntiSquid: you could go to contests and print what's in the view report link
AntiSquid: but no badge or anything like that
AntiSquid: you can't even display full code in your view report :thinking:
AntiSquid: wonder who it's intended for
nam4.nguyen: ah I just wanna know more about CG
nam4.nguyen: I'm new here and don't wanna miss a thing
derjack: :+1:
whay: hi
Ajaiy2: hi
KiwiTae: @nam4.nguyen I could stay awake just to hearr you breathin
KiwiTae: :no_mouth:
KalamariKing: When are ranks re-evaluated for clashes
KalamariKing: I know once a day but WHEN
KiwiTae: points are once a day, rank is everytime you play
DraterSimo: playinf with C and python , its really funny to play games with both of them
derjack: cython?
KalamariKing: p
gilufin: cython is the best
DraterSimo: python is not very challenging
codeing: hey everyone
codeing: how to notify someone by message ?
codeing: something like '@'
codeing: or ?
jacek: codeing dunno
codeing: how you do this ?
jacek: if I only knew codeing
codeing: jacek ?
jacek: :tada:
codeing: message jacek send me are in red
codeing: color
jacek: yes, i see it as red
codeing: hmh
codeing: see xhat ?
codeing: what *
davilla: I wish it was a different color, red is hard to read
codeing: sure
codeing: /me
davilla: yellow would be more thematic
KalamariKing: Hello
KalamariKing: Wait you mean to tell me there are almost 3 million clash-of-coders
jacek: 3 millions too many
BorisBarca: hey guys, I was wandering can you do a 1v1 on spring challenge but we are both out of top 1000
KalamariKing: jacek I had thought so since there aren't 3mil people here, but I just ran into someone in 2.7 millionth place...?
jrke: KalamariKing there are 2.3 million coders on CG then how you could ran 2.7 million
KalamariKing: i seriously don't know
jrke: and only 250,097 clashers are there
KalamariKing: I know
KalamariKing: I've seen the numbers
KalamariKing: That's why I questioned
TBali: Once I was 2nd in a one-horse-race
jrke: you are 230 i can see in clash ranking
KalamariKing: Yep
zibizz1: Can I somway disable shortext code? My language can't beat phyton in that
AntiSquid: don't be rude Bitwolf.Jr
jacek: zibizz1 no
KalamariKing: Python is sometimes unfair in shortest
KalamariKing: Usually the winner is python and/or ruby, except for your occasional bash
jacek: use the right tool for rith problem
KalamariKing: Exactly
KalamariKing: Take the time to learn python or ruby
Uljahn: or play bot programming instead (the right job for the right tool)
derjack: got back that place in oware. phew
KalamariKing: The placement shown on profile hover, that's sitewide, right?
KalamariKing: As in not challenge-specific
derjack: its global ranking, yes
jrke: oh jacek first in oware
jrke: gratz
derjack: :innocent:
AntiSquid: stop playing clash :P
AntiSquid: ah chat scroll .
AntiSquid: was replying to an older message
struct: jacek nn?
derjack: as always
post4k: Is there a place here on codingame where I can practice their interview-style process? multiple questions of certain languages, and various coding challenges.
post4k: im asking since my next interview will be on this platform
derjack: you may try asking that on discord
Uljahn: maybe this https://www.codingame.com/work/
struct: I would solve some puzzles to understand how the platform works
post4k: yea, exactly, I think the free trial is what I want, thanks !
post4k: yea, done that already :)
struct: I think its a similar style
struct: Maybe you also have to answer some questions
struct: idk, never done it
post4k: well not exactly, the interviews have multiple choice questions and stuff as well
post4k: so, its like, 20 something questions, and 5 or something coding challenges (usually 15 minutes each)
[CG]Thibaud: post4k a free trial won't help
[CG]Thibaud: best way to practice is to do puzzles on CodinGame
[CG]Thibaud: before taking your test, you'll be able to pass a tutorial to check how the test platform works (really close to CodinGame)
post4k: @[CG]Thibaud yea, now I noticed that the free trial is just a login to codingame. I did one of those tutorials before, and what I wondered was if I could try some more of those before my interview. Seems not. Anyways, thanks.
ZarthaxX: jrke congratz on top 100!
whay: hiiiiiii
whay: world
whay: hello
whay: ???
whay: offfff
whay: :expressionless:
JohnCM: what's the difference between codingame for work and the normal codingame
whay: idk
Krakenus00: idk, maybe privacy
Krakenus00: something like private leaderboards
whay: im arab
Krakenus00: or maybe even unique puzzles
JohnCM: i'm thinking if it'll be something like leetcode
whay: kiev
Krakenus00: ah, nope, that's just a platform for recruiters
Krakenus00: You pay money to see nerds solving puzzles
jacek: nerdfans
whay: https://www.youtube.com/watch?v=yZ4c87YVyjw
whay: watch
Krakenus00: https://youtu.be/dQw4w9WgXcQ
Krakenus00: watch
whay: haha lol
eulerscheZahl: JohnCM 02:59PM what's the difference between codingame for work and the normal codingame
eulerscheZahl: CG for work is a recruiting platform
eulerscheZahl: you apply at company X which is a partner of CG. X gives you a link where you do some tests (multiple choice, coding tasks)
eulerscheZahl: dbdr the cotnest is over
eulerscheZahl: contest*
jacek: :thinking:
dbdr: contest is dead, long live the multi
dbdr: eulerscheZahl, congrats on being the first to ever reach 200k CP ;)
ZarthaxX: yeah gz toad!
ZarthaxX: took 1st again :)
ZarthaxX: he got 200k with royale too tho :thinking:
eulerscheZahl: 1st by a devastating landslide victory
JohnCM: i see, so the coding tasks and multiple choice is decided by the recruiting platform right
eulerscheZahl: 22 points
struct: othello are free points
eulerscheZahl: that's more than 0.01% ahead
dbdr: Royala will never catch up such lead
struct: oh no you lost your certificates
struct: https://i.imgur.com/rwvjbnH.png
eulerscheZahl: as board games get more and more players you'll soon be first dbdr
eulerscheZahl: I never wanted them, that's fine
Twelve0: Hey , maybe you talked about it before but was Minimax really the optimal algo for spring challenge
dbdr: no
struct: Dont think so
eulerscheZahl: reading the post mortems there was one player in top20 doing it
Twelve0: because I don't remember anyone talking about using it
dbdr: that tag is a mistake I would say
struct: Missing bitboard tag
eulerscheZahl: right, the tag. I was wondering what it's doing there
Twelve0: so was it beam search and MCTS ?
eulerscheZahl: mostly
dbdr: rather, yes
eulerscheZahl: and the mighty NN
Twelve0: NN something like genetic algorithm ?
whay: hi
struct: No, Neural network
whay: https://www.youtube.com/watch?v=yZ4c87YVyjw
whay: watch
eulerscheZahl: why?
Twelve0: so they train it locally with a NN?
whay: whatch pls
whay: https://www.youtube.com/watch?v=yZ4c87YVyjw
eulerscheZahl: https://forum.codingame.com/t/spring-challenge-2021-feedbacks-strategies/190849/67?u=eulerschezahl
eulerscheZahl: the neural network for the contest
eulerscheZahl: stop it whay
eulerscheZahl: ok, struct lost patience first
Twelve0: i have no idea how it is done for CG, any resourses where I can read about it
eulerscheZahl: did you see my link?
MSmits: i think it's unclear what search algorithm was best for spring contest. The winner did not win because of search, but because of eval... aka the NN
eulerscheZahl: 118 likes. that must be the most liked post on the entire forum
jacek: also https://www.codingame.com/forum/t/neural-network-ressources/1667
Twelve0: Oh okay I'll read it thanks euler
eulerscheZahl: https://www.codingame.com/forum/t/code4life-in-multi/2823 this one has 115 likes "only"
MSmits: beamsearch was suboptimal i think because it did not take into account opponent very well
MSmits: but minimax, mcts, duct, all fine i think
struct: yeap
struct: All enemy predictions i made didnt work
Twelve0: I was finished 167 in legend without any sim or search , ( i guess a lot of people used hust huestics too )
struct: Instead I tried to decrease opp suns with eval
MSmits: well i should clarify, beamsearch is definitely enough to get into legend or to do quite well (euler)
eulerscheZahl: the rather stupid grow-it-all was the best I could do
MSmits: I just mean you cant be 1st with it
whay: Your procedures are very tight
struct: I gave you a chance
MSmits: uh oh whay is flirting
struct: This chat is not the place for those types of discussions
MSmits: yup
MSmits: he's PMing me now, my own fault
eulerscheZahl: i got a PM too
MSmits: you can be more snarky, you handle it :P
Twelve0: what's PM??
struct: personal message
jacek: post mortem
eulerscheZahl: "I was finished 167 in legend without any sim or search" it's really out of line for CodinGame to have such a huge legend league as it happened this time
**PatrickMcGinnisII is a PM
MSmits: I actually think it wasnt as bad as people feared when gold boss was made
eulerscheZahl: wait, it's personal message? I always thought it's private
eulerscheZahl: squirrel in my room
struct: maybe is private
struct: its private
struct: I was wrong
Twelve0: https://www.timeanddate.com/time/am-and-pm.html
eulerscheZahl: ante meridiem and post meridiem
struct: https://acronyms.thefreedictionary.com/PM
MSmits: you spell post mortem wrong
struct: Pacman
PatrickMcGinnisII: MSmits it's a greenwicht hing
Twelve0: Peoplemover
eulerscheZahl: ok, that's enough
PatrickMcGinnisII: yunguns say DM...direct msg
BlaiseEbuth: Parmigiano Mozarella :3
MSmits: in everquest it was a "tell"
whay: You are a dictator eulerschezahl
MSmits: /tell
eulerscheZahl: i'm not there yet but working on it
BlaiseEbuth: To gulag !
eulerscheZahl: struct :rofl:
Westicles: Do the NN approaches use up all the 100ms turn time?
MSmits: Westicles sure why not
MSmits: if they search
MSmits: they still build a tree
MSmits: do rollouts
PatrickMcGinnisII: I didn't think there was enought ime to run the millions of sims to make an NN, reCurse proved me wrong
MSmits: so more time = more rollouts
Westicles: Ah okay, I wondered if beam would catch up with longer times
MSmits: beam?
BlaiseEbuth: More rollouts = more autobots
Westicles: beam search
MSmits: you mean with greater width
MSmits: beam has a huge limitation, it would do better with less time actually
eulerscheZahl: NN is about finding a good scoring in a chaotic game
MSmits: because with more time you dont solve the problem that you ignore opponent
MSmits: so at some point your bot just cant get better with more time
Marchete: beam is shortsighted
Twelve0: guys what do you think about the difficulty comparing spring with last fall ?
Marchete: and ignores enemy a lot
MSmits: same as GA
struct: ofc there is enough time to play 1 mill games
MSmits: mcts/duct/minimax approaches get better with time
struct: I ran around 330k games in 3 hours
MSmits: and they can be combined with NN
Westicles: I see. So really the only way to get rid of NN is reduce max file size
Marchete: hands down
struct: on the ec2 machine
BlaiseEbuth: Was more difficult for the servers Twelve0
Marchete: MCTS is good by the statistical tree it makes
MSmits: Westicles not really. You can make a NN with only 2kb, it would not eval as well, but it would also be faster
Marchete: pure vanilla MCTS isn't good usually
eulerscheZahl: how do you define difficulty Twelve0?
MSmits: imagine, you can make a good minimax with only 6 or 8 parameters in most boardgames
struct: Game was very simple to sim
MSmits: how many params can you fit in 2 kb?
struct: easier than previous challenge
eulerscheZahl: for me it's "how difficult is it top reach top X on the leaderboard". which is always pretty much the same
Marchete: imo you can use NN also in minimax
MSmits: yes
MSmits: you can
MSmits: thats my point
Marchete: minimax policy + value
Marchete: policy for move ordering
Marchete: and value as score
MSmits: NN will always be better than regular minimax, even with tiny file size
Marchete: stockfish NNUE is like that?
Marchete: I haven't reviewed
Twelve0: eulerscheZahl I don't know, like the complexity of the game rules
Marchete: but the damn a0 has so many little things
eulerscheZahl: that was low in both the recent and previous contest
Marchete: noise here and there
MSmits: you can apply them gradually Marchete
Marchete: little things
struct: stockfish NN was updated
MSmits: like you can start with a value NN and later add policy
struct: btw
eulerscheZahl: pacman was a little more complex but still feasible
Marchete: no
Wontonimo: man, the chat is abuzz with nn
struct: https://github.com/glinscott/nnue-pytorch/blob/master/docs/nnue.md
Marchete: I prefer policy + value
MSmits: yes i know Marchete, but i mean when learning things
Marchete: I thought about the policy1+policy2+value
Wontonimo: it's as if it's done well recently or something
Marchete: as recurs_e said
MSmits: no need to do everything at once
Marchete: but I don't know
struct: new network architecture
struct: scroll to the end
struct: Architectures and new directions
MSmits: Marchete would oware have 7 outputs with value + policy?
MSmits: 1 value output + 6 policy outputs?
Wontonimo: if the action space is small enough, and you don't want to do everything at once, then start with a value network only
jacek: Marchete NNUE is only value
Wontonimo: if you are combining with search
Wontonimo: if you don't have search, then do policy first
MSmits: the nice thing about policy is that it guides exploration so you dont do obviously bad moves on low visit nodes
Wontonimo: ^^ exactly !
MSmits: it's like doing mcts with a minimax eval to guide exploration
MSmits: this is a thing
MSmits: it's not really NN only
Wontonimo: i was just commenting on your comment MSmits that you don't have to do everything at once
MSmits: oh right
jacek: MSmits yeah, oware has 7 outputs, value and 6 moves
MSmits: yeah you dont
Marchete: ask jacek and robo MSmits :D
MSmits: cool jacek, got it then
Marchete: I'd say yes
MSmits: jacek doesnt use policy, but he knows yeah
Marchete: I know
struct: Are you gonna try NN MSmits?
MSmits: yeah, i am
MSmits: will be experimenting with oware
struct: oh nice
jacek: i somewhat sped up my NN and took back my place in oware
JohnCM: but is pytorch included in codingame?
MSmits: good job
struct: One day I expect to do the same, but Im still a begginer on this NN stuff
MSmits: though it's really hard to say with those 4 NN's, there's soooo much RPS going on
struct: no JohnCM
Marchete: My NN jacekmax wasn't that good
MSmits: dont know which is better
Marchete: heuristic was better
Wontonimo: so, my $0.02 is: if you just want to get your feet wet, do value+search OR policy w/o search for games with a small action space.
JohnCM: i use neural networks a lot for my research, but it's all in python
MSmits: Wontonimo oware is one of those games
Marchete: fenri_r did CSB without any search
Marchete: just pure action critic
MSmits: the game is even solvable if you add some ruls to avoid loops
MSmits: rules
JohnCM: actually for games like backgammon, only one linear layer of NN is sufficient
MSmits: I doubt it's much more complex than our connect 4 version
jacek: oh cool discussion going on and i have to leave, meh
JohnCM: like it's more important to do the TD-learning
Wontonimo: JohnCM - you can export your trained weights and import them into CG and execute them with matrix math. no backprop needed during the game execution
MSmits: jacek i am sure it will be redone :)
jacek: yeah, dont forget good training pipeline
JohnCM: ya i'm thinking that i would need to code it out myself to use it in CG
Marchete: as if it was that easy
JohnCM: like code out the NN code
Marchete: function loss for example
Marchete: isn't that trivial
MSmits: what do you mean Marchete
Marchete: how do you tell your NN how is your loss
Marchete: policy+value
Marchete: you train, but what is the target?
MSmits: oh, well i have a place to start with jacek's method
MSmits: he does a mcts with 200x rollout and eval of all children (using randomized NN)
MSmits: then his target is the average value, not sure for policy
MSmits: maybe the target is best action
MSmits: basically, you take all visited gamestates
jacek: policy is set of visits likes {0, 1/5, 2/5, 1/5, 1/5}
MSmits: eval with NN and compare with eval over 200 rollouts
Marchete: you need to get a loss value for that
MSmits: oh yeah, nice way
MSmits: yes Marchete. Loss is the difference
Marchete: policy:{0, 1/5, 2/5, 1/5, 1/5}, value 0.33
Marchete: what is loss?
MSmits: the difference between the output of the NN and the result of the search
jacek: look for softmax loss, -target * log(p)
MSmits: I had a chat with an expert that i saved Marchete
Marchete: I'm looking at a0 loss functions
MSmits: http://chat.codingame.com/pastebin/6e67c0c8-6484-4e05-9061-cce6e4e8a7f9
Marchete: I don't see the loss
Marchete: I'm looking in a0 or actor critic
Marchete: that seems similar
Marchete: you need to minimize two kind of losses at the same time
Marchete: a softmax + tanh (for example)
MSmits: how do you not see the loss?
MSmits: you have a search value
MSmits: thats the target
MSmits: you have a gamestate you can input into the nn
MSmits: thats the value you use to calculate loss
MSmits: loss = search result - gamestate value from NN lookup
MSmits: this is the value loss
Marchete: you need to define that function
MSmits: search result is just the value calculated with mcts
MSmits: it's wins/visits
Marchete: k*sum(policyloss)+l*sum(valueloss)
Marchete: what is more important?
MSmits: can't you backpropagate them separately?
MSmits: they are separate output
Marchete: afaik you have only 1 loss value
MSmits: well you're talking about using policy and i am just guessing here. I still have to do this with just value to get started
Marchete: it's not that I don't know that policy and value are compared to the NN output given some gamestate
Marchete: but the innards of what to give as "loss"
MSmits: but do you understand what i mean when it is just value?
Marchete: no
MSmits: ok
MSmits: lets forget policy then
MSmits: you have a NN
MSmits: roll it out 200 times
MSmits: evaling all children and backpropagating the results, like you would in a normal search
MSmits: your gamestate will get a value from this
MSmits: it's a bad nn, random parameters and all that
MSmits: doesnt matter
MSmits: you still get a value
MSmits: this value will on average be better than a value from 1 rollout right?
MSmits: at least near the end of the game when its near solved
MSmits: this value is better, so you use it as a target
MSmits: you keep running games, with, say 200 rollouts
MSmits: each time you use the average value as a training target for your nn
MSmits: for every gamestate you encountered during the game
MSmits: (for oware, like 100 states per game)
MSmits: so 1 game gives you 100 training states with an average value as target
MSmits: basically you train the NN to give as result the same result as its previous version did after 200 rollouts
Marchete: it depends on what you assume as value
MSmits: so 200 rollouts become 1 (ideally)
Marchete: i.e. you perfectly can do:
MSmits: the value is just what the NN outputs, some number between 0 and 1
MSmits: doesnt matter what it means, higher is better
MSmits: and over 200 rollouts it's an average, still between 0 and 1
Marchete: save a bufferReplay with moves
Marchete: end rollout
Marchete: backpropagate win loss as value
Marchete: policy is % visits per root child
Marchete: of the MCTS
MSmits: ye i dont know about policy really
Marchete: simplistic policy (and Robo said that too)
MSmits: I just know what i just explained is what makes jacek best at oware...
Marchete: is using number of visits
Marchete: to make a %
Marchete: I know what he does
MSmits: right
Marchete: but also it's kind of valid
MSmits: well the % thing makes sense, but i didnt think about it much
Marchete: go to endgame
Marchete: take the 0/1
Marchete: and apply it to the whole moveset
Marchete: 1 for winner player
Marchete: 0 for the other
Marchete: in my initial idea
MSmits: but thats a bit dangerous maybe? You'd evaluate all 100 gamestates as 1 if you won
Marchete: I'd review what papers and a0 said
MSmits: is this what ao does?
Marchete: I think
MSmits: just all states of a win are 1?
reCurse: If you want my two cents
Marchete: we want!
MSmits: of course reCurse
reCurse: Set your expectations to the minimum
reCurse: Get something really stupid to work
reCurse: I'd say a0 is not the best to get started
reCurse: Q learning though, probably
MSmits: that was my plan, jacek's plan is not stupid, but quite simple, i know how to do it
reCurse: Getting a CSB runner through Q learning is not too difficult and rewarding
reCurse: I started there, would recommend
Marchete: actor critic is harder?
KalamariKing: Who thinks I can get top 200
reCurse: Yes
MSmits: whats actor critic again?
reCurse: Training a policy
MSmits: ah ok
MSmits: thats the thing though, jacek doesnt use policy for oware
reCurse: Well "technically" you also train a policy with Q learning
reCurse: But let's ignore those details
Marchete: jacek "infers" a policy MSmits
MSmits: but only uses value in his bot
Marchete: if you apply the value to children
Marchete: == policy
Marchete: you need to "open" all children
Marchete: evaluate
Marchete: to recover what it could be the policy
MSmits: well thats not exactly the same
MSmits: in use at least
MSmits: but if you mean the bot tends to choose good moves and policy helps with that too, then yes
Marchete: no
Marchete: I mean jacekmax does it
MSmits: oh right, he keeps the max
MSmits: but he doesnt just use jacekmax
Marchete: expansion: expand the node leaf by every possible children (every possible moves), add eval to every children
MSmits: he also uses EPT
MSmits: with NN
Marchete: not about the "max" part
Marchete: but this
MSmits: right
MSmits: but that's just the first visit
MSmits: doesnt count for much in exploration
Marchete: ...as alphazero does with policy
MSmits: sure but policy gives a bit more difference in visits
MSmits: low policy moves get visited much later dont they?
Marchete: yes
MSmits: if you eval all children, you maybe visit a good child 3 times before you visit the bad child again
MSmits: i think policy generally makes more of a difference
Wontonimo: totally off topic : anyone know if there is a referee available for Code Royale ? I don't see it in the list of brutaltester refs
MSmits: but hey, this discussion is why jacek always says he doesnt see the need for policy
MSmits: because what you say does make sense Marchete
MSmits: but generally policy seems to work better
Marchete: I mean they are similar, not exact
MSmits: yes
jacek: im back
MSmits: which is why just doing value is a much easier place to start :)
jacek: and i dont use policy
jacek: the 'policy' youre referring to is 1-ply value search, if im correct
Marchete: yes
jacek: theyre not the same, are they
Marchete: no
Marchete: they are "similar"
Marchete: or at least I see it that way
struct: Wontonimo https://github.com/csj/code-royale
Wontonimo: imo policy is great for something with a huge branching, like GO. It's also good for an informed rollout for some of the depth.
Marchete: anyways I have no idea
MSmits: the effects are similar in that you will visit high policy children more often and you will also visit high value children more often
Marchete: I deviated you
MSmits: but you waste way more visits if you just use value
MSmits: as Wontonimo suggests
MSmits: oware though, has small branching
Wontonimo: but i haven't actually coded something like alphaZero yet, so all my thoughts are just that, thoughts
Marchete: value alone is easier to calculate loss
MSmits: yeah
Wontonimo: thanks for the link MSmits
RoboStac: but aren't you using tensorflow for training?
Marchete: me?
RoboStac: yeah
Marchete: yes
MSmits: I think if you want to get into NN, motivation is a big deal. If you can get something to work that helps you move on to othe rthings
Marchete: but how do combine policy + loss properly?
Marchete: I always thought TF asks for a single loss value
Marchete: not two
reCurse: MSmits words of wisdom
jacek: doesnt tensorflow calculate policy loss for you?
RoboStac: look into cross entropy loss
MSmits: yeah, well you said so in your pm also
MSmits: reCurse
Marchete: cross entropy loss
Marchete: ok
reCurse: Tensorflow calculates gradients for you
Marchete: I've read somewhere they give less weight to value part
jacek: whats the difference between cross entropy loss and softmax
reCurse: I would say though learning how the gradients are computed and backpropagated was immensely helpful for me
reCurse: But it's not necessary I guess?
jacek: in the world of import nn; nn.train();? no
Marchete: it seems that is cross-entropy what I was talking about, thanks Robo
reCurse: I've been able to understand problems and apply solutions that I wouldnt have been able to otherwise
Wontonimo: hey Marchete, you can do two loss functions at the same time in TF, let me get you a link...
reCurse: Two loss is just combined into one loss :P
jacek: the more you know, i was using 'cross-entropy loss', not 'softmax loss' in my latest policy experiments... https://www.quora.com/Is-the-softmax-loss-the-same-as-the-cross-entropy-loss
reCurse: You always start from a single loss
Marchete: so softmaxloss*k+valueloss*(1-k)
Marchete: or all together softmax+value?
reCurse: I'd say lerping is not too helpful
JFB: I wonder - maybe yuse diferent lost function in different epoch?
Wontonimo: Here Marchete https://colab.research.google.com/drive/1-aUaeIrGw7rDm1hSEBwVRo0RaKbf-IWb is a colab notebook showing that you can train 2 losses at once for different heads
reCurse: policy * X + value * Y
reCurse: Is the preferred way to look at it IMO
Marchete: ok
Wontonimo: the losses in that colab notebook are not combined, but effect different netowrks
Wontonimo: to maximize learning, the shared part of the two networks learn at the same time
reCurse: Also can be more difficult to get right
Wontonimo: ^^ +1
reCurse: I can't stress enough how important it is to start small
JFB: I do not seen the beginig of the discussion so stupid question: why do you plan to use tensorflow and not pytorch? I understund that now most people use pytoch. (I have no experience with pytorch only with tensorflow so jus ask for curiosity)
reCurse: Having those first successes is essential for motivation
reCurse: I much prefer pytorch myself
reCurse: Just pick whatever suits your fancies
kovi: just opened the chat or policy1 * x1 + policy2 * x2 + value * y in case of duct?
reCurse: You won't go wrong with tf either
MSmits: reCurse what do you like about pytorch compared to tensorflow with or without keras
reCurse: It used to be about what's now called 'eager mode' in tf
reCurse: The declarative approach kind of sucks to understand what's going on
MSmits: I see
reCurse: With pytorch you type one line and get immediate results
reCurse: So it's more natural to follow
reCurse: And with all the advances of previous years it's not that bad for performance anymore
MSmits: ah ok. Do you personally use these frameworks? Or do you still use something completely your own?
reCurse: What I would call version "1.0" of my RL pipeline was all hand-made from scratch A to Z
reCurse: Now I use pytorch and the like
MSmits: yeah i remember that
kovi: :o
MSmits: ah ok
reCurse: Like I said, understanding how it works at the lower level was immensely helpful, can't understate that
reCurse: It's like programming without understanding memory and stuff
MSmits: yeah I am not sure how it would be for me. I have a pretty good grasp on the matrix stuff and derivatives
dbdr: *can't overstate it? ;)
jacek: thats why i made xor example from scratch without numpty
reCurse: Oops.
jacek: numpy even
reCurse: Thanks dbdr
reCurse: I can't lit
dbdr: :D
Astrobytes: numpty lol
MSmits: i did that too jacek as per your advice
dbdr: it's ok reCurse, you can other stuff ;)
reCurse: Sometimes
MSmits: numpty dumpty sat on a wall
reCurse: xor is a bit boring
reCurse: Start with mnist
reCurse: It's very easy and more concrete
JFB: What is "xor" ?
kovi: but its so much easier with keras
MSmits: ^
MSmits: (answering JFB)
reCurse: Programming in python is easier
MSmits: exclusive or
reCurse: Closes you some doors though
MSmits: input 1 1 -> output 0
jacek: mnist? in c++ from scratch?
reCurse: Yes
MSmits: input 1 0 -> output 1
reCurse: That's actually how I started
jacek: :scream:
ThePoisoned1: imo
kovi: i hate that tf is not c++ native
reCurse: It's not a big deal imo
JFB: But why use numpy for xor? I expect that jacek have something different in mind that '^'
ThePoisoned1: python is just easier that other popular languages and that can make u harder to learn the others
ThePoisoned1: if u learnt python first
ThePoisoned1: the other way around is way easier
MSmits: it's also a bit difficult to learn python if you learn other languages first, goes both ways :)
ThePoisoned1: make it*
Wontonimo: tensorflow now has eager mode on by default (late response, but I love TF, so I'm plugging it)
ThePoisoned1: i started with java
kovi: but im lazy...dont want to spend months to reimplement the wheel even if it gives me insights
ThePoisoned1: but now python is jsut do whatever and kidna works
ThePoisoned1: xdd
MSmits: kovi, if you want to know the basics without doing what reCurse suggests, darkhorse shared a good book yesterday
kovi: reinvent/reimplement the wheel
MSmits: let me look it up
kovi: im ok, i did ml in udacity selfdriving
kovi: but only in workspaces
jacek: and they didnt have the wheel?
Marchete: writting a whole NN learning framework seems too overkill to me
Marchete: if TF/pytorch do it...
MSmits: neural network from scratch in python
den_lakeev: guys, what does 'valid word' in scrabble means? it's made from player's letters - is it the only one condition in this game?
MSmits: is the title, or almost
kovi: some colleges did deep learning in detail...and as they told me it is "deep"...
MSmits: i'm at page 50/650 :P
JFB: :-)
struct: is it worth it MSmits?
MSmits: so far i saw nothing new for me struct, but it's quite good
Nerchio: is it from the youtube guy?
MSmits: i think so Nerchio
Nerchio: https://www.youtube.com/watch?v=Wo5dMEP_BbI
struct: yes Nerchio
jacek: den_lakeev is this puzzle?
JFB: Better that 50/1234650 page :-)
MSmits: yeah thats him
struct: maybe ill buy it
Nerchio: i watched a few videos they were pretty good i might check out the book then
kovi: ofc, there is a difference between understanding and implementing a whole fw properly
struct: I was also checking the videos and found them begginer friendly
struct: Does the book all start from the basic MSmits?
MSmits: yes kovi, but if you're worried about going straight to TF out of laziness and missing the basics, then the book + videos might fill that gap
struct: also start*
MSmits: very basics yes
MSmits: even matrix multiplication is explained
MSmits: transposition and all that
struct: ok ty
reCurse: I'm probably bottom tier teacher, so take what I say with a grain of salt
reCurse: I'm more of a first principles
reCurse: I hate magic
Astrobytes: That's how I learn, yeah
MSmits: it's abstraction
JFB: reCurse - I prefered your aproach when I have had better memory :-)
MSmits: dont abstract before you understand what you are abstract
MSmits: -ing
reCurse: Exactly
reCurse: Because things will definitely go wrong
reCurse: And you'll need to understand why
Nerchio: you can always ask in cg chat what went wrong :joy:
Wontonimo: i haven't done NN on CG yet. My plan is to leverage TF offline and pick an architecture that is easy to export and implement by hand.
MSmits: Wontonimo there's mokka also
JFB: mokka?
Nerchio: but because of this NN stuff i curiously checked out last Halite competition that was hosted on Kaggle
Wontonimo: mokka?
Nerchio: and like top7 were all heuristics bots or something
Nerchio: even if the site is aimed towards machine learning
MSmits: https://github.com/marchete/Mokka
reCurse: Halite is a weird story
reCurse: I think they tried to promote machine learning with it
MSmits: use TF to train NN, then mokka for inference
reCurse: Realized most people couldn't beat regular approaches with it in that context
reCurse: And gave up on it? I don't know
TiopazHc: https://www.codingame.com/training/hard/her-majestys-well-shared-secret Has anyone solved it? : 'v
Nerchio: yeah maybe not so many people interested in game AI too
Nerchio: that are knowledgable in the this area
reCurse: Yeah probably
Wontonimo: nice, thanks MSmits
reCurse: Turns out plugging stuff in tensorflow isn't enough sometimes :D
MSmits: thank Marchete :)
MSmits: i havent used it before, but i plan to, later
MSmits: even if i cant get it to work i can steal functions from there
MSmits: so will sure be useful
ThePoisoned1: if i want to start learning about what i need to make bot for stuff like the challenges where and what should i start with/do (heruistics,machine learning,monte carlo tree search)
kovi: kaggle halite is python only isnt it?
ThePoisoned1: or what do i need
reCurse: Last I checked yes
reCurse: Kaggle halite is also a shadow of its former self
kovi: and no recurse bot to be imitated ;)
reCurse: A tiny one at that
reCurse: Heh
MSmits: ThePoisoned1 every contest is different, it's hard to say what you will need for the next one
struct: Is cg the only one remaining?
ThePoisoned1: i mean to start learning about how to them
reCurse: struct: Some would say raic
MSmits: do you know how to do pathfinding ThePoisoned1?
ThePoisoned1: nope
MSmits: allright, look up breadth first search
MSmits: and apply it
struct: I dont enjoy raic tbh
MSmits: to whatever
struct: But I understand some people like it
MSmits: a puzzle, a tutorial
MSmits: can be anything
jacek: clash
MSmits: watch videos on it... if you have google skills you can learn BFS
Nerchio: last raic was my first and have to say it wasn't too bad
Nerchio: kind of native support of multi file AIs
kovi: it was good. somewhat similar to halite3
Nerchio: game itself was pretty good too
ThePoisoned1: videos on breadth first search?
HoangH7: Hello everyone.
MSmits: sure
reCurse: multifile is just a copy/paste automation job away
MSmits: youtube
ThePoisoned1: or just on everything
MSmits: BFS
ThePoisoned1: okay
MSmits: i am just telling you 1 thing that is sometimes needed for contest
kovi: i had single file raic
Nerchio: reCurse true but for beginners easier entry
MSmits: and quite easy to learn, easier than most other things
Nerchio: but yeah CG doesn't have too much competition
MSmits: wait what
DomiKo: https://towardsdatascience.com/how-to-visualize-convolutional-features-in-40-lines-of-code-70b7d87b0030 could be interesting
MSmits: you mean on NNs ?
MSmits: or in general?
DomiKo: if you never seed any visualizations of NN's
DomiKo: seen*
reCurse: CG is the last place for serious bot competitions imho
MSmits: yeah it's great
reCurse: If it goes down that field is gone
MSmits: we need to keep it alive
JFB: true
reCurse: I stopped actively caring about it :P
reCurse: Feel better for it
MSmits: thats fine reCurse, as long as someone does. you contribute just by making great bots
reCurse: Trying to change something out of your control is madness anyway
MSmits: true
MSmits: well it's not 100% out of your control, just 99,99%, if many players care, it will stay
reCurse: OTOH if it goes down I would probably share a lot more lol
MSmits: strength in numbers
reCurse: Catch 22
MSmits: If it does go down, maybe somewhere it will pop back up in another form
MSmits: I mean there's demand...
reCurse: Doubt it
reCurse: It's living off benevolent money
MSmits: true
reCurse: No idea how that's possible tbh
eulerscheZahl: gocoder has huge goals
eulerscheZahl: before you ask: this is a troll comment
MSmits: it's quite special yes, that we can do this and not pay anything
MSmits: I would pay to do this
reCurse: Wouldn't put a dent in the costs
MSmits: sure
dbdr: benevolent money? isn't the money coming from CG for work?
reCurse: I meant in the sense of
reCurse: They put money with no hope of return on it
Wontonimo: speaking of paying, if there was a multi that we made that we wanted to run like a competition here on CG, we could do a gofundme to raise some ad money to bring contestants, and program the ref to stop at a date/time
ZarthaxX: true
jacek: it comes from slavery
eulerscheZahl: it's not only the server costs (which surely takes a huge part). it's also a few staff members that work partially or mostly on the competitive part of CG
reCurse: So it's out of their good will is what I meant
MSmits: hmm but isnt the size of the community a selling point for CG for work?
MSmits: it's good advertising to be able to say
reCurse: I doubt it's worth that much
dbdr: and CG is great advertising for CG for work. plus I don't think it's *that* expensive in comparison to the advertising
MSmits: i have no idea
reCurse: But if I knew better I'd do business
reCurse: So don't mind my rambling
reCurse: Either they cut a huge deal with their cloud provider
reCurse: Or I don't know
reCurse: Running that many games on the cloud isn't cheap
Wontonimo: no it aint
dbdr: I don't know, 99% of bots must be if bots, not that CPU heavy
struct: it aint cheap at all
kovi: dbdr...get ready to stop submit when i reach #4
reCurse: It's not about CPU heaviness
reCurse: It's about time rental
reCurse: Doesn't matter if the CPU is used or not
MSmits: dbdr i think 99% of the cost is from 1 % of the players :P
struct: Running 400k games costed me 20$
dbdr: kovi why?
eulerscheZahl: struct used AWS for 3h and got a bill of $6.27 already
struct: no it was more euler
Marchete: 6$?
eulerscheZahl: what even more that $6?
struct: it didnt updated
Marchete: what a steal
ZarthaxX: D:
struct: It was 6$ for the start
Marchete: use spot instances
kovi: oh, saelyos is resubmitting as well, nvm
eulerscheZahl: you gave me the wrong number. i trusted you
reCurse: I don't know if OVH has spot instances
struct: but 400k games for 18$ is not bad
reCurse: Anyway
reCurse: All speculation
reCurse: Gotta add the salaries of the staff involved too
eulerscheZahl: you only stored the end results. not the full replay
reCurse: Opportunity cost
reCurse: etc
eulerscheZahl: with extra network bandwidth the view them
struct: ah true, and I used my own referee which was faster
dbdr: how many games is a CG contest, would you say? :)
Marchete: or batch in azure
Marchete: for massive parallelized jobs
reCurse: dbdr That's a good question, I'd be curious, I imagine there's a lot more than submits
eulerscheZahl: thibaud wrote something a year ago
ZarthaxX: dbdr cant you check that with replay id before a contest and after?
Marchete: once up and running it was cool
Marchete: source: me in NS
MSmits: on the order of several million games i think
eulerscheZahl: 5 million battles for spring 2020
reCurse: If it was cheap they wouldn't have been so opposed to running more games and similar requests
dbdr: and 400k was 6$ :D
ZarthaxX: :D wtf
struct: no 18
reCurse: Just something to keep in mind
kovi: good guess msmits
MSmits: so a few 100 $
Wontonimo: if only it was easy and safe to do something decentralized, like folding@home . you get as many plays as your provide cpu
eulerscheZahl: so if we scale up linear, it's 7 million battles this contest
MSmits: ye
dbdr: anyways, pocket change
MSmits: I would imagine CG bench could be costly if many players use it
Marchete: ovh maybe don't have preemptive/spot
reCurse: You think they'd cripple bench if costs were cheap?
eulerscheZahl: they already surprised me with the 100ms time limit
Marchete: but I think they should have
reCurse: They could have just added more servers instead
reCurse: I'd trust their accounting
struct: ok $22.61 including taxes
Marchete: it's a good way to fill cloud VM with low priority batch jobs
eulerscheZahl: but i guess only a small amount of bots needs more than 2-3ms anyways
Wontonimo: well now that's too much struct
struct: I had the machine running for about 10 hours +-
struct: full load for around 4 hours
Marchete: up to 80% cheaper
Marchete: and it's real, no marketing BS
MSmits: I wasted nearly 300$ of free google VM on locam :P
reCurse: They're on OVH last I heard
reCurse: I don't know if they have spot instances
reCurse: It's also subject to availability
reCurse: You could have days without any instances available
reCurse: You're ready to have your website down for it?
Marchete: not all website, but match runners
reCurse: Still an issue
dbdr: we found the source of stuck submits :D
Marchete: high spike? spot instances
reCurse: Affects plays in IDE too
kovi: so recurse bot played more games than all of use together
kovi: no wonder he won :)
reCurse: Imagine the chat where you get people asking daily why play doesn't work
dbdr: lol
MSmits: against itself kovi :P
eulerscheZahl: so that counts for 2 matches each
reCurse: Then you need to build the infrastructure to depend on that
reCurse: If they didn't already, that's more investment
reCurse: I don't know, I get the impression this is severely underestimated here
Marchete: I guess
reCurse: They're not stupid, if it was cheap they'd just add servers
dbdr: they have a bottleneck
dbdr: it's not the servers
MSmits: reCurse you could throttle the number of plays /min when the availability is low. You could do a more expensive minimum availability with the cheap part for extra availability. Like amix
struct: I think they added during start
Marchete: I just said preemptive are perfect for short/burst and forgettable jobs
eulerscheZahl: might this even be the real reason for less contests?
mickeyaxe: whats the best language
Westicles: Definitely seems to be more of a business focus this last year
reCurse: Maybe I just sympathize because I read reddit comments about gamers thinking they have a clue about what goes on behind the scenes :)
reCurse: I try to assume good intentions
MSmits: mickeyaxe https://en.wikipedia.org/wiki/Shakespeare_Programming_Language
mickeyaxe: i am new whats the best language
Wontonimo: the one you know
struct: Lua
mickeyaxe: lol i just got in to this
Nerchio: python is a nice language i suggest diving straight into NNs
MSmits: lol
Nerchio: so you dont waste any time
mickeyaxe: do not know what the fuck i am doing but a am ready to learn
Wontonimo: what do you mostly code in mickeyaxe (the red text just means you are mentioned, it's not bad)
struct: red text is a warning
MSmits: f-word is bad :P
struct: next is kick followed by ban
Wontonimo: no it isnt!
MSmits: i dont mean fun Wontonimo
Wontonimo: oh no, i got red text now
iHapiW: hi
eulerscheZahl: it's hard to answer the best language question. we don't even know what you want to achieve. puzzles here on CG, web development, desktop applications, ...
MSmits: or order food in Italian restaurant
Nerchio: he wants to do NNs i've heard they can do anything you want
eulerscheZahl: depending on that you might get a different language suggested. and also depending on whom you ask
reCurse: What's the best utensil?
MSmits: fork
MSmits: easy
Wontonimo: spork
struct: why a fork?
MSmits: why not
Westicles: lvl 3 US, just say python
MSmits: you can eat anything with fork
eulerscheZahl: use freethon. paython is too expensive
Nerchio: soup would be difficult
Wontonimo: spork!
MSmits: thats drinking
MSmits: the eat part of soup can be done with fork
reCurse: You eat steak with a fork?
reCurse: Must make for interesting bites
MSmits: mmh I am vegetarian apparently
MSmits: but sure, i would try
Wontonimo: grind one side of the spork to a razor edge, then eat your steak
MSmits: you can eat steak with two forks
Smelty: smart
eulerscheZahl: the answer is "Swiss army knife"
Westicles: I'm amazed at two-handed steak eaters. I'm a right hand knift, right hand fork guy
eulerscheZahl: i'm a tofu steak guy
Wontonimo: you cut your meat with 1 hand?
Westicles: lots of switching
Smelty: cool'st
MSmits: I actually havent used a fork in months
MSmits: maybe i miss it, not sure
eulerscheZahl: how do you eat then?
Smelty: chopstic
Wontonimo: is it because of the nightmares ?
eulerscheZahl: my default is fork+spoon
MSmits: I live mostly on jimmy joy shakes :P
dbdr: how the chat topic drifts
MSmits: but sometimes i get some croissants or some popcorn if i need more calories
MSmits: still no fork needed
reCurse: I'll take responsibility on that one
dbdr: :D
Marchete: from NN, to cloud servers to tofu
eulerscheZahl: all it takes is one guy asking for the best language
MSmits: yep :0
reCurse: I derail enough chats I'd probably make a living off derailing trains
dbdr: if there was a market for that
Smelty: lol
Wontonimo: with the competition there is
eulerscheZahl: trains... used to take one with my grandma to go to bath
jacek: openttd eh
jacek: trains in germany :scream:
eulerscheZahl: in a city a bit away, was a trip for the whole day
Smelty: eh
reCurse: ^ case in point ^
eulerscheZahl: i did that one on purpose
reCurse: :P
MSmits: that was disturbing
MSmits: :P
Smelty: ^
dbdr: most disturbing was learning poor euler did not have a bath at home
MSmits: yeah
reCurse: Shower is enough
eulerscheZahl: uhm, is "bath" the wrong word?
dbdr: shower was when it rained
MSmits: it's a good word eulerscheZahl
eulerscheZahl: public swimming bath
dbdr: eulerscheZahl on purpose too
MSmits: ohh, then no
dbdr: I know what you meant
MSmits: swimming pool
eulerscheZahl: https://www.dict.cc/?s=schwimmbad
MSmits: zwembad in Dutch
jacek: bad
Nerchio: its better to have a shower and no bath than have a bath and no shower imo :D
dbdr: there are hot public baths not for swimming
MSmits: yep, bad = bath
jacek: i thought euler didnt have bath
MSmits: true Nerchio
eulerscheZahl: i'm more a shower guy
reCurse: I miss onsens now...
eulerscheZahl: haven't been in the bathtub for more than a decade
MSmits: will we next discuss our kitchen sinks ?
reCurse: sigh
dbdr: yeah, Nerchio made me think of japan too
iHapiW: any iranians there ?
eulerscheZahl: no, struct kicked them
MSmits: at least 1
ZarthaxX: haha
Nerchio: dbdr never been there, wanted to go but worldwide plague happened
Nerchio: soonTM
reCurse: Definitely go there
reCurse: Best trip of my life
dbdr: agreed!
reCurse: My only regret is not going there when I was younger
reCurse: If only to have more time to go again
Westicles: Interesting country. I think their y chromosomes are falling apart, guys getting very weird
MSmits: thats been happening for a long time
MSmits: watch conan in Japan: https://www.dailymotion.com/video/x70z6ua
Nerchio: i was in south korea though and they have next level toilets
Nerchio: maybe in japan too i guess
Nerchio: like heating up the seat etc :joy:
reCurse: Yeah fairly standard there
eulerscheZahl: https://www.youtube.com/watch?v=QecplAPd-K4
Westicles: Better than Shenzhen back in the day. Squat in the hole
Nerchio: but I was as surprised by that as when i saw a hole in the ground as a toilet in a mall in China ^.-
Nerchio: yeah
Nerchio: Westicles :D
Smelty: lol train your muscles
Nerchio: we had it all in chat today probably ;)
Smelty: reeeeeee my code for "roller coaster" passes "very large dataset" but fails "large dataset"
jacek: hardcoding solutions eh
Smelty: nope
Smelty: it was a validator
Smelty: and once i removed them loggers i got 100%
Lachrymosa: Hm, the "Reach the silver league" quest map isn't unlocking for me. I got silver in two contests now but it only counts 1/2
Smelty: hmm do contests count? i think its bot programming
Lachrymosa: you may be right, i'll just have to run my contest code in the bot game then
Astrobytes: Known issue iirc
Lachrymosa: oh, so is it me not running it again, or should I just note it and move on
Astrobytes: Think they said it'll be fixed soon
Smelty: ah yes
Chainman: totoro
King_Coda: All right boys
King_Coda: Surgery today, let's go
King_Coda: Hype Champ
Chainman: good luck?
AntiSquid: where did you come from?
King_Coda: I've always been here
King_Coda: I just took a break from chat for the duration of the contest
AntiSquid: brain enlargement surgery ?
King_Coda: That's not a thing
AntiSquid: augmentation via neural link
King_Coda: Deus Ex Human Revolution style
King_Coda: Anyways, back on topic
King_Coda: I've been practicing a lot with AI bot proggramming recently. Never knew it would be so fun
King_Coda: After just a few puzzles I'm in the top 10,000
jacek: youre over 10500
King_Coda: I also never knew they would be so long... 800+ lines????
King_Coda: Wait, I dropped?
King_Coda: I was 9,956 last time I checked
jacek: making puzzles would give you only exp no?
jacek: no ups in ranking
King_Coda: I don't make puzzles
King_Coda: I solved them
jacek: solving*
ZarthaxX: that doesnt give rank
King_Coda: Yes it does?
ZarthaxX: games do
ZarthaxX: clash of code you mean?
kovi: jacek you have nn uttt?
King_Coda: No, I don't do clash of code
jacek: yes
ZarthaxX: then you are crazy
kovi: seems robo has improved, maybe he added nn
King_Coda: Solving puzzles gives you rank
ZarthaxX: nope
King_Coda: Then how did my rank increase after doing puzzles
King_Coda: :thinking:
ZarthaxX: did you do contest?
King_Coda: No
jacek: clash gives rank
ZarthaxX: lemme check
ZarthaxX: he said he didnt do
King_Coda: I got into gold league on Platinum Rift with my bot
King_Coda: That's really the only league based activity I did
ZarthaxX: you did clash
King_Coda: I never won any though
ZarthaxX: that doesnt appear King_Coda
ZarthaxX: the platinum
ZarthaxX: was that today
King_Coda: No, it was last week
ZarthaxX: you dont have to win clashes to gainrank
ZarthaxX: you didnt do platinum lol
King_Coda: ...Yes I did
ZarthaxX: ah its bugged then
ZarthaxX: might be that one then :)
King_Coda: There's a bug now?
King_Coda: Great, sounds fun
ZarthaxX: i mean, it shows that you have like 2k points
ZarthaxX: but only shows spring challenge haha
King_Coda: I only got into like wood 2 league on the spring challenge
ZarthaxX: yeah i see that
ZarthaxX: wood2 is the initial league
King_Coda: I didn't start actually practicing until after the contest
jacek: and he got into it. :tada:
ZarthaxX: :rofl:
ZarthaxX: get legend King_Coda
King_Coda: My bots only get me to gold
struct: oh valgrowt h also used chokudai
Marchete: and ghost trees
RoboStac: do they do extra spooky shadows?
Marchete: clever ways to avoid overevaluations
AntiSquid: expect val to do MCTS DUCT, that's what he did for gocoder
Marchete: :ghost:
AntiSquid: so much work around the eval function ...
AntiSquid: almost makes NN look easy
Marchete: lol no
struct: RoboStac yes but only for the other player
struct: I mean the ghost trees will still cast shadows
struct: but only for the other player
Marchete: it's a way to avoid bad interactions between players, like what he said, a seed after enemy's COMPLETE
AntiSquid: oh well yes, if you think about it overanalyzing the game to come up with perfect heuristics overall takes an awful lot of effort
Smelty: Bb
Marchete: overanalyzing sounds like it isn't needed
Marchete: in any subject if you are at the highest limit
Marchete: you need to "overanalyze"
AntiSquid: it's needed, it's just somewhat wasted effort, less productive
Marchete: Also zobrist
Marchete: in fact reading it I overanalyzed more than that
Marchete: I had a lot of tables and stats
Marchete: didn't work out btw :D
jacek: my code works faster than i anticipated and i dont know why :(
struct: how is that bad?
jacek: because i cant reproduce it to other codes
jacek: or i do the same but dont get that speedup
struct: bug?
jacek: works correctly
jacek: the change made this part 6x faster, when i suspected at most 2x
jacek: could be less cache misses or something
HaadiFarooq123: which launage do you use
HaadiFarooq123: ?
jacek: c++
HaadiFarooq123: Sorry not my field
HaadiFarooq123: would have loved to help
Nerchio: Smelty your roller coaster solution :scream:
HaadiFarooq123: ?
CamTheHelpDesk: I can't seem to find the buttons to approve/reject contributions that I am qualified to approve/reject...
Astrobytes: they map still be in WIP status
Astrobytes: *may
CamTheHelpDesk: nope, this one is waiting for moderation
Astrobytes: Clash?
CamTheHelpDesk: yeah
CamTheHelpDesk: https://cam.is-ne.at/xzWwno.png
Astrobytes: And you've approved other clashes?
CamTheHelpDesk: no, never
CamTheHelpDesk: first one
Astrobytes: Have you done the required amount of clashes?
CamTheHelpDesk: yes
CamTheHelpDesk: the path thing on the homepage says to go moderate one
CamTheHelpDesk: https://cam.is-ne.at/OWxpnx.png
Astrobytes: Can you link the clash?
Astrobytes: *contribution
CamTheHelpDesk: https://www.codingame.com/contribute/view/6752dc412690c9034d8c1d4dabd39ee9d884
struct: I think the requirement is higher than 50 clashes
struct: to be able to aprove
struct: but im not sure
Astrobytes: 50+ yes
struct: try doing one more clash
CamTheHelpDesk: alright
kovi: nice improvement dbdr
kovi: duct?
jrke: btw what is duct?
ZarthaxX: decoupled uct
ZarthaxX: simultaneous mcts
jrke: oh mcts for both players
jacek: duck tales
ZarthaxX: duck tape
Xoast: how many people are bots for clash of code
jacek: yes
Xoast: wait so its all bots
Smelty: coc bots are generally level 7 and no bio and if you click on their profile itll say that they are bots :)
Smelty: the rest arent
jrke: not alll mostly are bots
snoyes: Looking for one more approval on https://www.codingame.com/contribute/view/657661704b0fdc034a635fa4aa2d0b61193f
ill-be-waiting-outside: nice work
-oa-: hi all!
Wontonimo: jrke, here a link for DUCT https://dke.maastrichtuniversity.nl/m.winands/documents/sm-tron-bnaic2013.pdf
Wontonimo: unlike MSmitMax (how is it spelt?), DUCT is all in one graph
Wontonimo: hi -oa-
King_Coda: Alright, going to my surgery now
King_Coda: Let's goooo. Gonna do some bot programming when I come back
AntiSquid: are you not gone yet? King_Coda
AntiSquid: thought it was hours ago
AntiSquid: no idea what surgery he's having, hope he took a book or something with him, it's really boring for patients when they recover
struct: dental
AntiSquid: ouch, might not even get solid food for a while
struct: i just started reading about NNs, can layers have different number of neurons from eachother?
AntiSquid: yes ofc
struct: ok makes sense
struct: I just that most of pictures just all layers with the same number of neurons
AntiSquid: ya all tutorials seem to mimic each other
jacek: really?
struct: really to which part jacek?
AntiSquid: he's trollyloly again
struct: ...
jacek: "most of pictures just all layers with the same number of neurons"
reCurse: When isn't he
struct: yeah missed a few words
AntiSquid: his NLP isnt fully trained
AntiSquid: underfitted *
jacek: or MLP
AntiSquid: http://chat.codingame.com/pastebin/12424fcf-75c4-43ff-9d39-7a41959d0425
AntiSquid: oh f... Automaton2000 time
Automaton2000: because they are the only way i can get it to work
struct: thanks will check
AntiSquid: struct check my paste bin
AntiSquid: ok
struct: So many terms o.o
reCurse: Better get used to it
struct: yeah, I guess at the start is a bit overwhelming
CamTheHelpDesk: do you get XP from CoC?
struct: no
CamTheHelpDesk: is there a list somewhere of what you get XP from and how much
MSmits: I actually use that playground in class
MSmits: you can turn most of it off, make it simple
MSmits: I used iframes where i turn stuff off and i gradually turn it on as my students progress
MSmits: works quite well
KelvinAndHubbles: CamTheHelpDesk, if you go to the practice problems and hover over each it says xp values and if you go to acheivements tab it shows all xp values of that, and that's mostly what you'll get xp from
AntiSquid: there are even more terms
CamTheHelpDesk: KelvinAndHubbles: thanks
aropan: Why different numbers of games in leaderboard https://www.codingame.com/contests/spring-challenge-2021/leaderboard ?
struct: it shows people that registered
struct: not that submited
Uljahn: aropan: guess some finished earlier and then had additional matches with those who didn't
struct: ah games
AntiSquid: seen the totoro tags ? Graphs
Minimax
AntiSquid: ZarthaxX ?
ZarthaxX: what
AntiSquid: what did you use for totoro ?
aropan: Uljahn: ok, but why I see for reCurse 33 number of games versus Saelyos, but for Saelyos I see only 31 number of games versus reCurse?
ZarthaxX: beam
AntiSquid: smart baer
jacek: :beers:
ZarthaxX: just followed the herd :P
AntiSquid: you got higher than mbits
jacek: to get higher than dutch, oh my
AntiSquid: not any dutch
ZarthaxX: smito?
AntiSquid: yes
ZarthaxX: ah yeah, but he didnt have the time
UUolfo: last game I did I printed the anwser, and it showed in the output, but it just said "Nothing" as my anwser?
aropan: Uljahn: first and fifth games for reCurse are versus Saelyos, but they skip for Saelyos.
ZarthaxX: he would have smashed me :)
struct: all m smits had to do was to pause his yavalath meta
aropan: These games: https://www.codingame.com/replay/557356958 https://www.codingame.com/replay/557375170
ZarthaxX: lol struct :P
KelvinAndHubbles: UUolfo there are specific rules for languages, for instance c++ you have to put cout << answer << endl; as the endl is signyfying you submitting your answer
reCurse: aropan: Sorry I don't understand your question
AntiSquid: he is talking about replay history, saying 2 replays don't show up on one of the player's history
struct: he means some replays on last battle dont show on some players side
reCurse: Oh
reCurse: Because the replay history is cut off after a certain number
reCurse: And some bots had longer submits than others
AntiSquid: can playgrounds only be created on tech.io ?
reCurse: A lot more games were played after contest is over than is shown in history
MSmits: ZarthaxX i did spend quite a bit of time, you beat me fair
MSmits: i dont always do well you know :P
aropan: Hmmm, ok, I understood. Thanks.
ZarthaxX: MSmits okey haha
ZarthaxX: i take it :)
MSmits: you should
MSmits: it's a 7k contest, not bad at all
ZarthaxX: can i put this on cv?
MSmits: sure :P
ZarthaxX: yeah, it was a tough one
AntiSquid: do it lol
ZarthaxX: really fun having so much ppl
ZarthaxX: nah i should put i beated toad once
ZarthaxX: :D
reCurse: "Beat MSmits in a CG competition"?
ZarthaxX: right
reCurse: I'm sure that will turn some eyes
reCurse: Not sure in which direction though
ZarthaxX: smits and euler
MSmits: you beat euler too?
ZarthaxX: not here
struct: oh now we are talking
ZarthaxX: on wondev woman
MSmits: ohh ok
MSmits: euler is really consistent
AntiSquid: just 57/7000 is enough lol
ZarthaxX: but he hated that game :P
ZarthaxX: yeah AntiSquid :rofl: wasnt it 56 tho ah
struct: you are not wrong
MSmits: well I beat tourist at code a la mode :P
MSmits: along with like 40 people :P
UUolfo: @KelvinAndHubbles I belive it was just a gltich, for python it always reads as print(x) is the anwser. It may have been the way it was programmed, but every other thing i've done it has worked normally.
ZarthaxX: MSmits OH GOD
ZarthaxX: that name will be recognized anywhere for sure :)
MSmits: i guess he did not spend more than a few hrs
MSmits: or maybe did not like cooperative format
ZarthaxX: he spends usually a few hours yes
CamTheHelpDesk: how can I add comments with the stub generator? can't seem to find the docs
struct: https://github.com/MultiStruct/Othello/blob/master/config/stub.txt
CamTheHelpDesk: awesome thanks
LelouchVC2: antisquid
LelouchVC2: how are you always here
imrel: It's GPT-3
KiwiTae: ZarthaxX :*
ZarthaxX: HEY KIWO
ZarthaxX: :*
OBenjOne: http://chat.codingame.com/pastebin/c371bdc9-85ec-4b3d-8c1b-5246065e9100
OBenjOne: well that was weird
OBenjOne: I guess there is a character limit
OBenjOne: what I said was:
OBenjOne: Hi, I am trying to learn how to use breadth first search for games (specifically hypersonic). My code works, to an extent, but for some reason it is only reaching around 300 nodes (or about depth 3 or 4) before timing out.
OBenjOne: I expected my code to be able to do more calculations than that. Granted, I am using python because that is the language I understand best and I am new to BFS, but I thought the number of calculations possible would be closer to the thousands than the hundreds.
ZarthaxX: python is really slow OBenjOne
OBenjOne: but is it that slow?
ZarthaxX: yep
jacek: hypersonic is 100ms?
ZarthaxX: and depends also on how you code with it
ZarthaxX: maybe your code is really inefficient
ZarthaxX: like your simulator
ZarthaxX: jacek i think it is
OBenjOne: It probably is
ZarthaxX: OBenjOne are you copying the sim?
ZarthaxX: the state
ZarthaxX: every time
jacek: python could go into thousands nodes, depending on how efficient is your node traversal
jacek: or creating/reallocating nodes
OBenjOne: Is using classes a bad idea?
OBenjOne: That could be my main problem
jacek: that one is good actually
jacek: but what is in that class how it interacts with others
OBenjOne: Each node has just a few paramiters, two being another class object (one for my bot and one for the map of the game)
OBenjOne: Would condensing each node to one object help?
Dower: Talking about timeouts. I wrote some methods with js for 2021 event, which calculated best places with least shadows and it timedout. It was so dissapointing...
ZarthaxX: you have a node class?
ZarthaxX: ah
ZarthaxX: nvm
OBenjOne: yes
ZarthaxX: bfs true
OBenjOne: yes
ZarthaxX: so are you copying each map bot?
ZarthaxX: every time
ZarthaxX: i guess you are
ZarthaxX: so copying may make it slow
OBenjOne: yeah.... thats probably bad isn't it
ZarthaxX: your map representation is heavy probably
ZarthaxX: nah it's ok, bfs need that
ZarthaxX: copying is fine
ZarthaxX: but the copy might be killing you, because your states may be too big
OBenjOne: So I need to find a way to condense them?
ZarthaxX: c++ has 20x more speed than python btw
ZarthaxX: there are ways to make it smaller yes
ZarthaxX: maybe you have a matrix of ints here, right?
OBenjOne: Yeah I looked at the leaderboard and all the top players use C++
ZarthaxX: each int indetifies the type
ZarthaxX: yeah because c++ rocks with these type of things
OBenjOne: I just don't know C++ well enough yet
OBenjOne: I plan to switch to it later
ZarthaxX: try learning it
OBenjOne: thanks
ZarthaxX: will help you
ZarthaxX: in this game, represnting the board with a bitboard is nice
ZarthaxX: you can try doing the excercise with python
ZarthaxX: representing state with bits, each cell is a bit
ZarthaxX: for exampl,e each set bit means there is a box
mubi97: hey there
B-612: can anybody help me to understand node.js console app code ?
B-612: hi
LeviathanProgramming: hi
OBenjOne: Thanks @ZarthaxX I had to leave for a bit because I am at school, but I think your advice about bitboards and c++ will help a lot
ZarthaxX: sure
ZarthaxX: you can read postmortems about hypersonic for a guide too
King_Coda: Hey guys
King_Coda: I'm back from surgery
King_Coda: I'm still a littl tipsy, but not high
ZarthaxX: gud
LeviathanProgramming: surgery gone wrong
LeviathanProgramming: now king coda sicker
King_Coda: Nope
King_Coda: I'm okay
LeviathanProgramming: aw man
LeviathanProgramming: jk
King_Coda: Just lost a bunch of blood is all
King_Coda: And my mouth is still numb
LeviathanProgramming: tooth extraction?
King_Coda: Yup
LeviathanProgramming: I had five teeth pulled
King_Coda: Wisdom teeth
LeviathanProgramming: seriously
CamTheHelpDesk: uh
CamTheHelpDesk: you have 4 wisdom teeth
King_Coda: I still have the bloddy cloths in my mouth
CamTheHelpDesk: gonna be like that for a few days unfortunately
King_Coda: Yayyyyyyyyyyyy
King_Coda: Damn, mine came out early
LeviathanProgramming: I had to remove four premolars and an extra tooth that wasn't supposed to be in my mouth
CamTheHelpDesk: ngl I'm surprised you're sane enough to chat rn
King_Coda: Oh, the drugs wore off a LONG time ago
CamTheHelpDesk: I got mine out a few weeks ago, couldn't think straight for the rest of the day
CamTheHelpDesk: were you sedated?
King_Coda: Yeha, I can think perfectly now
King_Coda: I was sedated
King_Coda: UNconcious
King_Coda: It felt like I fast travelled
CamTheHelpDesk: hope your recovery is nice and speedy
King_Coda: Like in skyrim
King_Coda: Thanks bro
CamTheHelpDesk: heh I have about a 5 hour gap in my memory
Marchete: take care King
King_Coda: Mines only 2 hours
Marchete: use drugs to avoid pain
CamTheHelpDesk: are you on narcotics?
King_Coda: My mom got me prescribed some painkillers
King_Coda: I don' tknow what kind
King_Coda: I'm only 16
CamTheHelpDesk: 15 here
CamTheHelpDesk: if you had narcotics you would be pretty high
CamTheHelpDesk: so prob not
King_Coda: Nope
King_Coda: I'm gonna go now
CamTheHelpDesk: cya
King_Coda: gotta lay down for a bit
King_Coda: Cat wait to find out what happened in tht 2 hour gap
King_Coda: :vulcan:
AntiSquid: LelouchVC2 am i ?
LelouchVC2: Everytime I get on, I see you in the chat
LelouchVC2: xD
LelouchVC2: I guess to be in the top 10 you have to be pretty active ;o
DogukanSENER: can someona help me about plat-rift episode 1
LeviathanProgramming: I know who can help you
LeviathanProgramming: Yourself
LeviathanProgramming: @DogukanSENER
LelouchVC2: Damn bro, he said your mother has no testicles
TiopazHc: :nerd:
LeviathanProgramming: keep ur lang clean pls
LelouchVC2: Something dirty about what I said?
LeviathanProgramming: uhuh
LelouchVC2: what was it?
LeviathanProgramming: You know very well what you said was bad
LelouchVC2: Oh no, was I naughty?
LelouchVC2: Let me make it better, his mother does have testicles
push_back: Can someone just ban him, please?
AntiSquid: clash in D or ban LelouchVC2
LelouchVC2: That's mean @push_back
LelouchVC2: I have a lot of experience with D
LelouchVC2: lets clash 😎
AntiSquid: seriously enough with the motherly stuff .
LeviathanProgramming: Stop lelouch
AntiSquid: yes LelouchVC2 stop
LelouchVC2: I heard peer pressure was a bad thing :((
LelouchVC2: Why would you make me cry like this
AntiSquid: why not ?
LelouchVC2: I thought we had something special
King_Coda: oh god
King_Coda: what the hell is wrong with chat
LelouchVC2: I was getting bullied :((
King_Coda: contests bring out the worst in this community
King_Coda: no you weren't
King_Coda: dont even lie
LelouchVC2: 😭
King_Coda: Shut up
King_Coda: I have no room for BS rn
LelouchVC2: *gasp*
King_Coda: My face is still numb and my jaw hurts like hell, so don't give me that "oh im being bullied"
LelouchVC2: You get beat up today?
King_Coda: I got surgery
LelouchVC2: oof
LelouchVC2: What was it for?
King_Coda: My jaw
King_Coda: Had my wisdom teeth growing in sideways
LelouchVC2: Ahh yes
LelouchVC2: I have one sideways wisdom tooth
LelouchVC2: I'll be in your shoes one day
King_Coda: They knocked me out, and I dont remember a single thing from 12:30 PM to 2:30 PM
King_Coda: How old are you?
quakity: ngl im kinda shit at this im still on episode one and i've never coded
King_Coda: I'm only 16 and just got mine removed
LelouchVC2: Yea, it doesn't seem to be hurting anything though so I'm thinking maybe I could just leave it
LelouchVC2: I'm in my 20s
King_Coda: HA
King_Coda: You should be acting more mature if you're in your 20s
LelouchVC2: They've been there a while, i only need 1 removed
LelouchVC2: Says who?
King_Coda: Says literally everyone
LelouchVC2: unless im not someone, it cannot be literally everyone
LelouchVC2: big brain
King_Coda: If I'm more mature than you and I've not even fully developed yet, then thats a probkem
King_Coda: I doubt you're in your 20s, but okay
LelouchVC2: u came into a chat after surgery complaining right off the bat. I dont think being mature would be the highest priority on ur list
LelouchVC2: You should get some sleep
King_Coda: I think I have the right to complain after getting my face ripped open
King_Coda: I'm not tired.
LelouchVC2: You have every right to do it even if you're jolly and had the best day of your life
AntiSquid: LelouchVC2 ban !
LelouchVC2: :((
King_Coda: Please
AntiSquid: you ripped his face open
LelouchVC2: AntiSquid actually loves me
LelouchVC2: He's just too shy
King_Coda: Astro bytes is my dad, he just doesnt want to admit it
AntiSquid: idk i want to kick both
King_Coda: "I have never sired an american child" - Astro
LelouchVC2: I have never bit into someone's neck pretending to be a vampire
King_Coda: Antisquid, I don't really care what you do tbh. I'm just gonna go do some more puzzles
LelouchVC2: Don't talk to my mother that way
King_Coda: See you all later
LelouchVC2: Have fun, movies are your friend
AntiSquid: king coda is overly dramatic imo
AntiSquid: also you jump the shark with your jokes LelouchVC2
AntiSquid: the shark's balls to put it your way
quakity: Do ya'll have any recomendations on what i can do to actually learn how to code bc im legit barely a freshman and half to take a programming class next year lmao
AntiSquid: practice
LelouchVC2: Figure out which programming language you'll be learning in your university
casmith789: try the easy puzzles and google how to do things when you get stuck
LelouchVC2: Find a tutorial for it for beginner programmers
dreadylein: work through some basic tutorials, then pratice by doing something you think is fun
quakity: im in highschool lmao
AntiSquid: what stage are you at? what do you know about your language you use ? quakity
quakity: idk i just started today and im using Go
LelouchVC2: I think I'll bring you to the dark side instead @antisquid
CameronWatt: c# ide being weird
King_Coda: C# is superior
King_Coda: Stick with the C languages, including Java and Javascript
King_Coda: And python too
LelouchVC2: Javascript = best language every made
AntiSquid: lol
quakity: lol i honestly don't know the difference yet
LelouchVC2: python is the fastest language iv ever programmed in
King_Coda: LOL
AntiSquid: i loled at the "Stick with the C languages, including Java and Javascript"
King_Coda: (I was joking btw)
Notter: Why is the code editor not showing the usual yellow and red spots on the scroll bar?
quakity: I feel like a tard I haven't even gotten to my 2nd test case
LelouchVC2: You'll be fine, you just have to keep at it
AntiSquid: take it easy
CameronWatt: ide/editor seems to be wonky today Notter
LelouchVC2: Its slow learning at first, but it gets better over time
quakity: I mean ik that I have to write a function I just don't know how to and i don't wanna look it up
LelouchVC2: What I did at first is I kept notes in a notepad with coding examples. If I needed references I'd go ctrl+f through it
LelouchVC2: And believe me, no matter how good you get, you'll have to google examples sometimes just because you wont have a whole language memorized
quakity: # A single line providing the move to be made: N NE E SE S SW W or NW
print("E")
quakity: this is legit the only thing ive done lmao
LelouchVC2: Follow a tutorial that's meant for first time programmers. After a couple days of going through it, come back and try the puzzle
CameronWatt: step 1: open challenge. step 2: smash head on keyboard multiple times. step 3: click submit. step 4: ???. step 5: profit
LelouchVC2: Cameron, I'm proud to nominate you for vice president
scorcersucks: join clash in code baby
scorcersucks: be a chad and join
n1j4t: I have a question regarding IDE
n1j4t: I want to pass a test and codingame says I can use my preferred IDE but if I do I will be copy pasting from there, does it count as cheating?
n1j4t: When I finished the tutorial I watched the screen capture of how I did and whenever I pasted code from IDE it showed it in red that I pasted from external sources
n1j4t: I dont understand what the use of an external IDE is if copy pasting from it is considered a red flag
MuddySneakers: I use an external IDE all the time. But you shouldn't have to copy&paste. Click Settings, at the bottom, there's an option for "Use an external code editor". If you turn that on, you get a widget that allows you to pick a file on your local system. You can directly upload/download to the file. Once it's synced, edit the file in your favorite IDE. When you save, the sync updates CodinGame's copy.
New_coder_please_help: does my new username show up here?
New_coder_please_help: nice
IDKwhatmynicknameshouldbe: yes New_coder_please_help
New_coder_please_help: I love it
New_coder_please_help: I shall feint all of the peoples
n1j4t: @MuddySneakers but where is this setting, I cannot find it
MuddySneakers: When you are working on a problem, there's a settings button on the left. Click that, at the bottom of the widget is the setting. You may have to scroll.
MuddySneakers: You do have to re-set it up each time you return to a particular problem or start a new problem. It's only live for the current session.
n1j4t: do I need some kind of browser extension? Because I still cant find this setting
MuddySneakers: Not that I know of.
MuddySneakers: Do you see the panel on the left w/ Back, Forum, Results, Leaderboard, Settings?
n1j4t: ok I actually meant the test session like an interview or the one that codingame provides to advertise you for 30 min, not the problems in a puzzle or something
MuddySneakers: Note: You have to be currently working on solving a problem/writing a bot to see this.
n1j4t: ok not sure about advertisement part but something like a test session, or interview request from a company
MuddySneakers: Ah, I don't know anything about interviews, as I never use that part of codingame. Sorry.
n1j4t: I just had a look at one problem and codingame IDE looks different
n1j4t: ok, no problem, thanks anyway
King_Coda: Opiods
King_Coda: They have me taking opioids
King_Coda: Great.
King_Coda: Welp, guess I'll just figure out why my stupid nn isn't working
King_Coda: Why am I saying this in world chat?
LelouchVC2: Because at some point
LelouchVC2: You became too mature to keep it all inside
New_coder_please_help: is there a way that I can specify that I want to participate in a reverse clash?
New_coder_please_help: I can't seem to get any
LelouchVC2: no, fully random
LelouchVC2: I think there might be a way if you're doing a custom game
nacho_cheesefries: Hello!
New_coder_please_help: howdy
Smelty: how'dy
New_coder_please_help: yasss, I got my 3 reverse clashes won
New_coder_please_help: finally
New_coder_please_help: only took me about a week
JohnCM: i'm playing all my clash of code in C++ now, even shortest
JohnCM: just as a challenge
Cobra_Mayhem: does anyone know where to do basic commands or use parameters?
Smelty: ahm, what language?
Smelty: welp idk go
Cobra_Mayhem: do you know any that does
Smelty: well
Smelty: maybe you can look for profiles with go as a language
Cobra_Mayhem: no i meant do you know any languages that use bc
Smelty: um no
Smelty: also, woah euler is first one global leaderboard
BlackDereker: can I print debug info in Bot Programming?
Wontonimo: well, think of it this way Smelty, you've already surpassed over 200,000 other people on the leader board yourself, how hard could another 1418 people positions really be? you can do it!
Wontonimo: yes BlackDereker you can
Wontonimo: the default code usually has an example of how to do it
BlackDereker: I deleted the default code...
BlackDereker: oh I can restore it
BlackDereker: nvm
BlackDereker: thx
Wontonimo: no problem, you can get it back (make sure you save it first)
Wontonimo: what multi bot game are you playing?
BlackDereker: the race one
BlackDereker: Coders Strike Back I think
Wontonimo: oh cool. how are you doing with it?
BlackDereker: I'm on Silver League
Wontonimo: congrats!
BlackDereker: thx
Wontonimo: you must have all the rules now, 2 vs 2, thrusting, shields,
BlackDereker: 2vs2?
Wontonimo: do you have 2 pods and the enemy has 2?
BlackDereker: nope
Wontonimo: oh
Wontonimo: what's the url?
BlackDereker: https://www.codingame.com/ide/puzzle/coders-strike-back
Wontonimo: oh, you still just have 1 pod?
BlackDereker: yeah
Wontonimo: oh cool
BlackDereker: I just got the shield
Wontonimo: nice
Wontonimo: do you want any help?
BlackDereker: that would be cheating, no?
Wontonimo: if i send you code it is, but if I use words and just describe the problem at a high level it is totally okay
BlackDereker: hmm
BlackDereker: I'm just thinking how I'm going to use the shield
Wontonimo: i'd only be repeating what you'd be able to find in the "discussion" tab, nothing more
BlackDereker: if it's going to be for defense or attack
Wontonimo: it is about being fast
Wontonimo: oh, you are in the top 1/3 of silver! Very nice
BlackDereker: thxx
BlackDereker: but I didn't submit my shield version, I think it used my previous one
Smelty: o.O