Chat:World/2021-01-15
Amogh.R: asdsasd please share code
Mr.Ma: hi, anyone has done the genetic algo, selection part? How to normalize the difference ??:upside_down:
Mr.Ma: resolved! thanks
VizGhar: solved? in 10 minutes? :D u da boss :D
jacek: good morning
Mr.Ma: I was stuck by an example in the playground,not a very big problem
Mr.Ma: btw, the playground is really a good place :100:
jrke: yahoo fixed my endgame solver now it needs optimization
jacek: yahoo still exists? :thinking:
Mr.Ma: Mario's favorite search engine
Mr.Ma: Yahoo!
jrke: yahoo means hurray in that sentence
Westicles: Is there a list of python libraries support on CG? Was looking for shapely but I seems not supported
Uljahn: https://www.codingame.com/faq
Uljahn: numpy, scipy, pandas
Westicles: hmm, thanks. there must be some language here that can calculate intersecting polygons without doing it from scratch...
Westicles: for Encounter Surface
mzbear: you want the easy way out? :)
Westicles: I think it would be more fun to figure out how to link to boost from bash then mucking around with boring polygons
mzbear: the polygons seem to be quite small, and the coordinates are integer only with very small values, so surely you could use some ridiculous approach to this that doesn't require generating the actual intersection geometry
mzbear: omg wtf, the polygons are also guaranteed to be convex
mzbear: this has been made unnecessarily simple
mzbear: ohhh, "The vertices of the polygons are not necessarily given in the order" ... i see, it does have a fancy side to it
mzbear: i'm so going to solve this in a wrong way ;D
Westicles: I found libboost on the file system, should be some way to link it. That would actually come in handy lots of places
mzbear: :D
Westicles: Can you use Sutherland-Hodgman?
mzbear: there's absolutely no need to since it wants rounded up integer value as a result
NA08: https://www.codingame.com/clashofcode/clash/154600835774b8796daedfc9091e94aa897fcf6
NA08: https://www.codingame.com/clashofcode/clash/1546009bfccea885df05fea5cc51b40e4510e42
jacek: good morning
Passifi: When debugging I often end up desperatly trying to fix the part of my code that isn't broke just to end up realizing the problem lay elsewhere. I wonder is that a common coder thing or is that just me ?
mzbear: how would you know the correct part of the code was truly right without debugging it first?
mzbear: i am most distressed when the code works without having to debug it. since it hasn't been debugged, i have no confidence in it ;D
Passifi: I never have confidence in it there is always a scenario I haven't thought of waiting, lurching in the darkness... ready to strike
Passifi: but I see your point :)
mzbear: Westicles, i solved the Encounter Surface without doing a single intersection calculation of any kind ;D
Westicles: Nice job. I'll give you an upvote when I get there :)
mzbear: you might not upvote it after you see it ;D
mzbear: hmmm .... https://docs.oracle.com/javase/7/docs/api/java/awt/geom/Area.html
Westicles: aha!
jacek: robo :E
RoboStac: all my testing shows 50% vs you so I just need to find the version that doesn't lose to someone else randomly :)
jacek: and rarely i get time exceed :/
RoboStac: interestingly this version appears to be almost all white wins between us, the other two were almost all black.
RoboStac: just need to find a way to fit 2 copies of my nn data in and choose based on player :o
jacek: my bot likes white too
jacek: ai is racist
jacek: phew
MSmits: yeah, breakthrough does seem like a game where p1 would have massive advantage if really good bots are playing
MSmits: with weak bots it shouldnt matter as both sides would have made so many mistakes, the advantage disappears
jacek: friday, friday ~
YoungMoker1: i cant figure out what im doing wrong
YoungMoker1: can someone help me ?
jacek: hmm?
jacek: how may we help you, Sir/Madam
YoungMoker1: uhm do you have discord
YoungMoker1: i can send a screenshot
pb4: RoboStac : how much do you compress your weights currently ?
jacek: there is join us on discord above
pb4: oh he was here a long time ago...
jacek: but still online
RoboStac: currently they're just float16's with base65536
pb4: so 16 bits per character
pb4: And you can't have two NNs in your code ???
pb4: How big are them ?!
pb4: they*
pb4: Is the full code compiled & encoded or just the weights ?
RoboStac: just weights
RoboStac: about 47k on the current bt submit
RoboStac: base65536 isn't perfect at getting 2 bytes into 1 character either, so 47k of weights ends up being around 60-70k of CG codespace
pb4: I don't get it, doens't base65536 mean that exactly one unicode character can be used to store exactly 16 bits ?
jacek: some unicode characters count as 2
RoboStac: some unicode characters are more than 2 bytes and count as 2 CG chars
jacek: i think base50000 something could do exactly 1 per 1
pb4: oh
RoboStac: yeah, but then you need multiple chars per weight
RoboStac: so you still have the same problem
jacek: you cant slightly lower your resolution?
RoboStac: probably
RoboStac: but then I'd need to handle that rather than using a type that already exists and I'm lazy
pb4: :D
jacek: enjoy your 2nd place then
RoboStac: :(
pb4: It's not *that* difficult to lower resolution
pb4: but you can't lower it that much
RoboStac: don't make me spam submits till the ranking admits we're actually equal
pb4: Which game is it ?
RoboStac: breakthrough
jacek: its snowy :3
reCurse: My training got strange, P2 has slight advantage now
jacek: and how long are games now
reCurse: Still 150 lol
MitchellHarrison: <3
reCurse: It went down briefly for an hour or two
reCurse: Then went back up
jacek: well, most games end with <80, i choose shortest wins, if i wanted to play around i could add 20 moves to them
reCurse: I need to write a CG version to examine if it's legit
jacek: you didnt check this first?
jacek: or youre doing this muzero thing :v
reCurse: Chicken and egg
reCurse: Yeah lowest it's been is 130 per game
reCurse: Then went back to 150 slowly
RoboStac: yeah, that doesn't sound right
reCurse: :'(
JamesPacileo: is this chat related to the racing game?
reCurse: Related to CG
jacek: coders strike back?
JamesPacileo: oh I see the whole site
JamesPacileo: oh, i see ok thanks!
JamesPacileo: how many levels are there?
eulerscheZahl: user levels? no upper limit
JamesPacileo: i'm working through coders strikes back, wondering how many steps there are in the excercise
eulerscheZahl: so leagues?
JamesPacileo: ahhh that must be it, yes
eulerscheZahl: wood3,2,1 bronze, silver, gold, legend
JamesPacileo: thanks, how many leagues are there?
struct: wood->bronze->silver->gold->legend->nn
JamesPacileo: ah I see thanks!
eulerscheZahl: right, the NN league :D
JamesPacileo: ok I'm at bronze now, let's see how far I get haha
struct: On gold you get 2 pods per player
JamesPacileo: yikes haha sounds fun
JamesPacileo: to move up a league is first place required?
struct: you need to be above the boss
eulerscheZahl: https://www.codingame.com/multiplayer/bot-programming/coders-strike-back/leaderboard you can view the last battles of top players if you want
JamesPacileo: wow thanks for the link, that looks fun
eulerscheZahl: https://www.codingame.com/multiplayer/bot-programming there are also lots of other games on this platform
JamesPacileo: does the NN gets trained by performing battles with other players?
eulerscheZahl: trained offline, then uploaded with fixed weights
eulerscheZahl: CG doesn't allow to take any data from one match to another
JamesPacileo: ah cool! that's probably better as algos running on the platform for longer could have an unfair advantage
JamesPacileo: moving into silver now wee
jacek: :tada:
cegprakash: a wild cegprakash appears
JamesPacileo: *throws pokeball*
JamesPacileo: can I pick a random player to play against offline instead of boss?
eulerscheZahl: yes
eulerscheZahl: delete the boss, then pick anyone
eulerscheZahl: note: only from your league and below and only the first 1000 are shown in the options
eulerscheZahl: usually not a big deal. but CSB is huge as it's the tutorial
struct: I think they should update the 1000 thing, for the 95%
eulerscheZahl: yeah, write it on #bugs
eulerscheZahl: proper filter would do wonders (search again when applied, not filtering the 1000 only)
JamesPacileo: Promotion to Silver League in : 00H 26MN 01SC
JamesPacileo: why is it not immediate? :D
eulerscheZahl: yeah, that's annoying
eulerscheZahl: we all hate it
eulerscheZahl: for legend it can take 6h if you catch a bad moment
eulerscheZahl: for contests promotion is instant
JamesPacileo: ah haha ok, was excited to work on the next part of the puzzle :)
eulerscheZahl: CG reasoning: we want to force you to take a break
eulerscheZahl: i'm not even kidding :(
JamesPacileo: I assume I could select Boss 5 while I wait?
eulerscheZahl: rules will change again
BlaiseEbuth: They take care of the 5%.
eulerscheZahl: do you have collisions yet?
RoboStac: you can't select a boss from a higher league
RoboStac: yeah - it's shield or boost in silver
eulerscheZahl: i think SHIELD is new in silver
RoboStac: (whichever he doesn't have yet)
eulerscheZahl: You may activate a pod's shields with the SHIELD command instead of accelerating. This will give the pod much more weight if it collides with another. However, the pod will not be able to accelerate for the next 3 turns.
eulerscheZahl: A shield multiplies the Pod mass by 10.
JamesPacileo: wait so the SHIELD can be used as a break?
RoboStac: no
RoboStac: well, it's the same as outputting 0 thrust
eulerscheZahl: it's meant to slam into your opponent and avoid getting pushed away
JamesPacileo: thrust in before other player then shield when near the checkpoint?
eulerscheZahl: shield when enemy gets mad
Astrobytes: try it and see
eulerscheZahl: he can't try it
eulerscheZahl: 25min till promotion
eulerscheZahl: because CSB
Astrobytes: ooh, that
JamesPacileo: what league are you guys at? NN?
eulerscheZahl: legend
darkhorse64: You have no break. But you output 0 thrust, friction will stop your pod. Every turn, your current speed is multiplied by 0.85
darkhorse64: *but if*
eulerscheZahl: but legend is huge. could be split into 3 or 4 leagues
Astrobytes: ^
RoboStac: there isn't really a NN league, legend is max (but the top 5 or so players who use NN are so far ahead of everyone else it's a joke that they have a separate league)
JamesPacileo: ohmeaning there's promotions within the legend league?
reCurse: 5? Thought there were 4
eulerscheZahl: "5 or so"
reCurse: Wondered if there was a new challenger
Astrobytes: JamesPacilio: No, but it theoretically could be divided that way
JamesPacileo: oh wow I see, does the NN need to be trained in the browser?
RoboStac: yeah, was just a rough number as I can't remember exactly
struct: no, its trained offline
eulerscheZahl: you start be reimplementing the whole game engine
JamesPacileo: as in I'll have tools to run the simulations on my pc?
MitchellHarrison: Hello felloww humans!
reCurse: You're trying to run before learning how to crawl, imo
eulerscheZahl: there is no public framework. users rebuilt a lot
BlaiseEbuth: Who are you calling human ? :rage:
JamesPacileo: woah that sounds like a lot of work :)
eulerscheZahl: months if not more
eulerscheZahl: and then you realize that one pod can turn in one direction because you have a bug *looking up*
jacek: and then site works slow because its league recalc
eulerscheZahl: i'd really like to see their internal bug tracker
eulerscheZahl: if they add stuff like that and ignore it or not even insert it there
jacek: known issue / wontfix
BlaiseEbuth: Is there an internal bug tracker ? :3
darkhorse64: technical debt with hundreds of entries
[CG]Thibaud: it's on Trello :grimacing:
eulerscheZahl: as you are here Thibaud, I have a feature request:
eulerscheZahl: the SDK has a test.html page to view the game locally
eulerscheZahl: it also has statement.html and stub.html but most users don't know them
eulerscheZahl: request: add 2 buttons for them on test.html
eulerscheZahl: just 2 links
[CG]Thibaud: :eyes:
mzbear: I also have a feature request: save button in the IDE. Currently, if I need to close the tab with unfinished code in it, i need to run a test that I know will fail, just to make the code save.
mzbear: when i was solving my first puzzles on this site, i actually ran into a situation where my browser was eating 10G RAM but I couldn't restart it because I didn't know how to save the unfinished work ;D
eulerscheZahl: 10GB :o
eulerscheZahl: which puzzle?
mzbear: i just have lots of tabs open, it wasn't CG site responsible for all of it
eulerscheZahl: i once had to hold a presentation about gametheory at university
eulerscheZahl: minimax among others
eulerscheZahl: opened Tron before
eulerscheZahl: when it was my turn, i opened the laptop. and it was completely frozen
eulerscheZahl: had to reboot while everyone was waiting :D
reCurse: This is why you record videos for presentations :p
JBM: TBF a recorded video can find its own way to fail too
[CG]Thibaud: might be quicker to do a PR on the repo eulerscheZahl
JBM: countless ways for management to discover how it's not that simple to broadcast video
reCurse: I didn't pretend it was perfect...
reCurse: But can we at least agree there are less degrees of possible failures that way?
JBM: you don't have to dig for disagreement in everything i say
reCurse: lol
reCurse: It's funny because that's what you're doing, so I don't get it
reCurse: Anyway...
JBM: in this case, more like "additional" than "alternate"
JBM: fwiw I'm in the "record it" camp
reCurse: 3 pawns stuck at the 7th row... oh no...
reCurse: Should have written that visualizer
reCurse: (╯°□°)╯︵ ┻━┻
JamesPacileo: players in a league are all the players that can't beat the boss?
reCurse: And/or the others near the boss
reCurse: Yep, winning is losing
JamesPacileo: thanks! what does it mean if someone is rank 1, but hasn't moved up to the next league?
RoboStac: the boss doesn't have a rank so you can be rank 1 but below the boss
reCurse: Didn't it use to? Or I have bad memory
RoboStac: yeah, it changed last year I think
JamesPacileo: so I can also be rank XXX, but beat the boss?
reCurse: Very unlikely but in theory yes
JBM: some multis are more prone to it than others
JamesPacileo: rank I assume means highest W/L ratio in the league
RoboStac: it's trueskill based rather than pure w/l ratio
reCurse: In theory
JamesPacileo: trueskill? as in a match outputs a performance number rather than W/L?
reCurse: No, that's what's used to calibrate the score out of W/L
reCurse: Unfortunately may I add...
reCurse: There's much better and stable ranking for bot competitions using win ratios, but unfortunately never gonna happen
reCurse: Though I guess in theory you could have a third party scan the new games and build a leaderboard that way
reCurse: Hmm...
reCurse: I have too many ideas and too little time
JBM: kind of like pb4 already does?
reCurse: Yeah
reCurse: Well there's more theory to be found behind it
reCurse: But the underlying idea is the same
reCurse: That way you don't have unstability caused by whoever submits last
reCurse: The rerun has already been sort of proven to work out
reCurse: But for multis...
reCurse: Different story
reCurse: Online algos like TrueSkill have as purpose to process millions if not billions of matches
reCurse: So processing power kept at minimum is vital
reCurse: But if you don't have nearly as much volume... there's so much better
reCurse: Turns out your training goes 3x faster when your bot tries to win
reCurse: Surprising I know
reCurse: Move fast and break your neck as the saying goes
reCurse: I killed the chat :'(
jacek: hm? so your bot didnt try to win before?
jacek: no wonder those games were that long
jacek: he was afraid to end it
reCurse: Yeah a really stupid error in backprop, for whatever reason I decided to treat the winning state differently than other games
reCurse: Average is 67 currently
reCurse: Sounds more like it
jacek: :tada:
Wontonimo: @JBM - I've found that if I code something to specifically beat the boss, but it is foiled by someone in a lower rank, my bot will never get to the boss and instead will get stuck in a rank below the player that beat me. lesson here is - don't code to beat the boss, code to be better than everyone in the league
reCurse: Words of wisdom
jacek: but also you push that player up
Wontonimo: oh! Interesting
jacek: if youre better than boss and keep pushing people up, youll be pushed eventually
k4ng0u: ^ just push that player out of your league :D
reCurse: That seems a rather contrived way to do it :P
Wontonimo: conceptually, it if is Rock Paper Scissors, then it is possible that the bot I push up will never be able to beat the boss. If the Boss is Paper, my enemy is Rock, and I am scissors, pushing them up will never get to beat boss
reCurse: But the player you're pushing never plays against the boss
reCurse: Yay rankings
reCurse: I guess that's an argument in favor of 3p and 4p games :P
Wontonimo: right ... what? so, they could be pushed pass the boss?
reCurse: Yes
Wontonimo: weird
reCurse: Matches only happen for those who submit and those they play against
reCurse: Which is exactly why rankings are so biased like I mentioned
reCurse: In practice it doesn't matter too much outside the top something in legend
reCurse: Eh... I dunno actually.
struct: I was pushed from 40th in gold to legend
struct: in 1 day
Wontonimo: without resubmit? okay then, there's the answer.
reCurse: With winratio pairings it would be probably much harder if not impossible
AI_says_hi: the leagues are what euler just typed :)
reCurse: That being said I don't think it's too viable a strategy :P
reCurse: Better to just improve y our bot
Wontonimo: @reCurse, what match are you working on where you are working on the backprop and your code wasn't trying to win?
reCurse: What game you mean? Breakthrough
Wontonimo: Cool. Thanks.
reCurse: The worst is there was a very strong suspicion something was wrong but I didn't bother checking, was busy with other stuff
reCurse: I'm not smart
reCurse: Walk time, bbl
AI_says_hi: "I'm not smart" that's my problem as well :p
samples32: http://chat.codingame.com/pastebin/16a17870-e850-4ac7-9c80-c5b5673db488
samples32: Why won’t thor go south wesst
struct: 2 mistakes
Wontonimo: Anyone have $0.02 on ways they've found to improve upon MCTS? There was a paper I read about first initializing the expanded nodes score with a heuristic value and then adding a rollout. I found that it seriously improved the cost effectiveness when the heuristic was sane (like piece count or rank of leading piece)
struct: 1 you are printing more than 1 time in that while loop
struct: and 2nd you are not updating the thor position
samples32: Thanks for the tips
jacek: you mean in games general?
Wontonimo: yeah, in general... or if you only have a specific example that would be fantastic also.
Wontonimo: (but i doubt *you* only have 1 specific example)
jacek: MCTS Solver (always), check for win/lose in every 1 ply in selection/playout (sometimes, must-have for yavalath, useless for othello), fine-tuning C constant
samples32: http://chat.codingame.com/pastebin/c2f513fd-2041-4e42-86d8-58977d8eae83
Wontonimo: it looks like you are still printing directions twice
struct: That code is the same
jacek: for game-specific if heuristic is cheap you can incorporate it into rollout i.e. taking corners move are twice as likely to be picked than any other moves
Wontonimo: (how do you do the paste bin?)
samples32: I keep trying different than signs
samples32: Just paste somthing in
jacek: and if you have more heuristic, then yeah, for selection part you can either initialize score and visits, or use progressive bias to select heuristic nodes first
jacek: samples32 you still can print twice
k4ng0u: Wontonimo just write a long message and it will be displayed as a pastebin link
jacek: what error do you get
samples32: Warning: your code did not read all available input before printing an instruction, your outputs will not be synchronized with the game's turns and unexpected behaviour may occur.
Wontonimo: there was a paper I read about mixing MCTS with minimax, whereby 90% (or some other configurable amount) of the time a rollout is a random play as usual. 10% of the time the rollout is replaced with minimax (limited depth). The results in the paper showed that it was superior to MCTS for technical games like chess. I haven't tried that.
Wontonimo: "A Rollout-Based Search Algorithm Unifying MCTS and Alpha-Beta" by Hendrik Baier
jacek: samples32 add else before every if except first
Wontonimo: http://chat.codingame.com/pastebin/cbccef0a-8984-4709-8629-099cfd101adb
Wontonimo: ^^ maybe that will work for you
samples32: He was going in the right direction
Wontonimo: if you look at the changes, you'll notice that there were three if blocks in your code that have been replaced with just 1 if block.
samples32: Oh so thats how it’s diffrent
Wontonimo: each of your 3 if blocks will print to console.
Wontonimo: so every turn you were printing 3 directions.
samples32: is that expose to happen. Sorry I’m new to the game
Wontonimo: is what supposed to happen?
samples32: It print three directions.
jacek: one direction per turn
samples32: But wontonimo’s code prints three directions per turn.
samples32: Ohh sorry forget the coment above
jacek: :?
samples32: I just realized that I miss interpreted what wontonime said
jacek: oh my
Wontonimo: :D
samples32: Thanks for helping me understand my problem.:thumbsup:
samples32: guys please come to the clash
eulerscheZahl: can't you come to the multiplayers?
samples32: I’m going to do a privet clash
eulerscheZahl: :soldier:
eulerscheZahl: no emoji for that?
eulerscheZahl: 💂
samples32: nope 2 more minutes
samples32: join the next public clash
JamesPacileo: wish i could write the code in an ide in multiple files :)
eulerscheZahl: you can. offline. and with a script to bundle them
eulerscheZahl: that's what most of the more involved players do
JamesPacileo: nice, would the code get pushed the web app and played as well?
eulerscheZahl: i copy-paste. but there is this: https://www.codingame.com/forum/t/cg-local/10359/20
samples32: is their a way to make a team
struct: A team?
eulerscheZahl: https://en.wikipedia.org/wiki/The_A-Team
samples32: yes but in codin game
eulerscheZahl: wait a bit. CG is working on a new feature that we don't really know yet
eulerscheZahl: but it looks a bit like coding in a team from the twitter post we saw
samples32: That’s candof what i mean(sorry for the misspelling i’m not good at it)
Nerchio: hey might be a stupid question but do normal units have a radius in Code Royale?
eulerscheZahl: https://www.codingame.com/forum/t/will-cg-come-out-with-teams/188780
that's way to short for anyone to understand what you mean
Nerchio: can't really find it in the instruction
eulerscheZahl: everything has a radius
Nerchio: so why is it not given anywhere for like archers or melee?
VizGhar: its hardcoded
eulerscheZahl: https://prnt.sc/wq9a24
eulerscheZahl: case closed
Nerchio: i am in wood3 maybe thats why i am not seeing it
Nerchio: but thanks :D
eulerscheZahl: possible. short statement in low leagues not to scare off the 95%
Nerchio: yeah for people who know what they want its limiting :D
reCurse: We've been complaining about that for ages :P
eulerscheZahl: not better samples32. how should that collaborative coding that you suggest look like?
eulerscheZahl: do you just want "team" or do you have a more concrete idea in mind?
samples32: maybe live coding together
jgers32: What's up
VizGhar: that's great Edi007 :) we are happy as you are
eulerscheZahl: http://how-to-properly-ask-a-question.surge.sh/ i cross out #3
eulerscheZahl: still 5 other remaining on my list, I had #3 before already :(
Edi007: Does anyone know when you do the challenges
reCurse: Is that a bingo
eulerscheZahl: yes reCurse
jgers32: LMAO reCurse
Wontonimo: drinking game
VizGhar: :D
Edi007: Should I write a code for each case, or should I write a code that should pass all test cases?
jacek: where is "don't ask a question. provide wrong answer"?
jacek: Edi007 all cases
Wontonimo: @Edi007 - you can do the practice challenges any time you like
jacek: validators are different than test cases
VizGhar: Edi007 programming is mostly about finding universal solution.
Astrobytes: jacek: it's in the How To Answer A Question guide.
eulerscheZahl: i've read about a study: ask a question and measure the time it takes to get a helpful answer. then do the same again but quickly reply (with other account) and give wrong answer
eulerscheZahl: turned out users like to correct others. so in the latter case it was faster
Edi007: So basically I should write the code that tests the first case and then the second case...
reCurse: That's as old as the internet
reCurse: It's called the art of trolling
jacek: godwin's law
Astrobytes: Hence jacek's presence
Wontonimo: i feel like a noob cuz i never heard that trick before
eulerscheZahl: Edi007 you should write code that works for all possible inputs
jacek: even halting problem?
Astrobytes: You always say Godwin's Law jacek just to see if it actually happens
eulerscheZahl: don't if (input == 1) print 2 if (input == 2) print 4
eulerscheZahl: do print(2*input)
reCurse: But what if 3 prints 8
reCurse: Checkmate
VizGhar: (carefully there eulerscheZahl he will copy-paste)
Wontonimo: Edi007 - what eulerscheZahl said, but i'll add my pragmatic approach. If i'm in a rush (like clash of code) I'll first write code that solves most of the test cases without over thinking it.
eulerscheZahl: then we have to reconsider the hypothesis
Wontonimo: but indeed I'm still targeting the general case
reCurse: Looks like P2 has a massive advantage in bt
eulerscheZahl: i didn't expect that
reCurse: Disclaimer: I have a prior of making stupid bugs
jacek: huh
eulerscheZahl: I know. the attempt to win the game
eulerscheZahl: or lack of
reCurse: BT is solved as p2 wins for smaller sizes
reCurse: So it wouldn't be out of the blue
jacek: my bot gets like 70% wins as p1 against itself
reCurse: Uh oh
eulerscheZahl: then your bot is buggy?
reCurse: Groundhog day?
eulerscheZahl: broken as p2 or cheating as p1
Astrobytes: sounds like another backprop issue
jacek: dont take my word for it
jacek: maybe i shall stand corrected
reCurse: By the way the bug was funnier than that
Wontonimo: according to https://en.wikipedia.org/wiki/Breakthrough_(board_game) , in smaller games of 6x5, 5x5, 3x5, the second player has been proven to be able to always win.
reCurse: It was wrong when searching but not when learning
reCurse: So it would play really good moves but refuse to finish
Astrobytes: heh heh, awesome
jacek: maybe he didnt want to prematurely finish
reCurse: Make the pleasure last
Astrobytes: lol, AlphaHero
Wontonimo: maybe unlock a badge for that TNG-Data badge
Wontonimo: https://www.youtube.com/watch?v=yIRT6xRQkf8
Astrobytes: nice Wontonimo
eulerscheZahl: so your bot was like that soccer player who stops the ball on the goal line and then uses the head to score?
reCurse: Only scores when there's no other option
reCurse: So lots of pawns waiting on 7th row
eulerscheZahl: :D
Astrobytes: Winsafe failing?
reCurse: At least the stories are funnier than uttt
reCurse: There's nothing funny about uttt, only sadness
Astrobytes: Ultimately Miserable Endeavour. We should petition for the name change.
Nerchio: i didn't advance from wood3 in code royale :joy:
VizGhar: I believe AutomatonNN found it funny
AutomatonNN: eulerscheZahl is there a way to see the code in the chat or a big array in java on this site
VizGhar: hmm not very wise bot I must say
Nerchio: well he sure knows who to ask though
Nerchio: eulerscheZahl knows the answer to everything
jacek: but does he know about big array in java?
cbg: Hey, I'm a beginner programmer with python, should I prioritize readability or lines of code when doing a practice exercise??
reCurse: Prioritize solving the problem correctly
Voltag3z: Hi people
Voltag3z: Cofee?
reCurse: Sure
cbg: yeah, I know, the thing is I sometimes check the most popular solution in an exercise and is just a massive print
Voltag3z: :coffee:
reCurse: Thanks!
Voltag3z: have a nice day men
Uljahn: cbg: it's easier to impress people with a short solution than with a readable one
smokeweederryday: code should never be readable, otherwise you wil get fired
Uljahn: you could fail a code review and get fired as well i guess
smokeweederryday: when the codebase is big enough and impossible to decypher your employers need you
Uljahn: just learn cobol ezpz
BeastMan: Hello
jake1: never write compact unless for competitions
jake1: or assembly
jake1: or having a team of geniuses
Astrobytes: If you're only doing puzzles/practising then do whatever you want.
Astrobytes: Otherwise, be prepared to find another job.
Astrobytes: Or become a professional golfer...
Uljahn: "import this" in python says readability matters, so many popular solutions are against the Zen of python, just downvote and move along :smiley:
cbg: thanks for the responses :smile:
Astrobytes: Seriously though, like re Curse said - focus on solving the problem first, keep it as readable as you need it. You can make it fancy after that if you feel the need.
struct: Was reading my java code from when I joined CG
struct: cant understand anything I wrote
Astrobytes: That's generally the case with old CG code ;)
dbf: I stop to understand it sometimes even during the contest
JudgeAL: https://www.codingame.com/contribute/view/61029c19e127354559b93908d1dcfedac3ff
JudgeAL: I have changed test cases to be kinda like hints
JudgeAL: since last time i posted people were confused
Astrobytes: dbf: it happened for me during RAIC - next time I will write better code :D
VizGhar: Or (more probably) same sh*t but a little bit faster :P
Astrobytes: No, a bit slower!
Nerchio: i got to bronze in code royale pogchamp
VizGhar: Some clojure dev here? I have (def p hash-map) and calling `(def p (assoc p (keyword @actual) i))` doesn't seem to update it. Anybody know why?
BananaInSpace: :p
Westicles: I would go to #fr for clojure questions, a couple experts hang out there
VizGhar: now I see my key is always nil :| so I found my answer just by asking question
VizGhar: standard procedure
bobth: Is there a way to split input AND compare them in one line
bobth: like you have n = input().split() print(["same","different"][n[1]==n[0])
bobth: how can this be on one line
Westicles: put a semicolon between
bobth: but what if I want to loop through multiple inputs like
bobth: print([["same","different"][n[1]==n[0]for i in range(5)])
bobth: like using list comprehension or whatever that is
BananaInSpace: eeaeaea
BananaInSpace: eaeaeaeea
Astrobytes: BananaInSpace: have you taken leave of yer senses laddie?
BananaInSpace: wuh
Westicles: Another articulate youngster
Westicles: Let's talk about Wittgenstein, shall we?
BananaInSpace: what?
BananaInSpace: ea sports
Astrobytes: lol Westicles
VizGhar: Idk what that is but I'm inerested
VizGhar: googled him... I'm a little bit less interested
BananaInSpace: WittgensteinWittgensteinWittgensteinWittgensteinWittgenstein
BananaInSpace: r.i.p
BananaInSpace: he died
VizGhar: Nope... he just give up. You make people brain dead. Stop spamming
Astrobytes: He's gone for the moment
LegendaryStone: FranckR34 do you mind sharing your code im curious what you did
VizGhar: maybe message him directly :) Are you referring to some CoC?
LegendaryStone: yes how do i direct message
LegendaryStone: not really sure how
Westicles: DM me for details
FranckR34: i do
Wontonimo: Question: I'm using a Mac for development and haven't done C++ for 20 years. I've gotten C++17 to compile via command line and in a VSCode IDE. Is there something else that you've (anyone here) used that is more enjoyable / is more helpful than VS code on Mac ?
Wontonimo: (totally forgot about xcode. anyone here use xcode as their IDE?)
APJames: i have a question about Coders Strike Back if anyone has played that game
therealbeef: I'm doing it atm
Astrobytes: http://how-to-properly-ask-a-question.surge.sh/
Astrobytes: ;)
Wontonimo: the real beer - why did you choose xcode? (serious question)
therealbeef: xcode?
therealbeef: oh, i was answering James :)
APJames: I'll private message you Kosher Beef
APJames: :P
APJames: messaged you beef
therealbeef: Actually, Wontonimo, I also use MacOS. For codingame I use the webpage IDE because its assistant is better than xcode's for C++. I like xcode for Swift but for C++ its meh. Just havent gotten around to installing vscode yet
RyanGilbert: where is the ref link
struct: ref for what?
Katespizer: do anyone remember puzzle from clash, named like 'neighbour of pascal' with weird pascal triangle?
struct: this one?
struct: https://www.codingame.com/training/hard/pascal-trapezoid
Katespizer: no :(
Katespizer: on input it had n integers like n=3 2,5,6
Heiwu: hi!
Katespizer: and it was supposed to go like 2 5 6
7 11 18
Katespizer: and 18 was the answer
Heiwu: is it always around this time of day when this site is getting really slow?
Katespizer: seems like it
ian173: bro this site is chuggin so slowly jesus
Heiwu: would really appreciate if they'd scale up higher at this time.
struct: Katespizer https://www.codingame.com/contribute/view/5554a580ae6c2836627a202bb5817654bb4f
struct: oh maybe its not this one
struct: but name is similar
Heiwu: did any1 get 100% at Rectangle Partition (python)? I get timeouts in case 7 and 8...
Katespizer: yea this is the one
Katespizer: thanks
DesmondW: is this site really slow for anyone else
Heiwu: jup.
struct: yes
smokeweederryday: F
Heiwu: XD
tekki: AutomatonNN are you here?
AutomatonNN: why not join the contest?
tekki: hi emilwurstkos
Heiwu: ok this performance sucks. cya whenever ^^
tekki: any news about trump AutomatonNN?
AutomatonNN: what are you talking about?
tekki: how the world today AUtomatonNN?
AutomatonNN: does brutaltester has a solid arena by spamming the perfect company ?
RyanGilbert: is there a hotkey to test
Westicles: Jeez, who thought Horn-SAT solver was a fun idea for a puzzle?