From CG community
Jump to navigation Jump to search

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: 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

Default avatar.png NA08:

Default avatar.png NA08:

Default avatar.png Sniperboy0301: hello

Default avatar.png LightFury001: hello

Default avatar.png LightFury001: how are you

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 ....

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 ~

Default avatar.png YoungMoker1: i cant figure out what im doing wrong

Default avatar.png YoungMoker1: can someone help me ?

jacek: hmm?

jacek: how may we help you, Sir/Madam

Default avatar.png YoungMoker1: uhm do you have discord

Default avatar.png 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: :'(

Default avatar.png JamesPacileo: is this chat related to the racing game?

reCurse: Related to CG

jacek: coders strike back?

Default avatar.png JamesPacileo: oh I see the whole site

Default avatar.png JamesPacileo: oh, i see ok thanks!

Default avatar.png JamesPacileo: how many levels are there?

eulerscheZahl: user levels? no upper limit

Default avatar.png JamesPacileo: i'm working through coders strikes back, wondering how many steps there are in the excercise

eulerscheZahl: so leagues?

Default avatar.png JamesPacileo: ahhh that must be it, yes

eulerscheZahl: wood3,2,1 bronze, silver, gold, legend

Default avatar.png JamesPacileo: thanks, how many leagues are there?

struct: wood->bronze->silver->gold->legend->nn

Default avatar.png JamesPacileo: ah I see thanks!

eulerscheZahl: right, the NN league :D

Default avatar.png JamesPacileo: ok I'm at bronze now, let's see how far I get haha

struct: On gold you get 2 pods per player

Default avatar.png JamesPacileo: yikes haha sounds fun

Default avatar.png JamesPacileo: to move up a league is first place required?

struct: you need to be above the boss

eulerscheZahl: you can view the last battles of top players if you want

Default avatar.png JamesPacileo: wow thanks for the link, that looks fun

eulerscheZahl: there are also lots of other games on this platform

Default avatar.png 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

Default avatar.png JamesPacileo: ah cool! that's probably better as algos running on the platform for longer could have an unfair advantage

Default avatar.png JamesPacileo: moving into silver now wee

jacek: :tada:

cegprakash: a wild cegprakash appears

Default avatar.png JamesPacileo: *throws pokeball*

Default avatar.png 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)

Default avatar.png JamesPacileo: Promotion to Silver League in : 00H 26MN 01SC

Default avatar.png 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

Default avatar.png 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 :(

Default avatar.png 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

Default avatar.png JamesPacileo: ohhh :(

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.

Default avatar.png JamesPacileo: thank you!

Default avatar.png 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

Default avatar.png 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

Default avatar.png JamesPacileo: hahaha

Default avatar.png 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)

Default avatar.png 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

Default avatar.png 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

Default avatar.png 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:

Default avatar.png 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

Default avatar.png 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

Default avatar.png 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?

Default avatar.png 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...

Default avatar.png JBM: "alternate POV"

Default avatar.png JBM: not the same thing

Default avatar.png JBM: in this case, more like "additional" than "alternate"

Default avatar.png JBM: fwiw I'm in the "record it" camp

Default avatar.png JBM: if only as a failsafe

reCurse: 3 pawns stuck at the 7th row... oh no...

reCurse: Should have written that visualizer

reCurse: (╯°□°)╯︵ ┻━┻

Default avatar.png JamesPacileo: players in a league are all the players that can't beat the boss?

Default avatar.png JBM: in a nutshell, yes

reCurse: And/or the others near the boss

reCurse: Yep, winning is losing

Default avatar.png JamesPacileo: thanks! what does it mean if someone is rank 1, but hasn't moved up to the next league?

Default avatar.png JBM: “tough luck”

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

Default avatar.png JamesPacileo: so I can also be rank XXX, but beat the boss?

reCurse: Very unlikely but in theory yes

Default avatar.png JBM: some multis are more prone to it than others

Default avatar.png JamesPacileo: rank I assume means highest W/L ratio in the league

RoboStac: it's trueskill based rather than pure w/l ratio

Default avatar.png JBM: or overspecialized AIs

reCurse: In theory

Default avatar.png 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

Default avatar.png 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

Default avatar.png AI_says_hi: the leagues are what euler just typed :)

Default avatar.png AI_says_hi: oops

reCurse: That being said I don't think it's too viable a strategy :P

reCurse: Better to just improve y our bot

Default avatar.png AI_says_hi: scusa

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

Default avatar.png AI_says_hi: "I'm not smart" that's my problem as well :p

Default avatar.png samples32:

Default avatar.png 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

Default avatar.png 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

Default avatar.png samples32:

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?)

Default avatar.png samples32: I keep trying different than signs

Default avatar.png 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

Default avatar.png samples32: What do you mean

jacek: what error do you get

Default avatar.png 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: ^^ maybe that will work for you

Default avatar.png 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.

Default avatar.png 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.

Default avatar.png samples32: is that expose to happen. Sorry I’m new to the game

Wontonimo: is what supposed to happen?

Default avatar.png samples32: It print three directions.

jacek: one direction per turn

Default avatar.png samples32: But wontonimo’s code prints three directions per turn.

Default avatar.png samples32: Ohh sorry forget the coment above

jacek: :?

Default avatar.png samples32: I just realized that I miss interpreted what wontonime said

jacek: oh my

Wontonimo: :D

Default avatar.png samples32: Sorry

Default avatar.png samples32: Thanks for helping me understand my problem.:thumbsup:

Default avatar.png samples32: guys please come to the clash

eulerscheZahl: can't you come to the multiplayers?

Default avatar.png samples32: I’m going to do a privet clash

eulerscheZahl: :soldier:

eulerscheZahl: no emoji for that?

eulerscheZahl: 💂

Default avatar.png samples32: nope 2 more minutes

Default avatar.png samples32: join the next public clash

Default avatar.png JamesPacileo: 400 units

Default avatar.png samples32: What do you mean?

Default avatar.png 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

Default avatar.png JamesPacileo: nice, would the code get pushed the web app and played as well?

eulerscheZahl: i copy-paste. but there is this:

Default avatar.png samples32: is their a way to make a team

struct: A team?


Default avatar.png samples32: yes but in codin game

eulerscheZahl: wait a bit. CG is working on a new feature that we don't really know yet

Default avatar.png samples32: thanks

eulerscheZahl: but it looks a bit like coding in a team from the twitter post we saw

Default avatar.png 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?


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

Default avatar.png samples32: OK

Nerchio: so why is it not given anywhere for like archers or melee?

VizGhar: its hardcoded


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

Default avatar.png samples32: Is that better?

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?

Default avatar.png samples32: just want “team”

Default avatar.png samples32: maybe live coding together

Default avatar.png Edi007: Hello

jgers32: What's up

Default avatar.png Edi007: I've a question

VizGhar: that's great Edi007 :) we are happy as you are

eulerscheZahl: i cross out #3

eulerscheZahl: still 5 other remaining on my list, I had #3 before already :(

Default avatar.png 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

Default avatar.png 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

Default avatar.png 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 , 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


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

Default avatar.png JudgeAL:

Default avatar.png JudgeAL: I have changed test cases to be kinda like hints

Default avatar.png 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

Default avatar.png bobth: Is there a way to split input AND compare them in one line

Default avatar.png bobth: in python

Default avatar.png bobth: like you have n = input().split() print(["same","different"][n[1]==n[0])

Default avatar.png bobth: how can this be on one line

Westicles: put a semicolon between

Default avatar.png bobth: but what if I want to loop through multiple inputs like

Default avatar.png bobth: print([["same","different"][n[1]==n[0]for i in range(5)])

Default avatar.png bobth: but with n as input

Default avatar.png 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: ;)

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

Default avatar.png RyanGilbert: where is the ref link

struct: ref for what?

Default avatar.png RyanGilbert: found it

Default avatar.png RyanGilbert: to inv friends

Katespizer: do anyone remember puzzle from clash, named like 'neighbour of pascal' with weird pascal triangle?

struct: this one?


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

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

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

Default avatar.png carlmach: so slow wtf

Heiwu: XD

tekki: AutomatonNN are you here?

Default avatar.png emilwurstkos: hi

AutomatonNN: why not join the contest?

tekki: hi emilwurstkos

Heiwu: ok this performance sucks. cya whenever ^^

Default avatar.png carlmach: i'm gointo leetcode

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 ?

Default avatar.png RyanGilbert: is there a hotkey to test

Default avatar.png RyanGilbert: code

Westicles: Jeez, who thought Horn-SAT solver was a fun idea for a puzzle?