Chat:World/2020-07-11
eulerscheZahl: Happy Caturday
Edwing123: Caturday ?
Edwing123: What is that ?
JohnCM: lol Saturday with cats?
Edwing123: My cat has fleas
Edwing123: Well it's not my cayt
Edwing123: cat*
eulerscheZahl: Caturday is an invention of jacek
Edwing123: It's my grandmother's cat
jacek: happy Caturday
Haiit99: hello everyone
jrke: jacek happy caturday
Edwing123: Hello
Edwing123: Who made the Power Of Thor ep 1 ?
Edwing123: I'm stuck lol
Edwing123: In the last two tests
jrke: im just making my shorter in power of thor ep 1:smiley:
jrke: my *code* shorter
Edwing123: How many ifs did you use ?
Edwing123: I'm doing it with Lua
Edwing123: The Straight up and Up are working fine
jrke: im python code size 135
jrke: ok
Edwing123: my is 66
Edwing123: wait
Edwing123: size what ? file or lines ?
jrke: 135 code size
Edwing123: where do you see that ?
jrke: means?
Edwing123: Yeah
jrke: so you have 66 code size?
Edwing123: I mean, are you talking about the lines of code ? or the file size ?
Edwing123: I have 66 lines of code
jrke: oh
jrke: im talking about code size
Edwing123: where do you see that ?
Edwing123: In this platform
jrke: you can see your code size at bottom right of ide
ManeatingBreakfastOfWisdom_e692: hay can some body help me
Edwing123: Why ?
ManeatingBreakfastOfWisdom_e692: Horse-racing Duals i can not understand what should i solve in it
WINWINWIN: Sure, we can help
WINWINWIN: ManeatingBreakfastOfWisdom_e692, what they want you to do is find the smallest difference in the array and print it.
ManeatingBreakfastOfWisdom_e692: i thing i have to create an array
Edwing123: smallest different or element ?
WINWINWIN: Smallest difference
WINWINWIN: You want to find the closest strengths
ManeatingBreakfastOfWisdom_e692: strengths defined as Pi right
ManeatingBreakfastOfWisdom_e692: i got it it;s working well
Edwing123: Can't we saved changes ?
Edwing123: :)
Edwing123: Three hours trying this one lol
Edwing123: Well maybe tomorrow I'll have a fresh mind
Edwing123: don't know :'(
MSmits: you save whenever you click play my code
Marchete: how's going MSmits? othello now?
MSmits: hey Marchete yeah
MSmits: finished 1st version yesterday
eulerscheZahl: Marchete, the lost son is back
MSmits: :hugging:
eulerscheZahl: :ruler:
Marchete: I'm usually stalking
Marchete: :eyes:
MSmits: creepy
eulerscheZahl: i saw you played GitC recently
Marchete: me? nope
Marchete: last submit was may
eulerscheZahl: in May, somewhat recent
Marchete: ah
Marchete: well, and some other C# bots I resubmitted
eulerscheZahl: and PED uncrashed his bot
Marchete: last I did was some othello, not a lot more
Marchete: he was crashed?
Marchete: was he*
eulerscheZahl: no more Python2 support
Marchete: well, I'm not into these peasant languages
Marchete: you know
Marchete: but the C# broke some of my bots
eulerscheZahl: i like python for smaller stuff
eulerscheZahl: the language updated killed some of mine too
eulerscheZahl: those were I use System.Drawing.Bitmap for visual debugging
eulerscheZahl: Bandas where I allocate a lot of nodes, out of memory now
eulerscheZahl: Mean Max where I did you runtime optim trick
eulerscheZahl: but I resubmitted all of them
Marchete: I only resubmit when I see a sudden drop in rankings
Marchete: yes, I'm that lazy
MSmits: ohhh so thats why you did c++ on Bandas. You were forced to :grin:
eulerscheZahl: took be a while to notice my broken Bandas too
eulerscheZahl: I still use C# on Bandas :D
MSmits: really
MSmits: mmh ok
eulerscheZahl: C++ only for UTTT, STC, Bulls&Cows
eulerscheZahl: STC because I wanted it, the other two because I needed that extra performance
MSmits: oh right, you just did a bit board on bandas
MSmits: i thought it was c++ too
eulerscheZahl: C# has bit operations too
MSmits: i know my first uttt bot was C# and had a bitboard
eulerscheZahl: took me way too long to realize. Bought a C# book back in 2011. Didn't even mention bit operations
Marchete: is the new C# faster?
eulerscheZahl: yes
MSmits: i think it has access to some intrinsics and such as well?
eulerscheZahl: and i'm like dbdr now: crashing in IDE
MSmits: oh noes
eulerscheZahl: i got some hate during the pacman contest
eulerscheZahl: too bad they fixed the
- if DEBUG
- rofl:
MSmits: ahh yes
Marchete: what's that #if DEBUG?
eulerscheZahl: i use it offline to only play 1 turn
eulerscheZahl: CG compiled with DEBUG flag in the IDE
eulerscheZahl: so i crashed every IDE match
Marchete: ahh
Pambao: :smiley:
Astrobytes: Oh welcome to Othello MSmits
MSmits: thanks Astrobytes
WINWINWIN: Wow, dbdr has a decisive lead.
WINWINWIN: Neural Network?
Astrobytes: It's alphabeta, but uses Multi ProbCut, which uses stats obtained through multiple linear regression to obtain optimal alpha and beta values, causing optimal pruning and whatnot, hence the name
Astrobytes: (that's maybe a little simplistic but you get the idea)
WINWINWIN: So he gets a very high depth?
Astrobytes: WINWINWIN: https://www.chessprogramming.org/ProbCut
Astrobytes: You use shallow searches to obtain the stats, and use the probabilities to affect the search window size at deeper depths
MSmits: "Furthermore with ProbCut match results become more unpredictable and inconsistent: Apparently there are types of opponents against which ProbCut works very well and results in significantly improved results, but there are also other opponents (the tactically stronger ones?) where ProbCut has exactly the opposite effect. "
MSmits: that's going to be interesting.
Astrobytes: Yeah, that's chess
Astrobytes: It's more effective in Othello
MSmits: right, but it might still cause some Rock paper scissors
MSmits: pruning is usually hit and miss
Astrobytes: Oh yeah absolutely, I mean 'probability' implies some inconsistency
MSmits: right
Astrobytes: It's been pretty solid so far though, will be interesting when robo and you improve more, and jacek too
MSmits: this basically turns ab pruning into something more akin to mcts
MSmits: stop searching bad branches because of earlier results
Astrobytes: Yeah, in a different way, but essentially yeah
MSmits: I'm gonna go with my UCTS
MSmits: I'm more interested in seeing what n-tuples can do
Astrobytes: i am keen to see the results
MSmits: yeah, going on vacation soon though, dont expect quick results
Astrobytes: I'm here all year ;)
MSmits: do you have tree reuse Astrobytes?
Astrobytes: I have alphabeta
MSmits: ohh ok
Astrobytes: with ID and whatnot
MSmits: I was going to write a tree reuse version, but i just figured out it will hit the end of my node pool halfway through the game
MSmits: which is ok I guess
Astrobytes: Just watch out for the pass moves
MSmits: I use 6.5 million nodes on turn 1 :P
Astrobytes: But you probably saw that
Astrobytes: lol, nice
MSmits: yeah thats the only tricky part
MSmits: my pool is 20 million
Astrobytes: Same as my Oware pool
MSmits: makes sense
MSmits: i think i could go up to 23-24 million but why bother
MSmits: it will reset once and thats that
Astrobytes: Yeah I don't think it'll be an issue
MSmits: I could also do the uttt gamble
MSmits: which is, just reuse the early nodes hoping you dont overwrite anything thats in use :P
Astrobytes: lol, I'd be careful with that
MSmits: well it's easy to see when it fails
Astrobytes: That is very true
MSmits: you get nodes pointing to themselves with infinite selection
MSmits: node loops
Astrobytes: Yes I had something similar going on in my early Oware days
Astrobytes: brb, coffee
MSmits: if you know it can happen its easy to fix. If it starts happening 2 months later because you increased performance, you're in for some trouble
dbdr: MSmits, isn't the self loop just a possibility?
dbdr: you could have invalid links without that, no?
MSmits: you can, but you will still occasionally get some very long loops and time out
MSmits: with enough games and enough turns per game you start seeing more timeouts in your submits and tests
dbdr: probalistic debugging :)
MSmits: hmm also, you get invalid moves
MSmits: because i keep the board on the node, it iwll just assume the board is different
MSmits: that's assuming one of those bad nodes is the one selected to do a move with
MSmits: but it will happen occasionally
MSmits: and the mcts solver will start acting up saying you've won when you havent
MSmits: so yeah, a huge mess :P
MSmits: dbdr do you use TT ?
dbdr: sure
MSmits: I am wondering how to use them effectively
MSmits: you dont store every boardstate do you?
MSmits: just up do depth x ?
MSmits: the number of transpositions stored increases exponentially with depth, but the effectiveness of a deep transposition is worse than one at low depth
MSmits: is this just a parameter you fit?
dbdr: no, I store everything
dbdr: a board state is just 128 bits
MSmits: sure
dbdr: also, the TT also helps later turns
MSmits: but that still means you probably xor two 64 bit ints and put them in some kind of map
dbdr: similar to tree reuse
MSmits: maps get pretty slow and you have rehashes
dbdr: yeah. that's not expensive is it? :)
MSmits: i am more worried about the map when it gets big
dbdr: I never rehash
MSmits: hmm ok
MSmits: do you keep seperate maps for each turn
MSmits: i mean
MSmits: turn-depth
MSmits: that would keep the maps small
MSmits: you'd have 64 maps total
dbdr: why would you want small maps?
MSmits: doesnt it affect insertions and looking up?
MSmits: the speed?
dbdr: no, hashtable is constant time by principle
jacek: dbd has rather ab not mcts?
dbdr: ok, it does if you count memory caching
MSmits: we're talking abou t TT
jacek: TT size isnt issue here
MSmits: small maps wont solve memory caching i think
MSmits: because you're accessing all of them
Astrobytes: my TT is fast, it just doesn't work properly right now (to put it lightly) :P
dbdr: fast, correct, simple, pick any 2 ;)
jacek: your TT works, it just doesnt have anything sensible to store
Astrobytes: :D
Astrobytes: alpha beta values screwing me up a bit, I'll get it working soon
MSmits: I have tried transpositions in mcts, for example checkers
MSmits: but when i implement it, I halve my rollout count =/
MSmits: in yavalath it works better because you get so many moves
dbdr: probably speed is more important in MCTS because you rely on statistics over randomness
dbdr: minimax is deterministic
MSmits: right
MSmits: but that doesnt explain why the speed is halved
dbdr: time spent hashing?
MSmits: maybe so
MSmits: I should dive more into this
MSmits: to prevent rehashing
MSmits: do you set a capacity at the start so it hashes efficiently?
MSmits: I thought the rehashing happens because the map structure assumes you're doing a small map and it gets too big
dbdr: yes, it is fixed
MSmits: and you just guesstimate it right?
dbdr: at startup
dbdr: yeah
MSmits: ok
MSmits: well that helps, thanks, I should do that too
dbdr: I should tune it :)
MSmits: I always use unordered map/set but I let it do it's thing
MSmits: probably bad
Astrobytes: I just use arrays
MSmits: for a transposition?
Astrobytes: yeah
MSmits: how does that work?
jacek: badly
Astrobytes: ^
MSmits: dont you need unordered access?
MSmits: the boardstates are all over the place
jacek: my TT is simple unordered_map, i clear it at the beginning of each turn. my hash is simple, i dont do zobrist and whatnot and i dont care about capacity
Astrobytes: i do Zobrist, set my array size at the start, haven't run into issues with it. My problems lie elsewhere
MSmits: http://chat.codingame.com/pastebin/267bd499-d333-469a-84eb-2db217882d20
MSmits: isnt that how you make a good hash key?
jacek: i also but currentPlayer
jacek: put
Astrobytes: ^
jacek: though i wonder if the same board can happen with different player
MSmits: hmm yes, but thats because it is Othello
MSmits: pass turns
MSmits: in yavalath, every board state can have only 1 player
jacek: ah well, then its not needed
MSmits: oware is different also
jacek: but yeah, my hash is simple as that
MSmits: thats why i hash "turns left" with the board state in oware
MSmits: xorshift scrambles up one of the boards, really should be enough
MSmits: if you just use p1 ^ p2 it's really bad
jacek: mine is more like A * p1 ^ B * p2 ^ C * currentPlayer
MSmits: hmm ok
MSmits: dunno what that does
jacek: just to prevent collisions. A B C are some random prime numbers
MSmits: ahh ok
dbdr: p1 ^ p2 is the same as p1 | p2, hopefully :D
MSmits: yeah, thats why it's bad :)
MSmits: states.reserve(1000000); states.max_load_factor(10);
MSmits: hope that helps
MSmits: wont rehash unless it goes over 10 million, that cant happen anyway
Washier: MSmits, see you're on the Othello board and very strong from the start. DIdn't expect anything less of course :)
MSmits: thanks :)
MSmits: I just made tree reuse work a minute ago
MSmits: not sure if it will help much
eulerscheZahl: actually i'm disappointed by your current performance :P
MSmits: lol
Washier: kinldy share your methods?
Washier: short description for noobs like me
MSmits: sure I did that yesterday, it's the same kind of bot I do for most board games these days
eulerscheZahl: MCTS then
MSmits: is mostly like mcts, but instead of random rollout, i eval each child and backpropagate the result
Washier: mcts\minimax
Washier: ?
MSmits: neither I guess
MSmits: it has traits of both
eulerscheZahl: MCTS with limited depth
Astrobytes: UCB guided tree search
struct: ept but eval all nodes on expand
MSmits: yeah what Astrobytes said
Washier: UCB?(sorry)
MSmits: its the function you use in mcts
MSmits: to determine what node to select
Astrobytes: Upper confidence bound (applied to trees = UCT)
MSmits: so instead of doing it bfs style like in minimax, you go deeper on better nodes
Washier: ty
MSmits: or at least nodes your bot thinks are better
MSmits: based on statistics
Washier: so move ordering in minimax setting?
MSmits: mmh not exactly, with move ordering you still have 1 depth setting
Washier: ok.
MSmits: in my tree, some nodes may be 20 deep and some only 5
MSmits: leafs i mean
Washier: ok. jeepers.
MSmits: its similar to how you cut off with ab pruning i suppose, but ab pruning never goes this deep and does a better job of reliably cutting bad branches
MSmits: if the eval is working correctly, you can also solve quite well with mcts
MSmits: mine goes 15 plies deep sometimes, sometimes a little less
Washier: think i understand. learning more, so good
MSmits: it's better to start with vanilla mcts i think if you want to learn it, even though my method is probably less code
Astrobytes: :+1:
Astrobytes: To get to know and understand how it works
MSmits: but do it for a game where it works well, like uttt
MSmits: gives you some sense of accomplishment
MSmits: btw Astrobytes, on a fast cpu I have to reset tree ones
MSmits: once
struct: uttt might be a bit hard to get legend though with C#
MSmits: on slow cpu i dont
Astrobytes: Yeah?
struct: just make your eval heavier :)
Washier: hell, most things are hard with my skills and C#.
MSmits: C# works very well in most Arena's
MSmits: the nr on this site does almost everything with C#
MSmits: rn 1
MSmits: i cant type for :poop: today
Astrobytes: Didn't you get legend in UTTT with C# MSmits?
MSmits: yes, back when it had 37 people in legend i got to 20 something rank with it
MSmits: probably translates to 50 or so now
MSmits: maybe worse
struct: but was it vanilla mcts?
MSmits: but i was pretty obsessively optimizing it
MSmits: yes it was, totally vanilla
Astrobytes: I remember :)
Washier: I've been given some some awesome advise last few days. skills to implement it still lacking tho. one idea has stuck - go back to C. i miss pointers
MSmits: C++
MSmits: you want to classes
MSmits: those
Astrobytes: C++ is handy, you can write C and use any handy C++ features when you feel like it
Washier: ok cool.
MSmits: when I use C++ I think its almost like coding C
eulerscheZahl: C# got faster on CodinGame thanks to release mode and .net Core
MSmits: I have probably just 1 class, sometimes 2 in my bot
MSmits: eulerscheZahl but also, most of the time, performance is not the biggest bottleneck
MSmits: except on these boardgames I guess
eulerscheZahl: agreed
Washier: is it worth it for 2 classes? i'm comfortable with C
eulerscheZahl: that might be why i'm not doing well in these board games
struct: you can use structs
struct: same thing
MSmits: if you've been using C#, you want to keep some of the features of it dont you?
Washier: doubt it
MSmits: eulerscheZahl I am pretty sure you would get some ranks in every one of these boardgames if you converted
Washier: not really. my C# uses List<int> max
eulerscheZahl: i'm always sad when i strip LINQ from my bots for performance
Washier: exactly
Astrobytes: I usually just put everything in structs, don't really need the access modifiers
MSmits: in C# a struct is a completely different thing
Washier: its not the same yes
MSmits: so i tend not to use structs in C++
Astrobytes: (was talking about C++)
eulerscheZahl: let's do an experiment MSmits. Bandas or Langton. choose a game and I will convert
MSmits: i know
MSmits: but this is why i dont use struct in c++
MSmits: because i get confused moving between C++ and C#
Astrobytes: the only difference is structs are public by default and classes are private by default
MSmits: eulerscheZahl definitely bandas
Washier: i meant C# has structs and unsafe and all that but its not C.
eulerscheZahl: reasonable, more spots to climb over there
MSmits: i mean mostly because its a much cleaner experiment, many players using the same kind of bots. Langtons is a mystery. Pretty sure performance is not a bottleneck there
eulerscheZahl: my bot has almost 300 lines :scream:
MSmits: the top guy isnt even C++ in langtons is he?
eulerscheZahl: Java
MSmits: right, so that would be a bad test
eulerscheZahl: MonoDevelop doesn't support C++ anymore, what IDE should I use :thinking:
MSmits: I have a :poop: ton of rollouts in langtons ant and i get nowhere near him
MSmits: no idea I am on windows
Astrobytes: VS code?
eulerscheZahl: i have that installed at least
Hjax: i really dont understand why just mobility is my strongest heuristic
Hjax: its what i have uploaded right now, and its roughly the same rating as smits mobility + frontiers + corners
Washier: it rules my eval Hjax, for what its worth
Washier: hey, you improved a lot Hjax. wd
Astrobytes: MSmits 'a9' is not a valid Othello action
Hjax: i havent changed anything for like a week
Hjax: i submitted a few weaker versions with more complex evals
Hjax: but then reverted back to this one
MSmits: a9 ??
MSmits: lol
MSmits: I rank above you with a9 ??
Astrobytes: I lost the replay, but if it's any help you passed a bunch of times first and it was near the end
MSmits: ohh
struct: you made multiple a9
MSmits: weird
Hjax: https://www.codingame.com/replay/476671464
Hjax: heres an a9 replay
Washier: ok. yes, its really close around 10. i had the same experience, best bot resubmit raking very diffrent
MSmits: how many times are you guys gonna say a9
Astrobytes: a9 times
Hjax: at least once more, a9
MSmits: :P
MSmits: thanks for noticing. Probably the expert rule thing
Washier: Robo should join kaggle once have more langs. He rocks with NN's
MSmits: not sure if he's good at them in general, but he sure has the alpha zero kind down
MSmits: mmh I think I know why it does a9
MSmits: it somehow thinks there are no legal moves and then the bitIndex = 64. that leads to a9
Washier: he understands the convolutional bits, and how to train. good chance he builds the best eval functions
MSmits: Agade and re curse are also quite good
MSmits: check out Oware, all 3 of them are at the top with different kinds of NNs
MSmits: re curse has a nr 1 NN at CSB
MSmits: and in BR2k
MSmits: he also made his own framework for training and such
Washier: jeepers. yes, tackling oware as soos as othello obsession wears off :)
MSmits: it's a fun little multi, sim is a little weird
Washier: if i can shift bits i would be happy
MSmits: much shifting
MSmits: but it depends on how you do your sim, i also use a lot of lookups
MSmits: like "if you choose pit 5 and have 10 seeds, these are the pits that receive seeds"
MSmits: cheaper than looping around with a lot of conditions
Washier: i'm sold
Washier: is it just me or are 2 player board games created by members a new thing. when i started there weren't any. love it to bits
MSmits: its not super new, but maybe a year or so
MSmits: and it's not necessarily board games
MSmits: you can make anything
MSmits: but board games have little art and are still very interesting
MSmits: for a board game with good art check out Onitama, which is also very interesting
Washier: yes i see. just a big fan of the 2 player perfect info kind i suppose. Onitama after otera, so many hours of fun ahead.
MSmits: yeah
Washier: suppose, most of the bot games are 2p perfect info.
MSmits: not exactly, our last few contests weren't
MSmits: and they turned into arena games
eulerscheZahl: contests are rarely board-game like
Washier: yes, oceans was super interesting
eulerscheZahl: and if they are (wondev woman), they add fog of war
eulerscheZahl: but thanks to the community there's a wide range of games to choose from
Washier: enjoyed wondev woman. made gold in C# with <300 lines.
MSmits: euler and struct being the biggest contributors I think
eulerscheZahl: i really struggled with legend there
Washier: is chess fitting?
Astrobytes: struct might do chess
Washier: said it before. awesome commnity.
eulerscheZahl: i borrowed struct from my own project atm, he's busy
eulerscheZahl: for, not from
MSmits: ohh
Astrobytes: And after that he still has to do Amazons, Lines of Action
MSmits: you confiscated struct?
eulerscheZahl: for now, yes
MSmits: mmh ok
Washier: saw that yesterdasy. struct is, like we would say here "'n yster"
MSmits: dunno what that is
Washier: (an iron)
Washier: solid
MSmits: oh right, he's solid allright
MSmits: not sure what he does for a living, but whatever he does, they're not paying him enough
Washier: agreed
Astrobytes: Still studying iirc?
Astrobytes: He is awesome whatever he does
Washier: iirc? if i may ask
Hjax: if i remember correctly
eulerscheZahl: if i remember ...
eulerscheZahl: (╯°□°)╯︵ ┻━┻
Astrobytes: dammit
Washier: ty
Astrobytes: He got us both euler
Washier: getting old
Astrobytes: :older_man:
Washier: hehe
Hjax: im apparently a youngun around here
Astrobytes: Meh. Old enough :P
Hjax: :P
Washier: not sure how people are. im 41
Hjax: im 23
Astrobytes: 37 here
Washier: impressive
MSmits: I dont know my age, only my birthdate
MSmits: let me get a calculator
eulerscheZahl: i'm between Hjax and Astrobytes
PatrickMcGinnisII: the darn function suggestion box keeps getting in my way in the new IDE, suggestions?
MSmits: 39 it seems
eulerscheZahl: :D
Hjax: copy and paste from a proper ide @PatrickMcGinnisII
Washier: well who knows. when i started studying, java 1.1 was the sheet. world is uspposed to go forward. good to see
Astrobytes: that's so you MSmits, not knowing your age :D
Hjax: @MSmits i cant picture you as not an old man because of your profile picture
MSmits: well my age is not a constant, but my birthdate is
Astrobytes: Can't argue with that!
Washier: haha he must be absent minded prof.
MSmits: thats fine Hjax
MSmits: mostly yeah Washier
Washier: absent minded is a compliment
PatrickMcGinnisII: yall young, I'm 49 ... my internet was FIDOnet
Washier: noice
MSmits: Fido ? thats like a dogs name?
MSmits: did dogs rule the internet before cats?
Washier: haha
PatrickMcGinnisII: You will never know the struggle of 300baud ... count your blessings
Astrobytes: Old-ass BBS veteran
Washier: yes BBS
Astrobytes: I still remember BBS's
MSmits: it's BS with an extra B
Washier: ah
Washier: when i was 18, browsing the internet was an occasion
PatrickMcGinnisII: We shared 8-bite games illegally and war-dialed everyone...the real anon
MSmits: my first experience with internet at home was everquest addiction
Astrobytes: That's how I remember it, my friend's big bro was into all that
Washier: haha
Astrobytes: He even installed an electronic keypad lock on his door
Washier: and now we have twitter.
MSmits: was it a steel door?
Astrobytes: Always pranking people and messing with the phonelines
Washier: not sure all of it is progress :)
Astrobytes: Absolutely Washier
Hjax: its funny how profile pictures bias my opinion of people, i was expecting smits to say he was in his 50s
PatrickMcGinnisII: OG advice, take care of your teeth, stay away from Mountain Dew
Washier: haha
Washier: teeth yes, very true.
Washier: listen to him
PatrickMcGinnisII: i had dental surgery yesterday, can a dude get a painkiller? no.
Astrobytes: Poitín is great, what ya on about
Astrobytes: The real mountain dew
Astrobytes: Rots ya liver not yer teeth :P
PatrickMcGinnisII: What is todays version of Silk Road?
Washier: well that escellated quickly
Astrobytes: There are quite a few, mostly quite specialised and invite only
PatrickMcGinnisII: hangovers vary Astrobytes ..poitin
Astrobytes: Not that I use those services, but I'm aware
Washier: of course
Washier: same here
Astrobytes: PatrickMcGinnisII True
PatrickMcGinnisII: i can't stare at a screen with a buzz
Washier: hehe
Washier: i grow my own, lets call it salad. legal here. find it's all you really need if you're into that. growing things also a very relaxing hobby.
Astrobytes: Nice. Did that many years ago, got into growing...fungus, and extracting from bark after that. Growing the fungus was very enjoyable.
Astrobytes: Did some straight up cooking ones too, wanted to do shiitakes and stuff but stopped
Astrobytes: Fun times!
PatrickMcGinnisII: Just finished Fun With Set Theory during all the bullshitting, don't fall behind...;)
Washier: yes, mushroom growing is interesting. very different, almost no light. think the enjoyment of seeing something growing out of nothing is universal.
Astrobytes: Totally agree. Anything mycology-related I dig. Sadly can't grow any veg or whatever where I am currently, used to grow a ton.
Washier: also find it a great stress reliever because its so different form software job
Washier: to cold?
Washier: *too
Astrobytes: Nah, chemical factories nearby
Astrobytes: I don't trust the soil nor the air.
Astrobytes: Fine for growing plants though.
MSmits: thankfully you can still type while holding your breath
Astrobytes: lol, I never thought I'd ever have to move back to this place
Washier: haha
LovelyGhostVanDerSwag_9711: where to introduce standard input?
PatrickMcGinnisII: CS people need low maintenance housework and access to Wingsuits
Astrobytes: Speaking of "too cold", I discovered today that bok/pak choi grows very well here in Scotland
Hjax: i just looked up your climate, cold and went
Hjax: wet*
Astrobytes: Yes, it's pretty crap in that respect. You get used to it though.
PatrickMcGinnisII: :bacon:
Astrobytes: I prefer hot, but hey, can't have it all.
Hjax: i live in New England, which has very nice weather
PatrickMcGinnisII: Astrobytes I'll trade houses for a few months
Astrobytes: lol, you'd regret that Patrick
Hjax: i dont think he would
Hjax: looks like he lives in Florida?
PatrickMcGinnisII: gotta feed my cats and my dog
Hjax: basically the apocalypse there right now
Astrobytes: pmsl, perhaps not :D
Astrobytes: Quite.
PatrickMcGinnisII: nah, its calm here...i'm near legoland
Hjax: i just mean with the coronavirus
Hjax: being pretty out of control in FL
Astrobytes: I was gonna say, does LegoLand have antiviral properties :P
PatrickMcGinnisII: My gf and I have roots in the UK.
Astrobytes: Whereabouts?
PatrickMcGinnisII: covid... oh it's a pain
Hjax: ive never been to europe, i hope to go visit someday
Hjax: when the world is less of a mess
Hjax: no one wants americans to visit right now :D
PatrickMcGinnisII: She's more scot and I'm more Irish...so its a mashup
MSmits: i didn't want them to visit before that :P
Astrobytes: Yeah, there's so many great countries to visit. I hope you get the chance Hjax
Astrobytes: lol MSmits
MSmits: unless they were you of course Hjax
PatrickMcGinnisII: i've been there b4
Hjax: aww thanks :P
Astrobytes: Good combo PatrickMcGinnisII
Washier: where i live you cant complain. its minimum 3C this winter, 18C afternoon. summer its 20-34
MSmits: almost the same here
Astrobytes: Nice comfortable climate
Astrobytes: I liked the climate in London, summers were nice and hot
Washier: most people here have never seen snow
MSmits: it's a little bit colder here sometimes in the winter
MSmits: sometimes snowy
MSmits: but rarely
Hjax: ah it snows a lot here
Astrobytes: Snow would interfere with your tulip-powered windmills
Washier: played in snow once - was dissapointed
PatrickMcGinnisII: Imma tell u something wierd.... if your ancestors are from a colder climate and you move to tropics...its more likely that you will develop mitochondrial issues, like diabetes and stuff. It's a theory of mine, since I'm falling apart living in FL
Washier: haha
MSmits: think I fixed my a9, what a pain. I was converting chars to int wrong with - 1 instead of - "1" and I was also assuming I would receive my own pass turns as well
Hjax: most winters we get about 40 inches total
PatrickMcGinnisII: I felt great in UK
Washier: Patrick, interesting
Hjax: my ancestors are german and italian
Astrobytes: Since I've moved back to Scotland from a warmer climate I'm falling apart so...
MSmits: people in the western world just eat crap and half of them get diabetes
Astrobytes: Mostly true
MSmits: my father and mother both have it
PatrickMcGinnisII: I'll take ketchup over that damn brown sauce
Washier: agreed. and not enough excercise
Astrobytes: Not being able to exercise is killing me right now, putting on weight and everything
MSmits: I'm hoping to dodge the diabetes by eating like a true coder
Washier: less manual work to do though, so partly our fault
MSmits: sucks Astrobytes :(
Washier: what does a true coder eat? fish?
PatrickMcGinnisII: who is nameless?
MSmits: powder shakes
Astrobytes: Oh I forgot about your liquid food MSmits
Hjax: i think a true coder eats nothing
MSmits: yeah
Washier: haha
MSmits: i drink only :P
MSmits: well almost
Hjax: because they are too engrossed in their code and then they forget to eat
Washier: haha
Hjax: at least i do that
MSmits: sometimes that happens yeah
Astrobytes: Yep.
Washier: true. my wife is constantly annoyed with me for not being hungry,
PatrickMcGinnisII: I lived on MountaIn Dew for 10 years, don't do it
MSmits: i think thats called having a good marriage
Washier: actually i am at that point, but sheet
Astrobytes: Same with coffee for me, with added guarana often
Washier: so hungry, but must read this..
MSmits: guana?
Washier: be careful with the guarana
Washier: ca hike bloodpressure. my ail
MSmits: isnt that like bat poop?
MSmits: whats guarana?
Astrobytes: I gave it up years ago
Washier: haha
PatrickMcGinnisII: coffee is different, that keeps me from going postal
Washier: and supposedly not that bad if not abused
PatrickMcGinnisII: damn stitches in my mouth, I'm so hungry...damn jello
Astrobytes: I still drink coffee, vastly reduced intake though
MSmits: going postal is when you decide to stop replying to e-mails and instead post letters to reply to them
Washier: i mean, apparently. new study shows haha :)
Astrobytes: lol MSmits
Astrobytes: Everything in moderation I say. Apart from chillies. Can't have too many of those.
Washier: MSmits submitting
MSmits: i just fixed my a9
MSmits: wont be any miracle submit
PatrickMcGinnisII: Picante is a natural pain killer, helps to releaase natural endorphines
PatrickMcGinnisII: same with chillies
Washier: chillies are good. also believe in curry, lots of spices
MSmits: this is like religion to you guys
Washier: we eat lots of curry
Astrobytes: I live almost exclusively on curry or other hot and spicy foods
Astrobytes: My spice cupboard is enormous
Washier: haha same here.
Washier: we have mace ffs
MSmits: isnt that what you use to chase away rapists?
Astrobytes: It's the outer part of a nutmeg
Astrobytes: (not the shell)
MSmits: mmh ok
Astrobytes: Epic flavour and aroma
Washier: yes. not sure about the rapists stuff? haha.
MSmits: https://en.wikipedia.org/wiki/Mace_(spray)
Astrobytes: Mace spray is just 'pepper spray' right? Capsaicin aerosolised?
MSmits: https://en.wikipedia.org/wiki/Mace_(bludgeon)
MSmits: also works on rapists
Washier: oic
PatrickMcGinnisII: see mace on NBC news every night
PatrickMcGinnisII: ;)
MSmits: yeah, all those people running around with foodplates hoping to catch free spices
Astrobytes: hahaha
Washier: wow
MSmits: NBC news != msnbc right?
MSmits: I mostly see msnbc when I see the protest stuff
Washier: not offensive because i'll admit im very privileged here in SA. i have battery backup :)
PatrickMcGinnisII: FB paying a $5 B fine? holy shit
MSmits: for what Washier?
MSmits: the backup?
Washier: regular power cuts
MSmits: ohh
MSmits: wow
Washier: substations blowing up, cable theft
MSmits: I dont even have candles I think
PatrickMcGinnisII: true msnbc is more sensationalist
MSmits: I'm one foot into the dark ages
Astrobytes: No candles? That's just asking for it. I have candles and no lighter since I stopped smoking.
MSmits: oh but i am moving to a new house, it has solar panels, so thats good
Washier: noice.
MSmits: you can make a fire if you run 4 concurrent meta mcts and hold the candle at the back of your PC
PatrickMcGinnisII: I'm expecting at least 1 bad hurricane
MSmits: ah, we mostly have good hurricanes here
Astrobytes: :smirk:
MSmits: thats when they dont throw down the tree onto your house
PatrickMcGinnisII: were yall talking about oware abapa b4 i chimed in?
MSmits: 2 years ago there was a hurricane so bad half the trees where broken in the street next to ours
MSmits: Othello I think PatrickMcGinnisII, but maybe oware as well
Washier: best of luck. also privileged in Africa to have no earthquakes, tornadoes etc. nothing like that. maybe drought.
MSmits: there's a lot of crime though
MSmits: afaik
MSmits: in SE
Washier: yes
MSmits: SA
MSmits: I mean
PatrickMcGinnisII: I've been thru every bad storm, i stood in the eye of Hurricane Andrew surrounded by devestation in S. Fla at 3am, never seen anything like it since.
Washier: a LOT of poor people unfortunately
Washier: that sounds intense Patrick
MSmits: not just that, I also heard one time it has the city with the most rape victims in the world
MSmits: not sure which city in SA this was
Astrobytes: Yeah, SA, and Africa in general has it's own particular set of problems :/
PatrickMcGinnisII: Can i go to SA and build a nuclear reactor in my backyard tho?
Astrobytes: You can do that in US Patrick
MSmits: it's not illegal
MSmits: just the refined uranium and plutonium is
MSmits: but if you have a fusion reactor it's all fine
Astrobytes: beat me to it lol
Washier: yes. news is news but i would guess its Johannesburg(where i Live), 25% of population in the size of luxemburg
Astrobytes: Yeah, fusion ftw
MSmits: Washier yeah i think so, its pretty old news though, might be better now
PatrickMcGinnisII: Thorium
Washier: whe have a lot of shit in the ground here. including uranium
MSmits: :radioactive: :poop:
PatrickMcGinnisII: No, they won't let me have a Hydrogen tank muchless a reactor
Astrobytes: Is it still mined there Washier?
Astrobytes: Uranium, I mean
MSmits: we knew you didn't mean :poop:
Astrobytes: ffs :D
PatrickMcGinnisII: MSmits a physics dude hating nuclear?
MSmits: I don't hate it
Washier: uranium, not sure. if there is any left, some British co would be mining it yes. But gold and platinum and some other stuff, we have lots.
Astrobytes: Yeah, quite a history of plundering the continent for precious commmodities
MSmits: mine out the stuff, then fill the holes with CPU and mine crypto
PatrickMcGinnisII: We have piles and piles of heavy metals in the waste from Phosphate mining
Washier: Chinese trying to convince our gov to build nuclear - meanwhile, like i said, grid falling apart already.
Astrobytes: Could totally see that going really well.
MSmits: why are the Chinese interested in building nuclear in SA?
Astrobytes: They're interested building nuclear everywhere.
MSmits: it's a fetish?
Astrobytes: You're on form today MSmits
PatrickMcGinnisII: India is leading the way in energy reform because the US is over-regulated
Washier: money MSmits. gov is corrupt, they even admit it. but i'll stop there
MSmits: I'm a bit tired I guess, my mind works differently :P
Astrobytes: 99% of Africa's problems are due to corruption. Hell, make that the world.
Washier: very true
MSmits: there's different degrees of corruption though
PatrickMcGinnisII: Die Antwoord is from SA, yes? Can't be that bad
MSmits: when they find corruption in my government it's usually very tame
Washier: here, they dismiss it as 'not being western'. stealing is stealing
MSmits: well the voters become desensitized to it and accept it
Astrobytes: Voting eh
MSmits: we have a multi-party system. If two parties both have corruption, there's a bunch of other ones
PatrickMcGinnisII: US is corrupt AF... choose between the orange faced man or an old fart.
Washier: not necessarily. if you control the voters, you stay in power
Astrobytes: ^
MSmits: the voters choose to be controlled
Astrobytes: Not everywhere.
MSmits: true
Washier: not if they are uneducated
Washier: then they dont know
MSmits: yeah lack of education is problematic
terminator_t800: Hi
Astrobytes: Not for them. For them it's got everyone right where they need them.
MSmits: if only the well-educated could vote, Trump would have no base
Astrobytes: Why do you think people are kept uneducated and in poverty?
PatrickMcGinnisII: I may say some wierd stuff, but there are some dumb MFs here
Washier: yup Astro.
Astrobytes: Anyway, I can feel a rant coming on lol, I'll stop ;)
Washier: to cotrol them
PatrickMcGinnisII: the DOE is pushing privatization of schooling... its all about $, not people
Washier: yes. its not conspiracy. just politics. which is not logical or helpful i feel
MSmits: in the US the problem is mostly that the right is using cultural differences to get votes while screwing their voters out of everything else
MSmits: many people are blinded by these differences
PatrickMcGinnisII: teachers teach kids how to learn, if somone has the time and energy to self-study they usually will, but society is setup to keep people busy in a system of modern slavery
Astrobytes: +1 Patrick.
Acerbic: Power of Thor is too hard for me :( can't get below 70 Q_Q am I missing some super-hack?
Schwase: as a second year physics major im glad to know what i have to look forward to
MSmits: you mean you'll be like me?
Washier: yes, +1 Patrick. what we need is more good teachers. tough job
MSmits: yeah, who would want to do that though
MSmits: seems crazy
Schwase: idk i havent really been paying much attention to global
Schwase: just passed donut case validator in plague but still failed the submission validator. niceeeeee.
MSmits: dont remember the donut puzzl
PatrickMcGinnisII: My gf is an English teacher, they are pushing her back into a classroom soon...so she risks her life or she loses her retirement $
Schwase: its the plague, jr puzzle
Washier: best of luck Patrick
MSmits: the US is nuts with how your closely survival is tied to your job
Astrobytes: Yep, it's a terrible way to treat people
PatrickMcGinnisII: i really slacked on Oware
Astrobytes: :D
MSmits: lol
Astrobytes: How's things JBM?
JBM: took a few days of vacation
Washier: nice to meet you JBM
Astrobytes: oh, fun times then
JBM: they do provide us in rum
JBM: i suppose i can tolerate them
Washier: haha
Astrobytes: Aha. That's the ticket.
PatrickMcGinnisII: jbm, when u make a puzzle can u see the submitted code in all languages?
Washier: rum is life, haha, i like pirate metal
Schwase: patrick do you mean like a code translator?
PatrickMcGinnisII: i already did Plague, i gave it 5 ::stars::
PatrickMcGinnisII: Schwase, no..when u finish a puzzle u can see the solutions of your peers
PatrickMcGinnisII: i thought maybe if you made one, you could see all the submits...i guess not
Schwase: oh so you mean does he still have to solve it first?
JBM: in all languages you want to see the solutions for, yes
Schwase: so puzzles dont need to have a solution to be approved?
Astrobytes: They most certainly do
Astrobytes: Or, should, indeed.
Schwase: yeah so you can just submit your own solution code to see others' solutions
Schwase: i only code in java so i never checked
Astrobytes: Shame on you :P
Schwase: and i havent really felt a need to since im just grinding the easy puzzles rn
Schwase: i need to learn c+ for a datastructures course this fall though
JBM: yeah that feature is a bit unbalanced
Schwase: and i do know SOME python
PatrickMcGinnisII: I translated a few solutions into other languages, but its not fun for me
JBM: it's usually not too useful to see a solution to a puzzle you already solved
JBM: it could be useful/interesting to see how other languages do it
JBM: and was actually how it was at first
JBM: but CG has language badges
Astrobytes: Unless it's a tricky problem that you did a hacky solution for and want to see a better way
Schwase: idk, a puzzle that you dont have a really elegant solution for would be worth checking
JBM: so people used the feature so get them
PatrickMcGinnisII: cg encourages you to expand your knowledge
JBM: and CG restricted to languages you already solved
JBM: it was suggested long ago to open solutions' visibility to languages you already have the badge for
JBM: but they don't seem to care
Astrobytes: That would be a better way I think, yes
Washier: ten foot pole. not touching
MostComplicatedUsername: no one has a cotr bot
Astrobytes: I swear you said that the other day MCU
MostComplicatedUsername: 9 people
PatrickMcGinnisII: There are alot of different styles even amongst same lang, but it would help to see a kotlin solution to an easy puzzle that you have already solved in C++
MostComplicatedUsername: Did I?
Astrobytes: Pretty sure of it.
MostComplicatedUsername: Well that doesn't make it any less true :D
Astrobytes: :P
Astrobytes: I think I submitted something there, but not a real bot
PatrickMcGinnisII: MCU, want me to submit so you won't be last?
EEEEEEEEEEEEE: lol sure :D
EEEEEEEEEEEEE: I don't have a bot for it either, I just submitted to add another multi to my list
Astrobytes: It's a (very) Rainy Day Multi for me
ZadeTheExplorer: i am wonder that people prefer js and python more than java or other oop in ClashCode
PatrickMcGinnisII: oh crap, 4 players
MSmits: dunno about js, but in python you can write a solution with very little code
MSmits: less than java
EEEEEEEEEEEEE: Well yeah no {}
struct: I cant understand the formula that CG uses to make the number of battles for Community multies
Washier: when its golf, langs like java\C# suck
Washier: Console.Write... and yuo lose
PatrickMcGinnisII: sorry MCU, I'm not last
struct: checkers 90 games 161 player othello wood 2 83 games 35 players othello wood 1 81 games 15 players
struct: per submit
Washier: othello woooo
Washier: <cheerleader outfit>
Astrobytes: Scary, scary image :P
Astrobytes: Yeah it's a bit annoying struct
Washier: hairy legs
MSmits: struct could be a function of calculation time?
dbdr: this 83 and 81 is actually 80
dbdr: plus matches scheduled by others
struct: yavalath also 90
dbdr: I guess there are the addtiional 10 ranking matches
dbdr: when league is above a certain size
struct: I guess
struct: well if othello wood 1 ever hits a certain number Ill open a new league
struct: if the number is too big
dbdr: the 10 ranking matches don't count in the %, they are special
dbdr: wood 0? ;)
struct: One day we might have bronze
PatrickMcGinnisII: struct that would entail me getting out of wood2
dbdr: would make sense for large commus
Astrobytes: Proper leagues would be great. I think it might encourage more people. Perceived sense of achievement and all that
Schwase: pretty proud of it too
Astrobytes: gj
PatrickMcGinnisII: gj Schwase
Schwase: except that i reinitialized the network everytime i tried a new starting node
PatrickMcGinnisII: i gtg, mouth hurts. "be good, or be good at it!"
Schwase: that was pretty scuffed
Astrobytes: Later Patrick, take it easy
Schwase: welp i submitted the same code again and got 80 so i barely even fit into the donut case LOL
EEEEEEEEEEEEE: E
Astrobytes: I
Washier: k
BorisZ: test
Astrobytes: TEST FAILED
Aravindhsiva: Hola amigos
eulerscheZahl: compilation failed :(
eulerscheZahl: /usr/bin/ld: /tmp/ccvj6ZLV.o: in function `main': bot.cpp:(.text.startup+0x784): undefined reference to `Board::childFrom'
Astrobytes: multiple files?
JBM: or simply an unimplemented method
Astrobytes: Or static member
Astrobytes: I would dearly love to rephrase that, but I cannot.
eulerscheZahl: static member
Astrobytes: Too much C#'ing has made you weak :P
eulerscheZahl: screw it, i'll move it out of the class
eulerscheZahl: hm, something is wrong with my bot :(
jacek: degrade from class to struct
eulerscheZahl: https://www.codingame.com/share-replay/476690716 i see a 20% win chance while applying my last move
eulerscheZahl: and my sim count in C++ vs C# arena is pretty similar
eulerscheZahl: i'm using the pragmas
Astrobytes: Fix it.
eulerscheZahl: i'll outsource it
Astrobytes: TeamViewer! :P
eulerscheZahl: great idea MK
Astrobytes: :grin:
eulerscheZahl: once a fellow codingamer even wanted me to connect to his PC - and I did
eulerscheZahl: tbh i wouldn't trust myself enough to do it
Astrobytes: Indeed
eulerscheZahl: some C# console game, i found the bug
Astrobytes: You could have 'found' many other things too most likely
eulerscheZahl: syskey
Astrobytes: :smiling_imp:
Astrobytes: aw ffs, brb, cat vomit
eulerscheZahl: oh, i know that
jacek: too much Caturday
eulerscheZahl: you have about 10s when the noise starts
eulerscheZahl: at least to save your carpet
MSmits: :nauseated_face:
Astrobytes: Yeah, it's like the cat's 'beatboxing'
Astrobytes: Wasn't too bad this time, she was chewing plastic again.
MSmits: oww, you have one of them intelligent cats
MSmits: i grew up in a house with 4 cats
MSmits: all indoor cats
Astrobytes: Yeah my two are mostly indoor cats
eulerscheZahl: mine can go outside any time
eulerscheZahl: but decides to stay inside a lot. maybe because of the neighbor cat?
Astrobytes: So can mine, they're too scared though without me
eulerscheZahl: mine likes to go outside with me too :D
eulerscheZahl: and then marks the neighbors frontyards as her territory while i stand next to it
Astrobytes: They tend to prefer your company over most things, funny little creatures
dbdr: "my" cat is outside 99% of the time :)
Astrobytes: lol, yeah
Astrobytes: Ah you have a wanderer :)
dbdr: well, she has me, rather
Astrobytes: Bet she shows up at other people's doors/windows pretending she's hungry
Astrobytes: Just to see what she can get :)
eulerscheZahl: that's what the neighbor's can does too
eulerscheZahl: 5am and he finds a way into my room, cat fight starting
Schwase: pro tip: before you spend 30 minutes investigating your code, dont forget (a+bi)^2 = a^2 + abi + b^2 isnt actually math
Astrobytes: lol, now I know why you sleep earlier and get up earlier euler :)
jacek: eyup
Astrobytes: wwops
Astrobytes: Or woops
Astrobytes: Wrong button
Astrobytes: ffs
MSmits: hey jacek
MSmits: i was thinking about what you said about TT and the player being part of the hash
MSmits: I don't think it's necessary
MSmits: because even if there happen to be two states with the same board configuration but different players, you will at most have 1 hash colllision there. 2 items in the same buckets
MSmits: thats what the comparer is for
MSmits: just make the comparison check. it's rare so it wont cost you
MSmits: http://chat.codingame.com/pastebin/ee3f777a-cc2b-4c45-aa26-b21268e80f64
Astrobytes: Please, my eyes. Just: return (s1.p1 == s2.p1 && s1.p2 == s2.p2 && s1.player == s2.player)
- P
MSmits: hmm yeah thats better
Astrobytes: No shit :P
Astrobytes: I'll leave it at that.
MSmits: fixed
MSmits: :)
MSmits: I am trying to make TT work
MSmits: but a little worried about something
Astrobytes: I am in no position to criticise. I accidentally submitted.
MSmits: on the one hand i dont want it to slow my bot down too much
MSmits: but if does have to slow me down a bit, because I cant reset my tree
MSmits: i need those nodes alive
Astrobytes: I just need to fix my mouse aiming
why_not_me: hey guys is there somewhere the code for an Starter Kit for cpp?
MSmits: use a USB scope
Astrobytes: lol
Astrobytes: #include <iostream>
Astrobytes: +$5
JBM: don't you push the budget like that
why_not_me: in wood1 league you can chose here from some starters: https://github.com/csj/code-a-la-mode/tree/master/src/test/starterkit
MSmits: ahhh yes, some ex-contests have this
why_not_me: unfortunately there isn't one for cpp
MSmits: are you good with cpp why_not_me?
MSmits: or completely new to it?
why_not_me: I'm completely new to bots and coding challenges
MSmits: Ok definitely dont do cpp then
why_not_me: So it would help me big time
MSmits: it's not beginner-friendly at all
MSmits: do python or C# or something
why_not_me: I have to... It's part of my university course
why_not_me: It's amazing how much time you guys invest in mocking me instead of helping
MSmits: do you have to do bots specifically?
JBM: is a starter really the way to go then?
MSmits: or can it be puzzles
Astrobytes: I would suggest waiting until you know the language a little bit
JBM: we're not specifically mocking you
why_not_me: I have to do the code-a-la-mode
MSmits: it's just JBM, he's annoyed cuz he got fired from the suicide hotline
JBM: more like the absurdity of the situation
Astrobytes: Really? In C++?
JBM: you have to do calm, but you can't code yet?
why_not_me: who said i can't code?
MSmits: what can you code why_not_me?
Astrobytes: You do know some C++ at least right?
MSmits: what are your skills/
MSmits: ;
why_not_me: Okay, guys... thanks for nothing. bye
Astrobytes: emmm
MSmits: :snowflake:
JBM: maybe we'll regret this for the rest of our lives without knowing who to blame (but me)
JBM: all we have to od now is wait for him to write the facebook-displacer
MSmits: people should have thicker skin than this when asking for help
Astrobytes: I blame myself really, and I'm slightly proud of that
Schwase: i have a single easy puzzle left
MSmits: awesomeness!
Schwase: unfortunately its pathfinder
JBM: "is there a c++ starter?"
Schwase: and i havent done pathfinding in like 3 years
MSmits: those are the best ones Schwase, great to learn from
JBM: "yeah but i'm new to ai and need one"
Astrobytes: :grin:
MSmits: he could have just coded a bot in whatever language he is familiar with and then convert it to c++
JBM: [things kind of go wrong then]
MSmits: it's partly the teachers fault though
Astrobytes: I'm just having trouble with the 'fact' that he is supposed to create a C++ bot for CalM
MSmits: who does this to students
JBM: i suppose our wrong is to have assumed he was a beginner coder, when he was only new to AI/bots
MSmits: maybe it was acat :P
Astrobytes: That's why I asked him whether he knew C++
JBM: he merely asked for availability
MSmits: c++ is horrible for calm
JBM: c++ is horrible for a lot more than calm MSmits
MSmits: true, but calm is mostly a heuristic multi, its even worse to use c++ for that
MSmits: because there isnt even a plus-side to it
Astrobytes: The way you do it yeah MSmits :P
MSmits: no i actually did a search
MSmits: beamsearch
Astrobytes: I know!
MSmits: ah ok, you and your memory bah
MSmits: how can I tell the same story over and over if you wont let me
MSmits: :cry:
Astrobytes: Alright alright
Astrobytes: One a week
MSmits: so story short: Accept the damn plate when it's offered!!!!
MSmits: this has to come out whenever calm is mentioned, sorry
Astrobytes: where is that tumbleweed emoji
MSmits: we need one of those
MSmits: with animation
MSmits: it's rolling over the screen
MSmits: maybe a little windy sound
Astrobytes: I agree. Despite my aversion to emojis I find I use them frequently on here.
Astrobytes: Whshhhhhhh
Astrobytes: I would leave CG if that became a thing
MSmits: windy slunds?
MSmits: sounds?
Astrobytes: Any chat-based sounds
Astrobytes: Imagine a giggling sound everyone posted the (in)appropriate emoji
MSmits: spammers would have a field day
Astrobytes: it would be very 1990s
Astrobytes: As long as they don't introduce 1990s ICQ sounds
MSmits: i dont remember those
MSmits: i do remember they made sounds
MSmits: msn too
Astrobytes: I don't remember them either, but they were annoying. Hated msn, ICQ was bad enough, only used it for SC players and a few other people
MSmits: Star craft?
Astrobytes: Yeah
Astrobytes: Original and Brood War
MSmits: ah ok cool
Astrobytes: GBR-1 crew
Astrobytes: Fun times
Astrobytes: We all met up at a theme park once, was a good laugh
MSmits: sounds cool
MSmits: my TT for Othello sucks :(
Astrobytes: Mine too man, mine too
MSmits: i think it just sucks cuz it's supposed to
MSmits: since I use UCT
MSmits: and such
MSmits: with yavalath you have 40-60 children per node
MSmits: and you do one check and store one TT per expansion
Astrobytes: Mine is just not working, it's working better than it was but I'm gonna come back to it tomorrow, since I've had some beer now
MSmits: Othello has far fewer children so I think I just have to check too often
MSmits: I get about 20% less rollouts
Astrobytes: I've never used a TT with any UCT-guided search
Schwase: how many lines would it take you to make a pathfinder? just trying to ballpark if what i have in mind is way over the top or not.
MSmits: It only worked for me in yavalath
MSmits: 10-20 lines
Astrobytes: Are you doing Lost Child Schwase?
Astrobytes: Just a BFS
MSmits: well thats just the algorithm, getting the nearest neighbors can cost some lines
MSmits: always go for BFS
Astrobytes: It's really easy, honestly, straight-up BFS
MSmits: I have a bunch of BFS implementations in C# you can find on the playground in my profile
Astrobytes: I've not done the puzzle but I may or may nto have given the author my BFS code at some point
MSmits: I 'm going to teach BFS to my students next schoolyear
MSmits: only thing I am slightly hesitant at is that they dont know oop
Astrobytes: What do you need OOP for?
MSmits: the node
MSmits: neighbors etc.
MSmits: you usually use a class
Astrobytes: hm
Astrobytes: I see
MSmits: there's probably a way to make it simpler
Astrobytes: But it's a data structure
MSmits: maybe premake the class
MSmits: they only have to add it to a queue
Astrobytes: It's just POD
MSmits: pod?
Astrobytes: plain old data
Astrobytes: nothing fancy going on
MSmits: we'll see
Astrobytes: You don't even need a node class
struct: why?
struct: just have an array[n][n]
MSmits: doing it without the node class might be more difficult
Schwase: i hadnt heard of BFS or OOP or even A* before i had to look into solving this. im a physics major not a CS major. recently CS has been pretty appealing but i definitely need instruction in a class setting because im usually too lazy to read / get to understand code tutorials
Marchete: in modern standards array are just bad practice
Marchete: [n]?
MSmits: Schwase I am also a physics major and I learned half of my coding in the last 2 years on this site
Marchete: if it goes bigger?
struct: whats the bfs for?
MSmits: working with classes is not hard but you need to get past a small barrier, once you're past it, you'll love it
Astrobytes: Just for teaching purposes struct
Astrobytes: MSmits, you'll be teaching them the algorithm manually too I presume?
Schwase: ive taken a CS course before and we did things such as "crazy bugs" but i have since stopped using external references with the exception of a few recursive puzzles that i couldnt do without them
MSmits: Astrobytes yeah i'll probably do some puzzles or something, something with pen and paper
Astrobytes: Just a small graph is enough, a couple of points, or a small grid
MSmits: yeah
struct: show them connect
struct: 4
MSmits: it's more natural to do a small maze
Schwase: order of succession is a really good puzzle to show bfs
MSmits: hmm dont know that one i think, or maybe i do
Schwase: the royal family tree
Astrobytes: I learned this with nodes on a graph
MSmits: i did all easy puzzles that were made before july last year
Schwase: http://chat.codingame.com/pastebin/39c842c6-7f85-4336-85f3-e7b847225221
MSmits: but they made new ones
MSmits: sounds good
Astrobytes: Grid would be an easy graph to do maybe, but maybe like visiting cities via roads. You can teach multiple graph search algos like t hat
MSmits: i'll think about it after i get back from vacation. My idea is to introduce them to a lot of different types of AI
MSmits: will also do machine learning
MSmits: maybe just the tensor flow website by google
MSmits: i want a hands on example of each but have to think carefully since they are not very skilled coders, most of them
Astrobytes: For pathfinding, bunch of cities, linked by roads with distances (you can add other costs if necessary), demonstrate BFS, DFS, Dijsktra, A* approaches and do them manually on paper
MSmits: yeah that makes sense
Astrobytes: The differences become very clear when you do that
MSmits: yeah dijkstra is nice to do on paper
Astrobytes: Some good visualisations on redblobgames too, could be useful
MSmits: that site is awesome
MSmits: https://www.codingame.com/share-replay/476703481
Astrobytes: It is yeah
MSmits: i thought my solver was broken... but this is Ninja's fault right?
struct: I would be more worried if it went from WIN to DRAW
MSmits: yeah, I also just discovered a bug in my TT
Astrobytes: Yep, that was a blunder
MSmits: i was only recording the child index, not the maximum number of children
MSmits: for yavalath i dont need to because the board tells you how many children
MSmits: but for othello the child count veries
MSmits: varies
MSmits: maybe if i fix this it will magically become good :P
Astrobytes: Good luck :D
Astrobytes: See you all tomorrow guys, take care
MSmits: gn Astrobytes
struct: gn
MSmits: I think it's crap. I'll just submit and hope the result is clear either way
MSmits: I can cross it off my list at least
plrp: Hi MSmits!
MSmits: hi plrp !
Schwase: so what im hearing is that the use of ArrayList might not be the go to way to solve this puzzle...
MSmits: ah one of my students i think
struct: https://www.codingame.com/replay/476704178 MSmits
MSmits: or at least at my school
plrp: Yes, it's maarten
MSmits: ohh cool
MSmits: some free time finally then?
plrp: Yes, finally!
MSmits: thats weird struct
MSmits: anything you want to try on CG plrp?
plrp: I just felt like doing a simple coding puzzle, just to relax a little
MSmits: ahh ok, so many to choose from
MSmits: I dont puzzle that often
MSmits: the pikachu puzzles are not bad
MSmits: series of 4 puzzles that were part of a speed contest
plrp: Oh, I'll try those then
MSmits: it's just the 3rd one that has a bit of a twist that is not that easy to get from the description, but the first 2 are kind of relaxing
plrp: I'll see how far I get, I'll start at part one
MSmits: if you want a benchmark. I did the first one in 20 mins, the second one in 30 mins, the third in 45 mins and the last one took an hour or so.
MSmits: but that was highly stressed because of the 4 hr time limit. Take your time :)
MSmits: might be it was a bit longer than i said, my total was like 3,5 hrs, i had half an hour left I think
plrp: Ok, I'll take my time, I don't think I'll get around to the third one
MSmits: nah dont worry about it, they are separate puzzles now
plrp: Yeah I saw
MSmits: btw, they are pathfinding puzzles and i am assuming this is easy for you
MSmits: because i know you are a very good coder
MSmits: you've done BFS and such before right?
plrp: What does BFS stand for?
MSmits: breadth first search
MSmits: simplest algorithm for finding a route in a maze
MSmits: or a path in a graph
MSmits: from A to B
plrp: Oh, I don't think I have, but I've used similar algorithms
MSmits: i think in this case its easier than this even
MSmits: I think you're told to hug the left wall or something
iSPANKzombiez: anyone willing to give help?
MSmits: and keep track of which tiles you visited until you found your starting point
Schwase: what are you working on zombiez?
iSPANKzombiez: Shadows of the knight
MSmits: thats binary search
MSmits: jump to the middle point between current position and the edge of the map
MSmits: if you're at x = 2 and it says East and the edge is at x - 8, do (2 + 8 )/2
MSmits: if i remember the puzzle correctly
Schwase: create four variables to express the upper, lower, right most, and left most points that are possibly the location of the bomb
struct: basicly you want to elimanate the max number of points
struct: with each move
OrangePeel: how can i print my own debugging messages into the code
OrangePeel: i.e. in the python code, i would like to add some print() statements of my own without conflicting with the expected output
tomatoes: file=sys.stderr
plrp: print("Debug messages...", file=sys.stderr, flush=True)
LoGos: remember to import sys
thanhhv317: hi
thanhhv317: i come from vietnam
thanhhv317: i want to a job