eulerscheZahl: interesting read @JBM especially the parts prior to my own activity on CG, how the system was back then
Allis: How long have you been the best?
eulerscheZahl: https://dbdr.github.io/cg/podium ask dbdr to update this then we know
eulerscheZahl: at some point CG changed their ranking formulas. with the old one i would still be far away
Allis: Are some categories weighted more heavily than others?
eulerscheZahl: and contest points decay over time now. back then you still profited from a good rank on a contest with many players 2 years prior
Gorbit99: cp calculations are mentioned somewhere
eulerscheZahl: questionmark at your rank on the profile page/start page
Gorbit99: and cp under that
aCat: morning ;-)
aCat: hmm results are stable I see ;-)
eulerscheZahl: results for what?
aCat: Illedan contest ;]_
aCat: I've been watching you talking whole vening
eulerscheZahl: i'm around 147500, just haven't submitted
aCat: Yeah, some of next contributions have to be multi/opti for sure
aCat: watching you guys having fun is fun ;-)
eulerscheZahl: you are free to join
aCat: I know
aCat: I will
aCat: probably when I will provide enough content for the course that I won't be in fear of deadlines
aCat: I will start making the content myself ;-)
eulerscheZahl: i think we need a sokoban, maybe as a puzzle. too classic not to have it
aCat: definitely start with marslander :smile_cat:
aCat: sokoban is in my plans for sure
eulerscheZahl: was about to call dips on it :(
aCat: I can send you a picture of the games / problems ai noted to add on CG ;p
eulerscheZahl: cool, go ahead and send it
aCat: actually I have about 3 such lists, overlapping for sure
aCat: not to mention projects aimed to be foll contest-ready multis
eulerscheZahl: sounds like you have more ideas than time to implement them
aCat: my usual issue in nearly every domain :crying_cat_face:
aCat: OK, I've sent them :joy_cat:
eulerscheZahl: thanks, will have a look
eulerscheZahl: your handwriting though. for some i can't even tell if it's English or Polish :D
eulerscheZahl: but some are readable, especially on your last picture
aCat: I have the same issue :P
aCat: first is the newet list - sokoban there missle right column :D
eulerscheZahl: yes, I saw that
eulerscheZahl: did you plan it as a puzzle or optim?
aCat: probably optim
aCat: but thet's problematic
aCat: as usually the problem with hardcore sokobaning is not the quality of solution
aCat: but to solve the level at all
aCat: so these means < 100% passed
eulerscheZahl: i agree. wrote a solver once. either it failed of found the shortest solution
aCat: but that's the issue to resolve in a future
eulerscheZahl: gets tricky with more boxes involved. then i might be stronger playing it by hand
eulerscheZahl: Momynul_Islam remove the GAME OVER line
jrke: and "bingo" also not needed
eulerscheZahl: for a moment it made me think it was a code for this puzzle: https://www.codingame.com/training/medium/bingo
jrke: its power of thor right?
Westicles: A good sokoban puzzle would be designing the longest level giving a set of walls. Like this
aCat: I have to write it down,. might be nice idea
aCat: ahh let us allow multiauthored contributions - I have feeling that some of my nonstandard ideas euler will like :P
eulerscheZahl: interesting idea. but needs a highly optimized solver to do the scoring
eulerscheZahl: then referee can timeout too, not just the user code
dbdr: I don't think it's necessarily bad if levels are hard to solve rather than hard to optimize
eulerscheZahl: i suggested having multiple authors long ago. when the SDK was still not public but about to be released
eulerscheZahl: hard to solve => makes a good puzzle I think
eulerscheZahl: not an optim
eulerscheZahl: same as for Space Maze
dbdr: NS is a great optim
dbdr: generated a lot of activity and research
jrke: dbdr is your bot hardcoded in samegame?
eulerscheZahl: so you suggest doing the same for sokoban? that might be an idea
eulerscheZahl: solve the most levels
dbdr: jrke: offline search, of course
aCat: dbdr NS?
dbdr: possibly, with harder and harder sokoban levels
dbdr: but I was also responding to your conversation
eulerscheZahl: that could work, valuable contribution
aCat: ah yeah, Ive seen it, really cool contrib ;]
dbdr: actually what could be an issue if it's "easy" to get the optimal, several tied #1
aCat: ok, you get my hyped to check off the list next puzzle I'm working on ;]
aCat: breakfast, then cooking, then code ^^'
eulerscheZahl: i'll play soccer
dbdr: in this heat??
eulerscheZahl: every sunday if possible
eulerscheZahl: lockdown was a hard time for us
jrke: yeah!! lockdown was too much...
eulerscheZahl: we play at almost all weather. snow, heat, rain
dbdr: in the ice storm I got yesterday, I guarantee you would have stopped :D
eulerscheZahl: ice storm? are you kidding?
eulerscheZahl: it's august
dbdr: Hail - Hagel
dbdr: it happens more when it's hot
jrke: dunno what yesterday was independence day for india :) a kite flying day
eulerscheZahl: saw a heavy one as a child, maybe 20 years ago
dbdr: ice balls the size of peas falling hard, covering the ground
eulerscheZahl: even shattered the roof gutter
dbdr: was very impressive to watch
eulerscheZahl: bigger than peas, more like chessnuts
dbdr: wow, that would seriously hurt
eulerscheZahl: i was glad i was inside
dbdr: big kinetic energy
eulerscheZahl: Momynul_Islam i already told you what's wrong with your code
eulerscheZahl: eulerscheZahl 08:46AM Momynul_Islam remove the GAME OVER line
aCat: noone will give you his code
aCat: when you pass the puzzle
aCat: you can watch other people's solutions under the solutions tab
Marchete: I've read past chats. euler, no, please, no more sokobans, I hate this game. I think it's from an old CGA sokoban game in PC, I just can't stand it. There are more games to implement, we already have one (Bender)
tutubalin: game viewer uses PixiJS, but docs say we need to use Java for that. How does it convert to JS? Can we use all the features of PixiJS, like filters for example?
Marchete: java for backend, PixiJS as frontend
tutubalin: but how they are bound?
Marchete: the real game is the referee in java
DaNinja: Momynul_Islam your N and S are wrong
dbdr: sokoban on CG with the 4-color CGA pink palette, that's an idea!
dbdr: but unironically
Thyl: Hello World
tutubalin: so we create a sprite on Java side. does it generate PixiJS code as result? Or how it works?
Marchete: well, that's a predefined way to do it
Marchete: like a CG framework
Thyl: hi dbdr
Marchete: you can tweak it to show different stuff
Marchete: check contributions, there are two of them that shows different stuff
Marchete: a 3D teapot https://www.codingame.com/contribute/view/52965be9af1e1e9f5b35487a3cc449f24bf2
Marchete: you can download the game source to see how it's done
Marchete: a different one :D
Marchete: or example games https://www.codingame.com/playgrounds/25775/codingame-sdk-documentation/example-games
eulerscheZahl: was afk. I agree Marchete: sokoban has similarities with existing games on CG (e.g. Bender and Space Maze)
eulerscheZahl: tutubalin the CG SDK works the following: you write java code to create objects (rectangles, images, ...) that gets serialized to a json string. the SDK also provides JS code to deserialize it and create pixi objects from it
dbdr: (08:25:51 AM) eulerscheZahl: i think we need a sokoban, maybe as a puzzle. too classic not to have it
eulerscheZahl: let's make a sokoban poll then
dbdr: you will vote on both sides? ;)
Gorbit99: so when is pool getting made?
eulerscheZahl: it's possible to get around the SDK and create your own pixi objects or doing entirely without pixi
eulerscheZahl: you can also do parts on your own while using the SDK for others
dbdr: where's the pool? I wanna swimm
eulerscheZahl: i'm not sure about sokoban. cool game but will it be popular here?
Gorbit99: probably depends a lot on how much people have to wait for the fall contest
eulerscheZahl: space maze was a lot of work for 3 users to solve it and some more to at least look into it
eulerscheZahl: not counting myself in for the 3 solvers
dbdr: there are so many puzzles
dbdr: less visibility than optims and multis
eulerscheZahl: my own game passed the thibaud review to become a contest
eulerscheZahl: next step: convince jupoulton
dbdr: well done!
aCat: the one I've seen eulerscheZahl ?
eulerscheZahl: i'll need testers if it gets approved. i'll get back to you (plural) then if it happens
aCat: ok, so I have to sit to this one for real so I can provide you good feedback
aCat: and schedule some talk
eulerscheZahl: you don't have to. but would be nice :)
aCat: as I have some comments on this one :smirk_cat:
eulerscheZahl: i won't rebuild the whole engine :P
aCat: I was hoping so ;-)
aCat: noo, but definitely have to work on ending condition
eulerscheZahl: we won't discuss this here
aCat: match eas resolved much earlier than the game really ends
aCat: I'm talking in generals
aCat: but ok, true :D
dbdr: let's extract information about this contest, bit by bit, validator style ;)
aCat: I would just say
aCat: that I LOVE THE TITLE
aCat: naming is just first-class
aCat: and no more spoilers from this cat
dbdr: thanks, all the information I needed ;)
DaNinja: I enjoyed Space Jam even though I still havent got 100%
DaNinja: but still hoping Space Jam episode 2 gets published some day
jrke: recolored are random or can be hardcoded
Gorbit99: afaik they are actually just one of the previous cases, but recolored
jrke: ya but are colored are changed every time or they are hardcoded maps
MSmits: good morning guys. Managed to get transpositions working last nice
MSmits: solves 14 moves before the end now as opposed to 4. Quite nice. I also wasn't able to solve any of the testcases in the IDE before
dbdr: how much effect?
MSmits: now I can solve all except the codingame one and the official testcases
MSmits: dont think it had much effect on my scores though. But it saves time if anything
MSmits: still didn't use zobrist btw. I went with a uint64 bitboard for the map and xorshfited each line and the gamescore up to that point into a hash
jrke: why is this im getting 50% in real ide and 100% in contibution ide with same code
MSmits: check which testcases fail
MSmits: its probably recoloring
MSmits: each official testcase is a validator but acat also recolored them and added them
MSmits: kinda redundant, but you have to take it into account
jrke: if recoloring then it should get 50% in contribution ide also
MSmits: did you hard code solutions jrke?
dbdr: contriibution might have different testcases
MSmits: did you take into account recoloring jrke?
dbdr: yay, I'm improving my case 7 score. was one of my weak points
jrke: i have just hardcoded all test cases in contribution ide
MSmits: then it's recoloring
MSmits: wait did you hardcode 40 cases?
jrke: ok thanks will work on it
jrke: not 40 just 20 and made it for 2 cases
jrke: will add something for recoloring
MSmits: btw, what I did for recoloring is use my own colors. The first time a color appears it is assigned a color
MSmits: that way it doesnt matter what the game tells me the color is, only the order matters
Allis: Is there some way of knowing what caused the notification badge on the Contribute tab?
Gorbit99: hey there
Allis: Or does it just signify "something got updated" and it's up to the user to find out what?
Gorbit99: it has a new over the thing that updated
Gorbit99: it just bugs sometimes imo
jacek: i feel followed
jrke: MSmits thanks now 100%
YurkovAS: 60k in samegame with MC (online). 80k with small improved MC
MSmits: gj jrke
MSmits: YurkovAS I got 112k online with MCTS
MSmits: probably could have gotten somewhat higher with submit spam
YurkovAS: MSmits thanks. i'm try mcts later
YurkovAS: MSmits what algo you use in hypersonic? Can't improve beam search higher 150 place
MSmits: it's beam search
MSmits: but I keep all states up to ply 20-25
MSmits: I prune very well so that I dont get so many states
YurkovAS: What width (best states count)?
MSmits: that's really hard to say, I do states differently from everyone else
MSmits: a state for me is a map state
MSmits: excluding the player
MSmits: instead of keeping a position, i keep all possiible positions with this map state
YurkovAS: oh, you keep all states...
MSmits: so I have a "possible position" map
MSmits: 1 state is actually maybe 20-30 states
MSmits: as long as you do nothing to change the map (use a bomb, get an item etc.) it doesnt matter what route you took to your next objective
MSmits: so I floodfill from the last change of the map
MSmits: and only make a new state when an action is taken that changes the map
MSmits: I have several maps, bomb maps, item maps etc and they are all 128 bit
MSmits: I xor these together for a single state into a hash and i have an unordered set or map (forgot which)
MSmits: for transpositions
YurkovAS: MSmits thanks. not easy
MSmits: no it was pretty grueling
MSmits: in the end i only needed like 5 ms to make an optimum choice ignoring opponents
MSmits: with more search time or more beam width I got no improvement
MSmits: I was going to use the rest of the time to minimax survival/killing players, but I never got good code for that. That's probably the difference between me and the players above me
YurkovAS: i'm try beam search in samegame with 5k-10k best states, best score = 30k. But with MC 60k. Thinking about check MC in hypersonic :thinking:
Marchete: in hypersonic just beat kymiyuki bots, it's an auto top10
Saptarshi: can anyone tell me how do I use loops in python in a more simpler way...like the one line if else statement
YurkovAS: don't understand kymiyuki code
dbdr: step 1: learn japanese
Marchete: nobody understand :D
Andriamanitra: @Saptarshi can you elaborate on what you mean by "simpler"?
Andriamanitra: if we don't know what you're currently doing it's hard to know is there's a simpler way :D
Marchete: just change simple numbers
Marchete: like the evaluation, beam width and depth
Marchete: it has bugs also
dbdr: Marchete, how much CPU power are you using? :)
Marchete: like incorrect simulation in some cases
Marchete: 5 threads
Marchete: but diminishing returns
dbdr: desktop CPU?
dbdr: yeah, that's always dimishing
Marchete: like 3 min -> 150k
Marchete: 1 hr -> 160k
Marchete: infinite -> 165k
dbdr: wait, you can get 150k in 3 minutes?
Marchete: or maybe 5
Marchete: I can't recall
Marchete: it may be just luck
dbdr: that's 9 seconds per case
dbdr: less than online
Marchete: 5 min * 5 cores
dbdr: oh, threads
dbdr: still, 45 seconds
Marchete: 25 min / 20 tests
dbdr: well, Neum*n was saying his CPU is 4 times faster than mine
dbdr: so I think those numbers are reasonable
Marchete: I have an Intel core i7 8700K
dbdr: yep, 4.5 times faster (adding cores) :D
dbdr: only 1.5 faster per thread
Marchete: yeah, must be certainly faster
Marchete: and it doesn't feel at full speed
Marchete: when you use a laptop for CPU intensive use
Marchete: most of them sounds like a jet
dbdr: it's fine. I hate noise
dbdr: you might think of those power laptops
dbdr: not sure what the usual term is
dbdr: mine is rather optimized for low power/heat
Marchete: mobile workstation or gaming laptops
Marchete: but I mean normal laptops that start melting on high CPU use
dbdr: depends what you consider normal ;)
Marchete: I had one that cried a lot while the NumberShifting rush hour
Marchete: annoying fan sound that is noticeable and doesn't let you concentrate
Marchete: poor soul, it took like 8 hrs for a single level
dbdr: yes. if my fan starts up, I know something is wrong, like a CG tab wasting CPU
SPDene: if you have some superglue, you can eliminate that fan sound :P :P
Marchete: I just removed the fan, problem solved!
dbdr: using efficient software also works
Andriamanitra: this fucking piece of shit clash can go fuck itself with a sharp object
Andriamanitra: why would the constraints say n can be huge if none of the test cases require it
Andriamanitra: struggled for 15 minutes to find out everyone else did it the easy way that only works for small n
KyawMyotun: :joy :
eulerscheZahl: dbdr 12:38PM using efficient software also works
did you turn off the fan in the system settings?
dbdr: what system settings?
dbdr: no, fan starts when it's needed. I rather make sure cpu is not used without good reason
eulerscheZahl: just a bad joke...
eulerscheZahl: i removed 1 fan from my computer physically. wasn't spinning well
eulerscheZahl: always touching some part and making a terrible sound
eulerscheZahl: and at a position with little relevance
dbdr: wasn't that part out of place?
dbdr: happened to me once with a cable, but I moved the cable
eulerscheZahl: i never figured out what exactly was wrong
eulerscheZahl: i guess the fan wasn't perfectly centered anymore, touching its own frame
dbdr: oh ok
eulerscheZahl: so i unplugged it
dbdr: eulerscheZahl, still running?
dbdr: Westicles passed 173K
MSmits: I'm still working on meta mcts.
Marchete: do you fixed your bug?
MSmits: ah yeah
MSmits: it was stupid (as usual)
MSmits: I added transpositions. What I do in mcts, is store the childIndex of the transposed Node so it can share children with other transpositions. So if the childindex was still 0 it would check if a transposed node existed and get a new index from there. But after I set this, I didn't change the childindex variable in the function. So it was still 0. I would get all sorts of weird inconsistent maps
MSmits: it was literally just changing childIndex to node->childindex to get the right number and all was solved
wlesavo: how fast is checking for existence of transposed node?
MSmits: whats a more important question is how fast is it compared to expanding a node because if the transposed node isnt found it needs to do its own expansion
MSmits: it's begligible basically. Because expanding a node involves doing a flood fill for every possible move from the current map
MSmits: negligible that is
wlesavo: oh, i see
MSmits: my map is a uint64_t, to get a haskey I xor all lines together
MSmits: then i look it up in an unordered set
wlesavo: didn't think of that, rollouts with floodfills definetly are quite slow
MSmits: the biggest benefit from transposition is the solving I think
MSmits: I can solve the game 14 moves before the end now, that's online
MSmits: so only using 50 ms I guess
MSmits: dont know how it is offline, havent checked
MSmits: if you do the horizontal lines thing and you dont have transpositions, you cant even solve on turn 1
MSmits: I solved at turn 4 i think
MSmits: now it's easily managed
MSmits: ohhh I just figured out what the bar under my rank means
MSmits: thats progress toward next rank.
MSmits: does anyone see a semi filled bar?
MSmits: I see it for xp
MSmits: I wonder if they interpolate cp or rank for this bar
wlesavo: what bar
MSmits: above quest bar
MSmits: you're not guru, you should see something
MSmits: 67 ranks to go till guru for you, but in cp terms it's probably a larger fraction of the distance between the start of grandmaster and rank 100
wlesavo: ah i see, basically its cp on a range from previous rank to the next one, for guru it could be to top#1
MSmits: so i wonder if they use rank or cp
MSmits: hm yes, but it doesnt have to be cp
MSmits: it can also be rank
wlesavo: cp for me
MSmits: oh ok
MSmits: says nothing for me. just "23rd"
wlesavo: hm, maybe im wrong actually
MSmits: it's based on rank then?
MSmits: that would be a bit misleading. You could get the sense that you're almost there, when in cp terms it could still take thousands
MSmits: if the junp from 101 to 100 is very big
MSmits: stop hacking dbdr :P
MSmits: you're not 0th with level 255 :P
dbdr: I meant, why stop?
MSmits: oh, I actually don't have a good answer for that
dbdr: hacking has a noble meaning
MSmits: in expert circles, not in laymans terms
dbdr: and who are we? ;)
MSmits: dunno what you are, but I am a hacking noob
dbdr: "A computer <https://en.wikipedia.org/wiki/Computer> hacker is a computer expert who uses their technical knowledge to overcome a problem."
wlesavo: MSmits rank confirmed, 83.75% for me which is consistent with progress bar
dbdr: first sentence on WP :)
MSmits: though, I did ace my internet security class :)
MSmits: ow if thats a hacker, then we all are
MSmits: ah ok wlesavo thanks, mystery solved
MSmits: I'm doing a game design class in november and a functional programming class in february
MSmits: as a student I mean
dbdr: though I don't think that sentence is idea
MSmits: might be a bit general
dbdr: it's missing something about creativity, doing things in unexpected ways
dbdr: wow, interesting classes!
dbdr: are you full time working + classes, or...?
MSmits: yeah, looking forward to the game design one. Not sure about the functional programming one, but i'l lprobabyl like that too
wlesavo: in terms of cp its close to 77%, so a little bit missleading but does not really matter much
MSmits: I work monday, wednesday and thursday this year, got an extra day off to study
MSmits: paid i mean, it's a 1 day a week scholarship basically
dbdr: I think FP is really good to know, even if you don't end up using a purely functional language
MSmits: yeah I think so too
dbdr: nice setup
eulerscheZahl: the C# LINQ stuff is functional btw
MSmits: yeah I figured that. I always wanted to become better at that
eulerscheZahl: but there are more extreme examples like Haskell or Clojure
dbdr: yes, most recent languages incorporate some FP ideas
dbdr: more and more over time
MSmits: python has a lot of it too doesnt it?
MSmits: the course will use elm
eulerscheZahl: i only know Elmo
MSmits: but the ideas are what matters I guess
MSmits: Elmo is an earlier version
dbdr: and the teacher!
MSmits: hence the Elm0
eulerscheZahl: no, this one https://www.youtube.com/watch?v=vSYadh2xmcI
MSmits: lol I got that :p
MSmits: elmo appears a lot in jokes on late night shows somehow
MSmits: mostly because of misbehaving on times square
dbdr: John Olliver did one with Elmo I think
MSmits: more than one :P
MSmits: pretty sure he did more than one on his months at the daily show alone
MSmits: ah yeah remember that
MSmits: lol that tucker calrlson getting upset over sesame street. That was a new level of sad...
kovi_not_hardcode: ah, better this way
dbdr: pseudo updated on pidgin but not webchat
dbdr: I guess reload would do it
dbdr: will someone grab the kovi username now?
wlesavo: dbdr you are free to go :smiley:
dbdr: i'm fine :)
wlesavo: and ill grab dbdr :slight_smile:
dbdr: already got a FLU
MSmits: lol kovi really dislikes the hardcoding :)
dbdr: oh, he got scared
wlesavo: its like euler and coc
kovi: was thinking about that dbdr :)
dbdr: I was joking, but who knows
kovi: and i dont expect it from you, but who knows
AntiSquid: just make an alt, use VPN wlesavo, nobody needs to know your dirty kovi nickname stealing secret
dbdr: I thought you created an alt, to have both a online and an offline submission
wlesavo: AntiSquid ill steal kovi_not_hardcode and will make a shitty submit to optims :smiley:
kovi: not a bad idea. but i just wanted to show that may 12x point is not the worst of the hardcoders, but the best of the nonhardcoders :)
MSmits: what I don't like about online submission is the greater luckfactor. You need to spam submit to get a better score
dbdr: wlesavo lol
AntiSquid: pb4's nickname was once up for grabs, took it for a few hours, nobody noticed @_@
MSmits: evil action snoone notices are tight
dbdr: MSrnits is free...
dbdr: even you get fooled :)
dbdr: it is
dbdr: I should have done it
AntiSquid: MicroSoft right now its
MSmits: the name
MSmits: how is it free?
MSmits: oh r n its
wlesavo: double lol
dbdr: ok, I'll do it
MSmits: no no
Marchete: yes yes
AntiSquid: you could get eulerscheZahI just replace L at the end with uppercase i
wlesavo: Marсhеtе is free
wlesavo: yes dbdr :slight_smile:
dbdr: they might check that. or not
wlesavo: nah, its for sure invalid characters
wlesavo: invalid = free
AntiSquid: what does dbdr stand for anyway?
dbdr: Dbdr dBdr dbDr dbdR
MSmits: database doctor?
MSmits: he fixes all your SQL issues
AntiSquid: using mongoDB though
wlesavo: mystery solved
dbdr: too much work
dbdr: wlesavo: did you check bulls and cows scores recently?
RJMontalvo: my peanut butter jelly bot died of over spreading :(
MSmits: dbdr anything weird happen in B&C?
dbdr: the magic of randomized validators
MSmits: randomization got cracked?
MSmits: spam submit?>
dbdr: we don't even have the referee I think
MSmits: thats what kovi wants for samegame :p
MSmits: if you're not hardcoding then there is no difference between the validators being random or the bots doing random things
MSmits: in fact the more parameters you put in your bot that you fit using submission feedback, the more your bot looks like a hardcoded bot
MSmits: this is why all those NN's on boardgames always play the same moves. There really is not that much difference between a oware NN and a oware bot with a massive opening book
MSmits: jacek's oware bot is deterministic 50 plies deep with only 1 variation. If I play the same moves each time
dbdr: yeah, NN is just the learning mechanism
wlesavo: oh wow, nice random dbdr :slight_smile: but i believe your lead comes from some features
dbdr: thanks for believing in me :D
MSmits: mmh been running 4 instances of samegame solver all day
wlesavo: well others tried spam submit as well, there deffinetly should be some magic twist :slight_smile:
MSmits: only 1 improvement so far
kovi: 291? :o
dbdr: wow, that's stagnation MSmits
kovi: something is fishy there in b&c with (reasonaly) latest submit the first 10 had 2x304. since than i rarely got below 310
dbdr: randomness is like that
MSmits: yes randomness is fishy
**dbdr slaps MSmits around a bit with a large fishbot
MSmits: :four_leaf_clover: :fish:
wlesavo: generation probably could be improoved in b&c not much though
dbdr: what could be improved?
wlesavo: i think im not handling some edge cases and it is possible to generate a number with additional bull
wlesavo: which could give an advantage, and also as we disscused number can be generated online, up to the last possible number
wlesavo: bulls and cows 2
kovi: wel, 304 seems like a hard limit for my current algo (over lots of attempts), so i might be very lucky on the first few
eulerscheZahl: i spam submitted the cows :(
MSmits: shoulda gone with the bulls for a better rank
eulerscheZahl: oh, didn't even notice the latest movement at the top
kovi: and considering the spread/range (315 +/-10), dbdr is definitely much better
dbdr: I have one 291, one 294 and one 299
eulerscheZahl: https://prnt.sc/u0gztn i'm nowhere near this
dbdr: so I might have something better since you never got any, but also a lot of luck involved
kovi: and since than just a bit better than euler's
dbdr: eulerscheZahl I think you knew about BrainSolver at 298
kovi: anyway, i agree that online submit also has its problems
dbdr: teasing me about how badly I had been beaten :D
wlesavo: lol, yeah, remember that
dbdr: "thanks for the motivation" ;)
kovi: especially as testcase-scores are not normalized (for zombies 1 testcase can dominate)
MSmits: yeah hardcoding solves this somewhat, if everyone has the max score, then it no longer dominates
dbdr: yes. but it's tricky to normalize since by definition you don't know the max possible score
MSmits: so maybe you should make all new optims then dbdr
MSmits: win them first, then normalize
eulerscheZahl: maybe i saw it and forgot again
kovi: yes, tc has relative scoring
dbdr: ah, old age...
wlesavo: in the case of SG offline is fine because of this standartised testset, would be fun to have more testsets like this
dbdr: you mean other games?
wlesavo: i mean more games yeah
kovi: well, best would be have two scoreboard :)
dbdr: not ... enough ... games ...
eulerscheZahl: create one
eulerscheZahl: or many
dbdr: one with kovi?
wlesavo: actually before i didn't even think someone would bother to make such a testset for a random game to benchmark different algos
dbdr: maybe it happened organically
kovi: not sure how many make strong attempt with hardcode. probably a dozen
wlesavo: maybe SG is not just a random game ofc, but still
dbdr: they just made those 20 cases for that casual js game site, no?
dbdr: then researchers took hold of it and spent years on those 20
dbdr: it's actually funny to see those research papers referring js-games.de :D
kovi: oh, i was not care earlier, are the actual judges known cases?
wlesavo: hm, maybe you right, but the point stands, its fun to compare results to the others even outside the sg, not that i have much to compare :smiley:
dbdr: yes, I agree
dbdr: but in other cases, we can say CG is the standard
dbdr: I'm sure research papers will eventually refer to CG
dbdr: kovi, the 20 cases you mean?
kovi: westicles improved? wasnt it 172k earlier?
wlesavo: cg constrains make perfect sence for many games, yeah
dbdr: he did
Marchete: research papers are like "I used distributed MCTS on a supercomputer and got 78k points"
MSmits: i wonder if he fixed his case 9 :)
MSmits: he was convinced some scientist frauded the case score
MSmits: i can't believe some people can do this for a living
Marchete: and some guys with a crappy laptop are better in js-games.de
MSmits: haha yeah
MSmits: westicles and his crappy laptop :)
Marchete: the supercomputer part is true
MSmits: no i know, these guys get to use their faculty's supercomputer
eulerscheZahl: 78k is at least 156k on CG leaderboard. but still a waste of a supercomputer
MSmits: they get assigned x hours of use
eulerscheZahl: does anyone check the program before approving the time?
MSmits: doubt it
wlesavo: how the score is calculated on jsgames? by ten lowest score sets?
dbdr: 10 GOTO 10
eulerscheZahl: sum of all wlesavo
eulerscheZahl: and for CG you have to do *2
MSmits: because of recolored cases...
eulerscheZahl: as the cat doubled the validators for whatever reason
MSmits: which i still think is silly
wlesavo: oh, i see, we have 40 cases
Marchete: I think it's the same score
wlesavo: forgot about that
Marchete: at least I submited Test 1 to check
MSmits: eulerscheZahl if you consider it a regular puzzle, the recolored part would make for an exatra test, but no need to recolor all 20
eulerscheZahl: well, it's not a puzzle :P
MSmits: that too
MSmits: Marchete what search type do you use btw?
MSmits: forgot to ask
Marchete: I ended matching the validator and returning the solution[i%20]
Marchete: similar to Numbershifting
Marchete: variations of SA
MSmits: oh ok
Marchete: maybe I'll try some MCTS algo
MSmits: mine is really simple and does well
MSmits: if I added more features it might be better
Marchete: so add it
eulerscheZahl: any fancy scoring?
MSmits: i tried a few from the papers
MSmits: didnt help
MSmits: no just high score
MSmits: i use each nodes highscore divided by parent high score in place of node value
kovi: besides hardcoding i still havent read any papers
MSmits: so if a child has a the max score, the node value = 1
eulerscheZahl: i didn't read any papers either
eulerscheZahl: too lazy
dbdr: you hardcode kovi?
MSmits: i read one on mcts
kovi: bad english
MSmits: had lot of fancy stuff that didnt work for me :P
MSmits: the papers or you kovi_not_hardcode?
MSmits: cuz... some papers :P
kovi: i had lots of failed heuristics. and some working well
MSmits: i only use one heuristic
MSmits: tobucolor i think it is
MSmits: in the random rollout
MSmits: other than that its just all fairly optimized code, nothing special
eulerscheZahl: i tried rewarding few stones without any group but meh
MSmits: i tried node value as average score instead of high score
MSmits: but that peformed worse as opposed to what the paper said
wlesavo: i have a fixed order for ccolors for a single rollouts, the only one that really worked, but i guess it can be worse than tabu color
MSmits: what do you mean fixed order?
MSmits: do you just set an order and then do the rollout?
eulerscheZahl: death to green
Marchete: there are a lot of papers that use acronyms, and there is nothing more in the internet about them
Marchete: Heuristically Guided Swarm Tree Search
wlesavo: if possible i try to choose first color in shuffled list of colors
Marchete: I've seen like zero info apart from 1 damn paper
MSmits: maybe try different search words
dbdr: Marchete: it's a troll paper ;)
eulerscheZahl: and searching for "same game" isn't that simple either
MSmits: like "Run away, this tree has bees"
dbdr: refer to amazing results from non-existing technique / paper
MSmits: eulerscheZahl it's like searching for breakthrough
eulerscheZahl: yeah :D
dbdr: always wondered about the name
dbdr: same as what?
eulerscheZahl: same colors
MSmits: the cells are the same color
MSmits: they disappear
MSmits: is this guy nr 1 in our optims?
dbdr: rather sounds like "same game as that other game", which does not make sense
wlesavo: MSmits yeah, basically fixed order, in case of simple MC with not a lot of rollouts it works quite ok, but generally it should be worse then tabucolor
dbdr: yeah, dumb
Marchete: what algo was using W?
Marchete: because I tend to pick the worst possible
wlesavo: dbdr that was what i though, same old game, like the very simple game with intuitive rules, lol
MSmits: wlesavo i am not sure, tabucolor in general gives higher score, but you also keep using the same branches
MSmits: varying branches also has value
MSmits: thats why i am hoping meta mcts will help a bit
kovi: fixed order help with limited time
MSmits: thats what i was thinking, with hardcoding it may end up hurting you
MSmits: less chances for lucky high score
Marchete: rule of thumb, as you can work offline, always give a chance to worse options
MSmits: good rule
Marchete: like 90% your super algo, but 10% random
MSmits: the mcts paper used epsilon greedy 0.0002
MSmits: does that mean 0.02% chance to pick random?
wlesavo: simmilar to policy convergence theorem
wlesavo: MSmits yes
MSmits: seems extremely low chance
MSmits: 2 in 10k
wlesavo: well if you have unlimited time its ok
MSmits: they didnt though
MSmits: they used a minute o rless
MSmits: i would at least use 1% I think
wlesavo: or decreasing by time value
kovi: i think fixed order hurt online as well. first day i tried dual-taboo, it sometimes helped
dbdr: a ridiculously low random is a nice trick to be able to prove "given enough time, it will find the optimal solution"
wlesavo: i think it depends on the range of your score :smiley:
MSmits: ahh i remembered the wrong value
MSmits: it's 0.3%
Marchete: I'm not academic, but so many papers seem just fillers to me
Marchete: like filling CV and/or goals
MSmits: yes seems to me as well
wlesavo: especially in computure science yeah, but in other field as well
MSmits: btw, about the quote from the paper just now. Do they mean chance epsilon to have the first move of the playout be different, or every move? Or have a chance for every move?
dbdr: I think there has been pressure on academia that pushed in that direction as a perverse effect
kovi: well...how is it different from our competition. inching for the last 0.0x% improvement to beat others :)
dbdr: MSmits: I think every move
MSmits: so every time you do a move in the playout, you reroll the dice?
dbdr: the goal of academia should be to increase knowledge, and just can't quantify that in a useful way
dbdr: if you evaluate people based on how many papers they publish, they will publish more
MSmits: if knowledge becomes hard to find in a mountain of filler papers, it actually reduces knowledge
dbdr: I agree
dbdr: the evaluation policy is the problem
MSmits: which papers are approved you mean?
wlesavo: dbdr in russia last couple of years it went in extreme mode
dbdr: a lot of major breakthroughs have been from people who were not able to show results for a decade or more
Westicles: Ha, I found an old writeup of my approach. It sounds so stupid
MSmits: I would not mind reading your stupid stuff
wlesavo: publish it, a decade went over :slight_smile:
Marchete: I want to hear stupid things, Westicles :ear_tone1:
MSmits: that doesn't sound stupid at all, it sounds like something I would need to think about for a day before I figure out why it works
Westicles: I think it is just the same thing as NS
MSmits: I never understood what you did there either, aside from it being SA
wlesavo: i think its very close to what i tried in NS as well
dbdr: sounds much more complicated than what I had in NS
wlesavo: but yeah, some details are quite interesting
MSmits: started two instances of solver for testcase 2 with epsilon 1%... see if it helps
kovi: my solution has similar to that westicles
MSmits: it's my worst score compared to the maximum I've found
kovi: except the repeat million times of course as online :)
MSmits: submit spam does that part
wlesavo: kovi and a one minute part :slight_smile:
kovi: i dont spam submit, just a few to get some average
MSmits: I'm just kidding, it wont let you
MSmits: I hate what happens on submit spam.
MSmits: first it lets click robot thingies which is fine
MSmits: but then it says "try again in a few minutes" FOR AN HOUR
dbdr: imagine getting "try again in a few years"
dbdr: on the whole account
MSmits: I deserve that for running so much cg benchmark :P
dbdr: you've reached your 2020 quota, try again next year
wlesavo: right before the contest
wlesavo: or after submiting a broken bot
MSmits: that actually happened to me in locam speed
dbdr: or just the meltdown?
MSmits: no i submitted a broken bot
MSmits: but i didnt know it was broken because the feature i coded was in the next league
MSmits: I missed one space
MSmits: couldnt wait for submit to finish so i was just hoping it would work
eulerscheZahl: CG will go out of business just because of smits spamming games
MSmits: heh I dont do it as much now :)
MSmits: but I did some crazy amounts during my PCR testing. Thousands a week.
dbdr: thousands of benches?
MSmits: at most I think 8000 games in a week
MSmits: it's mostly because PCR needs so many to get a signal out of the randomness
dbdr: ~1 game per minute non stop for a week :)
MSmits: sounds right yeah
MSmits: thanks to me, codingame is ready for server load during contests :P
kovi: i approx. did ~1 per minute latest games with pure submits
kovi: (hundrends of submits for few weeks, 50-100 games per submit)
MSmits: for a week non stop?
MSmits: allright, you are worse than me
MSmits: didn't know it was possible
dbdr: no, that should trigger rate limiting
eulerscheZahl: i also think there's a quota per game, isn't it?
eulerscheZahl: so you can benchmark 10 different arenas at the same time
MSmits: yeah thats true
dbdr: harder to analyze in your brain
MSmits: I never misused that though
MSmits: but could have
kovi: but i meant submit, not bench
MSmits: I could benchmark several boardgames at the same time if I wanted
dbdr: oh right
eulerscheZahl: yeah, we saw you the last contests kovi
eulerscheZahl: also: CG has 2 queues. 1 for submit, 1 for IDE games. the IDE has higher priority
MSmits: which is dangerous
MSmits: with people using CG
eulerscheZahl: that's why they added the delays when CG Spunk became popular
eulerscheZahl: as testing users slowed down submits
kovi: bench is better within top5, submit spam is better when not there yet
dbdr: I think when you are far from top 5, you can usually stop something to improve without spamming
kovi: my spamming is never to have better score, but to assess latest changes
kovi: vs. other (more realistically than single submit)
dbdr: I was not speaking about better score
kovi: oh spot, i see
kovi: well, yes but spotting/getting an idea is one part, checking how much that helps is another
dbdr: yes, but knowing that precisely is not very relevant
dbdr: it might even lead to a local maximum
kovi: not precisely, but sometimes the result from a single submit is irrealistically good/bad
dbdr: I guess my point is, improving the logic of a bot is more important than optimizing against a field of bots that will changes anyways
dbdr: except near the end
kovi: valid point
kovi: but with limited time one has to assess current improvements to have better prioritization of further improvements
kovi: wow, euler back to 4th
kovi: and i still cant reach illedan
dbdr: eulerscheZahl: CEST is UTC+2, not UTC-2 ;)
eulerscheZahl: what are you talking about?
dbdr: bc you submitted just above MSmits, close to 6pm CEST
eulerscheZahl: ah, the illedan "contest"
eulerscheZahl: already half forgot about that again :D
dbdr: and end is at 8pm UTC
eulerscheZahl: chat is laggy
dbdr: hider ;)
dbdr: very laggy
eulerscheZahl: and i can beat smits whenever i want to
eulerscheZahl: considering that i have the skills which i don't always have
dbdr: that trash talk :D
eulerscheZahl: considering is the wrong word
kovi: yay, another odd score
dbdr: easy to fake ;)
eulerscheZahl: let me rephrase: it's my own decision when i want to submit a solution to beat smits
dbdr: provided you have a higher local score
eulerscheZahl: which i knew i had
eulerscheZahl: but probably not higher than his local
dbdr: that means you are improving slowly too
dbdr: if you submitted your best
eulerscheZahl: stuck now
eulerscheZahl: i mean i can go up like +20
dbdr: I thought you said you stopped
eulerscheZahl: started the solver again
eulerscheZahl: when i wrote it, it was true
eulerscheZahl: but at that time i didn't have my strongest in the arena
dbdr: dbdr asks euler stop "I stopped" euler restarts
eulerscheZahl: you swapped the first 2 lines
dbdr: less funny
eulerscheZahl: i would just lie to you rather than stopping in the middle of a search that only saves at the end
dbdr: what's your score on case 7?
dbdr: I have 2771, definitely a weak point
kovi: case20 is the same as standard test20?
dbdr: you beat me in 4 cases
eulerscheZahl: you beat me in 16
eulerscheZahl: or at least tie
eulerscheZahl: http://www.js-games.de/eng/faq these FAQ are nostalgic
eulerscheZahl: When I told LX about my idea he called me crazy. "How do you want to do all the clicking stuff?" I knew it could be possible somehow but I had no concrete concept at the time.
dbdr: what does LX mean?
dbdr: oh, someone
eulerscheZahl: this one http://www.js-games.de/eng/team/lx
Marchete: that page feels so 2002
eulerscheZahl: looks a little bit like the D troll
eulerscheZahl: you can claim a score under your username. it will send you password via HTTP without encryption
eulerscheZahl: we should test for SQL injection and XSS
dbdr: based on a FAQ, it might just work
eulerscheZahl: but the guestbook has a google recaptcha :o
MSmits: seems excessive
MSmits: who tried to DDOS the guestbook?
eulerscheZahl: ddos is lame
dbdr: r (n 0 s 0 v 2 l 0 oa 0 ob 0 oc 2 od 0 oe 0 of 0 og 0 oh 0 c 1)
dbdr: looks like CG replay
eulerscheZahl: where did you get that?
dbdr: <meta http-equiv="pics-Label" content='(pics-1.1 "http://www.icra.org/pics/vocabularyv03/" l gen true for "http://js-games.de" r (n 0 s 0 v 2 l 0 oa 0 ob 0 oc 2 od 0 oe 0 of 0 og 0 oh 0 c 1) gen true for "http://www.js-games.de" r (n 0 s 0 v 2 l 0 oa 0 ob 0 oc 2 od 0 oe 0 of 0 og 0 oh 0 c 1))'>
dbdr: html of homepage
MSmits: eulerscheZahl thats just how dbdr thinks, usually he translates it before typing, but thats raw dbdr neuron communication
dbdr: syntax looks lispy
MSmits: mmh first results on 1% epsilon came back, nothing spectacular yet
MSmits: (this is an hour per run)
dbdr: new optims should be only allowed during winter
dbdr: and ban the southern hemisphere to avoid that issue
MSmits: on the northern hemisphere ofc
eulerscheZahl: getting warm in here too
MSmits: I've been battling mosquitos to keep the windows open here
dbdr: watch out mosquitos sucked in by the fan and grilled on the cpu
MSmits: this happens?
dbdr: I guess that works as antimosquito
dbdr: might need those fancy case lights
MSmits: yeah lol
Westicles: I'm very impressed my new 18c desktop isn't getting hot
dbdr: you know the origin of the word "bug"?
MSmits: if it's not getting hot, you still have a crappy computer Westicles :P
eulerscheZahl: you no longer have that old laptop Westicles? :o
MSmits: dbdr maybe it comes from bugs?
MSmits: just riffing here
Westicles: Nah, I couldn't resist when dazzled by all those cores.
dbdr: frying on early computers and thus causing "bugs", yes
MSmits: wow really
eulerscheZahl: now dbdr officially has the worse hardware
eulerscheZahl: together with JBM
dbdr: yay \o/
MSmits: you dont need good hardware to rickroll people
dbdr: because of the hardware?
eulerscheZahl: i saw a video of him at least
eulerscheZahl: speaking at a conference
MSmits: I assume
dbdr: nice one
eulerscheZahl: something about a software for molucules, i don't remember
eulerscheZahl: he had a molecule as a profile pic initially
MSmits: which one
MSmits: mmh ok
eulerscheZahl: no idea what that is
dbdr: good memory about the profile, eulerscheZahl
MSmits: meth obviously
dbdr: I was a nobody at the time
eulerscheZahl: you were the java UTTT legend
dbdr: still with that pic?
eulerscheZahl: i think so
MSmits: dbdr inspired me to stick with C# until legend
eulerscheZahl: google image search suggests: Eminem Darkness
MSmits: so, meth
dbdr: Jul 7 2018 prince.png
eulerscheZahl: long ago
eulerscheZahl: i'm still not 100% used to it. new profile pics always confuse me
MSmits: thats when i was working on uttt the first time
dbdr: common, I registered end of 2017
MSmits: so matches up
eulerscheZahl: that's half a year as a molecule
eulerscheZahl: long time
dbdr: changed a few months later. now 2 years later you're not used to the new one? :D
eulerscheZahl: smits is more consistent
eulerscheZahl: and that toad was my first avatar too (i admit i had a few others temporarily)
dbdr: then https://i.snipboard.io/io1uXr.jpg
eulerscheZahl: we had a golf cooking contest?
dbdr: cooking was calm
dbdr: then I focussed on golfing
dbdr: but I had to stop that trend, was getting crowded
MSmits: coulda added some floating numbers for NS
eulerscheZahl: and now you are back to running through long corridors
MSmits: and jumping, dont forget the jumping
eulerscheZahl: and stabbing
eulerscheZahl: that reminds me of the stabbing game we once played
dbdr: how does it work?
kovi: yay, got you illedan
MSmits: kovi_not_hardcode stabbed Illedan?
eulerscheZahl: damn, had no stamina left
dbdr: killed eulerscheZahl :D
eulerscheZahl: (╯°□°）╯︵ ┻━┻
Illedan: Try again kovi )
dbdr: it's a bit silly
eulerscheZahl: i got bored too :D
dbdr: the only way to win is not to stab first :D
dbdr: very moral
kovi: westicles, have you tried your code online?
dbdr: Illedan is creepy and sneaky, we already knew that ;)
Illedan: Was hiding :D
eulerscheZahl: are you still hiding Illedan?
dbdr: I think he has 180k+
Illedan: Going to be glorious
dbdr: porque no los dos?
dbdr: doesn't prevent you from doing both
Westicles: kovi, no it would be too slow.
dbdr: bonus points for doing them at the same time
dbdr: hard coded or learning?
kovi: what is the best for test20?
eulerscheZahl: did you see the link i shared after you asked about test 20?
dbdr: it's not always the best. but in this case it is
kovi: oh, i c and yours?
eulerscheZahl: there seems to be an unpublished paper having higher scores
eulerscheZahl: btw sampson is first here on CG
eulerscheZahl: + means i cleared the board
dbdr: it's published, MSmits linked to it
MSmits: hmm not exactly
MSmits: the paper i linked is published
Westicles: oh really, the new one from Tristan? Does it give scores?
MSmits: but it has references to other research that is unverified
MSmits: not sure if it is published
dbdr: so there is a published paper with scores from possibly unpublished papers :)
kovi: interesting. i have tried locally and got to 4700 on 1st run (3 minutes)
kovi: must be lucky
dbdr: or diminishing returns
MSmits: which testcase kovi_not_hardcode?
MSmits: thats higher than mine
Illedan: 3887 :D
MSmits: max from sources is 5265
dbdr: js.de has that
MSmits: then that might be the source
Westicles: Oh, that one. Pah
kovi: nvm. was a lucky run
wlesavo: easy 2107 :smiley:
kovi: wow, 4900 now
eulerscheZahl: you should start hardcoding
kovi: what is yours westicles?
Westicles: yeah, 16-20 are the best to make you feel good. 65 of one color
Westicles: 5239 for 20
kovi: true. others are more "pure luck"
Westicles: 1-10 are random, 11-15 45 each color
kovi: well i cant tell the range, just 1,5,10,15,20 :)
Westicles: 4900 is good, you should play it out on jsgames
Westicles: Oh, I see... you don't know your move list I guess
dbdr: do you have a scrpt for that Westicles?
kovi: you did with 5239?
kovi: you have the point, i didnt record :)
kovi: the movelist
Westicles: No script... remember, I was the guy who couldn't figure out the python script on NS
kovi: balanced games are not that fun i guess i could battle for 2nd place on hardcoding
dbdr: why not #1?
kovi: i can only compare a few score with eulers, and from that i interpolate
eulerscheZahl: you can try the other too kovi https://www.codingame.com/demo/847363c996b5db478bdbf6bf192c2535825e84
kovi: i mean, those few are enough to assess that im consistently 10% above
kovi: (or can be)
kovi: but yeah, that is just with repeated longer runs. with more time additional code/heuristics can be added
Marchete: no more improvement for hours, I think I'm done with it
eulerscheZahl: i did a massive improvement on testcase 1
eulerscheZahl: took 2h to find it
aCat: so close 4, 5, 6
eulerscheZahl: http://js-games.de/eng/highscores/samegame/lx got my new solver working, i'll beat you now :P
aCat: what time is the contest end?
aCat: or you don't care and will improve your algos untill the world's end :joy_cat:
**eulerscheZahl doesn't care
Westicles: ooooh, euler that is impressive
aCat: congratz Westicles :-)
Westicles: thanks, but I think euler is coming after me
aCat: BTW will you guys post some postmortems?
eulerscheZahl: maybe later
aCat: or at least if you don;t want to get fully public send me a private note about your approach
aCat: for the science reasons :smirk_cat:
Westicles: is there a chat history somewhere? I sent it earlier but it scrolled off
eulerscheZahl: dbdr's wiki
dbdr: wow, eulerscheZahl, amazing score, gz! and the top ones are so close to each other
dbdr: seems that this might be close to optimal
eulerscheZahl: curious to see how it runs on the other testcases
wlesavo: :scream: gratz
MSmits: gj eulerscheZahl
eulerscheZahl: VIM mode?
eulerscheZahl: left side: settings what's your edit mode?
eulerscheZahl: then i was close at least :D
eulerscheZahl: that's a google question if no one else steps in. no idea
dbdr: vim: v to select, y to copy, p to paste
eulerscheZahl: select what? all?
dbdr: shift-v to select lines, ctrl-v to select rectangles
dbdr: v to movement
dbdr: v + movement
dbdr: vw selects a word, for instance :)
eulerscheZahl: gg vG is select all then?
Counterbalance: until EOF
dbdr: ^ future vim pro there
Counterbalance: mah, i've been vimming vor 24 years and still know nothing
eulerscheZahl: i'm too old for this now :(
eulerscheZahl: almost 29
dbdr: vi" select inside " quotes
dbdr: Counterbalance LD
Counterbalance: delete line in the bottom of the screen? :)
dbdr: zb puts the current line at the bottom, then it's easy ;)
dbdr: does that count? ;)
aCat: work in progress :-)
aCat: ah - there is mistake in showing mistake !
IfIHadATail: when does the Puzzle of the Week renew?
Scarfield: once a month
Scarfield: usually wednesday i think
IfIHadATail: seems legit
IfIHadATail: lol okay thanks : )
Scarfield: np :)
jacek: a month, weekfield?
Andriamanitra: why must reverse mode exist
Andriamanitra: half of these are just "guess what operation i decided to do with ascii values of characters this time"
Scarfield: yescek, was quality joke
wlesavo: nice kovi
kovi: and pretty stably above 125k now
Andriamanitra: is there any enforcement against cheating in clash?
Andriamanitra: some guy submitted 100% in 25 seconds and this was a clash that i think most of us couldn't complete even in the full 15 minutes with all the edge cases
Andriamanitra: incredibly frustrating problem too this oracle thing
reCurse: No rule against copy/pasting your previous attempt
kovi: lovely speedups
MSmits: Andriamanitra it's not really cheating
MSmits: ah chat scroll
Andriamanitra: if that's not cheating i have no idea what is
Andriamanitra: i guess hacking the whole system might count, or maybe there's also technically no rule against that :grinning:
darkhorse64: TBali is a human bot
Andriamanitra: even if you've solved it before there's no way you dig up the answer manually in under 25 seconds so you can drop the human part
darkhorse64: I am a noob in CoC but I have already solved one in less of 25 seconds
Andriamanitra: i have too
Andriamanitra: but that's not one you solve in under a minute
darkhorse64: *less than*
TBali: Hi, yes that was a copy paste of my previous solution. First attempt was of course much longer for this one, but well within the 15 min limit.
TBali: I did not know if it is against the rules.
TBali: I am currently go for the 500 CoC achievement so Coc-ing a lot.
darkhorse64: A good memory is a very powerful weapon
TBali: I hate to solve same things twice, so if it repeats I copy my old solution
Andriamanitra: goes a bit against the spirit of the game in my opinion
Andriamanitra: when i get repeats i might solve it in a different language or something
TBali: After each CoC I save my solution to a big fille together with the first input/output pair
TBali: Okay I understand your point, and I don't wnat to ruin anybody's experience.
TBali: However if I meet a CoC I have the solution what shall I do? Wait artificially before submit?
Scarfield: new rule: Must wait 10min before copy pasting :p
Scarfield: what happens if you leave a CoC? just to avoid the grey area of cheating
darkhorse64: I played one CoC against you TBali: you output before i finished reading the statement
MSmits: well at least it wasnt your slow typing
darkhorse64: slow mind
TBali: Sometimes I met with some guys from the top of leaderboard. They are indeed fast...
TBali: plus they are also short (mostly in Ruby) . In PHP I am getting better and better in golf, but ruby still beats me most of the time.
Andriamanitra: i've played against the top3 multiple times and while they're fast it never feels unfair because they still take the time to write the code (even though i'm sure they've seen most clashes before)
darkhorse64: They press the right keys
Scarfield: with more than 2 fingers :p'
TBali: it depends how much you play :-)
TBali: There is a limited number CoC puzzles in the pool.
TBali: I am at 350 and now it repeats a LOT
Andriamanitra: i have a bit over 500 clashes and i've not had too many repeats yet, maybe a few dozen
TBali: that's strange
BenjaminUrquhart: I'm at 1238, I get a fair number of repeats
BenjaminUrquhart: not necessarily
Kuzey: mods someone copied code from the internet on clash
BenjaminUrquhart: the clashes you get depend on your opponents' ranking in CoC and a bit of randomness
BenjaminUrquhart: if you keep getting newer players in your lobbies you'll see a lot of the easier ones
BenjaminUrquhart: yes, the "harder" ones
Andriamanitra: i guess tbali is getting only the hard ones since he's high level
Scarfield: hmm, i get some failed tests when submitting Same Game, but cant seem to fail a testcase?
BenjaminUrquhart: oh if we're talking about level, I'm at 238 for clashes
TBali: Not sure about hard ones, I get one-liners as well
BenjaminUrquhart: ah yes the ones you solve in under 10 seconds
TBali: the one you quoted was one of the longest solutions I had in CoC.
TBali: pretty annoying edges cases, i remember
BenjaminUrquhart: which one was quoted?
TBali: scroll up to a link
BenjaminUrquhart: it's out of my history
BenjaminUrquhart: I opened an IDE window
Scarfield: https://www.codingame.com/clashofcode/clash/report/13401038fea405615af59b5ab49062aead56148 incredibly frustrating problem too this oracle thing
Scarfield: the link ^
BenjaminUrquhart: that doesn't tell me what the prompt is
BenjaminUrquhart: and I can't see solutions since I wasn't a participant
Scarfield: well, i scrolled up to a link
BenjaminUrquhart: this? https://www.codingame.com/contribute/view/4982f173dce367ca6a5cbc810907bb085189
BenjaminUrquhart: only result for oracle in clash
Allis: That's the one.
Allis: Hilarious that TBali submitted in 21 seconds, but I'm glad he's honest about the fact that he pastes previous solutions.
BenjaminUrquhart: I also do that for annoying ones
Allis: I think it's poor sportsmanship, but obviously I understand not wanting to solve it again.
BenjaminUrquhart: this one seems fairly simple to me
BenjaminUrquhart: except I can't test it for some reason
Allis: Pretty much all of the ones that don't require some physics knowledge are "fairly simple". Speed is usually the name of the game.
Andriamanitra: it doesn't seem too bad until you look at the test cases
Allis: And if you're pasting a previous solution, well, you're kinda starting the race at the finish line?
BenjaminUrquhart: the point is to have fun, are you really having fun by recoding something you didn't enjoy the first time around?
BenjaminUrquhart: but I see what you're saying
BenjaminUrquhart: "Couldn't find the question related to this contribution".
BenjaminUrquhart: no u
BenjaminUrquhart: it's just a bunch of if-statements looking at the validators
Allis: There's a way to be clever about it that doesn't involve much special-casing.
BenjaminUrquhart: the sample solution is simple at least
TBali: I think the shortest I got was: echo (($n * $n - $n) / 2) . "\n"
Allis: On that note, it seems like it'd be a nice feature to allow multiple solution languages.
TBali: or something like that
Andriamanitra: it's almost like the author knew of all the traps he deliberately planted
BenjaminUrquhart: ok give me an example
Andriamanitra: like spaces before "?", abbreviated words that end in ".", question words that have 's after them
Andriamanitra: .split is rendered useless
Allis: Thankfully, Ruby copied a whole bunch of Perl's regex craziness.
BenjaminUrquhart: .split("('s)? ")
BenjaminUrquhart: (I use a lang with regex splitting)
Allis: As do I, but I'm not sure I see how it helps?
Allis: Splitting at all is definitely a trap for that one.
BenjaminUrquhart: removes the 's from words that end with it since it's a conditional part of the split regex
Andriamanitra: it helps for the question mark thing but then you need to be careful not to use the same thing for finding out if the last letter is a vowel
Andriamanitra: question word thing *
BenjaminUrquhart: the question mark is easy, not sure why the spaces are a trap
BenjaminUrquhart: last char of string == '?'
MSmits: It's a trap!
BenjaminUrquhart: hi are you still doing yavalath
MSmits: not currently, why do you ask?
MSmits: not much to do there atm
Andriamanitra: because you can't count the number of words ending in consonant by doing words.size - vocal_word_count
MSmits: If i get opposition, I will go back
BenjaminUrquhart: 4 points ahead I see
BenjaminUrquhart: understandable have a nice day
MSmits: you too , going to bed soon btw, not much day left. Also, work tomorrow :(
MSmits: been 6 weeks off, always sucks the first few days
BenjaminUrquhart: Andriamanitra that's not really a hurdle though? It's one of those things you try, see it doesn't work, and move on to counting consonants the long way
BenjaminUrquhart: I haven't done anything on the site since pacman challenge
Andriamanitra: well it's a hurdle you can manage but hurdle nonetheless
BenjaminUrquhart: fair enough
BenjaminUrquhart: gonna play a few rounds to see if I'm completely wrong and the puzzle quality has changed a lot since I last came
BenjaminUrquhart: oh hi
Andriamanitra: i feel like i've had terrible puzzles the last couple days
Andriamanitra: but maybe i'm just imagining it
BenjaminUrquhart: well there's that CoC footer now
BenjaminUrquhart: annoying smh
reCurse: I don't think anyone takes clashes seriously enough to care about enforcing rules especially when it's something you solved before